Path: blob/master/SonicMania/Objects/AIZ/AIZTornadoPath.h
338 views
#ifndef OBJ_AIZTORNADOPATH_H1#define OBJ_AIZTORNADOPATH_H23#include "Game.h"45typedef enum {6AIZTORNADOPATH_START,7AIZTORNADOPATH_DUD,8AIZTORNADOPATH_SETSPEED,9AIZTORNADOPATH_SETCAMERA,10AIZTORNADOPATH_DISABLEINTERACTIONS,11AIZTORNADOPATH_EXITTORNADO,12AIZTORNADOPATH_ENTERTORNADO,13AIZTORNADOPATH_TARGETNODE,14} AIZTornadoPathTypes;1516// Object Class17struct ObjectAIZTornadoPath {18RSDK_OBJECT19EntityAIZTornado *tornado;20EntityCamera *camera;21Vector2 moveVel;22uint16 aniFrames; // prolly editor-only23Animator unusedAnimator;24};2526// Entity Class27struct EntityAIZTornadoPath {28RSDK_ENTITY29StateMachine(state);30int32 type;31int32 targetSpeed;32int32 timer;33bool32 easeToSpeed;34int32 speed;35Animator unusedAnimator;36};3738// Object Struct39extern ObjectAIZTornadoPath *AIZTornadoPath;4041// Standard Entity Events42void AIZTornadoPath_Update(void);43void AIZTornadoPath_LateUpdate(void);44void AIZTornadoPath_StaticUpdate(void);45void AIZTornadoPath_Draw(void);46void AIZTornadoPath_Create(void *data);47void AIZTornadoPath_StageLoad(void);48#if GAME_INCLUDE_EDITOR49void AIZTornadoPath_EditorDraw(void);50void AIZTornadoPath_EditorLoad(void);51#endif52void AIZTornadoPath_Serialize(void);5354// Extra Entity Functions55void AIZTornadoPath_HandleMoveSpeed(void);56void AIZTornadoPath_State_SetTornadoSpeed(void);57void AIZTornadoPath_State_SetPlayerCamera(void);58void AIZTornadoPath_State_DisablePlayerInteractions(void);59void AIZTornadoPath_State_ExitTornadoSequence(void);60void AIZTornadoPath_State_PrepareCatchPlayer(void);61void AIZTornadoPath_State_CatchPlayer(void);6263#endif //! OBJ_AIZTORNADOPATH_H646566