Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/AIZ/Bloominator.h
338 views
1
#ifndef OBJ_BLOOMINATOR_H
2
#define OBJ_BLOOMINATOR_H
3
4
#include "Game.h"
5
6
#if MANIA_USE_PLUS
7
// Object Class
8
struct ObjectBloominator {
9
RSDK_OBJECT
10
Hitbox hitboxBadnik;
11
Hitbox hitboxProjectile;
12
uint16 aniFrames;
13
uint16 sfxShot;
14
};
15
16
// Entity Class
17
struct EntityBloominator {
18
RSDK_ENTITY
19
StateMachine(state);
20
int32 timer;
21
Animator animator;
22
};
23
24
// Object Struct
25
extern ObjectBloominator *Bloominator;
26
27
// Standard Entity Events
28
void Bloominator_Update(void);
29
void Bloominator_LateUpdate(void);
30
void Bloominator_StaticUpdate(void);
31
void Bloominator_Draw(void);
32
void Bloominator_Create(void *data);
33
void Bloominator_StageLoad(void);
34
#if GAME_INCLUDE_EDITOR
35
void Bloominator_EditorDraw(void);
36
void Bloominator_EditorLoad(void);
37
#endif
38
void Bloominator_Serialize(void);
39
40
// Extra Entity Functions
41
void Bloominator_DebugDraw(void);
42
void Bloominator_DebugSpawn(void);
43
44
void Bloominator_CheckPlayerCollisions(void);
45
void Bloominator_CheckOffScreen(void);
46
47
void Bloominator_State_Idle(void);
48
void Bloominator_State_Firing(void);
49
void Bloominator_State_Init(void);
50
void Bloominator_State_Spikeball(void);
51
#endif
52
53
#endif //! OBJ_BLOOMINATOR_H
54
55