pal: match up to core2/bsrest.c

This commit is contained in:
Banjo Kazooie
2025-09-10 20:41:54 -05:00
parent 351ca1580c
commit c45dd154f1
9 changed files with 237 additions and 520 deletions

View File

@@ -573,33 +573,33 @@ segments:
- [0xF943D0, c, bs/bEggAss]
- [0xF94640, c, bs/bEggHead]
- [0xF948F0, c, bs/bFlap]
- [0xF94FC0, textbin, core2_untouched]
# - [0xF71730, c, bs/bFlip] #DONE
# - [0xF71D20, c, bs/bFly] #DONE
# - [0xF73BA0, c, bs/bLongLeg] #DONE
# - [0xF74EE0, c, bs/bPeck] #DONE
# - [0xF75380, c, bs/bShock] #DONE
# - [0xF75B10, c, bs/bSwim] #DONE
# - [0xF77190, c, bs/bTrot] #DONE
# - [0xF78DD0, c, bs/bWhirl] #DONE
# - [0xF79850, c, bs/carry] #DONE
# - [0xF79C50, c, bs/claw] #DONE
# - [0xF79F90, c, bs/climb] #DONE
# - [0xF7A790, c, bs/croc] #DONE
# - [0xF7C0A0, c, bs/crouch] #DONE
# - [0xF7C7D0, c, bs/die] #DONE
# - [0xF7CD40, c, bs/drone] #DONE
# - [0xF7CEB0, c, bs/droneenter] #DONE
# - [0xF7D530, c, bs/dronegoto] #DONE
# - [0xF7D8A0, c, bs/dronelook] #DONE
# - [0xF7DB80, c, bs/dronevanish] #DONE
# - [0xF7E170, c, bs/dronexform] #DONE
# - [0xF7F430, c, bs/jig] #DONE
# - [0xF7FAD0, c, bs/jump] #DONE
# - [0xF809A0, c, bs/ow] #DONE
# - [0xF80BA0, c, bs/pumpkin] #DONE
# - [0xF81FA0, c, bs/rebound] #DONE
# - [0xF82420, c, bs/rest] #DONE
- [0xF94FC0, c, bs/bFlip]
- [0xF955B0, c, bs/bFly]
- [0xF97430, c, bs/bLongLeg]
- [0xF98770, c, bs/bPeck]
- [0xF98C10, c, bs/bShock]
- [0xF993A0, c, bs/bSwim]
- [0xF9AA20, c, bs/bTrot]
- [0xF9C660, c, bs/bWhirl]
- [0xF9D0E0, c, bs/carry]
- [0xF9D4E0, c, bs/claw]
- [0xF9D820, c, bs/climb]
- [0xF9E020, c, bs/croc]
- [0xF9F930, c, bs/crouch]
- [0xFA0060, c, bs/die]
- [0xFA05D0, c, bs/drone]
- [0xFA0740, c, bs/droneenter]
- [0xFA0DC0, c, bs/dronegoto]
- [0xFA1130, c, bs/dronelook]
- [0xFA1410, c, bs/dronevanish]
- [0xFA1A00, c, bs/dronexform]
- [0xFA2CC0, c, bs/jig]
- [0xFA3370, c, bs/jump]
- [0xFA4240, c, bs/ow]
- [0xFA4440, c, bs/pumpkin]
- [0xFA5840, c, bs/rebound]
- [0xFA5CC0, c, bs/rest]
- [0xFA6190, textbin, core2_untouched]
# - [0xF828F0, c, bs/sled] #DONE
# - [0xF82AA0, c, bs/slide] #DONE
# - [0xF82F40, c, bs/splat] #DONE
@@ -920,20 +920,20 @@ segments:
- [0x1057240, .data, bs/beeFly]
- [0x1057270, .data, bs/beeMain]
- [0x10572A0, .data, bs/bFlap]
- [0x10572B0, bin, core2_untouched_data]
# - [0x10333F0, .data, bs/bFlip]
# - [0x1033410, .data, bs/bLongLeg]
# - [0x1033430, .data, bs/bPeck]
# - [0x1033440, .data, bs/bShock]
# - [0x1033450, bin, data_DDAF0] #unreferenced
# - [0x1033460, .data, bs/bTrot]
# - [0x10334A0, .data, bs/bWhirl]
# - [0x10334C0, .data, bs/carry]
# - [0x10334D0, .data, bs/croc]
# - [0x1033500, .data, bs/drone]
# - [0x1033580, .data, bs/dronexform]
# - [0x10336A0, .data, bs/jump]
# - [0x10336C0, .data, bs/pumpkin]
- [0x10572B0, .data, bs/bFlip]
- [0x10572D0, .data, bs/bLongLeg]
- [0x10572F0, .data, bs/bPeck]
- [0x1057300, .data, bs/bShock]
- [0x1057310, bin, data_DDAF0] #unreferenced
- [0x1057320, .data, bs/bTrot]
- [0x1057360, .data, bs/bWhirl]
- [0x1057380, .data, bs/carry]
- [0x1057390, .data, bs/croc]
- [0x10573C0, .data, bs/drone]
- [0x1057440, .data, bs/dronexform]
- [0x1057560, .data, bs/jump]
- [0x1057580, .data, bs/pumpkin]
- [0x10575B0, bin, core2_untouched_data]
# - [0x10336F0, .data, bs/stand]
# - [0x1033710, .data, bs/swim]
# - [0x1033740, .data, bs/walk]
@@ -1165,32 +1165,32 @@ segments:
- [0x1067D90, .rodata, bs/bEggAss]
- [0x1067DB0, .rodata, bs/bEggHead]
- [0x1067DD0, .rodata, bs/bFlap]
- [0x1067E40, rodatabin, core2_untouched]
# - [0x1043E70, .rodata, bs/bFlip]
# - [0x1043EC0, .rodata, bs/bFly]
# - [0x1043F20, .rodata, bs/bLongLeg]
# - [0x1043FB0, .rodata, bs/bPeck]
# - [0x1043FE0, .rodata, bs/bShock]
# - [0x1044000, .rodata, bs/bSwim]
# - [0x1044070, .rodata, bs/bTrot]
# - [0x10440E0, .rodata, bs/bWhirl]
# - [0x1044110, .rodata, bs/carry]
# - [0x1044130, .rodata, bs/claw]
# - [0x1044170, .rodata, bs/climb]
# - [0x1044180, .rodata, bs/croc]
# - [0x10441E0, .rodata, bs/crouch]
# - [0x1044210, .rodata, bs/die]
# - [0x1044220, .rodata, bs/droneenter]
# - [0x1044230, .rodata, bs/dronegoto]
# - [0x1044240, .rodata, bs/dronelook]
# - [0x1044250, .rodata, bs/dronevanish]
# - [0x1044260, .rodata, bs/dronexform]
# - [0x1044310, .rodata, bs/jig]
# - [0x1044330, .rodata, bs/jump]
# - [0x1044380, .rodata, bs/ow]
# - [0x1044390, .rodata, bs/pumpkin]
# - [0x1044410, .rodata, bs/rebound]
# - [0x1044420, .rodata, bs/rest]
- [0x1067E40, .rodata, bs/bFlip]
- [0x1067E90, .rodata, bs/bFly]
- [0x1067EF0, .rodata, bs/bLongLeg]
- [0x1067F80, .rodata, bs/bPeck]
- [0x1067FB0, .rodata, bs/bShock]
- [0x1067FD0, .rodata, bs/bSwim]
- [0x1068040, .rodata, bs/bTrot]
- [0x10680B0, .rodata, bs/bWhirl]
- [0x10680E0, .rodata, bs/carry]
- [0x1068100, .rodata, bs/claw]
- [0x1068140, .rodata, bs/climb]
- [0x1068150, .rodata, bs/croc]
- [0x10681B0, .rodata, bs/crouch]
- [0x10681E0, .rodata, bs/die]
- [0x10681F0, .rodata, bs/droneenter]
- [0x1068200, .rodata, bs/dronegoto]
- [0x1068210, .rodata, bs/dronelook]
- [0x1068220, .rodata, bs/dronevanish]
- [0x1068230, .rodata, bs/dronexform]
- [0x10682E0, .rodata, bs/jig]
- [0x1068300, .rodata, bs/jump]
- [0x1068350, .rodata, bs/ow]
- [0x1068360, .rodata, bs/pumpkin]
- [0x10683E0, .rodata, bs/rebound]
- [0x10683F0, .rodata, bs/rest]
- [0x1068400, rodatabin, core2_untouched]
# - [0x1044430, .rodata, bs/slide]
# - [0x1044440, .rodata, bs/stand]
# - [0x1044470, .rodata, bs/swim]
@@ -1437,28 +1437,28 @@ segments:
- [0x0106C980, .bss, bs/bEggAss]
- [0x0106C980, .bss, bs/bEggHead]
- [0x0106C980, .bss, bs/bFlap]
# - [0x0106C980, .bss, bs/bFlip]
# - [0x0106C980, .bss, bs/bFly]
# - [0x0106C980, .bss, bs/bLongLeg]
# - [0x0106C980, .bss, bs/bPeck]
# - [0x0106C980, .bss, bs/bShock]
# - [0x0106C980, .bss, bs/bSwim]
# - [0x0106C980, .bss, bs/bTrot]
# - [0x0106C980, .bss, bs/bWhirl]
# - [0x0106C980, .bss, bs/claw]
# - [0x0106C980, .bss, bs/climb]
# - [0x0106C980, .bss, bs/croc]
# - [0x0106C980, .bss, bs/crouch]
# - [0x0106C980, .bss, bs/die]
# - [0x0106C980, .bss, bs/droneenter]
# - [0x0106C980, .bss, bs/dronegoto]
# - [0x0106C980, .bss, bs/dronevanish]
# - [0x0106C980, .bss, bs/dronexform]
# - [0x0106C980, .bss, bs/jig]
# - [0x0106C980, .bss, bs/jump]
# - [0x0106C980, .bss, bs/ow]
# - [0x0106C980, .bss, bs/pumpkin]
# - [0x0106C980, .bss, bs/rebound]
- [0x0106C980, .bss, bs/bFlip]
- [0x0106C980, .bss, bs/bFly]
- [0x0106C980, .bss, bs/bLongLeg]
- [0x0106C980, .bss, bs/bPeck]
- [0x0106C980, .bss, bs/bShock]
- [0x0106C980, .bss, bs/bSwim]
- [0x0106C980, .bss, bs/bTrot]
- [0x0106C980, .bss, bs/bWhirl]
- [0x0106C980, .bss, bs/claw]
- [0x0106C980, .bss, bs/climb]
- [0x0106C980, .bss, bs/croc]
- [0x0106C980, .bss, bs/crouch]
- [0x0106C980, .bss, bs/die]
- [0x0106C980, .bss, bs/droneenter]
- [0x0106C980, .bss, bs/dronegoto]
- [0x0106C980, .bss, bs/dronevanish]
- [0x0106C980, .bss, bs/dronexform]
- [0x0106C980, .bss, bs/jig]
- [0x0106C980, .bss, bs/jump]
- [0x0106C980, .bss, bs/ow]
- [0x0106C980, .bss, bs/pumpkin]
- [0x0106C980, .bss, bs/rebound]
# - [0x0106C980, .bss, bs/sled]
# - [0x0106C980, .bss, bs/slide]
# - [0x0106C980, .bss, bs/splat]

View File

@@ -577,9 +577,9 @@ void bsbeefly_update(void);
void bsbeefly_end(void);
//0x0000008D
void func_802AD56C(void);
void func_802AD5C0(void);
void func_802AD614(void);
void bscroc_locked_enter(void);
void bscroc_locked_update(void);
void bscroc_locked_end(void);
//0x0000008E
void func_8029F398(void);

View File

@@ -33,37 +33,44 @@ boot_func_8023DA20 = func_8023DA20;
/* Temporary*/
func_80346C10 = 0x80000000 | (0xd1c18 << 2);
commonParticle_new = 0x80000000 | (0xcfa10 << 2);
func_802ADCD4 = 0x80000000 | (0xab6c5 << 2);
/* Temporary Correct*/
bsbtrot_inSet = 0x80000000 | (0xaa676 << 2);
func_802AD318 = 0x80000000 | (0xab456 << 2);
bsdrone_init = 0x80000000 | (0xab884 << 2);
bsdrone_update = 0x80000000 | (0xab894 << 2);
bsdrone_end = 0x80000000 | (0xab8a4 << 2);
func_802B6FA8 = 0x80000000 | (0xadb86 << 2);
bsjig_inJiggyJig = 0x80000000 | (0xac228 << 2);
bsjig_setJiggyMarkerPtr = 0x80000000 | (0xac22b << 2);
func_802B0CD8 = 0x80000000 | (0xac2c6 << 2);
func_802B35DC = 0x80000000 | (0xacd0b << 2);
func_802B360C = 0x80000000 | (0xacd17 << 2);
func_802B37DC = 0x80000000 | (0xacd8b << 2);
func_802B3A50 = 0x80000000 | (0xace28 << 2);
func_802B6FA8 = 0x80000000 | (0xadb86 << 2);
func_802BC434 = 0x80000000 | (0xaf0a9 << 2);
ncDynamicCamera_enterFirstPerson = 0x80000000 | (0xaf9d5 << 2);
ncDynamicCamera_exitFirstPerson = 0x80000000 | (0xaf9e6 << 2);
ncDynamicCamD_func_802BF2C0 = 0x80000000 | (0xafc50 << 2);
ncDynamicCam5_func_802BF590 = 0x80000000 | (0xafd04 << 2);
ncDynamicCam4_func_802BFE50 = 0x80000000 | (0xaff34 << 2);
ncDynamicCam4_func_802BFE74 = 0x80000000 | (0xaff3d << 2);
ncFirstPersonCamera_setZoomedOutPosition = 0x80000000 | (0xb0a39 << 2);
ncFirstPersonCamera_setZoomedOutRotation = 0x80000000 | (0xb0a43 << 2);
__spawnQueue_add_0 = 0x80000000 | (0xb0e9e << 2);
chJigsawDance_setState = 0x80000000 | (0xb2120 << 2);
func_802D8BE4 = 0x80000000 | (0xb6371 << 2);
func_802DC528 = 0x80000000 | (0xb71c2 << 2);
func_802DC560 = 0x80000000 | (0xb71d0 << 2);
func_802E4048 = 0x80000000 | (0xb908e << 2);
func_802E412C = 0x80000000 | (0xb90c7 << 2);
vtxList_getVertices = 0x80000000 | (0xbb18c << 2);
func_802EDD8C = 0x80000000 | (0xbb7db << 2);
particleEmitter_setSprite = 0x80000000 | (0xbbecc << 2);
particleEmitter_setAccelerationRange = 0x80000000 | (0xbbee3 << 2);
particleEmitter_setFade = 0x80000000 | (0xbbf0f << 2);
particleEmitter_setParticleFramerateRange = 0x80000000 | (0xbbf1f << 2);
particleEmitter_setSpawnPositionRange = 0x80000000 | (0xbbf3f << 2);
particleEmitter_setFinalScaleRange = 0x80000000 | (0xbbf59 << 2);
particleEmitter_setVelocityAndAccelerationRanges = 0x80000000 | (0xbbf99 << 2);
particleEmitter_setSphericalParticleVelocityRange = 0x80000000 | (0xbc03c << 2);
func_802EFF50 = 0x80000000 | (0xbc04c << 2);
particleEmitter_manualFree = 0x80000000 | (0xbc3cd << 2);
partEmitMgr_freeEmitter = 0x80000000 | (0xbc396 << 2);
partEmitMgr_newEmitter = 0x80000000 | (0xbc36c << 2);
fxRipple_802F3554 = 0x80000000 | (0xbcdcd << 2);
fxRipple_802F3584 = 0x80000000 | (0xbcdd9 << 2);
func_802F4094 = 0x80000000 | (0xbd09d << 2);
@@ -84,17 +91,23 @@ func_802F499C = 0x80000000 | (0xbd2df << 2);
mapModel_getBounds = 0x80000000 | (0xc26ce << 2);
level_get_main_map = 0x80000000 | (0xc2bde << 2);
level_get_main_exit = 0x80000000 | (0xc2bf1 << 2);
func_8030EB00 = 0x80000000 | (0xc3b28 << 2);
sfxSource_setCallbackByIndex = 0x80000000 | (0xc37bd << 2);
func_8030DD90 = 0x80000000 | (0xc37cc << 2);
func_8030E04C = 0x80000000 | (0xc387b << 2);
sfxSource_getSampleRate = 0x80000000 | (0xc38d9 << 2);
func_8030E4E4 = 0x80000000 | (0xc39a1 << 2);
func_8030E5F4 = 0x80000000 | (0xc39e5 << 2);
func_8030E3FC = 0x80000000 | (0xc3967 << 2);
func_8030E560 = 0x80000000 | (0xc39c0 << 2);
func_8030E760 = 0x80000000 | (0xc3a40 << 2);
func_8030EAAC = 0x80000000 | (0xc3b13 << 2);
func_8030EB00 = 0x80000000 | (0xc3b28 << 2);
func_8030EBC8 = 0x80000000 | (0xc3b5a << 2);
func_8030EB88 = 0x80000000 | (0xc3b4a << 2);
func_803114D0 = 0x80000000 | (0xc45c7 << 2);
gcpausemenu_returnToLair = 0x80000000 | (0xc53a1 << 2);
func_8031B990 = 0x80000000 | (0xc6f5c << 2);
func_8031F9F4 = 0x80000000 | (0xc7f79 << 2);
func_80324C58 = 0x80000000 | (0xc942a << 2);
timedFunc_set_0 = 0x80000000 | (0xc94bf << 2);
func_8032728C = 0x80000000 | (0xc9db7 << 2);
@@ -104,28 +117,48 @@ model_getVtxList = 0x80000000 | (0xce966 << 2);
func_8033A1FC = 0x80000000 | (0xce993 << 2);
func_8033A45C = 0x80000000 | (0xcea2b << 2);
func_8033DE30 = 0x80000000 | (0xcf8a0 << 2);
commonParticle_new = 0x80000000 | (0xcfa10 << 2);
item_set = 0x80000000 | (0xd1a19 << 2);
func_80346C10 = 0x80000000 | (0xd1c18 << 2);
func_80346CE8 = 0x80000000 | (0xd1c4e << 2);
func_80354030 = 0x80000000 | (0xd5124 << 2);
func_803541C0 = 0x80000000 | (0xd5188 << 2);
func_803541CC = 0x80000000 | (0xd518b << 2);
func_80354380 = 0x80000000 | (0xd51f8 << 2);
func_80356074 = 0x80000000 | (0xd5935 << 2);
bsbfly_inSet = 0x802a35b8;
bsbfly_bombHitboxActive = 0x802a3dd0;
bslongleg_inSet = 0x802a50ec;
func_802A6388 = 0x802a61c8;
bsbpeck_hitboxActive = 0x802a6350;
bsbswim_inSet = 0x802a7348;
bscarry_inSet = 0x802aafc4;
bsclaw_hitboxActive = 0x802ab0c0;
bsclimb_inSet = 0x802ab640;
bscroc_hitboxActive = 0x802acd8c;
func_802AD3A0 = 0x802ad1e0;
bsslide_init = 0x802b40c0;
bsslide_update = 0x802b4230;
bsslide_end = 0x802b439c;
bsstand_init = 0x802b4808;
bsstand_update = 0x802b4b90;
bsstand_end = 0x802b50b8;
bsstand_landing_init = 0x802b50e8;
bsstand_landing_update = 0x802b5120;
func_802B5350 = 0x802b51c0;
func_802B5774 = 0x802b55e4;
func_802B5950 = 0x802b57c0;
func_802B5AF8 = 0x802b5968;
func_802B5B18 = 0x802b5988;
func_802B5C40 = 0x802b5ab0;
func_802B5E10 = 0x802b5c80;
bstalk_init = 0x802B5FA0;
bstalk_update = 0x802B6050;
bstalk_end = 0x802B6088;
bstalk_interrupt = 0x802B6090;
func_802B63F8 = 0x802b6268;
func_802B64D0 = 0x802b6340;
func_802B6500 = 0x802b6370;
bsturn_init = 0x802b65d0;
bsturn_update = 0x802b66c0;
bsturn_end = 0x802b6860;
bstwirl_init = 0x802b68bc;
bstwirl_update = 0x802b69e0;
bstwirl_end = 0x802b6b44;
bswalk_creep_init = 0x802b6e38;
bswalk_creep_update = 0x802b6f34;
bswalk_slow_init = 0x802b70d0;
bswalk_slow_upate = 0x802b71cc;
bswalk_init = 0x802b7368;
@@ -133,210 +166,11 @@ bswalk_update = 0x802b7484;
bswalk_fast_init = 0x802b7628;
bswalk_fast_update = 0x802b77dc;
bswalk_fast_end = 0x802b79f8;
bsjump_init = 0x802b0f7c;
bsjump_update = 0x802b11a4;
bsjump_end = 0x802b1464;
bsclaw_init = 0x802ab0cc;
bsclaw_update = 0x802ab13c;
bsclaw_end = 0x802ab3cc;
bscrouch_init = 0x802ad62c;
bscrouch_update = 0x802ad7b0;
bscrouch_end = 0x802adb0c;
bsbtrot_jump_init = 0x802a9168;
bsbtrot_jump_update = 0x802a92b8;
bsbtrot_jump_end = 0x802a96a4;
bsturn_init = 0x802b65d0;
bsturn_update = 0x802b66c0;
bsturn_end = 0x802b6860;
func_802B63F8 = 0x802b6268;
func_802B64D0 = 0x802b6340;
func_802B6500 = 0x802b6370;
bsow_init = 0x802b1e28;
bsow_update = 0x802b1eec;
bsow_end = 0x802b1fd4;
bsbbuster_init = 0x8029faa4;
bsbbuster_update = 0x8029fbcc;
bsbbuster_end = 0x802a00b8;
bsbflap_init = 0x802a24d0;
bsbflap_update = 0x802a285c;
bsbflap_end = 0x802a2b50;
bsbpeck_init = 0x802a635c;
bsbpeck_update = 0x802a6530;
bsbpeck_end = 0x802a6768;
bsbflip_init = 0x802a2cac;
bsbflip_update = 0x802a2d88;
bsbflip_end = 0x802a314c;
bsbarge_init = 0x8029f490;
bsbarge_update = 0x8029f5bc;
bsbarge_end = 0x8029f928;
bsbtrot_enter_init = 0x802a8c7c;
bsbtrot_enter_update = 0x802a8ce4;
bsbtrot_enter_end = 0x802a8d74;
bsbtrot_stand_init = 0x802a8da0;
bsbtrot_stand_update = 0x802a8df0;
bsbtrot_stand_end = 0x802a8e50;
bsbtrot_walk_init = 0x802a8f38;
bsbtrot_walk_update = 0x802a8f8c;
bsbtrot_walk_end = 0x802a9140;
bsbtrot_exit_init = 0x802a96cc;
bsbtrot_exit_update = 0x802a9708;
bsbtrot_exit_end = 0x802a9744;
func_802A4D90 = 0x802a4bd0;
func_802A4EC8 = 0x802a4d08;
func_802A4F44 = 0x802a4d84;
bsbwhirl_enter_init = 0x802aa470;
bsbwhirl_enter_update = 0x802aa51c;
bsbwhirl_enter_end = 0x802aa568;
bsbwhirl_stand_init = 0x802aa594;
bsbwhirl_stand_update = 0x802aa5d8;
bsbwhirl_stand_end = 0x802aa63c;
bsbwhirl_walk_init = 0x802aa65c;
bsbwhirl_walk_update = 0x802aa6bc;
bsbwhirl_walk_end = 0x802aa79c;
bsbwhirl_jump_init = 0x802aa7bc;
bsbwhirl_jump_update = 0x802aa904;
bsbwhirl_jump_end = 0x802aaa5c;
bsbwhirl_exit_init = 0x802aaa84;
bsbwhirl_exit_update = 0x802aab30;
bsbwhirl_exit_end = 0x802aab6c;
bswalk_creep_init = 0x802b6e38;
bswalk_creep_update = 0x802b6f34;
bsstand_landing_init = 0x802b50e8;
bsstand_landing_update = 0x802b5120;
bsbshock_charge_init = 0x802a67f0;
bsbshock_charge_update = 0x802a6980;
bsbshock_charge_end = 0x802a6c34;
bsbshock_init = 0x802a6ca0;
bsbshock_update = 0x802a6e08;
bsbshock_end = 0x802a6f14;
bsbfly_enter_init = 0x802a3660;
bsbfly_enter_update = 0x802a371c;
bsbfly_enter_end = 0x802a37d4;
func_802A505C = 0x802a4e9c;
bsbfly_init = 0x802a37fc;
bsbfly_update = 0x802a38e8;
func_802A3F70 = 0x802a3db0;
bsblongleg_enter_init = 0x802a5400;
bsblongleg_enter_update = 0x802a54c4;
bsblongleg_enter_end = 0x802a5558;
bsblongleg_stand_enter = 0x802a5584;
bsblongleg_stand_update = 0x802a55d8;
bsblongleg_stand_end = 0x802a56bc;
bsblongleg_walk_init = 0x802a56dc;
bsblongleg_walk_update = 0x802a576c;
bsblongleg_walk_end = 0x802a58d0;
bsblongleg_jump_init = 0x802a5b60;
bsblongleg_jump_update = 0x802a5cb0;
bsblongleg_jump_end = 0x802a5f5c;
bsblongleg_exit_init = 0x802a59f4;
bsblongleg_exit_update = 0x802a5a74;
bsblongleg_exit_end = 0x802a5b34;
func_802A3F9C = 0x802a3ddc;
func_802A411C = 0x802a3f5c;
func_802A4404 = 0x802a4244;
func_802A762C = 0x802a746c;
func_802A7674 = 0x802a74b4;
func_802A7718 = 0x802a7558;
func_802A7738 = 0x802a7578;
func_802A7838 = 0x802a7678;
func_802A7A2C = 0x802a786c;
func_802B5774 = 0x802b55e4;
func_802B5950 = 0x802b57c0;
func_802B5AF8 = 0x802b5968;
func_802B5B18 = 0x802b5988;
func_802B5C40 = 0x802b5ab0;
func_802B5E10 = 0x802b5c80;
bsjump_fall_init = 0x802b14b0;
bsjump_fall_update = 0x802b15a0;
bsjump_fall_end = 0x802b1770;
bsSwim_dive_init = 0x802a7bec;
func_802A7E2C = 0x802a7c6c;
func_802A7F4C = 0x802a7d8c;
bstwirl_init = 0x802b68bc;
bstwirl_update = 0x802b69e0;
bstwirl_end = 0x802b6b44;
bsslide_init = 0x802b40c0;
bsslide_update = 0x802b4230;
bsslide_end = 0x802b439c;
func_802B9ACC = 0x802b993c;
func_802B9B14 = 0x802b9984;
func_802B9AAC = 0x802b991c;
func_802B9D00 = 0x802b9b70;
bsjig_notedoor_init = 0x802b0dd8;
bsjig_notedoor_update = 0x802b0ee0;
bsjig_notedoor_end = 0x802b0d40;
func_802A7A54 = 0x802a7894;
func_802A7AB0 = 0x802a78f0;
func_802A7BA8 = 0x802a79e8;
bscarry_idle_init = 0x802AAD64;
bscarry_idle_update = 0x802AAE10;
bscarry_idle_end = 0x802AAE58;
bscarry_interrupt = 0x802AAFE4;
bscarry_walk_init = 0x802AAE78;
bscarry_walk_update = 0x802AAF1C;
bscarry_walk_end = 0x802AAFA4;
bscarry_interrupt = 0x802AAFE4;
bstalk_init = 0x802B5FA0;
bstalk_update = 0x802B6050;
bstalk_end = 0x802B6088;
bstalk_interrupt = 0x802B6090;
bsjump_tumble_init = 0x802B1C20;
bsjump_tumble_update = 0x802B1CD0;
bsjump_tumble_end = 0x802B1DBC;
func_802B1BF4 = 0x802B1A44;
func_802B1CF8 = 0x802B1B48;
func_802B1DA4 = 0x802B1BF4;
func_802B2BF0 = 0x802B2A40;
func_802B2C58 = 0x802B2AA8;
func_802B2D50 = 0x802B2BA0;
bsdie_init = 0x802ADCE0;
bsdie_update = 0x802ADE98;
bsdie_end = 0x802AE14C;
func_802A5120 = 0x802A4F60;
func_802A5190 = 0x802A4FD0;
func_802A51C0 = 0x802A5000;
bsjig_jiggy_init = 0x802B08B8;
bsjig_jiggy_update = 0x802B0A24;
bsjig_jiggy_end = 0x802B0B5C;
bsjig_jiggy_interrupt = 0x802B0CFC;
bsbtrot_slide_init = 0x802A9764;
bsbtrot_slide_update = 0x802A9874;
bsbtrot_slide_end = 0x802A99B8;
func_802A2098 = 0x802A1ED8;
func_802A2130 = 0x802A1F70;
func_802A2054 = 0x802A1E94;
bspumpkin_idle_init = 0x802B21D4;
bspumpkin_idle_update = 0x802B227C;
bspumpkin_idle_end = 0x802B22FC;
bspumpkin_walk_init = 0x802B2324;
bspumpkin_walk_update = 0x802B23D0;
bspumpkin_walk_end = 0x802B2460;
bspumpkin_jump_init = 0x802B2488;
bspumpkin_jump_update = 0x802B25A0;
bspumpkin_jump_end = 0x802B27E0;
bspumpkin_fall_init = 0x802B2810;
bspumpkin_fall_update = 0x802B28AC;
bspumpkin_fall_end = 0x802B2A20;
func_802A846C = 0x802A82AC;
func_802A85EC = 0x802A842C;
func_802A872C = 0x802A856C;
__bspumpkin_ow_init = 0x802B2E2C;
__bspumpkin_ow_update = 0x802B2E4C;
__bspumpkin_ow_end = 0x802B2E6C;
bspumpkin_die_init = 0x802B2EEC;
bspumpkin_die_update = 0x802B3090;
bspumpkin_die_end = 0x802B3298;
bsclimb_idle_init = 0x802AB670;
bsclimb_idle_update = 0x802AB71C;
bsclimb_idle_end = 0x802AB850;
func_802ABD60 = 0x802ABBA0;
bsclimb_move_init = 0x802AB870;
bsclimb_move_update = 0x802AB8E4;
bsclimb_move_end = 0x802ABAEC;
func_802B1928 = 0x802B1778;
func_802B1A54 = 0x802B18A4;
func_802B1BCC = 0x802B1A1C;
func_802B5FD0 = 0x802B5E40;
func_802B6064 = 0x802B5ED4;
func_802B60D0 = 0x802B5F40;
@@ -344,49 +178,13 @@ func_802B60D8 = 0x802B5F48;
func_802B6270 = 0x802B60E0;
func_802B6314 = 0x802B6184;
func_802B63C8 = 0x802B6238;
bsblongleg_slide_init = 0x802A5F84;
bsblongleg_slide_update = 0x802A608C;
bsblongleg_slide_end = 0x802A61A8;
func_802B3868 = 0x802B36B8;
func_802B3954 = 0x802B37A4;
func_802B3A20 = 0x802B3870;
func_802A4430 = 0x802A4270;
func_802A4548 = 0x802A4388;
func_802A4664 = 0x802A44A4;
bsbfly_beakbomb_crash_init = 0x802A4588;
func_802A48B4 = 0x802A46F4;
func_802A4A40 = 0x802A4880;
func_802A4CD0 = 0x802A4B10;
func_802A4CF0 = 0x802A4B30;
func_802A4D10 = 0x802A4B50;
func_802A7F6C = 0x802A7DAC;
func_802A8098 = 0x802A7ED8;
func_802A82D4 = 0x802A8114;
bsthrow_init = 0x802B63B0;
bsthrow_update = 0x802B6450;
bsthrow_end = 0x802B651C;
bsthrow_interrupt = 0x802B6568;
bscroc_idle_init = 0x802ABF14;
bscroc_idle_update = 0x802ABFB8;
bscroc_idle_end = 0x802AC064;
bscroc_walk_init = 0x802AC08C;
bscroc_walk_update = 0x802AC0FC;
bscroc_walk_end = 0x802AC1C0;
bscroc_jump_init = 0x802AC1E8;
bscroc_jump_update = 0x802AC31C;
bscroc_jump_end = 0x802AC510;
bscroc_fall_init = 0x802AC538;
bscroc_fall_update = 0x802AC5CC;
bscroc_fall_end = 0x802AC70C;
func_802A6394 = 0x802A61D4;
func_802A63F0 = 0x802A6230;
func_802A6450 = 0x802A6290;
bscroc_ow_init = 0x802AC978;
bscroc_ow_update = 0x802AC998;
bscroc_ow_end = 0x802AC9B8;
bscroc_die_init = 0x802ACA38;
bscroc_die_update = 0x802ACBE0;
bscroc_die_end = 0x802ACD3C;
bswalrus_idle_init = 0x802B80F4;
bswalrus_idle_update = 0x802B81A0;
bswalrus_idle_end = 0x802B822C;
@@ -408,15 +206,6 @@ bswalrus_ow_end = 0x8802B8B34;
bswalrus_die_init = 0x8802B8BB4;
bswalrus_die_update = 0x8802B8D74;
bswalrus_die_end = 0x8802B8E80;
bscroc_bite_init = 0x8802ACE0C;
bscroc_bite_update = 0x8802ACE64;
bscroc_bite_end = 0x8802ACFA8;
bscroc_eat_bad_init = 0x8802ACFCC;
bscroc_eat_bad_update = 0x8802AD014;
bscroc_eat_bad_end = 0x8802AD0C8;
bscroc_eat_good_init = 0x8802AD168;
bscroc_eat_good_update = 0x8802AD1EC;
bscroc_eat_good_end = 0x8802AD370;
bsbtrot_fall_init = 0x8802A9A78;
bsbtrot_fall_update = 0x8802A9B48;
bsbtrot_fall_end = 0x8802A9EA8;
@@ -432,23 +221,11 @@ func_802B3EF4 = 0x802B3D44;
func_802B3D8C = 0x802B3BDC;
func_802B3DBC = 0x802B3C0C;
func_802B3E0C = 0x802B3C5C;
func_802A4F74 = 0x802A4DB4;
func_802A4FC8 = 0x802A4E08;
func_802A503C = 0x802A4E7C;
func_802B5E8C = 0x802B5CFC;
func_802B5EFC = 0x802B5D6C;
func_802B5F38 = 0x802B5DA8;
func_802A83C0 = 0x802A8200;
func_802A8410 = 0x802A8250;
func_802A844C = 0x802A828C;
bsbtrot_unk79_init = 0x802A9EC8;
bsbtrot_unk79_update = 0x802A9F28;
bsbtrot_unk79_end = 0x802A9F74;
bswalk_mud_init = 0x802b7a28;
bswalk_mud_update = 0x802b7aa0;
bsbtrot_ow_init = 0x802A9F9C;
bsbtrot_ow_update = 0x802AA0BC;
bsbtrot_ow_end = 0x802AA178;
bssled_init = 0x802B3DF4;
bssled_update = 0x802B3E60;
bssled_end = 0x802B3E94;
@@ -461,9 +238,6 @@ bswalrus_sled_jump_init = 0x802B9174;
bswalrus_sled_jump_update = 0x802B92B0;
bswalrus_sled_jump_end = 0x802B93E8;
func_802B98C0 = 0x802B9730;
func_802A7BD0 = 0x802A7A10;
func_802A7CA8 = 0x802A7AE8;
func_802A7D74 = 0x802A7BB4;
bswalrus_timeout_init = 0x802B95FC;
func_802B9830 = 0x802B96A0;
func_802B9880 = 0x802B96F0;
@@ -475,45 +249,9 @@ func_802B95A0 = 0x802B9410;
func_802B963C = 0x802B94AC;
func_802B976C = 0x802B95DC;
func_802B98C0 = 0x802B9730;
func_802A1080 = 0x802A0EC0;
func_802A10D4 = 0x802A0F14;
func_802A117C = 0x802A0FBC;
func_802A11A4 = 0x802A0FE4;
func_802A1214 = 0x802A1054;
func_802A12D4 = 0x802A1114;
func_802A12FC = 0x802A113C;
func_802A1438 = 0x802A1278;
func_802A163C = 0x802A147C;
func_802A1664 = 0x802A14A4;
func_802A170C = 0x802A154C;
func_802A18C8 = 0x802A1708;
func_802A1B68 = 0x802A19A8;
func_802A1B88 = 0x802A19C8;
func_802A1BA8 = 0x802A19E8;
func_802A1DD8 = 0x802A1C18;
func_802A1F2C = 0x802A1D6C;
func_802A0590 = 0x802A03D0;
func_802A0630 = 0x802A0470;
func_802A0704 = 0x802A0544;
func_802AD56C = 0x802AD3AC;
func_802AD5C0 = 0x802AD400;
func_802AD614 = 0x802AD454;
func_8029F398 = 0x8029F1D8;
func_8029F3F4 = 0x8029F234;
func_8029F440 = 0x8029F280;
func_802B34A0 = 0x802B32F0;
func_802B34F8 = 0x802B3348;
func_802B353C = 0x802B338C;
func_802A4D30 = 0x802A4B70;
func_802A4D50 = 0x802A4B90;
func_802A4D70 = 0x802A4BB0;
bsdrone_interrupt = 0x802AE2D0;
bspumpkin_drone_init = 0x8802B33B4;
bspumpkin_drone_update = 0x8802B33D4;
bspumpkin_drone_end = 0x8802B33F4;
bscroc_drone_init = 0x8802AD494;
bscroc_drone_update = 0x8802AD4B4;
bscroc_drone_end = 0x8802AD4DC;
bswalrus_drone_init = 0x8802B8ED0;
bswalrus_drone_update = 0x8802B8EF8;
bswalrus_drone_end = 0x8802B8F18;
@@ -529,39 +267,12 @@ bswalk_drone_end = 0x8802B7C50;
func_802A50B0 = 0x8802A4EF0;
func_802A50D8 = 0x8802A4F18;
func_802A50F8 = 0x8802A4F38;
bsbtrot_drone_init = 0x802AA1B8;
bsbtrot_drone_update = 0x802AA1E8;
bsbtrot_drone_end = 0x802AA210;
bsblongleg_drone_init = 0x802A62B8;
bsblongleg_drone_update = 0x802A62E0;
bsblongleg_drone_end = 0x802A6320;
bswalrus_sled_drone_init = 0x802B977C;
bswalrus_sled_drone_update = 0x802B97A4;
bswalrus_sled_drone_end = 0x802B97C4;
func_802ABCCC = 0x802ABB0C;
func_802ABD0C = 0x802ABB4C;
func_802ABD40 = 0x802ABB80;
bspumpkin_rebound_init = 0x802B2E8C;
bspumpkin_rebound_update = 0x802B2EAC;
bspumpkin_rebound_end = 0x802B2ECC;
bscroc_bounce_init = 0x802AC9D8;
bscroc_bounce_update = 0x802AC9F8;
bscroc_bounce_end = 0x802ACA18;
bswalrus_bounce_init = 0x802B8B54;
bswalrus_bounce_update = 0x802B8B74;
bswalrus_bounce_end = 0x802B8B94;
func_802A1BC8 = 0x802A1A08;
func_802A1BE8 = 0x802A1A28;
func_802A1C08 = 0x802A1A48;
bsbwhirl_drone_init = 0x802AAB8C;
bsbwhirl_drone_update = 0x802AABAC;
bsbwhirl_drone_end = 0x802AABD4;
func_802AADBC = 0x802AABFC;
func_802AAE08 = 0x802AAC48;
func_802AAE4C = 0x802AAC8C;
bsjump_jumpingFromWater = 0x802b1c14;
bspumpkin_inSet = 0x802b2154;
bsswim_inset = 0x802b5594;
bstwirl_hitboxActive = 0x802b68b0;
func_802B6F9C = 0x802b6e0c;

View File

@@ -13,7 +13,7 @@ extern void baModel_setYDisplacement(f32);
extern f32 bastick_getX(void);
extern void ncDynamicCam4_func_802BFE50(f32, f32, f32);
extern void func_80354030(f32[3], f32);
extern BKCollisionTri *func_8029463C(void);
/* .data */
@@ -477,8 +477,8 @@ void func_802A4430(void){
void func_802A4548(void){
s32 next_state = 0;
f32 sp20[3];
baphysics_get_velocity(sp20);
f32 velocity[3];
baphysics_get_velocity(velocity);
switch(D_8037D344){
case 0://L802A457C
if(func_8028B254(0x5A)){
@@ -567,15 +567,15 @@ void func_802A47E0(void) {
void func_802A48B4(void) {
s32 next_state;
AnimCtrl *sp18;
AnimCtrl *p_anim;
next_state = 0;
sp18 = baanim_getAnimCtrlPtr();
p_anim = baanim_getAnimCtrlPtr();
func_80299628(0);
switch (D_8037D344) {
case 0:
func_802A47E0();
if (anctrl_isAt(sp18, 0.2f) != 0) {
if (anctrl_isAt(p_anim, 0.2f) != 0) {
if (item_getCount(ITEM_14_HEALTH) == 0) {
func_8029C984();
func_8029151C(0xD);
@@ -584,19 +584,19 @@ void func_802A48B4(void) {
batimer_set(0, 2.5f);
D_8037D344 = 2;
}
} else if (anctrl_isAt(sp18, 0.92f)) {
} else if (anctrl_isAt(p_anim, 0.92f)) {
baanim_playForDuration_once(ASSET_D2_ANIM_BSSPLAT, 2.25f);
D_8037D344 = 1;
}
break;
case 1:
if (anctrl_isAt(sp18, 0.219f)) {
if (anctrl_isAt(p_anim, 0.219f)) {
basfx_80299CF4(SFX_36_BANJO_DOH, 1.0f, 16000);
}
if (anctrl_isAt(sp18, 0.63f)) {
if (anctrl_isAt(p_anim, 0.63f)) {
next_state = BS_20_LANDING;
}
if (anctrl_isStopped(sp18)) {
if (anctrl_isStopped(p_anim)) {
next_state = BS_1_IDLE;
}
if (player_shouldFall()) {
@@ -624,17 +624,17 @@ void func_802A4A40(void) {
void func_802A4A78(s32 arg0) {
f32 sp3C[3];
f32 sp30[3];
f32 sp2C;
f32 gravity;
f32 sp28;
f32 pad24;
f32 sp20;
f32 velocity;
if (arg0 == 0) {
sp2C = -2200.0f;
sp20 = 800.0f;
gravity = -2200.0f;
velocity = 800.0f;
} else {
sp2C = -1200.0f;
sp20 = 400.0f;
gravity = -1200.0f;
velocity = 400.0f;
}
func_802BB3DC(2, 100.0f, 0.85f);
baanim_playForDuration_onceSmooth(ASSET_D3_ANIM_BSBFLY_BEAKBOMB_REBOUND, 1.2f);
@@ -645,7 +645,7 @@ void func_802A4A78(s32 arg0) {
func_80257F18(sp30, sp3C, &sp28);
yaw_setIdeal(mlNormalizeAngle(sp28 + 180.0f));
yaw_applyIdeal();
baphysics_set_target_horizontal_velocity(sp20);
baphysics_set_target_horizontal_velocity(velocity);
baphysics_set_target_yaw(sp28);
baphysics_set_horizontal_velocity(sp28, baphysics_get_target_horizontal_velocity());
if ((arg0 == 1) && (map_get() == MAP_90_GL_BATTLEMENTS)) {
@@ -654,7 +654,7 @@ void func_802A4A78(s32 arg0) {
}
func_8029C7F4(1, 1, 2, BA_PHYSICS_LOCKED_ROTATION);
baphysics_set_vertical_velocity(800.0f);
baphysics_set_gravity(sp2C);
baphysics_set_gravity(gravity);
baphysics_set_terminal_velocity(-4000.0f);
func_8029E070(1);
func_802914CC(4);
@@ -739,14 +739,14 @@ void func_802A4D90(void) {
void func_802A4EC8(void) {
s32 next_state;
AnimCtrl *sp18;
AnimCtrl *p_anim;
next_state = 0;
sp18 = baanim_getAnimCtrlPtr();
p_anim = baanim_getAnimCtrlPtr();
if (player_isStable()) {
next_state = BS_20_LANDING;
}
if (anctrl_isStopped(sp18) && (player_shouldFall() || func_80294530())) {
if (anctrl_isStopped(p_anim) && (player_shouldFall() || func_80294530())) {
D_8037D346 = 1;
next_state = BS_24_FLY;
}

View File

@@ -31,7 +31,7 @@ void *D_8037D3E8;
u8 D_8037D3EC;
f32 D_8037D3F0;
u8 D_8037D3F4;
u8 D_8037D3F5;
u8 s_ate_wrong;
/* .code */
f32 __bscroc_getMaxVelocity(void){
@@ -47,7 +47,7 @@ void __bscroc_jumpSfx(void){
bsCrocJumpSfxIndex = 0;
}
void func_802ABE70(void){
void __bscroc_update_turbo_talon_trainers(void){
f32 sp1C = stateTimer_get(STATE_TIMER_3_TURBO_TALON);
basfx_updateClockSfxSource(stateTimer_getPrevious(STATE_TIMER_3_TURBO_TALON), sp1C);
if(baflag_isTrue(BA_FLAG_10_TOUCHING_TURBO_TRAINERS) && bs_getState() != BS_17_BTROT_EXIT){
@@ -67,7 +67,7 @@ void func_802ABE70(void){
}
}
void func_802ABF54(void){
void __bscroc_update_velocity(void){
f32 sp1C = bastick_getZonePosition();
if(bastick_getZone() == 0){
baphysics_set_target_horizontal_velocity(0.0f);
@@ -77,7 +77,7 @@ void func_802ABF54(void){
}
}
void func_802ABFBC(void){
void __bscroc_end(void){
if(!bscroc_inSet(bs_getNextState())){
bastick_resetZones();
func_8029E070(0);
@@ -117,7 +117,7 @@ void bscroc_idle_init(void){
void bscroc_idle_update(void){
enum bs_e next_state = 0;
func_802ABE70();
__bscroc_update_turbo_talon_trainers();
func_80299628(0);
if(player_shouldFall())
next_state = BS_61_CROC_FALL;
@@ -140,7 +140,7 @@ void bscroc_idle_update(void){
}
void bscroc_idle_end(void){
func_802ABFBC();
__bscroc_end();
func_802900FC();
}
@@ -154,9 +154,9 @@ void bscroc_walk_init(void){
void bscroc_walk_update(void){
enum bs_e next_state = 0;
func_802ABE70();
__bscroc_update_turbo_talon_trainers();
func_80299628(0);
func_802ABF54();
__bscroc_update_velocity();
func_8029AD28(0.1f, 4);
func_8029AD28(0.6f, 3);
@@ -176,7 +176,7 @@ void bscroc_walk_update(void){
}
void bscroc_walk_end(void){
func_802ABFBC();
__bscroc_end();
func_802900FC();
}
@@ -196,7 +196,7 @@ void bscroc_jump_init(void){
yaw_setIdeal(bastick_getAngleRelativeToBanjo());
}
baphysics_set_target_yaw(yaw_getIdeal());
func_802ABF54();
__bscroc_update_velocity();
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
baphysics_set_vertical_velocity(bsCrocInitialJumpVelocity);
baphysics_set_gravity(bsCrocGravity);
@@ -209,8 +209,8 @@ void bscroc_jump_update(void){
AnimCtrl *aCtrl = baanim_getAnimCtrlPtr();
f32 player_velocity[3];
func_802ABE70();
func_802ABF54();
__bscroc_update_turbo_talon_trainers();
__bscroc_update_velocity();
baphysics_get_velocity(player_velocity);
if(bakey_released(BUTTON_A) && 0.0f < player_velocity[1])
baphysics_reset_gravity();
@@ -267,7 +267,7 @@ void bscroc_jump_update(void){
void bscroc_jump_end(void){
baphysics_reset_gravity();
func_802ABFBC();
__bscroc_end();
}
void bscroc_fall_init(void){
@@ -288,9 +288,9 @@ void bscroc_fall_update(void){
AnimCtrl * aCtrl = baanim_getAnimCtrlPtr();
f32 player_velocity[3];
func_802ABE70();
__bscroc_update_turbo_talon_trainers();
func_80299628(0);
func_802ABF54();
__bscroc_update_velocity();
baphysics_get_velocity(player_velocity);
switch(D_8037D3EC){
@@ -325,7 +325,7 @@ void bscroc_fall_update(void){
}
void bscroc_fall_end(void){
func_802ABFBC();
__bscroc_end();
}
static void __bscroc_recoil_init(s32 damage){
@@ -363,7 +363,7 @@ static void __bscroc_recoil_init(s32 damage){
static void __bscroc_recoil_update(void){
enum bs_e next_state = 0;
func_802ABE70();
__bscroc_update_turbo_talon_trainers();
if(baanim_isAt(0.5f))
baeyes_open();
@@ -388,7 +388,7 @@ void __bscroc_recoil_end(void){
baphysics_reset_gravity();
baMarker_collisionOn();
baeyes_open();
func_802ABFBC();
__bscroc_end();
}
void bscroc_ow_init(void){
@@ -454,7 +454,7 @@ void bscroc_die_init(void){
void bscroc_die_update(void){
enum bs_e next_state = 0;
func_802ABE70();
__bscroc_update_turbo_talon_trainers();
baphysics_set_target_horizontal_velocity(D_8037D3E0);
func_80299628(0);
switch(D_8037D3EC){
@@ -524,7 +524,7 @@ void bscroc_bite_update(void){
enum bs_e next_state = 0;
AnimCtrl *aCtrl = baanim_getAnimCtrlPtr();
func_802ABE70();
__bscroc_update_turbo_talon_trainers();
func_80299628(0);
if(anctrl_isAt(aCtrl, 0.99f)){
switch(++D_8037D3F4){
@@ -558,7 +558,7 @@ void bscroc_bite_update(void){
void bscroc_bite_end(void){
_bscrocHitboxActive = FALSE;
func_802ABFBC();
__bscroc_end();
}
void bscroc_eat_bad_init(void){
@@ -571,7 +571,7 @@ void bscroc_eat_bad_update(void){
enum bs_e next_state = 0;
AnimCtrl *aCtrl = baanim_getAnimCtrlPtr();
func_802ABE70();
__bscroc_update_turbo_talon_trainers();
func_80299628(0);
if(anctrl_isAt(aCtrl, 0.3518f)){
func_8030E58C(SFX_A0_COUGHING, 0.9f);
@@ -593,7 +593,7 @@ void bscroc_eat_bad_update(void){
}
void bscroc_eat_bad_end(void){
func_802ABFBC();
__bscroc_end();
}
@@ -608,8 +608,8 @@ void func_802AD2A8(Gfx **gdl, Mtx **mPtr, void *arg2){
}
void func_802AD318(void){
D_8037D3F5 = 1;
void bscroc_set_ate_wrong_thing(void){
s_ate_wrong = 1;
}
void bscroc_eat_good_init(void){
@@ -618,22 +618,22 @@ void bscroc_eat_good_init(void){
baModel_setPostDraw(func_802AD2A8);
D_8037D3E8 = assetcache_get(func_80294974());
D_8037D3F0 = 1.0f;
D_8037D3F5 = 0;
s_ate_wrong = 0;
D_8037D3F4 = 0;
}
int func_802AD3A0(void){
return D_8037D3F5;
int bscroc_ate_wrong_thing(void){
return s_ate_wrong;
}
void bscroc_eat_good_update(void){
enum bs_e next_state = 0;
AnimCtrl *aCtrl = baanim_getAnimCtrlPtr();
func_802ABE70();
__bscroc_update_turbo_talon_trainers();
D_8037D3F0 = ml_max_f(0.1f, D_8037D3F0 - 0.05);
func_80299628(0);
func_802ABF54();
__bscroc_update_velocity();
if(anctrl_isAt(aCtrl, 0.99f)){
switch(++D_8037D3F4){
case 1:
@@ -644,7 +644,7 @@ void bscroc_eat_good_update(void){
anctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
break;
case 3:
if(D_8037D3F5)
if(s_ate_wrong)
next_state = BS_CROC_EAT_BAD;
else
next_state = BS_5E_CROC_IDLE;
@@ -662,13 +662,13 @@ void bscroc_eat_good_update(void){
}
void bscroc_eat_good_end(void){
D_8037D3F5 = 0;
s_ate_wrong = 0;
assetcache_release(D_8037D3E8);
baModel_setPostDraw(0);
func_802ABFBC();
__bscroc_end();
}
void func_802AD56C(void){
void bscroc_locked_enter(void){
baanim_playForDuration_loopSmooth(ASSET_E1_ANIM_BSCROC_IDLE, 1.0f);
func_8029C7F4(1,1,3, BA_PHYSICS_NORMAL);
baphysics_set_target_horizontal_velocity(0.0f);
@@ -676,9 +676,9 @@ void func_802AD56C(void){
func_802B3A50();
}
void func_802AD5C0(void){
void bscroc_locked_update(void){
enum bs_e next_state = 0;
func_802ABE70();
__bscroc_update_turbo_talon_trainers();
func_802B3A50();
func_80299628(0);
func_8029C6D0();
@@ -689,11 +689,11 @@ void func_802AD5C0(void){
bs_setState(next_state);
}
void func_802AD614(void){
void bscroc_locked_end(void){
pitch_setIdeal(0.0f);
roll_setIdeal(0.0f);
func_8029C748();
func_802ABFBC();
__bscroc_end();
}
void bscroc_drone_init(void){
@@ -701,11 +701,11 @@ void bscroc_drone_init(void){
}
void bscroc_drone_update(void){
func_802ABE70();
__bscroc_update_turbo_talon_trainers();
bsdrone_update();
}
void bscroc_drone_end(void){
bsdrone_end();
func_802ABFBC();
__bscroc_end();
}

View File

@@ -119,17 +119,17 @@ void bsjig_jiggy_end(void){
if( jiggyscore_total() == 2
&& map_get() == MAP_2_MM_MUMBOS_MOUNTAIN
){
sp2C = 0xb51;
sp2C = VER_SELECT(0xb51, 0x96f, 0, 0);
sp28 = 0xe;
}
else{//L802B0E34
switch(sp24){
case 0x13:
sp2C = 0xa16;
sp2C = VER_SELECT(0xa16, 0x916, 0, 0);
break;
case 0x17:
if(!levelSpecificFlags_get(LEVEL_FLAG_0_CC_TOKEN_TOOTH_OPEN) || !levelSpecificFlags_get(LEVEL_FLAG_1_CC_JIGGY_TOOTH_OPEN))
sp2C = 0xd2d;
sp2C = VER_SELECT(0xd2d, 0xa00, 0, 0);
break;
}
}//L802B0E88
@@ -141,8 +141,14 @@ void bsjig_jiggy_end(void){
}
void bsjig_jiggy_interrupt(void){
if(bs_getInterruptType() == BS_INTR_26)
if(bs_getInterruptType() == BS_INTR_26) {
func_80296608();
}
#if VERSION != VERSION_USA_1_0
else {
func_80296590();
}
#endif
}
void bsjig_notedoor_end(void){
@@ -169,7 +175,7 @@ void bsjig_notedoor_init(void){
anctrl_setIndex(aCtrl, ASSET_282_ANIM_BSJIG_NOTEDOOR);
anctrl_setDuration(aCtrl, 3.6f);
anctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
anctrl_start(aCtrl, "bsjig.c", 0x14d);
anctrl_start(aCtrl, "bsjig.c", VER_SELECT(0x14d, 0x14f, 0, 0));
yaw_setIdeal(func_8029B41C());
func_8029C7F4(1,1,3, BA_PHYSICS_NORMAL);
baphysics_set_target_horizontal_velocity(0.0f);

View File

@@ -494,7 +494,7 @@ enum bsgroup_e player_movementGroup(void) {
case BS_6E_CROC_BITE://L8028EE38
case BS_70_CROC_EAT_GOOD://L8028EE38
if(func_802AD3A0())
if(bscroc_ate_wrong_thing())
return BSGROUP_0_NONE;
return BSGROUP_7_CROC_ATTACK;

View File

@@ -139,7 +139,7 @@ bsMap D_80363824[] ={
{BS_BEE_DIE, bsbeemain_die_init, func_802A1DD8, func_802A1F2C, func_80296590},
{0x0000008B, func_802A0590, func_802A0630, func_802A0704, func_802B5350},
{BS_BEE_FLY, bsbeefly_enter, bsbeefly_update, bsbeefly_end, func_802B5350},
{BS_8D_CROC_LOCKED, func_802AD56C, func_802AD5C0, func_802AD614, func_802B5350},
{BS_8D_CROC_LOCKED, bscroc_locked_enter, bscroc_locked_update, bscroc_locked_end, func_802B5350},
{0x0000008E, func_8029F398, func_8029F3F4, func_8029F440, func_802B5350},
{BS_8F_PUMPKIN_LOCKED, func_802B34A0, func_802B34F8, func_802B353C, func_802B5350},
{BS_FLY_OW, func_802A4D30, func_802A4D50, func_802A4D70, func_802A505C},

View File

@@ -299,7 +299,7 @@ void func_80296608(void){
current_state = bs_getState();
switch(bs_getInterruptType()){
case BS_INTR_18_CROC_ATE_WRONG: //L80296654
func_802AD318();
bscroc_set_ate_wrong_thing();
sp2C = 2;
break;
case BS_INTR_A: //L8029666C