Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/MSZ/BarStool.h
338 views
1
#ifndef OBJ_BARSTOOL_H
2
#define OBJ_BARSTOOL_H
3
4
#include "Game.h"
5
6
typedef enum { BARSTOOL_HEIGHT_SHORT, BARSTOOL_HEIGHT_TALL } BarStoolHeights;
7
8
// Object Class
9
struct ObjectBarStool {
10
RSDK_OBJECT
11
Hitbox hitboxStool;
12
uint16 sfxSpin;
13
uint16 sfxHop;
14
uint16 aniFrames;
15
};
16
17
// Entity Class
18
struct EntityBarStool {
19
RSDK_ENTITY
20
StateMachine(state);
21
uint8 height;
22
int32 spinSpeed;
23
int32 spinAngle;
24
int32 activePlayers;
25
int32 playerAngle[PLAYER_COUNT];
26
int32 playerPos[PLAYER_COUNT];
27
Animator stoolAnimator;
28
Animator poleAnimator;
29
};
30
31
// Object Struct
32
extern ObjectBarStool *BarStool;
33
34
// Standard Entity Events
35
void BarStool_Update(void);
36
void BarStool_LateUpdate(void);
37
void BarStool_StaticUpdate(void);
38
void BarStool_Draw(void);
39
void BarStool_Create(void *data);
40
void BarStool_StageLoad(void);
41
#if GAME_INCLUDE_EDITOR
42
void BarStool_EditorDraw(void);
43
void BarStool_EditorLoad(void);
44
#endif
45
void BarStool_Serialize(void);
46
47
// Extra Entity Functions
48
49
#endif //! OBJ_BARSTOOL_H
50
51