Path: blob/master/SonicMania/Objects/SSZ/Kabasira.h
338 views
#ifndef OBJ_KABASIRA_H1#define OBJ_KABASIRA_H23#include "Game.h"45#define KABASIRA_BODY_COUNT (4)67// Object Class8struct ObjectKabasira {9RSDK_OBJECT10Hitbox hitboxBadnik;11Vector2 onScreenRange;12uint16 aniFrames;13uint16 sfxPon;14uint16 sfxExplosion2;15};1617// Entity Class18struct EntityKabasira {19RSDK_ENTITY20StateMachine(state);21int32 unused1;22int32 unused2;23Vector2 startPos;24uint8 startDir;25int32 timer;26Animator bodyAnimator;27Animator wingsAnimator;28int32 unused3;29};3031// Object Struct32extern ObjectKabasira *Kabasira;3334// Standard Entity Events35void Kabasira_Update(void);36void Kabasira_LateUpdate(void);37void Kabasira_StaticUpdate(void);38void Kabasira_Draw(void);39void Kabasira_Create(void *data);40void Kabasira_StageLoad(void);41#if GAME_INCLUDE_EDITOR42void Kabasira_EditorDraw(void);43void Kabasira_EditorLoad(void);44#endif45void Kabasira_Serialize(void);4647// Extra Entity Functions48void Kabasira_DebugSpawn(void);49void Kabasira_DebugDraw(void);5051bool32 Kabasira_HandleAnimations(uint8 angle);52void Kabasira_DrawSegment(int32 angle, int32 alpha);53void Kabasira_CheckPlayerCollisions(void);54void Kabasira_CheckOffScreen(void);5556void Kabasira_State_Init(void);57void Kabasira_State_Moving(void);58void Kabasira_State_LaunchedAttack(void);5960#endif //! OBJ_KABASIRA_H616263