summaryrefslogtreecommitdiff
path: root/Penguloon/Enemies/EnemyBase.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Penguloon/Enemies/EnemyBase.cs')
-rw-r--r--Penguloon/Enemies/EnemyBase.cs17
1 files changed, 16 insertions, 1 deletions
diff --git a/Penguloon/Enemies/EnemyBase.cs b/Penguloon/Enemies/EnemyBase.cs
index c67e3bc..9bb6230 100644
--- a/Penguloon/Enemies/EnemyBase.cs
+++ b/Penguloon/Enemies/EnemyBase.cs
@@ -26,6 +26,9 @@ namespace Penguloon.Enemies
public int HealthToTake { get; set; }
+ public bool Dead { get; set; } = false;
+ public DateTime PopDate { get; set; }
+
public EnemyBase(Map map)
{
this.Map = map;
@@ -36,6 +39,14 @@ namespace Penguloon.Enemies
public void Update(float deltaTime)
{
+ if (Dead)
+ {
+ if((DateTime.Now - PopDate).TotalMilliseconds > (100 / Map.Level.ParentScene.Speed))
+ Map.Enemies.Remove(this);
+ return;
+
+ }
+
int margin = 5;
Box = new Rectangle(new Point((int)Position.X + margin, (int)Position.Y + margin), new Point(Map.TileWidth - (margin * 2), Map.TileHeight - (margin * 2)));
@@ -90,7 +101,11 @@ namespace Penguloon.Enemies
SpawnChild();
if (Health <= 0)
- Map.Enemies.Remove(this);
+ {
+ Dead = true;
+ PopDate = DateTime.Now;
+ Texture = ContentManager.GetTexture("Enemies/pop");
+ }
SoundManager.PlayBalloonPopSound();
}