Path: blob/master/SonicMania/Objects/ERZ/ERZStart.h
338 views
#ifndef OBJ_ERZSTART_H1#define OBJ_ERZSTART_H23#include "Game.h"45// Object Class6struct ObjectERZStart {7RSDK_OBJECT8int32 timer;9int32 unused1;10int32 superDashCooldown;11int32 unused2;12uint16 sfxClack;13uint16 sfxFlyIn;14uint16 sfxHullClose;15uint16 sfxRumble;16EntityFXRuby *fxRuby;17EntityPhantomRuby *ruby;18EntityChaosEmerald *emeralds[7];19EntityPhantomKing *king;20EntityKleptoMobile *eggman;21};2223// Entity Class24struct EntityERZStart {25MANIA_CUTSCENE_BASE26int32 timer;27};2829// Object Struct30extern ObjectERZStart *ERZStart;3132// Standard Entity Events33void ERZStart_Update(void);34void ERZStart_LateUpdate(void);35void ERZStart_StaticUpdate(void);36void ERZStart_Draw(void);37void ERZStart_Create(void *data);38void ERZStart_StageLoad(void);39#if GAME_INCLUDE_EDITOR40void ERZStart_EditorDraw(void);41void ERZStart_EditorLoad(void);42#endif43void ERZStart_Serialize(void);4445// Extra Entity Functions46void ERZStart_SetupObjects(void);47void ERZStart_HandlePlayerHover(EntityPlayer *player, EntityCutsceneSeq *seq, int32 posY);4849bool32 ERZStart_Cutscene_FadeIn(EntityCutsceneSeq *host);50bool32 ERZStart_Cutscene_ShrinkRubyWarpFX(EntityCutsceneSeq *host);51bool32 ERZStart_Cutscene_EnterKing(EntityCutsceneSeq *host);52bool32 ERZStart_Cutscene_KingMovingRuby(EntityCutsceneSeq *host);53bool32 ERZStart_Cutscene_KingAttachHornRuby(EntityCutsceneSeq *host);54bool32 ERZStart_Cutscene_SetupEggmanReveal(EntityCutsceneSeq *host);55bool32 ERZStart_Cutscene_EnterEggman(EntityCutsceneSeq *host);56bool32 ERZStart_Cutscene_EggmanKingWrestling(EntityCutsceneSeq *host);57bool32 ERZStart_Cutscene_PostWrestleFadeIn(EntityCutsceneSeq *host);58bool32 ERZStart_Cutscene_ReturnCamToSonic(EntityCutsceneSeq *host);59bool32 ERZStart_Cutscene_PreparePlayerTransform(EntityCutsceneSeq *host);60bool32 ERZStart_Cutscene_PlayerTransform(EntityCutsceneSeq *host);61bool32 ERZStart_Cutscene_StartFight(EntityCutsceneSeq *host);62bool32 ERZStart_Cutscene_Fight(EntityCutsceneSeq *host);6364void ERZStart_RubyHover(void);65void ERZStart_RubyMove(void);6667void ERZStart_Player_HandleSuperDash(EntityPlayer *player);68void ERZStart_State_PlayerSuperFly(void);69void ERZStart_Player_StartSuperFly(void);70void ERZStart_State_PlayerRebound(void);7172#endif //! OBJ_ERZSTART_H737475