הבזק הגיבור
חלק מהיחידה פרויקטים במסלול ה-Godot של Coddy. שיעור 34 מתוך 36.
קל לפספס לב שאבד בסרגל העליון. כשהגיבור נפגע, גרום לו להבהב באדום ואז לחזור בהדרגה למצבו הקודם. לשם כך משתמשים ב־tween, בפונקציה flash() של הגיבור:
func flash():
modulate = Color(1, 0.3, 0.3)
var tween = create_tween()
tween.tween_property(self, "modulate", Color(1, 1, 1), 0.5)הגוון הופך לאדום מיד, ואז tween מחזיר אותו ללבן במשך חצי שנייה. modulate משנה את הגוון של הגיבור ושל כל הצאצאים שלו.
main.gd קורא ל־$Hero.flash() בכל פגיעה. אפשר לקרוא לפונקציה בצומת אחר דרך אותו צומת.
אתגר
בינוניגרום לגיבור להבהב באדום כשהשומר נוגע בו.
- בקובץ
hero.gd, כתוב אתflash(): הגדר אתmodulateלערךColor(1, 0.3, 0.3), ואז החזר אותו באמצעות tween ל-Color(1, 1, 1)בתוך0.5שניות. - בקובץ
main.gd, קרא ל-$Hero.flash()כשהשומר נוגע בגיבור.
לחץ על "שחק" וגע בשומר: הגיבור יהבהב באדום. לאחר מכן לחץ על "בדיקה".
נסו בעצמכם
extends CharacterBody2D
const SPEED = 160
func _physics_process(delta):
velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * SPEED
move_and_slide()
כל השיעורים ביחידה פרויקטים
תרגלו בעצמכם: Godot אונליין