diff options
Diffstat (limited to 'src/boss.cpp')
-rw-r--r-- | src/boss.cpp | 29 |
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; } |