From c6f0395e90137424d8ce77d7fa0ac6c8ede991b3 Mon Sep 17 00:00:00 2001 From: Treeki Date: Sun, 5 May 2013 00:47:46 +0200 Subject: final boss phase 1 potential fixes --- src/bossBombDrop.cpp | 8 ++++---- src/bossBridgeBowser.cpp | 1 + 2 files changed, 5 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/bossBombDrop.cpp b/src/bossBombDrop.cpp index f617cdf..67564aa 100644 --- a/src/bossBombDrop.cpp +++ b/src/bossBombDrop.cpp @@ -153,6 +153,7 @@ int dDroppedBomb::onExecute() { int ret = this->outOfZone(this->pos, (float*)&rect, this->currentZoneID); if(ret) { this->Delete(1); + dFlagMgr_c::instance->set(settings & 0xFF, 0, true, false, false); } speed.y = speed.y - 0.01875; @@ -166,6 +167,7 @@ int dDroppedBomb::onExecute() { if (collMgr.isOnTopOfTile() || (collMgr.outputMaybe & (0x15 << direction))) { this->kill(); + dFlagMgr_c::instance->set(settings & 0xFF, 0, true, false, false); } return true; @@ -234,18 +236,16 @@ int dBombDrop::onExecute() { bool active; active = dFlagMgr_c::instance->active(eventA); if (active) { - create(WM_SMALLCLOUD, 0, &pos , &rot, 0); + create(WM_SMALLCLOUD, eventA+1, &pos , &rot, 0); HackyBombDropVariable = true; dFlagMgr_c::instance->set(eventA, 0, false, false, false); - dFlagMgr_c::instance->set(eventA+1, 0, true, false, false); } active = dFlagMgr_c::instance->active(eventB); if (active) { - create(WM_SMALLCLOUD, 0, &pos, &rot, 0); + create(WM_SMALLCLOUD, eventB+1, &pos, &rot, 0); HackyBombDropVariable = true; dFlagMgr_c::instance->set(eventB, 0, false, false, false); - dFlagMgr_c::instance->set(eventB+1, 0, true, false, false); } return true; diff --git a/src/bossBridgeBowser.cpp b/src/bossBridgeBowser.cpp index 0abcf21..202fbe1 100644 --- a/src/bossBridgeBowser.cpp +++ b/src/bossBridgeBowser.cpp @@ -69,6 +69,7 @@ void BowserDoomSpriteCollision(dEn_c *bowser, ActivePhysics *apThis, ActivePhysi lastBomb = apOther->owner->id; dEn_c * bomb = (dEn_c*)apOther->owner; + dFlagMgr_c::instance->set(bomb->settings & 0xFF, 0, true, false, false); bomb->kill(); } -- cgit v1.2.3