From eb511f4e4f69c2ec22de7ed0b9e15f893ec0a88b Mon Sep 17 00:00:00 2001 From: Holger Schemel Date: Wed, 18 Jun 2003 00:54:33 +0200 Subject: [PATCH] rnd-20030618-1-src --- src/conftime.h | 2 +- src/game.c | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/conftime.h b/src/conftime.h index 0a8f5d10..c4658ed9 100644 --- a/src/conftime.h +++ b/src/conftime.h @@ -1 +1 @@ -#define COMPILE_DATE_STRING "[2003-06-17 00:51]" +#define COMPILE_DATE_STRING "[2003-06-18 00:47]" diff --git a/src/game.c b/src/game.c index 770f34bc..3c3f144b 100644 --- a/src/game.c +++ b/src/game.c @@ -114,6 +114,7 @@ static void CloseAllOpenTimegates(void); static void CheckGravityMovement(struct PlayerInfo *); static void KillHeroUnlessProtected(int, int); +static void CheckTriggeredElementChange(int, int); static void ChangeElementDoIt(int, int, int); static void PlaySoundLevel(int, int, int); @@ -2023,6 +2024,8 @@ void Bang(int x, int y) Explode(x, y, EX_PHASE_START, EX_NORMAL); break; } + + CheckTriggeredElementChange(element, CE_OTHER_EXPLODING); } void SplashAcid(int x, int y) @@ -4848,10 +4851,12 @@ static void ChangeActiveTrap(int x, int y) DrawLevelFieldCrumbledSand(x, y); } -static void ChangeElementDoIt(int x, int y, int element) +static void ChangeElementDoIt(int x, int y, int element_new) { + CheckTriggeredElementChange(Feld[x][y], CE_OTHER_CHANGING); + RemoveField(x, y); - Feld[x][y] = element; + Feld[x][y] = element_new; ResetGfxAnimation(x, y); ResetRandomAnimationValue(x, y); @@ -6747,6 +6752,9 @@ int DigField(struct PlayerInfo *player, DrawLevelField(x + dx, y + dy); PlaySoundLevelElementAction(x, y, element, ACTION_PUSHING); + + CheckTriggeredElementChange(element, CE_OTHER_PUSHING); + break; case EL_GATE_1: @@ -7032,6 +7040,8 @@ int DigField(struct PlayerInfo *player, PlaySoundLevel(x, y, SND_GAME_SOKOBAN_SOLVING); } + CheckTriggeredElementChange(element, CE_OTHER_PUSHING); + break; case EL_PENGUIN: @@ -7116,6 +7126,8 @@ int DigField(struct PlayerInfo *player, DrawLevelField(x + dx, y + dy); PlaySoundLevelElementAction(x, y, element, ACTION_PUSHING); + CheckTriggeredElementChange(element, CE_OTHER_PUSHING); + break; } -- 2.34.1