Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/PGZ/PSZLauncher.h
338 views
1
#ifndef OBJ_PSZLAUNCHER_H
2
#define OBJ_PSZLAUNCHER_H
3
4
#include "Game.h"
5
6
// Object Class
7
struct ObjectPSZLauncher {
8
RSDK_OBJECT
9
TABLE(int32 heightTable[33], { 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 15, 15, 16, 16, 0 });
10
Hitbox hitboxLaunch;
11
uint16 aniFrames;
12
};
13
14
// Entity Class
15
struct EntityPSZLauncher {
16
RSDK_ENTITY
17
StateMachine(state);
18
uint8 stoodPlayers;
19
uint8 activePlayers;
20
Animator animator;
21
uint8 power;
22
};
23
24
// Object Struct
25
extern ObjectPSZLauncher *PSZLauncher;
26
27
// Standard Entity Events
28
void PSZLauncher_Update(void);
29
void PSZLauncher_LateUpdate(void);
30
void PSZLauncher_StaticUpdate(void);
31
void PSZLauncher_Draw(void);
32
void PSZLauncher_Create(void *data);
33
void PSZLauncher_StageLoad(void);
34
#if GAME_INCLUDE_EDITOR
35
void PSZLauncher_EditorDraw(void);
36
void PSZLauncher_EditorLoad(void);
37
#endif
38
void PSZLauncher_Serialize(void);
39
40
// Extra Entity Functions
41
void PSZLauncher_DebugSpawn(void);
42
void PSZLauncher_DebugDraw(void);
43
44
void PSZLauncher_HandlePlayerCollisions(void);
45
void PSZLauncher_HandlePlayerInteractions(void);
46
void PSZLauncher_State_Init(void);
47
void PSZLauncher_State_Active(void);
48
49
#endif //! OBJ_PSZLAUNCHER_H
50
51