label FP files

This commit is contained in:
Banjo Kazooie 2023-01-31 17:32:35 -06:00
parent 2f858b790b
commit 96317e7239
29 changed files with 297 additions and 311 deletions

View File

@ -1676,7 +1676,7 @@ segments:
- [0x1052450, c, code_6370] #DONE
- [0x1053060, c, code_6F80] #DONE
- [0x1053140, c, code_7060] #DONE
- [0x1053610, c, code_7530] #DONE
- [0x1053610, c, ch/histup] #DONE
- [0x1053E30, c, code_7D50] #DONE
- [0x1053E90, c, code_7DB0] #DONE
- [0x10540A0, c, code_7FC0] #DONE
@ -1686,7 +1686,7 @@ segments:
- [0x1055C50, c, code_9B70] #DONE
- [0x1055CF0, c, code_9C10] #DONE
- [0x1055E90, c, matchinggame] #DONE
- [0x1056570, c, code_A490] #DONE
- [0x1056570, c, waterctrl] #DONE
- [0x10568C0, .data, ch/toots]
- [0x1056910, .data, ch/ancientone]
- [0x1056970, .data, ch/gobi1]
@ -1709,7 +1709,7 @@ segments:
- [0x1056EE0, .data, code_6370]
- [0x1056F50, .data, code_6F80]
- [0x1056F80, .data, code_7060]
- [0x1056FD0, .data, code_7530]
- [0x1056FD0, .data, ch/histup]
- [0x1057030, .data, code_7DB0]
- [0x1057070, .data, code_7FC0]
- [0x10570D0, .data, code_7FF0]
@ -1729,12 +1729,12 @@ segments:
- [0x1057530, .rodata, code_5570]
- [0x1057580, .rodata, code_6370]
- [0x10575E0, .rodata, code_7060]
- [0x1057600, .rodata, code_7530]
- [0x1057600, .rodata, ch/histup]
- [0x1057630, .rodata, code_7FF0]
- [0x1057690, .rodata, ch/mazectrl]
- [0x10576B0, .rodata, ch/buriedpyramid]
- [0x10576F0, .rodata, matchinggame]
- [0x1057700, .rodata, code_A490]
- [0x1057700, .rodata, waterctrl]
- [0x1057710, .bss, bss_pad]
- [0x1057710, .bss, ch/toots]
- [0x1057710, .bss, ch/gobi1]
@ -1748,7 +1748,7 @@ segments:
- [0x1057710, .bss, code_7FF0]
- [0x1057710, .bss, code_9C10]
- [0x1057710, .bss, matchinggame]
- [0x1057710, .bss, code_A490]
- [0x1057710, .bss, waterctrl]
- name: MMM
dir: MMM
type: code
@ -2029,80 +2029,80 @@ segments:
follows_vram: core2
exclusive_ram_id: overlay
subsegments:
- [0x107E030, c, code_0] #DONE
- [0x107E500, c, code_4D0] #DONE
- [0x107E7C0, c, code_790] #DONE
- [0x107EA70, c, code_A40] #DONE
- [0x107F220, c, code_11F0] #DONE
- [0x107E030, c, ch/scarfsled] #DONE
- [0x107E500, c, ch/racesled] #DONE
- [0x107E7C0, c, ch/snowmanbutton] #DONE
- [0x107EA70, c, ch/xmastree] #DONE
- [0x107F220, c, ch/boggy1] #DONE
- [0x107FA10, c, code_19E0] #DONE
- [0x1080020, c, code_1FF0] #DONE
- [0x1080380, c, code_2350] #DONE
- [0x1081E30, c, code_3E00] #DONE
- [0x1082430, c, code_4400] #DONE
- [0x1082600, c, code_45D0] #DONE
- [0x10827A0, c, code_4770] #DONE
- [0x1083CF0, c, code_5CC0]
- [0x1084B10, c, code_6AE0] #DONE
- [0x10859B0, c, code_7980] #DONE
- [0x1086360, c, code_8330] #DONE
- [0x1086810, c, code_87E0] #DONE
- [0x1086D30, c, code_8D00] #DONE
- [0x1086E50, c, code_8E20] #DONE
- [0x1080380, c, ch/boggy2] #DONE
- [0x1081E30, c, ch/bearcub] #DONE
- [0x1082430, c, sirslushgame] #DONE
- [0x1082600, c, snowmanbuttongame] #DONE
- [0x10827A0, c, racectrl] #DONE
- [0x1083CF0, c, ch/twinkly]
- [0x1084B10, c, ch/twinklybox] #DONE
- [0x10859B0, c, ch/twinklymuncher] #DONE
- [0x1086360, c, ch/xmastreeswitch] #DONE
- [0x1086810, c, ch/xmastreestar] #DONE
- [0x1086D30, c, ch/present] #DONE
- [0x1086E50, c, ch/wozza] #DONE
- [0x1087B40, c, ch/wozzasjig] #DONE
- [0x1087ED0, c, code_9EA0] #DONE
- [0x1087ED0, c, ch/boggy3] #DONE
- [0x10881F0, c, code_A1C0] #DONE
- [0x1088270, c, code_A240] #DONE
- [0x1088530, c, code_A500] #DONE
- [0x10888B0, c, code_A880] #DONE
- [0x1088270, c, ch/cavewozza] #DONE
- [0x1088530, c, ch/xmastreeice] #DONE
- [0x10888B0, c, ch/xmastreeeggtoll] #DONE
- [0x1088C00, c, code_ABD0] #DONE
- [0x1089500, c, code_B4D0] #DONE
- [0x1089630, .data, code_0]
- [0x1089680, .data, code_4D0]
- [0x10896D0, .data, code_790]
- [0x1089790, .data, code_A40]
- [0x10897C0, .data, code_11F0]
- [0x1089630, .data, ch/scarfsled]
- [0x1089680, .data, ch/racesled]
- [0x10896D0, .data, ch/snowmanbutton]
- [0x1089790, .data, ch/xmastree]
- [0x10897C0, .data, ch/boggy1]
- [0x1089840, .data, code_19E0]
- [0x1089880, .data, code_1FF0]
- [0x10898C0, .data, code_2350]
- [0x1089A30, .data, code_3E00]
- [0x1089AF0, .data, code_4400]
- [0x1089B00, .data, code_45D0]
- [0x1089B10, .data, code_4770]
- [0x1089B90, .data, code_5CC0]
- [0x1089D00, .data, code_6AE0]
- [0x1089FD0, .data, code_7980]
- [0x108A040, .data, code_8330]
- [0x108A0B0, .data, code_87E0]
- [0x108A0E0, .data, code_8D00]
- [0x108A160, .data, code_8E20]
- [0x10898C0, .data, ch/boggy2]
- [0x1089A30, .data, ch/bearcub]
- [0x1089AF0, .data, sirslushgame]
- [0x1089B00, .data, snowmanbuttongame]
- [0x1089B10, .data, racectrl]
- [0x1089B90, .data, ch/twinkly]
- [0x1089D00, .data, ch/twinklybox]
- [0x1089FD0, .data, ch/twinklymuncher]
- [0x108A040, .data, ch/xmastreeswitch]
- [0x108A0B0, .data, ch/xmastreestar]
- [0x108A0E0, .data, ch/present]
- [0x108A160, .data, ch/wozza]
- [0x108A200, .data, ch/wozzasjig]
- [0x108A2C0, .data, code_9EA0]
- [0x108A2C0, .data, ch/boggy3]
- [0x108A300, .data, code_A1C0]
- [0x108A330, .data, code_A240]
- [0x108A370, .data, code_A500]
- [0x108A480, .data, code_A880]
- [0x108A330, .data, ch/cavewozza]
- [0x108A370, .data, ch/xmastreeice]
- [0x108A480, .data, ch/xmastreeeggtoll]
- [0x108A520, .data, code_ABD0]
- [0x108A7C0, .rodata, code_0]
- [0x108A7D0, .rodata, code_A40]
- [0x108A830, .rodata, code_11F0]
- [0x108A7C0, .rodata, ch/scarfsled]
- [0x108A7D0, .rodata, ch/xmastree]
- [0x108A830, .rodata, ch/boggy1]
- [0x108A850, .rodata, code_19E0]
- [0x108A860, .rodata, code_1FF0]
- [0x108A870, .rodata, code_2350]
- [0x108A950, .rodata, code_3E00]
- [0x108A970, .rodata, code_4770]
- [0x108A9C0, .rodata, code_5CC0]
- [0x108AA40, .rodata, code_6AE0]
- [0x108AA80, .rodata, code_7980]
- [0x108AAB0, .rodata, code_87E0]
- [0x108AAC0, .rodata, code_8E20]
- [0x108A870, .rodata, ch/boggy2]
- [0x108A950, .rodata, ch/bearcub]
- [0x108A970, .rodata, racectrl]
- [0x108A9C0, .rodata, ch/twinkly]
- [0x108AA40, .rodata, ch/twinklybox]
- [0x108AA80, .rodata, ch/twinklymuncher]
- [0x108AAB0, .rodata, ch/xmastreestar]
- [0x108AAC0, .rodata, ch/wozza]
- [0x108AB10, .rodata, ch/wozzasjig]
- [0x108AB30, .rodata, code_A500]
- [0x108AB40, .rodata, code_A880]
- [0x108AB30, .rodata, ch/xmastreeice]
- [0x108AB40, .rodata, ch/xmastreeeggtoll]
- [0x108AB50, .bss, bss_pad]
- [0x108AB50, .bss, code_2350]
- [0x108AB50, .bss, code_4400]
- [0x108AB50, .bss, code_45D0]
- [0x108AB50, .bss, code_4770]
- [0x108AB50, .bss, ch/boggy2]
- [0x108AB50, .bss, sirslushgame]
- [0x108AB50, .bss, snowmanbuttongame]
- [0x108AB50, .bss, racectrl]
- [0x108AB50, .bss, bss_end_pad]
- name: SM
dir: SM

View File

@ -3802,6 +3802,7 @@ enum marker_e{
MARKER_95_CHIMPY_STUMP = 0x95,
MARKER_96_RIPPER,
MARKER_97_BOGGY_2,
MARKER_99_TEEHEE = 0x99,

View File

@ -45,40 +45,11 @@ ActorAnimationInfo D_80391C80[] = {
{0x150, 0.6f}
};
ActorInfo D_80391CE8 = { 0x97, ACTOR_C8_BOGGY_2, ASSET_38A_MODEL_BOGGY_1,
ActorInfo D_80391CE8 = { MARKER_97_BOGGY_2, ACTOR_C8_BOGGY_2, ASSET_38A_MODEL_BOGGY_1,
0x1, D_80391C80,
FP_func_80388F4C, func_803896FC, func_80388740,
0, 0, 1.4f, 0
};
f32 D_80391D0C[3] = {1842.0f, 658.0f, 5758.0f};
f32 D_80391D18[3] = {1463.0f, 635.0f, 5193.0f};
s32 D_80391D24[3] = {0xc8, 0xc8, 0xe6};
struct31s D_80391D30 = {
{0.2f, 0.4f},
{1.2f, 1.6f},
{0.0f, 0.001f},
{0.3f, 0.45f},
0.0f, 0.01f
};
struct42s D_80391D58 = {
{{-10.0f, 10.0f, -10.0f}, {10.0f, 240.0f, 10.0f}},
{{0.0f, 0.0f, 0.0f}, {0.0f, 20.0f, 0.0f}}
};
f32 D_80391D88[3] = { 1592.0f, 673.0f, 5895.0f};
f32 FP_D_80391D94[3] = {0.0f, 0.0f, 0.0f};
s32 D_80391DA0[3] = {0x5F5, 0x292, 0x1539};
s32 D_80391DAC[3] = {-0x11F8, 0x637, -0x1816};
Struct_FP_2350 D_80391DB8[7]={
{0x361, 0x35D},
{0x365, 0x35D},
{0x362, 0x360},
{0x366, 0x35D},
{0x37B, 0x35D},
{0x363, 0x35F},
{0x364, 0x35E}
};
/* .bss */
s32 D_80392F20[3];
@ -117,6 +88,8 @@ Actor *func_80388740(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
}
void FP_func_803888E4(Actor *this){
static f32 D_80391D0C[3] = {1842.0f, 658.0f, 5758.0f};
static f32 D_80391D18[3] = {1463.0f, 635.0f, 5193.0f};
func_80328B8C(this, 0xC, 0.0001f, 1);
if(!jiggyscore_isSpawned(JIGGY_30_FP_BOGGY_2)){
if(mapSpecificFlags_get(5)){
@ -255,6 +228,18 @@ void func_80388D70(ActorMarker *caller, enum asset_e text_id, s32 arg2){
}
void func_80388EE8(ParticleEmitter *pCtrl){
static s32 D_80391D24[3] = {0xc8, 0xc8, 0xe6};
static struct31s D_80391D30 = {
{0.2f, 0.4f},
{1.2f, 1.6f},
{0.0f, 0.001f},
{0.3f, 0.45f},
0.0f, 0.01f
};
static struct42s D_80391D58 = {
{{-10.0f, 10.0f, -10.0f}, {10.0f, 240.0f, 10.0f}}, /*position*/
{{0.0f, 0.0f, 0.0f}, {0.0f, 20.0f, 0.0f}} /*velocity*/
};
particleEmitter_setSprite(pCtrl, ASSET_700_SPRITE_DUST);
particleEmitter_setRGB(pCtrl, D_80391D24);
particleEmitter_setPositionAndVelocityRanges(pCtrl, &D_80391D58);
@ -265,6 +250,8 @@ void func_80388EE8(ParticleEmitter *pCtrl){
void FP_func_80388F4C(Actor *this){}
void func_80388F54(ActorMarker *marker){
static f32 D_80391D88[3] = { 1592.0f, 673.0f, 5895.0f};
static f32 FP_D_80391D94[3] = {0.0f, 0.0f, 0.0f};
Actor *other = func_80328230(ACTOR_C8_BOGGY_2, D_80391D88, FP_D_80391D94);
func_80343DEC(other);
}
@ -374,6 +361,17 @@ void func_803893E4(Actor *this, f32 arg1, u8 arg2){
}
void func_803895E0(void){
static s32 D_80391DA0[3] = {0x5F5, 0x292, 0x1539};
static s32 D_80391DAC[3] = {-0x11F8, 0x637, -0x1816};
static Struct_FP_2350 D_80391DB8[7]={
{0x361, 0x35D},
{0x365, 0x35D},
{0x362, 0x360},
{0x366, 0x35D},
{0x37B, 0x35D},
{0x363, 0x35F},
{0x364, 0x35E}
};
int i;
NodeProp *s0;
f32 sp64[3];

View File

@ -2,26 +2,26 @@
#include "functions.h"
#include "variables.h"
Actor *func_803868C0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
void func_80386AA4(Actor *this);
Actor *chRaceSled_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
void chRaceSled_update(Actor *this);
/* .data */
ActorAnimationInfo FP_D_80391A40 []= {
ActorAnimationInfo chRaceSledAnimations []= {
{ ASSET_1A1_ANIM_SLED, 1.0f},
{ ASSET_1A1_ANIM_SLED, 1.0f},
{ ASSET_1A1_ANIM_SLED, 1.0f},
{ ASSET_1A1_ANIM_SLED, 1.0f}
};
ActorInfo FP_D_80391A60 = {
ActorInfo chRaceSled = {
MARKER_3C_RACE_SLED, ACTOR_182_RACE_SLED, ASSET_352_MODEL_SLED,
0x0, FP_D_80391A40,
func_80386AA4, NULL, func_803868C0,
0x0, chRaceSledAnimations,
chRaceSled_update, NULL, chRaceSled_draw,
1000, 0, 0.0f, 0
};
/* .code */
Actor *func_803868C0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
Actor *chRaceSled_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
Actor *this = marker_getActor(marker);
if(this->unk10_12 == FALSE){
return func_80325888(marker, gfx, mtx, vtx);
@ -29,7 +29,7 @@ Actor *func_803868C0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
return this;
}
void FP_func_80386920(Actor *this, s32 next_state){
void __chRaceSled_setState(Actor *this, s32 next_state){
if(this->state != 1 || next_state != 1){
func_80328A84(this, next_state);
switch(next_state){
@ -49,7 +49,7 @@ void FP_func_80386920(Actor *this, s32 next_state){
}
}
void func_803869FC(ActorMarker *this_marker, ActorMarker *other_marker){
void __chRaceSled_touch(ActorMarker *this_marker, ActorMarker *other_marker){
Actor *this = marker_getActor(this_marker);
f32 plyr_pos[3];
@ -60,33 +60,33 @@ void func_803869FC(ActorMarker *this_marker, ActorMarker *other_marker){
&& player_getTransformation() == TRANSFORM_4_WALRUS
&& func_8028F68C(BS_INTR_27_WALRUS_SLED, this->marker)
){
FP_func_80386920(this, 3); //start_race
__chRaceSled_setState(this, 3); //start_race
}
}
}
void func_80386AA4(Actor *this){
void chRaceSled_update(Actor *this){
s32 sp24;
if(!this->initialized){
this->initialized = TRUE;
marker_setCollisionScripts(this->marker, func_803869FC, NULL, NULL);
FP_func_80386920(this, 1);
marker_setCollisionScripts(this->marker, __chRaceSled_touch, NULL, NULL);
__chRaceSled_setState(this, 1);
}
sp24 = mapSpecificFlags_get(4);
if(sp24 == 0){
FP_func_80386920(this, 1);
__chRaceSled_setState(this, 1);
}
switch (this->state){
case 1://L80386B38
if(sp24){
FP_func_80386920(this, 2);
__chRaceSled_setState(this, 2);
}
break;
case 3://L80386B50
if(func_8028ECAC() != BSGROUP_C_WALRUS_SLED){
FP_func_80386920(this, 2);
__chRaceSled_setState(this, 2);
}
break;
}

View File

@ -2,25 +2,25 @@
#include "functions.h"
#include "variables.h"
void func_803867BC(Actor *this);
void chScarfSled_update(Actor *this);
/* .data */
ActorAnimationInfo FP_D_803919F0[] ={
ActorAnimationInfo chScarfSledAnimations[] ={
{ASSET_1A1_ANIM_SLED, 1.0f},
{ASSET_1A1_ANIM_SLED, 1.0f},
{ASSET_1A1_ANIM_SLED, 1.0f},
{ASSET_1A1_ANIM_SLED, 1.0f}
};
ActorInfo FP_D_80391A10 = {
ActorInfo chScarfSled = {
MARKER_3B_SCARF_SLED, ACTOR_181_SCARF_SLED, ASSET_352_MODEL_SLED,
0, FP_D_803919F0,
NULL, func_803867BC, func_80325888,
0, chScarfSledAnimations,
NULL, chScarfSled_update, func_80325888,
1000, 0, 0.0f, 0
};
/* .code */
void FP_func_803863F0(Actor *this, s32 next_state){
void __chScarfSled_setState(Actor *this, s32 next_state){
func_80328A84(this, next_state);
if(next_state == 2){
@ -40,17 +40,17 @@ void FP_func_803863F0(Actor *this, s32 next_state){
}
}
void func_803864F4(ActorMarker *this_marker, ActorMarker *other_marker){
void __chScarfSled_touch(ActorMarker *this_marker, ActorMarker *other_marker){
Actor * this = marker_getActor(this_marker);
if(this->state != 1) return;
if(player_getTransformation() != TRANSFORM_1_BANJO) return;
if(func_8028F68C(BS_INTR_27_BANJO_SLED, this->marker))
FP_func_803863F0(this, 2);
__chScarfSled_setState(this, 2);
}
void func_8038655C(Actor *this){
void __chScarfSled_func_8038655C(Actor *this){
int tmp_bool;
int tmp;
tmp_bool = (mlAbsF(this->position_y - this->velocity_y) < 100.0f);
@ -71,7 +71,7 @@ void func_8038655C(Actor *this){
}
}
void func_80386630(Actor *this){
void __chScarfSled_func_80386630(Actor *this){
f32 sp7C[3];
f32 sp70[3];
f32 sp64[3];
@ -79,7 +79,7 @@ void func_80386630(Actor *this){
func_80343DEC(this);
mapSpecificFlags_set(9, 1);
func_8038655C(this);
__chScarfSled_func_8038655C(this);
if(this->unk138_20){
this->yaw = 0.0f;
@ -121,14 +121,14 @@ void func_80386630(Actor *this){
}//L803867AC
}
void func_803867BC(Actor *this){
void chScarfSled_update(Actor *this){
if(!this->initialized){
this->initialized = TRUE;
marker_setCollisionScripts(this->marker, func_803864F4, NULL, NULL);
marker_setCollisionScripts(this->marker, __chScarfSled_touch, NULL, NULL);
this->marker->propPtr->unk8_3 = TRUE;
this->unk10_12 = 0;
ml_vec3f_clear(this->velocity);
FP_func_803863F0(this, 1);
__chScarfSled_setState(this, 1);
}
if(!this->unk16C_4){
@ -143,6 +143,6 @@ void func_803867BC(Actor *this){
this->velocity_y = func_80309724(this->position);
this->velocity_z = this->position_z;
if(this->state == 2){
func_80386630(this);
__chScarfSled_func_80386630(this);
}
}

View File

@ -54,7 +54,7 @@ void FP_func_80386BEC(Actor *this){
actor_collisionOff(this);
func_8025A6EC(COMUSIC_2B_DING_B, 28000);
FUNC_8030E624(SFX_90_SWITCH_PRESS, 1.0f, 32000);
func_8038AB40();
fp_snowmanButtonGame_decRemaining();
particleEmitter_setRGB(pCtrl, D_80391B44);
particleEmitter_setSprite(pCtrl, ASSET_700_SPRITE_DUST);
particleEmitter_setPosition(pCtrl, plyr_pos);
@ -84,7 +84,7 @@ void FP_func_80386CF8(Actor *this){
if(!this->unk16C_4){
this->unk16C_4 = TRUE;
if(this->state == 3){
func_8038AB40();
fp_snowmanButtonGame_decRemaining();
}
}

View File

@ -23,97 +23,6 @@ ActorInfo D_803920E8 = { 0x204, 0x336, 0x442,
0, 0, 0.0f, 0
};
struct31s D_8039210C = {
{ 0.4f, 0.8f },
{-1.0f, -1.0f },
{ 0.0f, 0.02f},
{ 1.8f, 2.2f },
0.0f,
0.7f
};
struct43s D_80392134 = {
{{-200.0f, 200.0f, -200.0f}, {200.0f, 400.0f, 200.0f}},
{{ 0.0f, -800.0f, 0.0f}, { 0.0f, -800.0f, 0.0f}},
{{-100.0f, 0.0f, -100.0f}, {100.0f, 100.0f, 100.0f}}
};
struct31s D_8039217C = {
{0.8f, 1.2f },
{1.4f, 2.0f },
{0.0f, 0.01f},
{1.2f, 1.8f },
0.0f,
0.01f
};
s32 D_803921A4[3] = { 0xDC, 0xDC, 0xE6};
struct43s D_803921B0 = {
{{-200.0f, 0.0f, -200.0f}, {200.0f, 200.0f, 200.0f}},
{{ 0.0f, -10.0f, 0.0f}, { 0.0f, -10.0f, 0.0f}},
{{-50.0f, 0.0f, -50.0f}, {50.0f, 200.0f, 50.0f}}
};
struct31s D_803921F8 = {
{ 0.2f, 0.3f },
{-1.0f, -1.0f },
{ 0.0f, 0.02f},
{ 2.0f, 2.5f },
0.0f, 0.3f
};
struct43s D_80392220 = {
{{-300.0f, 400.0f, -300.0f}, {300.0f, 800.0f, 300.0f}},
{{ 0.0f, -800.0f, 0.0f}, { 0.0f, -800.0f, 0.0f}},
{{-80.0f, 80.0f, -80.0f}, {80.0f, 80.0f, 80.0f}}
};
struct31s D_80392268 ={
{ 0.4f, 0.6f },
{-1.0f, -1.0f },
{ 0.0f, 0.02f},
{ 2.0f, 2.5f },
0.0f,
0.3f
};
struct43s D_80392290 = {
{{-300.0f, 400.0f, -300.0f}, {300.0f, 800.0f, 300.0f}},
{{ 0.0f, -800.0f, 0.0f}, { 0.0f, -800.0f, 0.0f}},
{{-80.0f, 80.0f, -80.0f}, {80.0f, 80.0f, 80.0f}}
};
struct31s D_803922D8 = {
{0.5f, 0.7f },
{1.4f, 1.7f },
{0.0f, 0.01f},
{0.6f, 0.9f },
0.0f, 0.01f
};
s32 D_80392300[3] = { 0xDC, 0xDC, 0xE6};
struct43s D_8039230C = {
{{-100.0f, 0.0f, -100.0f}, {100.0f, 100.0f, 100.0f}},
{{0.0f, -10.0f, 0.0f}, {0.0f, -10.0f, 0.0f}},
{{-80.0f, 0.0f, -80.0f}, {50.0f, 200.0f, 80.0f}}
};
f32 D_80392354[3] = {-4165.0f, 73.0f, 4483.0f};
f32 D_80392360[3] = {-4292.0f, 73.0f, 5054.0f};
enum actor_e D_8039236C[4] = {
ACTOR_332_TWINKLY_BLUE,
ACTOR_333_TWINKLY_GREEN,
ACTOR_334_TWINKLY_ORANGE,
ACTOR_335_TWINKLY_RED,
};
f32 D_8039237C[3] = {-3940.0f, 69.0f, 3570.0f};
/* .code */
Actor *FP_func_8038CED0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
Actor *this = marker_getActor(marker);
@ -125,6 +34,19 @@ Actor *FP_func_8038CED0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
}
void func_8038CF54(f32 position[3], s32 count, enum asset_e model_id){
static struct31s D_8039210C = {
{ 0.4f, 0.8f },
{-1.0f, -1.0f },
{ 0.0f, 0.02f},
{ 1.8f, 2.2f },
0.0f,
0.7f
};
static struct43s D_80392134 = {
{{-200.0f, 200.0f, -200.0f}, {200.0f, 400.0f, 200.0f}},
{{ 0.0f, -800.0f, 0.0f}, { 0.0f, -800.0f, 0.0f}},
{{-100.0f, 0.0f, -100.0f}, {100.0f, 100.0f, 100.0f}}
};
ParticleEmitter *pCtrl;
pCtrl = partEmitMgr_newEmitter(count);
@ -142,6 +64,21 @@ void func_8038CF54(f32 position[3], s32 count, enum asset_e model_id){
}
void func_8038D01C(f32 position[3], s32 count, enum asset_e sprite_id){
static struct31s D_8039217C = {
{0.8f, 1.2f },
{1.4f, 2.0f },
{0.0f, 0.01f},
{1.2f, 1.8f },
0.0f,
0.01f
};
static s32 D_803921A4[3] = { 0xDC, 0xDC, 0xE6};
static struct43s D_803921B0 = {
{{-200.0f, 0.0f, -200.0f}, {200.0f, 200.0f, 200.0f}},
{{ 0.0f, -10.0f, 0.0f}, { 0.0f, -10.0f, 0.0f}},
{{-50.0f, 0.0f, -50.0f}, {50.0f, 200.0f, 50.0f}}
};
ParticleEmitter *pCtrl;
pCtrl = partEmitMgr_newEmitter(count);
@ -154,6 +91,19 @@ void func_8038D01C(f32 position[3], s32 count, enum asset_e sprite_id){
}
void func_8038D0A8(f32 position[3], s32 count, enum asset_e model_id){
static struct31s D_803921F8 = {
{ 0.2f, 0.3f },
{-1.0f, -1.0f },
{ 0.0f, 0.02f},
{ 2.0f, 2.5f },
0.0f, 0.3f
};
static struct43s D_80392220 = {
{{-300.0f, 400.0f, -300.0f}, {300.0f, 800.0f, 300.0f}},
{{ 0.0f, -800.0f, 0.0f}, { 0.0f, -800.0f, 0.0f}},
{{-80.0f, 80.0f, -80.0f}, {80.0f, 80.0f, 80.0f}}
};
ParticleEmitter *pCtrl;
pCtrl = partEmitMgr_newEmitter(count);
@ -171,6 +121,19 @@ void func_8038D0A8(f32 position[3], s32 count, enum asset_e model_id){
}
void func_8038D170(f32 position[3], s32 count, enum asset_e sprite_id){
static struct31s D_80392268 ={
{ 0.4f, 0.6f },
{-1.0f, -1.0f },
{ 0.0f, 0.02f},
{ 2.0f, 2.5f },
0.0f,
0.3f
};
static struct43s D_80392290 = {
{{-300.0f, 400.0f, -300.0f}, {300.0f, 800.0f, 300.0f}},
{{ 0.0f, -800.0f, 0.0f}, { 0.0f, -800.0f, 0.0f}},
{{-80.0f, 80.0f, -80.0f}, {80.0f, 80.0f, 80.0f}}
};
ParticleEmitter *pCtrl;
pCtrl = partEmitMgr_newEmitter(count);
@ -184,6 +147,19 @@ void func_8038D170(f32 position[3], s32 count, enum asset_e sprite_id){
}
void func_8038D208(f32 position[3], s32 count, enum asset_e sprite_id){
static struct31s D_803922D8 = {
{0.5f, 0.7f },
{1.4f, 1.7f },
{0.0f, 0.01f},
{0.6f, 0.9f },
0.0f, 0.01f
};
static s32 D_80392300[3] = { 0xDC, 0xDC, 0xE6};
static struct43s D_8039230C = {
{{-100.0f, 0.0f, -100.0f}, {100.0f, 100.0f, 100.0f}},
{{0.0f, -10.0f, 0.0f}, {0.0f, -10.0f, 0.0f}},
{{-80.0f, 0.0f, -80.0f}, {50.0f, 200.0f, 80.0f}}
};
ParticleEmitter *pCtrl;
pCtrl = partEmitMgr_newEmitter(count);
@ -227,6 +203,8 @@ void func_8038D3D8(void){
}
void func_8038D41C(ActorMarker *marker){
static f32 D_80392354[3] = {-4165.0f, 73.0f, 4483.0f};
static f32 D_80392360[3] = {-4292.0f, 73.0f, 5054.0f};
s32 pad[2];
ActorMarker *_marker = reinterpret_cast(ActorMarker *, marker);
Actor *actor;
@ -239,6 +217,13 @@ void func_8038D41C(ActorMarker *marker){
}
void func_8038D474(ActorMarker *marker){
static enum actor_e D_8039236C[4] = {
ACTOR_332_TWINKLY_BLUE,
ACTOR_333_TWINKLY_GREEN,
ACTOR_334_TWINKLY_ORANGE,
ACTOR_335_TWINKLY_RED,
};
Actor *actor = marker_getActor(reinterpret_cast(ActorMarker*, marker));
Actor *child;
s32 pad;
@ -266,6 +251,8 @@ void func_8038D51C(ActorMarker *marker){
}
void func_8038D5C8(ActorMarker *this_marker, ActorMarker *other_marker){
static f32 D_8039237C[3] = {-3940.0f, 69.0f, 3570.0f};
Actor *this = marker_getActor(this_marker);
if(this->state == 1 || this->state == 2){

View File

@ -2,28 +2,27 @@
#include "functions.h"
#include "variables.h"
Actor *FP_func_80386E30(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
Actor *chXmasTree_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
void chXmasTree_update(Actor *this);
/* .data */
ActorInfo D_80391B50 = {
ActorInfo chXmasTree = {
MARKER_BA_XMAS_TREE, ACTOR_15F_XMAS_TREE, ASSET_488_MODEL_XMAS_TREE,
0x1, NULL,
chXmasTree_update, func_80326224, FP_func_80386E30,
chXmasTree_update, func_80326224, chXmasTree_draw,
0, 0, 0.0f, 0
};
s32 chXmasTree_switch_spawn_position[3] = {-0x1220, 0x6A, 0x1945};
/* .code */
Actor *FP_func_80386E30(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
Actor *chXmasTree_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
Actor *this = marker_getActor(marker);
func_8033A45C(5, this->unk38_31);
func_8033A45C(6, func_8031FF1C(0x13) && !func_8033A0F0(5));
return func_80325888(marker, gfx, mtx, vtx);
}
void func_80386EAC(Actor *this){
void __chXmasTree_free(Actor *this){
u8 tmp_a0;
item_set(ITEM_6_HOURGLASS, FALSE);
@ -34,29 +33,30 @@ void func_80386EAC(Actor *this){
}
}
void FP_func_80386EF4(Actor *this, int arg1){
void __chXmasTree_80386EF4(Actor *this, int arg1){
this->unk38_31 = arg1;
mapSpecificFlags_set(0, this->unk38_31);
}
void func_80386F3C(void){
void __chXmasTree_80386F3C(void){
levelSpecificFlags_set(0x29, TRUE);
func_803228D8();
func_803204E4(0xe, 1);
func_802E4078(MAP_53_FP_CHRISTMAS_TREE, 1, 0);
}
void func_80386F84(Actor * this){
void __chXmasTree_80386F84(Actor * this){
func_80328A84(this, 2);
FP_func_80386EF4(this, 0);
__chXmasTree_80386EF4(this, 0);
}
void func_80386FB4(void){
void __chXmasTree_spawnSwitch(void){
static s32 chXmasTree_switch_spawn_position[3] = {-0x1220, 0x6A, 0x1945};
func_8032811C(ACTOR_338_XMAS_TREE_SWITCH, chXmasTree_switch_spawn_position, 350);
}
void FP_func_80386FE0(void *marker){
void __chXmasTree_spawnStar(void *marker){
Actor *this = marker_getActor(reinterpret_cast(ActorMarker *, marker));
Actor *child = spawn_child_actor(0x339, &this);
s32 pad;
@ -65,22 +65,22 @@ void FP_func_80386FE0(void *marker){
child->position_z += 25.0f;
}
void func_80387038(Actor *this){
void __chXmasTree_80387038(Actor *this){
if(func_8030E3FC(this->unk44_31))
func_8030E394(this->unk44_31);
func_8030DBB4(this->unk44_31, randf2(0.9f, 1.1f));
func_8030E2C4(this->unk44_31);
}
void func_8038709C(Actor *this){
void __chXmasTree_8038709C(Actor *this){
if(this->state == 5){
if(!mapSpecificFlags_get(0))
func_80387038(this);
__chXmasTree_80387038(this);
return;
}
if(mapSpecificFlags_get(0) && !func_8030E3FC(this->unk44_31))
func_80387038(this);
__chXmasTree_80387038(this);
}
void chXmasTree_update(Actor *this){
@ -91,32 +91,32 @@ void chXmasTree_update(Actor *this){
this->unk16C_4 = TRUE;
this->marker->propPtr->unk8_3 = TRUE;
this->marker->collidable = FALSE;
marker_setFreeMethod(this->marker, func_80386EAC);
marker_setFreeMethod(this->marker, __chXmasTree_free);
if(this->unk44_31 == 0){
this->unk44_31 = func_8030D90C();
sfxsource_setSfxId(this->unk44_31, SFX_415_UNKNOWN);
func_8030DD14(this->unk44_31, 3);
sfxsource_setSampleRate(this->unk44_31, 28000);
}
__spawnQueue_add_0(func_80386FB4);
__spawnQueue_add_1((GenMethod_1)FP_func_80386FE0, reinterpret_cast(s32, this->marker));
__spawnQueue_add_0(__chXmasTree_spawnSwitch);
__spawnQueue_add_1((GenMethod_1)__chXmasTree_spawnStar, reinterpret_cast(s32, this->marker));
if(func_8031FF1C(0x13)){
func_80386F84(this);
__chXmasTree_80386F84(this);
mapSpecificFlags_set(2, FALSE);
}
}
this->depth_mode = 1;
if(jiggyscore_isCollected(JIGGY_2F_FP_XMAS_TREE) || levelSpecificFlags_get(0x29)){
FP_func_80386EF4(this, 1);
__chXmasTree_80386EF4(this, 1);
return;
}
switch(this->state){
case 1: // L80387268
FP_func_80386EF4(this, 0);
__chXmasTree_80386EF4(this, 0);
if(func_8031FF1C(0x13)){
func_80386F84(this);
__chXmasTree_80386F84(this);
}
break;
@ -133,15 +133,15 @@ void chXmasTree_update(Actor *this){
case 3: // L803872F0
if(0.0 <= this->unk60){
if( 1.8 < this->unk60){
FP_func_80386EF4(this, 0);
__chXmasTree_80386EF4(this, 0);
}
else if(this->unk60 < 0.2){//L80387340
FP_func_80386EF4(this, 1);
__chXmasTree_80386EF4(this, 1);
}
else{
if(randf() < 0.2){
FP_func_80386EF4(this, this->unk38_31 ^ 1);
func_8038709C(this);
__chXmasTree_80386EF4(this, this->unk38_31 ^ 1);
__chXmasTree_8038709C(this);
}
}//L803873AC
this->unk60 -= sp2C;
@ -149,7 +149,7 @@ void chXmasTree_update(Actor *this){
else{//L803873BC
if(func_802BB270()){
func_80328A84(this, 4);
FP_func_80386EF4(this, 1);
__chXmasTree_80386EF4(this, 1);
item_set(ITEM_0_HOURGLASS_TIMER, 3600 - 1);
item_set(ITEM_6_HOURGLASS, TRUE);
@ -160,7 +160,7 @@ void chXmasTree_update(Actor *this){
case 4: // L80387400
if(mapSpecificFlags_get(3)){
func_80328A84(this, 6);
FP_func_80386EF4(this, 1);
__chXmasTree_80386EF4(this, 1);
item_set(ITEM_6_HOURGLASS, FALSE);
tmp_a0 = this->unk44_31;
if(tmp_a0){
@ -168,7 +168,7 @@ void chXmasTree_update(Actor *this){
this->unk44_31 = 0;
}
func_80324E38(0.0f, 3);
timedFunc_set_0(0.5f, func_80386F3C);
timedFunc_set_0(0.5f, __chXmasTree_80386F3C);
}
else{//L80387470
if(item_empty(ITEM_6_HOURGLASS)){
@ -189,21 +189,21 @@ void chXmasTree_update(Actor *this){
case 5: // L803874EC
if(0.0 <= this->unk60){
if( 1.8 < this->unk60){
FP_func_80386EF4(this, 1);
__chXmasTree_80386EF4(this, 1);
}
else if(this->unk60 < 0.2){
FP_func_80386EF4(this, 0);
__chXmasTree_80386EF4(this, 0);
}
else{
if(randf() < 0.2){
FP_func_80386EF4(this, this->unk38_31 ^ 1);
func_8038709C(this);
__chXmasTree_80386EF4(this, this->unk38_31 ^ 1);
__chXmasTree_8038709C(this);
}
}
this->unk60 -= sp2C;
}
else{
func_80386F84(this);
__chXmasTree_80386F84(this);
}
break;
}

View File

@ -7,10 +7,10 @@
extern ActorInfo D_80367FE0;
extern ActorInfo FP_D_80391A10;
extern ActorInfo FP_D_80391A60;
extern ActorInfo chScarfSled;
extern ActorInfo chRaceSled;
extern ActorInfo FP_D_80391AB0;
extern ActorInfo D_80391B50;
extern ActorInfo chXmasTree;
extern ActorInfo D_80391BB0;
extern ActorInfo D_80391C18;
extern ActorInfo D_80391C58;
@ -168,14 +168,14 @@ void FP_func_80391324(void)
spawnableActorList_add(&D_80391FF4, actor_new, 0X2100C);
spawnableActorList_add(&D_803920E8, actor_new, 0X408);
spawnableActorList_add(&D_803923D0, actor_new, 0X100006C);
spawnableActorList_add(&D_80391B50, actor_new, 0X20400);
spawnableActorList_add(&chXmasTree, actor_new, 0X20400);
spawnableActorList_add(&D_80392420, actor_new, 4);
spawnableActorList_add(&D_80392470, actor_new, 0X444);
spawnableActorList_add(&D_803924B0, actor_new, 8);
spawnableActorList_add(&D_803924D4, actor_new, 8);
spawnableActorList_add(&D_803924F8, actor_new, 8);
spawnableActorList_add(&FP_D_80391A10, actor_new, 0);
spawnableActorList_add(&FP_D_80391A60, actor_new, 0X20);
spawnableActorList_add(&chScarfSled, actor_new, 0);
spawnableActorList_add(&chRaceSled, actor_new, 0X20);
spawnableActorList_add(&D_80392588, actor_new, 0X80108);
spawnableActorList_add(&D_80392628, actor_new, 0X44);
spawnableActorList_add(&D_80392690, actor_new, 0XA8);

View File

@ -6,21 +6,21 @@
f32 D_80391EB0[3] = {-625.0f, 8840.0f, -111.0f};
/* .bss */
struct {
u8 unk0;
s32 unk4;
s32 unk8;
u8 state;
s32 remaining;
s32 total;
s32 unkC;
f32 spawn_pos[3];
u8 unk1C;
} D_80392F30;
/* .code */
void func_8038A7F0(void){
void fp_sirslushgame_init(void){
if( map_get() != MAP_27_FP_FREEZEEZY_PEAK
|| jiggyscore_isCollected(JIGGY_31_FP_SIR_SLUSH)
|| jiggyscore_isSpawned(JIGGY_31_FP_SIR_SLUSH)
){
D_80392F30.unk0 = 0;
D_80392F30.state = 0;
return;
}
@ -28,23 +28,23 @@ void func_8038A7F0(void){
if(nodeProp_findPositionFromActorId(0x128, D_80392F30.spawn_pos)){
D_80392F30.unk1C = 1;
}
D_80392F30.unk0 = 1;
D_80392F30.unk4 = 0;
D_80392F30.unk8 = 0;
D_80392F30.state = 1;
D_80392F30.remaining = 0;
D_80392F30.total = 0;
}
void func_8038A888(void){}
void fp_sirslushgame_end(void){}
void func_8038A890(void){
switch(D_80392F30.unk0){
void fp_sirslushgame_update(void){
switch(D_80392F30.state){
case 0:
break;
case 1://L8038A8CC
if(D_80392F30.unk4) break;
if(!D_80392F30.unk8) break;
if(D_80392F30.remaining) break;
if(!D_80392F30.total) break;
D_80392F30.unk0 = 2;
D_80392F30.state = 2;
D_80392F30.unkC = 0;
break;
@ -60,7 +60,7 @@ void func_8038A890(void){
reinterpret_cast(s32, D_80392F30.spawn_pos[2])
);
}
D_80392F30.unk0 = 3;
D_80392F30.state = 3;
}
else{
D_80392F30.unkC++;
@ -72,11 +72,11 @@ void func_8038A890(void){
}
}
void func_8038A978(void){
D_80392F30.unk4--;
void fp_sirslushgame_decRemaining(void){
D_80392F30.remaining--;
}
void func_8038A990(void){
D_80392F30.unk8++;
D_80392F30.unk4++;
void fp_sirslushgame_incTotal(void){
D_80392F30.total++;
D_80392F30.remaining++;
}

View File

@ -17,7 +17,7 @@ f32 D_80391EC0[3] ={-625.0f, 466.0f, -111.0f};
Struct_FP_45D0_0 D_80392F50;
/* .code */
void FP_func_8038A9C0(void){
void fp_snowmanButtonGame_init(void){
if( map_get() != MAP_27_FP_FREEZEEZY_PEAK
|| jiggyscore_isCollected(JIGGY_2D_FP_SNOWMAN_BUTTONS)
|| jiggyscore_isSpawned(JIGGY_2D_FP_SNOWMAN_BUTTONS)
@ -34,9 +34,9 @@ void FP_func_8038A9C0(void){
D_80392F50.unk4 = 3;
}
void func_8038AA58(void){}
void fp_snowmanButtonGame_end(void){}
void func_8038AA60(void){
void fp_snowmanButtonGame_update(void){
switch(D_80392F50.unk0){
case 1:
if(D_80392F50.unk4 <= 0){
@ -70,6 +70,6 @@ void func_8038AA60(void){
}
}
void func_8038AB40(void){
void fp_snowmanButtonGame_decRemaining(void){
D_80392F50.unk4--;
}

View File

@ -4,7 +4,7 @@
/* .bss */
struct {
u8 unk0;
u8 state;
f32 unk4;
}GV_D_80391B00;
@ -18,10 +18,10 @@ void func_80390880(void){
}
}
void func_803908C4(s32 arg0){
void __waterCtrl_setState(s32 arg0){
void *tmp_v0;
GV_D_80391B00.unk0 = arg0;
if(GV_D_80391B00.unk0 == 2){
GV_D_80391B00.state = arg0;
if(GV_D_80391B00.state == 2){
func_80324E38(0.0f, 3);
timed_setCameraToNode(0.0f, 0);
timedFunc_set_0(3.0f, func_80390880);
@ -36,7 +36,7 @@ void func_803908C4(s32 arg0){
}
}
if(GV_D_80391B00.unk0 == 3){
if(GV_D_80391B00.state == 3){
levelSpecificFlags_set(6, TRUE);
func_803228D8();
func_803204E4(0xe, 1);
@ -44,14 +44,14 @@ void func_803908C4(s32 arg0){
}
}
void func_803909EC(void){}
void gv_waterCtrl_end(void){}
void func_803909F4(void){
void gv_waterCtrl_init(void){
void *tmp_v0;
void *tmp_v0_2;
GV_D_80391B00.unk0 = 0;
GV_D_80391B00.state = 0;
if(map_get() != MAP_15_GV_WATER_PYRAMID) return;
if(jiggyscore_isCollected(JIGGY_42_GV_WATER_PYRAMID)){
@ -65,23 +65,23 @@ void func_803909F4(void){
}
else{
GV_D_80391B00.unk4 = 0.0f;
func_803908C4(1);
__waterCtrl_setState(1);
}
}
void func_80390A94(void){
void gv_waterCtrl_update(void){
f32 time_delta;
void *tmp_v0;
time_delta = time_getDelta();
if(!GV_D_80391B00.unk0) return;
if(GV_D_80391B00.state == 0) return;
if(GV_D_80391B00.unk0 == 1){
if(GV_D_80391B00.state == 1){
if(0.0f < GV_D_80391B00.unk4){
GV_D_80391B00.unk4 -= time_delta;
if(GV_D_80391B00.unk4 <= 0.0f){
func_803908C4(2);
__waterCtrl_setState(2);
}
}
else{
@ -91,7 +91,7 @@ void func_80390A94(void){
}
}//L80390B34
if(GV_D_80391B00.unk0 == 2){
if(GV_D_80391B00.state == 2){
tmp_v0 = func_8034C528(0x190);
if(tmp_v0 && func_8034DC78(tmp_v0) == 1){
func_8030E760(SFX_7F_HEAVYDOOR_SLAM, 0.8f, 0x7fd0);
@ -100,6 +100,6 @@ void func_80390A94(void){
func_8034E264(tmp_v0, 2);
}
if(timedFuncQueue_is_empty())
func_803908C4(3);
__waterCtrl_setState(3);
}
}

View File

@ -188,7 +188,7 @@ void __chSnowman_deathCallback(ActorMarker *marker, ActorMarker *other_marker){
__spawnQueue_add_1((GenMethod_1)__chSnowman_spawnHat, (s32)actor->marker);
if(map_get() == MAP_27_FP_FREEZEEZY_PEAK)
func_8038A978();
fp_sirslushgame_decRemaining();
__chSnowman_spawnSnowballParticles(actor->position, 0xC);
marker_despawn(actor->marker);
}
@ -225,7 +225,7 @@ void chSnowman_update(Actor *this){
func_8032BC18(this);
if(map_get() == MAP_27_FP_FREEZEEZY_PEAK){
local->unk0 = actorArray_findActorFromActorId(0x336)->marker;
func_8038A990();
fp_sirslushgame_incTotal();
}
}//L802E21D8
if(map_get() == MAP_27_FP_FREEZEEZY_PEAK){

View File

@ -316,7 +316,7 @@ void func_802E4048(s32 map, s32 exit, s32 transition){
}
//take me there
extern void func_802E4078(enum map_e map, s32 exit, s32 transition){
void func_802E4078(enum map_e map, s32 exit, s32 transition){
func_802E40D0(map, exit);
func_802E40E8(transition);
func_802E40C4(1);

View File

@ -186,21 +186,21 @@ void func_80322A94(void){
func_8038FF60();
func_803900F8();
gv_matchingGame_reset(); //gv_matchingGame_reset
func_803909EC();
gv_waterCtrl_end();
}
void func_80322ACC(void){
func_8038FF68();
func_80390100();
gv_matchingGame_init(); //gv_matchingGame_init
func_803909F4();
gv_waterCtrl_init();
}
void __overlay_gv_update(void){
func_8038FFF4();
func_80390138();
gv_matchingGame_update(); //gv_matchingGame_update
func_80390A94();
gv_waterCtrl_update();
}
void func_80322B3C(s32 arg0, s32 arg1){ return; }
@ -300,22 +300,22 @@ void func_80322D94(s32 arg0, s32 arg1){ return; }
void __overlay_fp_draw(Gfx **gfx, Mtx **mtx, Vtx **vtx){ return; }
void func_80322DB0(void){
func_8038A888();
func_8038AA58();
fp_sirslushgame_end();
fp_snowmanButtonGame_end();
func_8038B8A8();
func_8039195C();
}
void func_80322DE8(void){
func_8038A7F0();
FP_func_8038A9C0();
fp_sirslushgame_init();
fp_snowmanButtonGame_init();
func_8038B7A4();
func_803918C0();
}
void __overlay_fp_update(void){
func_8038A890();
func_8038AA60();
fp_sirslushgame_update();
fp_snowmanButtonGame_update();
func_8038B544();
func_80391994();
}