Path: blob/master/SonicMania/Objects/Common/Palette.c
338 views
// ---------------------------------------------------------------------1// RSDK Project: Sonic Mania2// Object Description: Palette Object3// Object Author: Christian Whitehead/Simon Thomley/Hunter Bridges4// Decompiled by: Rubberduckycooly & RMGRich5// ---------------------------------------------------------------------67#include "Game.h"89#if MANIA_USE_PLUS10ObjectPalette *Palette;1112void Palette_Update(void) {}1314void Palette_LateUpdate(void) {}1516void Palette_StaticUpdate(void) {}1718void Palette_Draw(void) {}1920void Palette_Create(void *data)21{22RSDK_THIS(Palette);2324if (!SceneInfo->inEditor && (!self->loadOnce || Palette->count <= 1)) {25char text[32];26RSDK.GetCString(text, &self->paletteFile);27RSDK.LoadPalette(self->bankID, text, self->rowFlags);2829destroyEntity(self);30}31}3233void Palette_StageLoad(void)34{35if (Palette->count < 2)36Palette->count++;37}3839#if GAME_INCLUDE_EDITOR40void Palette_EditorDraw(void)41{42RSDK_THIS(Palette);4344RSDK.SetSpriteAnimation(Palette->aniFrames, 0, &self->animator, true, 9);45RSDK.DrawSprite(&self->animator, NULL, false);46}4748void Palette_EditorLoad(void)49{50Palette->aniFrames = RSDK.LoadSpriteAnimation("Editor/EditorIcons.bin", SCOPE_STAGE);5152RSDK_ACTIVE_VAR(Palette, bankID);53RSDK_ENUM_VAR("Bank 0", PALETTE_BANK_0);54RSDK_ENUM_VAR("Bank 1", PALETTE_BANK_1);55RSDK_ENUM_VAR("Bank 2", PALETTE_BANK_2);56RSDK_ENUM_VAR("Bank 3", PALETTE_BANK_3);57RSDK_ENUM_VAR("Bank 4", PALETTE_BANK_4);58RSDK_ENUM_VAR("Bank 5", PALETTE_BANK_5);59RSDK_ENUM_VAR("Bank 6", PALETTE_BANK_6);60RSDK_ENUM_VAR("Bank 7", PALETTE_BANK_7);61}62#endif6364void Palette_Serialize(void)65{66RSDK_EDITABLE_VAR(Palette, VAR_STRING, paletteFile);67RSDK_EDITABLE_VAR(Palette, VAR_UINT16, rowFlags);68RSDK_EDITABLE_VAR(Palette, VAR_UINT8, bankID);69RSDK_EDITABLE_VAR(Palette, VAR_BOOL, loadOnce);70}71#endif727374