Path: blob/master/SonicMania/Objects/Common/PlatformControl.h
338 views
#ifndef OBJ_PLATFORMCONTROL_H1#define OBJ_PLATFORMCONTROL_H23#include "Game.h"45typedef enum {6PLATFORMCONTROL_CIRCUIT,7PLATFORMCONTROL_REVERSE,8PLATFORMCONTROL_TELEPORT,9PLATFORMCONTROL_STOP,10} PlatformControlTypes;1112// Object Class13struct ObjectPlatformControl {14RSDK_OBJECT15};1617// Entity Class18struct EntityPlatformControl {19RSDK_ENTITY20int32 nodeCount;21int32 childCount;22int32 speed;23bool32 setActive;24uint8 type;25bool32 isActive;26int32 buttonTag;27EntityButton *taggedButton;28};2930// Object Struct31extern ObjectPlatformControl *PlatformControl;3233// Standard Entity Events34void PlatformControl_Update(void);35void PlatformControl_LateUpdate(void);36void PlatformControl_StaticUpdate(void);37void PlatformControl_Draw(void);38void PlatformControl_Create(void *data);39void PlatformControl_StageLoad(void);40#if GAME_INCLUDE_EDITOR41void PlatformControl_EditorDraw(void);42void PlatformControl_EditorLoad(void);43#endif44void PlatformControl_Serialize(void);4546// Extra Entity Functions47void PlatformControl_ManagePlatformVelocity(EntityPlatform *platform, EntityPlatformNode *node);4849#endif //! OBJ_PLATFORMCONTROL_H505152