התנגש בצינורות
חלק מהיחידה פרויקטים במסלול ה-Godot של Coddy. שיעור 23 מתוך 33.
פגיעה בצינור או בקרקע אמורה לסיים את המשחק. בשני המקרים מופעלת אותה פונקציה ב־main.gd:
func _on_crash():
$HUD/Message.text = "Game Over"
get_tree().paused = trueצינור. הצינור הוא Area2D עם שתי צורות, החצי העליון והחצי התחתון. למרווח אין צורה. ב־pipe.gd, חברו את body_entered ושדרו אות hit. ב־main.gd, חברו את hit של כל צינור חדש לפני הוספתו.
הקרקע. החלק העליון שלה נמצא ב־y = 318. קצה המעופף נמצא במרחק של 12 פיקסלים ממרכזו, ולכן הוא נוגע בקרקע כאשר position.y גדול מ־306. לאחר מכן, flyer.gd משדר את crashed.
המעופף, הצינורות והטיימר ניתנים להשהיה, ולכן ההשהיה עוצרת את כולם.
אתגר
קשה- ב־
pipe.gd, הוסףsignal hit. חבר אתbody_enteredבתוך_readyופלט אתhitכשגוף נכנס. - ב־
flyer.gd, הוסףsignal crashedופלט אותו כאשרposition.yגדול מ־306. - ב־
main.gd, חבר אתhitשל כל צינור ואתcrashedשל המעופף אל_on_crash. הפונקציה מציגה אתGame Overומשהה את המשחק.
נסו בעצמכם
extends Node2D
const PIPE = preload("res://pipe.tscn")
func _ready():
$PipeTimer.timeout.connect(_on_pipe_timer_timeout)
func _on_pipe_timer_timeout():
var pipe = PIPE.instantiate()
pipe.position = Vector2(700, randf_range(100, 250))
$Pipes.add_child(pipe)
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה פרויקטים
3פרויקט: המעופף המתנפנף
כוח הכבידה על המעופףנפנף בכנפי המעופףתרגלו בעצמכם: Godot אונליין