summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTreeki <treeki@gmail.com>2013-04-08 00:23:39 +0200
committerTreeki <treeki@gmail.com>2013-04-08 00:34:35 +0200
commit940154c20216e3398e78a6040b3e4028e681cf61 (patch)
tree9d82b13a4071ec634e616cdcc018c177ba5ec928 /src
parentfb93fa93f2c756a5254f1b418abbc179fca4e59d (diff)
downloadkamek-940154c20216e3398e78a6040b3e4028e681cf61.tar.gz
kamek-940154c20216e3398e78a6040b3e4028e681cf61.zip
a few final boss fixes
Diffstat (limited to 'src')
-rw-r--r--src/bossBombDrop.cpp2
-rw-r--r--src/bossBridgeBowser.cpp14
-rw-r--r--src/bossCaptainBowser.cpp2
3 files changed, 10 insertions, 8 deletions
diff --git a/src/bossBombDrop.cpp b/src/bossBombDrop.cpp
index f96c557..f617cdf 100644
--- a/src/bossBombDrop.cpp
+++ b/src/bossBombDrop.cpp
@@ -200,8 +200,10 @@ dBombDrop *dBombDrop::build() {
bool HackyBombDropVariable = false;
+extern int BridgeBowserHP;
int dBombDrop::onCreate() {
+ BridgeBowserHP = 2;
int t = this->settings & 0xF;
this->eventA = ((this->settings >> 24) & 0xFF) - 1;
diff --git a/src/bossBridgeBowser.cpp b/src/bossBridgeBowser.cpp
index d4bda5d..0abcf21 100644
--- a/src/bossBridgeBowser.cpp
+++ b/src/bossBridgeBowser.cpp
@@ -14,7 +14,7 @@ extern "C" void *BowserDamageNormal(dEn_c *);
extern "C" void *BowserDamageKill(dEn_c *);
extern "C" void *BowserDamageEnd(dEn_c *);
-int HP = 2;
+int BridgeBowserHP = 2;
int lastBomb = 0;
extern bool HackyBombDropVariable;
@@ -31,10 +31,10 @@ void BowserDoomSpriteCollision(dEn_c *bowser, ActivePhysics *apThis, ActivePhysi
// void * bowserClass = (void*)(((u32)bowser) + 0x5F8);
// int HP = *(int*)(((u32)bowserClass) + 4);
- OSReport("HP: %d", HP);
+ OSReport("HP: %d", BridgeBowserHP);
- if (HP <= 0) {
- HP = 0;
+ if (BridgeBowserHP <= 0) {
+ BridgeBowserHP = 0;
*(int*)(((u32)bowser) + 0x540) = 0x28;
@@ -54,7 +54,7 @@ void BowserDoomSpriteCollision(dEn_c *bowser, ActivePhysics *apThis, ActivePhysi
BowserClass->doStateChange(&daBossKoopa_c::StateID_Fall);
dFlagMgr_c::instance->set(3, 0, true, false, false);
- HP = 2;
+ BridgeBowserHP = 2;
}
else {
@@ -63,7 +63,7 @@ void BowserDoomSpriteCollision(dEn_c *bowser, ActivePhysics *apThis, ActivePhysi
BowserDamageAnmClr(bowser);
BowserDamageNormal(bowser);
- HP -= 1;
+ BridgeBowserHP -= 1;
}
lastBomb = apOther->owner->id;
@@ -95,4 +95,4 @@ void BowserDoomEnd(dStageActor_c *Controller) {
void BowserStartEnd(dStageActor_c *Controller) {
dFlagMgr_c::instance->set(1, 0, true, false, false);
-} \ No newline at end of file
+}
diff --git a/src/bossCaptainBowser.cpp b/src/bossCaptainBowser.cpp
index 7b80576..9e163b1 100644
--- a/src/bossCaptainBowser.cpp
+++ b/src/bossCaptainBowser.cpp
@@ -650,6 +650,7 @@ int daCaptainBowser::onDraw() {
void daCaptainBowser::initiateDeathSequence() {
deathSequenceRunning = true;
stopMoving = true;
+ saveTimer = time_macro;
StopBGMMusic();
dFlagMgr_c::instance->set(31, 0, false, false, false);
@@ -812,7 +813,6 @@ void daCaptainBowser::executeState_Outro() {
clownIter->doStateChange(&JrClownEndDemoState);
}
forceClownEnds = true;
- saveTimer = time_macro;
// remove all ship collisions
for (int i = 0; i < SHIP_SCOLL_COUNT; i++)