Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/Global/BoundsMarker.h
338 views
1
#ifndef OBJ_BOUNDSMARKER_H
2
#define OBJ_BOUNDSMARKER_H
3
4
#include "Game.h"
5
6
typedef enum {
7
BOUNDSMARKER_ANY_Y,
8
BOUNDSMARKER_ABOVE_Y,
9
BOUNDSMARKER_BELOW_Y,
10
BOUNDSMARKER_BELOW_Y_ANY,
11
} BoundsMarkerTypes;
12
13
// Object Class
14
struct ObjectBoundsMarker {
15
RSDK_OBJECT
16
uint16 aniFrames;
17
};
18
19
// Entity Class
20
struct EntityBoundsMarker {
21
RSDK_ENTITY
22
uint8 type;
23
int32 width;
24
bool32 vsDisable;
25
int32 offset;
26
};
27
28
// Object Struct
29
extern ObjectBoundsMarker *BoundsMarker;
30
31
// Standard Entity Events
32
void BoundsMarker_Update(void);
33
void BoundsMarker_LateUpdate(void);
34
void BoundsMarker_StaticUpdate(void);
35
void BoundsMarker_Draw(void);
36
void BoundsMarker_Create(void *data);
37
void BoundsMarker_StageLoad(void);
38
#if GAME_INCLUDE_EDITOR
39
void BoundsMarker_EditorDraw(void);
40
void BoundsMarker_EditorLoad(void);
41
#endif
42
void BoundsMarker_Serialize(void);
43
44
// Extra Entity Functions
45
void BoundsMarker_ApplyBounds(EntityPlayer *player, EntityBoundsMarker *marker, bool32 setPos);
46
void BoundsMarker_ApplyAllBounds(EntityPlayer *player, bool32 setPos);
47
48
#endif //! OBJ_BOUNDSMARKER_H
49
50