Path: blob/master/SonicMania/Objects/Global/DebugMode.h
338 views
#ifndef OBJ_DEBUGMODE_H1#define OBJ_DEBUGMODE_H23#include "Game.h"45#define DEBUGMODE_ADD_OBJ(object) DebugMode_AddObject(object->classID, object##_DebugDraw, object##_DebugSpawn)6#define DEBUGMODE_OBJECT_COUNT (0x100)78// Object Class9struct ObjectDebugMode {10RSDK_OBJECT11// Never used, only set, prolly leftover from S1/S212int16 classIDs[DEBUGMODE_OBJECT_COUNT];13StateMachine(draw[DEBUGMODE_OBJECT_COUNT]);14StateMachine(spawn[DEBUGMODE_OBJECT_COUNT]);15Animator animator;16int32 itemID;17int32 itemCount;18bool32 debugActive;19uint8 itemType;20uint8 itemTypeCount;21int32 unused1; // no clue, though it could be "exitTimer" assuming this was based on v4's debugMode object?22};2324// Entity Class25struct EntityDebugMode {26RSDK_ENTITY27};2829// Object Struct30extern ObjectDebugMode *DebugMode;3132// Standard Entity Events33void DebugMode_Update(void);34void DebugMode_LateUpdate(void);35void DebugMode_StaticUpdate(void);36void DebugMode_Draw(void);37void DebugMode_Create(void *data);38void DebugMode_StageLoad(void);39#if GAME_INCLUDE_EDITOR40void DebugMode_EditorDraw(void);41void DebugMode_EditorLoad(void);42#endif43void DebugMode_Serialize(void);4445// Extra Entity Functions46void DebugMode_NullState(void);47void DebugMode_AddObject(uint16 id, void (*draw)(void), void (*spawn)(void));4849#endif //! OBJ_DEBUGMODE_H505152