Path: blob/master/SonicMania/Objects/Cutscene/ChaosEmerald.h
338 views
#ifndef OBJ_CHAOSEMERALD_H1#define OBJ_CHAOSEMERALD_H23#include "Game.h"45typedef enum {6CHAOSEMERALD_GREEN,7CHAOSEMERALD_YELLOW,8CHAOSEMERALD_BLUE,9CHAOSEMERALD_PURPLE,10CHAOSEMERALD_GRAY,11CHAOSEMERALD_CYAN,12CHAOSEMERALD_RED,13} EmeraldColors;1415// Object Class16struct ObjectChaosEmerald {17RSDK_OBJECT18uint16 aniFrames;19TABLE(int32 emeraldColors[36],20{ 0xA00000, 0xB01820, 0xC03040, 0xD04860, 0xE06080, 0x4040C8, 0x5858C8, 0xE060E0, 0x7070C8, 0x8888C8, 0xA0A0C8, 0xC048C8,210xA030B0, 0x801898, 0x600080, 0x88B8E0, 0x80E0, 0x2890E0, 0x58A8E0, 0xB8D0E0, 0x208000, 0x409800, 0x60B000, 0x80C800,220xA0E000, 0xE0E0A0, 0xD0C878, 0xC0B050, 0xB09828, 0xA08000, 0x808080, 0x909090, 0xA0A0A0, 0xC0C0C0, 0xB0B0B0, 0xE8E8E8 });23int32 colorStorage[36];24};2526// Entity Class27struct EntityChaosEmerald {28RSDK_ENTITY29StateMachine(state);30uint8 type;31int32 radius;32Vector2 originPos;33Animator animator;34};3536// Object Struct37extern ObjectChaosEmerald *ChaosEmerald;3839// Standard Entity Events40void ChaosEmerald_Update(void);41void ChaosEmerald_LateUpdate(void);42void ChaosEmerald_StaticUpdate(void);43void ChaosEmerald_Draw(void);44void ChaosEmerald_Create(void *data);45void ChaosEmerald_StageLoad(void);46#if GAME_INCLUDE_EDITOR47void ChaosEmerald_EditorDraw(void);48void ChaosEmerald_EditorLoad(void);49#endif50void ChaosEmerald_Serialize(void);5152// Extra Entity Functions53void ChaosEmerald_State_None(void);54void ChaosEmerald_State_Rotate(void);5556#endif //! OBJ_CHAOSEMERALD_H575859