Path: blob/master/SonicMania/Objects/LRZ/LRZ3Setup.c
338 views
// ---------------------------------------------------------------------1// RSDK Project: Sonic Mania2// Object Description: LRZ3Setup Object3// Object Author: Christian Whitehead/Simon Thomley/Hunter Bridges4// Decompiled by: Rubberduckycooly & RMGRich5// ---------------------------------------------------------------------67#include "Game.h"89ObjectLRZ3Setup *LRZ3Setup;1011void LRZ3Setup_Update(void) {}1213void LRZ3Setup_LateUpdate(void) {}1415void LRZ3Setup_StaticUpdate(void) {}1617void LRZ3Setup_Draw(void) {}1819void LRZ3Setup_Create(void *data) {}2021void LRZ3Setup_StageLoad(void)22{23#if MANIA_USE_PLUS24if (SceneInfo->filter & FILTER_ENCORE) {25RSDK.LoadPalette(0, "EncoreLRZ3.act", 0b0000000011111111);26RSDK.CopyPalette(0, 240, 1, 240, 16);27}28#endif2930Animals->animalTypes[0] = ANIMAL_FLICKY;31Animals->animalTypes[1] = ANIMAL_CUCKY;3233if (globals->suppressTitlecard) {34SaveGame_LoadPlayerState();35Zone_StartFadeIn(10, 0x000000);36}3738if ((isMainGameMode() && globals->enableIntro && !CutsceneRules_CheckStageReload()) || !CutsceneRules_CheckStageReload()) {39CREATE_ENTITY(LRZ3Cutscene, NULL, 0, 0);40}4142#if MANIA_USE_PLUS43if (globals->gameMode == MODE_ENCORE && globals->tempFlags) {44if (!CutsceneRules_CheckStageReload()) {45foreach_all(Player, player) { player->position.y += 0x8000000; }46}47}48#endif4950if (isMainGameMode() && CutsceneRules_IsAct2()) {51#if MANIA_USE_PLUS52if (globals->gameMode == MODE_ENCORE) {53if (!globals->tempFlags) {54Zone->stageFinishCallback = LRZ3Outro_StageFinish_EndAct2ST;55}56}57else {58if (!CHECK_CHARACTER_ID(ID_KNUCKLES, 1)) {59Zone->stageFinishCallback = LRZ3Outro_StageFinish_EndAct2ST;60}61else {62LRZ3Setup->cutsceneOutroK = CutsceneSeq_GetEntity(LRZ3OutroK->classID);63if (LRZ3Setup->cutsceneOutroK)64Zone->stageFinishCallback = LRZ3Setup_StageFinish_EndAct2K;65}66}67#else68if (CHECK_CHARACTER_ID(ID_KNUCKLES, 1))69LRZ3Setup->cutsceneOutroK = CutsceneSeq_GetEntity(LRZ3OutroK->classID);7071if (LRZ3Setup->cutsceneOutroK)72Zone->stageFinishCallback = LRZ3Setup_StageFinish_EndAct2K;73#endif74}75}7677void LRZ3Setup_StageFinish_EndAct2K(void) { LRZ3Setup->cutsceneOutroK->active = ACTIVE_NORMAL; }7879#if GAME_INCLUDE_EDITOR80void LRZ3Setup_EditorDraw(void) {}8182void LRZ3Setup_EditorLoad(void) {}83#endif8485void LRZ3Setup_Serialize(void) {}868788