Path: blob/master/SonicMania/Objects/Cutscene/RubyPortal.h
338 views
#ifndef OBJ_RUBYPORTAL_H1#define OBJ_RUBYPORTAL_H23#include "Game.h"45// Object Class6struct ObjectRubyPortal {7RSDK_OBJECT8Hitbox hitbox;9uint16 aniFrames;10#if MANIA_USE_PLUS11bool32 openPortal;12#endif13};1415// Entity Class16struct EntityRubyPortal {17RSDK_ENTITY18StateMachine(state);19int32 timer;20Animator animator;21Hitbox hitbox;22};2324// Object Struct25extern ObjectRubyPortal *RubyPortal;2627// Standard Entity Events28void RubyPortal_Update(void);29void RubyPortal_LateUpdate(void);30void RubyPortal_StaticUpdate(void);31void RubyPortal_Draw(void);32void RubyPortal_Create(void *data);33void RubyPortal_StageLoad(void);34#if GAME_INCLUDE_EDITOR35void RubyPortal_EditorDraw(void);36void RubyPortal_EditorLoad(void);37#endif38void RubyPortal_Serialize(void);3940// Extra Entity Functions41#if MANIA_USE_PLUS42void RubyPortal_HandleTileDestruction(void);43#endif44void RubyPortal_State_AwaitOpenTMZ2(void);45void RubyPortal_State_Opening(void);46void RubyPortal_State_Opened(void);47#if MANIA_USE_PLUS48void RubyPortal_State_SaveGameState(void);49#endif50void RubyPortal_State_Open_WarpDoor(void);51void RubyPortal_State_Open_Cutscene(void);52#if MANIA_USE_PLUS53void RubyPortal_State_EncoreEnd(void);54void RubyPortal_State_EncoreRampage(void);55#endif5657#endif //! OBJ_RUBYPORTAL_H585960