diff options
author | Colin Noga <Tempus@chronometry.ca> | 2012-09-21 20:43:21 -0500 |
---|---|---|
committer | Colin Noga <Tempus@chronometry.ca> | 2012-09-21 20:43:21 -0500 |
commit | d47a9ed57a826d60c37bfa8a4ae00ccaba0ed806 (patch) | |
tree | c3f6657118d71abcd1ce3b4584b3e0472841e53f /include | |
parent | 8d0a306f0a526a76182c8d2b513d7a0441d6f466 (diff) | |
parent | 5654d5c0a056f9cfc99ac608d16aa0a601b997f5 (diff) | |
download | kamek-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-x | include/game.h | 40 | ||||
-rw-r--r-- | include/newer.h | 31 |
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 */ |