Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/GHZ/GHZCutsceneST.h
338 views
1
#ifndef OBJ_GHZCUTSCENEST_H
2
#define OBJ_GHZCUTSCENEST_H
3
4
#include "Game.h"
5
6
// Object Class
7
struct ObjectGHZCutsceneST {
8
RSDK_OBJECT
9
int32 unused1;
10
EntityFXRuby *fxRuby;
11
EntityAIZKingClaw *claw;
12
EntityPlatform *platform;
13
EntityPhantomRuby *phantomRuby;
14
EntityCutsceneHBH *cutsceneHBH[5];
15
};
16
17
// Entity Class
18
struct EntityGHZCutsceneST {
19
RSDK_ENTITY
20
// Cutscene Base (I think)
21
Vector2 size;
22
bool32 activated;
23
bool32 setupKnuxCutscene;
24
int32 timer;
25
int32 unused1;
26
int32 unused2;
27
int32 unused3;
28
int32 unused4;
29
Hitbox hitboxUnused;
30
31
// Unique Variables
32
Hitbox hitbox;
33
};
34
35
// Object Struct
36
extern ObjectGHZCutsceneST *GHZCutsceneST;
37
38
// Standard Entity Events
39
void GHZCutsceneST_Update(void);
40
void GHZCutsceneST_LateUpdate(void);
41
void GHZCutsceneST_StaticUpdate(void);
42
void GHZCutsceneST_Draw(void);
43
void GHZCutsceneST_Create(void *data);
44
void GHZCutsceneST_StageLoad(void);
45
#if GAME_INCLUDE_EDITOR
46
void GHZCutsceneST_EditorDraw(void);
47
void GHZCutsceneST_EditorLoad(void);
48
#endif
49
void GHZCutsceneST_Serialize(void);
50
51
// Extra Entity Functions
52
void GHZCutsceneST_SetupObjects(void);
53
void GHZCutsceneST_SetupKnuxCutscene(void);
54
#if MANIA_USE_PLUS
55
void GHZCutsceneST_Cutscene_SkipCB(void);
56
#endif
57
58
bool32 GHZCutsceneST_Cutscene_FadeIn(EntityCutsceneSeq *host);
59
bool32 GHZCutsceneST_Cutscene_FinishRubyWarp(EntityCutsceneSeq *host);
60
bool32 GHZCutsceneST_Cutscene_ExitHBH(EntityCutsceneSeq *host);
61
bool32 GHZCutsceneST_Cutscene_SetupGHZ1(EntityCutsceneSeq *host);
62
63
#endif //! OBJ_GHZCUTSCENEST_H
64
65