Path: blob/master/SonicMania/Objects/PGZ/Press.h
338 views
#ifndef OBJ_PRESS_H1#define OBJ_PRESS_H23#include "Game.h"45// Object Class6struct ObjectPress {7RSDK_OBJECT8uint16 aniFrames;9Hitbox hitbox;10uint16 sfxImpact;11uint16 sfxPress;12#if MANIA_USE_PLUS13bool32 canSuper;14#endif15};1617// Entity Class18struct EntityPress {19RSDK_ENTITY20StateMachine(state);21uint16 size;22uint32 speed;23int32 offTop;24int32 offBottom;25int32 topOffset;26uint32 threads;27int32 height;28int32 timerStart;29int32 timer;30Vector2 drawPos;31uint16 threadSprY;32uint8 stoodPlayersRoof;33uint8 stoodPlayersFloor;34Animator crusherAnimator;35Animator threadAnimator;36Animator bumperAnimator;37};3839// Object Struct40extern ObjectPress *Press;4142// Standard Entity Events43void Press_Update(void);44void Press_LateUpdate(void);45void Press_StaticUpdate(void);46void Press_Draw(void);47void Press_Create(void *data);48void Press_StageLoad(void);49#if GAME_INCLUDE_EDITOR50void Press_EditorDraw(void);51void Press_EditorLoad(void);52#endif53void Press_Serialize(void);5455// Extra Entity Functions56#if MANIA_USE_PLUS57bool32 Press_CheckCanSuper(bool32 isHUD);58#endif59void Press_Move(void);60void Press_State_Crush(void);61void Press_State_FinalCrush(void);62void Press_HandleMovement(void);63void Press_State_HandleCrates(void);64void Press_DrawHandle(void);6566#endif //! OBJ_PRESS_H676869