Zombie death and damage indicators
This commit is contained in:
parent
bffb012a26
commit
b524f97e7f
14 changed files with 324 additions and 117 deletions
24
scripts/ZombieKillHandler.cs
Normal file
24
scripts/ZombieKillHandler.cs
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
using Godot;
|
||||
using Newlon.Components.Zombies;
|
||||
|
||||
public partial class ZombieKillHandler : Node
|
||||
{
|
||||
[Export] private AnimationTree _tree;
|
||||
[Export] private CollisionShape2D _collider;
|
||||
private void OnKilled(RuntimeZombieData who)
|
||||
{
|
||||
var tween = CreateTween();
|
||||
tween.TweenInterval(4.0);
|
||||
tween.TweenCallback(Callable.From(() =>
|
||||
{
|
||||
((AnimationNodeStateMachinePlayback)_tree.Get("parameters/Tree/playback")).Travel("Death");
|
||||
_collider.Disabled = true;
|
||||
}));
|
||||
tween.TweenInterval(3.0);
|
||||
tween.TweenProperty(who, "modulate",new Color(1, 1, 1, 0),1.0);
|
||||
tween.TweenCallback(Callable.From(() =>
|
||||
{
|
||||
who.Kill();
|
||||
}));
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue