מצב עיבוד
חלק מהיחידה חוקי המשחק במסלול ה-Godot של Coddy. שיעור 14 מתוך 29.
משחק מושהה עוצר כל צומת. צמתים מסוימים צריכים להמשיך לפעול, כמו הודעת Game Over מהבהבת או תפריט השהיה.
המאפיין process_mode של צומת קובע:
Node.PROCESS_MODE_INHERIT: לפעול כמו צומת האב. זוהי ברירת המחדל.Node.PROCESS_MODE_PAUSABLE: לעצור כשהמשחק מושהה.Node.PROCESS_MODE_ALWAYS: להמשיך לפעול, בין אם המשחק מושהה ובין אם לא.
$Music.process_mode = Node.PROCESS_MODE_ALWAYSכעת הסקריפט מהבהב את Game Over באמצעות Timer בשם Blink. ההשהיה עוצרת את הטיימר הזה, ולכן ההודעה לא מהבהבת.
אתגר
קלדאג לכך ש־Game Over ימשיך להבהב בזמן שהמשחק מושהה. בתוך _ready(), הגדר את process_mode של הטיימר Blink לערך Node.PROCESS_MODE_ALWAYS.
נסו בעצמכם
extends Node2D
var lives = 3
func _ready():
$HUD/Lives.text = "Lives: %d" % lives
$Player.hurt.connect(_on_player_hurt)
$Blink.timeout.connect(_on_blink_timeout)
func _on_player_hurt():
lives -= 1
$HUD/Lives.text = "Lives: %d" % lives
if lives == 0:
$HUD/GameOver.visible = true
get_tree().paused = true
func _on_blink_timeout():
if lives == 0:
$HUD/GameOver.visible = not $HUD/GameOver.visible
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה חוקי המשחק
תרגלו בעצמכם: Godot אונליין