summaryrefslogtreecommitdiff
path: root/src/boss.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/boss.cpp')
-rw-r--r--src/boss.cpp29
1 files changed, 22 insertions, 7 deletions
diff --git a/src/boss.cpp b/src/boss.cpp
index e90dd2c..98d1669 100644
--- a/src/boss.cpp
+++ b/src/boss.cpp
@@ -3,6 +3,9 @@
void DamagePlayer(dEn_c *actor, ActivePhysics *apThis, ActivePhysics *apOther) {
+
+ OSReport("Damage Player\n");
+
actor->dEn_c::playerCollision(apThis, apOther);
actor->_vf220(apOther->owner);
@@ -12,10 +15,13 @@ void DamagePlayer(dEn_c *actor, ActivePhysics *apThis, ActivePhysics *apOther) {
if(apOther->owner->which_player < 4) {
actor->counter_504[apOther->owner->which_player] = 0;
}
+ OSReport("Player is good and hurt\n");
}
void SetupKameck(daBoss *actor, daKameckDemo *Kameck) {
+
+ OSReport("Stop BGM Music\n");
// Stop the BGM Music
StopBGMMusic();
@@ -24,39 +30,47 @@ void SetupKameck(daBoss *actor, daKameckDemo *Kameck) {
WLClass::instance->_4 = 4;
WLClass::instance->_8 = 0;
+ OSReport("Enter Demo Mode\n");
MakeMarioEnterDemoMode();
// Make sure to use the correct position
Vec pos = (Vec){actor->pos.x - 124.0, actor->pos.y + 104.0, 3564.0};
S16Vec rot = (S16Vec){0, 0, 0};
+ OSReport("Make Kameck\n");
// Create And use Kameck
- Kameck = (daKameckDemo*)actor->createChild(KAMECK_FOR_CASTLE_DEMO, (dStageActor_c*)actor, 0, &pos, &rot, 0);
- Kameck->doStateChange(&daKameckDemo::StateID_DemoWait);
+ actor->Kameck = (daKameckDemo*)actor->createChild(KAMECK_FOR_CASTLE_DEMO, (dStageActor_c*)actor, 0, &pos, &rot, 0);
+ actor->Kameck->doStateChange(&daKameckDemo::StateID_DemoWait);
+
+ OSReport("Kameck at %x\n", actor->Kameck);
}
void CleanupKameck(daBoss *actor, daKameckDemo *Kameck) {
// Clean up the flags and Kameck
+ OSReport("Cleaning up ALL the Kamecks!\n");
dStage32C_c::instance->freezeMarioBossFlag = 0;
WLClass::instance->_8 = 1;
+ OSReport("Fixing ALL the BGMs and Demo Modes!\n");
MakeMarioExitDemoMode();
StartBGMMusic();
- Kameck->Delete(1);
+ actor->Kameck->Delete(1);
+ OSReport("KAMEX DELETZORS\n");
}
bool GrowBoss(daBoss *actor, daKameckDemo *Kameck, float initialScale, float endScale, float yPosModifier, int timer) {
- if (timer == 130) { Kameck->doStateChange(&daKameckDemo::StateID_DemoSt); }
- if (timer == 400) { Kameck->doStateChange(&daKameckDemo::StateID_DemoSt2); }
+ if (timer == 130) { OSReport("Timer = 130 - Kameck = %x\n", Kameck); actor->Kameck->doStateChange(&daKameckDemo::StateID_DemoSt); }
+ if (timer == 400) { OSReport("Timer = 400 - Kameck = %x\n", Kameck); actor->Kameck->doStateChange(&daKameckDemo::StateID_DemoSt2); }
float scaleSpeed, yPosScaling;
- if (timer == 150) { PlaySound(actor, SE_BOSS_IGGY_WANWAN_TO_L); }
+ if (timer == 150) { PlaySound(actor, SE_BOSS_IGGY_WANWAN_TO_L); OSReport("Timer = 150\n"); }
if ((timer > 150) && (timer < 230)) {
+ OSReport("Timer = %d\n", timer);
scaleSpeed = (endScale -initialScale) / 80.0;
float modifier;
@@ -68,6 +82,7 @@ bool GrowBoss(daBoss *actor, daKameckDemo *Kameck, float initialScale, float end
}
if (timer == 360) {
+ OSReport("Timer = 360 - Make Effects\n");
Vec tempPos = (Vec){actor->pos.x - 40.0, actor->pos.y + 120.0, 3564.0};
SpawnEffect("Wm_ob_greencoinkira", 0, &tempPos, &(S16Vec){0,0,0}, &(Vec){1.0, 1.0, 1.0});
SpawnEffect("Wm_mr_yoshiicehit_a", 0, &tempPos, &(S16Vec){0,0,0}, &(Vec){1.0, 1.0, 1.0});
@@ -78,7 +93,7 @@ bool GrowBoss(daBoss *actor, daKameckDemo *Kameck, float initialScale, float end
SpawnEffect("Wm_ob_keyget01_c", 0, &tempPos, &(S16Vec){0,0,0}, &(Vec){1.0, 1.0, 1.0});
}
- if (timer > 420) { return true; }
+ if (timer > 420) { return true; OSReport("Timer = 420, returning true\n"); }
return false;
}