diff --git a/decompressed.pal.yaml b/decompressed.pal.yaml index a54c3493..47d1036a 100644 --- a/decompressed.pal.yaml +++ b/decompressed.pal.yaml @@ -521,7 +521,7 @@ segments: # - [0xF5EA40, c, code_90E0] #DONE # - [0xF5EBF0, c, code_9290] #DONE # - [0xF5EDB0, c, code_9450] #DONE - # - [0xF5F260, c, code_9900] #DONE + # - [0xF5F260, c, babuzz] #DONE # - [0xF5F530, c, code_9BD0] #DONE # - [0xF5FF60, c, code_A600] #DONE # - [0xF60040, c, statetimer] #DONE @@ -537,7 +537,7 @@ segments: # - [0xF63160, c, ba/carry] #DONE # - [0xF63310, c, code_D9B0] #DONE # - [0xF638D0, c, code_DF70] #DONE - # - [0xF63D70, c, code_E410] #DONE + # - [0xF63D70, c, bakey] #DONE # - [0xF63FE0, c, abilityprogress] #DONE # - [0xF64270, c, code_E910] #DONE # - [0xF647A0, c, code_EE40] #DONE @@ -560,7 +560,7 @@ segments: # - [0xF690E0, c, code_13780] #DONE # - [0xF69260, c, bsStoredState] #DONE # - [0xF69360, c, code_13A00] #DONE - # - [0xF69920, c, code_13FC0] #DONE + # - [0xF69920, c, bastick] #DONE # - [0xF69D80, c, code_14420] #DONE # - [0xF6B880, c, code_15F20] #DONE # - [0xF6B970, c, code_16010] #DONE @@ -1132,7 +1132,7 @@ segments: - [0x1066E30, .rodata, code_7060] - [0x1066F60, bin, core2_untouched_rodata] # - [0x1042F90, .rodata, code_9450] - # - [0x1042FC0, .rodata, code_9900] + # - [0x1042FC0, .rodata, babuzz] # - [0x1042FD0, .rodata, code_9BD0] # - [0x1043010, .rodata, ba/model] # - [0x10430C0, .rodata, ba/drone] @@ -1155,7 +1155,7 @@ segments: # - [0x1043660, .rodata, code_12360] # - [0x1043690, .rodata, code_126C0] # - [0x10436C0, .rodata, code_12F30] - # - [0x10436E0, .rodata, code_13FC0] + # - [0x10436E0, .rodata, bastick] # - [0x10436F0, .rodata, code_14420] # - [0x1043770, .rodata, code_16010] # - [0x1043BD0, .rodata, code_16C60] @@ -1387,7 +1387,7 @@ segments: # - [0x0106C980, .bss, code_90E0] # - [0x0106C980, .bss, code_9290] # - [0x0106C980, .bss, code_9450] - # - [0x0106C980, .bss, code_9900] + # - [0x0106C980, .bss, babuzz] # - [0x0106C980, .bss, code_9BD0] # - [0x0106C980, .bss, code_A600] # - [0x0106C980, .bss, statetimer] @@ -1401,7 +1401,7 @@ segments: # - [0x0106C980, .bss, ba/carry] # - [0x0106C980, .bss, code_D9B0] # - [0x0106C980, .bss, code_DF70] - # - [0x0106C980, .bss, code_E410] + # - [0x0106C980, .bss, bakey] # - [0x0106C980, .bss, abilityprogress] # - [0x0106C980, .bss, code_E910] # - [0x0106C980, .bss, code_EE40] @@ -1424,7 +1424,7 @@ segments: # - [0x0106C980, .bss, code_13780] # - [0x0106C980, .bss, bsStoredState] # - [0x0106C980, .bss, code_13A00] - # - [0x0106C980, .bss, code_13FC0] + # - [0x0106C980, .bss, bastick] # - [0x0106C980, .bss, code_14420] # - [0x0106C980, .bss, code_15F20] # - [0x0106C980, .bss, code_16010] diff --git a/decompressed.us.v10.yaml b/decompressed.us.v10.yaml index 888b6128..d679b6f1 100644 --- a/decompressed.us.v10.yaml +++ b/decompressed.us.v10.yaml @@ -504,41 +504,41 @@ segments: vram: 0x80286F90 # via https://hack64.net/wiki/doku.php?id=player_kazooie:ram_map follows_vram: core1 subsegments: - - [0xF55960, c, anctrl] - - [0xF56430, c, anim/sprite] - - [0xF56A40, c, animcache] - - [0xF56EB0, c, code_1550] - - [0xF57290, c, anseq] - - [0xF57BA0, c, code_2240] - - [0xF581F0, c, ba/anim] + - [0xF55960, c, anctrl] #anctrl + - [0xF56430, c, anim/sprite] #anctrl2 + - [0xF56A40, c, animcache] # andb1 + - [0xF56EB0, c, code_1550] # andb2 + - [0xF57290, c, anseq] # anseq + - [0xF57BA0, c, code_2240] + - [0xF581F0, c, ba/anim] # anstate??? - [0xF58DE0, c, snackerctl] - [0xF59330, c, code_39D0] - - [0xF5A120, c, ba/marker] + - [0xF5A120, c, ba/marker] #babanjo? baavatar? - [0xF5C490, c, code_6B30] - [0xF5C730, c, ba/carriedobj] - [0xF5C9C0, c, code_7060] - - [0xF5E700, c, ba/flap] + - [0xF5E700, c, ba/flap] #babflap? - [0xF5EA40, c, code_90E0] - [0xF5EBF0, c, code_9290] - - [0xF5EDB0, c, code_9450] - - [0xF5F260, c, code_9900] + - [0xF5EDB0, c, code_9450] + - [0xF5F260, c, babuzz] # babuzz - [0xF5F530, c, code_9BD0] - [0xF5FF60, c, code_A600] - [0xF60040, c, statetimer] - [0xF602C0, c, code_A960] - - [0xF603C0, c, ba/model] + - [0xF603C0, c, ba/model] # badraw? - [0xF60FB0, c, ba/drone] - [0xF611B0, c, code_B850] - [0xF614B0, c, eggshatter] - - [0xF61680, c, code_BD20] + - [0xF61680, c, code_BD20] # baeyes - [0xF61A40, c, ba/falldamage] - - [0xF61D50, c, code_C3F0] + - [0xF61D50, c, code_C3F0] # baflag - [0xF61E10, c, code_C4B0] - [0xF63160, c, ba/carry] - [0xF63310, c, code_D9B0] - - [0xF638D0, c, code_DF70] - - [0xF63D70, c, code_E410] - - [0xF63FE0, c, abilityprogress] + - [0xF638D0, c, code_DF70] # bainput + - [0xF63D70, c, bakey] # bakey + - [0xF63FE0, c, abilityprogress] #baknow - [0xF64270, c, code_E910] - [0xF647A0, c, code_EE40] - [0xF648B0, c, code_EF50] @@ -550,20 +550,20 @@ segments: - [0xF66DC0, c, code_11460] - [0xF66FC0, c, code_11660] - [0xF67130, c, code_117D0] - - [0xF671D0, c, code_11870] + - [0xF671D0, c, code_11870] # barest - [0xF674A0, c, roll] - [0xF67740, c, yaw] - [0xF67CC0, c, code_12360] - - [0xF68020, c, code_126C0] + - [0xF68020, c, code_126C0] # basfx - [0xF68890, c, code_12F30] - [0xF68FD0, c, bsList] - - [0xF690E0, c, code_13780] - - [0xF69260, c, bsStoredState] + - [0xF690E0, c, code_13780] + - [0xF69260, c, bsStoredState] #bastate - [0xF69360, c, code_13A00] - - [0xF69920, c, code_13FC0] + - [0xF69920, c, bastick] - [0xF69D80, c, code_14420] - [0xF6B880, c, code_15F20] - - [0xF6B970, c, code_16010] + - [0xF6B970, c, code_16010] # baswamp? - [0xF6C5C0, c, code_16C60] - [0xF6CB50, c, batimer] - [0xF6CDB0, c, bs/ant] @@ -1130,7 +1130,7 @@ segments: - [0x1042D70, .rodata, code_6B30] - [0x1042E60, .rodata, code_7060] - [0x1042F90, .rodata, code_9450] - - [0x1042FC0, .rodata, code_9900] + - [0x1042FC0, .rodata, babuzz] - [0x1042FD0, .rodata, code_9BD0] - [0x1043010, .rodata, ba/model] - [0x10430C0, .rodata, ba/drone] @@ -1153,7 +1153,7 @@ segments: - [0x1043660, .rodata, code_12360] - [0x1043690, .rodata, code_126C0] - [0x10436C0, .rodata, code_12F30] - - [0x10436E0, .rodata, code_13FC0] + - [0x10436E0, .rodata, bastick] - [0x10436F0, .rodata, code_14420] - [0x1043770, .rodata, code_16010] - [0x1043BD0, .rodata, code_16C60] @@ -1385,7 +1385,7 @@ segments: - [0x1048560, .bss, code_90E0] - [0x1048560, .bss, code_9290] - [0x1048560, .bss, code_9450] - - [0x1048560, .bss, code_9900] + - [0x1048560, .bss, babuzz] - [0x1048560, .bss, code_9BD0] - [0x1048560, .bss, code_A600] - [0x1048560, .bss, statetimer] @@ -1399,7 +1399,7 @@ segments: - [0x1048560, .bss, ba/carry] - [0x1048560, .bss, code_D9B0] - [0x1048560, .bss, code_DF70] - - [0x1048560, .bss, code_E410] + - [0x1048560, .bss, bakey] - [0x1048560, .bss, abilityprogress] - [0x1048560, .bss, code_E910] - [0x1048560, .bss, code_EE40] @@ -1422,7 +1422,7 @@ segments: - [0x1048560, .bss, code_13780] - [0x1048560, .bss, bsStoredState] - [0x1048560, .bss, code_13A00] - - [0x1048560, .bss, code_13FC0] + - [0x1048560, .bss, bastick] - [0x1048560, .bss, code_14420] - [0x1048560, .bss, code_15F20] - [0x1048560, .bss, code_16010] diff --git a/include/functions.h b/include/functions.h index 5c3e73ab..65894adb 100644 --- a/include/functions.h +++ b/include/functions.h @@ -64,8 +64,8 @@ void player_getPosition(f32 dst[3]); void player_getRotation(f32 *dst); -int button_pressed(s32); -u32 button_held(s32); +int bakey_pressed(s32); +u32 bakey_held(s32); void pitch_setIdeal(f32); f32 pitch_get(void); @@ -285,11 +285,11 @@ void bsStoredState_setLongLegTimer(f32); void bsStoredState_setTrot(bool); void bsStoredState_setTurboTimer(f32); void func_8029AD28(f32, s32); -f32 func_8029B2DC(void); -f32 func_8029B2E8(void); -f32 func_8029B30C(void); -void func_8029B324(s32, f32); -f32 func_8029B33C(void); +f32 bastick_getY(void); +f32 bastick_distance(void); +f32 bastick_getZonePosition(void); +void bastick_setZoneMax(s32, f32); +f32 bastick_getAngleRelativeToBanjo(void); f32 func_8029B41C(void); ParticleEmitter *func_8029B950(f32[3],f32); void func_8029C3E8(f32, f32); diff --git a/manual_syms.pal.txt b/manual_syms.pal.txt index 160078ac..468a558a 100644 --- a/manual_syms.pal.txt +++ b/manual_syms.pal.txt @@ -84,8 +84,8 @@ set_throw_target_position = 0x802948e0; set_turbo_duration = 0x80294908; func_80294AF4 = 0x80294914; func_80294E54 = 0x80294c74; -func_802955A4 = 0x802953c4; -func_802955BC = 0x802953dc; +bakey_getAndSetState = 0x802953c4; +bakey_disableAll = 0x802953dc; ability_hasLearned = 0x80295618; ability_setLearned = 0x80295658; func_80295914 = 0x80295754; @@ -137,7 +137,7 @@ bs_getState = 0x8029a608; bs_checkInterrupt = 0x8029a65c; bsStoredState_getTransformation = 0x8029a734; bsStoredState_setTrot = 0x8029a7c0; -func_8029B318 = 0x8029b158; +bastick_lockAtzero = 0x8029b158; func_8029B41C = 0x8029b25c; func_8029B73C = 0x8029b57c; bs_getIdleState = 0x8029bdb8; diff --git a/src/SM/ch/smbottles.c b/src/SM/ch/smbottles.c index 5976a41c..86f1f398 100644 --- a/src/SM/ch/smbottles.c +++ b/src/SM/ch/smbottles.c @@ -427,7 +427,7 @@ void chSmBottles_update(Actor *this) { f32 plyr_pos[3]; void *sp40; int sp34; - int button_pressed; + int bakey_pressed; // Checks the actor's selector value is lower than 0x9 // Anything higher is a non-Spiral Mountain ability, and should use a different actor id @@ -594,25 +594,25 @@ void chSmBottles_update(Actor *this) { __chSmBottles_setState(this, SM_BOTTLES_STATE_4_UNKNOWN); }//L8038A1B8 - button_pressed = -1; + bakey_pressed = -1; if (this->unk38_0) { this->lifetime_value += time_getDelta(); if (func_803114C4() != 0xe1d) { if (face_buttons[FACE_BUTTON(BUTTON_A)] == TRUE) { - button_pressed = 1; + bakey_pressed = 1; } else if (face_buttons[FACE_BUTTON(BUTTON_B)] == TRUE) { - button_pressed = 0; + bakey_pressed = 0; } }//L8038A218 - if (button_pressed != -1) { - fileProgressFlag_set(FILEPROG_DB_SKIPPED_TUTORIAL, button_pressed ? 0 : 1); - gcdialog_showText(button_pressed ? ASSET_E07_DIALOG_BOTTLES_UNKNOWN : ASSET_E09_DIALOG_BOTTLES_SKIPPED_TUTORIAL, 0xe, this->position, this->marker, __chSmBottles_textCallback,__chSmBottles_textActions); + if (bakey_pressed != -1) { + fileProgressFlag_set(FILEPROG_DB_SKIPPED_TUTORIAL, bakey_pressed ? 0 : 1); + gcdialog_showText(bakey_pressed ? ASSET_E07_DIALOG_BOTTLES_UNKNOWN : ASSET_E09_DIALOG_BOTTLES_SKIPPED_TUTORIAL, 0xe, this->position, this->marker, __chSmBottles_textCallback,__chSmBottles_textActions); - if (!button_pressed) { + if (!bakey_pressed) { __chSmBottles_skipIntroTutorial(); } diff --git a/src/SM/code_F0.c b/src/SM/code_F0.c index 83cb6207..06105abe 100644 --- a/src/SM/code_F0.c +++ b/src/SM/code_F0.c @@ -34,7 +34,7 @@ s32 D_8038AAE4 = 0x8C0992D1; //compiled SM_code_crc_2 union { u8 byte[4]; s32 word; -} D_8038AAE8 = {0x00, 0x01, 0xEB, 0x56}; //compiled SM_data_crc_1 (with this zeroed out) +} D_8038AAE8 = {0x00, 0x01, 0xEB, 0x56}; //compiled SM_data_crc_1 (with this disabled out) s32 D_8038AAEC = 0; /* .bss */ diff --git a/src/core2/ba/physics.c b/src/core2/ba/physics.c index 42864216..c2902001 100644 --- a/src/core2/ba/physics.c +++ b/src/core2/ba/physics.c @@ -274,8 +274,8 @@ void baphysics_update(void){ func_8029740C(); break; case BA_PHYSICS_AIRBORN: //L80297840 - if(0.0f < func_8029B2E8()){ - baphysics_set_target_yaw(func_8029B33C()); + if(0.0f < bastick_distance()){ + baphysics_set_target_yaw(bastick_getAngleRelativeToBanjo()); } __baphysics_update_normal(); break; diff --git a/src/core2/babuzz.c b/src/core2/babuzz.c new file mode 100644 index 00000000..573cded6 --- /dev/null +++ b/src/core2/babuzz.c @@ -0,0 +1,79 @@ +#include +#include "functions.h" +#include "variables.h" + +/* .bss */ +u8 baBuzzSfxSource; +struct { + f32 volume; + s32 sample_rate; +}D_8037C048; +struct{ + f32 volume; + s32 sample_rate; +} D_8037C050; +f32 D_8037C058; + +/* .code */ +f32 babuzz_80290890(f32 arg0){ + f64 temp_f2; + temp_f2 = func_80257A44(arg0, 0.7f); + arg0 = temp_f2 + temp_f2; + if(1.0 <= arg0){ + arg0 = 2.0 - arg0; + } + arg0 = arg0 - 0.5; + return (f64)arg0 * 0.04; +} + +f32 babuzz_80290920(f32 arg0, f32 arg1, f32 arg2){ + f32 tick = time_getDelta(); + if(arg0 < arg1){ + arg0 += tick*arg2; + if(arg1 < arg0){ + arg0 = arg1; + } + } + else{ + arg0-= tick*arg2; + if(arg0 < arg1){ + arg0 = arg1; + } + } + return arg0; +} + +void babuzz_release(void){ + sfxsource_freeSfxsourceByIndex(baBuzzSfxSource); + baBuzzSfxSource = 0; +} + +void babuzz_reset(void){ + baBuzzSfxSource = sfxsource_createSfxsourceAndReturnIndex(); + D_8037C050.volume = 1.0f; + + D_8037C048.sample_rate = D_8037C050.sample_rate = 13000; + D_8037C048.volume = D_8037C050.volume; + sfxsource_setSfxId(baBuzzSfxSource, 0x3fa); + func_8030DD14(baBuzzSfxSource, 2); + sfxsource_playSfxAtVolume(baBuzzSfxSource, D_8037C048.volume); + sfxsource_setSampleRate(baBuzzSfxSource, D_8037C048.sample_rate); + D_8037C058 = 0.0f; +} + +void babuzz_update(void){ + D_8037C058 += time_getDelta(); + D_8037C048.volume = babuzz_80290920(D_8037C048.volume, D_8037C050.volume, 0.3f); + D_8037C048.sample_rate = babuzz_80290920((f32)D_8037C048.sample_rate, (f32)D_8037C050.sample_rate, 100.0f); + sfxsource_playSfxAtVolume(baBuzzSfxSource, babuzz_80290890(D_8037C058) + D_8037C048.volume); + sfxsource_setSampleRate(baBuzzSfxSource, D_8037C048.sample_rate); + func_8030E2C4(baBuzzSfxSource); +} + +void babuzz_setVolume(f32 arg0){ + D_8037C050.volume = arg0; +} + +void babuzz_setSampleRate(s32 arg0){ + D_8037C050.sample_rate = arg0; +} diff --git a/src/core2/bakey.c b/src/core2/bakey.c new file mode 100644 index 00000000..1372933f --- /dev/null +++ b/src/core2/bakey.c @@ -0,0 +1,80 @@ +#include +#include "functions.h" +#include "variables.h" + +/* .bss */ +struct { + u32 pressed_count[0xE]; + u32 released_count[0xE]; + u8 state[0xE]; + u8 prev_state[0xE]; +} bakey; + + +/* .code */ +void bakey_reset(void){ + s32 i; + + for(i = 0; i<0xe; i++){ + bakey.pressed_count[i] = bakey.released_count[i] = 0; + bakey.state[i] = bakey.prev_state[i] = 0; + } +} + +void bakey_update(void){ + s32 i; + + bakey.pressed_count[0] = controller_getStartButton(0); + func_8024E60C(0, &bakey.pressed_count[1]); + func_8024E6E0(0, &bakey.pressed_count[4]); + controller_copyFaceButtons(0, &bakey.pressed_count[8]); + for(i=0; i<0xE; i++){//L802954A8 + bakey.prev_state[i] = bakey.state[i]; + if(bakey.state[i]){ + bakey.pressed_count[i] = 0; + if(bakey.state[i] == 2) + bakey.state[i] = 0; + } + bakey.released_count[i] = (bakey.pressed_count[i])? 0: bakey.released_count[i] + 1 ; + } + if(gctransition_8030BDC0()){ + bakey_reset(); + } +} + + +int bakey_heldCount(s32 button_indx){ + return bakey.pressed_count[button_indx]; +} + +int bakey_releaseCount(s32 button_indx){ + return bakey.released_count[button_indx]; +} + +int bakey_pressed(s32 button_indx){ + return bakey.pressed_count[button_indx] == 1; +} + +int bakey_newlyReleased(s32 button_indx){ + return bakey.released_count[button_indx] == 1; +} + +u32 bakey_held(s32 button_indx){ + return bakey.pressed_count[button_indx]; +} + +int bakey_released(s32 button_indx){ + return bakey.released_count[button_indx]; +} + +int bakey_getAndSetState(s32 button_indx, s32 val){ + bakey.state[button_indx] = val; + return bakey.prev_state[button_indx]; +} + +void bakey_disableAll(s32 arg0){ + s32 i; + for(i=0; i<0xe; i++){ + bakey_getAndSetState(i, arg0); + } +} diff --git a/src/core2/bastick.c b/src/core2/bastick.c new file mode 100644 index 00000000..661c0cf9 --- /dev/null +++ b/src/core2/bastick.c @@ -0,0 +1,160 @@ +#include +#include "core1/core1.h" +#include "functions.h" +#include "variables.h" + +extern void controller_getJoystick(s32, f32*); +extern f32 player_getYaw(void); +extern void particleEmitter_setSphericalParticleVelocityRange(ParticleEmitter *this, f32 pitch_min, f32 yaw_min, f32 radial_min, f32 pitch_max, f32 yaw_max, f32 radial_max); +ParticleEmitter * func_802EDD8C(f32[3], f32, f32); +extern void func_80354030(f32[3], f32); +extern void func_80356074(f32[3], f32[3], f32, f32); +extern void func_80292864(f32, f32); + +/* .bss */ +struct { + f32 zone_position; + s32 zone; + f32 zone_markers[5]; + f32 value[2]; + f32 angle; + f32 distance; + s32 zeroed_count; + s32 nonzero_count; + u8 locked_at_zero; +} bastick; + +/*.code */ +f32 bastick_calculateZonePosition(f32 arg0, f32 arg1, f32 arg2){ + return (arg0 - arg1)/(arg2 - arg1); +} + +void bastick_updateZone(void) { + s32 i; + + if (bastick.distance <= bastick.zone_markers[0]) { + bastick.zone = 0; + bastick.zone_position = 0.0f; + return; + } + + if ((bastick.zone_markers[0] < bastick.distance) && (bastick.distance <= bastick.zone_markers[1])) { + bastick.zone = 1; + bastick.zone_position = bastick_calculateZonePosition(bastick.distance, bastick.zone_markers[0], bastick.zone_markers[1]); + return; + } + if ((bastick.zone_markers[1] < bastick.distance) && (bastick.distance <= bastick.zone_markers[2])) { + bastick.zone = 2; + bastick.zone_position = bastick_calculateZonePosition(bastick.distance, bastick.zone_markers[1], bastick.zone_markers[2]); + return; + } + if ((bastick.zone_markers[2] < bastick.distance) && (bastick.distance <= bastick.zone_markers[3])) { + bastick.zone = 3; + bastick.zone_position = bastick_calculateZonePosition(bastick.distance, bastick.zone_markers[2], bastick.zone_markers[3]); + return; + } + if ((bastick.zone_markers[3] < bastick.distance) && (bastick.distance <= bastick.zone_markers[4])) { + bastick.zone = 4; + bastick.zone_position = bastick_calculateZonePosition(bastick.distance, bastick.zone_markers[3], bastick.zone_markers[4]); + return; + } +} + +void bastick_resetZones(void) { + bastick_setZoneMax(0, 0.12f); + bastick_setZoneMax(1, 0.2f); + bastick_setZoneMax(2, 0.5f); + bastick_setZoneMax(3, 0.75f); + bastick_setZoneMax(4, 1.0f); +} + +void bastick_reset(void) { + bastick.value[0] = bastick.value[1] = bastick.distance = bastick.angle = bastick.zone_position = 0.0f; + bastick.locked_at_zero = 0; + bastick.nonzero_count = 0; + bastick.zeroed_count = 0; + bastick.zone = 0; + bastick_resetZones(); +} + +void bastick_update(void) { + controller_getJoystick(0, &bastick.value); + if (bastick.locked_at_zero) { + bastick.value[0] = bastick.value[1] = 0.0f; + } + bastick.distance = gu_sqrtf(bastick.value[0]*bastick.value[0] + bastick.value[1]*bastick.value[1]); + if (bastick.distance != 0.0f) { + bastick.zeroed_count = 0; + bastick.nonzero_count = (s32) (bastick.nonzero_count + 1); + bastick.angle = ml_acosf(bastick.value[1] / bastick.distance); + if (bastick.value[0] < 0.0f) { + bastick.angle = (f32) (180.0f - bastick.angle); + } + if (bastick.value[1] < 0.0f) { + bastick.angle = (f32) (360.0f - bastick.angle); + } + } else { + bastick.nonzero_count = 0; + bastick.zeroed_count = (s32) (bastick.zeroed_count + 1); + } + if (bastick.distance > 1.0) { + bastick.distance = 1.0f; + } + bastick_updateZone(); +} + + +f32 bastick_getX(void){ + return bastick.value[0]; +} + +f32 bastick_getY(void){ + return bastick.value[1]; +} + +f32 bastick_distance(void){ + return bastick.distance; +} + +f32 bastick_getAngle(void){ + return bastick.angle; +} + +s32 bastick_getZone(void){ + return bastick.zone; +} + +f32 bastick_getZonePosition(void){ + return bastick.zone_position; +} + +void bastick_lockAtzero(bool arg0){ + bastick.locked_at_zero = arg0; +} + +void bastick_setZoneMax(s32 zone_id, f32 value){ + bastick.zone_markers[zone_id] = value; +} + +f32 bastick_getAngleRelativeToBanjo(void){ + f32 sp1C[3]; + + _player_getPosition(sp1C); + return viewport_adjustAngleToRight(sp1C, bastick_getAngle()); +} + +s32 bastick_getNonzeroCount(void){ + return bastick.nonzero_count; +} + +s32 bastick_getCenteredCount(void){ + return bastick.zeroed_count; +} + +bool bastick_newlyActive(void){ + return bastick.nonzero_count == 1; +} + +bool bastick_newlyCentered(void){ + return bastick.zeroed_count == 1; +} diff --git a/src/core2/bs/ant.c b/src/core2/bs/ant.c index 14e2da10..585ac791 100644 --- a/src/core2/bs/ant.c +++ b/src/core2/bs/ant.c @@ -40,9 +40,9 @@ void func_8029E448(int arg0){ } void func_8029E48C(void){ - f32 sp1C = func_8029B30C(); + f32 sp1C = bastick_getZonePosition(); - if(func_8029B300() == 0){ + if(bastick_getZone() == 0){ baphysics_set_target_horizontal_velocity(0.0f); } else{ @@ -52,7 +52,7 @@ void func_8029E48C(void){ void func_8029E4EC(void){ if(!bsant_inSet(bs_getNextState())){ - func_8029B0C0(); + bastick_resetZones(); func_8029E070(0); func_8029E064(0); miscFlag_clear(MISC_FLAG_3); @@ -100,10 +100,10 @@ void bsant_idle_update(void){ if(should_look_first_person_camera()) new_state = badrone_look(); - if(func_8029B300() > 0) + if(bastick_getZone() > 0) new_state = BS_ANT_WALK; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) new_state = BS_ANT_JUMP; bs_setState(new_state); @@ -135,13 +135,13 @@ void bsant_walk_update(void){ if(anctrl_isAt(aCtrl, 0.2781f)) func_8029E448(1); - if(func_8029B300() == 0 && baphysics_is_slower_than(1.0f)) + if(bastick_getZone() == 0 && baphysics_is_slower_than(1.0f)) sp1C = BS_35_ANT_IDLE; if(func_8028B094()) sp1C = BS_38_ANT_FALL; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) sp1C = BS_ANT_JUMP; bs_setState(sp1C); @@ -164,8 +164,8 @@ void bsant_jump_init(void){ anctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); anctrl_start(aCtrl, "bsant.c", 0x17c); func_8029C7F4(1, YAW_STATE_1_DEFAULT, 3, BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f) - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f) + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); baphysics_set_target_yaw(yaw_getIdeal()); func_8029E48C(); baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity()); @@ -184,7 +184,7 @@ void bsant_jump_update(void){ func_8029E48C(); baphysics_get_velocity(sp1C); - if(button_released(BUTTON_A) && 0.0f < sp1C[1]) + if(bakey_released(BUTTON_A) && 0.0f < sp1C[1]) baphysics_reset_gravity(); switch(bsant_substate){ @@ -216,10 +216,10 @@ void bsant_jump_update(void){ }//L8029EB38 if(player_isStable()){ baphysics_set_target_horizontal_velocity(0.0f); - if(func_8029B300() > 0) + if(bastick_getZone() > 0) sp2C = BS_ANT_WALK; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) sp2C = BS_ANT_JUMP; } diff --git a/src/core2/bs/bBarge.c b/src/core2/bs/bBarge.c index 1ae66442..ccdbda15 100644 --- a/src/core2/bs/bBarge.c +++ b/src/core2/bs/bBarge.c @@ -88,7 +88,7 @@ void bsbarge_update(void){ sp24 = 0; plyrMvmnt = baanim_getAnimCtrlPtr(); - if(button_released(BUTTON_B)) + if(bakey_released(BUTTON_B)) miscFlag_set(MISC_FLAG_A); switch(D_8037D2A5){ case 0: diff --git a/src/core2/bs/bEggAss.c b/src/core2/bs/bEggAss.c index 7235e7ef..2f374242 100644 --- a/src/core2/bs/bEggAss.c +++ b/src/core2/bs/bEggAss.c @@ -50,7 +50,7 @@ void bseggass_update(void) { } } if (anctrl_isStopped(plyr_mvmt)) { - next_state = (button_held(BUTTON_Z))? BS_CROUCH : BS_1_IDLE; + next_state = (bakey_held(BUTTON_Z))? BS_CROUCH : BS_1_IDLE; } else if (0.6 < (f64) anctrl_getAnimTimer(plyr_mvmt)) { next_state = func_802ADCD4(0); } diff --git a/src/core2/bs/bEggHead.c b/src/core2/bs/bEggHead.c index ac2e5e5f..2b1e9c00 100644 --- a/src/core2/bs/bEggHead.c +++ b/src/core2/bs/bEggHead.c @@ -58,7 +58,7 @@ void bsegghead_update(void) { } } if (anctrl_isStopped(aCtrl)) { - next_state = (button_held(BUTTON_Z))? BS_CROUCH : BS_1_IDLE; + next_state = (bakey_held(BUTTON_Z))? BS_CROUCH : BS_1_IDLE; } else if (0.65 < (f64) anctrl_getAnimTimer(aCtrl)) { next_state = func_802ADCD4(0); diff --git a/src/core2/bs/bFlap.c b/src/core2/bs/bFlap.c index 2c8af21c..6418cddc 100644 --- a/src/core2/bs/bFlap.c +++ b/src/core2/bs/bFlap.c @@ -22,8 +22,8 @@ u8 D_8037D30C; void bsbflap_init(void) { baanim_playForDuration_onceSmooth(ASSET_18_ANIM_BSBFLAP_ENTER, 0.3f); func_8029C7F4(1, 1, 1, BA_PHYSICS_NORMAL); - if (func_8029B2E8() != 0.0f) { - yaw_setIdeal(func_8029B33C()); + if (bastick_distance() != 0.0f) { + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); } baphysics_set_target_yaw(yaw_getIdeal()); func_802B6FA8(); @@ -146,7 +146,7 @@ void bsbflap_update(void){ if(D_8037D301 == 4) { D_8037D300 = 3; } - if(button_released(BUTTON_A)){ + if(bakey_released(BUTTON_A)){ baphysics_reset_gravity(); baphysics_reset_terminal_velocity(); anctrl_setDuration(sp18, 1.0f); @@ -159,7 +159,7 @@ void bsbflap_update(void){ func_802A2810(); func_802A28CC(); func_802A298C(); - if(button_released(BUTTON_A)){ + if(bakey_released(BUTTON_A)){ baphysics_reset_gravity(); baphysics_reset_terminal_velocity(); anctrl_setDuration(sp18, 1.0f); diff --git a/src/core2/bs/bFlip.c b/src/core2/bs/bFlip.c index 2fccbf11..ed937c7c 100644 --- a/src/core2/bs/bFlip.c +++ b/src/core2/bs/bFlip.c @@ -17,8 +17,8 @@ u8 D_8037D310; /* .code */ void _bsbflip_802A2D60(void){ f32 sp1C; - sp1C = func_8029B30C(); - if(!func_8029B300()) + sp1C = bastick_getZonePosition(); + if(!bastick_getZone()) baphysics_set_target_horizontal_velocity(0.0f); else baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp1C, D_80364A2C, D_80364A30)); @@ -52,8 +52,8 @@ void bsbflip_init(void){ anctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); anctrl_start(aCtrl, "bsbflip.c", 0x80); func_8029C7F4(1,1,2, BA_PHYSICS_LOCKED_ROTATION); - func_8029B324(0, 0.03f); - func_8029B324(1, 1.0f); + bastick_setZoneMax(0, 0.03f); + bastick_setZoneMax(1, 1.0f); func_8029E070(1); func_80299BD4(); D_8037D310 = 0; @@ -73,11 +73,11 @@ void bsbflip_update(void){ switch(D_8037D310){ case 0://L802A2FD4 if(anctrl_isAt(aCtrl, 0.1837f)){ - if(func_8029B2E8() != 0.0f){ + if(bastick_distance() != 0.0f){ yaw_setUpdateState(2); func_8029957C(3); - if(func_8029B2E8){ //!!! BUG !!! - yaw_setIdeal(func_8029B33C()); + if(bastick_distance){ //!!! BUG !!! + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); } yaw_rotateTimed(1.0f); baphysics_set_type(BA_PHYSICS_AIRBORN); @@ -114,7 +114,7 @@ void bsbflip_update(void){ case 2://L802A3184 if(player_isFallTumbling()) sp24 = BS_3D_FALL_TUMBLING; - if(button_released(BUTTON_A)){ + if(bakey_released(BUTTON_A)){ anctrl_reset(aCtrl); anctrl_setSmoothTransition(aCtrl, 0); anctrl_setIndex(aCtrl, ASSET_61_ANIM_BSBFLIP_EXIT); @@ -164,5 +164,5 @@ void bsbflip_end(void){ baphysics_reset_gravity(); baphysics_reset_terminal_velocity(); func_8029E070(0); - func_8029B0C0(); + bastick_resetZones(); } diff --git a/src/core2/bs/bFly.c b/src/core2/bs/bFly.c index 96740874..adbf8646 100644 --- a/src/core2/bs/bFly.c +++ b/src/core2/bs/bFly.c @@ -7,7 +7,7 @@ #include "core2/ba/timer.h" extern void baModel_setYDisplacement(f32); -extern f32 func_8029B2D0(void); +extern f32 bastick_getX(void); extern void ncDynamicCam4_func_802BFE50(f32, f32, f32); extern void func_80354030(f32[3], f32); @@ -81,8 +81,8 @@ void func_802A354C(void){ f32 roll_range; f32 sp2C; - sp2C = func_8029B2D0(); - if(button_held(BUTTON_R)){ + sp2C = bastick_getX(); + if(bakey_held(BUTTON_R)){ yaw_setVelocityBounded(500.0f, 30.0f); yaw_range = 6.0f; roll_range = 85.0f; @@ -97,7 +97,7 @@ void func_802A354C(void){ } void func_802A3648(void){ - f32 tmp_f0 = func_8029B2DC(); + f32 tmp_f0 = bastick_getY(); if(tmp_f0 < 0.0f) pitch_setIdeal(ml_map_f(tmp_f0, -1.0f, 0.0f, 300.0f, 360.0f)); @@ -138,8 +138,8 @@ int func_802A37F8(void){ void bsbfly_enter_init(void){ baanim_playForDuration_onceSmooth(ASSET_45_ANIM_BSBFLY_ENTER, 1.4f); func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f) - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f) + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); baphysics_set_target_yaw(yaw_getIdeal()); baphysics_set_velocity(0); @@ -216,7 +216,7 @@ void bsbfly_update(void){ func_802A3648(); sp3C = pitch_get(); sp2C = 0; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) D_8037D347 = 1; if(D_8037D347 && globalTimer_getTime()%3 == 0){ @@ -292,7 +292,7 @@ void bsbfly_update(void){ D_8037D320 = ml_max_f(D_8037D320 - time_getDelta(), 0.0f); if( D_8037D320 == 0.0f - && button_pressed(BUTTON_B) + && bakey_pressed(BUTTON_B) && can_beak_bomb() ){ sp2C = 0; diff --git a/src/core2/bs/bLongLeg.c b/src/core2/bs/bLongLeg.c index 2710a3ac..2c941dea 100644 --- a/src/core2/bs/bLongLeg.c +++ b/src/core2/bs/bLongLeg.c @@ -39,8 +39,8 @@ void func_802A5208(int arg0){ } void func_802A524C(void){ - f32 sp1C = func_8029B30C(); - if(!func_8029B300()) + f32 sp1C = bastick_getZonePosition(); + if(!bastick_getZone()) baphysics_set_target_horizontal_velocity(0.0f); else baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp1C, D_80364A40, D_80364A44)); @@ -64,8 +64,8 @@ void func_802A531C(void){ void func_802A5374(void){ baModel_80292078(1, -50.0f); - func_8029B324(0, 0.03f); - func_8029B324(1, 1.0f); + bastick_setZoneMax(0, 0.03f); + bastick_setZoneMax(1, 1.0f); func_8029E070(1); func_8029E064(1); func_8029E0F4(1); @@ -79,7 +79,7 @@ void func_802A5404(void){ return; baModel_80292078(1,0); - func_8029B0C0(); + bastick_resetZones(); func_8029E070(0); func_8029E064(0); func_8029E0F4(0); @@ -171,16 +171,16 @@ void bsblongleg_stand_update(void){ if(should_look_first_person_camera()) next_state = badrone_look(); - if(button_pressed(BUTTON_B)) + if(bakey_pressed(BUTTON_B)) stateTimer_clear(STATE_TIMER_2_LONGLEG); - if(func_8029B300() > 0) + if(bastick_getZone() > 0) next_state = BS_LONGLEG_WALK; if(player_shouldSlideTrot()) next_state = BS_LONGLEG_SLIDE; - if(button_pressed(BUTTON_A) && player_isStable()) + if(bakey_pressed(BUTTON_A) && player_isStable()) next_state = BS_LONGLEG_JUMP; if(stateTimer_isDone(STATE_TIMER_2_LONGLEG)) @@ -222,16 +222,16 @@ void bsblongleg_walk_update(void){ func_802A5208(1); func_802A524C(); - if(button_pressed(BUTTON_B) && baphysics_get_target_horizontal_velocity() == 0.0f) + if(bakey_pressed(BUTTON_B) && baphysics_get_target_horizontal_velocity() == 0.0f) stateTimer_clear(STATE_TIMER_2_LONGLEG); - if(!func_8029B300() && baphysics_is_slower_than(1.0f)) + if(!bastick_getZone() && baphysics_is_slower_than(1.0f)) next_state = BS_26_LONGLEG_IDLE; if(player_shouldSlideTrot()) next_state = BS_LONGLEG_SLIDE; - if(button_pressed(BUTTON_A) && player_isStable()) + if(bakey_pressed(BUTTON_A) && player_isStable()) next_state = BS_LONGLEG_JUMP; if(stateTimer_isDone(STATE_TIMER_2_LONGLEG)) @@ -325,8 +325,8 @@ void bsblongleg_jump_init(void){ anctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); anctrl_start(aCtrl, "bsblongleg.c", 0x27F); func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f) - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f) + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); baphysics_set_target_yaw(yaw_getIdeal()); func_802A524C(); baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity()); @@ -345,7 +345,7 @@ void bsblongleg_jump_update(void){ func_802A531C(); func_802A524C(); baphysics_get_velocity(sp34); - if(button_released(BUTTON_A) && 0.0f < sp34[1]) + if(bakey_released(BUTTON_A) && 0.0f < sp34[1]) baphysics_reset_gravity(); sp30 = player_getYPosition() - func_80294438(); @@ -385,7 +385,7 @@ void bsblongleg_jump_update(void){ if(anctrl_isStopped(aCtrl)) sp44 = BS_26_LONGLEG_IDLE; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) sp44 = BS_LONGLEG_JUMP; if(stateTimer_isDone(STATE_TIMER_2_LONGLEG)) @@ -446,7 +446,7 @@ void bsblongleg_slide_update(void){ sp3C = BS_26_LONGLEG_IDLE; } - if(D_8037D358 == 0.0f && button_pressed(BUTTON_A)) + if(D_8037D358 == 0.0f && bakey_pressed(BUTTON_A)) sp3C = BS_LONGLEG_JUMP; if(func_802A51D0()) diff --git a/src/core2/bs/bShock.c b/src/core2/bs/bShock.c index cce81f95..c623eef0 100644 --- a/src/core2/bs/bShock.c +++ b/src/core2/bs/bShock.c @@ -25,8 +25,8 @@ void bsbshock_charge_init(void){ anctrl_start(aCtrl, "bsbshock.c", 0x61); func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f) - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f) + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); baphysics_set_target_yaw(yaw_getIdeal()); func_802B6FA8(); @@ -59,7 +59,7 @@ void bsbshock_charge_update(void){ } func_802B6FA8(); baphysics_get_velocity(sp1C); - if(button_released(BUTTON_A) && 0.0f < sp1C[1]){ + if(bakey_released(BUTTON_A) && 0.0f < sp1C[1]){ baphysics_reset_gravity(); } @@ -88,7 +88,7 @@ void bsbshock_charge_update(void){ }//L802A6CAC if(func_8028B254(0x3C)){ - if(anctrl_getAnimTimer(aCtrl) < 0.3637 && button_released(8)){ + if(anctrl_getAnimTimer(aCtrl) < 0.3637 && bakey_released(8)){ D_8037D380 = 0; }//L802A6CF4 if(player_isStable()) @@ -137,8 +137,8 @@ void bsbshock_init(void){ anctrl_start(aCtrl, "bsbshock.c", 0x13a); func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f) - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f) + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); baphysics_set_target_yaw(yaw_getIdeal()); func_802B6FA8(); @@ -164,7 +164,7 @@ void bsbshock_update(void){ if(anctrl_isAt(aCtrl, 0.7f)) sfxsource_playHighPriority(SFX_53_BANJO_HUIII); - if(button_released(BUTTON_A) && 0.0f < sp20[1]) + if(bakey_released(BUTTON_A) && 0.0f < sp20[1]) baphysics_reset_gravity(); if(D_8037D381 == 0){ diff --git a/src/core2/bs/bSwim.c b/src/core2/bs/bSwim.c index a401d20e..d5eed158 100644 --- a/src/core2/bs/bSwim.c +++ b/src/core2/bs/bSwim.c @@ -8,7 +8,7 @@ extern f32 func_8029494C(void); -extern f32 func_8029B2D0(void); +extern f32 bastick_getX(void); /* .bss */ f32 D_8037D390; @@ -33,9 +33,9 @@ void func_802A71D8(void) { f32 roll_range; f32 sp30; - sp30 = func_8029B2D0(); + sp30 = bastick_getX(); sp38 = func_802A716C(); - if (button_held(BUTTON_R)) { + if (bakey_held(BUTTON_R)) { roll_range = 45.0f; yaw_range = 4.3f; yaw_setVelocityBounded(250.0f, 20.0f); @@ -52,7 +52,7 @@ void func_802A7304() { f32 temp_f0; pitch_setAngVel(ml_interpolate_f(func_802A716C(), 70.0f, 30.0f), 0.9f); - temp_f0 = func_8029B2DC(); + temp_f0 = bastick_getY(); if (temp_f0 < 0.0f) { pitch_setIdeal(ml_map_f(temp_f0, -1.0f, 0.0f, 275.0f, 360.0f)); return; @@ -74,8 +74,8 @@ void func_802A744C(void) { roll_setAngularVelocity(30.0f, 0.9f); baphysics_set_gravity(0.0f); baphysics_set_terminal_velocity(-399.99f); - func_8029B324(0, 0.03f); - func_8029B324(1, 1.0f); + bastick_setZoneMax(0, 0.03f); + bastick_setZoneMax(1, 1.0f); func_8029E070(1); func_80294378(3); baModel_setYDisplacement(60.0f); @@ -105,7 +105,7 @@ void func_802A75B0(void) { roll_setIdeal(0.0f); baphysics_reset_terminal_velocity(); baphysics_reset_gravity(); - func_8029B0C0(); + bastick_resetZones(); func_8029E070(0); func_80294378(1); baModel_setYDisplacement(0.0f); @@ -129,10 +129,10 @@ void func_802A7674() { if (should_look_first_person_camera()) { state_id = badrone_look(); } - if (button_held(BUTTON_A)) { + if (bakey_held(BUTTON_A)) { state_id = BS_39_DIVE_A; } - if (button_held(BUTTON_B)) { + if (bakey_held(BUTTON_B)) { state_id = BS_2C_DIVE_B; } if (func_802A73BC()) { @@ -202,8 +202,8 @@ void func_802A7838(void) { if (anctrl_isAt(anim_ctrl, 0.2766f)) { anctrl_setDuration(anim_ctrl, 3.0f); } - if (!button_held(BUTTON_B)) { - if (button_held(BUTTON_A)) { + if (!bakey_held(BUTTON_B)) { + if (bakey_held(BUTTON_A)) { temp_f2 = (f64) anctrl_getAnimTimer(anim_ctrl); if (temp_f2 <= 0.4625 && 0.1 < temp_f2) { next_state = BS_39_DIVE_A; @@ -212,8 +212,8 @@ void func_802A7838(void) { next_state = BS_2B_DIVE_IDLE; } } - if (anctrl_isAt(anim_ctrl, 0.4625f) && !button_held(BUTTON_B)) { - if (button_held(BUTTON_A)) { + if (anctrl_isAt(anim_ctrl, 0.4625f) && !bakey_held(BUTTON_B)) { + if (bakey_held(BUTTON_A)) { next_state = BS_39_DIVE_A; } else { next_state = BS_2B_DIVE_IDLE; @@ -258,10 +258,10 @@ void func_802A7AB0(void) { func_8030E760(SFX_0_BLOOP, 1.7f, 10000); } if (anctrl_isAt(anim_ctl, 0.99f)) { - if (!button_held(BUTTON_A)) { + if (!bakey_held(BUTTON_A)) { next_state = BS_2B_DIVE_IDLE; } - if (button_held(BUTTON_B)) { + if (bakey_held(BUTTON_B)) { next_state = BS_2C_DIVE_B; } } diff --git a/src/core2/bs/bTrot.c b/src/core2/bs/bTrot.c index 18e0a1ed..c55cccc0 100644 --- a/src/core2/bs/bTrot.c +++ b/src/core2/bs/bTrot.c @@ -41,7 +41,7 @@ void func_802A880C(s32 arg0){ } void func_802A8850(void){ - if( button_pressed(BUTTON_B) + if( bakey_pressed(BUTTON_B) && stateTimer_isActive(STATE_TIMER_3_TURBO_TALON) && baphysics_get_target_horizontal_velocity() == 0.0f ){ @@ -89,8 +89,8 @@ f32 func_802A8984(void){ } void func_802A89D4(void){ - f32 sp24 = func_8029B30C(); - if(!func_8029B300()){ + f32 sp24 = bastick_getZonePosition(); + if(!bastick_getZone()){ baphysics_set_target_horizontal_velocity(0.0f); } else{ @@ -100,8 +100,8 @@ void func_802A89D4(void){ } void func_802A8A40(void){ - func_8029B324(0, 0.03f); - func_8029B324(1, 1.0f); + bastick_setZoneMax(0, 0.03f); + bastick_setZoneMax(1, 1.0f); func_8029E070(1); func_8029E064(1); pitch_setAngVel(1000.0f, 12.0f); @@ -138,7 +138,7 @@ void func_802A8BB0(void){ return; baModel_setDirection(PLAYER_MODEL_DIR_BANJO); - func_8029B0C0(); + bastick_resetZones(); func_8029E070(0); func_8029E064(0); pitch_setIdeal(0.0f); @@ -157,7 +157,7 @@ int func_802A8C60(void){ if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) return 0; - return button_released(BUTTON_Z); + return bakey_released(BUTTON_Z); } void _bsbtrot_802A8C98(AnimCtrl *aCtrl, enum asset_e arg1){ @@ -187,7 +187,7 @@ enum bs_e func_802A8D34(enum bs_e arg0){ } enum bs_e func_802A8D84(enum bs_e arg0){ - if( func_8029B300(arg0) > 0) + if( bastick_getZone(arg0) > 0) arg0 = BS_16_BTROT_WALK; if(should_look_first_person_camera()) @@ -199,7 +199,7 @@ enum bs_e func_802A8D84(enum bs_e arg0){ if(func_802A8C60()) arg0 = BS_17_BTROT_EXIT; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) arg0 = func_802A8D34(arg0); if(player_shouldSlideTrot()) @@ -313,7 +313,7 @@ void bsbtrot_walk_update(void){ if(anctrl_isAt(aCtrl, 0.2115f) || anctrl_isAt(aCtrl, 0.7115f)) func_802A87C0(); } - if(!func_8029B300() && baphysics_is_slower_than(1.0f)) + if(!bastick_getZone() && baphysics_is_slower_than(1.0f)) sp1C = BS_15_BTROT_IDLE; if(func_8028B094()) @@ -322,7 +322,7 @@ void bsbtrot_walk_update(void){ if(func_802A8C60()) sp1C = BS_17_BTROT_EXIT; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) sp1C = func_802A8D34(sp1C); if(player_shouldSlideTrot()) @@ -357,8 +357,8 @@ void bsbtrot_jump_init(void){ yaw_setUpdateState(1); func_8029957C(3); baphysics_set_type(BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f) - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f) + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); baphysics_set_target_yaw(yaw_getIdeal()); func_802A89D4(); @@ -383,7 +383,7 @@ void bsbtrot_jump_update(void){ func_802A89D4(); baphysics_get_velocity(sp1C); - if(button_released(BUTTON_A) && 0.0f < sp1C[1]) + if(bakey_released(BUTTON_A) && 0.0f < sp1C[1]) baphysics_reset_gravity(); switch(D_8037D3A4){ @@ -464,7 +464,7 @@ void bsbtrot_jump_update(void){ sp2C = BS_4C_LANDING_IN_WATER; if(player_isStable()){ - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) sp2C = func_802A8D34(sp2C); if(player_shouldSlideTrot()) @@ -540,7 +540,7 @@ void bsbtrot_slide_update(void){ if(player_inWater()) sp3C = BS_2D_SWIM_IDLE; - if(D_8037D3A0 == 0.0f && button_pressed(BUTTON_A) && player_isStable()) + if(D_8037D3A0 == 0.0f && bakey_pressed(BUTTON_A) && player_isStable()) sp3C = func_802A8D34(sp3C); @@ -664,7 +664,7 @@ void bsbtrot_fall_update(void){ sp2C = BS_3D_FALL_TUMBLING; if(player_isStable()){ - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) sp2C = func_802A8D34(sp2C); if(player_shouldSlideTrot()) diff --git a/src/core2/bs/bWhirl.c b/src/core2/bs/bWhirl.c index 16f5abab..494e1b08 100644 --- a/src/core2/bs/bWhirl.c +++ b/src/core2/bs/bWhirl.c @@ -18,8 +18,8 @@ u8 D_8037D3B4; /* .code */ void func_802AA400(void){ - f32 sp1C = func_8029B30C(); - if(!func_8029B300()){ + f32 sp1C = bastick_getZonePosition(); + if(!bastick_getZone()){ baphysics_set_target_horizontal_velocity(0.0f); }else{ baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp1C, D_80364AD0, D_80364AD4)); @@ -36,7 +36,7 @@ static void __bsbwhirl_end(void){ || state == BS_A5_WONDERWING_UNKA5 ) ){ - func_8029B0C0(); + bastick_resetZones(); func_8029E070(0); func_8025A55C(-1, 0xfa0, 0xd); core1_ce60_incOrDecCounter(TRUE); @@ -50,13 +50,13 @@ static void __bsbwhirl_spawnSparkle(void){ } enum bs_e func_802AA510(enum bs_e arg0){ - if(func_8029B300(arg0) > 0) + if(bastick_getZone(arg0) > 0) arg0 = BS_1C_WONDERWING_WALK; - if(button_released(BUTTON_Z)) + if(bakey_released(BUTTON_Z)) arg0 = BS_1E_WONDERWING_EXIT; - if(button_pressed(BUTTON_A) && player_isStable()) + if(bakey_pressed(BUTTON_A) && player_isStable()) arg0 = BS_1D_WONDERWING_JUMP; if(player_inWater()) @@ -82,8 +82,8 @@ void bsbwhirl_enter_init(void){ baanim_playForDuration_onceSmooth(ASSET_22_ANIM_BSWHIRL_EXIT, 0.5f); func_8029C7F4(1,1,1, BA_PHYSICS_NORMAL); baphysics_set_target_horizontal_velocity(0.0f); - func_8029B324(0, 0.03f); - func_8029B324(1, 1.0f); + bastick_setZoneMax(0, 0.03f); + bastick_setZoneMax(1, 1.0f); func_8029E070(1); D_8037D3B0 = 0.0f; core1_ce60_incOrDecCounter(FALSE); @@ -145,13 +145,13 @@ void bsbwhirl_walk_update(void){ func_8029AD28(0.97f, 3); func_802AA400(); - if(!func_8029B300() && baphysics_is_slower_than(1.0f)) + if(!bastick_getZone() && baphysics_is_slower_than(1.0f)) sp1C = BS_1B_WONDERWING_IDLE; - if(button_released(BUTTON_Z)) + if(bakey_released(BUTTON_Z)) sp1C = BS_1E_WONDERWING_EXIT; - if(button_pressed(BUTTON_A) && player_isStable()) + if(bakey_pressed(BUTTON_A) && player_isStable()) sp1C = BS_1D_WONDERWING_JUMP; if(player_inWater()) @@ -181,8 +181,8 @@ void bsbwhirl_jump_init(void){ anctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); anctrl_start(aCtrl, "bsbwhirl.c", 0x181); func_8029C7F4(1,1,3,BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f) - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f) + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); baphysics_set_target_yaw(yaw_getIdeal()); func_802AA400(); @@ -201,7 +201,7 @@ void bsbwhirl_jump_update(void){ __bsbwhirl_spawnSparkle(); func_802AA400(); baphysics_get_velocity(sp1C); - if(button_released(BUTTON_A) && 0.0f < sp1C[1]) + if(bakey_released(BUTTON_A) && 0.0f < sp1C[1]) baphysics_reset_gravity(); switch(D_8037D3B4){ diff --git a/src/core2/bs/bee.c b/src/core2/bs/bee.c index 2b16d033..b47a523c 100644 --- a/src/core2/bs/bee.c +++ b/src/core2/bs/bee.c @@ -16,7 +16,7 @@ void func_802A02C0(void){ if(bsbee_inSet(bs_getNextState()) == 0){ pitch_setIdeal(0.0f); //pitch_setIdeal roll_setIdeal(0.0f); - func_8029B0C0(); + bastick_resetZones(); func_8029E070(0); func_8029E064(0); miscFlag_clear(MISC_FLAG_3); diff --git a/src/core2/bs/beeFly.c b/src/core2/bs/beeFly.c index e03425dc..b81e12f6 100644 --- a/src/core2/bs/beeFly.c +++ b/src/core2/bs/beeFly.c @@ -7,16 +7,16 @@ void func_80354030(f32*, f32); -f32 func_8029B2E8(void); -f32 func_8029B33C(void); +f32 bastick_distance(void); +f32 bastick_getAngleRelativeToBanjo(void); void baModel_setYDisplacement(f32); void ncDynamicCam4_func_802BFE50(f32, f32, f32); void yaw_setVelocityBounded(f32, f32); -f32 func_8029B2D0(void); -f32 func_8029B2DC(void); -void func_80290B40(f32); -void func_80290A6C(void); +f32 bastick_getX(void); +f32 bastick_getY(void); +void babuzz_setVolume(f32); +void babuzz_update(void); /* .data */ f32 D_803649B0[5] = {0.38f, 0.3f, 0.24f, 0.18f, 0.14}; @@ -44,8 +44,8 @@ void func_802A0590(void){ func_802A0340(); baanim_playForDuration_onceSmooth(0x1df, 1.5f); func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f){ - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f){ + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); } baphysics_set_target_yaw(yaw_getIdeal()); baphysics_set_target_horizontal_velocity(0.0f); @@ -99,7 +99,7 @@ void _bsbeefly_end(void){ baphysics_reset_gravity(); baphysics_reset_terminal_velocity(); baflap_activate(0); - func_8029099C(); + babuzz_release(); } void func_802A07F8(void){ @@ -113,16 +113,16 @@ void func_802A07F8(void){ baphysics_set_terminal_velocity(-99.9f); baflap_reset(); baflap_activate(1); - func_802909C4(); + babuzz_reset(); } void _bsBeeFly_updateYaw(void){ f32 sp34; f32 sp30; f32 stickX; - stickX = func_8029B2D0(); + stickX = bastick_getX(); ncDynamicCam4_func_802BFE50(2.0f, 2000.0f, 350.0f); - if(button_held(BUTTON_R)){ + if(bakey_held(BUTTON_R)){ yaw_setVelocityBounded(500.0f, 30.0f); sp34 = 6.0f; sp30 = 85.0f; @@ -137,7 +137,7 @@ void _bsBeeFly_updateYaw(void){ } void _bsBeeFly_updatePitch(void){ - f32 stickY = func_8029B2DC(); + f32 stickY = bastick_getY(); if(stickY < 0.0f){ pitch_setIdeal(ml_map_f(stickY, -1.0f, 0.0f, 300.0f, 360.0f)); } else { @@ -185,7 +185,7 @@ void bsbeefly_update(void){ _bsBeeFly_updateYaw(); _bsBeeFly_updatePitch(); pitch_get(); //return value never used - if(button_pressed(BUTTON_A) && (player_getYPosition() < 7500.0)){ + if(bakey_pressed(BUTTON_A) && (player_getYPosition() < 7500.0)){ baflap_add(1.0f); } if((baflap_getCount() == 0) && player_inWater()){ @@ -207,11 +207,11 @@ void bsbeefly_update(void){ } } sp40 += sp30; - if(!sp44 && button_held(BUTTON_B)){ + if(!sp44 && bakey_held(BUTTON_B)){ sp40 += 0.12; } - func_80290B40(sp40); - func_80290A6C(); + babuzz_setVolume(sp40); + babuzz_update(); switch(D_8037D2C0){ default: break; @@ -249,7 +249,7 @@ void bsbeefly_update(void){ } } baphysics_set_target_yaw(yaw_get()); - if(button_held(9)){ + if(bakey_held(9)){ sp38 += (f64)sp38; } baphysics_set_target_horizontal_velocity(sp38); diff --git a/src/core2/bs/beeMain.c b/src/core2/bs/beeMain.c index 6417a58b..72169fae 100644 --- a/src/core2/bs/beeMain.c +++ b/src/core2/bs/beeMain.c @@ -12,9 +12,9 @@ void ncDynamicCamD_func_802BF2C0(f32); f32 baanim_getTimer(void); void baanim_setEndAndDuration(f32, f32); -f32 func_8029B2E8(void); -f32 func_8029B33C(void); -f32 func_8029B30C(); +f32 bastick_distance(void); +f32 bastick_getAngleRelativeToBanjo(void); +f32 bastick_getZonePosition(); /* .data */ f32 D_803649E0 = 30.0f; @@ -47,8 +47,8 @@ void func_802A0FB4(void){ void func_802A1020(void){ f32 sp1c; - sp1c = func_8029B30C(); - if(func_8029B300() == 0){ + sp1c = bastick_getZonePosition(); + if(bastick_getZone() == 0){ baphysics_set_target_horizontal_velocity(0.0f); } else{ @@ -75,10 +75,10 @@ void func_802A10D4(void){ if(should_look_first_person_camera()) s0 = badrone_look(); - if(func_8029B300() > 0) + if(bastick_getZone() > 0) s0 = BS_BEE_WALK; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) s0 = BS_BEE_JUMP; if(player_inWater()) @@ -108,13 +108,13 @@ void func_802A1214(void){ func_802A1020(); func_8029AD28(0.94f, 4); func_8029AD28(0.44f, 3); - if(func_8029B300() == 0 && baphysics_is_slower_than(1.0f)) + if(bastick_getZone() == 0 && baphysics_is_slower_than(1.0f)) s0 = BS_85_BEE_IDLE; if(func_8028B094()) s0 = BS_88_BEE_FALL; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) s0 = BS_BEE_JUMP; if(player_inWater()) @@ -142,8 +142,8 @@ void func_802A12FC(void){ anctrl_setPlaybackType(s0, ANIMCTRL_ONCE); anctrl_start(s0, "bsbeemain.c", 0x15b); func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f){ - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f){ + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); } baphysics_set_target_yaw(yaw_getIdeal()); func_802A1020(); @@ -163,7 +163,7 @@ void func_802A1438(void){ sp28 = baanim_getAnimCtrlPtr(); func_802A1020(); baphysics_get_velocity(sp1c); - if(button_released(BUTTON_A) && (0.0f < sp1c[1])){ + if(bakey_released(BUTTON_A) && (0.0f < sp1c[1])){ baphysics_reset_gravity(); } switch (D_8037D2D4) @@ -202,14 +202,14 @@ void func_802A1438(void){ break; } if(player_isStable()){ - if(func_8029B300() > 0) + if(bastick_getZone() > 0) sp2c = BS_BEE_WALK; - if(button_pressed(BUTTON_A)){ + if(bakey_pressed(BUTTON_A)){ sp2c = BS_BEE_JUMP; } } else{ - if(button_pressed(BUTTON_A)){ + if(bakey_pressed(BUTTON_A)){ sp2c = BS_BEE_FLY; } } @@ -277,15 +277,15 @@ void func_802A170C(void){ if(miscFlag_isTrue(MISC_FLAG_19)){ sp2c = badrone_transform(); }else{ - if(func_8029B300() > 0) + if(bastick_getZone() > 0) sp2c = BS_BEE_WALK; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) sp2c = BS_BEE_JUMP; sp2c = func_8029CA94(sp2c); } } else{ - if(miscFlag_isFalse(MISC_FLAG_F) && button_pressed(BUTTON_A)) + if(miscFlag_isFalse(MISC_FLAG_F) && bakey_pressed(BUTTON_A)) sp2c = BS_BEE_FLY; }//L802A189C if(player_inWater()) diff --git a/src/core2/bs/carry.c b/src/core2/bs/carry.c index 70f37c82..310d718e 100644 --- a/src/core2/bs/carry.c +++ b/src/core2/bs/carry.c @@ -13,8 +13,8 @@ const f32 D_80364AF8 = 0.84f; const f32 D_80364AFC = 0.4f; void func_802AAE80(void){ - f32 sp1C = func_8029B30C(); - if(func_8029B300() == 0) + f32 sp1C = bastick_getZonePosition(); + if(bastick_getZone() == 0) baphysics_set_target_horizontal_velocity(0.0f); else baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp1C, D_80364AF0, D_80364AF4)); @@ -24,7 +24,7 @@ void func_802AAEE0(void){ enum bs_e state = bs_getNextState(); if(state != BS_3A_CARRY_IDLE && state != BS_3B_CARRY_WALK) - func_8029B0C0(); + bastick_resetZones(); baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); } @@ -44,7 +44,7 @@ void bscarry_idle_init(void){ void bscarry_idle_update(void){ enum bs_e sp1C = 0; - if(func_8029B300() > 0) + if(bastick_getZone() > 0) sp1C = BS_3B_CARRY_WALK; if(bacarry_get_marker() == NULL) @@ -73,7 +73,7 @@ void bscarry_walk_update(void){ func_8029AD28(0.4f, 4); func_8029AD28(0.9f, 3); func_802AAE80(); - if(func_8029B300() == 0 && baphysics_is_slower_than(1.0f)) + if(bastick_getZone() == 0 && baphysics_is_slower_than(1.0f)) sp1C = BS_3A_CARRY_IDLE; if(bacarry_get_marker() == NULL) diff --git a/src/core2/bs/claw.c b/src/core2/bs/claw.c index 78660220..57f9724e 100644 --- a/src/core2/bs/claw.c +++ b/src/core2/bs/claw.c @@ -60,7 +60,7 @@ void bsclaw_update(void){ if(player_inWater()) sp2C = BS_4C_LANDING_IN_WATER; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) sp2C = bs_getTypeOfJump(); bs_setState(sp2C); diff --git a/src/core2/bs/climb.c b/src/core2/bs/climb.c index c9117b61..c8ba7c28 100644 --- a/src/core2/bs/climb.c +++ b/src/core2/bs/climb.c @@ -15,7 +15,7 @@ void func_802AB5C0(void){ f32 sp28; f32 f2; - sp28 = func_8029B2DC(); + sp28 = bastick_getY(); if(mlAbsF(sp28) < 0.03){ f2 = 0.0f; } @@ -32,8 +32,8 @@ void func_802AB654(void){ func_8029957C(6); yaw_setUpdateState(3); yaw_setVelocityBounded(500.0f, 15.0f); - func_8029B324(0, 0.03f); - func_8029B324(1, 1.0f); + bastick_setZoneMax(0, 0.03f); + bastick_setZoneMax(1, 1.0f); baphysics_set_type(BA_PHYSICS_CLIMB); baphysics_set_acceleration(10.0f); func_80294378(5); @@ -44,7 +44,7 @@ void func_802AB654(void){ void func_802AB6F0(void){ if(!bsclimb_inSet(bs_getNextState())){ func_80291548(); - func_8029B0C0(); + bastick_resetZones(); baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); baphysics_set_type(BA_PHYSICS_NORMAL); func_80294378(1); @@ -113,7 +113,7 @@ void bsclimb_idle_update(void){ next_state = BS_50_CLIMB_MOVE; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = BS_5_JUMP; if(D_8037D3D8 == 0) @@ -175,7 +175,7 @@ void bsclimb_move_update(void){ next_state = BS_51_CLIMB_EXIT; } - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = BS_5_JUMP; if(!D_8037D3D8) diff --git a/src/core2/bs/croc.c b/src/core2/bs/croc.c index 84307ed0..59782543 100644 --- a/src/core2/bs/croc.c +++ b/src/core2/bs/croc.c @@ -68,8 +68,8 @@ void func_802ABE70(void){ } void func_802ABF54(void){ - f32 sp1C = func_8029B30C(); - if(func_8029B300() == 0){ + f32 sp1C = bastick_getZonePosition(); + if(bastick_getZone() == 0){ baphysics_set_target_horizontal_velocity(0.0f); } else{ @@ -79,7 +79,7 @@ void func_802ABF54(void){ void func_802ABFBC(void){ if(!bscroc_inSet(bs_getNextState())){ - func_8029B0C0(); + bastick_resetZones(); func_8029E070(0); func_8029E064(0); miscFlag_clear(MISC_FLAG_3); @@ -125,13 +125,13 @@ void bscroc_idle_update(void){ if(should_look_first_person_camera()) next_state = badrone_look(); - if(func_8029B300() > 0) + if(bastick_getZone() > 0) next_state = BS_CROC_WALK; - if(button_pressed(BUTTON_B)) + if(bakey_pressed(BUTTON_B)) next_state = BS_6E_CROC_BITE; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = BS_CROC_JUMP; next_state = func_8029CA94(next_state); @@ -160,16 +160,16 @@ void bscroc_walk_update(void){ func_8029AD28(0.1f, 4); func_8029AD28(0.6f, 3); - if(func_8029B300() == 0 && baphysics_is_slower_than(1.0f)) + if(bastick_getZone() == 0 && baphysics_is_slower_than(1.0f)) next_state = BS_5E_CROC_IDLE; if(func_8028B094()) next_state = BS_61_CROC_FALL; - if(button_pressed(BUTTON_B)) + if(bakey_pressed(BUTTON_B)) next_state = BS_6E_CROC_BITE; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = BS_CROC_JUMP; bs_setState(next_state); @@ -192,8 +192,8 @@ void bscroc_jump_init(void){ anctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); anctrl_start(aCtrl, "bscroc.c", 0x1ac); func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f){ - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f){ + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); } baphysics_set_target_yaw(yaw_getIdeal()); func_802ABF54(); @@ -212,7 +212,7 @@ void bscroc_jump_update(void){ func_802ABE70(); func_802ABF54(); baphysics_get_velocity(player_velocity); - if(button_released(BUTTON_A) && 0.0f < player_velocity[1]) + if(bakey_released(BUTTON_A) && 0.0f < player_velocity[1]) baphysics_reset_gravity(); switch(D_8037D3EC){ @@ -252,14 +252,14 @@ void bscroc_jump_update(void){ }//L802AC66C if(player_isStable()){ - if(func_8029B300() > 0) + if(bastick_getZone() > 0) sp2C = BS_CROC_WALK; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) sp2C = BS_CROC_JUMP; } - if(button_pressed(BUTTON_B)) + if(bakey_pressed(BUTTON_B)) sp2C = BS_6E_CROC_BITE; bs_setState(sp2C); @@ -312,7 +312,7 @@ void bscroc_fall_update(void){ }//L802AC850 if(player_isStable()){ - if(func_8029B300() > 0 || (D_8037D3EC == 2 && anctrl_isStopped(aCtrl))){ + if(bastick_getZone() > 0 || (D_8037D3EC == 2 && anctrl_isStopped(aCtrl))){ if(miscFlag_isTrue(MISC_FLAG_19)){ next_state = badrone_transform(); }else{ @@ -550,7 +550,7 @@ void bscroc_bite_update(void){ next_state = BS_CROC_WALK; } - if(player_isStable() && button_pressed(BUTTON_A)) + if(player_isStable() && bakey_pressed(BUTTON_A)) next_state = BS_CROC_JUMP; bs_setState(next_state); diff --git a/src/core2/bs/crouch.c b/src/core2/bs/crouch.c index 731d705f..8a85978e 100644 --- a/src/core2/bs/crouch.c +++ b/src/core2/bs/crouch.c @@ -177,13 +177,13 @@ void bscrouch_update(void){ void bscrouch_end(void){} enum bs_e func_802ADCD4(enum bs_e arg0){ - if(button_released(BUTTON_Z)){ + if(bakey_released(BUTTON_Z)){ arg0 = BS_1_IDLE; - if(button_pressed(BUTTON_B) && can_claw()) + if(bakey_pressed(BUTTON_B) && can_claw()) arg0 = BS_CLAW; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) arg0 = bs_getTypeOfJump(); }else{ diff --git a/src/core2/bs/dronelook.c b/src/core2/bs/dronelook.c index 93eea8f9..1741867f 100644 --- a/src/core2/bs/dronelook.c +++ b/src/core2/bs/dronelook.c @@ -3,7 +3,7 @@ #include "variables.h" #include "core2/ba/physics.h" -extern f32 func_8029B2D0(void); +extern f32 bastick_getX(void); /* .code */ void __bsDroneLook_getEyePos(f32 arg0[3]) { @@ -45,8 +45,8 @@ void bsDroneLook_update(void) { if (ncFirstPersonCamera_getState() == FIRSTPERSON_STATE_2_IDLE) { //camera is in "idle" state ncFirstPersonCamera_getZoomedInRotation(eye_rotation); - eye_rotation[0] -= func_8029B2DC() * 90.0f * dt; - eye_rotation[1] -= func_8029B2D0() * 90.0f * dt; + eye_rotation[0] -= bastick_getY() * 90.0f * dt; + eye_rotation[1] -= bastick_getX() * 90.0f * dt; eye_rotation[2] = 0.0f; eye_rotation[0] = (eye_rotation[0] > 180.0f) ? ml_max_f(305.0f, eye_rotation[0]) : ml_min_f(70.0f, eye_rotation[0]); ncFirstPersonCamera_setZoomedOutRotation(eye_rotation); @@ -54,7 +54,7 @@ void bsDroneLook_update(void) { exit_first_person = FALSE; // 1st person cancelled via input - if (button_pressed(BUTTON_B) || button_pressed(BUTTON_A) || button_pressed(BUTTON_C_UP)) { + if (bakey_pressed(BUTTON_B) || bakey_pressed(BUTTON_A) || bakey_pressed(BUTTON_C_UP)) { exit_first_person = TRUE; } // 1st person cancelled via entering water diff --git a/src/core2/bs/jump.c b/src/core2/bs/jump.c index 003c1c5d..f348664d 100644 --- a/src/core2/bs/jump.c +++ b/src/core2/bs/jump.c @@ -10,8 +10,8 @@ f32 func_80294438(void); void func_80299B58(f32, f32); -f32 func_8029B2E8(void); -f32 func_8029B33C(void); +f32 bastick_distance(void); +f32 bastick_getAngleRelativeToBanjo(void); void baanim_playForDuration_loop(s32, f32); /* .data */ @@ -60,8 +60,8 @@ void bsjump_init(void){ anctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); anctrl_start(aCtrl, "bsjump.c", 0x95); func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f){ - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f){ + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); } baphysics_set_target_yaw(yaw_getIdeal()); func_802B6FA8(); @@ -97,7 +97,7 @@ void bsjump_update(void){ } baphysics_get_velocity(velocity); - if((button_released(BUTTON_A) && 0.0f < velocity[1] && !D_8037D4C2) || !can_control_jump_height()){ + if((bakey_released(BUTTON_A) && 0.0f < velocity[1] && !D_8037D4C2) || !can_control_jump_height()){ baphysics_reset_gravity(); } @@ -138,7 +138,7 @@ void bsjump_update(void){ if(player_isFallTumbling()) sp34 = BS_3D_FALL_TUMBLING; - if(button_released(BUTTON_A)) + if(bakey_released(BUTTON_A)) D_8037D4C2 = 0; if(should_feathery_flap()) diff --git a/src/core2/bs/pumpkin.c b/src/core2/bs/pumpkin.c index 1497fe04..3952f828 100644 --- a/src/core2/bs/pumpkin.c +++ b/src/core2/bs/pumpkin.c @@ -42,8 +42,8 @@ void func_802B21D0(void) { void func_802B223C(void) { f32 sp1C; - sp1C = func_8029B30C(); - if (func_8029B300() == 0) { + sp1C = bastick_getZonePosition(); + if (bastick_getZone() == 0) { baphysics_set_target_horizontal_velocity(0.0f); return; } @@ -52,7 +52,7 @@ void func_802B223C(void) { void func_802B229C(void) { if (!bspumpkin_inSet(bs_getNextState())) { - func_8029B0C0(); + bastick_resetZones(); func_8029E070(0); func_8029E064(0); miscFlag_clear(MISC_FLAG_3); @@ -95,10 +95,10 @@ void bspumpkin_idle_update(void) { if (should_look_first_person_camera()) { next_state = badrone_look(); } - if (func_8029B300() > 0) { + if (bastick_getZone() > 0) { next_state = BS_49_PUMPKIN_WALK; } - if (button_pressed(BUTTON_A)) { + if (bakey_pressed(BUTTON_A)) { next_state = BS_4A_PUMPKIN_JUMP; } bs_setState(next_state); @@ -131,13 +131,13 @@ void bspumpkin_walk_update(void) { next_state = 0; func_802B223C(); func_8029AD68(0.3f, 4); - if ((func_8029B300() == 0) && baphysics_is_slower_than(1.0f)) { + if ((bastick_getZone() == 0) && baphysics_is_slower_than(1.0f)) { next_state = BS_48_PUMPKIN_IDLE; } if (func_8028B094()) { next_state = BS_4B_PUMPKIN_FALL; } - if (button_pressed(BUTTON_A)) { + if (bakey_pressed(BUTTON_A)) { next_state = BS_4A_PUMPKIN_JUMP; } bs_setState(next_state); @@ -159,8 +159,8 @@ void bspumpkin_jump_init(void) { anctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE); anctrl_start(anim_ctrl, "bspumpkin.c", 0x16C); func_8029C7F4(1, 1, 3, BA_PHYSICS_AIRBORN); - if (func_8029B2E8() != 0.0f) { - yaw_setIdeal(func_8029B33C()); + if (bastick_distance() != 0.0f) { + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); } baphysics_set_target_yaw(yaw_getIdeal()); func_802B223C(); @@ -180,7 +180,7 @@ void bspumpkin_jump_update(void) { anim_ctrl = baanim_getAnimCtrlPtr(); func_802B223C(); baphysics_get_velocity(sp1C); - if (button_released(BUTTON_A) && sp1C[1] > 0.0f) { + if (bakey_released(BUTTON_A) && sp1C[1] > 0.0f) { baphysics_reset_gravity(); } switch (D_8037D4E0) { @@ -225,10 +225,10 @@ void bspumpkin_jump_update(void) { break; } if (player_isStable()) { - if (func_8029B300() > 0) { + if (bastick_getZone() > 0) { next_state = BS_49_PUMPKIN_WALK; } - if (button_pressed(BUTTON_A)) { + if (bakey_pressed(BUTTON_A)) { next_state = BS_4A_PUMPKIN_JUMP; } } @@ -289,7 +289,7 @@ void bspumpkin_fall_update(void) { case 2: break; } - if (player_isStable() && ((func_8029B300() > 0) || (D_8037D4E0 == 2 && anctrl_isStopped(anim_ctrl)))) { + if (player_isStable() && ((bastick_getZone() > 0) || (D_8037D4E0 == 2 && anctrl_isStopped(anim_ctrl)))) { if (miscFlag_isTrue(MISC_FLAG_19)) { next_state = badrone_transform(); } else { diff --git a/src/core2/bs/slide.c b/src/core2/bs/slide.c index eb8ef55c..02f4b0ca 100644 --- a/src/core2/bs/slide.c +++ b/src/core2/bs/slide.c @@ -110,7 +110,7 @@ void bsslide_update(void){ if(player_inWater()) sp3C = BS_4C_LANDING_IN_WATER; - if(D_8037D528 == 0.0f && button_pressed(BUTTON_A)) + if(D_8037D528 == 0.0f && bakey_pressed(BUTTON_A)) sp3C = bs_getTypeOfJump(); bs_setState(sp3C); diff --git a/src/core2/bs/stand.c b/src/core2/bs/stand.c index d99f3bb9..35449e5f 100644 --- a/src/core2/bs/stand.c +++ b/src/core2/bs/stand.c @@ -5,7 +5,7 @@ #include "core2/statetimer.h" #include "core2/ba/physics.h" -extern f32 func_8029B2E8(void); +extern f32 bastick_distance(void); void yaw_setVelocityBounded(f32, f32); void anctrl_start(AnimCtrl *, char*, s32); @@ -50,7 +50,7 @@ u32 func_802B4870(u32 arg0){ s32 func_802B488C(s32 arg0){ s32 retVal = arg0; - switch(func_8029B300()){ + switch(bastick_getZone()){ case 1: //L802B48CC retVal = BS_WALK_CREEP; break; @@ -64,13 +64,13 @@ s32 func_802B488C(s32 arg0){ retVal = BS_4_WALK_FAST; break; } - if(button_held(BUTTON_Z)) + if(bakey_held(BUTTON_Z)) retVal = BS_CROUCH; - if(button_pressed(BUTTON_B) && can_claw()) + if(bakey_pressed(BUTTON_B) && can_claw()) retVal = BS_CLAW; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) retVal = bs_getTypeOfJump(); if(should_look_first_person_camera()) @@ -189,7 +189,7 @@ void bsstand_update(void) { s32 sp18; anim_ctrl = baanim_getAnimCtrlPtr(); - if ((func_8029B300() == 0) && (func_8029B2E8() > 0.0f)) { + if ((bastick_getZone() == 0) && (bastick_distance() > 0.0f)) { D_8037D544 = 1; yaw_setUpdateState(3); yaw_setVelocityBounded(200.0f, 14.0f); diff --git a/src/core2/bs/surf.c b/src/core2/bs/surf.c index ada744e7..fe1e186c 100644 --- a/src/core2/bs/surf.c +++ b/src/core2/bs/surf.c @@ -26,7 +26,7 @@ void func_802B6064(void) { enum bs_e next_state; next_state = 0; - if (button_pressed(BUTTON_A)) { + if (bakey_pressed(BUTTON_A)) { next_state = BS_5_JUMP; } if (D_8037D560 == 0) { diff --git a/src/core2/bs/swim.c b/src/core2/bs/swim.c index 4f4d848f..be0bf60c 100644 --- a/src/core2/bs/swim.c +++ b/src/core2/bs/swim.c @@ -65,8 +65,8 @@ void func_802B5538(AnimCtrl *arg0) { void func_802B55DC(void) { f32 sp1C; - sp1C = func_8029B30C(); - if (func_8029B300() == 0) { + sp1C = bastick_getZonePosition(); + if (bastick_getZone() == 0) { baphysics_set_target_horizontal_velocity(0.0f); return; } @@ -81,8 +81,8 @@ void swim_enteredWater(void) { } baphysics_set_gravity(100.0f); baphysics_set_terminal_velocity(133.33f); - func_8029B324(0, 0.03f); - func_8029B324(1, 1.0f); + bastick_setZoneMax(0, 0.03f); + bastick_setZoneMax(1, 1.0f); func_80294378(3); } @@ -91,7 +91,7 @@ void func_802B56D4(void) { if (!bsswim_inset(bs_getNextState())) { baphysics_reset_terminal_velocity(); baphysics_reset_gravity(); - func_8029B0C0(); + bastick_resetZones(); func_80294378(1); } } @@ -164,7 +164,7 @@ void func_802B5950(void) { if (anctrl_isAt(anim_ctrl, 0.4348f) != 0) { func_802B5538(anim_ctrl); } - if (func_8029B300() == 1) { + if (bastick_getZone() == 1) { next_state = BS_2E_SWIM; } if (!player_inWater()) { @@ -176,7 +176,7 @@ void func_802B5950(void) { if (should_dive()) { next_state = BS_30_DIVE_ENTER; } - if (func_80294524() && button_pressed(BUTTON_A)) { + if (func_80294524() && bakey_pressed(BUTTON_A)) { next_state = BS_5_JUMP; } if (miscFlag_isTrue(MISC_FLAG_6) || miscFlag_isTrue(MISC_FLAG_14_LOSE_BOGGY_RACE)) { @@ -236,7 +236,7 @@ void func_802B5C40(void) { func_8030EB88(SFX_12_WATER_PADDLING_1, 0.9f, 1.1f); } func_802B55DC(); - if (func_8029B300() == 0) { + if (bastick_getZone() == 0) { next_state = BS_2D_SWIM_IDLE; } if (player_inWater() == 0) { @@ -253,7 +253,7 @@ void func_802B5C40(void) { if (should_dive() != 0) { next_state = BS_30_DIVE_ENTER; } - if (func_80294524() && button_pressed(BUTTON_A)) { + if (func_80294524() && bakey_pressed(BUTTON_A)) { next_state = BS_5_JUMP; } if (miscFlag_isTrue(MISC_FLAG_6) || miscFlag_isTrue(MISC_FLAG_14_LOSE_BOGGY_RACE)) { diff --git a/src/core2/bs/turn.c b/src/core2/bs/turn.c index 29f85781..2a0dfc39 100644 --- a/src/core2/bs/turn.c +++ b/src/core2/bs/turn.c @@ -53,13 +53,13 @@ void bsturn_update(void){ if(anctrl_isStopped(baanim_getAnimCtrlPtr())) sp2C = BS_4_WALK_FAST; - if(button_held(BUTTON_Z)) + if(bakey_held(BUTTON_Z)) sp2C = BS_CROUCH; - if(button_pressed(BUTTON_B)) + if(bakey_pressed(BUTTON_B)) sp2C = BS_CLAW; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) sp2C = bs_getTypeOfJump(); bs_setState(sp2C); diff --git a/src/core2/bs/twirl.c b/src/core2/bs/twirl.c index 3c0a057e..31770a86 100644 --- a/src/core2/bs/twirl.c +++ b/src/core2/bs/twirl.c @@ -67,7 +67,7 @@ void bstwirl_update(void){ break; }//L802B6C4C - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) sp1C = bs_getTypeOfJump(); if(0.6 < anctrl_getAnimTimer(aCtrl) && !player_isStable()) diff --git a/src/core2/bs/walk.c b/src/core2/bs/walk.c index bda634a6..6eb5fa29 100644 --- a/src/core2/bs/walk.c +++ b/src/core2/bs/walk.c @@ -7,10 +7,10 @@ void baanim_setDurationRange(f32, f32); void func_802927E0(f32, f32); -f32 func_8029B2E8(void); +f32 bastick_distance(void); void func_8029AD28(f32, s32); void baanim_scaleDuration(f32); -f32 func_8029B30C(void); +f32 bastick_getZonePosition(void); void func_80299594(s32, f32); // .data @@ -41,13 +41,13 @@ void func_802B6D00(void){ f32 sp1C; s32 sp18; - sp1C = func_8029B30C(); - sp18 = func_8029B300(); + sp1C = bastick_getZonePosition(); + sp18 = bastick_getZone(); if(func_8028B128()){ if(sp18 == 0){ baphysics_set_target_horizontal_velocity(0.0f); }else{//L802B6D48 - baphysics_set_target_horizontal_velocity(ml_interpolate_f(func_8029B2E8(), bsWalkMinMudVelocity, bsWalkMaxMudVelocity)); + baphysics_set_target_horizontal_velocity(ml_interpolate_f(bastick_distance(), bsWalkMinMudVelocity, bsWalkMaxMudVelocity)); } } else{//L802B6D78 @@ -93,7 +93,7 @@ int func_802B6EF4(void){ } s32 func_802B6F20(s32 arg0){ - if(button_pressed(BUTTON_B)){ + if(bakey_pressed(BUTTON_B)){ if( bsWalkWalkFastWalkVelocityThreshold < baphysics_get_target_horizontal_velocity()){ if(can_roll()) arg0 = BS_ROLL; @@ -136,14 +136,14 @@ void bswalk_creep_init(void){ void bswalk_creep_update(void){ s32 next_state = 0; func_802B6E44(); - if(func_8029B2E8() == 0.0f){ + if(bastick_distance() == 0.0f){ yaw_setIdeal(yaw_get()); } func_8029AD28(0.47f, 4); func_8029AD28(0.97f, 3); func_802B6D00(); - switch(func_8029B300()){ + switch(bastick_getZone()){ case 0://L802B7160 if(baphysics_is_slower_than(1.0f)) next_state = BS_1_IDLE; @@ -167,12 +167,12 @@ void bswalk_creep_update(void){ if(func_8028B094()) next_state = BS_2F_FALL; - if(button_held(BUTTON_Z)) + if(bakey_held(BUTTON_Z)) next_state = BS_CROUCH; next_state = func_802B6F20(next_state); - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = bs_getTypeOfJump(); if(player_isSliding()) @@ -209,14 +209,14 @@ void bswalk_slow_init(void){ void bswalk_slow_upate(void){ s32 next_state = 0; func_802B6E44(); - if(func_8029B2E8() == 0.0f){ + if(bastick_distance() == 0.0f){ yaw_setIdeal(yaw_get()); } func_8029AD28(0.4f, 4); func_8029AD28(0.9f, 3); func_802B6D00(); - switch(func_8029B300()){ + switch(bastick_getZone()){ case 0://L802B7160 if(baphysics_is_slower_than(3.0f)) next_state = BS_1_IDLE; @@ -240,12 +240,12 @@ void bswalk_slow_upate(void){ if(func_8028B094()) next_state = BS_2F_FALL; - if(button_held(BUTTON_Z)) + if(bakey_held(BUTTON_Z)) next_state = BS_CROUCH; next_state = func_802B6F20(next_state); - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = bs_getTypeOfJump(); if(player_isSliding()) @@ -292,7 +292,7 @@ void bswalk_update(void){ func_8029AD28(0.9f, 3); func_802B6EBC(); func_802B6D00(); - switch(func_8029B300()){ + switch(bastick_getZone()){ case 0: case 1: case 2: @@ -316,12 +316,12 @@ void bswalk_update(void){ if(func_8028B094()) next_state = BS_2F_FALL; - if(button_held(BUTTON_Z)) + if(bakey_held(BUTTON_Z)) next_state = BS_CROUCH; next_state = func_802B6F20(next_state); - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = bs_getTypeOfJump(); if(player_isSliding()) @@ -380,7 +380,7 @@ void bswalk_fast_update(void){ func_8029AD28(0.9f, 3); func_802B6EBC(); func_802B6D00(); - switch(func_8029B300()){ + switch(bastick_getZone()){ case 0://L802B79EC if(baphysics_is_slower_than(18.0f)) next_state = BS_1_IDLE; @@ -416,12 +416,12 @@ void bswalk_fast_update(void){ if(func_8028B094()) next_state = BS_2F_FALL; - if(button_held(BUTTON_Z)) + if(bakey_held(BUTTON_Z)) next_state = BS_CROUCH; next_state = func_802B6F20(next_state); - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = bs_getTypeOfJump(); if(player_isSliding()) @@ -456,7 +456,7 @@ void bswalk_mud_update(void){ if(!func_8028B128()) next_state = BS_2_WALK_SLOW; - if(!func_8029B300()) + if(!bastick_getZone()) next_state = BS_1_IDLE; if(should_look_first_person_camera()) @@ -465,12 +465,12 @@ void bswalk_mud_update(void){ if(func_8028B094()) next_state = BS_2F_FALL; - if(button_held(BUTTON_Z)) + if(bakey_held(BUTTON_Z)) next_state = BS_CROUCH; next_state = func_802B6F20(next_state); - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = bs_getTypeOfJump(); if(player_isSliding()) diff --git a/src/core2/bs/walrus.c b/src/core2/bs/walrus.c index 0d4da806..f731fed4 100644 --- a/src/core2/bs/walrus.c +++ b/src/core2/bs/walrus.c @@ -44,8 +44,8 @@ void func_802B7E00(void) { void func_802B7E6C(void) { f32 sp1C; - sp1C = func_8029B30C(); - if (func_8029B300() == 0) { + sp1C = bastick_getZonePosition(); + if (bastick_getZone() == 0) { baphysics_set_target_horizontal_velocity(0.0f); return; } @@ -54,7 +54,7 @@ void func_802B7E6C(void) { void func_802B7ECC(void) { D_8037D5C0 = 0.0f; - if (func_80295530(8) < 3) { + if (bakey_releaseCount(BUTTON_A) < 3) { D_8037D5C0 = 1.0f; } D_8037D5C0 = ml_clamp_f(D_8037D5C0, 0.0f, 1.0f); @@ -70,7 +70,7 @@ void func_802B7F28(void) { sp38 = D_80364DD8; sp3C = D_80364DDC; - sp40 = func_8029B30C(); + sp40 = bastick_getZonePosition(); func_802B7ECC(); baphysics_get_velocity(sp20); sp20[1] = 0.0f; @@ -81,7 +81,7 @@ void func_802B7F28(void) { sp3C += D_8037D5C0 * 350.0; } } - if (func_8029B300() == 0) { + if (bastick_getZone() == 0) { baphysics_set_target_horizontal_velocity(0.0f); return; } @@ -92,7 +92,7 @@ void func_802B8048(void){ if(!bswalrus_inSet(bs_getNextState())){ pitch_setIdeal(0.0f); roll_setIdeal(0.0f); - func_8029B0C0(); + bastick_resetZones(); func_8029E070(0); func_8029E064(0); miscFlag_clear(MISC_FLAG_3); @@ -165,10 +165,10 @@ void bswalrus_idle_update(void){ if(should_look_first_person_camera()) next_state = badrone_look(); - if(func_8029B300() > 0) + if(bastick_getZone() > 0) next_state = BS_WALRUS_WALK; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = BS_WALRUS_JUMP; bs_setState(next_state); @@ -194,13 +194,13 @@ void bswalrus_walk_update(void){ func_802B7E6C(); func_8029AD68(0.3f, 4); - if(func_8029B300() == 0 && baphysics_is_slower_than(1.0f)) + if(bastick_getZone() == 0 && baphysics_is_slower_than(1.0f)) next_state = BS_67_WALRUS_IDLE; if(func_8028B094()) next_state = BS_6A_WALRUS_FALL; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = BS_WALRUS_JUMP; bs_setState(next_state); @@ -223,8 +223,8 @@ void bswalrus_jump_init(void){ anctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); anctrl_start(aCtrl, "bswalrus.c", 0x1f8); func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f) - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f) + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); baphysics_set_target_yaw(yaw_getIdeal()); func_802B7E6C(); baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity()); @@ -242,7 +242,7 @@ void bswalrus_jump_update(void){ func_802B7E6C(); baphysics_get_velocity(sp1C); - if(button_released(BUTTON_A) && 0.0f < sp1C[1]) + if(bakey_released(BUTTON_A) && 0.0f < sp1C[1]) baphysics_reset_gravity(); switch(D_8037D5C8){ @@ -288,10 +288,10 @@ void bswalrus_jump_update(void){ }//L802B8838 if(player_isStable()){ - if(func_8029B300() > 0) + if(bastick_getZone() > 0) next_state = BS_WALRUS_WALK; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = BS_WALRUS_JUMP; } @@ -349,7 +349,7 @@ void bswalrus_fall_update(void){ }//L802B8A38 if(player_isStable()){ - if( func_8029B300() > 0 + if( bastick_getZone() > 0 || (D_8037D5C8 == 2 && anctrl_isStopped(aCtrl)) ){ if(miscFlag_isTrue(MISC_FLAG_19)) @@ -581,7 +581,7 @@ void bswalrus_sled_update(void){ if(should_look_first_person_camera()) next_state = badrone_look(); - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = BS_7E_WALRUS_SLED; next_state = func_8029CA94(next_state); @@ -604,8 +604,8 @@ void bswalrus_sled_jump_init(void){ anctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); anctrl_start(aCtrl, "bswalrus.c", 0x477); func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN); - if(func_8029B2E8() != 0.0f) - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f) + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); baphysics_set_target_yaw(yaw_getIdeal()); func_802B7F28(); baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity()); @@ -624,7 +624,7 @@ void bswalrus_sled_jump_update(void){ func_802B7F28(); baphysics_get_velocity(sp1C); - if(button_released(BUTTON_A) && 0.0f < sp1C[1]) + if(bakey_released(BUTTON_A) && 0.0f < sp1C[1]) baphysics_reset_gravity(); switch (D_8037D5C8) @@ -649,7 +649,7 @@ void bswalrus_sled_jump_update(void){ }//L802B9530 if(player_isStable()){ - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = BS_7E_WALRUS_SLED; next_state = func_8029CA94(next_state); @@ -704,13 +704,13 @@ void func_802B963C(void){ }//L802B96F0 if(player_isStable()){ - if( func_8029B300() > 0 + if( bastick_getZone() > 0 || (D_8037D5C8 == 2 && anctrl_isStopped(aCtrl)) ){ next_state = BS_7D_WALRUS_SLED; } - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) next_state = BS_7E_WALRUS_SLED; next_state = func_8029CA94(next_state); diff --git a/src/core2/code_12360.c b/src/core2/code_12360.c index 4ec15b7e..dc08799a 100644 --- a/src/core2/code_12360.c +++ b/src/core2/code_12360.c @@ -2,7 +2,7 @@ #include "functions.h" #include "variables.h" -extern f32 func_8029B2D0(void); +extern f32 bastick_getX(void); void func_8029957C(s32 arg0); @@ -23,7 +23,7 @@ void func_8029932C(f32 arg0){ } void func_80299338(void){ - f32 stickX = func_8029B2D0(); + f32 stickX = bastick_getX(); f32 d_yaw_deg; d_yaw_deg =(0.03 < (f64)mlAbsF(stickX)) ? ml_mapAbsRange_f(stickX, 0.0f, 1.0f, 1.0f, 6.0f) : 0.0f; yaw_setIdeal(yaw_getIdeal() + d_yaw_deg); @@ -32,14 +32,14 @@ void func_80299338(void){ void func_802993C8(void){ switch(D_8037C6B0){ case 1://802993F8 - if(func_8029B2E8() != 0.0f){ - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f){ + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); } yaw_update(); break; case 5://80299438 - if(func_8029B2E8() != 0.0f){ - yaw_setIdeal(func_8029B33C() + 180.0f); + if(bastick_distance() != 0.0f){ + yaw_setIdeal(bastick_getAngleRelativeToBanjo() + 180.0f); } yaw_update(); break; @@ -51,18 +51,18 @@ void func_802993C8(void){ yaw_update(); break; case 4://802994A8 - if(func_8029B2E8() != 0.0f){ - yaw_setIdeal(func_8029B33C()); + if(bastick_distance() != 0.0f){ + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); yaw_set(yaw_getIdeal()); } yaw_update(); break; case 7://802994F8 - if(func_8029B2E8() != 0.0f){ - f32 sp1C = func_8029B33C(); + if(bastick_distance() != 0.0f){ + f32 sp1C = bastick_getAngleRelativeToBanjo(); f32 diff = mlDiffDegF(yaw_getIdeal(), sp1C); if(D_8037C6B4 <= mlAbsF(diff)){ - yaw_setIdeal(func_8029B33C()); + yaw_setIdeal(bastick_getAngleRelativeToBanjo()); } } yaw_update(); diff --git a/src/core2/code_13FC0.c b/src/core2/code_13FC0.c deleted file mode 100644 index 134e6a80..00000000 --- a/src/core2/code_13FC0.c +++ /dev/null @@ -1,160 +0,0 @@ -#include -#include "core1/core1.h" -#include "functions.h" -#include "variables.h" - -extern void controller_getJoystick(s32, f32*); -extern f32 player_getYaw(void); -extern void particleEmitter_setSphericalParticleVelocityRange(ParticleEmitter *this, f32 pitch_min, f32 yaw_min, f32 radial_min, f32 pitch_max, f32 yaw_max, f32 radial_max); -ParticleEmitter * func_802EDD8C(f32[3], f32, f32); -extern void func_80354030(f32[3], f32); -extern void func_80356074(f32[3], f32[3], f32, f32); -extern void func_80292864(f32, f32); - -/* .bss */ -struct { - f32 unk0; - s32 unk4; - f32 unk8[5]; - f32 unk1C[2]; - f32 unk24; - f32 unk28; - s32 unk2C; - s32 unk30; - u8 unk34; -} D_8037D1A0; - -/*.code */ -f32 func_8029AF50(f32 arg0, f32 arg1, f32 arg2){ - return (arg0 - arg1)/(arg2 - arg1); -} - -void func_8029AF68(void) { - s32 i; - - if (D_8037D1A0.unk28 <= D_8037D1A0.unk8[0]) { - D_8037D1A0.unk4 = 0; - D_8037D1A0.unk0 = 0.0f; - return; - } - - if ((D_8037D1A0.unk8[0] < D_8037D1A0.unk28) && (D_8037D1A0.unk28 <= D_8037D1A0.unk8[1])) { - D_8037D1A0.unk4 = 1; - D_8037D1A0.unk0 = func_8029AF50(D_8037D1A0.unk28, D_8037D1A0.unk8[0], D_8037D1A0.unk8[1]); - return; - } - if ((D_8037D1A0.unk8[1] < D_8037D1A0.unk28) && (D_8037D1A0.unk28 <= D_8037D1A0.unk8[2])) { - D_8037D1A0.unk4 = 2; - D_8037D1A0.unk0 = func_8029AF50(D_8037D1A0.unk28, D_8037D1A0.unk8[1], D_8037D1A0.unk8[2]); - return; - } - if ((D_8037D1A0.unk8[2] < D_8037D1A0.unk28) && (D_8037D1A0.unk28 <= D_8037D1A0.unk8[3])) { - D_8037D1A0.unk4 = 3; - D_8037D1A0.unk0 = func_8029AF50(D_8037D1A0.unk28, D_8037D1A0.unk8[2], D_8037D1A0.unk8[3]); - return; - } - if ((D_8037D1A0.unk8[3] < D_8037D1A0.unk28) && (D_8037D1A0.unk28 <= D_8037D1A0.unk8[4])) { - D_8037D1A0.unk4 = 4; - D_8037D1A0.unk0 = func_8029AF50(D_8037D1A0.unk28, D_8037D1A0.unk8[3], D_8037D1A0.unk8[4]); - return; - } -} - -void func_8029B0C0(void) { - func_8029B324(0, 0.12f); - func_8029B324(1, 0.2f); - func_8029B324(2, 0.5f); - func_8029B324(3, 0.75f); - func_8029B324(4, 1.0f); -} - -void func_8029B11C(void) { - D_8037D1A0.unk1C[0] = D_8037D1A0.unk1C[1] = D_8037D1A0.unk28 = D_8037D1A0.unk24 = D_8037D1A0.unk0 = 0.0f; - D_8037D1A0.unk34 = 0; - D_8037D1A0.unk30 = 0; - D_8037D1A0.unk2C = 0; - D_8037D1A0.unk4 = 0; - func_8029B0C0(); -} - -void func_8029B174(void) { - controller_getJoystick(0, &D_8037D1A0.unk1C); - if (D_8037D1A0.unk34) { - D_8037D1A0.unk1C[0] = D_8037D1A0.unk1C[1] = 0.0f; - } - D_8037D1A0.unk28 = gu_sqrtf(D_8037D1A0.unk1C[0]*D_8037D1A0.unk1C[0] + D_8037D1A0.unk1C[1]*D_8037D1A0.unk1C[1]); - if (D_8037D1A0.unk28 != 0.0f) { - D_8037D1A0.unk2C = 0; - D_8037D1A0.unk30 = (s32) (D_8037D1A0.unk30 + 1); - D_8037D1A0.unk24 = ml_acosf(D_8037D1A0.unk1C[1] / D_8037D1A0.unk28); - if (D_8037D1A0.unk1C[0] < 0.0f) { - D_8037D1A0.unk24 = (f32) (180.0f - D_8037D1A0.unk24); - } - if (D_8037D1A0.unk1C[1] < 0.0f) { - D_8037D1A0.unk24 = (f32) (360.0f - D_8037D1A0.unk24); - } - } else { - D_8037D1A0.unk30 = 0; - D_8037D1A0.unk2C = (s32) (D_8037D1A0.unk2C + 1); - } - if (D_8037D1A0.unk28 > 1.0) { - D_8037D1A0.unk28 = 1.0f; - } - func_8029AF68(); -} - - -f32 func_8029B2D0(void){ - return D_8037D1A0.unk1C[0]; -} - -f32 func_8029B2DC(void){ - return D_8037D1A0.unk1C[1]; -} - -f32 func_8029B2E8(void){ - return D_8037D1A0.unk28; -} - -f32 func_8029B2F4(void){ - return D_8037D1A0.unk24; -} - -s32 func_8029B300(void){ - return D_8037D1A0.unk4; -} - -f32 func_8029B30C(void){ - return D_8037D1A0.unk0; -} - -void func_8029B318(bool arg0){ - D_8037D1A0.unk34 = arg0; -} - -void func_8029B324(s32 arg0, f32 arg1){ - D_8037D1A0.unk8[arg0] = arg1; -} - -f32 func_8029B33C(void){ - f32 sp1C[3]; - - _player_getPosition(sp1C); - return viewport_adjustAngleToRight(sp1C, func_8029B2F4()); -} - -s32 func_8029B370(void){ - return D_8037D1A0.unk30; -} - -s32 func_8029B37C(void){ - return D_8037D1A0.unk2C; -} - -bool func_8029B388(void){ - return D_8037D1A0.unk30 == 1; -} - -bool func_8029B39C(void){ - return D_8037D1A0.unk2C == 1; -} diff --git a/src/core2/code_14420.c b/src/core2/code_14420.c index dd7b8710..ededdc77 100644 --- a/src/core2/code_14420.c +++ b/src/core2/code_14420.c @@ -753,7 +753,7 @@ void func_8029C748(void) { } enum bs_e bs_getTypeOfJump(void){ - if(button_held(BUTTON_Z) && can_flap_flip()) + if(bakey_held(BUTTON_Z) && can_flap_flip()) return BS_12_BFLIP; if(miscFlag_isTrue(MISC_FLAG_2_ON_SPRING_PAD)) @@ -829,13 +829,13 @@ s32 func_8029C9C0(s32 arg0){ if(miscFlag_isTrue(MISC_FLAG_F)) return arg0; - if(button_pressed(BUTTON_A)) + if(bakey_pressed(BUTTON_A)) arg0 = bs_getTypeOfJump(); - if(button_pressed(BUTTON_B) && can_claw()) + if(bakey_pressed(BUTTON_B) && can_claw()) arg0 = BS_CLAW; - if(button_held(BUTTON_Z) && should_beak_barge()) + if(bakey_held(BUTTON_Z) && should_beak_barge()) arg0 = BS_BBARGE; if(should_look_first_person_camera()) diff --git a/src/core2/code_7060.c b/src/core2/code_7060.c index e81f72ba..a138740a 100644 --- a/src/core2/code_7060.c +++ b/src/core2/code_7060.c @@ -551,11 +551,11 @@ f32 func_8028EF88(void){ } bool func_8028EFC8(void){ - return func_802955A4(BUTTON_B, 2); + return bakey_getAndSetState(BUTTON_B, 2); } bool func_8028EFEC(void){ - return func_802955A4(BUTTON_A, 2); + return bakey_getAndSetState(BUTTON_A, 2); } void func_8028F010(enum actor_e actor_id){ @@ -786,12 +786,12 @@ void func_8028F760(s32 arg0, f32 arg1, f32 arg2){ void func_8028F784(bool arg0){ if(arg0){ - func_802955BC(TRUE); - func_8029B318(TRUE); + bakey_disableAll(TRUE); + bastick_lockAtzero(TRUE); } else{ - func_802955BC(FALSE); - func_8029B318(FALSE); + bakey_disableAll(FALSE); + bastick_lockAtzero(FALSE); } } diff --git a/src/core2/code_9900.c b/src/core2/code_9900.c deleted file mode 100644 index 8c0db8ef..00000000 --- a/src/core2/code_9900.c +++ /dev/null @@ -1,79 +0,0 @@ -#include -#include "functions.h" -#include "variables.h" - -/* .bss */ -u8 D_8037C040; -struct { - f32 unk0; - s32 unk4; -}D_8037C048; -struct{ - f32 unk0; - s32 unk4; -} D_8037C050; -f32 D_8037C058; - -/* .code */ -f32 func_80290890(f32 arg0){ - f64 temp_f2; - temp_f2 = func_80257A44(arg0, 0.7f); - arg0 = temp_f2 + temp_f2; - if(1.0 <= arg0){ - arg0 = 2.0 - arg0; - } - arg0 = arg0 - 0.5; - return (f64)arg0 * 0.04; -} - -f32 func_80290920(f32 arg0, f32 arg1, f32 arg2){ - f32 tick = time_getDelta(); - if(arg0 < arg1){ - arg0 += tick*arg2; - if(arg1 < arg0){ - arg0 = arg1; - } - } - else{ - arg0-= tick*arg2; - if(arg0 < arg1){ - arg0 = arg1; - } - } - return arg0; -} - -void func_8029099C(void){ - sfxsource_freeSfxsourceByIndex(D_8037C040); - D_8037C040 = 0; -} - -void func_802909C4(void){ - D_8037C040 = sfxsource_createSfxsourceAndReturnIndex(); - D_8037C050.unk0 = 1.0f; - - D_8037C048.unk4 = D_8037C050.unk4 = 13000; - D_8037C048.unk0 = D_8037C050.unk0; - sfxsource_setSfxId(D_8037C040, 0x3fa); - func_8030DD14(D_8037C040, 2); - sfxsource_playSfxAtVolume(D_8037C040, D_8037C048.unk0); - sfxsource_setSampleRate(D_8037C040, D_8037C048.unk4); - D_8037C058 = 0.0f; -} - -void func_80290A6C(void){ - D_8037C058 += time_getDelta(); - D_8037C048.unk0 = func_80290920(D_8037C048.unk0, D_8037C050.unk0, 0.3f); - D_8037C048.unk4 = func_80290920((f32)D_8037C048.unk4, (f32)D_8037C050.unk4, 100.0f); - sfxsource_playSfxAtVolume(D_8037C040, func_80290890(D_8037C058) + D_8037C048.unk0); - sfxsource_setSampleRate(D_8037C040, D_8037C048.unk4); - func_8030E2C4(D_8037C040); -} - -void func_80290B40(f32 arg0){ - D_8037C050.unk0 = arg0; -} - -void func_80290B4C(s32 arg0){ - D_8037C050.unk4 = arg0; -} diff --git a/src/core2/code_9BD0.c b/src/core2/code_9BD0.c index 7091cec7..14d0d1d3 100644 --- a/src/core2/code_9BD0.c +++ b/src/core2/code_9BD0.c @@ -182,7 +182,7 @@ void func_80291108(void){ void func_80291154(void){ int tmp; if(!func_80290D48() && !func_80290E8C()){ - if(button_held(BUTTON_R)){ + if(bakey_held(BUTTON_R)){ ncDynamicCamera_setState(0x13); func_80291488(0x4); func_80290F14(); @@ -200,7 +200,7 @@ void func_80291154(void){ void func_802911E0(void){ if( !func_80290D48() && !func_80290E8C() && !func_8029105C(7)){ func_80290F14(); - if(button_held(BUTTON_R)){ + if(bakey_held(BUTTON_R)){ func_802C095C(); } else{ diff --git a/src/core2/code_DF70.c b/src/core2/code_DF70.c index 49bc84e0..635aef0d 100644 --- a/src/core2/code_DF70.c +++ b/src/core2/code_DF70.c @@ -6,51 +6,51 @@ u32 D_8037C300; f32 D_8037C304; int should_beak_barge(void){ - return button_pressed(BUTTON_B) && can_beak_barge(); + return bakey_pressed(BUTTON_B) && can_beak_barge(); } int should_beak_bust(void){ - return button_pressed(BUTTON_Z) && can_beak_bust(); + return bakey_pressed(BUTTON_Z) && can_beak_bust(); } int should_look_first_person_camera(void){ - return button_pressed(BUTTON_C_UP) && can_view_first_person(); + return bakey_pressed(BUTTON_C_UP) && can_view_first_person(); } int should_rotate_camera_left(void){ - return button_pressed(BUTTON_C_LEFT) && func_802951FC(0); + return bakey_pressed(BUTTON_C_LEFT) && func_802951FC(0); } int should_rotate_camera_right(void){ - return button_pressed(BUTTON_C_RIGHT) && func_802951FC(1); + return bakey_pressed(BUTTON_C_RIGHT) && func_802951FC(1); } int should_zoom_out_camera(void){ - return button_pressed(BUTTON_C_DOWN) && func_802951FC(5); + return bakey_pressed(BUTTON_C_DOWN) && func_802951FC(5); } int should_poop_egg(void){ - return button_pressed(BUTTON_C_DOWN) && can_egg(); + return bakey_pressed(BUTTON_C_DOWN) && can_egg(); } int should_shoot_egg(void){ - return button_pressed(BUTTON_C_UP) && can_egg(); + return bakey_pressed(BUTTON_C_UP) && can_egg(); } int should_feathery_flap(void){ - return button_pressed(BUTTON_A) && can_feathery_flap(); + return bakey_pressed(BUTTON_A) && can_feathery_flap(); } int should_flap_flip(void){ - return button_pressed(BUTTON_A) && can_flap_flip(); + return bakey_pressed(BUTTON_A) && can_flap_flip(); } int should_peck(void){ - return button_pressed(BUTTON_B) && can_peck(); + return bakey_pressed(BUTTON_B) && can_peck(); } int should_dive(void){ - return button_pressed(BUTTON_B) && (D_8037C304 == 0.0f) && can_dive(); + return bakey_pressed(BUTTON_B) && (D_8037C304 == 0.0f) && can_dive(); } int func_802951FC(s32 arg0){ @@ -58,11 +58,11 @@ int func_802951FC(s32 arg0){ } int should_trot(void){ - return button_pressed(BUTTON_C_LEFT) && can_trot(); + return bakey_pressed(BUTTON_C_LEFT) && can_trot(); } int should_wonderwing(void){ - return button_pressed(BUTTON_C_RIGHT) && can_wonderwing(); + return bakey_pressed(BUTTON_C_RIGHT) && can_wonderwing(); } void func_8029528C(void){ diff --git a/src/core2/code_E410.c b/src/core2/code_E410.c deleted file mode 100644 index af0d226c..00000000 --- a/src/core2/code_E410.c +++ /dev/null @@ -1,80 +0,0 @@ -#include -#include "functions.h" -#include "variables.h" - -/* .bss */ -struct { - u32 unk0[0xE]; - u32 unk38[0xE]; - u8 unk70[0xE]; - u8 unk7E[0xE]; -} D_8037C310; - - -/* .code */ -void func_802953A0(void){ - s32 i; - - for(i = 0; i<0xe; i++){ - D_8037C310.unk0[i] = D_8037C310.unk38[i] = 0; - D_8037C310.unk70[i] = D_8037C310.unk7E[i] = 0; - } -} - -void func_80295448(void){ - s32 i; - - D_8037C310.unk0[0] = controller_getStartButton(0); - func_8024E60C(0, &D_8037C310.unk0[1]); - func_8024E6E0(0, &D_8037C310.unk0[4]); - controller_copyFaceButtons(0, &D_8037C310.unk0[8]); - for(i=0; i<0xE; i++){//L802954A8 - D_8037C310.unk7E[i] = D_8037C310.unk70[i]; - if(D_8037C310.unk70[i]){ - D_8037C310.unk0[i] = 0; - if(D_8037C310.unk70[i] == 2) - D_8037C310.unk70[i] = 0; - } - D_8037C310.unk38[i] = (D_8037C310.unk0[i])? 0: D_8037C310.unk38[i] + 1 ; - } - if(gctransition_8030BDC0()){ - func_802953A0(); - } -} - - -int func_8029551C(s32 button_indx){ - return D_8037C310.unk0[button_indx]; -} - -int func_80295530(s32 button_indx){ - return D_8037C310.unk38[button_indx]; -} - -int button_pressed(s32 button_indx){ - return D_8037C310.unk0[button_indx] == 1; -} - -int func_80295560(s32 button_indx){ - return D_8037C310.unk38[button_indx] == 1; -} - -u32 button_held(s32 button_indx){ - return D_8037C310.unk0[button_indx]; -} - -int button_released(s32 button_indx){ - return D_8037C310.unk38[button_indx]; -} - -int func_802955A4(s32 button_indx, s32 val){ - D_8037C310.unk70[button_indx] = val; - return D_8037C310.unk7E[button_indx]; -} - -void func_802955BC(s32 arg0){ - s32 i; - for(i=0; i<0xe; i++){ - func_802955A4(i, arg0); - } -} diff --git a/src/core2/code_E910.c b/src/core2/code_E910.c index 45a58186..c7963122 100644 --- a/src/core2/code_E910.c +++ b/src/core2/code_E910.c @@ -194,8 +194,8 @@ void func_80295914(void){ miscFlag_clearAll(); func_8028B6FC(); func_80291590(); - func_802953A0(); - func_8029B11C(); + bakey_reset(); + bastick_reset(); func_8029528C(); bsList_clearAll(); bs_clearState(); @@ -283,8 +283,8 @@ void func_80295C14(void){ func_8029E100(); pfsManager_update();//controller_update disableInput_set(); - func_80295448(); - func_8029B174(); + bakey_update(); + bastick_update(); func_8029533C(); //dive_cooldown_update bs_updateState(); baphysics_update();