Path: blob/master/SonicMania/Objects/HCZ/HCZOneWayDoor.h
338 views
#ifndef OBJ_HCZONEWAYDOOR_H1#define OBJ_HCZONEWAYDOOR_H23#include "Game.h"45typedef enum {6HCZONEWAYDOOR_UP,7HCZONEWAYDOOR_LEFT,8HCZONEWAYDOOR_DOWN,9HCZONEWAYDOOR_RIGHT,10} HCZOneWayDoorOrientations;1112// Object Class13struct ObjectHCZOneWayDoor {14RSDK_OBJECT15uint16 aniFrames;16uint16 sfxClack;17};1819// Entity Class20struct EntityHCZOneWayDoor {21RSDK_ENTITY22StateMachine(state);23Vector2 startPos;24Vector2 size;25Vector2 initialSize;26int32 movePos;27int32 length;28int32 duration;29uint8 orientation;30uint8 detectDirection;31Hitbox hitboxSolid;32Hitbox hitboxTrigger;33Animator animator;34};3536// Object Struct37extern ObjectHCZOneWayDoor *HCZOneWayDoor;3839// Standard Entity Events40void HCZOneWayDoor_Update(void);41void HCZOneWayDoor_LateUpdate(void);42void HCZOneWayDoor_StaticUpdate(void);43void HCZOneWayDoor_Draw(void);44void HCZOneWayDoor_Create(void *data);45void HCZOneWayDoor_StageLoad(void);46#if GAME_INCLUDE_EDITOR47void HCZOneWayDoor_EditorDraw(void);48void HCZOneWayDoor_EditorLoad(void);49#endif50void HCZOneWayDoor_Serialize(void);5152// Extra Entity Functions53void HCZOneWayDoor_SetupHitboxes(void);54void HCZOneWayDoor_DrawSprites(void);5556#endif //! OBJ_HCZONEWAYDOOR_H575859