From 370d582936774f5df9b32bf0432121f415e0aa03 Mon Sep 17 00:00:00 2001 From: Andrew Kesterson Date: Sun, 15 Jun 2014 13:39:55 -0700 Subject: [PATCH] Working on effect bubbles (visual indicators for awareness state changes) --- moonlight/js/moonlight-skulk.js | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/moonlight/js/moonlight-skulk.js b/moonlight/js/moonlight-skulk.js index 8dab27c..e4ebce4 100644 --- a/moonlight/js/moonlight-skulk.js +++ b/moonlight/js/moonlight-skulk.js @@ -696,6 +696,11 @@ var AISprite = function(game, x, y, key, frame) { this.setAwarenessEffect = function(state) { var animkey = ""; + if ( this.awareness_effect !== null ) { + this.awareness_effect.alive = false; + this.awareness_effect.destroy(); + this.awareness_effect = null; + } if ( state == STATE_ALERTED ) { animkey = "alerted"; } else if ( state == STATE_CONCERNED ) { @@ -1269,7 +1274,13 @@ GameState.prototype.update = function() if ( x.collide_with_player == false ) return; if ( x.canSeeSprite(player, false) == true ) { - setAwarenessState(x, STATE_ALERTED); + if ( hasState(x, STATE_ALERTED) == false ) { + setAwarenessState(x, STATE_ALERTED); + } + } else { + if ( hasState(x, STATE_ALERTED) == true ) { + setAwarenessState(x, STATE_LOSTHIM); + } } this.physics.arcade.collide(x, player); }