Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/Menu/MenuParam.h
338 views
1
#ifndef OBJ_MENUPARAM_H
2
#define OBJ_MENUPARAM_H
3
4
#include "Game.h"
5
6
typedef enum {
7
BSS_SELECTION_NONE,
8
BSS_SELECTION_EXTRAS,
9
} BSSSelectionType;
10
11
typedef enum {
12
PUYO_SELECTION_NONE,
13
PUYO_SELECTION_VS_CPU,
14
PUYO_SELECTION_VS_2P,
15
PUYO_SELECTION_TIE_BREAKER,
16
} PuyoSelectionFlags;
17
18
typedef enum {
19
CREDITS_SELECTION_NONE,
20
CREDITS_SELECTION_EXTRAS,
21
} CreditsSelectionType;
22
23
typedef enum {
24
EXTRAS_SELECTION_BSS,
25
EXTRAS_SELECTION_PUYO,
26
EXTRAS_SELECTION_DAGARDEN,
27
EXTRAS_SELECTION_CREDITS,
28
} ExtrasSelectionIDs;
29
30
// Object Class
31
struct ObjectMenuParam {
32
RSDK_OBJECT
33
};
34
35
// Entity Class
36
struct EntityMenuParam {
37
RSDK_ENTITY
38
uint8 puyoSelection;
39
uint8 bssSelection;
40
char menuTag[0x100];
41
int32 menuSelection;
42
bool32 startedTAAttempt; // only used in pre-plus, goes unused by the time plus rolled around
43
bool32 inTimeAttack;
44
int32 replayID;
45
int32 characterID;
46
int32 zoneID;
47
int32 actID;
48
int32 timeAttackRank;
49
#if MANIA_USE_PLUS
50
bool32 isEncoreMode;
51
int32 replayUUID;
52
bool32 viewReplay;
53
bool32 showGhost;
54
uint8 selectedReplay;
55
uint8 replayRankID;
56
#else
57
int32 timeScore;
58
#endif
59
int32 unused2;
60
int32 unused3;
61
int32 unused4;
62
int32 unused5;
63
int32 vsZoneID;
64
int32 vsActID;
65
int32 creditsReturnToMenu;
66
};
67
68
// Object Struct
69
extern ObjectMenuParam *MenuParam;
70
71
// Standard Entity Events
72
void MenuParam_Update(void);
73
void MenuParam_LateUpdate(void);
74
void MenuParam_StaticUpdate(void);
75
void MenuParam_Draw(void);
76
void MenuParam_Create(void *data);
77
void MenuParam_StageLoad(void);
78
#if GAME_INCLUDE_EDITOR
79
void MenuParam_EditorDraw(void);
80
void MenuParam_EditorLoad(void);
81
#endif
82
void MenuParam_Serialize(void);
83
84
// Extra Entity Functions
85
EntityMenuParam *MenuParam_GetParam(void);
86
87
#endif //! OBJ_MENUPARAM_H
88
89