Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/GHZ/Bridge.h
338 views
1
#ifndef OBJ_BRIDGE_H
2
#define OBJ_BRIDGE_H
3
4
#include "Game.h"
5
6
// Object Class
7
struct ObjectBridge {
8
RSDK_OBJECT
9
uint16 aniFrames;
10
};
11
12
// Entity Class
13
struct EntityBridge {
14
RSDK_ENTITY
15
uint8 length;
16
bool32 burnable;
17
uint8 burnOffset;
18
uint8 stoodEntityCount;
19
uint8 timer;
20
int32 stoodPos;
21
int32 bridgeDepth;
22
int32 depression;
23
void *stoodEntity;
24
int32 startPos;
25
int32 endPos;
26
Animator animator;
27
int32 unused1;
28
};
29
30
// Object Struct
31
extern ObjectBridge *Bridge;
32
33
// Standard Entity Events
34
void Bridge_Update(void);
35
void Bridge_LateUpdate(void);
36
void Bridge_StaticUpdate(void);
37
void Bridge_Draw(void);
38
void Bridge_Create(void *data);
39
void Bridge_StageLoad(void);
40
#if GAME_INCLUDE_EDITOR
41
void Bridge_EditorDraw(void);
42
void Bridge_EditorLoad(void);
43
#endif
44
void Bridge_Serialize(void);
45
46
// Extra Entity Functions
47
void Bridge_Burn(int32 offset);
48
bool32 Bridge_HandleCollisions(void *e, EntityBridge *self, Hitbox *entityHitbox, bool32 updateVars, bool32 isPlayer);
49
50
#endif //! OBJ_BRIDGE_H
51
52