Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/TMZ/TMZ3Setup.c
338 views
1
// ---------------------------------------------------------------------
2
// RSDK Project: Sonic Mania
3
// Object Description: TMZ3Setup Object
4
// Object Author: Christian Whitehead/Simon Thomley/Hunter Bridges
5
// Decompiled by: Rubberduckycooly & RMGRich
6
// ---------------------------------------------------------------------
7
8
#include "Game.h"
9
10
ObjectTMZ3Setup *TMZ3Setup;
11
12
void TMZ3Setup_Update(void) {}
13
14
void TMZ3Setup_LateUpdate(void) {}
15
16
void TMZ3Setup_StaticUpdate(void)
17
{
18
if (!(Zone->timer & 3)) {
19
TMZ3Setup->bannerAniFrame += 32;
20
TMZ3Setup->bannerAniFrame = TMZ3Setup->bannerAniFrame & 0xFF;
21
22
RSDK.DrawAniTiles(TMZ3Setup->aniTiles, 34, TMZ3Setup->bannerAniFrame, 0, 32, 112);
23
}
24
25
if (!(Zone->timer & 1))
26
RSDK.RotatePalette(0, 204, 207, false);
27
28
if (!(Zone->timer & 7))
29
RSDK.RotatePalette(0, 250, 252, true);
30
31
RSDK.SetLimitedFade(0, 1, 2, (RSDK.Sin256(Zone->timer) >> 1) + 128, 192, 197);
32
RSDK.SetLimitedFade(0, 1, 2, (RSDK.Sin256(Zone->timer + 128) >> 1) + 128, 198, 203);
33
}
34
35
void TMZ3Setup_Draw(void) {}
36
37
void TMZ3Setup_Create(void *data) {}
38
39
void TMZ3Setup_StageLoad(void)
40
{
41
TMZ3Setup->aniTiles = RSDK.LoadSpriteSheet("TMZ1/AniTiles.gif", SCOPE_STAGE);
42
43
TMZ3Setup->palDuration = RSDK.Rand(2, 60);
44
TMZ3Setup->palTimer = 192;
45
46
++Zone->objectDrawGroup[0];
47
48
Animals->animalTypes[0] = ANIMAL_TOCKY;
49
Animals->animalTypes[1] = ANIMAL_PICKY;
50
51
if (globals->suppressTitlecard >= true) {
52
SaveGame_LoadPlayerState();
53
Zone_StartFadeIn(10, 0xF0F0F0);
54
}
55
56
RSDK.SetDrawGroupProperties(0, false, TMZ3Setup_DrawHook_ApplyDynTilesPalette);
57
RSDK.SetDrawGroupProperties(1, false, TMZ3Setup_DrawHook_RemoveDynTilesPalette);
58
}
59
60
void TMZ3Setup_DrawHook_ApplyDynTilesPalette(void) { RSDK.SetActivePalette(1, 0, ScreenInfo->size.y); }
61
void TMZ3Setup_DrawHook_RemoveDynTilesPalette(void) { RSDK.SetActivePalette(0, 0, ScreenInfo->size.y); }
62
63
#if GAME_INCLUDE_EDITOR
64
void TMZ3Setup_EditorDraw(void) {}
65
66
void TMZ3Setup_EditorLoad(void) {}
67
#endif
68
69
void TMZ3Setup_Serialize(void) {}
70
71