blob: 41fba45b0f8d02fa129bca742a65b0e8b1d76a73 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
/* KoopAtlas Map Engine
* Created by Treeki
*/
#ifndef __KOOPATLAS_H
#define __KOOPATLAS_H
#include <common.h>
#include <game.h>
#include <g3dhax.h>
#include <sfx.h>
#include "levelinfo.h"
#include "koopatlas/mapdata.h"
#include "koopatlas/shop.h"
#include "koopatlas/starcoin.h"
#include "koopatlas/hud.h"
#include "koopatlas/pathmanager.h"
#define WM_DEBUGGING
#define WM_SPAMMY_DEBUGGING
#ifdef WM_DEBUGGING
#define MapReport OSReport
#else
#define MapReport(...)
#endif
#ifdef WM_SPAMMY_DEBUGGING
#define SpammyReport OSReport
#else
#define SpammyReport(...)
#endif
void NewerMapDrawFunc();
#define WM_HUD WM_DANCE_PAKKUN
#define WM_SHOP WM_TOGEZO
#define WM_SHOPITEM WM_BOARD
#define WM_STARCOIN WM_GHOST
class daWMPlayer_c;
class dWMHud_c;
class dWMMap_c;
class dWMShop_c;
class dWMStarCoin;
class dWorldCamera_c;
class dWMPathManager_c;
class dScKoopatlas_c : public dScene_c {
public:
dScKoopatlas_c();
FunctionChain initChain;
dStateWrapper_c<dScKoopatlas_c> state;
USING_STATES(dScKoopatlas_c);
DECLARE_STATE(Limbo);
DECLARE_STATE(ContinueWait);
DECLARE_STATE(Normal);
DECLARE_STATE(CSMenu);
DECLARE_STATE(TitleConfirmOpenWait);
DECLARE_STATE(TitleConfirmSelect);
DECLARE_STATE(TitleConfirmHitWait);
DECLARE_STATE(PlayerChangeWait);
DECLARE_STATE(EasyPairingWait);
DECLARE_STATE(PowerupsWait);
DECLARE_STATE(ShopWait);
DECLARE_STATE(CoinsWait);
DECLARE_STATE(SaveOpen);
DECLARE_STATE(SaveSelect);
DECLARE_STATE(SaveWindowClose);
DECLARE_STATE(SaveDo);
DECLARE_STATE(SaveEndWindow);
DECLARE_STATE(SaveEndCloseWait);
DECLARE_STATE(QuickSaveOpen);
DECLARE_STATE(QuickSaveSelect);
DECLARE_STATE(QuickSaveWindowClose);
DECLARE_STATE(QuickSaveDo);
DECLARE_STATE(QuickSaveEndWindow);
DECLARE_STATE(QuickSaveEndCloseWait);
DECLARE_STATE(SaveError);
void *csMenu;
void *selectCursor;
void *numPeopleChange;
void *yesNoWindow;
void *continueObj;
void *stockItem;
void *stockItemShadow;
void *easyPairing;
int onCreate();
int onDelete();
int onExecute();
static dScKoopatlas_c *build();
static dScKoopatlas_c *instance;
daWMPlayer_c *player;
dWMHud_c *hud;
dWMMap_c *map;
dWMShop_c *shop;
dWMStarCoin *coins;
int currentMapID;
const char *mapPath;
dKPMapData_c mapData;
dWMPathManager_c pathManager;
dDvdLoader_c mapListLoader;
u32 iterateMapList(u32(*callback)(u32,const char *,int,int), u32 userData, int *ptrIndex = 0);
const char *getMapNameForIndex(int index);
int getIndexForMapName(const char *name);
dDvdLoader_c levelInfoLoader;
dLevelInfo_c levelInfo;
void startLevel(dLevelInfo_c::entry_s *level);
bool canDoStuff();
bool mapIsRunning();
};
#endif
|