Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/Menu/DemoMenu.h
338 views
1
#ifndef OBJ_DEMOMENU_H
2
#define OBJ_DEMOMENU_H
3
4
#include "Game.h"
5
6
// Object Class
7
struct ObjectDemoMenu {
8
RSDK_OBJECT
9
uint16 aniFrames;
10
};
11
12
// Entity Class
13
struct EntityDemoMenu {
14
RSDK_ENTITY
15
StateMachine(state);
16
int32 timer;
17
int32 selectedZone;
18
Vector2 zoneSelPos;
19
Vector2 ghzPos;
20
Vector2 spzPos;
21
float vDelta;
22
Animator zoneSelAnimator;
23
Animator blackBarAnimator;
24
Animator flashBarAnimator;
25
Animator ghzAnimator;
26
Animator spzAnimator;
27
SpriteFrame *ghzFrame;
28
SpriteFrame *spzFrame;
29
};
30
31
// Object Entity
32
extern ObjectDemoMenu *DemoMenu;
33
34
// Standard Entity Events
35
void DemoMenu_Update(void);
36
void DemoMenu_LateUpdate(void);
37
void DemoMenu_StaticUpdate(void);
38
void DemoMenu_Draw(void);
39
void DemoMenu_Create(void *data);
40
void DemoMenu_StageLoad(void);
41
#if GAME_INCLUDE_EDITOR
42
void DemoMenu_EditorDraw(void);
43
void DemoMenu_EditorLoad(void);
44
#endif
45
void DemoMenu_Serialize(void);
46
47
// Extra Entity Functions
48
void DemoMenu_DrawStagePreview(Vector2 *pos, Animator *animator, int32 zoneID);
49
50
void DemoMenu_State_Appear(void);
51
void DemoMenu_State_Selection(void);
52
void DemoMenu_State_Load(void);
53
void DemoMenu_State_Disappear(void);
54
55
#endif //! OBJ_DEMOMENU_H
56
57