Path: blob/master/SonicMania/Objects/MMZ/FarPlane.h
338 views
#ifndef OBJ_FARPLANE_H1#define OBJ_FARPLANE_H23#include "Game.h"45#define FARPLANE_ENTITY_COUNT (256)67// Object Class8struct ObjectFarPlane {9RSDK_OBJECT10uint32 aniFrames;11Vector2 screenPos;12Vector2 worldPos;13Vector2 originPos;14Vector2 position;15Vector2 positionList[0x200];16int32 unused1;17int32 unused2;18int32 unused3;19int32 unused4;20int32 unused5;21uint16 layerID;22};2324// Entity Class25struct EntityFarPlane {26RSDK_ENTITY27Vector2 size;28Vector2 origin;29uint16 entitySlots[FARPLANE_ENTITY_COUNT];30int32 entityCount;31Animator animator;32};3334// Object Struct35extern ObjectFarPlane *FarPlane;3637// Standard Entity Events38void FarPlane_Update(void);39void FarPlane_LateUpdate(void);40void FarPlane_StaticUpdate(void);41void FarPlane_Draw(void);42void FarPlane_Create(void *data);43void FarPlane_StageLoad(void);44#if GAME_INCLUDE_EDITOR45void FarPlane_EditorDraw(void);46void FarPlane_EditorLoad(void);47#endif48void FarPlane_Serialize(void);4950// Extra Entity Functions51void FarPlane_SetupEntities(void);52void FarPlane_SetEntityActivities(uint8 active);53void FarPlane_DrawHook_ApplyFarPlane(void);54void FarPlane_DrawHook_RemoveFarPlane(void);55void FarPlane_Scanline_FarPlaneView(ScanlineInfo *scanline);5657#endif //! OBJ_FARPLANE_H585960