diff options
Diffstat (limited to 'src/boss.h')
-rw-r--r-- | src/boss.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/boss.h b/src/boss.h new file mode 100644 index 0000000..784c5fa --- /dev/null +++ b/src/boss.h @@ -0,0 +1,48 @@ +#ifndef __PLAYER_H +#define __PLAYER_H + +#include <common.h> +#include <game.h> +#include <g3dhax.h> +#include <stage.h> +#include <sfx.h> + +extern "C" void *PlaySound(dStageActor_c *, int soundID); +extern "C" void *PlaySoundAsync(dStageActor_c *, int soundID); + +extern "C" bool SpawnEffect(const char*, int, Vec*, S16Vec*, Vec*); + +extern "C" dStageActor_c* GetSpecificPlayerActor(int number); +extern "C" dStageActor_c *CreateActor(u16 classID, int settings, Vec pos, char rot, char layer); + +extern "C" u32 GenerateRandomNumber(int max); +extern "C" u8 dSprite_c__getXDirectionOfFurthestPlayerRelativeToVEC3(dEn_c *, Vec pos); +extern "C" char usedForDeterminingStatePress_or_playerCollision(dEn_c* t, ActivePhysics *apThis, ActivePhysics *apOther, int unk1); + +extern "C" void *StopBGMMusic(); +extern "C" void *StartBGMMusic(); + +extern "C" void *MakeMarioEnterDemoMode(); +extern "C" void *MakeMarioExitDemoMode(); +extern "C" void *UpdateGameMgr(); + + +class daBoss : public dEn_c { +public: + u32 timer; + char dying; +}; + + +// Functions +void DamagePlayer(dEn_c* actor, ActivePhysics *apThis, ActivePhysics *apOther); +void SetupKameck(daBoss* actor, daKameckDemo *Kameck); +void CleanupKameck(daBoss* actor, daKameckDemo *Kameck); +bool GrowBoss(daBoss* actor, daKameckDemo *Kameck, float initialScale, float endScale, float yPosModifier, int timer); +void OutroSetup(daBoss* actor); +bool ShrinkBoss(daBoss *actor, Vec *pos, float scale, int timer); +void BossExplode(daBoss* actor, Vec *pos); +void PlayerVictoryCries(daBoss* actor); + +#endif + |