proper hp calculation
This commit is contained in:
parent
f0be16c9f2
commit
ed747bea9e
4 changed files with 35 additions and 28 deletions
|
|
@ -95,13 +95,16 @@ public partial class LevelRunner : Node
|
|||
zom.HPChangedMixed -= OnHPChanged;
|
||||
}
|
||||
}
|
||||
waveHealthMax = 0;
|
||||
waveHealth = waveHealthMax;
|
||||
|
||||
zombies.Clear();
|
||||
}
|
||||
public void AddZombie(RuntimeZombieData zombie)
|
||||
{
|
||||
zombies.Add(zombie);
|
||||
waveHealthMax += zombie.MaxHP;
|
||||
waveHealthMax += zombie.GetMaxHPMixed();
|
||||
waveHealth = waveHealthMax;
|
||||
zombie.HPChangedMixed += OnHPChanged;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -55,7 +55,13 @@ public partial class RuntimeZombieData : Entity
|
|||
}
|
||||
public void HPChangedMixedInvoker(float delta)
|
||||
{
|
||||
EmitSignal(SignalName.HPChangedMixed, delta);
|
||||
EmitSignal(SignalName.HPChangedMixed, -delta);
|
||||
}
|
||||
public float GetMaxHPMixed()
|
||||
{
|
||||
if (_armor != null)
|
||||
return MaxHP + _armor.MaxHP;
|
||||
return MaxHP;
|
||||
}
|
||||
#region Death sequence
|
||||
private bool _killed = false;
|
||||
|
|
@ -67,5 +73,6 @@ public partial class RuntimeZombieData : Entity
|
|||
EmitSignal(SignalName.HasBeenKilled,this);
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue