Path: blob/master/SonicMania/Objects/TMZ/BallHog.h
338 views
#ifndef OBJ_BALLHOG_H1#define OBJ_BALLHOG_H23#include "Game.h"45// Object Class6struct ObjectBallHog {7RSDK_OBJECT8Hitbox hitboxBadnik;9Hitbox hitboxBomb;10uint16 aniFrames;11uint16 sfxExplosion;12uint16 sfxArrowHit;13uint16 sfxDrop;14uint16 sfxJump;15};1617// Entity Class18struct EntityBallHog {19RSDK_ENTITY20StateMachine(state);21uint8 numJumps;22uint8 bombTime;23uint8 timer;24uint8 jumpCount;25Vector2 startPos;26uint8 startDir;27Animator animator;28};2930// Object Struct31extern ObjectBallHog *BallHog;3233// Standard Entity Events34void BallHog_Update(void);35void BallHog_LateUpdate(void);36void BallHog_StaticUpdate(void);37void BallHog_Draw(void);38void BallHog_Create(void *data);39void BallHog_StageLoad(void);40#if GAME_INCLUDE_EDITOR41void BallHog_EditorDraw(void);42void BallHog_EditorLoad(void);43#endif44void BallHog_Serialize(void);4546// Extra Entity Functions47void BallHog_DebugSpawn(void);48void BallHog_DebugDraw(void);4950void BallHog_CheckPlayerCollisions(void);51void BallHog_CheckOffScreen(void);5253void BallHog_State_Init(void);54void BallHog_State_Idle(void);55void BallHog_State_Jump(void);56void BallHog_State_Land(void);57void BallHog_State_DropBomb(void);5859void BallHog_State_Bomb(void);6061#endif //! OBJ_BALLHOG_H626364