diff --git a/include/bs_funcs.h b/include/bs_funcs.h index af23aa89..0c71258f 100644 --- a/include/bs_funcs.h +++ b/include/bs_funcs.h @@ -522,7 +522,7 @@ void func_802A7CA8(void); void func_802A7D74(void); //0x00000080 -void func_802B978C(void); +void bswalrus_timeout_init(void); void func_802B9830(void); void func_802B9880(void); diff --git a/include/core2/animctrl.h b/include/core2/animctrl.h index 8dede6e6..3ada9c78 100644 --- a/include/core2/animctrl.h +++ b/include/core2/animctrl.h @@ -4,9 +4,9 @@ #include #ifndef NONMATCHING -#define func_802875AC(this, file, line) _func_802875AC(this, file, line) +#define animctrl_start(this, file, line) _animctrl_start(this, file, line) #else -#define func_802875AC(this, file, line) _func_802875AC(this, __FILE__, __LINE__) +#define animctrl_start(this, file, line) _animctrl_start(this, __FILE__, __LINE__) #endif enum animctrl_playback_e{ @@ -39,14 +39,14 @@ typedef struct animctrl_s{ f32 subrange_end; f32 animation_duration; f32 transition_duration; - float unk18; + float start; s32 index; u8 playback_type; u8 playback_direction; u8 smooth_transition; u8 unk23; u8 unk24; - u8 unk25; + u8 default_start; u8 pad26[2]; } AnimCtrl; @@ -64,8 +64,8 @@ Animation *animctrl_getAnimPtr(AnimCtrl *this); void func_8028746C(AnimCtrl *this, void (* arg1)(s32,s32)); void func_8028748C(AnimCtrl *this, s32 arg1); void animctrl_reset(AnimCtrl *this); -void func_8028752C(AnimCtrl *this); -void _func_802875AC(AnimCtrl * this, char *file, s32 line); +void __animctrl_gotoStart(AnimCtrl *this); +void _animctrl_start(AnimCtrl * this, char *file, s32 line); void animctrl_setAnimTimer(AnimCtrl *this, f32 timer); void animctrl_setPlaybackType(AnimCtrl *this, enum animctrl_playback_e arg1); void animctrl_setDirection(AnimCtrl *this, s32 arg1); @@ -74,7 +74,7 @@ void animctrl_setDuration(AnimCtrl *this, f32 arg1); void animctrl_setTransitionDuration(AnimCtrl *this, f32 arg1); void animctrl_setSubRange(AnimCtrl *this, f32 start, f32 end); void animctrl_getSubRange(AnimCtrl *this, f32 *startPtr, f32 *endPtr); -void func_8028774C(AnimCtrl *this, f32 arg1); +void animctrl_setStart(AnimCtrl *this, f32 arg1); void func_80287784(AnimCtrl *this, s32 arg1); enum asset_e animctrl_getIndex(AnimCtrl *this); enum animctrl_playback_e animctrl_getPlaybackType(AnimCtrl *this); diff --git a/include/core2/ba/anim.h b/include/core2/ba/anim.h new file mode 100644 index 00000000..23232c58 --- /dev/null +++ b/include/core2/ba/anim.h @@ -0,0 +1,11 @@ +#ifndef __CORE2_BA_ANIM_H__ +#define __CORE2_BA_ANIM_H__ + +enum baanim_update_type_e { + BAANIM_UPDATE_0_NONE, + BAANIM_UPDATE_1_NORMAL, + BAANIM_UPDATE_2_SCALE_HORZ, + BAANIM_UPDATE_3_SCALE_VERT +}; + +#endif diff --git a/include/enums.h b/include/enums.h index 430f1c03..55ce2566 100644 --- a/include/enums.h +++ b/include/enums.h @@ -2411,6 +2411,8 @@ enum asset_e ASSET_11F_ANIM_BSWALRUS_IDLE, ASSET_120_ANIM_BSWALRUS_WALK, ASSET_121_ANIM_BSWALRUS_JUMP, + ASSET_122_ANIM_BSCROC_BITE, + ASSET_123_ANIM_BSCROC_EAT_BAD, ASSET_125_ANIM_YUMBLIE_APPEAR = 0x125, ASSET_126_ANIM_YUMBLIE_HIDE, @@ -2444,7 +2446,7 @@ enum asset_e ASSET_147_ANIM_BOOMBOX_MOVE, ASSET_148_ANIM_BOOMBOX_DIE, ASSET_149_ANIM_BSSPLAT, - ASSET_14A_ANIM_BANJO_LISTENING, + ASSET_14A_ANIM_BSREST_LISTEN, ASSET_153_ANIM_BURIED_TREASURE_APPEAR = 0x153, @@ -2463,6 +2465,7 @@ enum asset_e ASSET_164_ANIM_TOOTS_SING = 0x164, ASSET_165_ANIM_BEEHIVE_IDLE, ASSET_166_ANIM_BURIED_TREASURE_BOUNCE, + ASSET_167_ANIM_BSREST_MOVE, ASSET_16E_ANIM_MUMBO_RECLINE = 0x16E, ASSET_16F_ANIM_ZUBBA_FLY_MOVE, @@ -2498,6 +2501,8 @@ enum asset_e ASSET_1A1_ANIM_SLED = 0x1A1, ASSET_1A2_ANIM_NABNUT_SLEEP, + ASSET_1A9_ANIM_BSWALRUS_LOSS = 0x1A9, + ASSET_1AF_ANIM_TWINKLY_MUNCHER_APPEAR = 0x1AF, ASSET_1B0_ANIM_TWINKLY_MUNCHER_DIE, ASSET_1B1_ANIM_TWINKLY_MUNCHER_IDLE, diff --git a/include/functions.h b/include/functions.h index 2f3b07a5..36bf617d 100644 --- a/include/functions.h +++ b/include/functions.h @@ -85,8 +85,8 @@ float gu_sqrtf(float val); BKSpriteFrame *spriteGetFramePtr(BKSprite *, u32); bool baanim_isAt(f32); -void func_8028A180(enum asset_e anim_id, f32 duration); -void func_8028A37C(f32); +void baanim_playForDuration_once(enum asset_e anim_id, f32 duration); +void baanim_setEnd(f32); int player_inWater(void); @@ -110,7 +110,7 @@ f32 player_getYPosition(void); void func_80297970(f32); -f32 func_80297AAC(void); +f32 _get_vertVelocity(void); void climbGetBottom(f32 dst[3]); @@ -264,7 +264,7 @@ void func_80256E24(f32[3], f32, f32, f32, f32, f32); void func_8025727C(f32 x1, f32 y1, f32 z1, f32 x2, f32 y2, f32 z2, f32 *o1, f32 *o2); f32 func_80257A44(f32, f32); f32 ml_interpolate_f(f32, f32, f32); -f32 ml_mapRange_f(f32, f32, f32, f32, f32); +f32 ml_mapAbsRange_f(f32, f32, f32, f32, f32); int func_80257F18(f32 src[3], f32 target[3], f32 *yaw); bool func_8025801C(f32[3], f32*); @@ -287,14 +287,14 @@ void func_80287F7C(struct54s *arg0, s32 arg1); void func_80287F98(struct54s *arg0, s32 arg1); void func_80287FDC(struct54s *arg0, s32 arg1); -void func_80289EA8(f32, f32); +void baanim_setDurationRange(f32, f32); -void func_8028A010(enum asset_e anim_id, f32 duration); -void func_8028A100(enum asset_e anim_id, f32, f32); -void func_8028A1F4(enum asset_e anim_id, f32 duration, f32 arg2); -void func_8028A274(enum asset_e, f32); -void func_8028A3B8(f32, f32); +void baanim_playForDuration_loopSmooth(enum asset_e anim_id, f32 duration); +void baanim_playForDuration_loopStartingAt(enum asset_e anim_id, f32, f32); +void baanim_playForDuration_onceStartingAt(enum asset_e anim_id, f32 duration, f32 arg2); +void baanim_playForDuration_onceSmooth(enum asset_e, f32); +void baanim_setEndAndDuration(f32, f32); int func_8028AED4(f32*, f32); void func_8028E668(f32[3], f32, f32, f32); bool func_8028F364(f32[3], f32, f32, enum actor_e actor_id, Actor**); @@ -320,7 +320,7 @@ f32 func_80294500(void); BKCollisionTri *func_802946F0(void); void func_80294980(f32 arg0[3]); f32 get_slope_timer(void); -f32 func_80294A40(void); +f32 get_turbo_duration(void); void func_80295C08(void (* arg0)(void)); void func_802978DC(int); void func_80297970(f32); @@ -330,7 +330,7 @@ void func_802979AC(f32, f32); f32 func_80297A64(void); f32 func_80297A70(void); f32 func_80297A7C(void); -f32 func_80297AB8(void); +f32 _get_horzVelocity(void); f32 func_80297AF0(void); void gravity_set(f32); void func_80297B64(f32); @@ -356,8 +356,8 @@ void func_80299650(f32, f32); void func_80299B58(f32, f32); void func_80299CF4(enum sfx_e, f32, s32); void func_80299D2C(enum sfx_e, f32, s32); -void func_80289EC8(f32, f32, f32, f32); -void func_80289EF8(f32); +void baanim_setVelocityMapRanges(f32, f32, f32, f32); +void baanim_scaleDuration(f32); f32 bsStoredState_getLongLegTimer(void); f32 bsStoredState_getTurboTimer(void); void bsStoredState_setLongLegTimer(f32); @@ -507,7 +507,7 @@ void func_80352CF4(f32 *, f32 *, f32, f32); -AnimCtrl *_player_getAnimCtrlPtr(void); +AnimCtrl *baanim_getAnimCtrlPtr(void); void _get_velocity(f32 dst[3]); void player_setYPosition(f32); diff --git a/src/FP/ch/wozzasjig.c b/src/FP/ch/wozzasjig.c index 74c0e3e9..2dd056d5 100644 --- a/src/FP/ch/wozzasjig.c +++ b/src/FP/ch/wozzasjig.c @@ -56,10 +56,10 @@ void func_8038FF54(Actor *this){ } else{ animctrl_setIndex(this->animctrl, animctrl_getIndex(other->animctrl)); - func_8028774C(this->animctrl, animctrl_getAnimTimer(other->animctrl)); + animctrl_setStart(this->animctrl, animctrl_getAnimTimer(other->animctrl)); animctrl_setDuration(this->animctrl, animctrl_getDuration(other->animctrl)); animctrl_setSmoothTransition(this->animctrl, FALSE); - func_802875AC(this->animctrl, "chwozzasjig.c", 0x87); + animctrl_start(this->animctrl, "chwozzasjig.c", 0x87); this->position[0] = other->position[0]; this->position[1] = other->position[1]; this->position[2] = other->position[2]; diff --git a/src/core1/code_18350.c b/src/core1/code_18350.c index d10ffd00..91f759bc 100644 --- a/src/core1/code_18350.c +++ b/src/core1/code_18350.c @@ -759,12 +759,12 @@ f32 ml_map_f(f32 a, f32 b, f32 c, f32 d, f32 e) return e; } -f32 func_80257BFC(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4) +f32 ml_mapRange_f(f32 val, f32 in_min, f32 in_max, f32 out_min, f32 out_max) { - if (arg2 != arg1) - return ((arg0 - arg1) / (arg2 - arg1)) * (arg4 - arg3) + arg3; + if (in_max != in_min) + return ((val - in_min) / (in_max - in_min)) * (out_max - out_min) + out_min; - return arg4; + return out_max; } f32 ml_interpolate_f(f32 arg0, f32 arg1, f32 arg2) @@ -789,7 +789,7 @@ f32 func_80257CF8(f32 a, f32 b, f32 c, f32 d, f32 e) return ml_mapFunction_f(a, b, c, d, e, func_80257658); } -f32 ml_mapRange_f(f32 val, f32 in_min, f32 in_max, f32 out_min, f32 out_max) +f32 ml_mapAbsRange_f(f32 val, f32 in_min, f32 in_max, f32 out_min, f32 out_max) { if (val < 0) return ml_map_f(val, -in_min, -in_max, -out_min, -out_max); diff --git a/src/core2/animctrl.c b/src/core2/animctrl.c index 1987b5bb..483ee903 100644 --- a/src/core2/animctrl.c +++ b/src/core2/animctrl.c @@ -106,9 +106,9 @@ AnimCtrl *animctrl_new(s32 arg0){ //new func_802896EC(&this->animation, 1); this->animctrl.playback_type = 0; this->animctrl.index = 0; - this->animctrl.unk25 = 1; + this->animctrl.default_start = TRUE; this->animctrl.timer = 0.0f; - this->animctrl.unk18 = 0.0f; + this->animctrl.start = 0.0f; func_80287784(&this->animctrl, func_8030C77C()); animctrl_setSubRange(&this->animctrl, 0.0f, 1.0f); animctrl_setDuration(&this->animctrl, 2.0f); @@ -168,9 +168,9 @@ void func_8028748C(AnimCtrl *this, s32 arg1){ void animctrl_reset(AnimCtrl *this){ this->playback_type = ANIMCTRL_LOOP; - this->unk25 = 1; + this->default_start = TRUE; this->timer = 0.0; - this->unk18 = 0.0; + this->start = 0.0; animctrl_setSmoothTransition(this, 1); animctrl_setSubRange(this, 0.0, 1.0); animctrl_setDuration(this, 2.0); @@ -178,28 +178,29 @@ void animctrl_reset(AnimCtrl *this){ animctrl_setDirection(this, mvmt_dir_forwards); } -void func_8028752C(AnimCtrl *this){ - if(this->unk25){ +void __animctrl_gotoStart(AnimCtrl *this){ + if(this->default_start){ if(this->playback_direction) anim_setTimer(this->animation, 0.0f); else anim_setTimer(this->animation, 0.99999899f); } - else - anim_setTimer(this->animation, this->unk18); + else{ + anim_setTimer(this->animation, this->start); + } this->timer = anim_getTimer(this->animation); } -void _func_802875AC(AnimCtrl * this, char *file, s32 line){ +void _animctrl_start(AnimCtrl * this, char *file, s32 line){ if(this->smooth_transition && anim_getIndex(this->animation) != 0){ func_80289674(this->animation); anim_setIndex(this->animation, this->index); - func_8028752C(this); + __animctrl_gotoStart(this); anim_setDuration(this->animation, 0.0f); } else{ anim_8028980C(this->animation); anim_setIndex(this->animation, this->index); - func_8028752C(this); + __animctrl_gotoStart(this); anim_setDuration(this->animation, 1.0f); } } @@ -242,12 +243,12 @@ void animctrl_getSubRange(AnimCtrl *this, f32 *startPtr, f32 *endPtr){ *endPtr = this->subrange_end; } -void func_8028774C(AnimCtrl *this, f32 arg1){ - if(arg1 == 1.0) - arg1 = 0.9999989867210388f; // D_80373E18 +void animctrl_setStart(AnimCtrl *this, f32 start_position){ + if(start_position == 1.0) + start_position = 0.9999989867210388f; // D_80373E18 - this->unk18 = arg1; - this->unk25 = 0; + this->start = start_position; + this->default_start = FALSE; } void func_80287784(AnimCtrl *this, s32 arg1){ diff --git a/src/core2/ba/anim.c b/src/core2/ba/anim.c index 321a6602..47660d90 100644 --- a/src/core2/ba/anim.c +++ b/src/core2/ba/anim.c @@ -1,119 +1,135 @@ #include #include "functions.h" #include "variables.h" +#include "core2/ba/anim.h" extern f32 func_802E4B38(void); -extern f32 func_80257BFC(f32, f32, f32, f32, f32); +extern f32 ml_mapRange_f(f32, f32, f32, f32, f32); -void func_80289F30(void); +void baanim_80289F30(void); + +#define BAANIM_BIGHEAD 0x4 +#define BAANIM_SMALLHEAD 0x8 +#define BAANIM_LONGBODY 0x10 +#define BAANIM_BIGKAZOOIEHEAD 0x20 +#define BAANIM_BIGWINGS 0x40 +#define BAANIM_WISHYWASHY 0x80 /* .data */ f32 D_803635E0[3] = {0.0f, 5.0f, 0.0f}; -s32 D_803635EC[7] = {0x4, 0x3, 0x60, 0x18, 0x1B, 0x67, 0x80}; +s32 D_803635EC[7] = { //bottles bonus modification + BAANIM_BIGHEAD, + 0x2 | 0x1, + BAANIM_BIGWINGS | BAANIM_BIGKAZOOIEHEAD, + BAANIM_LONGBODY | BAANIM_SMALLHEAD, + BAANIM_LONGBODY | BAANIM_SMALLHEAD | 0x2 | 0x1, + BAANIM_BIGWINGS | BAANIM_BIGKAZOOIEHEAD | BAANIM_BIGHEAD | 0x2 | 0x1, + BAANIM_WISHYWASHY +}; /* .bss */ AnimCtrl *playerAnimCtrl; -s32 D_8037BF24; -f32 D_8037BF28; -f32 D_8037BF2C; +s32 baAnimState; +f32 baAnimMinDuration; +f32 baAnimMaxDuration; struct { - f32 unk0; - f32 unk4; - f32 unk8; - f32 unkC; - f32 unk10; - u8 unk14; -}D_8037BF30; -void (*D_8037BF48)(s32, s32); + f32 velocity_min; //velocity_min + f32 velocity_max; //velocity_max + f32 duration_min; //duration_min + f32 duration_max; //duration_max + f32 duration_scale; //duration_scale + u8 scalable_duration; //scalable_duration +}baAnimScale; +void (*baAnimModifyFunction)(s32, s32); /* .code */ -void func_80289820(s32 arg0){ - D_8037BF24 = arg0; +void __baanim_setUpdateType(enum baanim_update_type_e arg0){ + baAnimState = arg0; } -void func_8028982C(void) { - f32 sp2C[3]; +void __baanim_update_scaleToHorizontalVelocity(void) { + f32 velocity[3]; f32 temp_f12; - f32 sp24; + f32 scale; - sp24 = (D_8037BF30.unk14 != 0) ? D_8037BF30.unk10 : 1.0f; - _get_velocity(sp2C); - temp_f12 = func_80257BFC(gu_sqrtf(sp2C[0]*sp2C[0] + sp2C[2] * sp2C[2]), D_8037BF30.unk0, D_8037BF30.unk4, D_8037BF30.unk8 * sp24, D_8037BF30.unkC * sp24); - animctrl_setDuration(playerAnimCtrl, ml_clamp_f(temp_f12, D_8037BF28, D_8037BF2C)); + scale = (baAnimScale.scalable_duration != 0) ? baAnimScale.duration_scale : 1.0f; + _get_velocity(velocity); + temp_f12 = ml_mapRange_f(gu_sqrtf(velocity[0]*velocity[0] + velocity[2] * velocity[2]), baAnimScale.velocity_min, baAnimScale.velocity_max, baAnimScale.duration_min * scale, baAnimScale.duration_max * scale); + animctrl_setDuration(playerAnimCtrl, ml_clamp_f(temp_f12, baAnimMinDuration, baAnimMaxDuration)); animctrl_update(playerAnimCtrl); } -void func_802898F8(void) { - animctrl_setDuration(playerAnimCtrl, ml_clamp_f(func_80257BFC(mlAbsF(func_80297AAC()), D_8037BF30.unk0, D_8037BF30.unk4, D_8037BF30.unk8, D_8037BF30.unkC), D_8037BF28, D_8037BF2C)); +void __baanim_update_scaleToVerticalVelocity(void) { + animctrl_setDuration(playerAnimCtrl, ml_clamp_f(ml_mapRange_f(mlAbsF(_get_vertVelocity()), baAnimScale.velocity_min, baAnimScale.velocity_max, baAnimScale.duration_min, baAnimScale.duration_max), baAnimMinDuration, baAnimMaxDuration)); animctrl_update(playerAnimCtrl); } -void func_80289978(f32 sp2C[3], f32 arg1, f32 arg2, f32 arg3) { +void __baanim_oscillateScale(f32 dst[3], f32 x, f32 min, f32 osc_size) { s32 phi_s0; for(phi_s0 = 0; phi_s0 < 3; phi_s0++){ - sp2C[phi_s0] = ((((f64) sinf((f32) ((f64) func_80257A44((f32) ( arg1 + (2.0 * ((f64) (f32) phi_s0 / 3.0))), 2.0f) * 6.2831853080000002)) * 0.5) + 0.5) * arg3) + arg2; + dst[phi_s0] = min + osc_size*(0.5 + 0.5 * sinf((2.0*BAD_PI)*func_80257A44(x + (2.0 * ((f32) phi_s0 / 3.0)), 2.0f))); }; } -void func_80289A78(s32 arg0, s32 arg1) { - f32 sp2C[3]; +void __baanim_applyBottlesBonus(s32 arg0, s32 arg1) { + f32 scale[3]; f32 sp28; s32 phi_s0; static s32 D_8037BF4C; sp28 = func_802E4B38(); - if (func_803203FC(0x78) == 0) { + if (func_803203FC(UNKFLAGS1_78_SANDCASTLE_NO_BONUS) == 0) { D_8037BF4C = 0; } else { for(phi_s0 = 0; phi_s0 < 7; phi_s0++){ - if (func_803203FC(phi_s0 + 0x97)) { + if (func_803203FC(phi_s0 + UNKFLAGS1_97_SANDCASTLE_BOTTLES_BONUS_1)) { D_8037BF4C = D_803635EC[phi_s0]; } } } - if ((D_8037BF4C & 1)) { - func_80289978(sp2C, sp28, 2.0f, 1.0f); - func_8033A928(arg0, 6, sp2C); - func_8033A928(arg0, 0x14, sp2C); + if ((D_8037BF4C & 1)) {//either big hands or big feet + __baanim_oscillateScale(scale, sp28, 2.0f, 1.0f); + func_8033A928(arg0, 6, scale); + func_8033A928(arg0, 0x14, scale); } - if (D_8037BF4C & 2) { - func_80289978(sp2C, sp28, 2.0f, 1.0f); - func_8033A928(arg0, 0x10, sp2C); - func_8033A928(arg0, 0x1E, sp2C); + if (D_8037BF4C & 2) {//either big hands or big feet + __baanim_oscillateScale(scale, sp28, 2.0f, 1.0f); + func_8033A928(arg0, 0x10, scale); + func_8033A928(arg0, 0x1E, scale); } - if (D_8037BF4C & 4) { - func_80289978(sp2C, sp28, 2.0f, 1.0f); - func_8033A928(arg0, 0x12, sp2C); + if (D_8037BF4C & BAANIM_BIGHEAD) { + __baanim_oscillateScale(scale, sp28, 2.0f, 1.0f); + func_8033A928(arg0, 0x12, scale); } - if (D_8037BF4C & 8) { - func_80289978(sp2C, sp28, 0.2f, 0.5f); - func_8033A928(arg0, 0x12, sp2C); + if (D_8037BF4C & BAANIM_SMALLHEAD) { + __baanim_oscillateScale(scale, sp28, 0.2f, 0.5f); + func_8033A928(arg0, 0x12, scale); } - if (D_8037BF4C & 0x10) { + if (D_8037BF4C & BAANIM_LONGBODY) { func_8033A968(arg0, 1, &D_803635E0); } - if (D_8037BF4C & 0x20) { - func_80289978(sp2C, sp28, 2.0f, 1.0f); - func_8033A928(arg0, 0x6C, sp2C); + if (D_8037BF4C & BAANIM_BIGKAZOOIEHEAD) { + __baanim_oscillateScale(scale, sp28, 2.0f, 1.0f); + func_8033A928(arg0, 0x6C, scale); } - if (D_8037BF4C & 0x40) { - func_80289978(sp2C, sp28, 2.0f, 1.0f); - func_8033A928(arg0, 0x64, sp2C); - func_8033A928(arg0, 0x67, sp2C); + if (D_8037BF4C & BAANIM_BIGWINGS) { + __baanim_oscillateScale(scale, sp28, 2.0f, 1.0f); + func_8033A928(arg0, 0x64, scale); + func_8033A928(arg0, 0x67, scale); } if (map_get() == MAP_A_TTC_SANDCASTLE) { - if ((D_8037BF4C & 0x80) && (player_getTransformation() != TRANSFORM_7_WISHWASHY)) { + if ((D_8037BF4C & BAANIM_WISHYWASHY) && (player_getTransformation() != TRANSFORM_7_WISHWASHY)) { func_8028FB88(TRANSFORM_7_WISHWASHY); } - if (!(D_8037BF4C & 0x80) && (player_getTransformation() == TRANSFORM_7_WISHWASHY)) { + if (!(D_8037BF4C & BAANIM_WISHYWASHY) && (player_getTransformation() == TRANSFORM_7_WISHWASHY)) { func_8028FB88(TRANSFORM_1_BANJO); } } - if (D_8037BF48 != NULL) { - D_8037BF48(arg0, arg1); + if (baAnimModifyFunction != NULL) { + baAnimModifyFunction(arg0, arg1); } } @@ -121,15 +137,15 @@ void baAnim_init(void){ playerAnimCtrl = animctrl_new(1); func_80287784(playerAnimCtrl, 0); animctrl_setSmoothTransition(playerAnimCtrl, FALSE); - func_8028746C(playerAnimCtrl, func_80289A78); - D_8037BF48 = NULL; - func_80289F30(); - D_8037BF24 = 0; - func_80289820(1); - func_80289EA8(0.01f, 100.0f); - func_80289EC8(0.0f, 1000.0f, 0.1f, 10.0f); - D_8037BF30.unk14 = 0; - D_8037BF30.unk10 = 1.0f; + func_8028746C(playerAnimCtrl, __baanim_applyBottlesBonus); + baAnimModifyFunction = NULL; + baanim_80289F30(); + baAnimState = BAANIM_UPDATE_0_NONE; + __baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); + baanim_setDurationRange(0.01f, 100.0f); + baanim_setVelocityMapRanges(0.0f, 1000.0f, 0.1f, 10.0f); + baAnimScale.scalable_duration = 0; + baAnimScale.duration_scale = 1.0f; } void baAnim_free(void){ @@ -137,20 +153,20 @@ void baAnim_free(void){ } void baAnim_update(void){ - switch(D_8037BF24){ - case 2: - func_8028982C(); + switch(baAnimState){ + case BAANIM_UPDATE_2_SCALE_HORZ: + __baanim_update_scaleToHorizontalVelocity(); break; - case 3: - func_802898F8(); + case BAANIM_UPDATE_3_SCALE_VERT: + __baanim_update_scaleToVerticalVelocity(); break; - case 1: + case BAANIM_UPDATE_1_NORMAL: animctrl_update(playerAnimCtrl); break; - case 0: + case BAANIM_UPDATE_0_NONE: break; } } @@ -159,52 +175,52 @@ void baAnim_defrag(void){ playerAnimCtrl = animctrl_defrag(playerAnimCtrl); } -s32 func_80289E9C(void){ - return D_8037BF24; +enum baanim_update_type_e baanim_getUpdateType(void){ + return baAnimState; } -void func_80289EA8(f32 arg0, f32 arg1){ - D_8037BF28 = arg0; - D_8037BF2C = arg1; +void baanim_setDurationRange(f32 min, f32 max){ + baAnimMinDuration = min; + baAnimMaxDuration = max; } -void func_80289EBC(void (*arg0)(s32, s32)){ - D_8037BF48 = arg0; +void baanim_setModifyMethod(void (*arg0)(s32, s32)){ + baAnimModifyFunction = arg0; } -void func_80289EC8(f32 arg0, f32 arg1, f32 arg2, f32 arg3){ - D_8037BF30.unk0 = arg0; - D_8037BF30.unk4 = arg1; - D_8037BF30.unk8 = arg2; - D_8037BF30.unkC = arg3; - D_8037BF30.unk14 = 0; +void baanim_setVelocityMapRanges(f32 vel_min, f32 vel_max, f32 dur_slowest, f32 dur_fastest){ + baAnimScale.velocity_min = vel_min; + baAnimScale.velocity_max = vel_max; + baAnimScale.duration_min = dur_slowest; + baAnimScale.duration_max = dur_fastest; + baAnimScale.scalable_duration = FALSE; } -void func_80289EF8(f32 arg0){ - D_8037BF30.unk10 = arg0; - D_8037BF30.unk14 = 1; +void baanim_scaleDuration(f32 arg0){ + baAnimScale.duration_scale = arg0; + baAnimScale.scalable_duration = TRUE; } -void func_80289F10(s32 arg0){ - func_80289820(arg0); +void baanim_setUpdateType(enum baanim_update_type_e arg0){ + __baanim_setUpdateType(arg0); } -void func_80289F30(void){ +void baanim_80289F30(void){ f32 sp1C[3]; _player_getPosition(sp1C); func_8028781C(playerAnimCtrl, sp1C, 1); } -AnimCtrl *_player_getAnimCtrlPtr(void){ +AnimCtrl *baanim_getAnimCtrlPtr(void){ return playerAnimCtrl; } -f32 func_80289F70(void){ +f32 baanim_getTimer(void){ return animctrl_getAnimTimer(playerAnimCtrl); } -bool func_80289F94(enum asset_e anim_id){ +bool baanim_isAnimID(enum asset_e anim_id){ return animctrl_getIndex(playerAnimCtrl) == anim_id; } @@ -216,75 +232,75 @@ bool baanim_isAt(f32 time){ return animctrl_isAt(playerAnimCtrl, time); } -void func_8028A010(enum asset_e anim_id, f32 duration){ +void baanim_playForDuration_loopSmooth(enum asset_e anim_id, f32 duration){ animctrl_reset(playerAnimCtrl); animctrl_setIndex(playerAnimCtrl, anim_id); animctrl_setDuration(playerAnimCtrl, duration); - animctrl_setPlaybackType(playerAnimCtrl, 2); - func_802875AC(playerAnimCtrl, "baanim.c", 0x188); + animctrl_setPlaybackType(playerAnimCtrl, ANIMCTRL_LOOP); + animctrl_start(playerAnimCtrl, "baanim.c", 0x188); } -void func_8028A084(enum asset_e anim_id, f32 duration){ +void baanim_playForDuration_loop(enum asset_e anim_id, f32 duration){ animctrl_reset(playerAnimCtrl); animctrl_setSmoothTransition(playerAnimCtrl, FALSE); animctrl_setIndex(playerAnimCtrl, anim_id); animctrl_setDuration(playerAnimCtrl, duration); - animctrl_setPlaybackType(playerAnimCtrl, 2); - func_802875AC(playerAnimCtrl, "baanim.c", 0x193); + animctrl_setPlaybackType(playerAnimCtrl, ANIMCTRL_LOOP); + animctrl_start(playerAnimCtrl, "baanim.c", 0x193); } -void func_8028A100(enum asset_e anim_id, f32 duration, f32 arg2){ +void baanim_playForDuration_loopStartingAt(enum asset_e anim_id, f32 duration, f32 start_position){ animctrl_reset(playerAnimCtrl); animctrl_setIndex(playerAnimCtrl, anim_id); animctrl_setDuration(playerAnimCtrl, duration); - func_8028774C(playerAnimCtrl, arg2); - animctrl_setPlaybackType(playerAnimCtrl, 2); - func_802875AC(playerAnimCtrl, "baanim.c", 0x19e); + animctrl_setStart(playerAnimCtrl, start_position); + animctrl_setPlaybackType(playerAnimCtrl, ANIMCTRL_LOOP); + animctrl_start(playerAnimCtrl, "baanim.c", 0x19e); } -void func_8028A180(enum asset_e anim_id, f32 duration){ +void baanim_playForDuration_once(enum asset_e anim_id, f32 duration){ animctrl_reset(playerAnimCtrl); animctrl_setIndex(playerAnimCtrl, anim_id); animctrl_setDuration(playerAnimCtrl, duration); - animctrl_setPlaybackType(playerAnimCtrl, 1); - func_802875AC(playerAnimCtrl, "baanim.c", 0x1a8); + animctrl_setPlaybackType(playerAnimCtrl, ANIMCTRL_ONCE); + animctrl_start(playerAnimCtrl, "baanim.c", 0x1a8); } -void func_8028A1F4(enum asset_e anim_id, f32 duration, f32 arg2){ +void baanim_playForDuration_onceStartingAt(enum asset_e anim_id, f32 duration, f32 start_position){ animctrl_reset(playerAnimCtrl); animctrl_setIndex(playerAnimCtrl, anim_id); animctrl_setDuration(playerAnimCtrl, duration); - func_8028774C(playerAnimCtrl, arg2); - animctrl_setPlaybackType(playerAnimCtrl, 1); - func_802875AC(playerAnimCtrl, "baanim.c", 0x1b3); + animctrl_setStart(playerAnimCtrl, start_position); + animctrl_setPlaybackType(playerAnimCtrl, ANIMCTRL_ONCE); + animctrl_start(playerAnimCtrl, "baanim.c", 0x1b3); } -void func_8028A274(enum asset_e anim_id, f32 duration){ +void baanim_playForDuration_onceSmooth(enum asset_e anim_id, f32 duration){ animctrl_reset(playerAnimCtrl); animctrl_setSmoothTransition(playerAnimCtrl, FALSE); animctrl_setIndex(playerAnimCtrl, anim_id); animctrl_setDuration(playerAnimCtrl, duration); - animctrl_setPlaybackType(playerAnimCtrl, 1); - func_802875AC(playerAnimCtrl, "baanim.c", 0x1bd); + animctrl_setPlaybackType(playerAnimCtrl, ANIMCTRL_ONCE); + animctrl_start(playerAnimCtrl, "baanim.c", 0x1bd); } -void func_8028A2F0(enum asset_e anim_id, f32 duration, f32 arg2){ +void baanim_playForDuration_onceSmoothStartingAt(enum asset_e anim_id, f32 duration, f32 start_position){ animctrl_reset(playerAnimCtrl); animctrl_setSmoothTransition(playerAnimCtrl, FALSE); animctrl_setIndex(playerAnimCtrl, anim_id); animctrl_setDuration(playerAnimCtrl, duration); - func_8028774C(playerAnimCtrl, arg2); - animctrl_setPlaybackType(playerAnimCtrl, 1); - func_802875AC(playerAnimCtrl, "baanim.c", 0x1c9); + animctrl_setStart(playerAnimCtrl, start_position); + animctrl_setPlaybackType(playerAnimCtrl, ANIMCTRL_ONCE); + animctrl_start(playerAnimCtrl, "baanim.c", 0x1c9); } -void func_8028A37C(f32 arg0){ - animctrl_setSubRange(playerAnimCtrl, 0.0f, arg0); - animctrl_setPlaybackType(playerAnimCtrl, 1); +void baanim_setEnd(f32 end_position){ + animctrl_setSubRange(playerAnimCtrl, 0.0f, end_position); + animctrl_setPlaybackType(playerAnimCtrl, ANIMCTRL_ONCE); } -void func_8028A3B8(f32 arg0, f32 arg1){ - animctrl_setSubRange(playerAnimCtrl, 0.0f, arg0); - animctrl_setDuration(playerAnimCtrl, arg1); - animctrl_setPlaybackType(playerAnimCtrl, 1); +void baanim_setEndAndDuration(f32 end_position, f32 duration){ + animctrl_setSubRange(playerAnimCtrl, 0.0f, end_position); + animctrl_setDuration(playerAnimCtrl, duration); + animctrl_setPlaybackType(playerAnimCtrl, ANIMCTRL_ONCE); } diff --git a/src/core2/ba/marker.c b/src/core2/ba/marker.c index 69453d42..6b88f3dc 100644 --- a/src/core2/ba/marker.c +++ b/src/core2/ba/marker.c @@ -12,8 +12,8 @@ extern void __baMarker_8028BA00(s32); extern void func_802C418C(void); extern void func_802A6388(f32); extern f32 chwadingboots_802D6E4C(Actor *); -extern void func_80294AE8(f32); -extern f32 chtrainers_802CA748(Actor *); +extern void set_turbo_duration(f32); +extern f32 chtrainers_getDuration(Actor *); extern int func_80259254(f32 vec[3], f32 x, f32 z, f32 val); extern void func_802EE354(Actor *, s32, s32, s32, f32, f32, f32, f32 arg8[3], s32, f32 arg10[2]); extern void func_8035644C(s32); @@ -764,14 +764,14 @@ void __baMarker_resolveCollision(Prop *other_prop){ if(func_8028F170()) return; - if(chtrainers_802CA708(actor) == 0) + if(!chtrainers_canUse(actor)) return; miscflag_set(MISC_FLAG_10_TOUCHING_TURBO_TRAINERS); - func_80294AE8(chtrainers_802CA748(actor)); + set_turbo_duration(chtrainers_getDuration(actor)); bs_checkInterrupt(BS_INTR_1A); __spawnQueue_add_4((GenMethod_4)func_802C418C, 0x4E, reinterpret_cast(u32, other_prop->actorProp.x), reinterpret_cast(u32, other_prop->actorProp.y), reinterpret_cast(u32, other_prop->actorProp.z)); - chtrainers_802CA750(actor); + chtrainers_pickup(actor); break; case 0x1AE: //L8028CFEC diff --git a/src/core2/ba/model.c b/src/core2/ba/model.c index 1ca0c412..687fd2dd 100644 --- a/src/core2/ba/model.c +++ b/src/core2/ba/model.c @@ -94,7 +94,7 @@ void baModel_draw(Gfx **gfx, Mtx **mtx, Vtx **vtx){ sp38[2] += baModelDisplacement[2]; if(baModelBin){ - func_80289F30(); + baanim_80289F30(); func_8029DD6C(); modelRender_setEnvColor(env_color[0], env_color[1], env_color[2], baModelEnvAlpha); func_8033A280(2.0f); diff --git a/src/core2/bs/ant.c b/src/core2/bs/ant.c index f662c3ac..6eacc946 100644 --- a/src/core2/bs/ant.c +++ b/src/core2/bs/ant.c @@ -2,6 +2,7 @@ #include "functions.h" #include "variables.h" #include "core2/yaw.h" +#include "core2/ba/anim.h" void func_80293D48(f32,f32); @@ -56,7 +57,7 @@ void func_8029E4EC(void){ miscflag_clear(4); func_80293D74(); } - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); } void func_8029E554(void){ @@ -77,7 +78,7 @@ int bsant_inSet(s32 move_indx){ void bsant_idle_init(void){ func_8029E554(); - func_8028A010(ASSET_5E_ANIM_BSANT_IDLE, 1.2f); + baanim_playForDuration_loopSmooth(ASSET_5E_ANIM_BSANT_IDLE, 1.2f); func_8029C7F4(1,YAW_STATE_1_DEFAULT,1,2); func_80297970(0.0f); pitch_setAngVel(1000.0f, 12.0f); @@ -113,15 +114,15 @@ void bsant_idle_end(void){ void bsant_walk_init(void){ func_8029E554(); - func_8028A010(ASSET_5F_ANIM_BSANT_WALK, 0.8f); + baanim_playForDuration_loopSmooth(ASSET_5F_ANIM_BSANT_WALK, 0.8f); func_8029C7F4(2,YAW_STATE_1_DEFAULT,1,2); - func_80289EC8(D_80364960, D_80364964, D_80364968, D_8036496C); + baanim_setVelocityMapRanges(D_80364960, D_80364964, D_80364968, D_8036496C); func_802900B4(); } void bsant_walk_update(void){ enum bs_e sp1C = 0; - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); func_80299628(0); func_8029E48C(); @@ -150,16 +151,16 @@ void bsant_walk_end(void){ } void bsant_jump_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); func_8029E554(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_60_ANIM_BSANT_JUMP); animctrl_setDuration(aCtrl, 1.0f); animctrl_setTransitionDuration(aCtrl, 0.1f); - func_8028774C(aCtrl, 0.2987f); + animctrl_setStart(aCtrl, 0.2987f); animctrl_setSubRange(aCtrl, 0.0f, 0.4423f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsant.c", 0x17c); + animctrl_start(aCtrl, "bsant.c", 0x17c); func_8029C7F4(1,YAW_STATE_1_DEFAULT,3,6); if(func_8029B2E8() != 0.0f) yaw_setIdeal(func_8029B33C()); @@ -174,7 +175,7 @@ void bsant_jump_init(void){ void bsant_jump_update(void){ enum bs_e sp2C = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp1C[3]; @@ -188,14 +189,14 @@ void bsant_jump_update(void){ case 0://L8029EA88 if(animctrl_isStopped(aCtrl)){ animctrl_setDuration(aCtrl, 5.0f); - func_8028A37C(0.5026f); + baanim_setEnd(0.5026f); D_8037D294 = 1; } break; case 1://L8029EABC if(func_8028B254(0x82)){ animctrl_setDuration(aCtrl, 1.0f); - func_8028A37C(1.0f); + baanim_setEnd(1.0f); D_8037D294 = 2; } break; @@ -229,22 +230,22 @@ void bsant_jump_end(void){ } void bsant_fall_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); func_8029E554(); D_8037D298 = 0; animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_60_ANIM_BSANT_JUMP); animctrl_setDuration(aCtrl, 1.9f); - func_8028774C(aCtrl, 0.4423f); + animctrl_setStart(aCtrl, 0.4423f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED); - func_802875AC(aCtrl, "bsant.c", 0x208); + animctrl_start(aCtrl, "bsant.c", 0x208); func_8029C7F4(1,YAW_STATE_1_DEFAULT,3,6); D_8037D294 = 0; } void bsant_fall_update(void){ enum bs_e sp2C = 0; - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); f32 sp1C[3]; func_80299628(0); @@ -256,7 +257,7 @@ void bsant_fall_update(void){ case 0: if(func_8028B254(0x5A)){ animctrl_setDuration(aCtrl, 2.0f); - func_8028A37C(1.0f); + baanim_setEnd(1.0f); D_8037D294 = 1; } break; @@ -277,7 +278,7 @@ void bsant_fall_end(void){ } static void __bsant_recoil_init(int take_damage){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp38; f32 sp2C[3]; f32 sp20[3]; @@ -288,7 +289,7 @@ static void __bsant_recoil_init(int take_damage){ animctrl_setDuration(aCtrl, 1.4f); animctrl_setSubRange(aCtrl, 0.0f, 0.4899f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsant.c", 0x272); + animctrl_start(aCtrl, "bsant.c", 0x272); if(take_damage == 1) func_8030E58C(SFX_38_BANJO_AYE_1, 1.8f); else @@ -319,7 +320,7 @@ static void __bsant_recoil_update(void){ switch(D_8037D294){ case 0: if(func_8028B254(0x5a)){ - func_8028A37C(1.0f); + baanim_setEnd(1.0f); D_8037D294 = 1; } break; @@ -366,7 +367,7 @@ void bsant_bounce_end(void){ } void bsant_die_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp38; f32 sp2C[3]; f32 sp20[3]; @@ -378,7 +379,7 @@ void bsant_die_init(void){ animctrl_setSubRange(aCtrl, 0.0f, 0.523f); animctrl_setDuration(aCtrl, 1.6f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsant.c", 0x2f6); + animctrl_start(aCtrl, "bsant.c", 0x2f6); func_8030E58C(SFX_36_BANJO_DOH, 1.8f); _player_getPosition(sp2C); func_80294980(sp20); @@ -403,14 +404,14 @@ void bsant_die_init(void){ } void bsant_die_update(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); func_80297970(D_8037D290); func_80299628(0); switch(D_8037D294){ case 0://L8029F270 if(func_8028B2E8()){ - func_8028A37C(1.0f); + baanim_setEnd(1.0f); FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 18000); FUNC_8030E624(SFX_39_BANJO_AYE_2, 1.8f, 18000); D_8037D290 = 0.0f; @@ -448,7 +449,7 @@ void bsant_die_end(void){ void func_8029F398(void){ func_8029E554(); - func_8028A010(ASSET_5E_ANIM_BSANT_IDLE, 2.0f); + baanim_playForDuration_loopSmooth(ASSET_5E_ANIM_BSANT_IDLE, 2.0f); func_8029C7F4(1,YAW_STATE_1_DEFAULT,3,2); func_80297970(0.0f); func_8029C674(); diff --git a/src/core2/bs/bBarge.c b/src/core2/bs/bBarge.c index 329cd481..c23e323c 100644 --- a/src/core2/bs/bBarge.c +++ b/src/core2/bs/bBarge.c @@ -64,14 +64,14 @@ s32 bsbbarge_hitboxActive(void){ void bsbarge_init(void){ AnimCtrl *plyrMvmnt; - plyrMvmnt = _player_getAnimCtrlPtr(); + plyrMvmnt = baanim_getAnimCtrlPtr(); animctrl_reset(plyrMvmnt); animctrl_setSmoothTransition(plyrMvmnt, 0); animctrl_setIndex(plyrMvmnt, ASSET_1C_ANIM_BSBBARGE); animctrl_setDuration(plyrMvmnt, 1.0f); animctrl_setSubRange(plyrMvmnt, 0, 0.375f); animctrl_setPlaybackType(plyrMvmnt, ANIMCTRL_ONCE); - func_802875AC(plyrMvmnt, "bsbbarge.c", 0x98); + animctrl_start(plyrMvmnt, "bsbbarge.c", 0x98); D_8037D2A4 = 0; func_8029C7F4(1,1,3,3); func_8029797C(yaw_getIdeal()); @@ -92,7 +92,7 @@ void bsbarge_update(void){ AnimCtrl *plyrMvmnt; sp24 = 0; - plyrMvmnt = _player_getAnimCtrlPtr(); + plyrMvmnt = baanim_getAnimCtrlPtr(); if(button_released(BUTTON_B)) miscflag_set(0xA); switch(D_8037D2A5){ @@ -126,7 +126,7 @@ void bsbarge_update(void){ break; animctrl_setDuration(plyrMvmnt, 1.0f); - func_8028A37C(0.565f); + baanim_setEnd(0.565f); func_80297970(D_8037D2A0); func_802979AC(yaw_getIdeal(), func_80297A64()); func_8030E760(SFX_2_CLAW_SWIPE, 0.558f, 22000); @@ -138,7 +138,7 @@ void bsbarge_update(void){ func_80297970(D_8037D2A0); if(animctrl_isStopped(plyrMvmnt)){ animctrl_setDuration(plyrMvmnt, 2.0f); - func_8028A37C(0.6f); + baanim_setEnd(0.6f); func_8029E3C0(0, 0.1f); D_8037D2A5 = 3; } @@ -152,7 +152,7 @@ void bsbarge_update(void){ func_80297970(D_8037D2A0); if(D_8037D2A0 < 200.0f){ animctrl_setDuration(plyrMvmnt, 1.5f); - func_8028A37C(1.0f); + baanim_setEnd(1.0f); D_8037D2A5 = 4; } func_8029F4F0(); diff --git a/src/core2/bs/bEggAss.c b/src/core2/bs/bEggAss.c index e485b8ab..ada34240 100644 --- a/src/core2/bs/bEggAss.c +++ b/src/core2/bs/bEggAss.c @@ -8,7 +8,7 @@ u8 D_8037D2E1; /* .code */ void bseggass_init(void){ - func_8028A274(ASSET_2B_ANIM_BSEGGASS, 1.0f); + baanim_playForDuration_onceSmooth(ASSET_2B_ANIM_BSEGGASS, 1.0f); func_8029C7F4(1,3,1,3); yaw_setVelocityBounded(350.0f, 14.0f); func_80297970(0.0f); @@ -26,7 +26,7 @@ void bseggass_update(void) { s32 fill2; next_state = 0; - plyr_mvmt = _player_getAnimCtrlPtr(); + plyr_mvmt = baanim_getAnimCtrlPtr(); has_eggs = (item_empty(ITEM_D_EGGS) == 0); if (should_poop_egg()) { if (has_eggs) @@ -42,8 +42,8 @@ void bseggass_update(void) { ability_use(7); } if ((animctrl_isAt(plyr_mvmt, 0.4885f)) && (D_8037D2E1 < D_8037D2E0)) { - func_8028774C(plyr_mvmt, 0.349f); - func_802875AC(plyr_mvmt, "bsbeggass.c", 0x5E); + animctrl_setStart(plyr_mvmt, 0.349f); + animctrl_start(plyr_mvmt, "bsbeggass.c", 0x5E); D_8037D2E1++; } } diff --git a/src/core2/bs/bEggHead.c b/src/core2/bs/bEggHead.c index ba1ceaef..1a0bb2d2 100644 --- a/src/core2/bs/bEggHead.c +++ b/src/core2/bs/bEggHead.c @@ -3,7 +3,7 @@ #include "variables.h" void yaw_setVelocityBounded(f32, f32); -void func_802875AC(AnimCtrl *, char*, s32); +void animctrl_start(AnimCtrl *, char*, s32); /* .bss */ u8 D_8037D2F0; @@ -11,7 +11,7 @@ u8 D_8037D2F1; /* .code */ void bsegghead_init(void){ - func_8028A274(ASSET_2A_ANIM_BSEGGHEAD, 1.0f); + baanim_playForDuration_onceSmooth(ASSET_2A_ANIM_BSEGGHEAD, 1.0f); func_8029C7F4(1,3,1,3); yaw_setVelocityBounded(350.0f, 14.0f); func_80297970(0.0f); @@ -29,7 +29,7 @@ void bsegghead_update(void) { s32 fill2; next_state = 0; - aCtrl = _player_getAnimCtrlPtr(); + aCtrl = baanim_getAnimCtrlPtr(); has_eggs = (item_empty(ITEM_D_EGGS) == 0); if (should_shoot_egg()) { if (has_eggs) @@ -50,8 +50,8 @@ void bsegghead_update(void) { ability_use(7); } if ((animctrl_isAt(aCtrl, 0.5919f)) && (D_8037D2F1 < D_8037D2F0)) { - func_8028774C(aCtrl, 0.3878f); - func_802875AC(aCtrl, "bsbegghead.c", 0x62); + animctrl_setStart(aCtrl, 0.3878f); + animctrl_start(aCtrl, "bsbegghead.c", 0x62); D_8037D2F1++; } } diff --git a/src/core2/bs/bFlap.c b/src/core2/bs/bFlap.c index bd59c75e..e273af61 100644 --- a/src/core2/bs/bFlap.c +++ b/src/core2/bs/bFlap.c @@ -18,7 +18,7 @@ f32 D_8037D308; u8 D_8037D30C; void bsbflap_init(void) { - func_8028A274(ASSET_18_ANIM_BSBFLAP_ENTER, 0.3f); + baanim_playForDuration_onceSmooth(ASSET_18_ANIM_BSBFLAP_ENTER, 0.3f); func_8029C7F4(1, 1, 1, 2); if (func_8029B2E8() != 0.0f) { yaw_setIdeal(func_8029B33C()); @@ -50,7 +50,7 @@ void func_802A2790(s32 arg0, f32 arg1, s32 arg2) { void func_802A2810(void) { AnimCtrl *plyrMvPtr; - plyrMvPtr = _player_getAnimCtrlPtr(); + plyrMvPtr = baanim_getAnimCtrlPtr(); if (animctrl_isAt(plyrMvPtr, 0.9f)) { D_8037D301++; } @@ -75,7 +75,7 @@ f32 func_802A2858(void){ } void func_802A28CC(void){ - AnimCtrl *sp1c = _player_getAnimCtrlPtr(); + AnimCtrl *sp1c = baanim_getAnimCtrlPtr(); animctrl_setDuration(sp1c, func_802A2858()); } @@ -90,7 +90,7 @@ int func_802A293C(f32 arg0){ void func_802A298C(void){ AnimCtrl * sp1c; - sp1c = _player_getAnimCtrlPtr(); + sp1c = baanim_getAnimCtrlPtr(); if(func_802A293C(0.08f)){ func_802A2790(0x4e, 1.24f, 0x4e20); } @@ -105,7 +105,7 @@ void bsbflap_update(void){ AnimCtrl * sp18; sp1c = 0; - sp18 = _player_getAnimCtrlPtr(); + sp18 = baanim_getAnimCtrlPtr(); func_802B6FA8(); switch(D_8037D300){ case 0: @@ -117,8 +117,8 @@ void bsbflap_update(void){ animctrl_setIndex(sp18, ASSET_17_ANIM_BSBFLAP); animctrl_setDuration(sp18, func_802A2858()); animctrl_setPlaybackType(sp18, ANIMCTRL_LOOP); - func_8028774C(sp18, 0.0f); - func_802875AC(sp18, "bsbflap.c", 0xe1); + animctrl_setStart(sp18, 0.0f); + animctrl_start(sp18, "bsbflap.c", 0xe1); player_setYVelocity(D_80364A10); gravity_set(D_80364A14); func_80297BF8(D_80364A18); diff --git a/src/core2/bs/bFlip.c b/src/core2/bs/bFlip.c index d2ea9e75..2fc17f75 100644 --- a/src/core2/bs/bFlip.c +++ b/src/core2/bs/bFlip.c @@ -24,15 +24,15 @@ void _bsbflip_802A2D60(void){ } void _bsbflip_802A2DC0(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp20[3]; animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_4B_ANIM_BSBFLIP_ENTER); animctrl_setDuration(aCtrl, 2.2f); - func_8028774C(aCtrl, 0.8566f); + animctrl_setStart(aCtrl, 0.8566f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsbflip.c", 0x69); //nice + animctrl_start(aCtrl, "bsbflip.c", 0x69); //nice func_802978DC(3); func_80297970(0.0f); ml_vec3f_clear(sp20); @@ -41,15 +41,15 @@ void _bsbflip_802A2DC0(void){ } void bsbflip_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); animctrl_setIndex(aCtrl, ASSET_4B_ANIM_BSBFLIP_ENTER); animctrl_setDuration(aCtrl, 2.3f); animctrl_setSubRange(aCtrl, 0.0f, 0.7866f); - func_8028774C(aCtrl, 0.0f); + animctrl_setStart(aCtrl, 0.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsbflip.c", 0x80); + animctrl_start(aCtrl, "bsbflip.c", 0x80); func_8029C7F4(1,1,2,3); func_8029B324(0, 0.03f); func_8029B324(1, 1.0f); @@ -60,7 +60,7 @@ void bsbflip_init(void){ void bsbflip_update(void){ enum bs_e sp24 = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); if( animctrl_isAt(aCtrl, 0.2394f) && animctrl_getPlaybackType(aCtrl) != 2 @@ -103,7 +103,7 @@ void bsbflip_update(void){ animctrl_setIndex(aCtrl, ASSET_4C_ANIM_BSBFLIP_HOLD); animctrl_setDuration(aCtrl, 0.13f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_LOOP); - func_802875AC(aCtrl, "bsbflip.c", 0xd9); + animctrl_start(aCtrl, "bsbflip.c", 0xd9); D_8037D310 = 2; }//L802A316C if(should_beak_bust()){ @@ -119,7 +119,7 @@ void bsbflip_update(void){ animctrl_setIndex(aCtrl, ASSET_61_ANIM_BSBFLIP_EXIT); animctrl_setDuration(aCtrl, 0.8f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsbflip.c", 0xee); + animctrl_start(aCtrl, "bsbflip.c", 0xee); func_80297B94(); D_8037D310 = 3; }//L802A320C diff --git a/src/core2/bs/bFly.c b/src/core2/bs/bFly.c index c5abf55f..8f9b098e 100644 --- a/src/core2/bs/bFly.c +++ b/src/core2/bs/bFly.c @@ -133,7 +133,7 @@ int func_802A37F8(void){ } void bsbfly_enter_init(void){ - func_8028A274(ASSET_45_ANIM_BSBFLY_ENTER, 1.4f); + baanim_playForDuration_onceSmooth(ASSET_45_ANIM_BSBFLY_ENTER, 1.4f); func_8029C7F4(1,1,3,6); if(func_8029B2E8() != 0.0f) yaw_setIdeal(func_8029B33C()); @@ -150,7 +150,7 @@ void bsbfly_enter_init(void){ void bsbfly_enter_update(void){ enum bs_e sp1C = 0; - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); switch(D_8037D344){ case 0: @@ -163,7 +163,7 @@ void bsbfly_enter_update(void){ break; default: func_802A36D0(); - if(func_80297AAC() < 0.0f) + if(_get_vertVelocity() < 0.0f) sp1C = BS_24_FLY; break; } @@ -177,7 +177,7 @@ void bsbfly_enter_end(void){ } void bsbfly_init(void){ - func_8028A010(ASSET_38_ANIM_BSBFLY, 0.62f); + baanim_playForDuration_loopSmooth(ASSET_38_ANIM_BSBFLY, 0.62f); func_8029C7F4(1,1,3,3); if(miscflag_isTrue(9)){ func_80297970(0.0f); @@ -199,7 +199,7 @@ void bsbfly_init(void){ void bsbfly_update(void){ enum bs_e sp54 = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); BKCollisionTri *sp4C; f32 sp40[3]; f32 sp3C; @@ -320,7 +320,7 @@ int bsbfly_bombHitboxActive(void){ //bsbfly_bomb_init void func_802A3F9C(void){ f32 sp1C[3]; - func_8028A180(ASSET_43_ANIM_BSBFLY_BEAKBOMB_START, 1.0f); + baanim_playForDuration_once(ASSET_43_ANIM_BSBFLY_BEAKBOMB_START, 1.0f); func_8029C7F4(1,1,3,7); func_802A339C(D_8037D338, sp1C, 4200.0f); yaw_setIdeal(sp1C[1] + 180.0f); @@ -371,7 +371,7 @@ void func_802A411C(void) { f32 sp24; next_state = 0; - sp58 = _player_getAnimCtrlPtr(); + sp58 = baanim_getAnimCtrlPtr(); switch (D_8037D344) { case 0: if (animctrl_isAt(sp58, 0.6905f)) { @@ -430,7 +430,7 @@ void func_802A411C(void) { animctrl_setIndex(sp58, 0x47); animctrl_setDuration(sp58, 0.3f); animctrl_setPlaybackType(sp58, ANIMCTRL_LOOP); - func_802875AC(sp58, "bsbfly.c", 0x361); + animctrl_start(sp58, "bsbfly.c", 0x361); } break; } @@ -446,13 +446,13 @@ void func_802A4404(void){ void func_802A4430(void){ AnimCtrl *plyr_animctrl; - plyr_animctrl = _player_getAnimCtrlPtr(); + plyr_animctrl = baanim_getAnimCtrlPtr(); animctrl_reset(plyr_animctrl); animctrl_setTransitionDuration(plyr_animctrl, 0.3f); animctrl_setIndex(plyr_animctrl, ASSET_CC_ANIM_BSFLY_BEAKBOMB_END); animctrl_setDuration(plyr_animctrl, 0.38f); animctrl_setPlaybackType(plyr_animctrl, ANIMCTRL_LOOP); - func_802875AC(plyr_animctrl, "bsbfly.c", 0x38a); + animctrl_start(plyr_animctrl, "bsbfly.c", 0x38a); func_8029C7F4(1, 1, 3, 3); func_8029E070(1); func_802A3430(); @@ -476,7 +476,7 @@ void func_802A4548(void){ switch(D_8037D344){ case 0://L802A457C if(func_8028B254(0x5A)){ - func_8028A1F4(8, 2.0f, 0.6667f); + baanim_playForDuration_onceStartingAt(ASSET_8_ANIM_BSJUMP, 2.0f, 0.6667f); D_8037D344 = 1; } break; @@ -527,7 +527,7 @@ void func_802A46C8(void) { void bsbfly_beakbomb_crash_init(void) { - func_8028A180(ASSET_3E_ANIM_BSBFLY_BEAKBOMB_CRASH, 1.4f); + baanim_playForDuration_once(ASSET_3E_ANIM_BSBFLY_BEAKBOMB_CRASH, 1.4f); func_8029C7F4(1, 1, 3, 3); func_8029E070(1); FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 32750); @@ -542,7 +542,7 @@ void bsbfly_beakbomb_crash_init(void) { void func_802A47E0(void) { AnimCtrl *sp1C; - sp1C = _player_getAnimCtrlPtr(); + sp1C = baanim_getAnimCtrlPtr(); if (animctrl_isAt(sp1C, 0.3659f)) { FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 1.0f, 14000); func_80299CF4(SFX_8B_KAZOOIE_RAWW, 1.0f, 28000); @@ -564,7 +564,7 @@ void func_802A48B4(void) { AnimCtrl *sp18; next_state = 0; - sp18 = _player_getAnimCtrlPtr(); + sp18 = baanim_getAnimCtrlPtr(); func_80299628(0); switch (D_8037D344) { case 0: @@ -579,13 +579,13 @@ void func_802A48B4(void) { D_8037D344 = 2; } } else if (animctrl_isAt(sp18, 0.92f)) { - func_8028A180(0xD2, 2.25f); + baanim_playForDuration_once(ASSET_D2_ANIM_BSSPLAT, 2.25f); D_8037D344 = 1; } break; case 1: if (animctrl_isAt(sp18, 0.219f)) { - func_80299CF4(SFX_36_BANJO_DOH, 1.0f, 0x3E80); + func_80299CF4(SFX_36_BANJO_DOH, 1.0f, 16000); } if (animctrl_isAt(sp18, 0.63f)) { next_state = BS_20_LANDING; @@ -631,7 +631,7 @@ void func_802A4A78(s32 arg0) { sp20 = 400.0f; } func_802BB3DC(2, 100.0f, 0.85f); - func_8028A274(ASSET_D3_ANIM_BSBFLY_BEAKBOMB_REBOUND, 1.2f); + baanim_playForDuration_onceSmooth(ASSET_D3_ANIM_BSBFLY_BEAKBOMB_REBOUND, 1.2f); func_80299BFC(1.0f); rumbleManager_80250D94(1.0f, 0.5f, 0.5f); _player_getPosition(sp3C); @@ -661,7 +661,7 @@ void func_802A4C34(s32 arg0) { s32 next_state; next_state = 0; - if (animctrl_isStopped(_player_getAnimCtrlPtr())) { + if (animctrl_isStopped(baanim_getAnimCtrlPtr())) { next_state = BS_24_FLY; } if (func_8028B2E8()) { @@ -709,7 +709,7 @@ void func_802A4D90(void) { f32 sp1C[3]; func_802BB3DC(2, 100.0f, 0.85f); - func_8028A274(0x10D, 1.0f); + baanim_playForDuration_onceSmooth(0x10D, 1.0f); func_8030E58C(SFX_56_BANJO_HUI, 1.0f); _player_getPosition(player_position); func_80294980(sp1C); @@ -736,7 +736,7 @@ void func_802A4EC8(void) { AnimCtrl *sp18; next_state = 0; - sp18 = _player_getAnimCtrlPtr(); + sp18 = baanim_getAnimCtrlPtr(); if (func_8028B2E8()) { next_state = BS_20_LANDING; } @@ -754,7 +754,7 @@ void func_802A4F44(void){ } void func_802A4F74(void) { - func_8028A010(ASSET_38_ANIM_BSBFLY, 0.62f); + baanim_playForDuration_loopSmooth(ASSET_38_ANIM_BSBFLY, 0.62f); func_8029C7F4(1, 1, 3, 7); func_8029E070(1); func_802914CC(4); @@ -765,7 +765,7 @@ void func_802A4FC8(void) { s32 next_state; next_state = 0; - if (animctrl_isAt(_player_getAnimCtrlPtr(), 0.1358f) != 0) { + if (animctrl_isAt(baanim_getAnimCtrlPtr(), 0.1358f) != 0) { func_8030EBC8(SFX_2_CLAW_SWIPE, 0.6f, 0.7f, 10000, 12000); } if (func_80298850() == 0) { @@ -789,7 +789,7 @@ void func_802A505C(void){ } /* BREAK??? */ -extern void func_8028A084(s32, f32); +extern void baanim_playForDuration_loop(s32, f32); /* .code */ void func_802A50B0(void){ @@ -807,7 +807,7 @@ void func_802A50F8(void){ } void func_802A5120(void){ - func_8028A084(ASSET_68_ANIM_BSJUMP_TUMBLE, 0.35f); + baanim_playForDuration_loop(ASSET_68_ANIM_BSJUMP_TUMBLE, 0.35f); func_8029C7F4(1,1,3,6); func_80297970(0.0f); func_80297A0C(0); diff --git a/src/core2/bs/bLongLeg.c b/src/core2/bs/bLongLeg.c index 3aefed70..4d72f617 100644 --- a/src/core2/bs/bLongLeg.c +++ b/src/core2/bs/bLongLeg.c @@ -3,6 +3,7 @@ #include "variables.h" #include "core2/ba/model.h" #include "core2/statetimer.h" +#include "core2/ba/anim.h" /* .data */ @@ -91,13 +92,13 @@ void func_802A5404(void){ } void __bsblongleg_enterFromTrot(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); animctrl_setIndex(aCtrl, ASSET_40_ANIM_BSLONGLEG_ENTER_FROM_BTROT); animctrl_setDuration(aCtrl, 1.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsblongleg.c", 0xe1); + animctrl_start(aCtrl, "bsblongleg.c", 0xe1); stateTimer_set(STATE_TIMER_2_LONGLEG, D_8037D35C); func_803219F4(2); func_8030E2C4(D_8037D361); @@ -105,13 +106,13 @@ void __bsblongleg_enterFromTrot(void){ } void __bsblongleg_enter(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); animctrl_setIndex(aCtrl, ASSET_16_ANIM_BSBTROT_ENTER); animctrl_setDuration(aCtrl, 0.5f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsblongleg.c", 0xf6); + animctrl_start(aCtrl, "bsblongleg.c", 0xf6); D_8037D360 = 0; } @@ -132,7 +133,7 @@ void bsblongleg_enter_init(void){ void bsblongleg_enter_update(void){ enum bs_e next_state = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); func_802A531C(); func_80299594(1, 0.5f); switch(D_8037D360){ @@ -154,7 +155,7 @@ void bsblongleg_enter_end(void){ } void bsblongleg_stand_enter(void){ - func_8028A010(ASSET_41_ANIM_BSLONGLEG_IDLE, 1.0f); + baanim_playForDuration_loopSmooth(ASSET_41_ANIM_BSLONGLEG_IDLE, 1.0f); func_8029C7F4(1,1,1,2); func_80297970(0.0f); baModel_setDirection(PLAYER_MODEL_DIR_KAZOOIE); @@ -195,19 +196,19 @@ void bsblongleg_stand_end(void){ } void bsblongleg_walk_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_42_ANIM_BSLONGLEG_WALK); animctrl_setPlaybackType(aCtrl, ANIMCTRL_LOOP); - func_802875AC(aCtrl, "bsblongleg.c", 0x1a1); + animctrl_start(aCtrl, "bsblongleg.c", 0x1a1); func_8029C7F4(2,1,1,2); - func_80289EC8(D_80364A40, D_80364A44, D_80364A48, D_80364A4C); + baanim_setVelocityMapRanges(D_80364A40, D_80364A44, D_80364A48, D_80364A4C); } void bsblongleg_walk_update(void){ enum bs_e next_state = 0; - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); func_802A531C(); func_80299594(1, 0.5f); func_8029AD28(0.47f, 4); @@ -245,32 +246,32 @@ void bsblongleg_walk_end(void){ } void func_802A5AB0(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); animctrl_setDirection(aCtrl, 0); animctrl_setIndex(aCtrl, ASSET_40_ANIM_BSLONGLEG_ENTER_FROM_BTROT); animctrl_setDuration(aCtrl, 1.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsblongleg.c", 0x200); + animctrl_start(aCtrl, "bsblongleg.c", 0x200); D_8037D360 = 0; } void func_802A5B34(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); animctrl_setIndex(aCtrl, ASSET_7_ANIM_BSBTROT_EXIT); animctrl_setDuration(aCtrl, 0.6f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsblongleg.c", 0x210); + animctrl_start(aCtrl, "bsblongleg.c", 0x210); D_8037D360 = 1; } void bsblongleg_exit_init(void){ func_802A5AB0(); - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); func_8029957C(2); func_80297970(0.0f); D_8037D361 = func_8030D90C(); @@ -280,7 +281,7 @@ void bsblongleg_exit_init(void){ void bsblongleg_exit_update(void){ enum bs_e next_state = 0; - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); func_802A531C(); func_80299628(1); switch(D_8037D360){ @@ -311,16 +312,16 @@ void bsblongleg_exit_end(void){ } void bsblongleg_jump_init(void){ - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); D_8037D350 = 0.14f; animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_3D_ANIM_BSLONGLEG_JUMP); animctrl_setTransitionDuration(aCtrl, 0.134f); animctrl_setDuration(aCtrl, 1.0f); - func_8028774C(aCtrl, D_8037D350); + animctrl_setStart(aCtrl, D_8037D350); animctrl_setSubRange(aCtrl, 0.0f, 0.42f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsblongleg.c", 0x27F); + animctrl_start(aCtrl, "bsblongleg.c", 0x27F); func_8029C7F4(1,1,3,6); if(func_8029B2E8() != 0.0f) yaw_setIdeal(func_8029B33C()); @@ -335,7 +336,7 @@ void bsblongleg_jump_init(void){ void bsblongleg_jump_update(void){ enum bs_e sp44 = 0; - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); f32 sp34[3]; f32 sp30; @@ -404,13 +405,13 @@ void bsblongleg_jump_end(void){ } void bsblongleg_slide_init(void){ - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_3D_ANIM_BSLONGLEG_JUMP); animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED); - func_8028774C(aCtrl, 0.0865f); - func_802875AC(aCtrl, "bsblongleg.c", 0x339); + animctrl_setStart(aCtrl, 0.0865f); + animctrl_start(aCtrl, "bsblongleg.c", 0x339); func_8029C7F4(1,1,3,3); func_8029797C(yaw_getIdeal()); func_802979AC(yaw_getIdeal(), func_80297A64()); @@ -461,7 +462,7 @@ void func_802A6388(f32 arg0){ } void func_802A6394(void){ - func_8028A010(ASSET_41_ANIM_BSLONGLEG_IDLE, 1.0f); + baanim_playForDuration_loopSmooth(ASSET_41_ANIM_BSLONGLEG_IDLE, 1.0f); func_8029C7F4(1,1,3,2); func_80297970(0.0f); func_802A5374(); diff --git a/src/core2/bs/bPeck.c b/src/core2/bs/bPeck.c index beaf584e..63ee5a16 100644 --- a/src/core2/bs/bPeck.c +++ b/src/core2/bs/bPeck.c @@ -4,7 +4,7 @@ #include "core2/yaw.h" void baModel_80292048(s32, f32, f32, f32); -void func_802875AC(AnimCtrl *, char *, s32); +void animctrl_start(AnimCtrl *, char *, s32); /* .data */ f32 D_80364A60 = -1400.0f; @@ -37,7 +37,7 @@ void bsbpeck_init(void){ if(func_80293234() == 1) func_80293240(2); - func_8028A274(ASSET_1A_ANIM_BSBPECK, 0.2f); + baanim_playForDuration_onceSmooth(ASSET_1A_ANIM_BSBPECK, 0.2f); func_8029C7F4(1,YAW_STATE_3_BOUNDED, 1, 6); yaw_setVelocityBounded(1200.0f, 10.0f); func_8029E070(1); @@ -72,7 +72,7 @@ void func_802A664C(void){ void bsbpeck_update(void){ enum bs_e sp24 = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); func_802B6FA8(); if(D_8037D377){ @@ -83,10 +83,10 @@ void bsbpeck_update(void){ case 0://L802A6770 if(animctrl_isAt(aCtrl, 0.9126f)){ animctrl_setIndex(aCtrl, ASSET_19_ANIM_BSBPECK_ENTER); - func_8028774C(aCtrl, 0.0f); + animctrl_setStart(aCtrl, 0.0f); animctrl_setDuration(aCtrl, 0.35f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_LOOP); - func_802875AC(aCtrl, "bsbpeck.c", 0xbd); + animctrl_start(aCtrl, "bsbpeck.c", 0xbd); D_8037D370 = 0.5f; D_8037D374 = 1; } @@ -106,7 +106,7 @@ void bsbpeck_update(void){ animctrl_setDirection(aCtrl, 0); animctrl_setDuration(aCtrl, 0.2f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsbpeck.c", 0xd4); + animctrl_start(aCtrl, "bsbpeck.c", 0xd4); D_8037D374 = 2; } break; diff --git a/src/core2/bs/bShock.c b/src/core2/bs/bShock.c index 3d2ce69b..40151c1f 100644 --- a/src/core2/bs/bShock.c +++ b/src/core2/bs/bShock.c @@ -13,14 +13,14 @@ u8 D_8037D382; /* .code */ void bsbshock_charge_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_48_ANIM_BSBSHOCK_CHARGE); animctrl_setTransitionDuration(aCtrl, 0.4f); animctrl_setDuration(aCtrl, 4.2f); animctrl_setSubRange(aCtrl, 0.0f, 0.1061f); animctrl_setPlaybackType(aCtrl,1); - func_802875AC(aCtrl, "bsbshock.c", 0x61); + animctrl_start(aCtrl, "bsbshock.c", 0x61); func_8029C7F4(1,1,3,6); if(func_8029B2E8() != 0.0f) @@ -43,7 +43,7 @@ void bsbshock_charge_init(void){ void bsbshock_charge_update(void){ enum bs_e sp2C = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp1C[3]; if(func_8028B2E8()){ @@ -123,15 +123,15 @@ void bsbshock_charge_end(void){ } void bsbshock_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); animctrl_setIndex(aCtrl, ASSET_49_ANIM_BSBSHOCK_JUMP); animctrl_setDuration(aCtrl, 0.8f); - func_8028774C(aCtrl, 0.5304f); + animctrl_setStart(aCtrl, 0.5304f); animctrl_setSubRange(aCtrl, 0.0f, 1.0f); animctrl_setPlaybackType(aCtrl,1); - func_802875AC(aCtrl, "bsbshock.c", 0x13a); + animctrl_start(aCtrl, "bsbshock.c", 0x13a); func_8029C7F4(1,1,3,6); if(func_8029B2E8() != 0.0f) @@ -154,7 +154,7 @@ void bsbshock_init(void){ void bsbshock_update(void){ enum bs_e sp2C = 0; f32 sp20[3]; - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); func_802B6FA8(); _get_velocity(sp20); diff --git a/src/core2/bs/bSwim.c b/src/core2/bs/bSwim.c index ffdc710e..cfda7347 100644 --- a/src/core2/bs/bSwim.c +++ b/src/core2/bs/bSwim.c @@ -112,7 +112,7 @@ void func_802A75B0(void) { } void func_802A762C() { - func_8028A010(0x70, 2.0f); + baanim_playForDuration_loopSmooth(0x70, 2.0f); func_802A7140(); func_80297930(0); func_802A744C(); @@ -152,13 +152,13 @@ void func_802A7738(void) { AnimCtrl* temp_s0; AnimCtrl* temp_v0; - temp_v0 = _player_getAnimCtrlPtr(); + temp_v0 = baanim_getAnimCtrlPtr(); temp_s0 = temp_v0; animctrl_reset(temp_v0); animctrl_setIndex(temp_s0, ASSET_3F_ANIM_BSSWIM_DIVE_MOVE); - func_8028774C(temp_s0, 0.4626f); + animctrl_setStart(temp_s0, 0.4626f); animctrl_setDuration(temp_s0, 1.0f); - func_802875AC(temp_s0, "bsbswim.c", 0x186); + animctrl_start(temp_s0, "bsbswim.c", 0x186); func_802A7140(); func_802A744C(); D_8037D390 = 0.0f; @@ -184,7 +184,7 @@ void func_802A7838(void) { f64 temp_f2; next_state = 0; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); func_802A71D8(); func_802A7304(); if (D_8037D390 > 0.0f) { @@ -233,7 +233,7 @@ void func_802A7A2C() { } void func_802A7A54() { - func_8028A010(0x71, 0.75f); + baanim_playForDuration_loopSmooth(0x71, 0.75f); func_802A7140(); func_802A744C(); D_8037D390 = 120.0f; @@ -246,7 +246,7 @@ void func_802A7AB0(void) { AnimCtrl *anim_ctl; next_state = 0; - anim_ctl = _player_getAnimCtrlPtr(); + anim_ctl = baanim_getAnimCtrlPtr(); func_802A71D8(); func_802A7304(); func_802A77D8(); @@ -284,7 +284,7 @@ void func_802A7BD0(void) { f32 sp24[3]; func_80298760(func_80296560()); - func_8028A274(0x1A0, 1.4f); + baanim_playForDuration_onceSmooth(0x1A0, 1.4f); func_80299BFC(1.0f); _player_getPosition(sp30); func_80294980(sp24); @@ -314,7 +314,7 @@ void func_802A7CA8(void) { if (baanim_isAt(0.3f)) { func_80292EA4(); } - if (animctrl_isStopped(_player_getAnimCtrlPtr())) { + if (animctrl_isStopped(baanim_getAnimCtrlPtr())) { next_state = BS_2B_DIVE_IDLE; } bs_setState(next_state); @@ -330,7 +330,7 @@ void func_802A7D74(void) { void bsSwim_dive_init(void) { ability_use(ABILITY_3_CAMERA_CONTROL); - func_8028A180(ASSET_3C_ANIM_BSSWIM_DIVE_ENTER, 1.0f); + baanim_playForDuration_once(ASSET_3C_ANIM_BSSWIM_DIVE_ENTER, 1.0f); func_802A7140(); yaw_setVelocityBounded(500.0f, 5.0f); func_80297930(0); @@ -349,7 +349,7 @@ void func_802A7E2C(void) { f32 sp24[3]; next_state = 0; - sp38 = _player_getAnimCtrlPtr(); + sp38 = baanim_getAnimCtrlPtr(); switch (D_8037D396) { case 0: pitch_setIdeal(50.0f); @@ -391,7 +391,7 @@ void func_802A7F6C(void) { } func_8029B930(); - func_8028A010(ASSET_B9_ANIM_BSSWIM_DIE, 0.7f); + baanim_playForDuration_loopSmooth(ASSET_B9_ANIM_BSSWIM_DIE, 0.7f); func_802A7140(); func_802A744C(); func_80297B64(1.0f); @@ -485,7 +485,7 @@ void func_802A8330(void) { } void func_802A83C0(void) { - func_8028A010(0x70, 2.0f); + baanim_playForDuration_loopSmooth(0x70, 2.0f); func_802A7140(); func_80297930(0); func_80297B64(0.4f); @@ -513,7 +513,7 @@ void func_802A846C(void) { AnimCtrl *temp_s0; f32 sp28; - temp_s0 = _player_getAnimCtrlPtr(); + temp_s0 = baanim_getAnimCtrlPtr(); func_8029CCC4(); sp28 = func_8029494C(); if (bs_getPrevState() == 0xF) { @@ -524,15 +524,15 @@ void func_802A846C(void) { animctrl_setIndex(temp_s0, ASSET_4F_ANIM_BSTWIRL); animctrl_setPlaybackType(temp_s0, ANIMCTRL_STOPPED); animctrl_setDuration(temp_s0, 1.2f); - func_8028774C(temp_s0, 0.8204f); - func_802875AC(temp_s0, "bsbswim.c", 0x417); + animctrl_setStart(temp_s0, 0.8204f); + animctrl_start(temp_s0, "bsbswim.c", 0x417); } else { animctrl_reset(temp_s0); animctrl_setIndex(temp_s0, ASSET_57_ANIM_BSSWIM_IDLE); animctrl_setPlaybackType(temp_s0, ANIMCTRL_LOOP); animctrl_setDuration(temp_s0, 1.2f); - func_8028774C(temp_s0, 0.6412f); - func_802875AC(temp_s0, "bsbswim.c", 0x41E); + animctrl_setStart(temp_s0, 0.6412f); + animctrl_start(temp_s0, "bsbswim.c", 0x41E); } D_8037D398 = ml_map_f(sp28, 40.0f, 1000.0f, -300.0f, -1200.0f); player_setYVelocity(D_8037D398); @@ -562,7 +562,7 @@ void func_802A85EC(void) { if (!player_inWater()) { next_state = BS_1_IDLE; } - if (func_80297AAC() >= 0.0f) { + if (_get_vertVelocity() >= 0.0f) { next_state = BS_2D_SWIM_IDLE; } bs_setState(next_state); diff --git a/src/core2/bs/bTrot.c b/src/core2/bs/bTrot.c index 29b2c2d3..6d9b4948 100644 --- a/src/core2/bs/bTrot.c +++ b/src/core2/bs/bTrot.c @@ -4,7 +4,7 @@ #include "core2/ba/model.h" #include "core2/statetimer.h" - +#include "core2/ba/anim.h" /* .data */ f32 D_80364A90 = 30.0f; @@ -114,7 +114,7 @@ void func_802A8AD8(void){ func_80299650(stateTimer_getPrevious(STATE_TIMER_3_TURBO_TALON), stateTimer_get(STATE_TIMER_3_TURBO_TALON)); if(miscflag_isTrue(MISC_FLAG_10_TOUCHING_TURBO_TRAINERS) &&(bs_getState() != BS_17_BTROT_EXIT)){ miscflag_clear(MISC_FLAG_10_TOUCHING_TURBO_TRAINERS); - stateTimer_set(STATE_TIMER_3_TURBO_TALON, func_80294A40()); + stateTimer_set(STATE_TIMER_3_TURBO_TALON, get_turbo_duration()); func_803219F4(4); } @@ -146,7 +146,7 @@ void func_802A8BB0(void){ if(next_state != BS_5A_LOADZONE) stateTimer_set(STATE_TIMER_3_TURBO_TALON, 0.0f); func_802A8AD8(); - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); func_8029CF48(4, 0, 0.0f); @@ -162,8 +162,8 @@ int func_802A8C60(void){ void _bsbtrot_802A8C98(AnimCtrl *aCtrl, enum asset_e arg1){ if(animctrl_getIndex(aCtrl) != arg1){ animctrl_setIndex(aCtrl, arg1); - func_8028774C(aCtrl, animctrl_getAnimTimer(aCtrl)); - func_802875AC(aCtrl, "bsbtrot.c", 0x12e); + animctrl_setStart(aCtrl, animctrl_getAnimTimer(aCtrl)); + animctrl_start(aCtrl, "bsbtrot.c", 0x12e); } } @@ -212,7 +212,7 @@ enum bs_e func_802A8D84(enum bs_e arg0){ void bsbtrot_enter_init(void){ func_802A8AD8(); - func_8028A274(ASSET_16_ANIM_BSBTROT_ENTER, 1.0f); + baanim_playForDuration_onceSmooth(ASSET_16_ANIM_BSBTROT_ENTER, 1.0f); func_8029C7F4(1,1,2,2); func_80297970(0.0f); func_802A8A40(); @@ -222,7 +222,7 @@ void bsbtrot_enter_init(void){ void bsbtrot_enter_update(void){ enum bs_e next_state = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); func_802952A8(0,1); func_80299628(1); if(animctrl_isStopped(aCtrl)) @@ -241,7 +241,7 @@ void bsbtrot_enter_end(void){ } void bsbtrot_stand_init(void){ - func_8028A010(ASSET_26_ANIM_BSBTROT_IDLE, 1.2f); + baanim_playForDuration_loopSmooth(ASSET_26_ANIM_BSBTROT_IDLE, 1.2f); func_8029C7F4(1,1,1,2); func_80297970(0.0f); func_802A8A40(); @@ -270,18 +270,18 @@ enum asset_e func_802A9030(void){ void func_802A9054(void){ f32 tmp = 1.0f; - func_80289EC8(func_802A8900(), func_802A88B0(), func_802A8984(), func_802A8934()); + baanim_setVelocityMapRanges(func_802A8900(), func_802A88B0(), func_802A8984(), func_802A8934()); if(func_8028B394()){ tmp = ml_map_f(func_80297AF0(), 0.0f, 1.0f, 0.6f, 0.9f); - func_80289EF8(tmp); + baanim_scaleDuration(tmp); } else{ - func_80289EF8(tmp); + baanim_scaleDuration(tmp); } } void bsbtrot_walk_init(void){ - func_8028A010(func_802A9030(), 0.53f); + baanim_playForDuration_loopSmooth(func_802A9030(), 0.53f); func_8029C7F4(2,1,1,2); func_802A8A40(); func_802A9054(); @@ -289,7 +289,7 @@ void bsbtrot_walk_init(void){ void bsbtrot_walk_update(void){ enum bs_e sp1C = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); func_802A8850(); func_802A9054(); @@ -341,18 +341,18 @@ void bsbtrot_walk_end(void){ void func_802A9320(void){} void bsbtrot_jump_init(void){ - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_27_ANIM_BSBTROR_JUMP); animctrl_setDuration(aCtrl, 1.4f); animctrl_setTransitionDuration(aCtrl, 0.1f); - func_8028774C(aCtrl, 0.2f); + animctrl_setStart(aCtrl, 0.2f); animctrl_setSubRange(aCtrl, 0.0f, 0.4002f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsbtrot.c", 0x272); + animctrl_start(aCtrl, "bsbtrot.c", 0x272); func_802A8A40(); - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); yaw_setUpdateState(1); func_8029957C(3); func_802978DC(6); @@ -370,7 +370,7 @@ void bsbtrot_jump_init(void){ void bsbtrot_jump_update(void){ enum bs_e sp2C = 0; - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); f32 sp1C[3]; func_802A8AD8(); if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) @@ -479,14 +479,14 @@ void bsbtrot_jump_end(void){ } void bsbtrot_exit_init(void){ - func_8028A274(ASSET_7_ANIM_BSBTROT_EXIT, 0.6f); - func_80289F10(1); + baanim_playForDuration_onceSmooth(ASSET_7_ANIM_BSBTROT_EXIT, 0.6f); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); func_80297970(0.0f); } void bsbtrot_exit_update(void){ enum bs_e sp1C = 0; - if(animctrl_isStopped(_player_getAnimCtrlPtr())) + if(animctrl_isStopped(baanim_getAnimCtrlPtr())) sp1C = BS_1_IDLE; bs_setState(sp1C); @@ -497,12 +497,12 @@ void bsbtrot_exit_end(void){ } void bsbtrot_slide_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_27_ANIM_BSBTROR_JUMP); - func_8028774C(aCtrl, 0.069f); + animctrl_setStart(aCtrl, 0.069f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED); - func_802875AC(aCtrl, "bsbtrot.c", 0x382); + animctrl_start(aCtrl, "bsbtrot.c", 0x382); func_802A8A40(); func_8029C7F4(1,1,3,3); func_8029797C(yaw_getIdeal()); @@ -564,13 +564,13 @@ int bsbtrot_inSet(s32 move_indx){ } void bsbtrot_fall_init(void){ - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_27_ANIM_BSBTROR_JUMP); animctrl_setDuration(aCtrl, 1.4f); - func_8028774C(aCtrl, 0.4653f); + animctrl_setStart(aCtrl, 0.4653f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED); - func_802875AC(aCtrl, "bsbtrot.c", 0x400); + animctrl_start(aCtrl, "bsbtrot.c", 0x400); func_802A8A40(); func_8029C7F4(1,1,3,6); func_8029797C(yaw_getIdeal()); @@ -581,7 +581,7 @@ void bsbtrot_fall_init(void){ void bsbtrot_fall_update(void){ enum bs_e sp2C = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp1C[3]; func_802A8AD8(); if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) @@ -678,7 +678,7 @@ void bsbtrot_fall_end(void){ } void bsbtrot_unk79_init(void){ - func_8028A010(ASSET_26_ANIM_BSBTROT_IDLE, 1.2f); + baanim_playForDuration_loopSmooth(ASSET_26_ANIM_BSBTROT_IDLE, 1.2f); func_8029C7F4(1,1,3,2); func_80297970(0.0f); func_802A8A40(); @@ -708,7 +708,7 @@ void bsbtrot_ow_init(void){ func_802A8A40(); func_80298760(func_80296560()); - func_8028A274(ASSET_66_ANIM_BSBTROT_OW, 1.1f); + baanim_playForDuration_onceSmooth(ASSET_66_ANIM_BSBTROT_OW, 1.1f); func_80299BFC(1.0f); _player_getPosition(sp30); func_80294980(sp24); @@ -741,7 +741,7 @@ void bsbtrot_ow_update(void){ if(func_8028B2E8() && baanim_isStopped()) sp1C = BS_15_BTROT_IDLE; - if(animctrl_isStopped(_player_getAnimCtrlPtr()) && player_inWater()) + if(animctrl_isStopped(baanim_getAnimCtrlPtr()) && player_inWater()) sp1C = BS_2D_SWIM_IDLE; bs_setState(sp1C); diff --git a/src/core2/bs/bWhirl.c b/src/core2/bs/bWhirl.c index 261ff2df..3ffe3549 100644 --- a/src/core2/bs/bWhirl.c +++ b/src/core2/bs/bWhirl.c @@ -2,6 +2,8 @@ #include "functions.h" #include "variables.h" +#include "core2/ba/anim.h" + const f32 D_80364AD0 = 80.0f; const f32 D_80364AD4 = 425.0f; const f32 D_80364AD8 = 0.56f; @@ -39,7 +41,7 @@ static void __bsbwhirl_end(void){ func_8024BD08(1); func_8025A7DC(COMUSIC_25_USING_GOLD_FEATHERS); } - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); } static void __bsbwhirl_spawnSparkle(void){ @@ -76,7 +78,7 @@ void func_802AA58C(enum bs_e *arg0){ } void bsbwhirl_enter_init(void){ - func_8028A274(ASSET_22_ANIM_BSWHIRL_EXIT, 0.5f); + baanim_playForDuration_onceSmooth(ASSET_22_ANIM_BSWHIRL_EXIT, 0.5f); func_8029C7F4(1,1,1,2); func_80297970(0.0f); func_8029B324(0, 0.03f); @@ -93,7 +95,7 @@ void bsbwhirl_enter_init(void){ void bsbwhirl_enter_update(void){ enum bs_e sp1C = 0; func_802952A8(1,1); - if(animctrl_isStopped(_player_getAnimCtrlPtr())) + if(animctrl_isStopped(baanim_getAnimCtrlPtr())) sp1C = BS_1B_WONDERWING_IDLE; bs_setState(sp1C); } @@ -104,7 +106,7 @@ void bsbwhirl_enter_end(void){ } void bsbwhirl_stand_init(void){ - func_8028A010(ASSET_23_ANIM_BSWONDERWING_IDLE, 1.0f); + baanim_playForDuration_loopSmooth(ASSET_23_ANIM_BSWONDERWING_IDLE, 1.0f); func_8029C7F4(1,1,1,2); func_80297970(0.0f); } @@ -130,8 +132,8 @@ void bsbwhirl_stand_end(void){ } void bsbwhirl_walk_init(void){ - func_8028A010(ASSET_11_ANIM_BSWHIRL_WALK, 0.53f); - func_80289EC8(D_80364AD0, D_80364AD4, D_80364AD8, D_80364ADC); + baanim_playForDuration_loopSmooth(ASSET_11_ANIM_BSWHIRL_WALK, 0.53f); + baanim_setVelocityMapRanges(D_80364AD0, D_80364AD4, D_80364AD8, D_80364ADC); func_8029C7F4(2,1,1,2); } @@ -168,16 +170,16 @@ void bsbwhirl_walk_end(void){ } void bsbwhirl_jump_init(void){ - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_1B_ANIM_BSWHIRL_JUMP); animctrl_setDuration(aCtrl, 0.8f); animctrl_setTransitionDuration(aCtrl, 0.134f); - func_8028774C(aCtrl, 0.14f); + animctrl_setStart(aCtrl, 0.14f); animctrl_setSubRange(aCtrl, 0.0f, 0.4495f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsbwhirl.c", 0x181); + animctrl_start(aCtrl, "bsbwhirl.c", 0x181); func_8029C7F4(1,1,3,6); if(func_8029B2E8() != 0.0f) yaw_setIdeal(func_8029B33C()); @@ -193,7 +195,7 @@ void bsbwhirl_jump_init(void){ void bsbwhirl_jump_update(void){ enum bs_e sp2C = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp1C[3]; __bsbwhirl_spawnSparkle(); @@ -239,7 +241,7 @@ void bsbwhirl_jump_end(void){ } void bsbwhirl_exit_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); @@ -247,8 +249,8 @@ void bsbwhirl_exit_init(void){ animctrl_setIndex(aCtrl, ASSET_22_ANIM_BSWHIRL_EXIT); animctrl_setDuration(aCtrl, 0.5f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsbwhirl.c", 0x201); - func_80289F10(1); + animctrl_start(aCtrl, "bsbwhirl.c", 0x201); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); func_8029957C(2); func_80297970(0.0f); comusic_8025AB44(COMUSIC_25_USING_GOLD_FEATHERS, 0.0f, 0xFA0); @@ -257,7 +259,7 @@ void bsbwhirl_exit_init(void){ void bsbwhirl_exit_update(void){ enum bs_e sp1C = 0; - if(animctrl_isStopped(_player_getAnimCtrlPtr())) + if(animctrl_isStopped(baanim_getAnimCtrlPtr())) sp1C = BS_1_IDLE; bs_setState(sp1C); @@ -282,7 +284,7 @@ void bsbwhirl_drone_end(void){ } void func_802AADBC(void){ - func_8028A010(ASSET_23_ANIM_BSWONDERWING_IDLE, 1.0f); + baanim_playForDuration_loopSmooth(ASSET_23_ANIM_BSWONDERWING_IDLE, 1.0f); func_8029C7F4(1,1,3,2); func_80297970(0.0f); func_8029C674(); diff --git a/src/core2/bs/bbuster.c b/src/core2/bs/bbuster.c index bbf2e1b4..bd2602c3 100644 --- a/src/core2/bs/bbuster.c +++ b/src/core2/bs/bbuster.c @@ -52,7 +52,7 @@ s32 bsbbuster_hitboxActive(void){ } void bsbbuster_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp20[3]; animctrl_reset(aCtrl); @@ -61,7 +61,7 @@ void bsbbuster_init(void){ animctrl_setDuration(aCtrl, 1.02f); animctrl_setSubRange(aCtrl, 0.0f, 0.35f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsbbuster.c", 0x81); + animctrl_start(aCtrl, "bsbbuster.c", 0x81); func_8029C7F4(1,1,3,6); gravity_set(0.0f); func_80297970(0.0f); @@ -82,7 +82,7 @@ void bsbbuster_init(void){ void bsbbuster_update(void){ enum bs_e sp44 = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); s32 sp3C; f32 sp30[3]; f32 player_position[3]; @@ -93,7 +93,7 @@ void bsbbuster_update(void){ switch(D_8037D2BA){ case 0://8029FDF0 - if(animctrl_isStopped(_player_getAnimCtrlPtr())){ + if(animctrl_isStopped(baanim_getAnimCtrlPtr())){ animctrl_setDuration(aCtrl, 0.4f); D_8037D2BA = 1; } @@ -110,7 +110,7 @@ void bsbbuster_update(void){ } break; case 2://8029FEA0 - if(D_8037D2B5 == 0 && func_80297AAC() < 0.0f){ + if(D_8037D2B5 == 0 && _get_vertVelocity() < 0.0f){ func_8030E760(SFX_45_KAZOOIE_HUGHH, 1.2f, 0x7530); D_8037D2B5++; } diff --git a/src/core2/bs/bee.c b/src/core2/bs/bee.c index f9c6dea9..690f4be4 100644 --- a/src/core2/bs/bee.c +++ b/src/core2/bs/bee.c @@ -1,6 +1,8 @@ #include #include "functions.h" #include "variables.h" +#include "core2/ba/anim.h" + void func_80293D48(f32, f32); @@ -21,7 +23,7 @@ void func_802A02C0(void){ miscflag_clear(4); func_80293D74(); } - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); } void func_802A0340(void){ diff --git a/src/core2/bs/beeFly.c b/src/core2/bs/beeFly.c index 6fef7ab7..2c3f7321 100644 --- a/src/core2/bs/beeFly.c +++ b/src/core2/bs/beeFly.c @@ -44,7 +44,7 @@ void func_802A04F0(void){ void func_802A0590(void){ func_802A0340(); - func_8028A274(0x1df, 1.5f); + baanim_playForDuration_onceSmooth(0x1df, 1.5f); func_8029C7F4(1,1,3,6); if(func_8029B2E8() != 0.0f){ yaw_setIdeal(func_8029B33C()); @@ -59,7 +59,7 @@ void func_802A0630(void){ s32 next_state = 0; AnimCtrl * mvmnt; //sp1C - mvmnt = _player_getAnimCtrlPtr(); + mvmnt = baanim_getAnimCtrlPtr(); switch(D_8037D2C0){ case 0: if(!animctrl_isAt(mvmnt, 0.266f)) @@ -71,8 +71,8 @@ void func_802A0630(void){ case 1: func_802A04F0(); if(animctrl_isStopped(mvmnt)) - func_8028A010(ASSET_1DC_ANIM_BEE_FLY, 0.38f); - if(func_80297AAC() < 0.0f) + baanim_playForDuration_loopSmooth(ASSET_1DC_ANIM_BEE_FLY, 0.38f); + if(_get_vertVelocity() < 0.0f) next_state = BS_BEE_FLY; break; } @@ -152,7 +152,7 @@ void bsbeefly_enter(void){ s32 mvmnt; mvmnt = bs_getPrevState(); - func_8028A010(ASSET_1DC_ANIM_BEE_FLY, 0.38); + baanim_playForDuration_loopSmooth(ASSET_1DC_ANIM_BEE_FLY, 0.38); func_8029C7F4(1, 1, 3, 3); if(miscflag_isTrue(9)) func_80297970(0.0f); @@ -183,7 +183,7 @@ void bsbeefly_update(void){ sp4C = 0; - sp48 = _player_getAnimCtrlPtr(); + sp48 = baanim_getAnimCtrlPtr(); _bsBeeFly_updateYaw(); _bsBeeFly_updatePitch(); pitch_get(); //return value never used @@ -200,7 +200,7 @@ void bsbeefly_update(void){ sp40 += *sp24; sp3C = pitch_get(); sp30 = 0.0f; - if(func_80297AAC() < 0.0f){ + if(_get_vertVelocity() < 0.0f){ if(sp3C < 300.0f){ sp30 = ml_map_f(sp3C, 0.0f, 80.0f, 0.0f, 0.23f); } diff --git a/src/core2/bs/beeMain.c b/src/core2/bs/beeMain.c index bcedb272..8a1fb0e9 100644 --- a/src/core2/bs/beeMain.c +++ b/src/core2/bs/beeMain.c @@ -11,8 +11,8 @@ f32 func_80297A64(void); void func_802979AC(f32, f32); void func_802BF2C0(f32); -f32 func_80289F70(void); -void func_8028A3B8(f32, f32); +f32 baanim_getTimer(void); +void baanim_setEndAndDuration(f32, f32); f32 func_8029B2E8(void); f32 func_8029B33C(void); f32 ml_interpolate_f(f32, f32, f32); @@ -60,7 +60,7 @@ void func_802A1020(void){ void func_802A1080(void){ func_802A0340(); - func_8028A010(ASSET_1DE_ANIM_BEE_IDLE,3.0f); + baanim_playForDuration_loopSmooth(ASSET_1DE_ANIM_BEE_IDLE,3.0f); func_8029C7F4(1,1,1,2); func_80297970(0.0f); func_802900B4(); @@ -96,9 +96,9 @@ void func_802A117C(void){ void func_802A11A4(void){ func_802A0340(); - func_8028A010(ASSET_1DD_ANIM_BEE_WALK, 0.38f); + baanim_playForDuration_loopSmooth(ASSET_1DD_ANIM_BEE_WALK, 0.38f); func_8029C7F4(2,1,1,2); - func_80289EC8(D_803649E0, D_803649E4, D_803649E8, D_803649EC); + baanim_setVelocityMapRanges(D_803649E0, D_803649E4, D_803649E8, D_803649EC); func_802900B4(); } @@ -133,16 +133,16 @@ void func_802A12D4(void){ void func_802A12FC(void){ AnimCtrl * s0; - s0 = _player_getAnimCtrlPtr(); + s0 = baanim_getAnimCtrlPtr(); func_802A0340(); animctrl_reset(s0); animctrl_setSmoothTransition(s0, 0); animctrl_setIndex(s0, ASSET_1E2_ANIM_BEE_JUMP); animctrl_setSubRange(s0, 0, 0.34f); - func_8028774C(s0, 0.1f); + animctrl_setStart(s0, 0.1f); animctrl_setDuration(s0, 1.2f); animctrl_setPlaybackType(s0, ANIMCTRL_ONCE); - func_802875AC(s0, "bsbeemain.c", 0x15b); + animctrl_start(s0, "bsbeemain.c", 0x15b); func_8029C7F4(1,1,3,6); if(func_8029B2E8() != 0.0f){ yaw_setIdeal(func_8029B33C()); @@ -162,7 +162,7 @@ void func_802A1438(void){ f32 sp1c[3]; sp2c = 0; - sp28 = _player_getAnimCtrlPtr(); + sp28 = baanim_getAnimCtrlPtr(); func_802A1020(); _get_velocity(sp1c); if(button_released(BUTTON_A) && (0.0f < sp1c[1])){ @@ -171,19 +171,19 @@ void func_802A1438(void){ switch (D_8037D2D4) { case 0: - if(func_8028B254(0x82)){ - func_8028A3B8(0.715f, 0.7f); + if(func_8028B254(130)){ + baanim_setEndAndDuration(0.715f, 0.7f); D_8037D2D4 = 2; }else{ if(animctrl_isStopped(sp28)){ - func_8028A3B8(0.51f, 4.0f); + baanim_setEndAndDuration(0.51f, 4.0f); D_8037D2D4 = 1; } } break; case 1: - if(func_8028B254(0x82)){ - func_8028A3B8(0.715f, 1.2f); + if(func_8028B254(130)){ + baanim_setEndAndDuration(0.715f, 1.2f); D_8037D2D4 = 2; } break; @@ -191,7 +191,7 @@ void func_802A1438(void){ func_80299628(0); if(func_8028B2E8()){ func_802A0F90(); - func_8028A3B8(1.0f, 0.7f); + baanim_setEndAndDuration(1.0f, 0.7f); D_8037D2D4 = 3; } break; @@ -228,15 +228,15 @@ void func_802A163C(void){ void func_802A1664(void){ AnimCtrl * s0; - s0 = _player_getAnimCtrlPtr(); + s0 = baanim_getAnimCtrlPtr(); func_802A0340(); animctrl_reset(s0); animctrl_setIndex(s0, ASSET_1E2_ANIM_BEE_JUMP); - func_8028774C(s0, 0.34f); + animctrl_setStart(s0, 0.34f); animctrl_setDuration(s0, 8.0f); animctrl_setSubRange(s0, 0, 0.51f); animctrl_setPlaybackType(s0, ANIMCTRL_ONCE); - func_802875AC(s0, "bsbeemain.c", 0x1e2); + animctrl_start(s0, "bsbeemain.c", 0x1e2); func_8029C7F4(1,1,3,6); D_8037D2D4 = 0; } @@ -247,14 +247,14 @@ void func_802A170C(void){ f32 sp1c[3]; sp2c = 0; - sp28 = _player_getAnimCtrlPtr(); + sp28 = baanim_getAnimCtrlPtr(); func_80299628(0); func_802A1020(); _get_velocity(sp1c); switch(D_8037D2D4){ case 0: if(func_8028B254(0x82)){ - func_8028A3B8(0.715f, 0.7f); + baanim_setEndAndDuration(0.715f, 0.7f); D_8037D2D4 = 1; } break; @@ -263,7 +263,7 @@ void func_802A170C(void){ if(func_8028B2E8()){ func_802A0F90(); func_80297970(0.0f); - func_8028A3B8(1.0f, 0.7f); + baanim_setEndAndDuration(1.0f, 0.7f); D_8037D2D4 = 2; } break; @@ -307,14 +307,14 @@ void func_802A18E8(s32 arg0){ f32 sp20[3]; //sp40 = arg0; - sp3C = _player_getAnimCtrlPtr(); + sp3C = baanim_getAnimCtrlPtr(); func_802A0340(); animctrl_reset(sp3C); animctrl_setIndex(sp3C, ASSET_1E0_ANIM_BEE_OW); animctrl_setDuration(sp3C, 1.0f); animctrl_setSubRange(sp3C, 0, 0.7518f); animctrl_setPlaybackType(sp3C, ANIMCTRL_ONCE); - func_802875AC(sp3C, "bsbeemain.c", 0x269); + animctrl_start(sp3C, "bsbeemain.c", 0x269); if(arg0 == 1){ func_8030E58C(SFX_38_BANJO_AYE_1, 1.8f); }else{ @@ -346,7 +346,7 @@ void func_802A1A50(void){ switch(D_8037D2D4){ case 0: if(func_8028B254(0x5A)){ - func_8028A37C(1.0f); + baanim_setEnd(1.0f); D_8037D2D4 = 1; } break; @@ -355,7 +355,7 @@ void func_802A1A50(void){ } if(func_8028B2E8()) sp1C = BS_85_BEE_IDLE; - if(0.65 < func_80289F70() && player_inWater()){ + if(0.65 < baanim_getTimer() && player_inWater()){ sp1C = 0x8C; } bs_setState(sp1C); @@ -399,7 +399,7 @@ void bsbeemain_die_init(void){ f32 sp2C[3]; f32 sp20[3]; - sp3C = _player_getAnimCtrlPtr(); + sp3C = baanim_getAnimCtrlPtr(); func_8029B930(); func_802A0340(); animctrl_reset(sp3C); @@ -408,7 +408,7 @@ void bsbeemain_die_init(void){ animctrl_setSubRange(sp3C, 0, 0.3966f); animctrl_setDuration(sp3C, 1.7f); animctrl_setPlaybackType(sp3C, ANIMCTRL_ONCE); - func_802875AC(sp3C, "bsbeemain.c", 0x2ef); + animctrl_start(sp3C, "bsbeemain.c", 0x2ef); func_8029C7F4(1,1,2,3); _player_getPosition(sp2C); func_80294980(sp20); @@ -439,7 +439,7 @@ void func_802A1DD8(void){ case 0: if(!func_8028B2E8()) break; - func_8028A37C(0.7453f); + baanim_setEnd(0.7453f); FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 18000); FUNC_8030E624(SFX_39_BANJO_AYE_2, 1.8f, 18000); player_setYVelocity(400.0f); @@ -448,7 +448,7 @@ void func_802A1DD8(void){ case 1: if(!func_8028B2E8()) break; - func_8028A37C(1.0f); + baanim_setEnd(1.0f); FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 18000); FUNC_8030E624(SFX_39_BANJO_AYE_2, 1.8f, 18000); D_8037D2D4 = 2; @@ -479,7 +479,7 @@ void func_802A1F2C(void){ void func_802A1F6C(void){ func_802A0340(); - func_8028A010(ASSET_1DE_ANIM_BEE_IDLE, 3.0f); + baanim_playForDuration_loopSmooth(ASSET_1DE_ANIM_BEE_IDLE, 3.0f); func_8029C7F4(1,1,3,2); func_80297970(0.0f); func_8029C674(); @@ -516,7 +516,7 @@ void func_802A2054(void){ void func_802A2098(void){ miscflag_clear(0x1A); - func_8028A010(ASSET_1DE_ANIM_BEE_IDLE, 3.0f); + baanim_playForDuration_loopSmooth(ASSET_1DE_ANIM_BEE_IDLE, 3.0f); yaw_setIdeal(func_8029B41C()); func_8029C7F4(1,1,3,2); func_80297970(0.0f); diff --git a/src/core2/bs/carry.c b/src/core2/bs/carry.c index e213f411..cf6f7d4f 100644 --- a/src/core2/bs/carry.c +++ b/src/core2/bs/carry.c @@ -3,6 +3,7 @@ #include "variables.h" #include "bsint.h" #include "core2/statetimer.h" +#include "core2/ba/anim.h" /* .data */ const f32 D_80364AF0 = 30.0f; @@ -24,15 +25,15 @@ void func_802AAEE0(void){ if(state != BS_3A_CARRY_IDLE && state != BS_3B_CARRY_WALK) func_8029B0C0(); - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); } void bscarry_idle_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_72_ANIM_BSCARRY_IDLE); animctrl_setDuration(aCtrl, 1.2f); - func_802875AC(aCtrl, "bscarry.c", 0x6f); + animctrl_start(aCtrl, "bscarry.c", 0x6f); func_8029C7F4(1,1,1,2); func_80297970(0.0f); pitch_setAngVel(1000.0f, 12.0f); @@ -56,14 +57,14 @@ void bscarry_idle_end(void){ } void bscarry_walk_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_73_ANIM_BSCARRY_WALK); animctrl_setDuration(aCtrl, 0.8f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_LOOP); - func_802875AC(aCtrl, "bscarry.c", 0xac); + animctrl_start(aCtrl, "bscarry.c", 0xac); func_8029C7F4(2,1,1,2); - func_80289EC8(D_80364AF0, D_80364AF4, D_80364AF8, D_80364AFC); + baanim_setVelocityMapRanges(D_80364AF0, D_80364AF4, D_80364AF8, D_80364AFC); } void bscarry_walk_update(void){ diff --git a/src/core2/bs/claw.c b/src/core2/bs/claw.c index ac3c1832..af05634e 100644 --- a/src/core2/bs/claw.c +++ b/src/core2/bs/claw.c @@ -16,7 +16,7 @@ int bsclaw_hitboxActive(void){ } void bsclaw_init(void){ - func_8028A180(5, 1.3f); + baanim_playForDuration_once(ASSET_5_ANIM_BSPUNCH, 1.3f); func_8029C7F4(1,1,3,3); func_8029797C(yaw_getIdeal()); func_80297970(160.0f); @@ -26,7 +26,7 @@ void bsclaw_init(void){ void bsclaw_update(void){ enum bs_e sp2C = 0; - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); f32 sp24; sp24 = animctrl_getAnimTimer(aCtrl); diff --git a/src/core2/bs/climb.c b/src/core2/bs/climb.c index 973f6edc..c3bc7bc0 100644 --- a/src/core2/bs/climb.c +++ b/src/core2/bs/climb.c @@ -1,6 +1,7 @@ #include #include "functions.h" #include "variables.h" +#include "core2/ba/anim.h" /* .bss */ u8 D_8037D3D0; @@ -18,7 +19,7 @@ void func_802AB5C0(void){ f2 = 0.0f; } else{ - f2 = ml_mapRange_f(sp28, 0.03f, 1.0f, 100.0f, 300.0f); + f2 = ml_mapAbsRange_f(sp28, 0.03f, 1.0f, 100.0f, 300.0f); } sp2C[0] = 0.0f; sp2C[1] = f2; @@ -43,7 +44,7 @@ void func_802AB6F0(void){ if(!bsclimb_inSet(bs_getNextState())){ func_80291548(); func_8029B0C0(); - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); func_802978DC(2); func_80294378(1); func_80293D74(); @@ -77,8 +78,8 @@ void bsclimb_idle_init(void){ yaw_applyIdeal(); } ability_use(4); - func_8028A010(ASSET_B2_ANIM_BSCLIMB_IDLE_2, 2.64f); - func_80289F10(1); + baanim_playForDuration_loopSmooth(ASSET_B2_ANIM_BSCLIMB_IDLE_2, 2.64f); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); func_802AB654(); D_8037D3D8 = 1; @@ -88,19 +89,19 @@ void bsclimb_idle_init(void){ void bsclimb_idle_update(void){ s32 next_state = 0; - AnimCtrl *anim_ctrl = _player_getAnimCtrlPtr(); + AnimCtrl *anim_ctrl = baanim_getAnimCtrlPtr(); func_80293350(); switch(D_8037D3D0){ case 0: D_8037D3D4 -= time_getDelta(); if(D_8037D3D4 <= 0.0f){ - func_8028A180(ASSET_B1_ANIM_BSCLIMB_IDLE_1, 2.96f); + baanim_playForDuration_once(ASSET_B1_ANIM_BSCLIMB_IDLE_1, 2.96f); D_8037D3D0 = 1; } break; case 1: if(animctrl_isStopped(anim_ctrl)){ - func_8028A010(ASSET_B2_ANIM_BSCLIMB_IDLE_2, 2.64f); + baanim_playForDuration_loopSmooth(ASSET_B2_ANIM_BSCLIMB_IDLE_2, 2.64f); func_802AB750(3.0f, 4.0f); D_8037D3D0 = 0; } @@ -125,10 +126,10 @@ void bsclimb_idle_end(void){ } void bsclimb_move_init(void){ - func_8028A010(ASSET_A_ANIM_BSCLIMB_MOVE, 0.9f); - func_80289F10(3); - func_80289EA8(0.3f, 1.5f); - func_80289EC8(100.0f, 300.0f, 0.6f, 0.4f); + baanim_playForDuration_loopSmooth(ASSET_A_ANIM_BSCLIMB_MOVE, 0.9f); + baanim_setUpdateType(BAANIM_UPDATE_3_SCALE_VERT); + baanim_setDurationRange(0.3f, 1.5f); + baanim_setVelocityMapRanges(100.0f, 300.0f, 0.6f, 0.4f); func_802AB654(); } @@ -159,7 +160,7 @@ void bsclimb_move_update(void){ func_80299D2C(SFX_D3_JINXIE_SNIFFLING_1, 0.87f, 22000); }//L802ABB84 - if(!func_802AB788() && func_80297AAC() < 30.0f) + if(!func_802AB788() && _get_vertVelocity() < 30.0f) next_state = BS_4F_CLIMB_IDLE; _player_getPosition(plyr_pos); @@ -190,8 +191,8 @@ void bsclimb_move_end(void){ //bsclimb_unknown_9E_init void func_802ABCCC(void){ - func_8028A010(ASSET_B2_ANIM_BSCLIMB_IDLE_2, 2.64f); - func_80289F10(1); + baanim_playForDuration_loopSmooth(ASSET_B2_ANIM_BSCLIMB_IDLE_2, 2.64f); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); func_802AB654(); func_802978DC(7); } diff --git a/src/core2/bs/croc.c b/src/core2/bs/croc.c index 13aefa48..513d87d0 100644 --- a/src/core2/bs/croc.c +++ b/src/core2/bs/croc.c @@ -2,20 +2,21 @@ #include "functions.h" #include "variables.h" #include "core2/statetimer.h" +#include "core2/ba/anim.h" int bscroc_inSet(enum bs_e state); /* .data */ -const f32 D_80364B00 = 30.0f; -const f32 D_80364B04 = 375.0f; -const f32 D_80364B08 = 500.0f; -const f32 D_80364B0C = 0.5f; -const f32 D_80364B10 = 0.3f; +const f32 bsCrocMinWalkVelocity = 30.0f; +const f32 bsCrocMaxWalkVelocity = 375.0f; +const f32 bsCrocMaxTurboVelocity = 500.0f; +const f32 bsCrocSlowestWalkDuration = 0.5f; +const f32 bsCrocFastestWalkDuration = 0.3f; const f32 D_80364B14 = 0.2f; -const f32 D_80364B18 = 693.5f; //jump initial velocity -const f32 D_80364B1C = -1200.0f; //jump gravity -u8 D_80364B20 = 0; -s16 D_80364B24[] = { +const f32 bsCrocInitialJumpVelocity = 693.5f; //jump initial velocity +const f32 bsCrocGravity = -1200.0f; //jump gravity +u8 bsCrocJumpSfxIndex = 0; +s16 bsCrocJumpSfxList[] = { SFX_54_BANJO_HOO_1, SFX_55_BANJO_HOO_2, SFX_56_BANJO_HUI @@ -31,17 +32,17 @@ u8 D_8037D3F4; u8 D_8037D3F5; /* .code */ -f32 func_802ABDC0(void){ +f32 __bscroc_getMaxVelocity(void){ if(stateTimer_get(STATE_TIMER_3_TURBO_TALON) != 0.0f) - return D_80364B08; + return bsCrocMaxTurboVelocity; else - return D_80364B04; + return bsCrocMaxWalkVelocity; } -void func_802ABE04(void){ - func_8030EB00(D_80364B24[D_80364B20], 1.35f, 1.45f); - if(!(++D_80364B20 < 3)) - D_80364B20 = 0; +void __bscroc_jumpSfx(void){ + func_8030EB00(bsCrocJumpSfxList[bsCrocJumpSfxIndex], 1.35f, 1.45f); + if(!(++bsCrocJumpSfxIndex < 3)) + bsCrocJumpSfxIndex = 0; } void func_802ABE70(void){ @@ -49,7 +50,7 @@ void func_802ABE70(void){ func_80299650(stateTimer_getPrevious(STATE_TIMER_3_TURBO_TALON), sp1C); if(miscflag_isTrue(MISC_FLAG_10_TOUCHING_TURBO_TRAINERS) && bs_getState() != BS_17_BTROT_EXIT){ miscflag_clear(MISC_FLAG_10_TOUCHING_TURBO_TRAINERS); - stateTimer_set(STATE_TIMER_3_TURBO_TALON, func_80294A40()); + stateTimer_set(STATE_TIMER_3_TURBO_TALON, get_turbo_duration()); func_8025A6EC(COMUSIC_8A_GETTING_TURBO_TRAINERS, -1); func_8029E0DC(1); } @@ -70,7 +71,7 @@ void func_802ABF54(void){ func_80297970(0.0f); } else{ - func_80297970(ml_interpolate_f(sp1C, D_80364B00, func_802ABDC0())); + func_80297970(ml_interpolate_f(sp1C, bsCrocMinWalkVelocity, __bscroc_getMaxVelocity())); } } @@ -83,7 +84,7 @@ void func_802ABFBC(void){ miscflag_clear(4); func_80293D74(); } - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); } int bscroc_inSet(enum bs_e state){ @@ -101,7 +102,7 @@ int bscroc_inSet(enum bs_e state){ } void bscroc_idle_init(void){ - func_8028A010(0xe1, 1.0f); + baanim_playForDuration_loopSmooth(0xe1, 1.0f); func_8029C7F4(1,1,1,2); func_80297970(0.0f); pitch_setAngVel(1000.0f, 12.0f); @@ -142,9 +143,9 @@ void bscroc_idle_end(void){ } void bscroc_walk_init(void){ - func_8028A100(0xe0, 0.8f, 0.4f); - func_8029C7F4(2,1,1,2); - func_80289EC8(D_80364B00, D_80364B04, D_80364B0C, D_80364B10); + baanim_playForDuration_loopStartingAt(ASSET_E0_ANIM_BSCROC_WALK, 0.8f, 0.4f); + func_8029C7F4(BAANIM_UPDATE_2_SCALE_HORZ,1,1,2); + baanim_setVelocityMapRanges(bsCrocMinWalkVelocity, bsCrocMaxWalkVelocity, bsCrocSlowestWalkDuration, bsCrocFastestWalkDuration); func_802900B4(); } @@ -178,16 +179,16 @@ void bscroc_walk_end(void){ } void bscroc_jump_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, FALSE); animctrl_setIndex(aCtrl, ASSET_11C_ANIM_BSCROC_JUMP); animctrl_setSubRange(aCtrl, 0.0f, 0.35f); animctrl_setDuration(aCtrl, 1.0f); - func_8028774C(aCtrl, 0.1f); + animctrl_setStart(aCtrl, 0.1f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bscroc.c", 0x1ac); + animctrl_start(aCtrl, "bscroc.c", 0x1ac); func_8029C7F4(1,1,3,6); if(func_8029B2E8() != 0.0f){ yaw_setIdeal(func_8029B33C()); @@ -195,15 +196,15 @@ void bscroc_jump_init(void){ func_8029797C(yaw_getIdeal()); func_802ABF54(); func_802979AC(yaw_getIdeal(), func_80297A64()); - player_setYVelocity(D_80364B18); - gravity_set(D_80364B1C); - func_802ABE04(); + player_setYVelocity(bsCrocInitialJumpVelocity); + gravity_set(bsCrocGravity); + __bscroc_jumpSfx(); D_8037D3EC = 0; } void bscroc_jump_update(void){ enum bs_e sp2C = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 player_velocity[3]; func_802ABE70(); @@ -216,18 +217,18 @@ void bscroc_jump_update(void){ case 0: if(func_8028B254(0x82)) { - func_8028A3B8(0.6538f, 0.7f); + baanim_setEndAndDuration(0.6538f, 0.7f); D_8037D3EC = 2; } else if(animctrl_isStopped(aCtrl)) { - func_8028A3B8(0.5036f, 3.0f); + baanim_setEndAndDuration(0.5036f, 3.0f); D_8037D3EC = 1; } break; case 1: if(func_8028B254(0x82)){ - func_8028A3B8(0.6538f, 1.0f); + baanim_setEndAndDuration(0.6538f, 1.0f); D_8037D3EC = 2; } break; @@ -235,7 +236,7 @@ void bscroc_jump_update(void){ func_80299628(0); if(func_8028B2E8()){ func_8029AE48(); - func_8028A3B8(1.0f, 1.0f); + baanim_setEndAndDuration(1.0f, 1.0f); D_8037D3EC = 3; } break; @@ -268,21 +269,21 @@ void bscroc_jump_end(void){ } void bscroc_fall_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_11C_ANIM_BSCROC_JUMP); - func_8028774C(aCtrl, 0.5036f); + animctrl_setStart(aCtrl, 0.5036f); animctrl_setDuration(aCtrl, 0.7f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED); - func_802875AC(aCtrl, "bscroc.c", 0x235); + animctrl_start(aCtrl, "bscroc.c", 0x235); func_8029C7F4(1,1,3,6); D_8037D3EC = 0; } void bscroc_fall_update(void){ enum bs_e next_state = 0; - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); f32 player_velocity[3]; func_802ABE70(); @@ -293,7 +294,7 @@ void bscroc_fall_update(void){ switch(D_8037D3EC){ case 0: if(func_8028B254(0x82)){ - func_8028A37C(0.6538f); + baanim_setEnd(0.6538f); D_8037D3EC = 1; } break; @@ -301,7 +302,7 @@ void bscroc_fall_update(void){ if(func_8028B2E8()){ func_8029AE48(); func_80297970(0.0f); - func_8028A3B8(1.0f, 1.0f); + baanim_setEndAndDuration(1.0f, 1.0f); D_8037D3EC = 2; } case 2: @@ -326,7 +327,7 @@ void bscroc_fall_end(void){ } static void __bscroc_recoil_init(s32 damage){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp38; f32 player_position[3]; f32 sp20[3]; @@ -336,7 +337,7 @@ static void __bscroc_recoil_init(s32 damage){ animctrl_setDuration(aCtrl, 1.0f); animctrl_setSubRange(aCtrl, 0.0f, 0.7518f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bscroc.c", 0x2a5); + animctrl_start(aCtrl, "bscroc.c", 0x2a5); if(damage == 1) func_8030E58C(SFX_38_BANJO_AYE_1, 1.8f); else @@ -367,7 +368,7 @@ static void __bscroc_recoil_update(void){ switch(D_8037D3EC){ case 0: if(func_8028B254(0x5A)){ - func_8028A37C(1.0f); + baanim_setEnd(1.0f); D_8037D3EC = 1; } break; @@ -413,7 +414,7 @@ void bscroc_bounce_end(void){ } void bscroc_die_init(void){ - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); f32 sp38; f32 player_position[3]; f32 sp20[3]; @@ -425,7 +426,7 @@ void bscroc_die_init(void){ animctrl_setSubRange(aCtrl, 0.0f, 0.3966f); animctrl_setDuration(aCtrl, 1.7f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bscroc.c", 0x32b); + animctrl_start(aCtrl, "bscroc.c", 0x32b); func_8029C7F4(1,1,2,3); _player_getPosition(player_position); func_80294980(sp20); @@ -457,7 +458,7 @@ void bscroc_die_update(void){ switch(D_8037D3EC){ case 0: if(func_8028B2E8()){ - func_8028A37C(0.7453f); + baanim_setEnd(0.7453f); FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 18000); FUNC_8030E624(SFX_39_BANJO_AYE_2, 1.8f, 18000); player_setYVelocity(400.0f); @@ -466,7 +467,7 @@ void bscroc_die_update(void){ break; case 1: if(func_8028B2E8()){ - func_8028A37C(1.0f); + baanim_setEnd(1.0f); FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 18000); FUNC_8030E624(SFX_39_BANJO_AYE_2, 1.8f, 18000); D_8037D3EC = 2; @@ -510,7 +511,7 @@ static void func_802ACF58(void){ } void bscroc_bite_init(void){ - func_8028A100(0x122, 0.25f, 0.2f); + baanim_playForDuration_loopStartingAt(ASSET_122_ANIM_BSCROC_BITE, 0.25f, 0.2f); func_8029C7F4(1,1,1,3); func_802ACF58(); D_8037D3F4 = 0; @@ -519,7 +520,7 @@ void bscroc_bite_init(void){ void bscroc_bite_update(void){ enum bs_e next_state = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); func_802ABE70(); func_80299628(0); @@ -559,14 +560,14 @@ void bscroc_bite_end(void){ } void bscroc_eat_bad_init(void){ - func_8028A180(0x123, 2.41f); + baanim_playForDuration_once(ASSET_123_ANIM_BSCROC_EAT_BAD, 2.41f); func_8029C7F4(1,1,2,3); func_80297970(0.0f); } void bscroc_eat_bad_update(void){ enum bs_e next_state = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); func_802ABE70(); func_80299628(0); @@ -610,7 +611,7 @@ void func_802AD318(void){ } void bscroc_eat_good_init(void){ - func_8028A010(0x122, 0.25f); + baanim_playForDuration_loopSmooth(ASSET_122_ANIM_BSCROC_BITE, 0.25f); func_8029C7F4(1,1,1,2); baModel_setPostDraw(func_802AD2A8); D_8037D3E8 = assetcache_get(func_80294974()); @@ -625,7 +626,7 @@ int func_802AD3A0(void){ void bscroc_eat_good_update(void){ enum bs_e next_state = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); func_802ABE70(); D_8037D3F0 = ml_max_f(0.1f, D_8037D3F0 - 0.05); @@ -666,7 +667,7 @@ void bscroc_eat_good_end(void){ } void func_802AD56C(void){ - func_8028A010(0xe1, 1.0f); + baanim_playForDuration_loopSmooth(ASSET_E1_ANIM_BSCROC_IDLE, 1.0f); func_8029C7F4(1,1,3,2); func_80297970(0.0f); func_8029C674(); diff --git a/src/core2/bs/crouch.c b/src/core2/bs/crouch.c index 464aeaed..892aa997 100644 --- a/src/core2/bs/crouch.c +++ b/src/core2/bs/crouch.c @@ -1,6 +1,7 @@ #include #include "functions.h" #include "variables.h" +#include "core2/ba/anim.h" /* .bss */ f32 D_8037D400; @@ -10,17 +11,17 @@ u8 D_8037D404; enum bs_e func_802ADCD4(enum bs_e arg0); void func_802AD6D0(void){ - func_8028A010(ASSET_10C_ANIM_BSCROUCH_IDLE, 0.5f); + baanim_playForDuration_loopSmooth(ASSET_10C_ANIM_BSCROUCH_IDLE, 0.5f); D_8037D404 = 4; } void func_802AD6FC(void){ - func_8028A180(ASSET_116_ANIM_BSCROUCH_NOINPUT, 2.0f); + baanim_playForDuration_once(ASSET_116_ANIM_BSCROUCH_NOINPUT, 2.0f); D_8037D404 = 2; } void func_802AD728(void){ - func_8028A1F4(ASSET_10C_ANIM_BSCROUCH_IDLE, 0.5f, 0.9999f); + baanim_playForDuration_onceStartingAt(ASSET_10C_ANIM_BSCROUCH_IDLE, 0.5f, 0.9999f); func_8029E3C0(2, 2.0f); D_8037D404 = 1; } @@ -35,7 +36,7 @@ void func_802AD7B0(AnimCtrl *aCtrl){ } void bscrouch_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp28[3]; f32 sp24; f32 sp20; @@ -54,9 +55,9 @@ void bscrouch_init(void){ animctrl_setIndex(aCtrl, ASSET_1_ANIM_BSCROUCH_ENTER); animctrl_setDuration(aCtrl, 0.5f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_8028774C(aCtrl, sp24); - func_802875AC(aCtrl, "bscrouch.c", 0xa0); - func_80289F10(1); + animctrl_setStart(aCtrl, sp24); + animctrl_start(aCtrl, "bscrouch.c", 0xa0); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); yaw_setUpdateState(3); yaw_setVelocityBounded(350.0f, 14.0f); func_8029957C(7); @@ -78,7 +79,7 @@ void bscrouch_init(void){ void bscrouch_update(void){ enum bs_e sp34 = 0; f32 sp30; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); //sp2C + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); //sp2C f32 temp_f2; f32 pad; f32 sp20; diff --git a/src/core2/bs/die.c b/src/core2/bs/die.c index 8829e8de..5cba9b7c 100644 --- a/src/core2/bs/die.c +++ b/src/core2/bs/die.c @@ -1,6 +1,7 @@ #include #include "functions.h" #include "variables.h" +#include "core2/ba/anim.h" /* .bss */ f32 D_8037D410; @@ -20,7 +21,7 @@ void _bsdie_802ADE20(void){ } void bsdie_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp38; f32 sp2C[3]; f32 sp20[3]; @@ -31,7 +32,7 @@ void bsdie_init(void){ animctrl_setSubRange(aCtrl, 0.0f, 0.3356f); animctrl_setDuration(aCtrl, 2.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsdie.c", 0x7e); + animctrl_start(aCtrl, "bsdie.c", 0x7e); func_8029B930(); func_8030E58C(SFX_36_BANJO_DOH, 1.0f); _player_getPosition(sp2C); @@ -43,7 +44,7 @@ void bsdie_init(void){ func_80297970(D_8037D410); func_8029797C(sp38); func_802979AC(sp38, func_80297A64()); - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); yaw_setUpdateState(1); func_8029957C(2); func_802978DC(3); @@ -61,7 +62,7 @@ void bsdie_init(void){ } void bsdie_update(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); enum bs_e sp28 = 0; func_80297970(D_8037D410); func_80299628(0); diff --git a/src/core2/bs/droneenter.c b/src/core2/bs/droneenter.c index 71563a2c..ac332c04 100644 --- a/src/core2/bs/droneenter.c +++ b/src/core2/bs/droneenter.c @@ -107,7 +107,7 @@ void bsDroneEnter_init(void) { enum asset_e anim_id; func_8029BCF8(&anim_id, &anim_duration); - func_8028A010(anim_id, anim_duration); + baanim_playForDuration_loopSmooth(anim_id, anim_duration); func_8029C7F4(1, 1, 3, 7); func_80294378(6); __bsDroneEnter_init(); diff --git a/src/core2/bs/dronegoto.c b/src/core2/bs/dronegoto.c index 787ca4b0..04b47964 100644 --- a/src/core2/bs/dronegoto.c +++ b/src/core2/bs/dronegoto.c @@ -50,7 +50,7 @@ void func_802AEC78(void){ f32 sp20[3]; s32 sp1C; func_8029BC60(&sp1C, &sp2C); - func_8028A010(sp1C, sp2C); + baanim_playForDuration_loopSmooth(sp1C, sp2C); func_802925F8(&sp20, &sp2C); func_80297BC4(&sp20); func_80297BB8(sp2C); @@ -62,7 +62,7 @@ void func_802AEC78(void){ void func_802AECE4(void){ f32 sp2C; f32 sp20[3]; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); _get_velocity(&sp20); if(func_8025801C(sp20, &sp2C)){ @@ -74,7 +74,7 @@ void func_802AECE4(void){ ){ animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_C_ANIM_BSWALK_RUN); - func_802875AC(aCtrl, "bsdronegoto.c", 0x9d); + animctrl_start(aCtrl, "bsdronegoto.c", 0x9d); } if(func_80297C48() && D_8037D441 == 0){ diff --git a/src/core2/bs/dronelook.c b/src/core2/bs/dronelook.c index 6cdc80b7..88fb4733 100644 --- a/src/core2/bs/dronelook.c +++ b/src/core2/bs/dronelook.c @@ -17,7 +17,7 @@ void bsDroneLook_init(void) { func_80299D2C(SFX_12D_CAMERA_ZOOM_CLOSEST, 1.2f, 12000); func_8029BCF8(&anim_id, &anim_duration); - func_8028A010(anim_id, anim_duration); + baanim_playForDuration_loopSmooth(anim_id, anim_duration); func_8029C7F4(1, 1, 3, 2); func_80297970(0.0f); func_80297A0C(0); diff --git a/src/core2/bs/dronevanish.c b/src/core2/bs/dronevanish.c index d3b143ad..0d6cf7c8 100644 --- a/src/core2/bs/dronevanish.c +++ b/src/core2/bs/dronevanish.c @@ -92,7 +92,7 @@ void bsDroneVanish_init(void){ enum asset_e anim_id; func_8029BCF8(&anim_id, &anim_duration); - func_8028A010(anim_id, anim_duration); + baanim_playForDuration_loopSmooth(anim_id, anim_duration); func_8029C7F4(1,1,3,7); func_80294378(6); __bsDroneVanish_init(); diff --git a/src/core2/bs/dronexform.c b/src/core2/bs/dronexform.c index 9d2f4609..7a8c121b 100644 --- a/src/core2/bs/dronexform.c +++ b/src/core2/bs/dronexform.c @@ -224,14 +224,14 @@ void func_802B0060(UNK_TYPE(s32) arg0, UNK_TYPE(s32) arg1){ void func_802B014C(void){ - func_80289EBC(NULL); + baanim_setModifyMethod(NULL); } void func_802B016C(void){ D_8037D470.unk20 = 0.0f; D_8037D470.unk28 = 0.0f; D_8037D470.unk24 = 1.0f; - func_80289EBC(func_802B0060); + baanim_setModifyMethod(func_802B0060); } void func_802B01B0(f32 arg0){ @@ -296,7 +296,7 @@ static void __bsdronexform_setState(int next_state){ player_setTransformation(func_80294A4C()); //set player transformation baModel_updateModel(); //update player model func_8029BD44(&sp34, &sp30); - func_8028A010(sp34, sp30); + baanim_playForDuration_loopSmooth(sp34, sp30); func_8029E3C0(0, 0.1f); break; @@ -323,7 +323,7 @@ void bsdronexform_init(void){ f32 sp1C; enum asset_e sp18; func_8029BCAC(&sp18, &sp1C); - func_8028A010(sp18, sp1C); + baanim_playForDuration_loopSmooth(sp18, sp1C); func_8029C7F4(1,1,3,7); func_80297A0C(0); func_80297930(0); diff --git a/src/core2/bs/jig.c b/src/core2/bs/jig.c index 0710eca1..8a9f46d1 100644 --- a/src/core2/bs/jig.c +++ b/src/core2/bs/jig.c @@ -18,7 +18,7 @@ void bsjig_setJiggyMarkerPtr(ActorMarker * jiggyMarkerPtr){ } void bsjig_jiggy_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); int tmp; animctrl_reset(aCtrl); @@ -26,7 +26,7 @@ void bsjig_jiggy_init(void){ animctrl_setIndex(aCtrl, ASSET_2E_ANIM_BSJIG_JIGGY); animctrl_setDuration(aCtrl, 4.3f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsjig.c", 0x7f); + animctrl_start(aCtrl, "bsjig.c", 0x7f); yaw_setIdeal(func_8029B41C()); //face camera func_8029C7F4(1,1,3,2); func_80297970(0.0f); @@ -55,7 +55,7 @@ void func_802B0BA8(void){ void bsjig_jiggy_update(void){ enum bs_e sp1C = 0; - AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl * aCtrl = baanim_getAnimCtrlPtr(); yaw_setIdeal(func_8029B41C()); @@ -160,14 +160,14 @@ void bsjig_notedoor_end(void){ } void bsjig_notedoor_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); D_8037D4B2 = (bs_getPrevState() == BS_44_JIG_JIGGY); miscflag_clear(0x1A); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_282_ANIM_BSJIG_NOTEDOOR); animctrl_setDuration(aCtrl, 3.6f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsjig.c", 0x14d); + animctrl_start(aCtrl, "bsjig.c", 0x14d); yaw_setIdeal(func_8029B41C()); func_8029C7F4(1,1,3,2); func_80297970(0.0f); diff --git a/src/core2/bs/jump.c b/src/core2/bs/jump.c index c7940127..10807ba0 100644 --- a/src/core2/bs/jump.c +++ b/src/core2/bs/jump.c @@ -3,6 +3,7 @@ #include "variables.h" #include "core2/ba/model.h" +#include "core2/ba/anim.h" f32 func_80294438(void); void func_8029797C(f32); @@ -11,7 +12,7 @@ f32 func_80297A64(void); void func_80299B58(f32, f32); f32 func_8029B2E8(void); f32 func_8029B33C(void); -void func_8028A084(s32, f32); +void baanim_playForDuration_loop(s32, f32); /* .data */ f32 D_80364CD0 = 710.0f; @@ -32,7 +33,7 @@ void func_802B1100(void){ } void bsjump_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); enum bs_e sp30; D_8037D4C2 = miscflag_isTrue(2); @@ -43,7 +44,7 @@ void bsjump_init(void){ if(sp30 == BS_11_BPECK){ animctrl_setSubRange(aCtrl, 0.0f, 0.6667f); - func_8028774C(aCtrl, 0.5042f); + animctrl_setStart(aCtrl, 0.5042f); animctrl_setDuration(aCtrl, 8.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); D_8037D4C0 = 1; @@ -54,10 +55,10 @@ void bsjump_init(void){ animctrl_setIndex(aCtrl, ASSET_8_ANIM_BSJUMP); animctrl_setDuration(aCtrl, 1.9f); animctrl_setTransitionDuration(aCtrl, 0.134f); - func_8028774C(aCtrl, 0.3f); + animctrl_setStart(aCtrl, 0.3f); animctrl_setSubRange(aCtrl, 0.0f, 0.5042f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsjump.c", 0x95); + animctrl_start(aCtrl, "bsjump.c", 0x95); func_8029C7F4(1,1,3,6); if(func_8029B2E8() != 0.0f){ yaw_setIdeal(func_8029B33C()); @@ -82,7 +83,7 @@ void bsjump_init(void){ void bsjump_update(void){ enum bs_e sp34 = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 velocity[3]; @@ -169,10 +170,10 @@ void bsjump_end(void){ } void bsjump_fall_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); int sp20; - if(miscflag_isTrue(7) && 700.0f < func_80297AAC()) + if(miscflag_isTrue(7) && 700.0f < _get_vertVelocity()) player_setYVelocity(700.0f); sp20 = (bs_getPrevState() == BS_12_BFLIP)? 0 : 1; @@ -181,14 +182,14 @@ void bsjump_fall_init(void){ animctrl_setIndex(aCtrl, ASSET_B0_ANIM_BSJUMP_FALL); animctrl_setTransitionDuration(aCtrl, 0.3f); animctrl_setDuration(aCtrl, 0.38f); - func_802875AC(aCtrl, "bsjump.c", 0x188); + animctrl_start(aCtrl, "bsjump.c", 0x188); func_8029C7F4(1,1,3,6); D_8037D4C0 = 0; } void bsjump_fall_update(void){ enum bs_e sp2C = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 player_velocity[3]; if(miscflag_isTrue(0xf)) @@ -203,10 +204,10 @@ void bsjump_fall_update(void){ if(func_8028B254(0x5a)){ animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_8_ANIM_BSJUMP); - func_8028774C(aCtrl, 0.6667f); + animctrl_setStart(aCtrl, 0.6667f); animctrl_setDuration(aCtrl, 2.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsjump.c", 0x1b5); + animctrl_start(aCtrl, "bsjump.c", 0x1b5); D_8037D4C0 = 1; } break; @@ -250,17 +251,17 @@ void bsjump_fall_end(void){} void func_802B1928(void) { AnimCtrl *anim_ctrl; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); climbRelease(); animctrl_reset(anim_ctrl); animctrl_setIndex(anim_ctrl, ASSET_8_ANIM_BSJUMP); animctrl_setDuration(anim_ctrl, 1.9f); animctrl_setTransitionDuration(anim_ctrl, 0.134f); - func_8028774C(anim_ctrl, 0.3f); + animctrl_setStart(anim_ctrl, 0.3f); animctrl_setSubRange(anim_ctrl, 0.0f, 0.5042f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE); - func_802875AC(anim_ctrl, "bsjump.c", 0x201); - func_80289F10(1); + animctrl_start(anim_ctrl, "bsjump.c", 0x201); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); yaw_setUpdateState(1); func_8029957C(3); func_802978DC(3); @@ -280,7 +281,7 @@ void func_802B1A54(void) { f32 velocity[3]; next_state = 0; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); _get_velocity(velocity); if (velocity[1] < 0.0f) { func_80294378(1); @@ -327,7 +328,7 @@ void func_802B1BF4(void) { AnimCtrl *anim_ctrl; bool smooth_transition; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); smooth_transition = TRUE; if(bs_getPrevState() == BS_12_BFLIP){ smooth_transition = FALSE; @@ -337,11 +338,11 @@ void func_802B1BF4(void) { animctrl_setIndex(anim_ctrl, ASSET_8_ANIM_BSJUMP); animctrl_setTransitionDuration(anim_ctrl, 0.3f); animctrl_setDuration(anim_ctrl, 1.9f); - func_8028774C(anim_ctrl, 0.6667f); + animctrl_setStart(anim_ctrl, 0.6667f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_STOPPED); - func_802875AC(anim_ctrl, "bsjump.c", 0x298); + animctrl_start(anim_ctrl, "bsjump.c", 0x298); yaw_setIdeal(func_8029B41C()); - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); yaw_setUpdateState(1); func_8029957C(3); func_802978DC(6); @@ -357,7 +358,7 @@ void func_802B1CF8(void) { f32 velocity[3]; next_state = 0; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); _get_velocity(velocity); switch (D_8037D4C0) { case 0: @@ -386,7 +387,7 @@ bool bsjump_jumpingFromWater(void){ } void bsjump_tumble_init(void){ - func_8028A084(ASSET_68_ANIM_BSJUMP_TUMBLE, 0.35f); + baanim_playForDuration_loop(ASSET_68_ANIM_BSJUMP_TUMBLE, 0.35f); func_8029C7F4(1,1,3,6); baModel_setYDisplacement(60.0f); if(func_80293234() == 1){ diff --git a/src/core2/bs/ow.c b/src/core2/bs/ow.c index 35647358..00c7b131 100644 --- a/src/core2/bs/ow.c +++ b/src/core2/bs/ow.c @@ -12,14 +12,14 @@ void func_802B1FD0(s32 arg0){} void bsow_init(void){ AnimCtrl *plyr_mvmnt; - plyr_mvmnt = _player_getAnimCtrlPtr(); + plyr_mvmnt = baanim_getAnimCtrlPtr(); animctrl_reset(plyr_mvmnt); animctrl_setSmoothTransition(plyr_mvmnt, 0); animctrl_setSubRange(plyr_mvmnt, 0.0f, 0.534399986267f); animctrl_setIndex(plyr_mvmnt, ASSET_4D_ANIM_BSOW); animctrl_setDuration(plyr_mvmnt, 1.70000004768f); animctrl_setPlaybackType(plyr_mvmnt, ANIMCTRL_ONCE); - func_802875AC(plyr_mvmnt, "bsow.c", 0x50); + animctrl_start(plyr_mvmnt, "bsow.c", 0x50); func_80299BFC(1.0f); func_802B360C(); baMarker_collisionOff(); @@ -37,7 +37,7 @@ void bsow_update(void) { switch(D_8037D4D0){ case 0: if (func_8028B254(0x5A) != 0) { - func_8028A37C(1.0f); + baanim_setEnd(1.0f); D_8037D4D0 = 1; } break; @@ -54,7 +54,7 @@ void bsow_update(void) { if (func_8028B2E8() != 0) { sp1C = BS_2_WALK_SLOW; } - if ((player_inWater() != 0) && (func_80297AAC() <= 0.0f)) { + if ((player_inWater() != 0) && (_get_vertVelocity() <= 0.0f)) { sp1C = BS_4C_LANDING_IN_WATER; } diff --git a/src/core2/bs/pumpkin.c b/src/core2/bs/pumpkin.c index a09a95b2..779978fb 100644 --- a/src/core2/bs/pumpkin.c +++ b/src/core2/bs/pumpkin.c @@ -3,8 +3,9 @@ #include "variables.h" #include "core2/ba/model.h" +#include "core2/ba/anim.h" -extern void func_8028A084(s32, f32); +extern void baanim_playForDuration_loop(s32, f32); extern void func_8029AD68(f32, s32); /* .data */ @@ -57,7 +58,7 @@ void func_802B229C(void) { miscflag_clear(4); func_80293D74(); } - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); } int bspumpkin_inSet(s32 move_indx){ @@ -72,7 +73,7 @@ int bspumpkin_inSet(s32 move_indx){ } void bspumpkin_idle_init(void) { - func_8028A084(ASSET_A0_ANIM_BSPUMPKIN_WALK, 0.8f); + baanim_playForDuration_loop(ASSET_A0_ANIM_BSPUMPKIN_WALK, 0.8f); func_8029C7F4(1, 1, 1, 2); func_80297970(0.0f); pitch_setAngVel(1000.0f, 12.0f); @@ -111,14 +112,14 @@ void bspumpkin_idle_end(void){ void bspumpkin_walk_init(void) { AnimCtrl *anim_ctrl; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); animctrl_reset(anim_ctrl); animctrl_setIndex(anim_ctrl, ASSET_A0_ANIM_BSPUMPKIN_WALK); animctrl_setDuration(anim_ctrl, 0.8f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_LOOP); - _func_802875AC(anim_ctrl, "bspumpkin.c", 0x11D); + animctrl_start(anim_ctrl, "bspumpkin.c", 0x11D); func_8029C7F4(2, 1, 1, 2); - func_80289EC8(D_80364CF0, D_80364CF4, D_80364CF8, D_80364CFC); + baanim_setVelocityMapRanges(D_80364CF0, D_80364CF4, D_80364CF8, D_80364CFC); func_802900B4(); } @@ -149,13 +150,13 @@ void bspumpkin_walk_end(void){ void bspumpkin_jump_init(void) { AnimCtrl *anim_ctrl; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); animctrl_reset(anim_ctrl); animctrl_setIndex(anim_ctrl, ASSET_A1_ANIM_BSPUMPKIN_JUMP); animctrl_setSubRange(anim_ctrl, 0.0f, 0.3941f); animctrl_setDuration(anim_ctrl, 1.2f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE); - func_802875AC(anim_ctrl, "bspumpkin.c", 0x16C); + animctrl_start(anim_ctrl, "bspumpkin.c", 0x16C); func_8029C7F4(1, 1, 3, 6); if (func_8029B2E8() != 0.0f) { yaw_setIdeal(func_8029B33C()); @@ -175,7 +176,7 @@ void bspumpkin_jump_update(void) { f32 sp1C[3]; next_state = 0; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); func_802B223C(); _get_velocity(sp1C); if (button_released(BUTTON_A) && sp1C[1] > 0.0f) { @@ -183,7 +184,7 @@ void bspumpkin_jump_update(void) { } switch (D_8037D4E0) { case 0: - if (func_80297AAC() < 0.0f) { + if (_get_vertVelocity() < 0.0f) { if (func_8028B254(130)) { func_80292E48(); animctrl_setDuration(anim_ctrl, 0.7f); @@ -242,14 +243,14 @@ void bspumpkin_jump_end(void){ void bspumpkin_fall_init(void) { AnimCtrl *anim_ctrl; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); D_8037D4E4 = 0; animctrl_reset(anim_ctrl); animctrl_setIndex(anim_ctrl, ASSET_A1_ANIM_BSPUMPKIN_JUMP); - func_8028774C(anim_ctrl, 0.662f); + animctrl_setStart(anim_ctrl, 0.662f); animctrl_setDuration(anim_ctrl, 0.7f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_STOPPED); - func_802875AC(anim_ctrl, "bspumpkin.c", 0x1F1); + animctrl_start(anim_ctrl, "bspumpkin.c", 0x1F1); func_8029C7F4(1, 1, 3, 6); D_8037D4E0 = 0; } @@ -261,7 +262,7 @@ void bspumpkin_fall_update(void) { f32 sp1C[3]; next_state = 0; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); if (D_8037D4E4) { func_802B223C(); } @@ -304,7 +305,7 @@ void bspumpkin_fall_end(void){ void func_802B2BF0(void) { func_8029656C(D_8037D4E8); func_8028FAB0(D_8037D4E8); - func_8028A084(ASSET_A0_ANIM_BSPUMPKIN_WALK, 0.8f); + baanim_playForDuration_loop(ASSET_A0_ANIM_BSPUMPKIN_WALK, 0.8f); func_8029C7F4(1, 1, 2, 7); func_80294378(6); func_8029E3C0(0, 0.0f); @@ -339,13 +340,13 @@ void __bspumpkin_bounce_init(s32 arg0) { f32 plyr_pos[3]; f32 sp20[3]; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); animctrl_reset(anim_ctrl); animctrl_setIndex(anim_ctrl, ASSET_236_ANIM_BSPUMPKIN_REBOUND); animctrl_setDuration(anim_ctrl, 1.3f); animctrl_setSubRange(anim_ctrl, 0.0f, 0.45f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE); - func_802875AC(anim_ctrl, "bspumpkin.c", 0x2AB); + animctrl_start(anim_ctrl, "bspumpkin.c", 0x2AB); if (arg0 == 1) { func_8030E58C(SFX_38_BANJO_AYE_1, 1.8f); } else { @@ -377,7 +378,7 @@ void __bspumpkin_bounce_update(void) { switch (D_8037D4E0) { case 0: if (func_8028B254(90)) { - func_8028A3B8(1.0f, 0.5f); + baanim_setEndAndDuration(1.0f, 0.5f); func_8029AE48(); D_8037D4E0 = 1; } @@ -429,7 +430,7 @@ void bspumpkin_die_init(void) { f32 plyr_pos[3]; f32 sp20[3]; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); func_8029B930(); animctrl_reset(anim_ctrl); animctrl_setSmoothTransition(anim_ctrl, 0); @@ -437,7 +438,7 @@ void bspumpkin_die_init(void) { animctrl_setSubRange(anim_ctrl, 0.0f, 0.1439f); animctrl_setDuration(anim_ctrl, 3.5f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE); - func_802875AC(anim_ctrl, "bspumpkin.c", 0x32E); + animctrl_start(anim_ctrl, "bspumpkin.c", 0x32E); func_8030E58C(SFX_36_BANJO_DOH, 1.8f); _player_getPosition(plyr_pos); func_80294980(sp20); @@ -467,7 +468,7 @@ void bspumpkin_die_update(void){ switch(D_8037D4E0){ case 0://L802B3284 if(func_8028B254(90)) { - func_8028A37C(0.1571f); + baanim_setEnd(0.1571f); D_8037D4E0 = 1; } break; @@ -477,7 +478,7 @@ void bspumpkin_die_update(void){ func_8029AE48(); FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 18000); FUNC_8030E624(SFX_39_BANJO_AYE_2, 1.8f, 18000); - func_8028A3B8(0.2f, 2.9f); + baanim_setEndAndDuration(0.2f, 2.9f); D_8037D4E0 = 2; } break; @@ -485,7 +486,7 @@ void bspumpkin_die_update(void){ case 2://L802B3300 if(baanim_isStopped()) { player_setYVelocity(400.0f); - func_8028A37C(0.355f); + baanim_setEnd(0.355f); D_8037D4E0 = 3; } break; @@ -493,7 +494,7 @@ void bspumpkin_die_update(void){ case 3://L802B3338 D_8037D4F4 = ml_max_f(0.0f, D_8037D4F4 - 10.0f); if (func_8028B254(90)) { - func_8028A37C(0.36f); + baanim_setEnd(0.36f); D_8037D4E0 = 4; } break; @@ -504,7 +505,7 @@ void bspumpkin_die_update(void){ func_8029AE48(); FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 18000); FUNC_8030E624(SFX_39_BANJO_AYE_2, 1.8f, 18000); - func_8028A37C(1.0f); + baanim_setEnd(1.0f); D_8037D4E0 = 5; } break; @@ -531,7 +532,7 @@ void bspumpkin_die_end(void) { } void func_802B34A0(void) { - func_8028A010(0xA0, 0.8f); + baanim_playForDuration_loopSmooth(0xA0, 0.8f); func_8029C7F4(1, 1, 3, 2); func_80297970(0.0f); func_8029C674(); diff --git a/src/core2/bs/rebound.c b/src/core2/bs/rebound.c index 0a7b43cf..70622e59 100644 --- a/src/core2/bs/rebound.c +++ b/src/core2/bs/rebound.c @@ -87,7 +87,7 @@ void func_802B3868(void) { AnimCtrl *anim_ctrl; f32 sp20; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); func_802B360C(); if (D_8037D500 == 0) { sp20 = 1.4f; @@ -100,7 +100,7 @@ void func_802B3868(void) { animctrl_setIndex(anim_ctrl, ASSET_F_ANIM_BSREBOUND); animctrl_setDuration(anim_ctrl, sp20); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE); - _func_802875AC(anim_ctrl, "bsrebound.c", 0xC6); + animctrl_start(anim_ctrl, "bsrebound.c", 0xC6); func_8030E58C(SFX_56_BANJO_HUI, 1.0f); func_8029E3C0(0, 1.5f); baMarker_collisionOff(); @@ -112,7 +112,7 @@ void func_802B3954(void) { AnimCtrl *anim_ctrl; next_state = 0; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); if (func_8029E1A8(0) && map_get() == MAP_93_GL_DINGPOT) { baMarker_collisionOn(); } diff --git a/src/core2/bs/rest.c b/src/core2/bs/rest.c index d3e911d9..973528ec 100644 --- a/src/core2/bs/rest.c +++ b/src/core2/bs/rest.c @@ -19,26 +19,26 @@ void func_802B3A50(void) { void func_802B3AAC(enum asset_e anim_id, f32 anim_duration) { AnimCtrl *anim_ctrl; - anim_ctrl = _player_getAnimCtrlPtr(); - if (anim_id == 0x14A) { + anim_ctrl = baanim_getAnimCtrlPtr(); + if (anim_id == ASSET_14A_ANIM_BSREST_LISTEN) { func_8029E070(1); - switch (animctrl_getIndex(_player_getAnimCtrlPtr())) { - case 0x14A: - func_8028A010(anim_id, anim_duration); + switch (animctrl_getIndex(baanim_getAnimCtrlPtr())) { + case ASSET_14A_ANIM_BSREST_LISTEN: + baanim_playForDuration_loopSmooth(anim_id, anim_duration); break; - case 0x167: + case ASSET_167_ANIM_BSREST_MOVE: animctrl_reset(anim_ctrl); - animctrl_setIndex(anim_ctrl, 0x167); + animctrl_setIndex(anim_ctrl, ASSET_167_ANIM_BSREST_MOVE); animctrl_setDuration(anim_ctrl, 0.4f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE); break; default: - func_8028A180(0x167, 0.5f); + baanim_playForDuration_once(ASSET_167_ANIM_BSREST_MOVE, 0.5f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE); break; } } else { - func_8028A010(anim_id, anim_duration); + baanim_playForDuration_loopSmooth(anim_id, anim_duration); } func_8029C7F4(1, 1, 3, 2); func_80297970(0.0f); @@ -50,28 +50,28 @@ bool func_802B3BB0(void) { AnimCtrl *anim_ctrl; bool sp20; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); func_802B3A50(); sp20 = FALSE; switch(animctrl_getIndex(anim_ctrl)){ - case 0x167: + case ASSET_167_ANIM_BSREST_MOVE: if (baanim_isStopped() != 0) { if (animctrl_isPlayedForwards(anim_ctrl) != 0) { - func_8028A010(ASSET_14A_ANIM_BANJO_LISTENING, 11.4f); + baanim_playForDuration_loopSmooth(ASSET_14A_ANIM_BSREST_LISTEN, 11.4f); } else if (func_80298850() == 0) { sp20 = TRUE; } } break; - case ASSET_14A_ANIM_BANJO_LISTENING: + case ASSET_14A_ANIM_BSREST_LISTEN: if (func_80298850() == 0) { animctrl_reset(anim_ctrl); animctrl_setDirection(anim_ctrl, 0); animctrl_setIndex(anim_ctrl, 0x167); - func_8028774C(anim_ctrl, 1.0f); + animctrl_setStart(anim_ctrl, 1.0f); animctrl_setDuration(anim_ctrl, 0.5f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE); - _func_802875AC(anim_ctrl, "bsrest.c", 0xA3); + animctrl_start(anim_ctrl, "bsrest.c", 0xA3); } break; default: diff --git a/src/core2/bs/sled.c b/src/core2/bs/sled.c index 2734b743..77c772d0 100644 --- a/src/core2/bs/sled.c +++ b/src/core2/bs/sled.c @@ -24,7 +24,7 @@ void func_802B3F60(void){ void bssled_init(void){ func_802B3F20(); - func_8028A010(ASSET_228_ANIM_BANJO_SLED, 1.8f); + baanim_playForDuration_loopSmooth(ASSET_228_ANIM_BANJO_SLED, 1.8f); func_8029C7F4(1, 1, 3, 7); func_80297970(0.0f); func_80294A8C(0); diff --git a/src/core2/bs/slide.c b/src/core2/bs/slide.c index 92708172..4d8de3fb 100644 --- a/src/core2/bs/slide.c +++ b/src/core2/bs/slide.c @@ -46,7 +46,7 @@ void func_802B40D0(void){ } void bsslide_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp30[3]; f32 sp2C; f32 sp28; @@ -65,7 +65,7 @@ void bsslide_init(void){ animctrl_setIndex(aCtrl, D_8037D520); animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED); animctrl_setDuration(aCtrl, 1.0f); - func_802875AC(aCtrl, "bsslide.c", 0x7f); + animctrl_start(aCtrl, "bsslide.c", 0x7f); func_8029C7F4(1,1,3,3); func_8029797C(yaw_getIdeal()); func_802979AC(yaw_getIdeal() ,func_80297A64()); diff --git a/src/core2/bs/splat.c b/src/core2/bs/splat.c index 5c1507b8..646b663c 100644 --- a/src/core2/bs/splat.c +++ b/src/core2/bs/splat.c @@ -20,7 +20,7 @@ void func_802B4570(void) { void bssplat_init(void){ s32 sp1C; - func_8028A274(ASSET_149_ANIM_BSSPLAT, 1.1f); + baanim_playForDuration_onceSmooth(ASSET_149_ANIM_BSSPLAT, 1.1f); func_8029C7F4(1,1,3,3); func_802931DC(&sp1C); func_803463D4(ITEM_14_HEALTH, -sp1C); @@ -44,7 +44,7 @@ void bssplat_init(void){ void bssplat_update(void){ enum bs_e sp1C = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); func_80297970(ml_max_f(0.0f, func_80297A64() - 15.0f)); switch (D_8037D530) @@ -57,7 +57,7 @@ void bssplat_update(void){ sp1C = BS_2F_FALL; if(animctrl_isStopped(aCtrl)){ - func_8028A180(ASSET_D2_ANIM_BSSPLAT, 2.25f); + baanim_playForDuration_once(ASSET_D2_ANIM_BSSPLAT, 2.25f); D_8037D530 = 1; } break; diff --git a/src/core2/bs/stand.c b/src/core2/bs/stand.c index 53bf24d6..3a886a79 100644 --- a/src/core2/bs/stand.c +++ b/src/core2/bs/stand.c @@ -7,7 +7,7 @@ extern f32 func_8029B2E8(void); void yaw_setVelocityBounded(f32, f32); -void func_802875AC(AnimCtrl *, char*, s32); +void animctrl_start(AnimCtrl *, char*, s32); void func_802900B4(void); void rumbleManager_80250D94(f32, f32, f32); @@ -90,7 +90,7 @@ void bsstand_init(void){ if(bsclimb_inSet(bs_getPrevState())) climbRelease(); - func_8028A180(0x6F, 5.5f); + baanim_playForDuration_once(ASSET_6F_ANIM_BSSTAND_IDLE, 5.5f); func_8029C7F4(1,1,1,2); func_80297970(0.0f); func_802900B4(); @@ -187,7 +187,7 @@ void bsstand_update(void) { f32 sp1C; s32 sp18; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); if ((func_8029B300() == 0) && (func_8029B2E8() > 0.0f)) { D_8037D544 = 1; yaw_setUpdateState(3); @@ -220,7 +220,7 @@ void bsstand_update(void) { animctrl_setIndex(anim_ctrl, ASSET_F6_ANIM_BSSTAND_PULL_KAZOOIE); animctrl_setDuration(anim_ctrl, 5.0f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE); - func_802875AC(anim_ctrl, "bsstand.c", 0x170); + animctrl_start(anim_ctrl, "bsstand.c", 0x170); } } else { if (animctrl_isAt(anim_ctrl, 0.069f)) func_80299D2C(SFX_4B_GULPING, 1.4f, 0x4650); @@ -241,12 +241,12 @@ void bsstand_update(void) { D_8037D540 = func_802B4870(D_8037D540); sp18 = D_80364D20[D_8037D540]; if (sp18 & 0x10) { - func_8028A180(ASSET_95_ANIM_BSSTAND_KAZOOIE_PECK, 5.5f); - _func_802875AC(anim_ctrl, "bsstand.c", 0x1AB); + baanim_playForDuration_once(ASSET_95_ANIM_BSSTAND_KAZOOIE_PECK, 5.5f); + animctrl_start(anim_ctrl, "bsstand.c", 0x1AB); func_8029E070(1); func_802900FC(); } else if (sp18 & 0x20) { - func_8028A180(ASSET_95_ANIM_BSSTAND_KAZOOIE_PECK, 5.5f); + baanim_playForDuration_once(ASSET_95_ANIM_BSSTAND_KAZOOIE_PECK, 5.5f); func_8029E070(1); func_802900FC(); } else if (sp18 & 8) { @@ -260,8 +260,8 @@ void bsstand_update(void) { animctrl_setIndex(anim_ctrl, ASSET_6F_ANIM_BSSTAND_IDLE); animctrl_setDuration(anim_ctrl, 5.5f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_LOOP); - func_8028774C(anim_ctrl, sp1C); - func_802875AC(anim_ctrl, "bsstand.c", 0x1C3); + animctrl_setStart(anim_ctrl, sp1C); + animctrl_start(anim_ctrl, "bsstand.c", 0x1C3); func_8029E070(0); } } @@ -286,7 +286,7 @@ void bsstand_landing_init(void){ //bsStand_Land_update void bsstand_landing_update(void){ s32 sp1C = 0; - AnimCtrl * sp18 = _player_getAnimCtrlPtr(); + AnimCtrl * sp18 = baanim_getAnimCtrlPtr(); if(animctrl_getIndex(sp18) == ASSET_D2_ANIM_BSSPLAT){ if(animctrl_isAt(sp18, 0.8264f)){ diff --git a/src/core2/bs/surf.c b/src/core2/bs/surf.c index f9ba3f9d..526b5da2 100644 --- a/src/core2/bs/surf.c +++ b/src/core2/bs/surf.c @@ -9,12 +9,12 @@ s32 D_8037D560; void func_802B5FD0(void) { AnimCtrl *anim_ctrl; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); animctrl_reset(anim_ctrl); animctrl_setIndex(anim_ctrl, ASSET_69_ANIM_BSSURF); animctrl_setDuration(anim_ctrl, 1.8f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_LOOP); - _func_802875AC(anim_ctrl, "bssurf.c", 0x33); + animctrl_start(anim_ctrl, "bssurf.c", 0x33); func_8029C7F4(1, 1, 3, 2); func_80297970(0.0f); D_8037D560 = 1; diff --git a/src/core2/bs/swim.c b/src/core2/bs/swim.c index 1e63e62d..d8268d6a 100644 --- a/src/core2/bs/swim.c +++ b/src/core2/bs/swim.c @@ -2,16 +2,18 @@ #include "functions.h" #include "variables.h" +#include "core2/ba/anim.h" + extern void func_80295328(s32, f32); bool bsswim_inset(enum bs_e state_id); /* .data */ -f32 D_80364D40 = 30.0f; -f32 D_80364D44 = 300.0f; -f32 D_80364D48 = 1.2f; -f32 D_80364D4C = 0.7f; -s16 D_80364D50[10] = { +f32 bsSwimHorzVelocityMin = 30.0f; +f32 bsSwimHorzVelocityMax = 300.0f; +f32 bsSwimDurationMin = 1.2f; +f32 bsSwimDurationMax = 0.7f; +s16 bsSwimAnimations[10] = { ASSET_57_ANIM_BSSWIM_IDLE, ASSET_57_ANIM_BSSWIM_IDLE, ASSET_57_ANIM_BSSWIM_IDLE, @@ -25,7 +27,7 @@ s16 D_80364D50[10] = { }; /* .bss */ -u32 D_8037D550; +u32 bsSwimCurrentAnimation; /* .code */ void func_802B5480(void) { @@ -47,15 +49,15 @@ void func_802B5480(void) { void func_802B5538(AnimCtrl *arg0) { enum asset_e sp24; - sp24 = D_80364D50[D_8037D550]; + sp24 = bsSwimAnimations[bsSwimCurrentAnimation]; if (animctrl_getIndex(arg0) != sp24) { - func_8028774C(arg0, animctrl_getAnimTimer(arg0)); + animctrl_setStart(arg0, animctrl_getAnimTimer(arg0)); animctrl_setIndex(arg0, sp24); - _func_802875AC(arg0, "bsswim.c", 0x79); + animctrl_start(arg0, "bsswim.c", 0x79); } - D_8037D550++; - if (D_8037D550 >= 10) { - D_8037D550 = 0; + bsSwimCurrentAnimation++; + if (bsSwimCurrentAnimation >= 10) { + bsSwimCurrentAnimation = 0; } } @@ -67,7 +69,7 @@ void func_802B55DC(void) { func_80297970(0.0f); return; } - func_80297970(ml_interpolate_f(sp1C, D_80364D40, D_80364D44)); + func_80297970(ml_interpolate_f(sp1C, bsSwimHorzVelocityMin, bsSwimHorzVelocityMax)); } void func_802B563C(void) { @@ -107,7 +109,7 @@ void func_802B5774(void) { s32 prev_state; f32 transition_duration; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); prev_state = bs_getPrevState(); if (prev_state == BS_4C_LANDING_IN_WATER) { transition_duration = 0.8f; @@ -132,15 +134,15 @@ void func_802B5774(void) { animctrl_setTransitionDuration(anim_ctrl, transition_duration); animctrl_setIndex(anim_ctrl, ASSET_57_ANIM_BSSWIM_IDLE); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_LOOP); - func_8028774C(anim_ctrl, 0.3f); + animctrl_setStart(anim_ctrl, 0.3f); animctrl_setDuration(anim_ctrl, 1.2f); - func_802875AC(anim_ctrl, "bsswim.c", 0xFD); + animctrl_start(anim_ctrl, "bsswim.c", 0xFD); } func_8029C7F4(1, 3, 3, 2); yaw_setVelocityBounded(500.0f, 5.0f); func_80297970(0.0f); func_802B563C(); - D_8037D550 = 0; + bsSwimCurrentAnimation = 0; } void func_802B5950(void) { @@ -148,7 +150,7 @@ void func_802B5950(void) { AnimCtrl *anim_ctrl; next_state = 0; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); if ((func_8023DB4C(7) == 0) && ((f64) randf() < 0.5)) { func_8029C304(1); } @@ -190,7 +192,7 @@ void func_802B5B18(void) { AnimCtrl *anim_ctrl; f32 anim_duration; - anim_ctrl = _player_getAnimCtrlPtr(); + anim_ctrl = baanim_getAnimCtrlPtr(); if (bs_getPrevState() == BS_4C_LANDING_IN_WATER) { anim_duration = 0.8f; } else { @@ -200,13 +202,13 @@ void func_802B5B18(void) { animctrl_reset(anim_ctrl); animctrl_setIndex(anim_ctrl, ASSET_39_ANIM_BSSWIM_MOVE); animctrl_setTransitionDuration(anim_ctrl, anim_duration); - func_8028774C(anim_ctrl, 0.8f); + animctrl_setStart(anim_ctrl, 0.8f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_LOOP); - func_802875AC(anim_ctrl, "bsswim.c", 0x164); + animctrl_start(anim_ctrl, "bsswim.c", 0x164); } - func_80289F10(2); - func_80289EA8(0.3f, 1.5f); - func_80289EC8(D_80364D40, D_80364D44, D_80364D48, D_80364D4C); + baanim_setUpdateType(BAANIM_UPDATE_2_SCALE_HORZ); + baanim_setDurationRange(0.3f, 1.5f); + baanim_setVelocityMapRanges(bsSwimHorzVelocityMin, bsSwimHorzVelocityMax, bsSwimDurationMin, bsSwimDurationMax); yaw_setUpdateState(3); yaw_setVelocityBounded(500.0f, 5.0f); func_8029957C(1); @@ -219,7 +221,7 @@ void func_802B5C40(void) { f32 sp1C[3]; next_state = 0; - anim_ctrl =_player_getAnimCtrlPtr(); + anim_ctrl =baanim_getAnimCtrlPtr(); if (animctrl_isAt(anim_ctrl, 0.38f)) { func_8029C4E4(1); } @@ -277,7 +279,7 @@ void func_802B5E30(void) { } void func_802B5E8C(void) { - func_8028A010(0x57, 1.2f); + baanim_playForDuration_loopSmooth(0x57, 1.2f); func_8029C7F4(1, 3, 3, 2); yaw_setVelocityBounded(500.0f, 5.0f); func_80297970(0.0f); diff --git a/src/core2/bs/talk.c b/src/core2/bs/talk.c index 15a78a7c..1e8229ca 100644 --- a/src/core2/bs/talk.c +++ b/src/core2/bs/talk.c @@ -1,6 +1,8 @@ #include #include "functions.h" #include "variables.h" +#include "core2/ba/anim.h" +#include "core2/yaw.h" /* .bss */ bool bsTalkStayInState; @@ -12,17 +14,17 @@ void bstalk_init(void){ f32 plyr_pos[3]; f32 target_pos[3]; - player_anim_ctrl = _player_getAnimCtrlPtr(); + player_anim_ctrl = baanim_getAnimCtrlPtr(); animctrl_reset(player_anim_ctrl); func_8029C848(player_anim_ctrl); animctrl_setPlaybackType(player_anim_ctrl, ANIMCTRL_LOOP); - func_802875AC(player_anim_ctrl, "bstalk.c", 0x38); + animctrl_start(player_anim_ctrl, "bstalk.c", 0x38); _player_getPosition(plyr_pos); - func_802949F8(target_pos); + get_talk_target_position(target_pos); func_80257F18(plyr_pos, target_pos, &yaw); yaw_setIdeal(yaw); - func_80289F10(1); - yaw_setUpdateState(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); + yaw_setUpdateState(YAW_STATE_1_DEFAULT); func_8029957C(3); func_802978DC(2); func_80297970(0.0f); diff --git a/src/core2/bs/throw.c b/src/core2/bs/throw.c index 2e010acd..f932ba1a 100644 --- a/src/core2/bs/throw.c +++ b/src/core2/bs/throw.c @@ -2,6 +2,7 @@ #include "functions.h" #include "variables.h" #include "core2/statetimer.h" +#include "core2/ba/anim.h" extern ActorMarker *carriedobj_getMarker(void); @@ -10,15 +11,15 @@ u8 D_8037D580; /* .code */ void bsthrow_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_11B_ANIM_BSTHROW); animctrl_setDuration(aCtrl, 1.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsthrow.c", 0x2e); + animctrl_start(aCtrl, "bsthrow.c", 0x2e); - func_80289F10(1); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); yaw_setUpdateState(1); func_8029957C(3); func_802978DC(3); @@ -29,7 +30,7 @@ void bsthrow_init(void){ void bsthrow_update(void){ enum bs_e next_state = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp34[3]; f32 player_position[3]; f32 sp24; @@ -39,7 +40,7 @@ void bsthrow_update(void){ func_802948F8(sp20); _player_getPosition(player_position); - func_80294A1C(sp34); + get_throw_target_position(sp34); func_80257F18(player_position, sp34, &sp24); yaw_setIdeal(sp24); diff --git a/src/core2/bs/timeout.c b/src/core2/bs/timeout.c index 90d81407..0a3da324 100644 --- a/src/core2/bs/timeout.c +++ b/src/core2/bs/timeout.c @@ -8,7 +8,7 @@ f32 func_8029B41C(void); void func_802BF2C0(f32); void func_802B6270(void){ - func_8028A180(ASSET_77_ANIM_BSTIMEOUT, 3.2f); + baanim_playForDuration_once(ASSET_77_ANIM_BSTIMEOUT, 3.2f); func_8029C7F4(1,1,3,2); func_80297970(0.0f); func_802914CC(0xd); @@ -22,7 +22,7 @@ void func_802B6270(void){ } void func_802B6314(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); if(animctrl_isAt(aCtrl, 0.0625f)) func_80292E48(); @@ -45,11 +45,11 @@ void func_802B63C8(void){ } void func_802B63F8(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); func_8029C848(aCtrl); animctrl_setPlaybackType(aCtrl, ANIMCTRL_LOOP); - func_802875AC(aCtrl, "bstimeout.c", 0x7e); + animctrl_start(aCtrl, "bstimeout.c", 0x7e); func_8029C7F4(1,1,3,7); func_80297970(0.0f); func_802914CC(0xd); diff --git a/src/core2/bs/turn.c b/src/core2/bs/turn.c index 71a8953f..24d375ba 100644 --- a/src/core2/bs/turn.c +++ b/src/core2/bs/turn.c @@ -1,6 +1,7 @@ #include #include "functions.h" #include "variables.h" +#include "core2/ba/anim.h" /* .data */ f32 D_8037D590; @@ -8,7 +9,7 @@ s32 D_8037D594; /* .code */ void bsturn_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp28[3]; animctrl_reset(aCtrl); @@ -16,8 +17,8 @@ void bsturn_init(void){ animctrl_setDuration(aCtrl, 0.3f); animctrl_setTransitionDuration(aCtrl,0.1f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bsturn.c", 0x37); - func_80289F10(1); + animctrl_start(aCtrl, "bsturn.c", 0x37); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); yaw_setUpdateState(1); func_8029957C(2); func_802978DC(3); @@ -30,7 +31,7 @@ void bsturn_init(void){ void bsturn_update(void){ enum bs_e sp2C = 0; - func_80297970(ml_map_f(animctrl_getAnimTimer(_player_getAnimCtrlPtr()), 0.18f, 1.0f, D_8037D590, 0.0f)); + func_80297970(ml_map_f(animctrl_getAnimTimer(baanim_getAnimCtrlPtr()), 0.18f, 1.0f, D_8037D590, 0.0f)); D_8037D594++; if(!(D_8037D594 < 6)) @@ -38,17 +39,17 @@ void bsturn_update(void){ switch(D_8037D594){ case -1://L802B68DC - func_802927E0(func_80297A7C() - 10.0f, func_80297AB8()*0.88); + func_802927E0(func_80297A7C() - 10.0f, _get_horzVelocity()*0.88); break; case 0://L802B691C - func_802927E0(func_80297A7C(), func_80297AB8()); + func_802927E0(func_80297A7C(), _get_horzVelocity()); break; case 1://L802B6940 - func_802927E0(func_80297A7C() + 10.0f, func_80297AB8()*0.88); + func_802927E0(func_80297A7C() + 10.0f, _get_horzVelocity()*0.88); break; }//L802B6978 - if(animctrl_isStopped(_player_getAnimCtrlPtr())) + if(animctrl_isStopped(baanim_getAnimCtrlPtr())) sp2C = BS_4_WALK_FAST; if(button_held(BUTTON_Z)) diff --git a/src/core2/bs/twirl.c b/src/core2/bs/twirl.c index 06db2650..b8f72663 100644 --- a/src/core2/bs/twirl.c +++ b/src/core2/bs/twirl.c @@ -1,6 +1,7 @@ #include #include "functions.h" #include "variables.h" +#include "core2/ba/anim.h" /* .bss */ f32 D_8037D5A0; @@ -13,15 +14,15 @@ int bstwirl_hitboxActive(void){ } void bstwirl_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); animctrl_setIndex(aCtrl, ASSET_4F_ANIM_BSTWIRL); animctrl_setDuration(aCtrl, 0.9f); animctrl_setSubRange(aCtrl, 0.0f, 1.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bstwirl.c", 0x46); - func_80289F10(1); + animctrl_start(aCtrl, "bstwirl.c", 0x46); + baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL); yaw_setUpdateState(1); func_8029957C(3); func_8029797C(yaw_getIdeal()); @@ -37,7 +38,7 @@ void bstwirl_init(void){ void bstwirl_update(void){ enum bs_e sp1C = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); switch(D_8037D5A4){ case 0: diff --git a/src/core2/bs/walk.c b/src/core2/bs/walk.c index 6f38f5f3..90dd2009 100644 --- a/src/core2/bs/walk.c +++ b/src/core2/bs/walk.c @@ -2,39 +2,40 @@ #include "functions.h" #include "variables.h" #include "animation.h" +#include "core2/ba/anim.h" -void func_80289EA8(f32, f32); -f32 func_80297AB8(void); +void baanim_setDurationRange(f32, f32); +f32 _get_horzVelocity(void); void func_802927E0(f32, f32); f32 func_8029B2E8(void); int func_80297C04(f32); void func_8029AD28(f32, s32); f32 func_80297AF0(void); -void func_80289EF8(f32); +void baanim_scaleDuration(f32); f32 func_8029B30C(void); f32 ml_interpolate_f(f32, f32, f32); f32 func_80297A64(void); void func_80299594(s32, f32); // .data -f32 D_80364D70 = 30.0f;//creep_min -f32 D_80364D74 = 80.0f;//creep_max/slow_walk_min -f32 D_80364D78 = 150.0f;//slow_walk_max/walk_min -f32 D_80364D7C = 225.0f;//walk_max/walk_fast_min -f32 D_80364D80 = 500.0f;//walk_fast_max -f32 D_80364D84 = 30.0f; //mud_min -f32 D_80364D88 = 150.0f; //mud_max -f32 D_80364D8C = 125.0f; -f32 D_80364D90 = 1.3f; //walk_slow -f32 D_80364D94 = 0.6f; -f32 D_80364D98 = 1.8f; //creep -f32 D_80364D9C = 1.2f; -f32 D_80364DA0 = 0.92f; //walk -f32 D_80364DA4 = 0.58f; -f32 D_80364DA8 = 0.54f; //walk_fast -f32 D_80364DAC = 0.44f; -f32 D_80364DB0 = 1.2f; //mud -f32 D_80364DB4 = 0.9f; +f32 bsWalkMinCreepVelocity = 30.0f;//creep_min +f32 bsWalkCreepSlowWalkVelocityThreshold = 80.0f;//creep_max/slow_walk_min +f32 bsWalkSlowWalkWalkVelocityThreshold = 150.0f;//slow_walk_max/walk_min +f32 bsWalkWalkFastWalkVelocityThreshold = 225.0f;//walk_max/walk_fast_min +f32 bsWalkMaxFastWalkVelocity = 500.0f;//walk_fast_max +f32 bsWalkMinMudVelocity = 30.0f; //mud_min +f32 bsWalkMaxMudVelocity = 150.0f; //mud_max +f32 bsWalkSkidVelocity = 125.0f; +f32 bsWalkSlowestSlowWalkDuration = 1.3f; //walk_slow +f32 bsWalkFastestSlowWalkDuration = 0.6f; +f32 bsWalkSlowestCreepDuration = 1.8f; //creep +f32 bsWalkFastestCreepDuration = 1.2f; +f32 bsWalkSlowestWalkDuration = 0.92f; //walk +f32 bsWalkFastestWalkDuration = 0.58f; +f32 bsWalkSlowestFastWalkDuration = 0.54f; //walk_fast +f32 bsWalkFastestFastWalkDuration = 0.44f; +f32 bsWalkSlowestMudDuration = 1.2f; //mud +f32 bsWalkFastestMudDuration = 0.9f; // .bss (?) f32 D_8037D5B0; @@ -50,7 +51,7 @@ void func_802B6D00(void){ if(sp18 == 0){ func_80297970(0.0f); }else{//L802B6D48 - func_80297970(ml_interpolate_f(func_8029B2E8(), D_80364D84, D_80364D88)); + func_80297970(ml_interpolate_f(func_8029B2E8(), bsWalkMinMudVelocity, bsWalkMaxMudVelocity)); } } else{//L802B6D78 @@ -59,16 +60,16 @@ void func_802B6D00(void){ func_80297970(0.0f); break; case 1://802B6DAC - func_80297970(ml_interpolate_f(sp1C, D_80364D70, D_80364D74)); + func_80297970(ml_interpolate_f(sp1C, bsWalkMinCreepVelocity, bsWalkCreepSlowWalkVelocityThreshold)); break; case 2://802B6DD0 - func_80297970(ml_interpolate_f(sp1C, D_80364D74, D_80364D78)); + func_80297970(ml_interpolate_f(sp1C, bsWalkCreepSlowWalkVelocityThreshold, bsWalkSlowWalkWalkVelocityThreshold)); break; case 3://802B6DF4 - func_80297970(ml_interpolate_f(sp1C, D_80364D78, D_80364D7C)); + func_80297970(ml_interpolate_f(sp1C, bsWalkSlowWalkWalkVelocityThreshold, bsWalkWalkFastWalkVelocityThreshold)); break; case 4://802B6E18 - func_80297970(ml_interpolate_f(sp1C, D_80364D7C, D_80364D80)); + func_80297970(ml_interpolate_f(sp1C, bsWalkWalkFastWalkVelocityThreshold, bsWalkMaxFastWalkVelocity)); break; } }//L802B6E34 @@ -76,9 +77,9 @@ void func_802B6D00(void){ void func_802B6E44(void){ if(func_8028B394()){ - func_80289EF8(ml_map_f(func_80297AF0(), 0.0f, 1.0f, 0.5f, 0.9f)); + baanim_scaleDuration(ml_map_f(func_80297AF0(), 0.0f, 1.0f, 0.5f, 0.9f)); }else{ - func_80289EF8(1.0f); + baanim_scaleDuration(1.0f); } } @@ -97,7 +98,7 @@ int func_802B6EF4(void){ s32 func_802B6F20(s32 arg0){ if(button_pressed(BUTTON_B)){ - if( D_80364D7C < func_80297A64()){ + if( bsWalkWalkFastWalkVelocityThreshold < func_80297A64()){ if(can_roll()) arg0 = BS_ROLL; }else{//L802B6F74 @@ -109,7 +110,7 @@ s32 func_802B6F20(s32 arg0){ } f32 func_802B6F9C(void){ - return D_80364D80; + return bsWalkMaxFastWalkVelocity; } void func_802B6FA8(void){ @@ -117,7 +118,7 @@ void func_802B6FA8(void){ } void bswalk_creep_init(void){ - AnimCtrl * s0 = _player_getAnimCtrlPtr(); + AnimCtrl * s0 = baanim_getAnimCtrlPtr(); f32 sp20; if(bs_getPrevState() == BS_2_WALK_SLOW){ @@ -128,12 +129,12 @@ void bswalk_creep_init(void){ animctrl_reset(s0); animctrl_setIndex(s0, ASSET_2_ANIM_BSWALK_CREEP); animctrl_setDuration(s0, 0.43f); - func_8028774C(s0, sp20); + animctrl_setStart(s0, sp20); animctrl_setPlaybackType(s0, ANIMCTRL_LOOP); - func_802875AC(s0, "bswalk.c", 0xe4); - func_8029C7F4(2,1,1,2); - func_80289EA8(0.3f, 1.5f); - func_80289EC8(D_80364D70, D_80364D74, D_80364D98, D_80364D9C); + animctrl_start(s0, "bswalk.c", 0xe4); + func_8029C7F4(BAANIM_UPDATE_2_SCALE_HORZ,1,1,2); + baanim_setDurationRange(0.3f, 1.5f); + baanim_setVelocityMapRanges(bsWalkMinCreepVelocity, bsWalkCreepSlowWalkVelocityThreshold, bsWalkSlowestCreepDuration, bsWalkFastestCreepDuration); } void bswalk_creep_update(void){ @@ -190,7 +191,7 @@ void bswalk_creep_update(void){ } void bswalk_slow_init(void){ - AnimCtrl * s0 = _player_getAnimCtrlPtr(); + AnimCtrl * s0 = baanim_getAnimCtrlPtr(); f32 sp20; if(bs_getPrevState() == 3){ @@ -201,12 +202,12 @@ void bswalk_slow_init(void){ animctrl_reset(s0); animctrl_setIndex(s0, ASSET_3_ANIM_BSWALK); animctrl_setDuration(s0, 0.43f); - func_8028774C(s0, sp20); + animctrl_setStart(s0, sp20); animctrl_setPlaybackType(s0, ANIMCTRL_LOOP); - func_802875AC(s0, "bswalk.c", 0x168); - func_8029C7F4(2,1,1,2); - func_80289EA8(0.3f, 1.5f); - func_80289EC8(D_80364D74, D_80364D78, D_80364D90, D_80364D94); + animctrl_start(s0, "bswalk.c", 0x168); + func_8029C7F4(BAANIM_UPDATE_2_SCALE_HORZ,1,1,2); + baanim_setDurationRange(0.3f, 1.5f); + baanim_setVelocityMapRanges(bsWalkCreepSlowWalkVelocityThreshold, bsWalkSlowWalkWalkVelocityThreshold, bsWalkSlowestSlowWalkDuration, bsWalkFastestSlowWalkDuration); } void bswalk_slow_upate(void){ @@ -263,7 +264,7 @@ void bswalk_slow_upate(void){ } void bswalk_init(void){ - AnimCtrl * s0 = _player_getAnimCtrlPtr(); + AnimCtrl * s0 = baanim_getAnimCtrlPtr(); f32 sp20 = 0.0f; switch(bs_getPrevState()){ @@ -279,12 +280,12 @@ void bswalk_init(void){ animctrl_setIndex(s0, ASSET_C_ANIM_BSWALK_RUN); animctrl_setDuration(s0, 0.66f); animctrl_setTransitionDuration(s0, 0.14f); - func_8028774C(s0, sp20); + animctrl_setStart(s0, sp20); animctrl_setPlaybackType(s0, ANIMCTRL_LOOP); - func_802875AC(s0, "bswalk.c", 0x1ed); - func_8029C7F4(2,1,1,2); - func_80289EA8(0.3f, 1.5f); - func_80289EC8(D_80364D78, D_80364D7C, D_80364DA0, D_80364DA4); + animctrl_start(s0, "bswalk.c", 0x1ed); + func_8029C7F4(BAANIM_UPDATE_2_SCALE_HORZ,1,1,2); + baanim_setDurationRange(0.3f, 1.5f); + baanim_setVelocityMapRanges(bsWalkSlowWalkWalkVelocityThreshold, bsWalkWalkFastWalkVelocityThreshold, bsWalkSlowestWalkDuration, bsWalkFastestWalkDuration); func_802B6EB0(0.3f); } @@ -299,7 +300,7 @@ void bswalk_update(void){ case 0: case 1: case 2: - if(func_80297C04(D_80364D78) && func_802B6EF4()) + if(func_80297C04(bsWalkSlowWalkWalkVelocityThreshold) && func_802B6EF4()) s0 = BS_2_WALK_SLOW; break; case 4: @@ -309,7 +310,7 @@ void bswalk_update(void){ if(func_8028B128()) s0 = BS_WALK_MUD; - if(func_8028B4C4() && D_80364D8C < func_80297AB8()){ + if(func_8028B4C4() && bsWalkSkidVelocity < _get_horzVelocity()){ s0 = BS_SKID; } @@ -339,14 +340,14 @@ void bswalk_update(void){ } void bswalk_fast_init(void){ - AnimCtrl * s0 = _player_getAnimCtrlPtr(); + AnimCtrl * s0 = baanim_getAnimCtrlPtr(); f32 sp28 = 0.0f; int sp24 = 1; switch(bs_getPrevState()){ case 1: case 2://L802B780C - if(func_80297AB8() < 200.0f){ + if(_get_horzVelocity() < 200.0f){ func_802927E0(0.0f, 0.0f); } break; @@ -363,12 +364,12 @@ void bswalk_fast_init(void){ animctrl_setIndex(s0, ASSET_C_ANIM_BSWALK_RUN); animctrl_setDuration(s0, 0.66f); animctrl_setTransitionDuration(s0, 0.1f); - func_8028774C(s0, sp28); + animctrl_setStart(s0, sp28); animctrl_setPlaybackType(s0, ANIMCTRL_LOOP); - func_802875AC(s0, "bswalk.c", 0x27d); - func_8029C7F4(2,1,1,2); - func_80289EA8(0.3f, 1.5f); - func_80289EC8(D_80364D7C, D_80364D80, D_80364DA8, D_80364DAC); + animctrl_start(s0, "bswalk.c", 0x27d); + func_8029C7F4(BAANIM_UPDATE_2_SCALE_HORZ,1,1,2); + baanim_setDurationRange(0.3f, 1.5f); + baanim_setVelocityMapRanges(bsWalkWalkFastWalkVelocityThreshold, bsWalkMaxFastWalkVelocity, bsWalkSlowestFastWalkDuration, bsWalkFastestFastWalkDuration); pitch_setAngVel(1000.0f, 12.0f); roll_setAngularVelocity(1000.0f, 12.0f); func_802B6EB0(0.3f); @@ -394,7 +395,7 @@ void bswalk_fast_update(void){ break; case 1: case 2://L802B7A28 - if(func_80297C04(D_80364D78)) + if(func_80297C04(bsWalkSlowWalkWalkVelocityThreshold)) s0 = BS_2_WALK_SLOW; if(func_80294F78()) @@ -402,7 +403,7 @@ void bswalk_fast_update(void){ break; case 3://L802B7A60 - if(func_80297C04(D_80364D7C) && func_802B6EF4()) + if(func_80297C04(bsWalkWalkFastWalkVelocityThreshold) && func_802B6EF4()) s0 = BS_WALK; if(func_80294F78()) @@ -412,7 +413,7 @@ void bswalk_fast_update(void){ if(func_8028B128()) s0 = BS_WALK_MUD; - if(func_8028B4C4() && D_80364D8C < func_80297AB8()){ + if(func_8028B4C4() && bsWalkSkidVelocity < _get_horzVelocity()){ s0 = BS_SKID; } @@ -444,10 +445,10 @@ void bswalk_fast_end(void){ } void bswalk_mud_init(void){ - func_8028A010(ASSET_B_ANIM_BSWALK_MUD, 0.43f); - func_8029C7F4(2,1,1,2); - func_80289EA8(0.3f, 1.5f); - func_80289EC8(D_80364D84, D_80364D88, D_80364DB0, D_80364DB4); + baanim_playForDuration_loopSmooth(ASSET_B_ANIM_BSWALK_MUD, 0.43f); + func_8029C7F4(BAANIM_UPDATE_2_SCALE_HORZ,1,1,2); + baanim_setDurationRange(0.3f, 1.5f); + baanim_setVelocityMapRanges(bsWalkMinMudVelocity, bsWalkMaxMudVelocity, bsWalkSlowestMudDuration, bsWalkFastestMudDuration); } void bswalk_mud_update(void){ @@ -489,10 +490,10 @@ void bswalk_mud_update(void){ void bswalk_drone_init(void){ bsdrone_init(); - if(func_80289F94(3)){ - func_80289F10(2); - func_80289EA8(0.3f, 1.5f); - func_80289EC8(D_80364D74, D_80364D78, D_80364D90, D_80364D94); + if(baanim_isAnimID(3)){ + baanim_setUpdateType(BAANIM_UPDATE_2_SCALE_HORZ); + baanim_setDurationRange(0.3f, 1.5f); + baanim_setVelocityMapRanges(bsWalkCreepSlowWalkVelocityThreshold, bsWalkSlowWalkWalkVelocityThreshold, bsWalkSlowestSlowWalkDuration, bsWalkFastestSlowWalkDuration); } } diff --git a/src/core2/bs/walrus.c b/src/core2/bs/walrus.c index e19d7972..b4996fce 100644 --- a/src/core2/bs/walrus.c +++ b/src/core2/bs/walrus.c @@ -1,7 +1,7 @@ #include #include "functions.h" #include "variables.h" - +#include "core2/ba/anim.h" extern void func_8029AD68(f32, s32); extern f32 ml_dotProduct_vec3f(f32[3], f32[3]); @@ -140,7 +140,7 @@ int bswalrus_inSet(enum bs_e state){ } void bswalrus_idle_init(void){ - func_8028A010(ASSET_11F_ANIM_BSWALRUS_IDLE, 4.0f); + baanim_playForDuration_loopSmooth(ASSET_11F_ANIM_BSWALRUS_IDLE, 4.0f); func_8029C7F4(1,1,1,2); func_80297970(0.0f); pitch_setAngVel(1000.0f, 12.0f); @@ -178,9 +178,9 @@ void bswalrus_idle_end(void){ } void bswalrus_walk_init(void){ - func_8028A010(ASSET_120_ANIM_BSWALRUS_WALK, 0.8f); - func_8029C7F4(2,1,1,2); - func_80289EC8(D_80364DC0, D_80364DC4, D_80364DC8, D_80364DCC); + baanim_playForDuration_loopSmooth(ASSET_120_ANIM_BSWALRUS_WALK, 0.8f); + func_8029C7F4(BAANIM_UPDATE_2_SCALE_HORZ,1,1,2); + baanim_setVelocityMapRanges(D_80364DC0, D_80364DC4, D_80364DC8, D_80364DCC); func_802900B4(); func_802B8110(); } @@ -210,16 +210,16 @@ void bswalrus_walk_end(void){ } void bswalrus_jump_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, FALSE); animctrl_setIndex(aCtrl, ASSET_121_ANIM_BSWALRUS_JUMP); animctrl_setSubRange(aCtrl, 0.0f, 0.514f); animctrl_setDuration(aCtrl, 1.0f); - func_8028774C(aCtrl, 0.1); + animctrl_setStart(aCtrl, 0.1); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bswalrus.c", 0x1f8); + animctrl_start(aCtrl, "bswalrus.c", 0x1f8); func_8029C7F4(1,1,3,6); if(func_8029B2E8() != 0.0f) yaw_setIdeal(func_8029B33C()); @@ -235,7 +235,7 @@ void bswalrus_jump_init(void){ void bswalrus_jump_update(void){ enum bs_e next_state = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp1C[3]; func_802B7E6C(); @@ -302,13 +302,13 @@ void bswalrus_jump_end(void){ } void bswalrus_fall_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_121_ANIM_BSWALRUS_JUMP); - func_8028774C(aCtrl, 0.662f); + animctrl_setStart(aCtrl, 0.662f); animctrl_setDuration(aCtrl, 0.7f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED); - func_802875AC(aCtrl, "bswalrus.c", 0x284); + animctrl_start(aCtrl, "bswalrus.c", 0x284); func_8029C7F4(1,1,3,6); func_802B8110(); D_8037D5C8 = 0; @@ -316,7 +316,7 @@ void bswalrus_fall_init(void){ void bswalrus_fall_update(void){ enum bs_e next_state = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp1C[3]; func_80299628(0); @@ -370,7 +370,7 @@ static void __bswalrus_recoil_init(s32 damage){ f32 sp24[3]; func_80298760(func_80296560()); - func_8028A274(0x19c, 1.0f); + baanim_playForDuration_onceSmooth(0x19c, 1.0f); if(damage == 1) func_8030E58C(SFX_38_BANJO_AYE_1, 1.8f); else @@ -435,7 +435,7 @@ void bswalrus_bounce_end(void){ } void bswalrus_die_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp38; f32 sp2C[3]; f32 sp20[3]; @@ -447,7 +447,7 @@ void bswalrus_die_init(void){ animctrl_setSubRange(aCtrl, 0.0f, 0.4454f); animctrl_setDuration(aCtrl, 2.2f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bswalrus.c", 0x366); + animctrl_start(aCtrl, "bswalrus.c", 0x366); func_8030E58C(SFX_36_BANJO_DOH, 1.8f); _player_getPosition(sp2C); func_80294980(sp20); @@ -482,7 +482,7 @@ void bswalrus_die_update(void){ switch(D_8037D5C8){ case 0://L802B8F54 if(func_8028B2E8()){ - func_8028A37C(1.0f); + baanim_setEnd(1.0f); FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 18000); FUNC_8030E624(SFX_39_BANJO_AYE_2, 1.8f, 18000); player_setYVelocity(400.0f); @@ -529,7 +529,7 @@ void bswalrus_drone_end(void){ } void func_802B90D0(void){ - func_8028A010(ASSET_19E_ANIM_BSWALRUS_SLED, 0.8f); + baanim_playForDuration_loopSmooth(ASSET_19E_ANIM_BSWALRUS_SLED, 0.8f); func_8029C7F4(1,1,3,2); func_80297970(0.0f); func_8029C674(); @@ -554,9 +554,9 @@ void func_802B917C(void){ } void bswalrus_sled_init(void){ - func_8028A010(ASSET_19E_ANIM_BSWALRUS_SLED, 0.8f); - func_8029C7F4(2,1,1,2); - func_80289EC8(D_80364DC0, D_80364DC4, D_80364DE0, D_80364DE4); + baanim_playForDuration_loopSmooth(ASSET_19E_ANIM_BSWALRUS_SLED, 0.8f); + func_8029C7F4(BAANIM_UPDATE_2_SCALE_HORZ,1,1,2); + baanim_setVelocityMapRanges(D_80364DC0, D_80364DC4, D_80364DE0, D_80364DE4); func_802900B4(); func_802B813C(); } @@ -565,7 +565,7 @@ void bswalrus_sled_update(void){ enum bs_e next_state = 0; f32 sp20[3]; - if(50.0f < func_80297AB8()){ + if(50.0f < _get_horzVelocity()){ if(func_8023DB4C(1)){ baModel_80292554(&sp20); }else{ @@ -592,15 +592,15 @@ void bswalrus_sled_end(void){ } void bswalrus_sled_jump_init(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, FALSE); animctrl_setIndex(aCtrl, ASSET_19F_ANIM_BSWALRUS_SLED_JUMP); animctrl_setSubRange(aCtrl, 0.0f, 0.4285f); animctrl_setDuration(aCtrl, 1.0f); - func_8028774C(aCtrl, 0.14f); + animctrl_setStart(aCtrl, 0.14f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); - func_802875AC(aCtrl, "bswalrus.c", 0x477); + animctrl_start(aCtrl, "bswalrus.c", 0x477); func_8029C7F4(1,1,3,6); if(func_8029B2E8() != 0.0f) yaw_setIdeal(func_8029B33C()); @@ -616,7 +616,7 @@ void bswalrus_sled_jump_init(void){ void bswalrus_sled_jump_update(void){ enum bs_e next_state = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp1C[3]; func_802B7F28(); @@ -629,13 +629,13 @@ void bswalrus_sled_jump_update(void){ { case 0: if(animctrl_isStopped(aCtrl)){ - func_8028A3B8(0.5058f, 7.0f); + baanim_setEndAndDuration(0.5058f, 7.0f); D_8037D5C8 = 1; } break; case 1://L802B94F0 if(func_8028B254(0x82)){ - func_8028A3B8(1.0f, 1.0f); + baanim_setEndAndDuration(1.0f, 1.0f); D_8037D5C8 = 2; } break; @@ -662,13 +662,13 @@ void bswalrus_sled_jump_end(void){ } void func_802B95A0(void){ - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setIndex(aCtrl, ASSET_19F_ANIM_BSWALRUS_SLED_JUMP); animctrl_setSubRange(aCtrl, 0.0f, 0.5058f); animctrl_setDuration(aCtrl, 1.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED); - func_802875AC(aCtrl, "bswalrus.c", 0x4e2); + animctrl_start(aCtrl, "bswalrus.c", 0x4e2); func_8029C7F4(1,1,3,6); func_802B813C(); D_8037D5C8 = 0; @@ -676,7 +676,7 @@ void func_802B95A0(void){ void func_802B963C(void){ enum bs_e next_state = 0; - AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *aCtrl = baanim_getAnimCtrlPtr(); f32 sp1C[3]; func_80299628(0); @@ -686,7 +686,7 @@ void func_802B963C(void){ { case 0://L802B9694 if(func_8028B254(0x82)){ - func_8028A3B8(1.0f, 1.0f); + baanim_setEndAndDuration(1.0f, 1.0f); D_8037D5C8 = 1; } break; @@ -722,13 +722,13 @@ void func_802B976C(void){ func_802B8048(); } -void func_802B978C(void) { - func_8028A180(0x1A9, 3.2f); +void bswalrus_timeout_init(void) { + baanim_playForDuration_once(ASSET_1A9_ANIM_BSWALRUS_LOSS, 3.2f); func_8029C7F4(1, 1, 3, 7); func_80297970(0.0f); func_802914CC(0xD); func_802BF2C0(60.0f); - func_8025A58C(0, 0xFA0); + func_8025A58C(0, 4000); func_8025A70C(COMUSIC_3C_MINIGAME_LOSS); func_8024BD08(0); baMarker_collisionOff(); diff --git a/src/core2/bs/washy.c b/src/core2/bs/washy.c index edefb23e..ffa0bb47 100644 --- a/src/core2/bs/washy.c +++ b/src/core2/bs/washy.c @@ -7,7 +7,7 @@ u8 D_8037D5D0; /* .code */ void func_802B9980(s32 arg0){ - AnimCtrl *plyr_anim = _player_getAnimCtrlPtr(); + AnimCtrl *plyr_anim = baanim_getAnimCtrlPtr(); switch (arg0) { @@ -44,7 +44,7 @@ void func_802B9AAC(void){ } void func_802B9ACC(void){ - func_8028A180(ASSET_281_ANIM_WISHYWASHY_DOOOH, 40.0f); + baanim_playForDuration_once(ASSET_281_ANIM_WISHYWASHY_DOOOH, 40.0f); func_8029C7F4(1, 1, 3, 2); func_802900B4(); func_802B9980(0); diff --git a/src/core2/ch/jigsawdance.c b/src/core2/ch/jigsawdance.c index eb3304dd..a802000b 100644 --- a/src/core2/ch/jigsawdance.c +++ b/src/core2/ch/jigsawdance.c @@ -2,7 +2,7 @@ #include "functions.h" #include "variables.h" -extern f32 func_8028EBA4(); +extern f32 player_getYaw(); AnimCtrl *player_getAnimCtrlPtr(void); Actor *__chJigsawDance_draw(ActorMarker *this, Gfx **gdl, Mtx **mptr, Vtx **arg3); @@ -47,29 +47,29 @@ void __chJigsawDance_update(Actor * this){ break; case 2: player_getPosition(this->position); - this->yaw = func_8028EBA4(); + this->yaw = player_getYaw(); plyrMvmt = player_getAnimCtrlPtr(); animctrl_setSmoothTransition(this->animctrl, 0); animctrl_setIndex(this->animctrl, animctrl_getIndex(plyrMvmt)); - func_8028774C(this->animctrl,animctrl_getAnimTimer(plyrMvmt)); + animctrl_setStart(this->animctrl,animctrl_getAnimTimer(plyrMvmt)); animctrl_setDuration(this->animctrl, 1000.0f); - func_802875AC(this->animctrl, "chjigsawdance.c", 0x59); + animctrl_start(this->animctrl, "chjigsawdance.c", 0x59); break; case 3: plyrMvmt = player_getAnimCtrlPtr(); animctrl_setSmoothTransition(this->animctrl, 0); - func_8028774C(this->animctrl,animctrl_getAnimTimer(plyrMvmt)); + animctrl_setStart(this->animctrl,animctrl_getAnimTimer(plyrMvmt)); animctrl_setDuration(this->animctrl, 1000.0f); - func_802875AC(this->animctrl, "chjigsawdance.c", 0x62); + animctrl_start(this->animctrl, "chjigsawdance.c", 0x62); break; case 4: player_getPosition(this->position); - this->yaw = func_8028EBA4(); + this->yaw = player_getYaw(); plyrMvmt = player_getAnimCtrlPtr(); animctrl_setSmoothTransition(this->animctrl, 0); - func_8028774C(this->animctrl,animctrl_getAnimTimer(plyrMvmt)); + animctrl_setStart(this->animctrl,animctrl_getAnimTimer(plyrMvmt)); animctrl_setDuration(this->animctrl, 1000.0f); - func_802875AC(this->animctrl, "chjigsawdance.c", 0x6e); + animctrl_start(this->animctrl, "chjigsawdance.c", 0x6e); break; case 5: this->marker->propPtr->unk8_4 = 0; @@ -93,11 +93,11 @@ void chJigsawDance_setState(Actor * this, u32 arg1){ break; case 4: player_getPosition(this->position); - this->yaw = func_8028EBA4(); + this->yaw = player_getYaw(); animctrl_setSmoothTransition(this->animctrl, 0); - func_8028774C(this->animctrl, animctrl_getAnimTimer(player_getAnimCtrlPtr())); + animctrl_setStart(this->animctrl, animctrl_getAnimTimer(player_getAnimCtrlPtr())); animctrl_setDuration(this->animctrl, 1000.0f); - func_802875AC(this->animctrl, "chjigsawdance.c", 0x97); + animctrl_start(this->animctrl, "chjigsawdance.c", 0x97); break; case 5: func_80328A84(this, 5); diff --git a/src/core2/ch/trainers.c b/src/core2/ch/trainers.c index 7482223e..72b69c7b 100644 --- a/src/core2/ch/trainers.c +++ b/src/core2/ch/trainers.c @@ -113,15 +113,15 @@ void chtrainers_update(Actor *this){ }//L802CA6F8 } -bool chtrainers_802CA708(Actor *this){ +bool chtrainers_canUse(Actor *this){ return this->unk10_12 && ability_isUnlocked(ABILITY_11_TURBO_TALON); } -f32 chtrainers_802CA748(Actor *this){ +f32 chtrainers_getDuration(Actor *this){ return this->velocity[0]; } -void chtrainers_802CA750(Actor *this){ +void chtrainers_pickup(Actor *this){ func_80328A84(this, 1); this->velocity[2] = 1.0f; this->unk10_12 = 0; diff --git a/src/core2/code_12360.c b/src/core2/code_12360.c index a30284ee..e39e3a48 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 ml_mapRange_f(f32, f32, f32, f32, f32); +extern f32 ml_mapAbsRange_f(f32, f32, f32, f32, f32); extern void func_8025901C(f32, f32 *, f32 *, f32); extern f32 func_8029B2D0(void); @@ -27,7 +27,7 @@ void func_8029932C(f32 arg0){ void func_80299338(void){ f32 stickX = func_8029B2D0(); f32 d_yaw_deg; - d_yaw_deg =(0.03 < (f64)mlAbsF(stickX)) ? ml_mapRange_f(stickX, 0.0f, 1.0f, 1.0f, 6.0f) : 0.0f; + 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); } diff --git a/src/core2/code_13A00.c b/src/core2/code_13A00.c index 265d0557..e9334a8b 100644 --- a/src/core2/code_13A00.c +++ b/src/core2/code_13A00.c @@ -43,7 +43,7 @@ void func_8029AA3C(void){ else func_8029C304(2); - sp30 = ml_map_f(func_80297AB8(), 0.0f, 500.0f, 70.0f, 250.0f); + sp30 = ml_map_f(_get_horzVelocity(), 0.0f, 500.0f, 70.0f, 250.0f); func_8028E9C4(D_8037D194, sp34); sp34[1] = func_80294500(); pCtrl = func_802F4094(sp34, 8.0f); @@ -119,7 +119,7 @@ void func_8029ACD4(void){ } void func_8029AD28(f32 arg0, s32 arg1){ - AnimCtrl *plyr_animCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *plyr_animCtrl = baanim_getAnimCtrlPtr(); if(animctrl_isAt(plyr_animCtrl, arg0)){ func_8029AE74(arg1); } @@ -127,7 +127,7 @@ void func_8029AD28(f32 arg0, s32 arg1){ void func_8029AD68(f32 arg0, s32 arg1){ - AnimCtrl *plyr_animCtrl = _player_getAnimCtrlPtr(); + AnimCtrl *plyr_animCtrl = baanim_getAnimCtrlPtr(); if(animctrl_isAt(plyr_animCtrl, arg0)){ func_8029AEE4(arg1); } diff --git a/src/core2/code_13FC0.c b/src/core2/code_13FC0.c index 5a572459..6855a490 100644 --- a/src/core2/code_13FC0.c +++ b/src/core2/code_13FC0.c @@ -5,7 +5,7 @@ f32 func_8024DDD8(f32[3], f32); extern void func_8024E71C(s32, f32*); extern f32 ml_acosf(f32); -extern f32 func_8028EBA4(void); +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); diff --git a/src/core2/code_14420.c b/src/core2/code_14420.c index 7df2363a..6243a0e8 100644 --- a/src/core2/code_14420.c +++ b/src/core2/code_14420.c @@ -3,11 +3,12 @@ #include "variables.h" #include "core2/yaw.h" #include "core2/statetimer.h" +#include "core2/ba/anim.h" f32 func_8024DDD8(f32[3], f32); extern void func_8024E71C(s32, f32*); extern f32 ml_acosf(f32); -extern f32 func_8028EBA4(void); +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); @@ -133,7 +134,7 @@ Struct_core2_13FC0 D_80364810[14] = { {BS_73_UNKNOWN, ASSET_11F_ANIM_BSWALRUS_IDLE, 4.0f}, {BS_77_SWIM_LOCKED, 0, 0.0f}, {BS_78_DIVE_LOCKED, 0, 0.0f}, - {BS_73_UNKNOWN, ASSET_14A_ANIM_BANJO_LISTENING, 11.4f}, + {BS_73_UNKNOWN, ASSET_14A_ANIM_BSREST_LISTEN, 11.4f}, {BS_76_BFLY_LOCKED, 0, 0.0f}, {BS_79_BTROT_LOCKED, 0, 0.0f}, {BS_62_LONGLEG_LOCKED, 0, 0.0f}, @@ -166,7 +167,7 @@ Struct_core2_13FC0 D_803648F0[14] = { {BS_75_UNKNOWN, ASSET_11F_ANIM_BSWALRUS_IDLE, 4.0f}, {BS_77_SWIM_LOCKED, 0, 0.0f}, {BS_78_DIVE_LOCKED, 0, 0.0f}, - {BS_75_UNKNOWN, ASSET_14A_ANIM_BANJO_LISTENING, 11.4f}, + {BS_75_UNKNOWN, ASSET_14A_ANIM_BSREST_LISTEN, 11.4f}, {BS_76_BFLY_LOCKED, 0, 0.0f}, {BS_79_BTROT_LOCKED, 0, 0.0f}, {BS_62_LONGLEG_LOCKED, 0, 0.0f}, @@ -622,7 +623,7 @@ void func_8029C22C(void) { return; D_80364620 = D_80364620 ? FALSE : TRUE; - if (func_80297AB8() > 100.0f) { + if (_get_horzVelocity() > 100.0f) { if (D_80364620) { func_80292864(func_80297A7C() - 20.0f, 20.0f); } @@ -659,8 +660,8 @@ void func_8029C3E8(f32 arg0, f32 arg1) { f32 sp28; _player_getPosition(sp30); - sp28 = ml_map_f(func_80297AB8(), 0.0f, 1000.0f, arg0, arg1); - sp2C = func_8028EBA4(); + sp28 = ml_map_f(_get_horzVelocity(), 0.0f, 1000.0f, arg0, arg1); + sp2C = player_getYaw(); func_802589E4(sp3C, sp2C, sp28); sp3C[1] = 0.0f; sp30[0] += sp3C[0];\ @@ -763,8 +764,8 @@ enum bs_e func_8029C780(void){ return BS_5_JUMP; } -void func_8029C7F4(s32 arg0, enum yaw_state_e yaw_state, s32 arg2, s32 arg3){ - func_80289F10(arg0); +void func_8029C7F4(enum baanim_update_type_e arg0, enum yaw_state_e yaw_state, s32 arg2, s32 arg3){ + baanim_setUpdateType(arg0); yaw_setUpdateState(yaw_state); func_8029957C(arg2); func_802978DC(arg3); diff --git a/src/core2/code_356B0.c b/src/core2/code_356B0.c index 716fbe1e..cb7a1842 100644 --- a/src/core2/code_356B0.c +++ b/src/core2/code_356B0.c @@ -9,7 +9,7 @@ extern void func_8024C510(f32); extern f32 func_80258708(f32[3], f32[3]); extern f32 func_80259198(f32, f32); extern f32 func_8028E82C(void); -extern f32 func_8028EBA4(void); +extern f32 player_getYaw(void); extern f32 func_8028EF88(void); extern int func_80320DB0(f32[3], f32, f32[3], u32); extern f32 ml_dotProduct_vec3f(f32[3], f32[3]); @@ -187,7 +187,7 @@ void func_802BCA58(void) { player_getPosition(sp28); ml_vec3f_diff_copy(sp34, sp28, D_8037D958); - sp4C = func_8028EBA4(); + sp4C = player_getYaw(); sp48 = ml_map_f(mlAbsF((f32) (mlNormalizeAngle(D_8037D96C - sp4C) - 180.0)), 0.0f, 180.0f, D_8037D97C, D_8037D980); func_80256E24(D_8037D9A8, 0.0f, sp4C, 0.0f, 0.0f, ml_map_f(gu_sqrtf(sp34[0]*sp34[0] + sp34[2]*sp34[2]), 300.0f, 450.0f, 0.0f, sp48)); ml_vec3f_diff_copy(sp34, D_8037D9A8, D_8037D9B8); @@ -707,7 +707,7 @@ void func_802BDB30(f32 arg0, f32 *arg1, f32 *arg2, f32 arg3, f32 arg4, f32 arg5) sp30 = time_getDelta(); sp38 = mlDiffDegF(arg0, *arg1); if (mlAbsF(sp38) < arg5) { - *arg2 = ml_mapRange_f(sp38, 0.0f, arg5, 10.0f, arg4); + *arg2 = ml_mapAbsRange_f(sp38, 0.0f, arg5, 10.0f, arg4); } else { phi_f0 = arg3 * sp30; if (sp38 < 0.0f) { diff --git a/src/core2/code_38AD0.c b/src/core2/code_38AD0.c index c51ce0a9..71bf4eaf 100644 --- a/src/core2/code_38AD0.c +++ b/src/core2/code_38AD0.c @@ -3,8 +3,8 @@ #include "variables.h" extern f32 func_80259198(f32, f32); -extern f32 func_8028EBA4(void); -extern f32 func_8028EBE4(void); +extern f32 player_getYaw(void); +extern f32 player_getPitch(void); extern void func_802BD870(f32, f32, f32, f32); void func_802BFE50(f32 arg0, f32 arg1, f32 arg2); @@ -46,7 +46,7 @@ void func_802BFAF0(void) { func_802BD384(sp6C); func_802BD4C0(sp84); sp84[1] += 40.0f; - sp34 = func_8028EBE4(); + sp34 = player_getPitch(); if (sp34 > 180.0f) { sp3C = ml_map_f(sp34, 300.0f, 360.0f, 900.0f, D_8037DB18); sp84[1] += ml_map_f(sp34, 300.0f, 360.0f, -140.0f, 70.0f); @@ -64,7 +64,7 @@ void func_802BFAF0(void) { sp34 = ml_min_f(100.0f, (f32) ((f64) (360.0f - sp34) * 1.4)); } sp48[0] = mlDiffDegF(mlNormalizeAngle(sp34), sp54[0]); - sp48[1] = mlDiffDegF(mlNormalizeAngle(func_8028EBA4() + 180.0f), sp54[1]); + sp48[1] = mlDiffDegF(mlNormalizeAngle(player_getYaw() + 180.0f), sp54[1]); sp48[2] = 0.0f; sp48[0] = (f32) ((f64) sp48[0] * ((f64) sp38 * 0.8)); sp48[1] = sp48[1] * (sp38 * D_8037DB1C); diff --git a/src/core2/code_396B0.c b/src/core2/code_396B0.c index bb9169e4..7fc1ec04 100644 --- a/src/core2/code_396B0.c +++ b/src/core2/code_396B0.c @@ -3,7 +3,7 @@ #include "variables.h" -extern f32 func_8028EBA4(void); +extern f32 player_getYaw(void); extern f32 func_802BD51C(); extern void func_802BDB30(f32, f32*, f32*, f32, f32, f32); extern void func_802C2264(f32); @@ -85,6 +85,6 @@ void func_802C07A0(void) { } void func_802C095C(void){ - D_8037DBA4 = mlNormalizeAngle(func_8028EBA4() + 180.0); + D_8037DBA4 = mlNormalizeAngle(player_getYaw() + 180.0); } diff --git a/src/core2/code_39D0.c b/src/core2/code_39D0.c index 4ad80a64..765db98f 100644 --- a/src/core2/code_39D0.c +++ b/src/core2/code_39D0.c @@ -7,7 +7,7 @@ extern f32 func_8024DDD8(f32[3], f32); extern int func_80259254(f32 vec[3], f32 x, f32 z, f32 val); -extern f32 func_8028EBA4(void); +extern f32 player_getYaw(void); /* .bss */ u8 D_8037BF60; @@ -163,7 +163,7 @@ bool func_8028AED4(f32 arg0[3], f32 arg1) { _player_getPosition(sp2C); func_80257F18(arg0, sp2C, &sp28); sp26 = (u16) (sp28 * 182.044444); - sp24 = (u16) (func_8028EBA4() * 182.044444); + sp24 = (u16) (player_getYaw() * 182.044444); sp26 = (u16)((sp26 - sp24)); temp_v1 = 0x8000 - sp26; phi_a0 = (temp_v1 >= 0) ? temp_v1 : -temp_v1; @@ -203,11 +203,11 @@ int player_shouldSlideTrot(void){ } bool func_8028B254(s32 arg0) { - return (func_8028B2E8() || (func_80297AAC() < 0.0f && (player_getYPosition() - func_80294438()) < (f32) arg0)); + return (func_8028B2E8() || (_get_vertVelocity() < 0.0f && (player_getYPosition() - func_80294438()) < (f32) arg0)); } int func_8028B2E8(void){ - return D_8037BF60 && func_80297AAC() < 0.0f; + return D_8037BF60 && _get_vertVelocity() < 0.0f; } int player_isSliding(void){ @@ -296,7 +296,7 @@ void func_8028B59C(void) { if (map_get() == MAP_6_TTC_NIPPERS_SHELL) { D_8037BF61 = FALSE; } - if (!sp24 && D_8037BF61 && (func_80297AAC() < -40.0)) { + if (!sp24 && D_8037BF61 && (_get_vertVelocity() < -40.0)) { func_8029C0D0(); func_8030E58C(0xF, 0.7f); } diff --git a/src/core2/code_39EF0.c b/src/core2/code_39EF0.c index 9c8abde8..6acf5100 100644 --- a/src/core2/code_39EF0.c +++ b/src/core2/code_39EF0.c @@ -5,7 +5,7 @@ extern f32 func_802453DC(struct56s *, f32, f32[3], s32); extern f32 func_80259198(f32, f32); extern f32 func_802BD51C(void); -extern f32 func_8028EBA4(void); +extern f32 player_getYaw(void); extern void func_802BE244(f32, f32); extern void func_802BE230(f32, f32); extern void func_802BD82C(f32, f32); @@ -306,7 +306,7 @@ void func_802C18F8(void) { sp4C = gu_sqrtf((sp50[0] * sp50[0]) + (sp50[2] * sp50[2])); sp4C += func_80259198((sp3C - sp4C) * temp_f20 * 2, temp_f20 * 120.0f); func_8025801C(sp50, &sp48); - sp40 = func_80259198(mlDiffDegF(mlNormalizeAngle(180.0f + func_8028EBA4()), sp48) * (temp_f20 * 1), temp_f20 * 50.0f); + sp40 = func_80259198(mlDiffDegF(mlNormalizeAngle(180.0f + player_getYaw()), sp48) * (temp_f20 * 1), temp_f20 * 50.0f); sp48 = mlNormalizeAngle(sp48 + sp40); func_80256E24(sp68, 0.0f, sp48, 0.0f, 0.0f, sp4C); ml_vec3f_add(sp80, sp8C, sp68); @@ -352,7 +352,7 @@ void func_802C1B2C(void) { sp3C = gu_sqrtf(sp40[0]*sp40[0] + sp40[2]*sp40[2]); sp3C += func_80259198(sp30*(sp34 - sp3C)*2 , sp30 * 800.0f); func_8025727C(sp7C[0], sp7C[1], sp7C[2], sp64[0], sp64[1], sp64[2], &sp4C[0], &sp4C[1]); - sp40[1] = sp30 * 0.77 * mlDiffDegF(mlNormalizeAngle(func_8028EBA4() + 180.0f), sp4C[1]); + sp40[1] = sp30 * 0.77 * mlDiffDegF(mlNormalizeAngle(player_getYaw() + 180.0f), sp4C[1]); sp40[1] = func_80259198(sp40[1], sp30 * 300.0f); sp4C[1] = mlNormalizeAngle(sp4C[1] + sp40[1]); func_80256E24(&sp58, 0.0f, sp4C[1], 0.0f, 0.0f, sp3C); diff --git a/src/core2/code_51950.c b/src/core2/code_51950.c index 62abb7b2..883cc315 100644 --- a/src/core2/code_51950.c +++ b/src/core2/code_51950.c @@ -2,7 +2,7 @@ #include "functions.h" #include "variables.h" -extern f32 func_8028EBA4(void); +extern f32 player_getYaw(void); void func_802D88E0(Actor *this); @@ -79,7 +79,7 @@ void func_802D8B20(enum actor_e actor_id){ f32 temp2; player_getPosition(plyr_pos); - temp2 = func_8028EBA4(); + temp2 = player_getYaw(); temp_v0 = (randf() > 0.5) ? 0x1E : -0x1E; feather = func_8032813C(actor_id, plyr_pos, (s32) (temp2 + temp_v0)); func_8032AA58(feather, 0.45f); diff --git a/src/core2/code_59780.c b/src/core2/code_59780.c index 26e4215c..a9d3601a 100644 --- a/src/core2/code_59780.c +++ b/src/core2/code_59780.c @@ -141,7 +141,7 @@ void func_802E08F0(Actor *this) { this->marker->collidable = FALSE; animctrl_setDuration(this->animctrl, this->unk5C); - animctrl_setPlaybackType(this->animctrl, 1); + animctrl_setPlaybackType(this->animctrl, ANIMCTRL_ONCE); if (actor_animationIsAt(this, 0.99f) != 0) { marker_despawn(this->marker); } diff --git a/src/core2/code_6B30.c b/src/core2/code_6B30.c index 7bcac737..d70fa9e2 100644 --- a/src/core2/code_6B30.c +++ b/src/core2/code_6B30.c @@ -75,10 +75,10 @@ enum hitbox_e func_8028DB14(ActorMarker *arg0){ break; case BS_5_JUMP://8028DCD8 case BS_3D_FALL_TUMBLING: - if(func_80297AAC() < 0.0f && !func_8028B2E8()) + if(_get_vertVelocity() < 0.0f && !func_8028B2E8()) return HITBOX_A_FAST_FALLING; case BS_2F_FALL://8028DD10 - if(func_80297AAC() < -1400.0f && !func_8028B2E8()) + if(_get_vertVelocity() < -1400.0f && !func_8028B2E8()) return HITBOX_A_FAST_FALLING; default://8028DD4C return HITBOX_0_NONE; @@ -141,7 +141,7 @@ void func_8028DEEC(enum actor_e actor_id, Actor *actor){ f32 sp1C[3]; nodeprop_getPosition(func_80304C38(actor_id, actor), sp1C); - func_80294AC0(sp1C); + set_throw_target_position(sp1C); } void func_8028DF20(enum actor_e actor_id){ diff --git a/src/core2/code_7060.c b/src/core2/code_7060.c index 57049021..345730f3 100644 --- a/src/core2/code_7060.c +++ b/src/core2/code_7060.c @@ -256,7 +256,7 @@ enum hitbox_e player_getActiveHitbox(ActorMarker *marker){ } AnimCtrl *player_getAnimCtrlPtr(void){ - return _player_getAnimCtrlPtr(); + return baanim_getAnimCtrlPtr(); } ActorMarker *player_getMarker(void){ @@ -403,8 +403,7 @@ void player_getPosition_s32(s32 arg0[3]){ arg0[2] = (s32)plyr_pos[2]; } -//player_getYaw -f32 func_8028EBA4(void){ +f32 player_getYaw(void){ return yaw_get(); } @@ -412,7 +411,7 @@ f32 func_8028EBC4(void){ return func_802B6F9C(); } -f32 func_8028EBE4(void){ +f32 player_getPitch(void){ return pitch_get(); } @@ -532,7 +531,7 @@ f32 func_8028EF08(void){ } void func_8028EF28(f32 arg0[3]){ - func_80294A1C(arg0); + get_throw_target_position(arg0); } BKCollisionTri *func_8028EF48(void){ @@ -876,7 +875,7 @@ void func_8028FA34(enum actor_e arg0, Actor *arg1){ } void func_8028FA54(f32 arg0[3]){ - func_80294AC0(arg0); + set_throw_target_position(arg0); } void func_8028FA74(f32 dst[3]){ @@ -928,7 +927,7 @@ bool func_8028FBD4(f32 arg0[3]) { return FALSE; } if (arg0 != NULL) { - func_80294A98(arg0); + set_talk_target_position(arg0); } return bs_checkInterrupt(BS_INTR_8) == 2; } diff --git a/src/core2/code_9E370.c b/src/core2/code_9E370.c index e93301eb..145ceb20 100644 --- a/src/core2/code_9E370.c +++ b/src/core2/code_9E370.c @@ -17,7 +17,7 @@ extern void func_8033A244(f32); f32 func_80257204(f32, f32, f32, f32); extern Actor *func_802C4260(enum actor_e actor_id, s32 x, s32 y, s32 z, s32 yaw); f32 func_8033229C(ActorMarker *); -f32 func_8028EBA4(void); +f32 player_getYaw(void); extern void func_8032FFF4(ActorMarker *, ActorMarker *, s32); extern void func_802C9334(s32, Actor *); extern void func_8032B3A0(Actor *, ActorMarker *); @@ -894,7 +894,7 @@ Actor *actor_new(s32 (* position)[3], s32 yaw, ActorInfo* actorInfo, u32 flags){ animctrl_reset(D_80383390->animctrl); animctrl_setIndex(D_80383390->animctrl, sp54->index); animctrl_setDuration(D_80383390->animctrl, sp54->duration); - func_802875AC(D_80383390->animctrl, "subaddie.c", 0x4A5); + animctrl_start(D_80383390->animctrl, "subaddie.c", 0x4A5); } }//L80327BA8 D_80383390->unk124_11 = 0; @@ -1179,12 +1179,12 @@ bool func_80328508(Actor *arg0, s32 arg1) return TRUE; } -void func_803285E8(Actor *this, f32 arg1, int direction){ - func_8028774C(this->animctrl, arg1); +void func_803285E8(Actor *this, f32 anim_start_position, int direction){ + animctrl_setStart(this->animctrl, anim_start_position); if(direction != -1){ animctrl_setDirection(this->animctrl, direction); } - this->sound_timer = arg1; + this->sound_timer = anim_start_position; } @@ -1268,7 +1268,7 @@ int actor_animationIsAt(Actor *this, f32 arg1){ void func_803289EC(Actor *this , f32 arg1, int direction){ func_803285E8(this, arg1, direction); - func_802875AC(this->animctrl, "subaddie.c", 0x6b1); + animctrl_start(this->animctrl, "subaddie.c", 0x6b1); } int func_80328A2C(Actor *this, f32 arg1, s32 direction, f32 probability){ @@ -1283,7 +1283,7 @@ int func_80328A2C(Actor *this, f32 arg1, s32 direction, f32 probability){ void func_80328A84(Actor * arg0, u32 arg1){ if(func_80328508(arg0, arg1) && arg0->animctrl){ - func_802875AC(arg0->animctrl, "subaddie.c", 0X6CA); + animctrl_start(arg0->animctrl, "subaddie.c", 0X6CA); } } @@ -1316,7 +1316,7 @@ int func_80328BD4(Actor * this, s32 myAnimId, f32 arg2, s32 arg3, f32 arg4){ if(randf() < arg4){ if(func_80328508(this, myAnimId) && this->animctrl){ func_803285E8(this, arg2, arg3); - func_802875AC(this->animctrl, "subaddie.c", 0x705); + animctrl_start(this->animctrl, "subaddie.c", 0x705); } return 1; } @@ -1680,9 +1680,9 @@ void func_80329B68(Actor *this){ animctrl_setDirection(this->animctrl, this->stored_animctrl_forwards); animctrl_setSmoothTransition(this->animctrl, this->stored_animctrl_smoothTransistion); animctrl_setDuration(this->animctrl, this->stored_animctrl_duration); - func_8028774C(this->animctrl, this->unkEC); + animctrl_setStart(this->animctrl, this->unkEC); animctrl_setSubRange(this->animctrl, this->stored_animctrl_subrangeMin, this->stored_animctrl_subrangeMax); - func_802875AC(this->animctrl, "subaddie.c", 0x8fd); + animctrl_start(this->animctrl, "subaddie.c", 0x8fd); animctrl_setTimer(this->animctrl, this->sound_timer); } @@ -2167,7 +2167,7 @@ void func_8032B258(Actor *this, enum collision_e arg1) { f32 sp34; if ((arg1 == COLLISION_2_DIE) && this->unk138_27 != 0) { - sp44 = func_8028EBA4(); + sp44 = player_getYaw(); if ((s32)this->marker->unk44 < 0) { func_8034A174( this->marker->unk44, 0x20, sp38); } @@ -2284,7 +2284,7 @@ void func_8032B5C0(ActorMarker *arg0, ActorMarker *arg1, struct5Cs *arg2) { this->unk164[sp64] = 0x63; } if ((sp64 == 2) && (sp70 != 0)) { - sp5C = func_8028EBA4(); + sp5C = player_getYaw(); sp3C[0] = (s32) this->position[0]; sp3C[1] = (s32) this->position[1]; sp3C[2] = (s32) this->position[2]; diff --git a/src/core2/code_B3580.c b/src/core2/code_B3580.c index a448fcd4..c33798bd 100644 --- a/src/core2/code_B3580.c +++ b/src/core2/code_B3580.c @@ -102,10 +102,10 @@ void func_8033A8F0(Struct_B1400_1 *arg0, s32 arg1, f32 arg2[4]){ func_80345250(&arg0->unk0[arg1], arg2); } -void func_8033A928(Struct_B1400_1 *arg0, s32 arg1, f32 arg2[3]) { - arg0->unk0[arg1].unk10[0] = arg2[0]; - arg0->unk0[arg1].unk10[1] = arg2[1]; - arg0->unk0[arg1].unk10[2] = arg2[2]; +void func_8033A928(Struct_B1400_1 *arg0, s32 arg1, f32 scale[3]) { + arg0->unk0[arg1].unk10[0] = scale[0]; + arg0->unk0[arg1].unk10[1] = scale[1]; + arg0->unk0[arg1].unk10[2] = scale[2]; } void func_8033A968(Struct_B1400_1 *arg0, s32 arg1, f32 arg2[3]) { diff --git a/src/core2/code_B9770.c b/src/core2/code_B9770.c index 3fb76913..de44c69d 100644 --- a/src/core2/code_B9770.c +++ b/src/core2/code_B9770.c @@ -796,7 +796,7 @@ s32 func_803422D4(Actor *arg0, Union_glspline *arg1, SplineList *arg2){ animctrl_setDuration(arg0->animctrl, arg0->unk5C); animctrl_setDirection(arg0->animctrl, 1); if (arg0->animctrl != 0) { - _func_802875AC(arg0->animctrl, "glspline.c", 0x545); + animctrl_start(arg0->animctrl, "glspline.c", 0x545); } } switch (arg1->t1.unk4.bit6){ diff --git a/src/core2/code_C4B0.c b/src/core2/code_C4B0.c index 3ba73e53..56768d07 100644 --- a/src/core2/code_C4B0.c +++ b/src/core2/code_C4B0.c @@ -352,13 +352,13 @@ void func_80293F0C(void){ if(D_8037C278 && D_8037C218[1] < (func_8031C5E4(D_8037C200) - 70.0f)){ func_80294384(3); - if(D_8037C279 && func_80297AAC() < 0.0f) { + if(D_8037C279 && _get_vertVelocity() < 0.0f) { player_setYVelocity(-1.0f); } } else if(D_8037C279){ func_80294390(); - if (func_80297AAC() < 0.0f) { + if (_get_vertVelocity() < 0.0f) { player_setYVelocity(-1.0f); } } else { diff --git a/src/core2/code_CD6E0.c b/src/core2/code_CD6E0.c index be04f96b..c3550eb2 100644 --- a/src/core2/code_CD6E0.c +++ b/src/core2/code_CD6E0.c @@ -4,7 +4,7 @@ #include "code_B6EA0.h" -extern f32 func_8028EBA4(void); +extern f32 player_getYaw(void); extern void projectile_getPosition(u8 arg0, f32 arg1[3]); extern void func_8033FC98(u8 arg0, s32 arg1); @@ -36,7 +36,7 @@ void func_803546E8(void) { temp_s0->unk0[0] = randf2(-10.0f, 10.0f); temp_s0->unk0[1] = (randf() * 35.0f) + 50.0f; temp_s0->unk0[2] = randf2(-10.0f, 10.0f); - func_802589E4(sp28, func_8028EBA4(), 48.0f); + func_802589E4(sp28, player_getYaw(), 48.0f); sp28[1] = 0.0f; temp_s0->unk0[0] += sp28[0]; temp_s0->unk0[1] += sp28[1]; diff --git a/src/core2/code_D9B0.c b/src/core2/code_D9B0.c index adb60b62..56592191 100644 --- a/src/core2/code_D9B0.c +++ b/src/core2/code_D9B0.c @@ -9,7 +9,7 @@ extern f32 func_802944A8(void); f32 D_8037C2A0[3]; //recoil_target_position f32 D_8037C2B0[3]; //talk_target_position f32 D_8037C2C0[3]; //throw_target_position -f32 D_8037C2CC; +f32 D_8037C2CC; //turbo_duration enum transformation_e D_8037C2D0; f32 D_8037C2D8[3]; f32 D_8037C2E4; @@ -52,15 +52,15 @@ f32 get_slope_timer(void){ return D_8037C2E4 * (f64)1; } -void func_802949F8(f32 dst[3]){ +void get_talk_target_position(f32 dst[3]){ ml_vec3f_copy(dst, D_8037C2B0); } -void func_80294A1C(f32 dst[3]){ +void get_throw_target_position(f32 dst[3]){ ml_vec3f_copy(dst, D_8037C2C0); } -f32 func_80294A40(void){ +f32 get_turbo_duration(void){ return D_8037C2CC; } @@ -80,15 +80,15 @@ void func_80294A8C(int arg0){ D_8037C2EC = arg0; } -void func_80294A98(f32 src[3]) +void set_talk_target_position(f32 src[3]) { ml_vec3f_copy(D_8037C2B0, src); } -void func_80294AC0(f32 src[3]) +void set_throw_target_position(f32 src[3]) { ml_vec3f_copy(D_8037C2C0, src); } -void func_80294AE8(f32 arg0){ +void set_turbo_duration(f32 arg0){ D_8037C2CC = arg0; } diff --git a/src/core2/code_E910.c b/src/core2/code_E910.c index c294273c..d05bfc2c 100644 --- a/src/core2/code_E910.c +++ b/src/core2/code_E910.c @@ -127,7 +127,7 @@ bsMap D_80363824[] ={ {BS_7D_WALRUS_SLED, bswalrus_sled_init, bswalrus_sled_update, bswalrus_sled_end, func_802B98C0}, {BS_7E_WALRUS_SLED, bswalrus_sled_jump_init, bswalrus_sled_jump_update, bswalrus_sled_jump_end, func_802B98C0}, {BS_7F_DIVE_OW, func_802A7BD0, func_802A7CA8, func_802A7D74, func_80296590}, - {0x00000080, func_802B978C, func_802B9830, func_802B9880, func_80296590}, + {0x00000080, bswalrus_timeout_init, func_802B9830, func_802B9880, func_80296590}, {0x00000081, func_802B90D0, func_802B9130, func_802B917C, func_802B98C0}, {0x00000082, func_802B95A0, func_802B963C, func_802B976C, func_802B98C0}, {BS_85_BEE_IDLE, func_802A1080, func_802A10D4, func_802A117C, func_802B5350}, diff --git a/src/core2/code_EF50.c b/src/core2/code_EF50.c index 71a669a3..89c8ff36 100644 --- a/src/core2/code_EF50.c +++ b/src/core2/code_EF50.c @@ -3,7 +3,7 @@ #include "variables.h" extern void func_80256E24(f32[3], f32, f32, f32, f32, f32); -extern f32 func_8028EBA4(void); +extern f32 player_getYaw(void); extern void chJigsawDance_setState(Actor *, s32); extern void bsjig_setJiggyMarkerPtr(ActorMarker *); @@ -111,7 +111,7 @@ void func_802960C4(s32 arg0){ break; case 2: //L80296134 player_getPosition(sp30); - func_802589E4(sp24, func_8028EBA4(), 100.0f); + func_802589E4(sp24, player_getYaw(), 100.0f); sp24[1] = 0.0f; sp30[0] += sp24[0]; sp30[1] += sp24[1]; diff --git a/src/core2/code_FD60.c b/src/core2/code_FD60.c index f7baa622..b0a3a545 100644 --- a/src/core2/code_FD60.c +++ b/src/core2/code_FD60.c @@ -365,11 +365,11 @@ void _get_velocity(f32 dst[3]){ ml_vec3f_copy(dst, D_8037C4B8); } -f32 func_80297AAC(void){ +f32 _get_vertVelocity(void){ return D_8037C4B8[1]; } -f32 func_80297AB8(void){ +f32 _get_horzVelocity(void){ return gu_sqrtf(D_8037C4B8[0]*D_8037C4B8[0] + D_8037C4B8[2]*D_8037C4B8[2]); } @@ -378,7 +378,7 @@ f32 func_80297AF0(void){ f32 temp_f0; f32 temp_f12; - temp_f2 = func_80297AB8(); + temp_f2 = _get_horzVelocity(); temp_f0 = func_80297A64(); if(temp_f2 < temp_f0){ diff --git a/src/core2/fx/common3score.c b/src/core2/fx/common3score.c index deddc119..bb8820f5 100644 --- a/src/core2/fx/common3score.c +++ b/src/core2/fx/common3score.c @@ -162,7 +162,7 @@ void fxcommon3score_update(enum item_e arg0, void *arg1) { animctrl_reset(a1->anim_ctrl); animctrl_setIndex(a1->anim_ctrl, (enum asset_e) a1->anim_id); animctrl_setDuration(a1->anim_ctrl, a1->anim_duration); - func_802875AC(a1->anim_ctrl, "fxcommon3score.c", 0x74); + animctrl_start(a1->anim_ctrl, "fxcommon3score.c", 0x74); } /* fallthrough */ case 2: diff --git a/src/core2/gc/transition.c b/src/core2/gc/transition.c index a8aa5b53..a1afddf7 100644 --- a/src/core2/gc/transition.c +++ b/src/core2/gc/transition.c @@ -149,7 +149,7 @@ void _gctranstion_changeState(s32 state, struct9s *arg1){ osViBlack(1); animctrl_setAnimTimer(D_80382430.animctrl, 0.25f); //set animation timer } - func_802875AC(D_80382430.animctrl, "gctransition.c", 0x125); + animctrl_start(D_80382430.animctrl, "gctransition.c", 0x125); } if(state == 4){ diff --git a/src/core2/gc/zoombox.c b/src/core2/gc/zoombox.c index 8f98b408..aaaa3066 100644 --- a/src/core2/gc/zoombox.c +++ b/src/core2/gc/zoombox.c @@ -1458,7 +1458,7 @@ gczoombox_t *gczoombox_new(s32 arg0, enum talk_pic_e portrait_id, s32 arg2, s32 this->anim_ctrl = animctrl_new(0); animctrl_reset(this->anim_ctrl); animctrl_setIndex(this->anim_ctrl, ASSET_138_ANIM_ZOOMBOX); - func_802875AC(this->anim_ctrl, "gczoombox.c", 0x6fd); + animctrl_start(this->anim_ctrl, "gczoombox.c", 0x6fd); func_803184C8(this, 15.0f, 5, 2, 0.4f, 0, 0); //func_803184C8(this, 15.0f, 5, 2, D_80378940, 0, 0); this->unk176 = D_8036C6C0[portrait_id].unk2; diff --git a/symbol_addrs.us.v10.txt b/symbol_addrs.us.v10.txt index 8cd2b31c..c2228d38 100644 --- a/symbol_addrs.us.v10.txt +++ b/symbol_addrs.us.v10.txt @@ -86,7 +86,7 @@ leoDiskStack = 0x80285F90;//technically should have a OS_LEO_STAC animctrl_new = 0x802872E0; animctrl_setIndex = 0x8028745C; animctrl_reset = 0x802874AC; -_func_802875AC = 0x802875AC; +_animctrl_start = 0x802875AC; animctrl_setDirection = 0x8028767C; animctrl_setDuration = 0x8028768C; baMarker_8028D694 = 0x8028D694;