Path: blob/master/SonicMania/Objects/HCZ/Buggernaut.h
338 views
#ifndef OBJ_BUGGERNAUT_H1#define OBJ_BUGGERNAUT_H23#include "Game.h"45// Object Class6struct ObjectBuggernaut {7RSDK_OBJECT8Hitbox hitboxBadnik;9Hitbox hitboxParentRange;10uint16 aniFrames;11};1213// Entity Class14struct EntityBuggernaut {15RSDK_ENTITY16StateMachine(state);17bool32 passThrough;18int32 timer;19int32 buzzCount;20Vector2 startPos;21EntityBuggernaut *parent;22Animator bodyAnimator;23Animator wingAnimator;24};2526// Object Struct27extern ObjectBuggernaut *Buggernaut;2829// Standard Entity Events30void Buggernaut_Update(void);31void Buggernaut_LateUpdate(void);32void Buggernaut_StaticUpdate(void);33void Buggernaut_Draw(void);34void Buggernaut_Create(void *data);35void Buggernaut_StageLoad(void);36#if GAME_INCLUDE_EDITOR37void Buggernaut_EditorDraw(void);38void Buggernaut_EditorLoad(void);39#endif40void Buggernaut_Serialize(void);4142// Extra Entity Functions43void Buggernaut_DebugSpawn(void);44void Buggernaut_DebugDraw(void);4546void Buggernaut_CheckPlayerCollisions(void);47void Buggernaut_CheckOffScreen(void);48bool32 Buggernaut_HandleTileCollisionsX(void);49bool32 Buggernaut_HandleTileCollisionsY(void);5051void Buggernaut_State_Init(void);52void Buggernaut_State_Idle(void);53void Buggernaut_State_FlyTowardTarget(void);54void Buggernaut_State_FlyAway(void);5556void Buggernaut_State_Child(void);5758#endif //! OBJ_BUGGERNAUT_H596061