Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/OOZ/PullSwitch.h
338 views
1
#ifndef OBJ_PULLSWITCH_H
2
#define OBJ_PULLSWITCH_H
3
4
#include "Game.h"
5
6
// Object Class
7
struct ObjectPullSwitch {
8
RSDK_OBJECT
9
Hitbox hitbox;
10
int32 unused;
11
uint16 aniFrames;
12
uint16 sfxButton;
13
uint16 sfxSmogClear;
14
};
15
16
// Entity Class
17
struct EntityPullSwitch {
18
RSDK_ENTITY
19
StateMachine(state);
20
int32 pullPos;
21
int32 sprY;
22
int32 sprHeight;
23
bool32 activated;
24
uint8 playerTimers[PLAYER_COUNT];
25
uint8 activePlayers;
26
Vector2 handlePos;
27
Animator handleAnimator;
28
Animator dispenserAnimator;
29
Animator chainAnimator;
30
};
31
32
// Object Struct
33
extern ObjectPullSwitch *PullSwitch;
34
35
// Standard Entity Events
36
void PullSwitch_Update(void);
37
void PullSwitch_LateUpdate(void);
38
void PullSwitch_StaticUpdate(void);
39
void PullSwitch_Draw(void);
40
void PullSwitch_Create(void *data);
41
void PullSwitch_StageLoad(void);
42
#if GAME_INCLUDE_EDITOR
43
void PullSwitch_EditorDraw(void);
44
void PullSwitch_EditorLoad(void);
45
#endif
46
void PullSwitch_Serialize(void);
47
48
// Extra Entity Functions
49
50
#endif //! OBJ_PULLSWITCH_H
51
52