Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/BSS/BSS_Player.h
338 views
1
#ifndef OBJ_BSS_PLAYER_H
2
#define OBJ_BSS_PLAYER_H
3
4
#include "Game.h"
5
6
// Object Class
7
struct ObjectBSS_Player {
8
RSDK_OBJECT
9
uint16 jumpPressState;
10
uint16 unused1; // set to 4 when hitting a yellow sphere, never *used* though
11
uint16 sonicFrames;
12
uint16 tailsFrames;
13
uint16 knuxFrames;
14
uint16 mightyFrames;
15
uint16 rayFrames;
16
uint16 sfxJump;
17
};
18
19
// Entity Class
20
struct EntityBSS_Player {
21
RSDK_ENTITY
22
int32 gravityStrength;
23
bool32 sidekick;
24
StateMachine(stateInput);
25
int32 controllerID;
26
bool32 up;
27
bool32 down;
28
bool32 left;
29
bool32 right;
30
bool32 jumpPress;
31
Animator animator;
32
Animator tailAnimator;
33
uint16 aniFrames;
34
};
35
36
// Object Struct
37
extern ObjectBSS_Player *BSS_Player;
38
39
// Standard Entity Events
40
void BSS_Player_Update(void);
41
void BSS_Player_LateUpdate(void);
42
void BSS_Player_StaticUpdate(void);
43
void BSS_Player_Draw(void);
44
void BSS_Player_Create(void *data);
45
void BSS_Player_StageLoad(void);
46
#if GAME_INCLUDE_EDITOR
47
void BSS_Player_EditorDraw(void);
48
void BSS_Player_EditorLoad(void);
49
#endif
50
void BSS_Player_Serialize(void);
51
52
// Extra Entity Functions
53
void BSS_Player_Input_P1(void);
54
void BSS_Player_Input_P2(void);
55
56
#endif //! OBJ_BSS_PLAYER_H
57
58