baanim.h documentation

This commit is contained in:
Banjo Kazooie
2023-02-17 20:08:45 -06:00
parent 1c4d1b54cd
commit 1aff1a433a
87 changed files with 904 additions and 850 deletions

View File

@@ -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){

View File

@@ -1,119 +1,135 @@
#include <ultra64.h>
#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);
}

View File

@@ -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

View File

@@ -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);

View File

@@ -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();

View File

@@ -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();

View File

@@ -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++;
}
}

View File

@@ -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++;
}
}

View File

@@ -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);

View File

@@ -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

View File

@@ -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);

View File

@@ -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();

View File

@@ -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;

View File

@@ -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);

View File

@@ -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);

View File

@@ -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);

View File

@@ -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();

View File

@@ -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++;
}

View File

@@ -1,6 +1,8 @@
#include <ultra64.h>
#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){

View File

@@ -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);
}

View File

@@ -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);

View File

@@ -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){

View File

@@ -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);

View File

@@ -1,6 +1,7 @@
#include <ultra64.h>
#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);
}

View File

@@ -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();

View File

@@ -1,6 +1,7 @@
#include <ultra64.h>
#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;

View File

@@ -1,6 +1,7 @@
#include <ultra64.h>
#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);

View File

@@ -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();

View File

@@ -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){

View File

@@ -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);

View File

@@ -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();

View File

@@ -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);

View File

@@ -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);

View File

@@ -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){

View File

@@ -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;
}

View File

@@ -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();

View File

@@ -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();
}

View File

@@ -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:

View File

@@ -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);

View File

@@ -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());

View File

@@ -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;

View File

@@ -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)){

View File

@@ -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;

View File

@@ -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);

View File

@@ -1,6 +1,8 @@
#include <ultra64.h>
#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);

View File

@@ -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);

View File

@@ -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);

View File

@@ -1,6 +1,7 @@
#include <ultra64.h>
#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))

View File

@@ -1,6 +1,7 @@
#include <ultra64.h>
#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:

View File

@@ -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);
}
}

View File

@@ -1,7 +1,7 @@
#include <ultra64.h>
#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();

View File

@@ -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);

View File

@@ -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);

View File

@@ -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;

View File

@@ -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);
}

View File

@@ -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);
}

View File

@@ -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);

View File

@@ -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);

View File

@@ -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) {

View File

@@ -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);

View File

@@ -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);
}

View File

@@ -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);
}

View File

@@ -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);

View File

@@ -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);

View File

@@ -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);
}

View File

@@ -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){

View File

@@ -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;
}

View File

@@ -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];

View File

@@ -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]) {

View File

@@ -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){

View File

@@ -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 {

View File

@@ -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];

View File

@@ -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;
}

View File

@@ -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},

View File

@@ -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];

View File

@@ -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){

View File

@@ -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:

View File

@@ -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){

View File

@@ -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;