summaryrefslogtreecommitdiff
path: root/src/bowserKey.cpp
diff options
context:
space:
mode:
authorColin Noga <Tempus@chronometry.ca>2012-09-13 15:38:47 -0500
committerColin Noga <Tempus@chronometry.ca>2012-09-13 15:38:47 -0500
commita16adae746a5d4814a781f583d18dd79d3e7d43b (patch)
tree1d4a62d19e3a69e1f057fb6769e3f3e123a182ab /src/bowserKey.cpp
parentdba3ee84993ddb4adc909ba005eb88a2a201da82 (diff)
downloadkamek-a16adae746a5d4814a781f583d18dd79d3e7d43b.tar.gz
kamek-a16adae746a5d4814a781f583d18dd79d3e7d43b.zip
Added in pumpkin goomba and the airship key global event option
Diffstat (limited to 'src/bowserKey.cpp')
-rw-r--r--src/bowserKey.cpp45
1 files changed, 45 insertions, 0 deletions
diff --git a/src/bowserKey.cpp b/src/bowserKey.cpp
new file mode 100644
index 0000000..3bfcd8f
--- /dev/null
+++ b/src/bowserKey.cpp
@@ -0,0 +1,45 @@
+#include <common.h>
+#include <game.h>
+#include <g3dhax.h>
+#include <sfx.h>
+#include <stage.h>
+#include "boss.h"
+
+int KeyCounter = 0;
+extern "C" void *KeyLoopSet(dStageActor_c *);
+
+void endKeyLevel(dStageActor_c *key) {
+ OSReport("Key End Level");
+
+ if (key->settings) {
+ KeyCounter += 1;
+ OSReport("Key Counter now at: %d", KeyCounter);
+ ExitStage(WORLD_MAP, 0, BEAT_LEVEL, MARIO_WIPE);
+ }
+}
+
+void startEndKeyLevel(dStageActor_c *key) {
+ key->speed.y = 4.0;
+ OSReport("Key Set Speed");
+
+ if (key->settings) {
+ StopBGMMusic();
+ PlaySound(key, STRM_BGM_COURSE_CLEAR_ZORO);
+ MakeMarioEnterDemoMode();
+ }
+}
+
+void soundsEndKeyLevel(dStageActor_c *key) {
+ OSReport("Key Set Loop");
+ KeyLoopSet(key);
+
+ if (key->settings) {
+ UpdateGameMgr();
+ if (GetSpecificPlayerActor(0) != 0) { PlaySound(key, SE_VOC_MA_CLEAR_MULTI); }
+ if (GetSpecificPlayerActor(1) != 0) { PlaySound(key, SE_VOC_LU_CLEAR_MULTI); }
+ if (GetSpecificPlayerActor(2) != 0) { PlaySound(key, SE_VOC_KO_CLEAR_MULTI); }
+ if (GetSpecificPlayerActor(3) != 0) { PlaySound(key, SE_VOC_KO2_CLEAR_MULTI); }
+ }
+}
+
+