Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-1-2-2013-Decompilation
Path: blob/main/RSDKv4/NativeObjects/PauseMenu.hpp
817 views
1
#ifndef NATIVE_PAUSEMENU_H
2
#define NATIVE_PAUSEMENU_H
3
4
enum PauseMenuButtons {
5
PMB_CONTINUE,
6
PMB_RESTART,
7
PMB_SETTINGS,
8
PMB_EXIT,
9
#if !RETRO_USE_ORIGINAL_CODE
10
PMB_DEVMENU,
11
#endif
12
PMB_COUNT
13
};
14
15
enum PauseMenuStates {
16
PAUSEMENU_STATE_SETUP,
17
PAUSEMENU_STATE_ENTER,
18
PAUSEMENU_STATE_MAIN,
19
PAUSEMENU_STATE_CONTINUE,
20
PAUSEMENU_STATE_ACTION,
21
PAUSEMENU_STATE_ENTERSUBMENU,
22
PAUSEMENU_STATE_SUBMENU,
23
PAUSEMENU_STATE_EXITSUBMENU,
24
PAUSEMENU_STATE_RESTART,
25
PAUSEMENU_STATE_EXIT,
26
#if !RETRO_USE_ORIGINAL_CODE
27
PAUSEMENU_STATE_DEVMENU,
28
#endif
29
};
30
31
struct NativeEntity_PauseMenu : NativeEntityBase {
32
PauseMenuStates state;
33
float timer;
34
float unused1;
35
NativeEntity_RetroGameLoop *retroGameLoop;
36
NativeEntity_SettingsScreen *settingsScreen;
37
NativeEntity_TextLabel *label;
38
float renderRot;
39
float renderRotMax;
40
float rotInc;
41
MatrixF matrixTemp;
42
MatrixF matrix;
43
NativeEntity_SubMenuButton *buttons[PMB_COUNT];
44
int buttonSelected;
45
float buttonRot[PMB_COUNT];
46
float rotMax[PMB_COUNT];
47
float buttonRotY[PMB_COUNT];
48
NativeEntity_DialogPanel *dialog;
49
int unused2;
50
float buttonX;
51
float matrixX;
52
float width;
53
float matrixY;
54
float matrixZ;
55
float rotationY;
56
float rotYOff;
57
byte textureCircle;
58
byte textureDPad;
59
float dpadX;
60
float dpadXSpecial;
61
float dpadY;
62
int unusedAlpha;
63
byte makeSound;
64
byte miniPauseDisabled;
65
#if !RETRO_USE_ORIGINAL_CODE
66
NativeEntity_FadeScreen *devMenuFade;
67
#endif
68
};
69
70
void PauseMenu_Create(void *objPtr);
71
void PauseMenu_Main(void *objPtr);
72
73
// added by me rmg
74
void PauseMenu_Render(void *objPtr);
75
void PauseMenu_CheckTouch(void *objPtr);
76
77
#endif // NATIVE_PAUSEMENU_H
78