تغلّب على الوقت
جزء من قسم قواعد اللعبة في رحلة Godot على Coddy. الدرس 24 من 29.
لا يحدث شيء عند وصول العدّ التنازلي إلى الصفر، ويستمر إلى -1 و-2. أضف القواعد:
- عندما يصل الوقت إلى 0، يخسر اللاعب. اعرض
Time's up!وأوقف اللعبة. - عندما يصل اللاعب إلى العلم أولًا، يفوز. اعرض
You win!وأوقف اللعبة.
أوقف اللعبة باستخدام get_tree().paused = true. يوقف الإيقاف المؤقت الساعة، لذلك يبقى الوقت عند القيمة التي انتهى إليها. كما يوقف اللاعب، لذلك لا يفوز أحد بعد انتهاء الوقت.
if time_left == 0:
$HUD/Message.text = "Time's up!"
get_tree().paused = trueالتحدي
سهلاجعل العدّ التنازلي سباقًا يمكن أن تخسره.
- في
_on_clock_timeout()، بعد سطر التسمية، عندما تكون قيمةtime_leftتساوي 0، عيّن$HUD/Message.textإلى"Time's up!"وأوقف اللعبة مؤقتًا. - في
_on_goal_body_entered(body)، أوقف اللعبة مؤقتًا بعد"You win!".
اضغط على «العب» وانتظر: عند Time: 0 تتوقف اللعبة وتظهر Time's up! ثم اضغط على «تحقق».
جرّب بنفسك
extends Node2D
var time_left = 10
func _ready():
$HUD/Time.text = "Time: %d" % time_left
$Goal.body_entered.connect(_on_goal_body_entered)
$Clock.timeout.connect(_on_clock_timeout)
func _on_goal_body_entered(body):
if body.is_in_group("player"):
$HUD/Message.text = "You win!"
func _on_clock_timeout():
time_left -= 1
$HUD/Time.text = "Time: %d" % time_left
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس قواعد اللعبة
تدرّب بنفسك: Playground لـ Godot