Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/BSS/BSS_Message.h
338 views
1
#ifndef OBJ_BSS_MESSAGE_H
2
#define OBJ_BSS_MESSAGE_H
3
4
#include "Game.h"
5
6
typedef enum {
7
BSS_MESSAGE_GETSPHERES,
8
BSS_MESSAGE_PERFECT,
9
BSS_MESSAGE_FINISHED,
10
} BSS_MessageTypes;
11
12
// Object Class
13
struct ObjectBSS_Message {
14
RSDK_OBJECT
15
uint16 aniFrames;
16
};
17
18
// Entity Class
19
struct EntityBSS_Message {
20
RSDK_ENTITY
21
StateMachine(state);
22
int32 timer;
23
int32 messageFinishTimer;
24
bool32 fadeEnabled;
25
int32 color;
26
bool32 saveInProgress;
27
Animator leftAnimator;
28
Animator rightAnimator;
29
};
30
31
// Object Struct
32
extern ObjectBSS_Message *BSS_Message;
33
34
// Standard Entity Events
35
void BSS_Message_Update(void);
36
void BSS_Message_LateUpdate(void);
37
void BSS_Message_StaticUpdate(void);
38
void BSS_Message_Draw(void);
39
void BSS_Message_Create(void *data);
40
void BSS_Message_StageLoad(void);
41
#if GAME_INCLUDE_EDITOR
42
void BSS_Message_EditorDraw(void);
43
void BSS_Message_EditorLoad(void);
44
#endif
45
void BSS_Message_Serialize(void);
46
47
// Extra Entity Functions
48
void BSS_Message_State_GetBS(void);
49
void BSS_Message_State_GetBSWait(void);
50
void BSS_Message_State_Finished(void);
51
void BSS_Message_State_Perfect(void);
52
void BSS_Message_State_WaitPerfect(void);
53
void BSS_Message_State_MsgFinished(void);
54
55
#if MANIA_USE_PLUS
56
void BSS_Message_TrackProgressCB(bool32 success);
57
#else
58
void BSS_Message_TrackProgressCB(void);
59
#endif
60
61
void BSS_Message_State_SaveGameProgress(void);
62
void BSS_Message_State_LoadPrevScene(void);
63
64
#endif //! OBJ_BSS_MESSAGE_H
65
66