Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/LRZ/LRZ2Setup.h
338 views
1
#ifndef OBJ_LRZ2SETUP_H
2
#define OBJ_LRZ2SETUP_H
3
4
#include "Game.h"
5
6
typedef enum { GENERICTRIGGER_LRZ2_OUTRO } GenericTriggerTypesLRZ2;
7
8
typedef enum { LRZ2_TFLAGS_NORMAL, LRZ2_TFLAGS_LAVA, LRZ2_TFLAGS_CONVEYOR_L, LRZ2_TFLAGS_CONVEYOR_R } TileFlagsLRZ2;
9
10
// Object Class
11
struct ObjectLRZ2Setup {
12
RSDK_OBJECT
13
int32 lavaPalTimer;
14
int32 conveyorPalTimer;
15
int32 conveyorDstPal;
16
int32 conveyorSrcPal;
17
bool32 conveyorOff;
18
uint8 conveyorDir;
19
};
20
21
// Entity Class
22
struct EntityLRZ2Setup {
23
RSDK_ENTITY
24
};
25
26
// Object Struct
27
extern ObjectLRZ2Setup *LRZ2Setup;
28
29
// Standard Entity Events
30
void LRZ2Setup_Update(void);
31
void LRZ2Setup_LateUpdate(void);
32
void LRZ2Setup_StaticUpdate(void);
33
void LRZ2Setup_Draw(void);
34
void LRZ2Setup_Create(void *data);
35
void LRZ2Setup_StageLoad(void);
36
#if GAME_INCLUDE_EDITOR
37
void LRZ2Setup_EditorDraw(void);
38
void LRZ2Setup_EditorLoad(void);
39
#endif
40
void LRZ2Setup_Serialize(void);
41
42
// Extra Entity Functions
43
void LRZ2Setup_HandleStageReload(void);
44
void LRZ2Setup_Trigger_StartOutro(void);
45
EntityButton *LRZ2Setup_SetupTagLink(int32 tag, Entity *entity);
46
void LRZ2Setup_GetTileInfo(int32 x, int32 y, int32 moveOffsetX, int32 moveOffsetY, int32 cPlane, int32 *tile, uint8 *flags);
47
48
#endif //! OBJ_LRZ2SETUP_H
49
50