Path: blob/master/SonicMania/Objects/MSZ/EggLoco.h
338 views
#ifndef OBJ_EGGLOCO_H1#define OBJ_EGGLOCO_H23#include "Game.h"45// Object Class6struct ObjectEggLoco {7RSDK_OBJECT8uint16 aniFrames;9uint16 sfxSmoke;10uint16 sfxWhistle;11};1213// Entity Class14struct EntityEggLoco {15RSDK_ENTITY16StateMachine(state);17int32 timer;18int32 couplingAngle;19int32 tootPullPos;20int32 unused1;21int32 unused2;22Animator unusedAnimator;23Animator eggmanAnimator;24Animator eggmanTootAnimator;25Animator locomotiveAnimator;26Animator whistleAnimator;27Animator bigWheelAnimator;28Animator bigWheelEdgeAnimator;29Animator smallWheelAnimator;30Animator couplingAnimator;31Animator guardAnimator;32Animator lanternAnimator;33Animator pistonRodAnimator;34Animator whistleCableAnimator;35};3637// Object Struct38extern ObjectEggLoco *EggLoco;3940// Standard Entity Events41void EggLoco_Update(void);42void EggLoco_LateUpdate(void);43void EggLoco_StaticUpdate(void);44void EggLoco_Draw(void);45void EggLoco_Create(void *data);46void EggLoco_StageLoad(void);47#if GAME_INCLUDE_EDITOR48void EggLoco_EditorDraw(void);49void EggLoco_EditorLoad(void);50#endif51void EggLoco_Serialize(void);5253// Extra Entity Functions54bool32 EggLoco_SfxCheck_LocoChugga(void);55void EggLoco_SfxUpdate_LocoChugga(int32 sfx);5657void EggLoco_State_TootDelay(void);58void EggLoco_State_Whistle(void);59void EggLoco_State_Tooting(void);6061#endif //! OBJ_EGGLOCO_H626364