Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/SPZ/GreenScreen.h
338 views
1
#ifndef OBJ_GREENSCREEN_H
2
#define OBJ_GREENSCREEN_H
3
4
#include "Game.h"
5
6
// Object Class
7
struct ObjectGreenScreen {
8
RSDK_OBJECT
9
Hitbox hitbox;
10
int32 parallaxFactor[5];
11
int32 bgSize[5];
12
uint16 aniFrames;
13
bool32 greenScreenActive;
14
};
15
16
// Entity Class
17
struct EntityGreenScreen {
18
RSDK_ENTITY
19
StateMachine(state);
20
Vector2 paraOffset;
21
int32 paraYFactor;
22
bool32 paraPreview;
23
bool32 showBG;
24
int32 unused1;
25
int32 unused2;
26
Vector2 startPos;
27
int32 unused3;
28
Animator animator;
29
};
30
31
// Object Struct
32
extern ObjectGreenScreen *GreenScreen;
33
34
// Standard Entity Events
35
void GreenScreen_Update(void);
36
void GreenScreen_LateUpdate(void);
37
void GreenScreen_StaticUpdate(void);
38
void GreenScreen_Draw(void);
39
void GreenScreen_Create(void *data);
40
void GreenScreen_StageLoad(void);
41
#if GAME_INCLUDE_EDITOR
42
void GreenScreen_EditorDraw(void);
43
void GreenScreen_EditorLoad(void);
44
#endif
45
void GreenScreen_Serialize(void);
46
47
// Extra Entity Functions
48
void GreenScreen_DrawBG(int32 x, int32 y, uint8 bgID, int32 parallaxFactor);
49
void GreenScreen_DrawBackgrounds(void);
50
void GreenScreen_DrawSprites(void);
51
52
#endif //! OBJ_GREENSCREEN_H
53
54