Path: blob/master/SonicMania/Objects/TMZ/GymBar.h
338 views
#ifndef OBJ_GYMBAR_H1#define OBJ_GYMBAR_H23#include "Game.h"45typedef enum { GYMBAR_HORIZONTAL, GYMBAR_VERTICAL } GymBarTypes;67// Object Class8struct ObjectGymBar {9RSDK_OBJECT10uint16 aniFrames;11uint16 sfxBumper;12};1314// Entity Class15struct EntityGymBar {16RSDK_ENTITY17int32 type;18int32 size;19bool32 noSwing;20uint8 playerTimers[PLAYER_COUNT];21int32 maxX;22int32 minX;23Animator animator;24Hitbox hitbox;25};2627// Object Struct28extern ObjectGymBar *GymBar;2930// Standard Entity Events31void GymBar_Update(void);32void GymBar_LateUpdate(void);33void GymBar_StaticUpdate(void);34void GymBar_Draw(void);35void GymBar_Create(void *data);36void GymBar_StageLoad(void);37#if GAME_INCLUDE_EDITOR38void GymBar_EditorDraw(void);39void GymBar_EditorLoad(void);40#endif41void GymBar_Serialize(void);4243// Extra Entity Functions44void GymBar_DebugSpawn(void);45void GymBar_DebugDraw(void);4647void GymBar_HandlePlayerInteractions(void);4849void GymBar_HandleSwingJump(void);50void GymBar_PlayerState_SwingV(void);51void GymBar_PlayerState_Hang(void);52void GymBar_PlayerState_SwingH(void);5354#endif //! OBJ_GYMBAR_H555657