Herói piscando
Parte da seção Projetos do Journey de Godot da Coddy. Lição 34 de 36.
É fácil não perceber que você perdeu um coração na barra superior. Faça o herói piscar em vermelho quando for atingido e, depois, voltar gradualmente à cor original. Uma animação interpolada faz isso em uma função flash() no herói:
func flash():
modulate = Color(1, 0.3, 0.3)
var tween = create_tween()
tween.tween_property(self, "modulate", Color(1, 1, 1), 0.5)A tonalidade fica vermelha imediatamente e, depois, uma animação interpolada a faz voltar ao branco ao longo de meio segundo. modulate altera a tonalidade do herói e de todos os seus filhos.
main.gd chama $Hero.flash() a cada golpe. Você pode chamar uma função de outro nó por meio desse nó.
Desafio
MédioFaça o herói piscar em vermelho quando o guarda encostar nele.
- Em
hero.gd, escrevaflash(): definamodulatecomoColor(1, 0.3, 0.3)e, em seguida, faça a transição de volta paraColor(1, 1, 1)em0.5segundos. - Em
main.gd, chame$Hero.flash()quando o guarda encostar no herói.
Pressione “Jogar” e encoste no guarda: o herói pisca em vermelho. Depois, “Verificar”.
Experimente você mesmo
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()
Todas as lições de Projetos
1Projeto: Breakout
Raquete do BreakoutMantenha a raquete na tela4Projeto: Explorador de Masmorras
Percorra a masmorraPegue a chavePratique por conta própria: Playground de Godot