Path: blob/master/SonicMania/Objects/HCZ/DCEvent.h
338 views
#ifndef OBJ_DCEVENT_H1#define OBJ_DCEVENT_H23#include "Game.h"45typedef enum {6DCEVENT_EGGMAN,7DCEVENT_BOMB,8DCEVENT_BUBBLE,9} DCEventTypes;1011typedef enum {12DCEVENT_EGGMAN_PLACEBOMB,13DCEVENT_EGGMAN_SWIMMING,14} DCEventEggmanTypes;1516// Object Class17struct ObjectDCEvent {18RSDK_OBJECT19Hitbox unusedHitbox1;20Hitbox hitboxBomb;21bool32 canExplodeBombs;22uint16 aniFrames;23uint16 eggmanFrames;24uint16 sfxExplosion;25uint16 sfxRumble;26uint16 sfxImpact6;27uint16 sfxImpact4;28};2930// Entity Class31struct EntityDCEvent {32RSDK_ENTITY33StateMachine(state);34uint8 numChildren;35uint8 type;36int32 remainingBombs;37int32 startY;38int32 timer;39Animator animator;40};4142// Object Struct43extern ObjectDCEvent *DCEvent;4445// Standard Entity Events46void DCEvent_Update(void);47void DCEvent_LateUpdate(void);48void DCEvent_StaticUpdate(void);49void DCEvent_Draw(void);50void DCEvent_Create(void *data);51void DCEvent_StageLoad(void);52#if GAME_INCLUDE_EDITOR53void DCEvent_EditorDraw(void);54void DCEvent_EditorLoad(void);55#endif56void DCEvent_Serialize(void);5758// Extra Entity Functions59void DCEvent_State_Collapse(void);60void DCEvent_StateEggmanBomber_AwaitPlayer(void);6162void DCEvent_Input_MoveRight(void);63void DCEvent_Input_LookDown(void);6465void DCEvent_StateEggmanBomber_WaitForLookDown(void);66void DCEvent_StateEggmanBomber_Swimming(void);67void DCEvent_StateEggmanBomber_PlaceBomb(void);68void DCEvent_StateEggmanBomber_PlacedAllBombs(void);6970void DCEvent_StateEggmanSwim_AwaitPlayer(void);71void DCEvent_StateEggmanSwim_Swimming(void);7273void DCEvent_State_Bomb(void);74void DCEvent_State_BombExplode(void);7576#endif //! OBJ_DCEVENT_H777879