X-Git-Url: http://git.megabrutal.com/?p=ld40.git;a=blobdiff_plain;f=ld40.js;h=7bd582e1413288af1753a4c0c22bfebe3fec2a60;hp=01a65ce0f788eb5b318ca822f083dbbffcac5b34;hb=731aa57b3da0e89209ae2aaf19ee4960a7ae564f;hpb=ec8eeabbaf8576510fcd67a78f56b7d94575e8f9;ds=sidebyside

diff --git a/ld40.js b/ld40.js
index 01a65ce..7bd582e 100644
--- a/ld40.js
+++ b/ld40.js
@@ -14,6 +14,7 @@
         const WAIT_MONSTERSHOOT		=    500;
         const WAIT_MONSTERSPAWN		=  20000;
         const WAIT_DETERMINATION	=   4000;
+        const WAIT_DEATH		=   4000;
         const WALL_THICKNESS		=     16;
         const WALL_BORDER		=      8;
         const WALL_BORDERBOTTOM		=     48;
@@ -48,11 +49,16 @@
                 this.lasttime_shoot = 0;
                 this.lasttime_mode = 0;
                 this.lasttime_damage = 0;
+                this.lasttime_death = 0;
                 this.speed = SPEED_PLAYER;
                 this.switchmode(MODE_DETERMINATION);
                 this.weapon = new JusticeBlaster(game, this);
                 this.weapon.bulletSpeed = SPEED_PPROJECTILE;
                 this.healthBar = new HealthBar(60, game.world.height - (WALL_BORDERBOTTOM / 2));
+                this.soulbreakEmitter = this.game.add.emitter(0, 0, 8);
+                this.soulbreakEmitter.gravity = 1000;
+                this.soulbreakEmitter.setXSpeed(-300, 300);
+                this.soulbreakEmitter.makeParticles('soulbreak');
             }
 
             enablePhysics() {
@@ -81,7 +87,10 @@
                 this.health = 0;
                 this.healthBar.update(this.love, this.maxHealth, this.health);
                 super.kill();
-                this.game.state.start('GameOver');
+                this.soulbreakEmitter.x = this.x;
+                this.soulbreakEmitter.y = this.y;
+                this.soulbreakEmitter.explode(2000, 8);
+                this.lasttime_death = this.game.time.now;
             }
 
             loveUp() {
@@ -267,6 +276,7 @@
                 game.load.image('monster', 'monster.png');
                 game.load.image('determination', 'determination.png');
                 game.load.image('projectile', 'projectile.png');
+                game.load.image('soulbreak', 'soulbreak.png');
 
             }
 
@@ -326,6 +336,11 @@
 
                 if ((game.time.now - player.lastmovetime) > WAIT_KEY) player.body.velocity.x = player.body.velocity.y = 0;
 
+                if ((!player.alive) && (game.time.now > (player.lasttime_death + WAIT_DEATH)))
+                {
+                    game.state.start('GameOver');
+                }
+
             }
         }