انتهت اللعبة
جزء من قسم قواعد اللعبة في رحلة Godot على Coddy. الدرس 12 من 29.
تحتوي واجهة العرض HUD على تسمية GameOver كبيرة في منتصف الشاشة. تكون خاصية visible فيها معطّلة في المشهد، لذا تبدأ مخفية.
بعد فقدان حياة، تحقّق مما إذا كانت هناك أي حياة متبقية:
if lives == 0:
$HUD/GameOver.visible = trueتُستخدم علامتا يساوي للمقارنة. يسأل lives == 0 عمّا إذا كان عدد الأرواح يساوي 0. أمّا علامة يساوي واحدة فتُعيّن قيمة، ولا يسمح Godot باستخدامها داخل if.
التحدي
سهلاعرض شاشة انتهاء اللعبة عند فقدان آخر حياة.
- في
_on_player_hurt()، أسفل سطر التسمية، تحقّق مما إذا كانتlivesتساوي0. - إذا كان الأمر كذلك، فأظهر
$HUD/GameOver.
اضغط على «العب» والمس الأشواك ثلاث مرات: ستظهر رسالة انتهاء اللعبة. ثم اضغط على «تحقق».
جرّب بنفسك
extends Node2D
var lives = 3
func _ready():
$HUD/Lives.text = "Lives: %d" % lives
$Player.hurt.connect(_on_player_hurt)
func _on_player_hurt():
lives -= 1
$HUD/Lives.text = "Lives: %d" % lives
جميع دروس قواعد اللعبة
تدرّب بنفسك: Playground لـ Godot