הפעילו את המנוע
חלק מהיחידה פרויקטים במסלול ה-Godot של Coddy. שיעור 12 מתוך 36.
לחיצה על החץ למעלה מפעילה את המנוע ודוחפת את החללית בכיוון שאליו החרטום שלה פונה. Vector2.UP הוא (0, -1). הפונקציה rotated(rotation) מסובבת את החץ בהתאם לסיבוב החללית:
if Input.is_action_pressed("move_up"):
velocity += Vector2.UP.rotated(rotation) * THRUST * delta
position += velocity * deltaהמנוע משנה את המהירות, לא את המיקום. כשתעזבו את החץ למעלה, החללית תמשיך להיסחף. כדי לעצור, הסתובבו ודחפו בכיוון ההפוך.
לחללית יש צאצא מוסתר בשם Flame. הציגו אותו כשהמנוע פועל: $Flame.visible = Input.is_action_pressed("move_up").
אתגר
בינוניגרמו למנוע לדחוף את החללית.
- הוסיפו
const THRUST = 300. - כל עוד לוחצים על מקש למעלה, הוסיפו את
Vector2.UP.rotated(rotation) * THRUST * deltaאלvelocity. - הזיזו את החללית באמצעות
velocity * deltaבכל פריים, בין אם לוחצים על המקש ובין אם לא. - הציגו את
$Flameרק כל עוד לוחצים על מקש למעלה.
לחצו על „שחק” והחזיקו את מקש למעלה: הלהבה בוערת והחללית ממשיכה להיסחף אחרי שמשחררים את המקש. לאחר מכן לחצו על „בדיקה”.
נסו בעצמכם
extends CharacterBody2D
const TURN_SPEED = 4.0
func _physics_process(delta):
rotation += Input.get_axis("move_left", "move_right") * TURN_SPEED * delta
כל השיעורים ביחידה פרויקטים
2פרויקט: יורה אסטרואידים
סובבו את החלליתהפעילו את המנועתרגלו בעצמכם: Godot אונליין