Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/LRZ/LRZ1Intro.h
338 views
1
#ifndef OBJ_LRZ1INTRO_H
2
#define OBJ_LRZ1INTRO_H
3
4
#include "Game.h"
5
6
#if MANIA_USE_PLUS
7
// Object Class
8
struct ObjectLRZ1Intro {
9
RSDK_OBJECT
10
uint16 aniFrames;
11
uint16 sfxSubLand;
12
uint16 sfxWalkerLegs2;
13
uint16 sfxLava;
14
};
15
16
// Entity Class
17
struct EntityLRZ1Intro {
18
RSDK_ENTITY
19
StateMachine(state);
20
int32 timer;
21
int32 originY;
22
int32 spawnPosY;
23
Vector2 playerOffset[PLAYER_COUNT];
24
Animator animator;
25
};
26
27
// Object Struct
28
extern ObjectLRZ1Intro *LRZ1Intro;
29
30
// Standard Entity Events
31
void LRZ1Intro_Update(void);
32
void LRZ1Intro_LateUpdate(void);
33
void LRZ1Intro_StaticUpdate(void);
34
void LRZ1Intro_Draw(void);
35
void LRZ1Intro_Create(void *data);
36
void LRZ1Intro_StageLoad(void);
37
#if GAME_INCLUDE_EDITOR
38
void LRZ1Intro_EditorDraw(void);
39
void LRZ1Intro_EditorLoad(void);
40
#endif
41
void LRZ1Intro_Serialize(void);
42
43
// Extra Entity Functions
44
void LRZ1Intro_HandlePlayerCollisions(void);
45
void LRZ1Intro_HandlePlayerMovement(void);
46
void LRZ1Intro_HandleExplosions(void);
47
void LRZ1Intro_HandleExplosions(void);
48
49
void LRZ1Intro_State_SetupActors(void);
50
void LRZ1Intro_State_IntroDelay(void);
51
void LRZ1Intro_State_EnterSub(void);
52
void LRZ1Intro_State_RidingSub(void);
53
void LRZ1Intro_State_CrashedSub(void);
54
void LRZ1Intro_State_SubSinking(void);
55
56
#endif
57
58
#endif //! OBJ_LRZ1INTRO_H
59
60