summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorColin Noga <Tempus@chronometry.ca>2012-09-21 20:43:21 -0500
committerColin Noga <Tempus@chronometry.ca>2012-09-21 20:43:21 -0500
commitd47a9ed57a826d60c37bfa8a4ae00ccaba0ed806 (patch)
treec3f6657118d71abcd1ce3b4584b3e0472841e53f /include
parent8d0a306f0a526a76182c8d2b513d7a0441d6f466 (diff)
parent5654d5c0a056f9cfc99ac608d16aa0a601b997f5 (diff)
downloadkamek-d47a9ed57a826d60c37bfa8a4ae00ccaba0ed806.tar.gz
kamek-d47a9ed57a826d60c37bfa8a4ae00ccaba0ed806.zip
Merge branch 'level-select' of ssh://treeki.rustedlogic.net:30000/Kamek into level-select
Diffstat (limited to '')
-rwxr-xr-xinclude/game.h40
-rw-r--r--include/newer.h31
2 files changed, 68 insertions, 3 deletions
diff --git a/include/game.h b/include/game.h
index f3b14c3..169b01d 100755
--- a/include/game.h
+++ b/include/game.h
@@ -137,10 +137,21 @@ public:
u8 worlds_available[10]; // 0x32
u32 ambush_countdown[10]; // 0x3C
u16 field_64; // 0x64
- u16 credits_hiscore; // 0x66
+ union {
+ u16 credits_hiscore; // 0x66
+ u16 spentStarCoins;
+ };
u16 score; // 0x68
u32 completions[10][0x2A]; // 0x6C
- u8 hint_movie_bought[70]; // 0x6FC
+ union {
+ u8 hint_movie_bought[70]; // 0x6FC
+
+ struct {
+ // ALL Newer additions should go here
+ // This array has been verified as safe to replace
+ u8 currentNewerWorld; // 0x6FC
+ };
+ };
u8 toad_location[10]; // 0x742
u8 field_74C[10][4]; // 0x74C
u8 field_774[10][4]; // 0x774
@@ -2590,7 +2601,7 @@ namespace m2d {
class AnmResHandler_c {
public:
AnmResHandler_c();
- ~AnmResHandler_c();
+ virtual ~AnmResHandler_c();
struct Thing {
nw4r::lyt::Group *group;
@@ -3056,7 +3067,30 @@ namespace mHeap {
};
void WriteNumberToTextBox(int *number, const int *fieldLength, nw4r::lyt::TextBox *textBox, bool unk); // 800B3B60
+extern "C" dAc_Py_c* GetSpecificPlayerActor(int number);
+extern "C" dStageActor_c *CreateActor(u16 classID, int settings, Vec pos, char rot, char layer);
+extern "C" dStageActor_c *Actor_SearchByID(u32 actorID);
+
+struct DoSomethingCool {
+ u32 unk_01; //0000
+ Vec3 pos; //0004
+ Vec3 scale; //0010
+ f32 unk_02; //001C
+ f32 unk_03; //0020
+ f32 unk_04; //0024
+ f32 unk_05; //0028
+ f32 unk_06; //002C
+ f32 unk_07; //0030
+ f32 unk_08; //0034
+ f32 unk_09; //0038
+};
+extern "C" u8 dSprite_c__getXDirectionOfFurthestPlayerRelativeToVEC3(dEn_c *, Vec pos);
+extern "C" void *ShakeScreen(void *, unsigned int, unsigned int, unsigned int, unsigned int);
+extern "C" void *PlaySound(dStageActor_c *, int soundID);
+extern "C" void *PlaySoundAsync(dStageActor_c *, int soundID);
+extern "C" u32 GetActivePlayerCount();
+#include "newer.h"
#endif
diff --git a/include/newer.h b/include/newer.h
new file mode 100644
index 0000000..4f34f81
--- /dev/null
+++ b/include/newer.h
@@ -0,0 +1,31 @@
+#ifndef NEWER_H
+#define NEWER_H
+
+enum NWRWorld {
+ ISLAND = 0, YOSHI_ISLAND = 0,
+ DESERT = 1, RUBBLE_RUINS = 1,
+ SEWER = 2, SOGGY_SEWERS = 2,
+ MOUNTAIN = 3, MUSHROOM_PEAKS = 3,
+ SAKURA = 4, SAKURA_VILLAGE = 4,
+ FREEZEFLAME = 5, FREEZEFLAME_GLACIER = 5,
+ VOLCANO = 6, FREEZEFLAME_VOLCANO = 6,
+ PUMPKIN = 7, PUMPKIN_BONEYARD = 7,
+ SKY_MOUNTAIN = 8,
+ SKY = 9, STARRY_SKIES = 9,
+ PLANET = 10, KOOPA_PLANET = 10,
+ CORE = 11, KOOPA_CORE = 11,
+ BONUS_LAND = 12,
+ GOLDWOOD = 13, GOLDWOOD_FOREST = 13,
+ MINIMEGA = 14, MINIMEGA_ISLAND = 14,
+ CRYSTAL = 15, CRYSTAL_CAVES = 15,
+ BOMBARD = 16, BOMBARD_CLIFFS = 16,
+ SKY_CITY = 17,
+ WORLD_COUNT = 18,
+ UNKNOWN_WORLD = 255
+};
+
+NWRWorld NewerWorldForLevelID(int world, int level);
+
+const wchar_t *NewerWorldName(NWRWorld world);
+
+#endif /* NEWER_H */