Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/SSZ/RTeleporter.h
338 views
1
#ifndef OBJ_RTELEPORTER_H
2
#define OBJ_RTELEPORTER_H
3
4
#include "Game.h"
5
6
// Object Class
7
struct ObjectRTeleporter {
8
RSDK_OBJECT
9
uint16 aniFrames;
10
Hitbox hitboxTeleporter;
11
uint16 unused1;
12
uint16 unused2;
13
uint16 unused3;
14
uint16 sfxExplosion;
15
uint16 sfxGoodFuture;
16
};
17
18
// Entity Class
19
struct EntityRTeleporter {
20
RSDK_ENTITY
21
StateMachine(state);
22
StateMachine(stateDraw);
23
int32 originY;
24
int32 timer;
25
Animator mainAnimator;
26
Animator electricAnimator;
27
};
28
29
// Object Struct
30
extern ObjectRTeleporter *RTeleporter;
31
32
// Standard Entity Events
33
void RTeleporter_Update(void);
34
void RTeleporter_LateUpdate(void);
35
void RTeleporter_StaticUpdate(void);
36
void RTeleporter_Draw(void);
37
void RTeleporter_Create(void *data);
38
void RTeleporter_StageLoad(void);
39
#if GAME_INCLUDE_EDITOR
40
void RTeleporter_EditorDraw(void);
41
void RTeleporter_EditorLoad(void);
42
#endif
43
void RTeleporter_Serialize(void);
44
45
// Extra Entity Functions
46
void RTeleporter_State_CheckPlayerCollisions(void);
47
void RTeleporter_State_Destroyed(void);
48
49
void RTeleporter_Draw_Active(void);
50
void RTeleporter_Draw_Exploding(void);
51
void RTeleporter_Draw_Destroyed(void);
52
53
#endif //! OBJ_RTELEPORTER_H
54
55