documentation: core2/ba/physics
This commit is contained in:
@@ -92,7 +92,7 @@ void func_80387E68(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
timed_playSfx(1.4f, SFX_C9_PAUSEMENU_ENTER, 1.0f, 32000);
|
||||
func_80324CFC(0.4f, COMUSIC_43_ENTER_LEVEL_GLITTER, 22000);
|
||||
func_80324D2C(4.5f, COMUSIC_43_ENTER_LEVEL_GLITTER);
|
||||
func_80328B8C(this, 5, 0.79f, 1);
|
||||
subaddie_set_state_with_direction(this, 5, 0.79f, 1);
|
||||
func_80326310(this);
|
||||
bgs_D_803907B8[this->unkF4_8]->propPtr->unk8_4 = TRUE;
|
||||
timedFunc_set_1(1.1f, (GenFunction_1)func_80387E00, reinterpret_cast(s32, bgs_D_803907B8[this->unkF4_8]));
|
||||
@@ -144,13 +144,13 @@ void func_80387FD4(Actor *this){
|
||||
if (this->unkF4_8 == 1) {
|
||||
func_8028F94C(2, this->position);
|
||||
func_80311480(0xC86, 0xE, this->position, this->marker, func_80387E68, NULL);
|
||||
func_80328B8C(this, 6, 0.79f, 1);
|
||||
subaddie_set_state_with_direction(this, 6, 0.79f, 1);
|
||||
} else {
|
||||
timed_playSfx(0.4f, SFX_C9_PAUSEMENU_ENTER, 1.0f, 32000); //0.4f
|
||||
timed_playSfx(1.4f, SFX_C9_PAUSEMENU_ENTER, 1.0f, 32000); //1.4f
|
||||
func_80324CFC(0.4f, COMUSIC_43_ENTER_LEVEL_GLITTER, 22000);
|
||||
func_80324D2C(4.5f, COMUSIC_43_ENTER_LEVEL_GLITTER);
|
||||
func_80328B8C(this, 5, 0.79f, 1);
|
||||
subaddie_set_state_with_direction(this, 5, 0.79f, 1);
|
||||
if (this->unkF4_8 == 5) {
|
||||
timedFunc_set_1(0.9f, (GenFunction_1) func_80387E40, (s32) this->marker);
|
||||
} else {
|
||||
@@ -172,7 +172,7 @@ void func_80387FD4(Actor *this){
|
||||
case 1:// L80388370
|
||||
this->unk60 += time_getDelta();
|
||||
if(0.7 <= this->unk60){
|
||||
func_80328B8C(this, 2, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.0f, 1);
|
||||
func_80387C90(this);
|
||||
this->unk60 = 0.0f;
|
||||
func_80324D54(0.1f, SFX_D0_GRIMLET_SQUEAK, 1.0f, 0x7530, this->position, 0.0f, 1800.0f);
|
||||
@@ -181,14 +181,14 @@ void func_80387FD4(Actor *this){
|
||||
|
||||
case 2:// L80388400
|
||||
if(actor_animationIsAt(this, 0.62f)){
|
||||
func_80328B8C(this, 3, 0.62f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.62f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
case 3:// L80388434
|
||||
this->unk60 += time_getDelta();
|
||||
if( this->unk60 >= 0.13 + 0.7/4 * (5 - this->unkF4_8)){
|
||||
func_80328B8C(this, 4, 0.62f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.62f, 1);
|
||||
func_80387C90(this);
|
||||
this->unk60 = 0.0f;
|
||||
func_80324D54(0.3f, 0x406, 1.0f, 0x55f0, this->position, 0.0f, 1800.0f);
|
||||
@@ -197,7 +197,7 @@ void func_80387FD4(Actor *this){
|
||||
|
||||
case 4:// L8038850C
|
||||
if(actor_animationIsAt(this, 0.0f)){
|
||||
func_80328B8C(this, 1, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.0f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -93,7 +93,7 @@ void func_8038FD9C(Actor *this){
|
||||
this->unk1C[0] = 1.0f;
|
||||
this->alpha_124_19 = 0xff;
|
||||
if(this->unk54 != 0.0f){
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -104,7 +104,7 @@ void func_8038FD9C(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = 1;
|
||||
this->unk1C[0] = 1.0f;
|
||||
if(15.0f <= this->velocity_x){
|
||||
func_80328A84(this, 3);
|
||||
subaddie_set_state(this, 3);
|
||||
this->velocity_x = 0.0f;
|
||||
}
|
||||
else{
|
||||
@@ -124,7 +124,7 @@ void func_8038FD9C(Actor *this){
|
||||
this->unk1C[0] = 0.0f;
|
||||
this->alpha_124_19 = 0;
|
||||
if (this->unk54 == 0.0f) {
|
||||
func_80328A84(this, 4);
|
||||
subaddie_set_state(this, 4);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -132,7 +132,7 @@ void func_8038FD9C(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = 1;
|
||||
this->unk1C[0] = 1.0f;
|
||||
if (this->velocity[0] >= 15.0f) {
|
||||
func_80328A84(this, 1);
|
||||
subaddie_set_state(this, 1);
|
||||
this->velocity[0] = 0.0f;
|
||||
} else {
|
||||
if(tmp[5-(((s32)this->velocity_x)%6)]) {
|
||||
|
@@ -9,7 +9,7 @@ extern f32 player_stateTimer_get(enum state_timer_e);
|
||||
|
||||
|
||||
void func_802C4218(u32,f32,f32,f32);
|
||||
void func_80328A84(Actor *, u32);
|
||||
void subaddie_set_state(Actor *, u32);
|
||||
|
||||
/* local declarations */
|
||||
Actor *chmudhut_draw(ActorMarker *this, Gfx** gdl, Mtx** mtx, Vtx **vtx);
|
||||
@@ -97,7 +97,7 @@ void chmudhut_update(Actor *this){
|
||||
diffPos[1] += 130.0;
|
||||
|
||||
FUNC_8030E8B4(SFX_5B_HEAVY_STUFF_FALLING, 1.0f, 28000, this->position, 0x12C, 0xBB8);
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
this->marker->propPtr->unk8_3 = 0;
|
||||
actor_playAnimationOnce(this);
|
||||
if(tmp == 5){
|
||||
|
@@ -85,7 +85,7 @@ void chpinkegg_collision(ActorMarker *this, ActorMarker *other_marker){
|
||||
thisActor = marker_getActor(this);
|
||||
this->propPtr->unk8_3 = 0;
|
||||
func_8030E510(SFX_AA_BGS_EGG_BREAKING_1, 28000);
|
||||
func_80328A84(thisActor, 3);
|
||||
subaddie_set_state(thisActor, 3);
|
||||
actor_playAnimationOnce(thisActor);
|
||||
this->collidable = 0;
|
||||
thisActor->unk124_6 = 0;
|
||||
@@ -108,7 +108,7 @@ void chpinkegg_update(Actor *this){
|
||||
case 1:
|
||||
if(!((ActorLocal_PinkEgg *) &this->local)->unk4){
|
||||
this->marker->collidable = 1;
|
||||
func_80328A84(this,2);
|
||||
subaddie_set_state(this,2);
|
||||
|
||||
}else{
|
||||
((ActorLocal_PinkEgg *) &this->local)->unk4--;
|
||||
|
@@ -47,7 +47,7 @@ void func_8038F470(ActorMarker *this, s32 arg1, enum chtanktup_leg_e leg_id){
|
||||
sp18[1] += 50.0f;
|
||||
|
||||
leg = func_8032813C(leg_id + ACTOR_E9_TANKTUP_LEG_FL, sp18, (s32)thisActor->yaw);
|
||||
func_80328B8C(leg, arg1 + 1, 0, -1);
|
||||
subaddie_set_state_with_direction(leg, arg1 + 1, 0, -1);
|
||||
leg->unk10_12 = leg_id;
|
||||
}
|
||||
|
||||
@@ -148,7 +148,7 @@ void func_8038F6A4(Actor *this)
|
||||
}
|
||||
if (local->unk10)
|
||||
{
|
||||
func_80328B8C(this, 2, 0.0f, -1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.0f, -1);
|
||||
local->unk10 = 0;
|
||||
sp44 = 0;
|
||||
if(&sp44);
|
||||
@@ -182,11 +182,11 @@ void func_8038F6A4(Actor *this)
|
||||
{
|
||||
if (!local->unk14)
|
||||
{
|
||||
func_80328B8C(this, 1, 0.0f, -1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.0f, -1);
|
||||
}
|
||||
else
|
||||
{
|
||||
func_80328B8C(this, 3, 0.0f, -1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.0f, -1);
|
||||
actor_playAnimationOnce(this);
|
||||
}
|
||||
}
|
||||
|
@@ -2,6 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "prop.h"
|
||||
#include "actor.h"
|
||||
|
||||
extern ActorInfo D_80390804;
|
||||
extern ActorInfo D_80390690;
|
||||
@@ -34,35 +35,35 @@ extern ActorInfo D_80390BD8;
|
||||
extern ActorInfo D_80390BFC;
|
||||
|
||||
void BGS_func_8038F1E0(void){//bgs_updateSpawnableActors
|
||||
spawnableActorList_add(&D_80390804, actor_new, 0x00000088);//croctus
|
||||
spawnableActorList_add(&D_80390690, actor_new, 0x020108A1); //flibbit
|
||||
spawnableActorList_add(&D_803906F8, actor_new, 0x400); //pink_egg_largest
|
||||
spawnableActorList_add(&D_8039071C, actor_new, 0x400); //pink_egg_large
|
||||
spawnableActorList_add(&D_80390740, actor_new, 0x400); //pink_egg_medium
|
||||
spawnableActorList_add(&D_80390764, actor_new, 0x400); //pink_egg_small
|
||||
spawnableActorList_add(&D_80390788, actor_new, 0x400); //pink_egg_smallest
|
||||
spawnableActorList_add(&D_80390B68, actor_new, 0); //mudhut_top
|
||||
spawnableActorList_add(&D_80390C40, actor_new, 0x4000548);//tanktup
|
||||
spawnableActorList_add(&D_80390C88, actor_new, 0x400042c);//tanktup_leg
|
||||
spawnableActorList_add(&D_80390CC8, actor_new, 0x400042c);//tanktup_leg
|
||||
spawnableActorList_add(&D_80390D08, actor_new, 0x400042c);//tanktup_leg
|
||||
spawnableActorList_add(&D_80390D48, actor_new, 0x400042c);//tanktup_leg
|
||||
spawnableActorList_add(&chFrogMinigame, actor_new, 0x81);
|
||||
spawnableActorList_add(&BGS_D_80390AE0, actor_new, 0x20108a1); //yellow_flibbit
|
||||
spawnableActorList_add(&D_80390960, actor_new, 0);
|
||||
spawnableActorList_add(&D_80390A40, actor_new, 0x880); //yumblie
|
||||
spawnableActorList_add(&D_80390A70, actor_new, 0x9a2); //mr. vile
|
||||
spawnableActorList_add(&D_80390830, actor_new, 0x888); //tiptup
|
||||
spawnableActorList_add(&D_80390880, actor_new, 0x9a8); //tiptup_chiorMember
|
||||
spawnableActorList_add(&D_803908A4, actor_new, 0x9a8); //tiptup_chiorMember
|
||||
spawnableActorList_add(&D_803908C8, actor_new, 0x9a8); //tiptup_chiorMember
|
||||
spawnableActorList_add(&D_803908EC, actor_new, 0x9a8); //tiptup_chiorMember
|
||||
spawnableActorList_add(&D_80390910, actor_new, 0x9a8); //tiptup_chiorMember
|
||||
spawnableActorList_add(&D_80390934, actor_new, 0x9a8); //tiptup_chiorMember
|
||||
spawnableActorList_add(&D_80390DA8, actor_new, 0x4000); //leafboat
|
||||
spawnableActorList_add(&D_80390D70, actor_new, 0x580); //bigAlligator
|
||||
spawnableActorList_add(&D_80390BD8, actor_new, 8); //green_jiggy_switch
|
||||
spawnableActorList_add(&D_80390BFC, actor_new, 8); //green_jiggy_switch
|
||||
spawnableActorList_add(&D_80390804, actor_new, ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);//croctus
|
||||
spawnableActorList_add(&D_80390690, actor_new, ACTOR_FLAG_UNKNOWN_25 | ACTOR_FLAG_UNKNOWN_16 | ACTOR_FLAG_UNKNOWN_11 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_0); //flibbit
|
||||
spawnableActorList_add(&D_803906F8, actor_new, ACTOR_FLAG_UNKNOWN_10); //pink_egg_largest
|
||||
spawnableActorList_add(&D_8039071C, actor_new, ACTOR_FLAG_UNKNOWN_10); //pink_egg_large
|
||||
spawnableActorList_add(&D_80390740, actor_new, ACTOR_FLAG_UNKNOWN_10); //pink_egg_medium
|
||||
spawnableActorList_add(&D_80390764, actor_new, ACTOR_FLAG_UNKNOWN_10); //pink_egg_small
|
||||
spawnableActorList_add(&D_80390788, actor_new, ACTOR_FLAG_UNKNOWN_10); //pink_egg_smallest
|
||||
spawnableActorList_add(&D_80390B68, actor_new, ACTOR_FLAG_NONE); //mudhut_top
|
||||
spawnableActorList_add(&D_80390C40, actor_new, ACTOR_FLAG_UNKNOWN_26 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_3);//tanktup
|
||||
spawnableActorList_add(&D_80390C88, actor_new, ACTOR_FLAG_UNKNOWN_26 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_2);//tanktup_leg
|
||||
spawnableActorList_add(&D_80390CC8, actor_new, ACTOR_FLAG_UNKNOWN_26 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_2);//tanktup_leg
|
||||
spawnableActorList_add(&D_80390D08, actor_new, ACTOR_FLAG_UNKNOWN_26 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_2);//tanktup_leg
|
||||
spawnableActorList_add(&D_80390D48, actor_new, ACTOR_FLAG_UNKNOWN_26 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_2);//tanktup_leg
|
||||
spawnableActorList_add(&chFrogMinigame, actor_new, ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_0);
|
||||
spawnableActorList_add(&BGS_D_80390AE0, actor_new, ACTOR_FLAG_UNKNOWN_25 | ACTOR_FLAG_UNKNOWN_16 | ACTOR_FLAG_UNKNOWN_11 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_0); //yellow_flibbit
|
||||
spawnableActorList_add(&D_80390960, actor_new, ACTOR_FLAG_NONE);
|
||||
spawnableActorList_add(&D_80390A40, actor_new, ACTOR_FLAG_UNKNOWN_11 | ACTOR_FLAG_UNKNOWN_7); //yumblie
|
||||
spawnableActorList_add(&D_80390A70, actor_new, ACTOR_FLAG_UNKNOWN_11 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_1); //mr. vile
|
||||
spawnableActorList_add(&D_80390830, actor_new, ACTOR_FLAG_UNKNOWN_11 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3 ); //tiptup
|
||||
spawnableActorList_add(&D_80390880, actor_new, ACTOR_FLAG_UNKNOWN_11 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_3 ); //tiptup_chiorMember
|
||||
spawnableActorList_add(&D_803908A4, actor_new, ACTOR_FLAG_UNKNOWN_11 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_3 ); //tiptup_chiorMember
|
||||
spawnableActorList_add(&D_803908C8, actor_new, ACTOR_FLAG_UNKNOWN_11 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_3 ); //tiptup_chiorMember
|
||||
spawnableActorList_add(&D_803908EC, actor_new, ACTOR_FLAG_UNKNOWN_11 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_3 ); //tiptup_chiorMember
|
||||
spawnableActorList_add(&D_80390910, actor_new, ACTOR_FLAG_UNKNOWN_11 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_3 ); //tiptup_chiorMember
|
||||
spawnableActorList_add(&D_80390934, actor_new, ACTOR_FLAG_UNKNOWN_11 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_3 ); //tiptup_chiorMember
|
||||
spawnableActorList_add(&D_80390DA8, actor_new, ACTOR_FLAG_UNKNOWN_14); //leafboat
|
||||
spawnableActorList_add(&D_80390D70, actor_new, ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_7); //bigAlligator
|
||||
spawnableActorList_add(&D_80390BD8, actor_new, ACTOR_FLAG_UNKNOWN_3); //green_jiggy_switch
|
||||
spawnableActorList_add(&D_80390BFC, actor_new, ACTOR_FLAG_UNKNOWN_3); //green_jiggy_switch
|
||||
}
|
||||
|
||||
|
||||
|
@@ -62,7 +62,7 @@ void func_8038FB40(ActorMarker *this, s32 arg1){
|
||||
Actor * thisActor;
|
||||
|
||||
thisActor = marker_getActor(this);
|
||||
func_80328A84(thisActor, 2);
|
||||
subaddie_set_state(thisActor, 2);
|
||||
actor_playAnimationOnce(thisActor);
|
||||
FUNC_8030E624(SFX_A_BANJO_LANDING_05, 0.8f, 32750);
|
||||
}
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "actor.h"
|
||||
|
||||
extern ActorInfo D_80389AA0;
|
||||
extern ActorInfo D_80389AD0;
|
||||
@@ -27,25 +28,25 @@ extern ActorInfo D_80389E8C;
|
||||
/* .code */
|
||||
void CC_func_80387DA0(void)
|
||||
{
|
||||
spawnableActorList_add(&D_80389AA0, actor_new, 0X4080);
|
||||
spawnableActorList_add(&D_80389E44, actor_new, 0X10080);
|
||||
spawnableActorList_add(&D_80389E68, actor_new, 0X10080);
|
||||
spawnableActorList_add(&D_80389E8C, actor_new, 0X10080);
|
||||
spawnableActorList_add(&D_80389AD0, actor_new, 0X80);
|
||||
spawnableActorList_add(&D_80389B00, actor_new, 0X80);
|
||||
spawnableActorList_add(&D_80389B24, actor_new, 0X80);
|
||||
spawnableActorList_add(&D_80389B90, actor_new, 0X80);
|
||||
spawnableActorList_add(&D_80389BB4, actor_new, 0X80);
|
||||
spawnableActorList_add(&D_80389C90, actor_new, 0X2488);
|
||||
spawnableActorList_add(&D_80389CB4, actor_new, 0X2488);
|
||||
spawnableActorList_add(&D_80389CD8, actor_new, 0X2488);
|
||||
spawnableActorList_add(&D_80389CFC, actor_new, 0X2488);
|
||||
spawnableActorList_add(&D_80389D20, actor_new, 0X2488);
|
||||
spawnableActorList_add(&D_80389D44, actor_new, 0X2488);
|
||||
spawnableActorList_add(&D_80389D68, actor_new, 0X2488);
|
||||
spawnableActorList_add(&D_80389D8C, actor_new, 0X2488);
|
||||
spawnableActorList_add(&D_80389DB0, actor_new, 0X2488);
|
||||
spawnableActorList_add(&D_80389DD4, actor_new, 0X2488);
|
||||
spawnableActorList_add(&D_80389DF8, actor_new, 0X2488);
|
||||
spawnableActorList_add(&D_80389E1C, actor_new, 0X2488);
|
||||
spawnableActorList_add(&D_80389AA0, actor_new, ACTOR_FLAG_UNKNOWN_14 | ACTOR_FLAG_UNKNOWN_7 );
|
||||
spawnableActorList_add(&D_80389E44, actor_new, ACTOR_FLAG_UNKNOWN_16 | ACTOR_FLAG_UNKNOWN_7 );
|
||||
spawnableActorList_add(&D_80389E68, actor_new, ACTOR_FLAG_UNKNOWN_16 | ACTOR_FLAG_UNKNOWN_7 );
|
||||
spawnableActorList_add(&D_80389E8C, actor_new, ACTOR_FLAG_UNKNOWN_16 | ACTOR_FLAG_UNKNOWN_7 );
|
||||
spawnableActorList_add(&D_80389AD0, actor_new, ACTOR_FLAG_UNKNOWN_7);
|
||||
spawnableActorList_add(&D_80389B00, actor_new, ACTOR_FLAG_UNKNOWN_7);
|
||||
spawnableActorList_add(&D_80389B24, actor_new, ACTOR_FLAG_UNKNOWN_7);
|
||||
spawnableActorList_add(&D_80389B90, actor_new, ACTOR_FLAG_UNKNOWN_7);
|
||||
spawnableActorList_add(&D_80389BB4, actor_new, ACTOR_FLAG_UNKNOWN_7);
|
||||
spawnableActorList_add(&D_80389C90, actor_new, ACTOR_FLAG_UNKNOWN_13 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);
|
||||
spawnableActorList_add(&D_80389CB4, actor_new, ACTOR_FLAG_UNKNOWN_13 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);
|
||||
spawnableActorList_add(&D_80389CD8, actor_new, ACTOR_FLAG_UNKNOWN_13 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);
|
||||
spawnableActorList_add(&D_80389CFC, actor_new, ACTOR_FLAG_UNKNOWN_13 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);
|
||||
spawnableActorList_add(&D_80389D20, actor_new, ACTOR_FLAG_UNKNOWN_13 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);
|
||||
spawnableActorList_add(&D_80389D44, actor_new, ACTOR_FLAG_UNKNOWN_13 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);
|
||||
spawnableActorList_add(&D_80389D68, actor_new, ACTOR_FLAG_UNKNOWN_13 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);
|
||||
spawnableActorList_add(&D_80389D8C, actor_new, ACTOR_FLAG_UNKNOWN_13 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);
|
||||
spawnableActorList_add(&D_80389DB0, actor_new, ACTOR_FLAG_UNKNOWN_13 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);
|
||||
spawnableActorList_add(&D_80389DD4, actor_new, ACTOR_FLAG_UNKNOWN_13 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);
|
||||
spawnableActorList_add(&D_80389DF8, actor_new, ACTOR_FLAG_UNKNOWN_13 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);
|
||||
spawnableActorList_add(&D_80389E1C, actor_new, ACTOR_FLAG_UNKNOWN_13 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_3);
|
||||
}
|
||||
|
@@ -70,7 +70,7 @@ void func_80388F50(ActorMarker *marker, ActorMarker *other_marker){
|
||||
if ((func_8028ECAC() != 1) && !this->unk38_0) {
|
||||
this->unk38_0 = TRUE;
|
||||
actor_collisionOff(this);
|
||||
func_80328B8C(this, 4, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.0f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
func_8030E6D4(SFX_90_SWITCH_PRESS);
|
||||
}
|
||||
@@ -87,7 +87,7 @@ void func_80388FD4(Actor *this) {
|
||||
if (!this->unk16C_4) {
|
||||
if (fileProgressFlag_get(this->unk10_12 + FILEPROG_8B_CCW_SPRING_OPEN)) {
|
||||
actor_playAnimationOnce(this);
|
||||
func_80328B8C(this, 4, 0.999f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.999f, 1);
|
||||
actor_collisionOff(this);
|
||||
} else {
|
||||
marker_setCollisionScripts(this->marker, 0, &func_80388F50, 0);
|
||||
@@ -143,7 +143,7 @@ void func_80389268(Actor *this) {
|
||||
|
||||
this->unk16C_4 = TRUE;
|
||||
if (fileProgressFlag_get(this->unk10_12 + FILEPROG_8B_CCW_SPRING_OPEN)) {
|
||||
func_80328A84(this, 3);
|
||||
subaddie_set_state(this, 3);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -153,14 +153,14 @@ void func_80389268(Actor *this) {
|
||||
if (levelSpecificFlags_get(this->unk10_12 + 7)) {
|
||||
timedFunc_set_1(0.05f, func_803891B0, (s32) this->marker);
|
||||
timedFunc_set_1(4.0f, func_8038921C, (s32) this->marker);
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
this->position[1] += 60.0f * time_getDelta();
|
||||
if (this->unk1C[1] <= this->position[1]) {
|
||||
levelSpecificFlags_set(this->unk10_12 + 7, FALSE);
|
||||
func_80328A84(this, 3);
|
||||
subaddie_set_state(this, 3);
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
|
@@ -21,12 +21,12 @@ ActorInfo D_8038F908 = {
|
||||
|
||||
/* .code */
|
||||
void func_8038DFE0(Actor* actor) {
|
||||
func_80328B8C(actor, 1, 0.001f, 1);
|
||||
subaddie_set_state_with_direction(actor, 1, 0.001f, 1);
|
||||
actor->unk38_31 = randi2(0, 0);
|
||||
}
|
||||
|
||||
void CCW_func_8038E034(Actor* actor) {
|
||||
func_80328B8C(actor, 2, 0.001f, 1);
|
||||
subaddie_set_state_with_direction(actor, 2, 0.001f, 1);
|
||||
}
|
||||
|
||||
void func_8038E060(s32 arg0, ActorMarker *marker){
|
||||
|
@@ -82,7 +82,7 @@ void func_8038E4C0(ActorMarker* marker, s32 arg1) {
|
||||
Actor* actor = marker_getActor(marker);
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
func_80328B8C(actor, 5, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(actor, 5, 0.0f, 1);
|
||||
actor_playAnimationOnce(actor);
|
||||
FUNC_8030E8B4(SFX_C2_GRUBLIN_EGH, 1.0f, 32000, actor->position, 1250, 2500);
|
||||
pCtrl = partEmitMgr_newEmitter(1);
|
||||
|
@@ -111,7 +111,7 @@ void func_8038A384(Actor *this){
|
||||
if( jiggyscore_isCollected(JIGGY_2E_FP_PRESENTS)
|
||||
|| func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)
|
||||
){
|
||||
func_80328B8C(this, 2, randf2(0.0f, 0.9f), 1);
|
||||
subaddie_set_state_with_direction(this, 2, randf2(0.0f, 0.9f), 1);
|
||||
}
|
||||
}//L8038A4E4
|
||||
|
||||
@@ -153,7 +153,7 @@ void func_8038A384(Actor *this){
|
||||
break;
|
||||
}
|
||||
if(levelSpecificFlags_get(D_80391E80[sp3C].unk0)){
|
||||
func_80328B8C(this, 2, 0.001f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.001f, 1);
|
||||
if(sp38 == 0xc19){
|
||||
func_80311480(sp38, 0x2f, this->position, this->marker, func_8038A318, NULL);
|
||||
}
|
||||
|
@@ -47,14 +47,14 @@ Actor *func_803875E0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
}
|
||||
|
||||
void func_803876A4(Actor *this){
|
||||
func_80328B8C(this, 2, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.0001f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
FUNC_8030E8B4(SFX_8E_GRUNTLING_DAMAGE, 1.0f, 32000, this->position, 1250, 2500);
|
||||
}
|
||||
|
||||
void func_803876F8(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = FALSE;
|
||||
func_80328B8C(this, 5, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 5, 0.0001f, 1);
|
||||
this->unk48 = 0.0f;
|
||||
func_80343DEC(this);
|
||||
}
|
||||
@@ -76,7 +76,7 @@ void func_803877A8(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
jiggySpawn(JIGGY_2A_FP_BOGGY_1, this->velocity);
|
||||
}
|
||||
else if(arg2 == 2){
|
||||
func_80328B8C(this, 4, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.0001f, 1);
|
||||
actor_loopAnimation(this);
|
||||
actor_collisionOff(this);
|
||||
}
|
||||
@@ -178,7 +178,7 @@ void func_8038794C(Actor *this){
|
||||
}//L80387CF4
|
||||
|
||||
if(actor_animationIsAt(this, 0.9999f)){
|
||||
func_80328B8C(this, 3, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.0001f, 1);
|
||||
actor_loopAnimation(this);
|
||||
}
|
||||
break;
|
||||
|
@@ -90,7 +90,7 @@ Actor *func_80388740(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
void FP_func_803888E4(Actor *this){
|
||||
static f32 D_80391D0C[3] = {1842.0f, 658.0f, 5758.0f};
|
||||
static f32 D_80391D18[3] = {1463.0f, 635.0f, 5193.0f};
|
||||
func_80328B8C(this, 0xC, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 0xC, 0.0001f, 1);
|
||||
if(!jiggyscore_isSpawned(JIGGY_30_FP_BOGGY_2)){
|
||||
if(mapSpecificFlags_get(5)){
|
||||
func_80324DBC(0.1f, 0xc06, 0x2a, D_80391D18, this->marker, func_80388D70, NULL);
|
||||
@@ -115,7 +115,7 @@ void FP_func_803888E4(Actor *this){
|
||||
void func_80388A50(Actor *this){
|
||||
ActorLocal_FP_2350 *local = (ActorLocal_FP_2350 *)&this->local;
|
||||
|
||||
func_80328B8C(this, 2, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.0001f, 1);
|
||||
timed_setStaticCameraToNode(0.0f, 4);
|
||||
local->unk18 = 0;
|
||||
}
|
||||
@@ -206,7 +206,7 @@ void func_80388D70(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
local->unk4 = partEmitMgr_newEmitter(16);
|
||||
func_80388EE8(local->unk0);
|
||||
func_80388EE8(local->unk4);
|
||||
func_80328B8C(this, 4, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.0001f, 1);
|
||||
local->unk14 = (local->unk19 == 2) ? 1.0f : 0.0f;
|
||||
this->marker->unk40_23 = TRUE;
|
||||
break;
|
||||
@@ -217,10 +217,10 @@ void func_80388D70(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
mapSpecificFlags_set(6, TRUE);
|
||||
break;
|
||||
case 0:
|
||||
func_80328B8C(this, 1, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.0001f, 1);
|
||||
break;
|
||||
default:
|
||||
func_80328B8C(this, 1, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.0001f, 1);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@@ -432,7 +432,7 @@ void func_803896FC(Actor *this){
|
||||
local->unk19 = 1;
|
||||
this->unk38_31 = 2;
|
||||
this->unk4C = 600.0f;
|
||||
func_80328B8C(this, 11, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 11, 0.0001f, 1);
|
||||
}
|
||||
else{
|
||||
local->unk19 = 1;
|
||||
@@ -445,10 +445,10 @@ void func_803896FC(Actor *this){
|
||||
if(!func_8038A1A0(this->marker)){
|
||||
switch(this->unk38_31){
|
||||
case 1://L80389920
|
||||
func_80328B8C(this, 9, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 9, 0.0001f, 1);
|
||||
break;
|
||||
case 2://L80389938
|
||||
func_80328B8C(this, 10, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 10, 0.0001f, 1);
|
||||
break;
|
||||
}
|
||||
}//L80389950
|
||||
@@ -500,9 +500,9 @@ void func_803896FC(Actor *this){
|
||||
local->unk14 = 0.0f;
|
||||
if( randf() < 0.02 && sp58 < 0.0){
|
||||
if(randf() < 0.5)
|
||||
func_80328B8C(this, 5, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 5, 0.0001f, 1);
|
||||
else
|
||||
func_80328B8C(this, 6, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 6, 0.0001f, 1);
|
||||
}//L80389C18
|
||||
|
||||
func_803893E4(this, sp58, local->unk19);
|
||||
@@ -516,7 +516,7 @@ void func_803896FC(Actor *this){
|
||||
case 5:// L80389C80
|
||||
case 6:// L80389C80
|
||||
if(actor_animationIsAt(this, 0.9999f) || sp58 >= 0.0){
|
||||
func_80328B8C(this, 4, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.0001f, 1);
|
||||
}//L80389CC8
|
||||
|
||||
func_803893E4(this, sp58, local->unk19);
|
||||
@@ -528,7 +528,7 @@ void func_803896FC(Actor *this){
|
||||
|
||||
case 7:// L80389D34
|
||||
if(actor_animationIsAt(this, 0.9999f)){
|
||||
func_80328B8C(this, 4, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.0001f, 1);
|
||||
}//L80389D60
|
||||
func_803893E4(this, sp58, local->unk19);
|
||||
func_80388F90(this);
|
||||
@@ -556,7 +556,7 @@ void func_803896FC(Actor *this){
|
||||
func_80388F90(this);
|
||||
}
|
||||
if(actor_animationIsAt(this, 0.9999f)){
|
||||
func_80328B8C(this, 11, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 11, 0.0001f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -567,7 +567,7 @@ void func_803896FC(Actor *this){
|
||||
}
|
||||
|
||||
if(actor_animationIsAt(this, 0.9999f)){
|
||||
func_80328B8C(this, 11, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 11, 0.0001f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -629,10 +629,10 @@ void func_8038A0E4(UNK_TYPE(s32) arg0, ActorMarker *marker){
|
||||
|
||||
if(actor){
|
||||
if(actor->state != 7){
|
||||
func_80328B8C(actor, 7, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(actor, 7, 0.0001f, 1);
|
||||
}
|
||||
else{
|
||||
func_80328B8C(actor, 4, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(actor, 4, 0.0001f, 1);
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -641,7 +641,7 @@ void func_8038A150(UNK_TYPE(s32) arg0, ActorMarker *marker){
|
||||
Actor *actor = marker_getActor(marker);
|
||||
|
||||
if(actor && actor->state != 8){
|
||||
func_80328B8C(actor, 8, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(actor, 8, 0.0001f, 1);
|
||||
};
|
||||
}
|
||||
|
||||
|
@@ -31,7 +31,7 @@ Actor *chRaceSled_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
|
||||
void __chRaceSled_setState(Actor *this, s32 next_state){
|
||||
if(this->state != 1 || next_state != 1){
|
||||
func_80328A84(this, next_state);
|
||||
subaddie_set_state(this, next_state);
|
||||
switch(next_state){
|
||||
case 1: //L8038697C
|
||||
this->unk10_12 = TRUE;
|
||||
|
@@ -21,7 +21,7 @@ ActorInfo chScarfSled = {
|
||||
|
||||
/* .code */
|
||||
void __chScarfSled_setState(Actor *this, s32 next_state){
|
||||
func_80328A84(this, next_state);
|
||||
subaddie_set_state(this, next_state);
|
||||
|
||||
if(next_state == 2){
|
||||
mapSpecificFlags_set(0xB, TRUE);
|
||||
|
@@ -50,7 +50,7 @@ void FP_func_80386BEC(Actor *this){
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(12);
|
||||
|
||||
player_getPosition(plyr_pos);
|
||||
func_80328B8C(this, 2, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.01f, 1);
|
||||
actor_collisionOff(this);
|
||||
func_8025A6EC(COMUSIC_2B_DING_B, 28000);
|
||||
FUNC_8030E624(SFX_90_SWITCH_PRESS, 1.0f, 32000);
|
||||
@@ -93,7 +93,7 @@ void FP_func_80386CF8(Actor *this){
|
||||
break;
|
||||
case 2:
|
||||
if(actor_animationIsAt(this, 0.99f)){
|
||||
func_80328B8C(this, 3, 0.99f, 0);
|
||||
subaddie_set_state_with_direction(this, 3, 0.99f, 0);
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
|
@@ -242,7 +242,7 @@ void func_8038C8F0(ActorMarker *marker){
|
||||
void func_8038C94C(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
Actor *this = marker_getActor(caller);
|
||||
if(!func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){
|
||||
func_80328A84(this, 6);
|
||||
subaddie_set_state(this, 6);
|
||||
__spawnQueue_add_1((GenFunction_1)func_8038C8F0, reinterpret_cast(s32, this->marker));
|
||||
}
|
||||
}
|
||||
@@ -261,7 +261,7 @@ void func_8038C9A0(Actor *this){
|
||||
this->marker->unk18 = &FP_D_80392018;
|
||||
this->unk38_31 = 0;
|
||||
if(0.0f != other->velocity[0]){
|
||||
func_80328A84(this, 4);
|
||||
subaddie_set_state(this, 4);
|
||||
this->unk1C[1] = this->position_y + 50.0f;
|
||||
this->unk1C[2] = this->position_y;
|
||||
}
|
||||
@@ -286,7 +286,7 @@ void func_8038C9A0(Actor *this){
|
||||
switch(this->state){
|
||||
case 1:// 8038CB2C
|
||||
if(!func_8038C718(this, 0)){
|
||||
func_80328B8C(this, 2, 0.001f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.001f, 1);
|
||||
func_8038C428(this, D_80392088, randf2(20.0f, 24.0f));
|
||||
this->unk60 = this->yaw;
|
||||
}
|
||||
@@ -311,7 +311,7 @@ void func_8038C9A0(Actor *this){
|
||||
|
||||
if(!func_8038C718(this, 0.0f)){
|
||||
if(func_8038C844(this->position, D_80392088)){
|
||||
func_80328B8C(this, 3, 0.001f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.001f, 1);
|
||||
func_8038C428(this, D_80392094, 0.0f);
|
||||
}
|
||||
else{
|
||||
@@ -341,7 +341,7 @@ void func_8038C9A0(Actor *this){
|
||||
else{
|
||||
func_80311480(0xc25, 0x2b, this->position, this->marker, func_8038C94C, NULL);
|
||||
}
|
||||
func_80328A84(this, 5);
|
||||
subaddie_set_state(this, 5);
|
||||
this->pitch -= 3.0f;
|
||||
}
|
||||
break;
|
||||
|
@@ -268,7 +268,7 @@ void func_8038D5C8(ActorMarker *this_marker, ActorMarker *other_marker){
|
||||
func_8024BD08(0);
|
||||
this->unk1C[2] = 428571.0f;
|
||||
func_8025AEA0(0x68, (s32)this->unk1C[2]);
|
||||
func_80328B8C(this, 3, 0.001f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.001f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
this->velocity[0] = 1.0f;
|
||||
}//L8038D6B8
|
||||
@@ -303,7 +303,7 @@ void func_8038D6C8(Actor *this){
|
||||
this->unk1C[0] = -1.0f;
|
||||
func_8028F8F8(7, FALSE);
|
||||
if(func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) && gcparade_8031B4F4() == -1){
|
||||
func_80328B8C(this, 3, 0.001f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.001f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
this->velocity[0] = 1.0f;
|
||||
}
|
||||
@@ -320,9 +320,9 @@ void func_8038D6C8(Actor *this){
|
||||
break;
|
||||
|
||||
if(!(func_8023DB5C() & 1))
|
||||
func_80328B8C(this, 2, 0.001f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.001f, 1);
|
||||
else
|
||||
func_80328B8C(this, 2, 0.999f, 0);
|
||||
subaddie_set_state_with_direction(this, 2, 0.999f, 0);
|
||||
|
||||
actor_playAnimationOnce(this);
|
||||
this->velocity[2] = randf2(1.4f, 2.0f);
|
||||
@@ -335,7 +335,7 @@ void func_8038D6C8(Actor *this){
|
||||
if( ( sp20 == TRUE && actor_animationIsAt(this, 0.999f) )
|
||||
|| ( sp20 == FALSE && actor_animationIsAt(this, 0.001f) )
|
||||
){
|
||||
func_80328B8C(this, 1, 0.001f, 0);
|
||||
subaddie_set_state_with_direction(this, 1, 0.001f, 0);
|
||||
actor_playAnimationOnce(this);
|
||||
break;
|
||||
}
|
||||
@@ -362,7 +362,7 @@ void func_8038D6C8(Actor *this){
|
||||
|
||||
timed_exitStaticCamera(0.0f);
|
||||
func_8028F784(0);
|
||||
func_80328B8C(this, 4, 0.999f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.999f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
item_set(ITEM_0_HOURGLASS_TIMER, 80*60 - 1);
|
||||
item_set(ITEM_6_HOURGLASS, TRUE);
|
||||
@@ -381,7 +381,7 @@ void func_8038D6C8(Actor *this){
|
||||
|
||||
func_8025AEA0(COMUSIC_68_TWINKLY_MINIGAME, (s32)this->unk1C[2]);
|
||||
if(item_getCount(ITEM_24_TWINKLY_SCORE) == 0){
|
||||
func_80328B8C(this, 1, 0.001f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.001f, 1);
|
||||
func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 28000);
|
||||
func_8038D3D8();
|
||||
func_80324E38(0.0f, 3);
|
||||
@@ -393,7 +393,7 @@ void func_8038D6C8(Actor *this){
|
||||
}
|
||||
|
||||
if(item_empty(ITEM_6_HOURGLASS)){
|
||||
func_80328B8C(this, 1, 0.001f, 0);
|
||||
subaddie_set_state_with_direction(this, 1, 0.001f, 0);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk38_31 = 0;
|
||||
item_set(ITEM_6_HOURGLASS, FALSE);
|
||||
|
@@ -35,23 +35,23 @@ Actor *func_8038DD70(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
|
||||
void func_8038DDC8(Actor *this){
|
||||
actor_collisionOn(this);
|
||||
func_80328B8C(this, 2, 0.03f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.03f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
}
|
||||
|
||||
void func_8038DE08(Actor *this){
|
||||
func_80328B8C(this, 3, 0.03f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.03f, 1);
|
||||
actor_loopAnimation(this);
|
||||
}
|
||||
|
||||
void func_8038DE40(Actor *this){
|
||||
func_80328B8C(this, 4, 0.03f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.03f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
}
|
||||
|
||||
void func_8038DE78(Actor *this){
|
||||
actor_collisionOff(this);
|
||||
func_80328B8C(this, 5, 0.03f, 1);
|
||||
subaddie_set_state_with_direction(this, 5, 0.03f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
}
|
||||
|
||||
@@ -93,7 +93,7 @@ Actor *func_8038DF34(Actor *this){
|
||||
void func_8038E040(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
Actor *this = marker_getActor(caller);
|
||||
timed_exitStaticCamera(0.5f);
|
||||
func_80328B8C(this, 7, 0.03f, 1);
|
||||
subaddie_set_state_with_direction(this, 7, 0.03f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
}
|
||||
|
||||
@@ -129,7 +129,7 @@ void func_8038E094(Actor *this){
|
||||
timed_setStaticCameraToNode(0.5f, 0xd);
|
||||
func_80311480(ASSET_C15_TEXT_TWINKLIE_MINIGAME_LOST, 0x2b, this->position, this->marker, func_8038E040, NULL);
|
||||
this->velocity[0] = 1.0f;
|
||||
func_80328B8C(this, 6, 0.03f, 1);
|
||||
subaddie_set_state_with_direction(this, 6, 0.03f, 1);
|
||||
actor_loopAnimation(this);
|
||||
}
|
||||
}
|
||||
@@ -214,7 +214,7 @@ void func_8038E094(Actor *this){
|
||||
case 5: //L8038E644
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
if(actor_animationIsAt(this, 0.97f)){
|
||||
func_80328B8C(this, 1, 0.97f, 0);
|
||||
subaddie_set_state_with_direction(this, 1, 0.97f, 0);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk60 = 0.0f;
|
||||
}
|
||||
|
@@ -56,12 +56,12 @@ void func_8038F274(void){
|
||||
}
|
||||
|
||||
void func_8038F2B8(Actor *this){
|
||||
func_80328B8C(this, 3, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.02f, 1);
|
||||
actor_loopAnimation(this);
|
||||
}
|
||||
|
||||
void func_8038F2F0(Actor *this){
|
||||
func_80328B8C(this, 11, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 11, 0.02f, 1);
|
||||
actor_loopAnimation(this);
|
||||
func_8038F274();
|
||||
}
|
||||
@@ -96,14 +96,14 @@ void func_8038F3F4(ActorMarker *marker){
|
||||
}
|
||||
|
||||
void func_8038F41C(Actor *this){
|
||||
func_80328B8C(this, 1, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.02f, 1);
|
||||
actor_loopAnimation(this);
|
||||
}
|
||||
|
||||
void func_8038F454(Actor *this){
|
||||
if(!mapSpecificFlags_get(7) && func_8028ECAC() != BSGROUP_A_FLYING && func_80329530(this, 1000) ){
|
||||
mapSpecificFlags_set(7, TRUE);
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
actor_loopAnimation(this);
|
||||
timed_setStaticCameraToNode(0.0f, 0x2e);
|
||||
func_80324DBC(0.0f, 0xc1b, 0x2a, this->position, this->marker, func_8038F330, NULL);
|
||||
@@ -115,12 +115,12 @@ void func_8038F454(Actor *this){
|
||||
}
|
||||
|
||||
void func_8038F528(Actor *this){
|
||||
func_80328B8C(this, 4, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.02f, 1);
|
||||
actor_loopAnimation(this);
|
||||
}
|
||||
|
||||
void func_8038F560(Actor *this){
|
||||
func_80328B8C(this, 7, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 7, 0.02f, 1);
|
||||
actor_loopAnimation(this);
|
||||
}
|
||||
|
||||
@@ -149,7 +149,7 @@ bool func_8038F5D4(Actor *this, f32 arg1[3], f32 arg2, f32 arg3, s32 arg4){
|
||||
bool FP_func_8038F6C4(Actor *this, f32 arg1[3], f32 arg2){
|
||||
s32 dTheta;
|
||||
|
||||
func_80328C64(this, func_803297C8(this, arg1));
|
||||
subaddie_set_ideal_yaw(this, func_803297C8(this, arg1));
|
||||
func_80328FB0(this, arg2);
|
||||
dTheta = this->yaw - this->yaw_ideal;
|
||||
if(-arg2 <= dTheta && dTheta <= arg2){
|
||||
@@ -223,7 +223,7 @@ void FP_func_8038F7AC(Actor *this){
|
||||
}
|
||||
|
||||
if(func_80329530(this, 1300) && player_getTransformation() == TRANSFORM_4_WALRUS){
|
||||
func_80328B8C(this, 8, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 8, 0.02f, 1);
|
||||
actor_loopAnimation(this);
|
||||
break;
|
||||
}
|
||||
@@ -252,7 +252,7 @@ void FP_func_8038F7AC(Actor *this){
|
||||
}
|
||||
|
||||
if(func_8038F5D4(this, local->unk0, 30.0f, 12.0f, 0x3C)){
|
||||
func_80328B8C(this, 5, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 5, 0.02f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
}
|
||||
break;
|
||||
@@ -260,7 +260,7 @@ void FP_func_8038F7AC(Actor *this){
|
||||
case 5: //L8038FB50
|
||||
FP_func_8038F6C4(this, local->unk18, 1.0f);
|
||||
if(0.97 < animctrl_getAnimTimer(this->animctrl)){
|
||||
func_80328B8C(this, 6, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 6, 0.02f, 1);
|
||||
actor_loopAnimation(this);
|
||||
}
|
||||
break;
|
||||
@@ -309,7 +309,7 @@ void FP_func_8038F7AC(Actor *this){
|
||||
|
||||
if(mapSpecificFlags_get(8)){
|
||||
if(FP_func_8038F6C4(this, D_803925AC, 9.0f)){
|
||||
func_80328B8C(this, 9, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 9, 0.02f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
}
|
||||
break;
|
||||
@@ -331,7 +331,7 @@ void FP_func_8038F7AC(Actor *this){
|
||||
case 9: //L8038FE14
|
||||
FP_func_8038F6C4(this, D_803925AC, 9.0f);
|
||||
if(0.97 < animctrl_getAnimTimer(this->animctrl)){
|
||||
func_80328B8C(this, 10, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 10, 0.02f, 1);
|
||||
actor_loopAnimation(this);
|
||||
}
|
||||
break;
|
||||
@@ -342,7 +342,7 @@ void FP_func_8038F7AC(Actor *this){
|
||||
|
||||
case 11: //L8038FE84
|
||||
if(func_8038F5D4(this, local->unk24, 30.0f, 12.0f, 0x3C)){
|
||||
func_80328A84(this, 12);
|
||||
subaddie_set_state(this, 12);
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -51,7 +51,7 @@ void func_8038FF54(Actor *this){
|
||||
other = marker_getActor(this->unk100);
|
||||
if(this->state != 9){
|
||||
if(other->state == 9){
|
||||
func_80328B8C(this, 9, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 9, 0.01f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
}
|
||||
else{
|
||||
|
@@ -47,7 +47,7 @@ void __chXmasTree_80386F3C(void){
|
||||
}
|
||||
|
||||
void __chXmasTree_80386F84(Actor * this){
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
__chXmasTree_80386EF4(this, 0);
|
||||
}
|
||||
|
||||
@@ -123,7 +123,7 @@ void chXmasTree_update(Actor *this){
|
||||
case 2: // L80387294
|
||||
if(!mapSpecificFlags_get(2)) break;
|
||||
|
||||
func_80328A84(this, 3);
|
||||
subaddie_set_state(this, 3);
|
||||
this->unk60 = 2.0f;
|
||||
func_8025A6EC(COMUSIC_61_XMAS_TREE_LIGHTS_UP, 28000);
|
||||
func_802BAFE4(0x1A);
|
||||
@@ -148,7 +148,7 @@ void chXmasTree_update(Actor *this){
|
||||
}
|
||||
else{//L803873BC
|
||||
if(func_802BB270()){
|
||||
func_80328A84(this, 4);
|
||||
subaddie_set_state(this, 4);
|
||||
__chXmasTree_80386EF4(this, 1);
|
||||
item_set(ITEM_0_HOURGLASS_TIMER, 3600 - 1);
|
||||
item_set(ITEM_6_HOURGLASS, TRUE);
|
||||
@@ -159,7 +159,7 @@ void chXmasTree_update(Actor *this){
|
||||
|
||||
case 4: // L80387400
|
||||
if(mapSpecificFlags_get(3)){
|
||||
func_80328A84(this, 6);
|
||||
subaddie_set_state(this, 6);
|
||||
__chXmasTree_80386EF4(this, 1);
|
||||
item_set(ITEM_6_HOURGLASS, FALSE);
|
||||
tmp_a0 = this->unk44_31;
|
||||
@@ -172,7 +172,7 @@ void chXmasTree_update(Actor *this){
|
||||
}
|
||||
else{//L80387470
|
||||
if(item_empty(ITEM_6_HOURGLASS)){
|
||||
func_80328A84(this, 5);
|
||||
subaddie_set_state(this, 5);
|
||||
mapSpecificFlags_set(2, FALSE);
|
||||
this->unk60 = 0.1f;
|
||||
if(!func_8038BFA0()){
|
||||
|
@@ -104,14 +104,14 @@ void func_8038ECD8(Actor *this){
|
||||
if(!mapSpecificFlags_get(2)) break;
|
||||
if(mapSpecificFlags_get(3)) break;
|
||||
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
this->unk38_31 = 0;
|
||||
break;
|
||||
|
||||
case 2://L8038EF5C
|
||||
if(!local->unk1A) return;
|
||||
if(item_empty(ITEM_6_HOURGLASS)){
|
||||
func_80328A84(this, 1);
|
||||
subaddie_set_state(this, 1);
|
||||
}
|
||||
else{
|
||||
this->marker->collidable = TRUE;
|
||||
@@ -136,7 +136,7 @@ void func_8038ECD8(Actor *this){
|
||||
}//L8038F090
|
||||
|
||||
if(!(this->unk38_31 < 3)){
|
||||
func_80328A84(this, 1);
|
||||
subaddie_set_state(this, 1);
|
||||
mapSpecificFlags_set(3, 1);
|
||||
}
|
||||
}
|
||||
|
@@ -28,7 +28,7 @@ Actor *func_8038E720(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
|
||||
|
||||
void func_8038E774(Actor *this){
|
||||
func_80328B8C(this, 2, 0.05f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.05f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
this->marker->collidable = TRUE;
|
||||
this->unk38_31 = 0;
|
||||
@@ -70,7 +70,7 @@ void func_8038E940(Actor *this){
|
||||
if(jiggyscore_isCollected(JIGGY_2F_FP_XMAS_TREE) || levelSpecificFlags_get(0x29)){
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
this->marker->collidable = FALSE;
|
||||
func_80328B8C(this, 3, 0.95f, 0);
|
||||
subaddie_set_state_with_direction(this, 3, 0.95f, 0);
|
||||
return;
|
||||
}//L8038E9B8
|
||||
|
||||
@@ -79,7 +79,7 @@ void func_8038E940(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
this->marker->collidable = FALSE;
|
||||
marker_setCollisionScripts(this->marker, NULL, func_8038E7CC, NULL);
|
||||
func_80328B8C(this, 1, 0.05f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.05f, 1);
|
||||
this->unk38_31 = 0;
|
||||
this->unk60 = 0.0f;
|
||||
}//L8038EA3C
|
||||
@@ -98,7 +98,7 @@ void func_8038E940(Actor *this){
|
||||
if(this->unk38_31 < 3)
|
||||
break;
|
||||
|
||||
func_80328B8C(this, 3, 0.05f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.05f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
FUNC_8030E624(SFX_416, 0.8f, 32000);
|
||||
this->marker->collidable = FALSE;
|
||||
|
@@ -98,7 +98,7 @@ void func_8038811C(ActorMarker *this_marker, ActorMarker *other_marker){
|
||||
if(this->state == 2)
|
||||
return;
|
||||
|
||||
func_80328B8C(this, 2, 0.0001, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.0001, 1);
|
||||
func_8030E878(SFX_6A_FLAGPOLE_WOBBLE, randf2(0.9f, 1.1f), 32000, this->position, 1000.0f, 2000.0f);
|
||||
|
||||
}
|
||||
@@ -137,7 +137,7 @@ void func_803881AC(Actor *this){
|
||||
|
||||
if(this->state == 2){
|
||||
if(actor_animationIsAt(this, 0.9999f)){
|
||||
func_80328B8C(this, 1, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.0001f, 1);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -38,7 +38,7 @@ Actor *func_803883E0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
void func_803884F4(ActorMarker *this_marker, ActorMarker *other_marker){
|
||||
Actor *this = marker_getActor(this_marker);
|
||||
if(this->state != 2){
|
||||
func_80328B8C(this, 2, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.0001f, 1);
|
||||
func_8030E878(SFX_6A_FLAGPOLE_WOBBLE, randf2(0.9f, 1.1f), 32000, this->position, 1000.0f, 2000.0f);
|
||||
}
|
||||
}
|
||||
@@ -78,7 +78,7 @@ void func_80388584(Actor *this){
|
||||
func_8028E668(this->position, 200.0f, -10.0f, 30.0f);
|
||||
if(this->state == 2){
|
||||
if(actor_animationIsAt(this, 0.9999f)){
|
||||
func_80328B8C(this, 1, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.0001f, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -96,7 +96,7 @@ void func_803867F4(void){
|
||||
void func_80386850(ActorMarker *caller_marker, enum asset_e text_id, s32 arg2){
|
||||
Actor *caller = marker_getActor(caller_marker);
|
||||
if(text_id == 0xA80){
|
||||
func_80328B8C(caller, 2, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(caller, 2, 0.0f, 1);
|
||||
actor_playAnimationOnce(caller);
|
||||
func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 0x7fff);
|
||||
timedFunc_set_0(1.0f, func_803867F4);
|
||||
@@ -162,7 +162,7 @@ void chAncientOne_update(Actor *this){
|
||||
}
|
||||
}
|
||||
|
||||
func_80328B8C(this, 2, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.0f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
if(this->unkF4_8 < 5){
|
||||
D_80390C28[this->unkF4_8]->propPtr->unk8_4 = TRUE;
|
||||
@@ -198,7 +198,7 @@ void chAncientOne_update(Actor *this){
|
||||
break;
|
||||
case 2: //L80386DCC
|
||||
if(actor_animationIsAt(this, 0.999f)){
|
||||
func_80328B8C(this, 3, 0.9999f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.9999f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
}
|
||||
break;
|
||||
|
@@ -70,7 +70,7 @@ Actor *func_8038DA18(ActorMarker *this_marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
|
||||
|
||||
void GV_func_8038DB0C(Actor *this){
|
||||
func_80328B8C(this, 1, 0.99f, 0);
|
||||
subaddie_set_state_with_direction(this, 1, 0.99f, 0);
|
||||
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_STOPPED);
|
||||
}
|
||||
|
||||
@@ -112,7 +112,7 @@ void func_8038DBDC(Actor *this){
|
||||
this->initialized = TRUE;
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
actor_collisionOff(this);
|
||||
func_80328B8C(this, 1, 0.99f, 0);
|
||||
subaddie_set_state_with_direction(this, 1, 0.99f, 0);
|
||||
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_STOPPED);
|
||||
D_80391AB8 = 0;
|
||||
func_8038DB4C(0);
|
||||
@@ -120,7 +120,7 @@ void func_8038DBDC(Actor *this){
|
||||
}//L8038DC90
|
||||
if(func_8038E178() != (s32)this->unk1C[0] || func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){
|
||||
if(15.0f <= this->unk60){
|
||||
func_80328B8C(this, 2, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.01f, 1);
|
||||
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_ONCE);
|
||||
animctrl_setDuration(this->animctrl, 2.0f);
|
||||
this->unk1C[0] = (f32)func_8038E178();
|
||||
@@ -135,7 +135,7 @@ void func_8038DBDC(Actor *this){
|
||||
if(!(func_8038E178() < 5)){
|
||||
func_8038DB88(this);
|
||||
if(D_80391AB8){
|
||||
func_80328B8C(this, 3, 0.99f, 0);
|
||||
subaddie_set_state_with_direction(this, 3, 0.99f, 0);
|
||||
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_STOPPED);
|
||||
this->unk1C[0] = 0.0f;
|
||||
}
|
||||
@@ -158,7 +158,7 @@ void func_8038DBDC(Actor *this){
|
||||
break;
|
||||
case 3: //8038DE44
|
||||
if(!(this->unk38_31 < 0x21)){
|
||||
func_80328B8C(this, 4, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.01f, 1);
|
||||
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_ONCE);
|
||||
animctrl_setDuration(this->animctrl, 3.0f);
|
||||
func_803865F8();
|
||||
@@ -170,7 +170,7 @@ void func_8038DBDC(Actor *this){
|
||||
break;
|
||||
case 4: //8038DEBC
|
||||
if(actor_animationIsAt(this, 0.99f)){
|
||||
func_80328B8C(this, 5, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 5, 0.01f, 1);
|
||||
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_LOOP);
|
||||
animctrl_setDuration(this->animctrl, 2.0f);
|
||||
func_8038DB58(0);
|
||||
@@ -191,7 +191,7 @@ void func_8038DBDC(Actor *this){
|
||||
break;
|
||||
case 5: //8038DFC8
|
||||
if(func_8038DB64() == 0x127){
|
||||
func_80328B8C(this, 6, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 6, 0.01f, 1);
|
||||
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_LOOP);
|
||||
animctrl_setDuration(this->animctrl, 1.6f);
|
||||
func_80386608();
|
||||
|
@@ -37,7 +37,7 @@ s32 D_80390E88[4] = {0, 0, 0, 0};
|
||||
void GV_func_803894B0(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
actor_collisionOff(this);
|
||||
func_80328B8C(this, 1, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.01f, 1);
|
||||
this->unk38_31 = 0;
|
||||
this->initialized = TRUE;
|
||||
}
|
||||
@@ -72,7 +72,7 @@ void chSarcophagus_update(Actor *this){
|
||||
GV_func_803894B0(this);
|
||||
}
|
||||
if(func_80329530(this, 500) && func_8038957C(this)){
|
||||
func_80328B8C(this, 2, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.01f, 1);
|
||||
FUNC_8030E8B4(SFX_6B_LOCKUP_OPENING, 1.0f, 32000, this->position, 1250, 2500);
|
||||
FUNC_8030E8B4(SFX_3F6_UNKNOWN, 1.0f, 32000, this->position, 1250, 2500);
|
||||
|
||||
@@ -88,13 +88,13 @@ void chSarcophagus_update(Actor *this){
|
||||
this->unk38_31 = 1;
|
||||
}
|
||||
if(actor_animationIsAt(this, 0.5f)){
|
||||
func_80328B8C(this, 3, 0.5f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.5f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
case 3: //L80389788
|
||||
if(!func_80329530(this, 700)){
|
||||
func_80328B8C(this, 4, 0.5f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.5f, 1);
|
||||
FUNC_8030E8B4(SFX_6B_LOCKUP_OPENING, 1.0f, 32000, this->position, 1250, 2500);
|
||||
FUNC_8030E8B4(SFX_3F6_UNKNOWN, 1.0f, 32000, this->position, 1250, 2500);
|
||||
}
|
||||
@@ -110,7 +110,7 @@ void chSarcophagus_update(Actor *this){
|
||||
}
|
||||
|
||||
if(actor_animationIsAt(this, 0.99f)){
|
||||
func_80328B8C(this, 1, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.01f, 1);
|
||||
}
|
||||
else if(actor_animationIsAt(this, 0.9f)){
|
||||
FUNC_8030E8B4(SFX_7F_HEAVYDOOR_SLAM, 1.0f, 32000, this->position, 1250, 2500);
|
||||
@@ -123,7 +123,7 @@ void chSarcophagus_updateSNS(Actor *this){
|
||||
if(!this->initialized){
|
||||
GV_func_803894B0(this);
|
||||
if(fileProgressFlag_get(FILEPROG_A4_GV_SNS_SARCOPHAGUS_OPEN))
|
||||
func_80328B8C(this, 3, 0.5f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.5f, 1);
|
||||
this->unk1C[0] = 0.0f;
|
||||
}
|
||||
|
||||
@@ -132,7 +132,7 @@ void chSarcophagus_updateSNS(Actor *this){
|
||||
if(this->unk1C[0] != 0.0f){
|
||||
this->unk1C[0] -= 1.0f;
|
||||
if(this->unk1C[0] == 0.0f){
|
||||
func_80328B8C(this, 5, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 5, 0.01f, 1);
|
||||
FUNC_8030E8B4(SFX_6B_LOCKUP_OPENING, 0.5f, 32000, this->position, 1250, 2500);
|
||||
FUNC_8030E8B4(SFX_3F6_UNKNOWN, 0.5f, 32000, this->position, 1250, 2500);
|
||||
}
|
||||
@@ -145,7 +145,7 @@ void chSarcophagus_updateSNS(Actor *this){
|
||||
break;
|
||||
case 5://L803899DC
|
||||
if(actor_animationIsAt(this, 0.5f)){
|
||||
func_80328B8C(this, 3, 0.5f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.5f, 1);
|
||||
FUNC_8030E624(SFX_7F_HEAVYDOOR_SLAM, 1.0f, 25000);
|
||||
}
|
||||
break;
|
||||
|
@@ -24,17 +24,17 @@ s32 D_80391A34;
|
||||
|
||||
/* .code */
|
||||
void GV_func_803863F0(Actor *this){
|
||||
func_80328B8C(this, 1, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.0001f, 1);
|
||||
D_80391A30 = FALSE;
|
||||
}
|
||||
|
||||
void GV_func_80386420(Actor *this){
|
||||
func_80328B8C(this, 2, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.0001f, 1);
|
||||
this->unk38_31 = 0x23;
|
||||
}
|
||||
|
||||
void func_80386464(Actor *this){
|
||||
func_80328B8C(this, 3, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.0001f, 1);
|
||||
}
|
||||
|
||||
void chtoots_update(Actor *this){
|
||||
|
@@ -25,13 +25,13 @@ ActorInfo D_80390ED0 = { MARKER_A9_RUBEE, ACTOR_11B_RUBEE, ASSET_3DD_MODEL_RUBEE
|
||||
void func_80389A20(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
Actor *this = marker_getActor(caller);
|
||||
func_8038E18C();
|
||||
func_80328B8C(this, 3, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.0f, 1);
|
||||
}
|
||||
|
||||
void func_80389A60(Actor *this){
|
||||
func_80311480(ASSET_A70_TEXT_CHARMER_HELPED, 4, NULL, this->marker, func_80389A20, NULL);
|
||||
this->unk138_24 = TRUE;
|
||||
func_80328A84(this, 5);
|
||||
subaddie_set_state(this, 5);
|
||||
}
|
||||
|
||||
void func_80389ABC(Actor *this){
|
||||
@@ -75,7 +75,7 @@ void func_80389B1C(Actor *this){
|
||||
func_80389ABC(this);
|
||||
}
|
||||
else if(actor_animationIsAt(this, 0.99f)){
|
||||
func_80328B38(this, 2, 0.9f);
|
||||
subaddie_maybe_set_state(this, 2, 0.9f);
|
||||
}
|
||||
|
||||
if( actor_animationIsAt(this, 0.42f)
|
||||
@@ -96,7 +96,7 @@ void func_80389B1C(Actor *this){
|
||||
func_80389ABC(this);
|
||||
}
|
||||
else if(actor_animationIsAt(this, 0.99f)){
|
||||
func_80328B38(this, 1, 0.4f);
|
||||
subaddie_maybe_set_state(this, 1, 0.4f);
|
||||
}
|
||||
break;
|
||||
case 3: //L80389E14
|
||||
@@ -106,12 +106,12 @@ void func_80389B1C(Actor *this){
|
||||
}
|
||||
|
||||
if( actor_animationIsAt(this, 0.99f)){
|
||||
func_80328A84(this, 4);
|
||||
subaddie_set_state(this, 4);
|
||||
}
|
||||
break;
|
||||
case 4: //L80389E64
|
||||
if(!func_8038E178())
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
break;
|
||||
}//L80389E80
|
||||
}
|
||||
|
@@ -88,7 +88,7 @@ void func_8038A31C(Actor *this){
|
||||
this->unk1C[0] = 1.0;
|
||||
this->alpha_124_19 = 0xff;
|
||||
if(this->unk54 != 0.0f){
|
||||
func_80328B8C(this, 2, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.02f, 1);
|
||||
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_STOPPED);
|
||||
}
|
||||
break;
|
||||
@@ -96,7 +96,7 @@ void func_8038A31C(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
this->unk1C[0] = 1.0;
|
||||
if(45.0f <= this->velocity[0]){
|
||||
func_80328B8C(this, 3, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.02f, 1);
|
||||
this->velocity[0] = 0.0f;
|
||||
}
|
||||
else{
|
||||
@@ -115,7 +115,7 @@ void func_8038A31C(Actor *this){
|
||||
this->unk1C[0] = 0.0;
|
||||
this->alpha_124_19 = 0;
|
||||
if(this->unk54 == 0.0f){
|
||||
func_80328B8C(this, 4, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.02f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -123,7 +123,7 @@ void func_8038A31C(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
this->unk1C[0] = 1.0;
|
||||
if(45.0f <= this->velocity[0]){
|
||||
func_80328B8C(this, 1, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.02f, 1);
|
||||
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_LOOP);
|
||||
this->velocity[0] = 0.0f;
|
||||
}
|
||||
|
@@ -104,7 +104,7 @@ void func_8038ADFC(f32 pos[3], s32 cnt){
|
||||
|
||||
void func_8038AF10(Actor *this){
|
||||
animctrl_setSmoothTransition(this->animctrl, TRUE);
|
||||
func_80328B8C(this, 3, 0.00001f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.00001f, 1);
|
||||
actor_loopAnimation(this);
|
||||
this->unk28 = 16.0f;
|
||||
this->unk1C[0] = 1.0f;
|
||||
@@ -124,7 +124,7 @@ void func_8038AFF4(ActorMarker *this_marker, ActorMarker *other_marker){
|
||||
Actor *this = marker_getActor(this_marker);
|
||||
func_8032B4DC(this, other_marker, 0xC);
|
||||
actor_collisionOff(this);
|
||||
func_80328B8C(this, ASSET_9_ANIM_BSDIE, 0.00001f, 1);
|
||||
subaddie_set_state_with_direction(this, ASSET_9_ANIM_BSDIE, 0.00001f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk1C[0] = 0.0f;
|
||||
func_8030E878(SFX_D7_GRABBA_DEATH, 1.0f, 32000, this->position, 2250.0f, 4500.0f);
|
||||
@@ -189,7 +189,7 @@ void func_8038B124(Actor *this){
|
||||
&& func_803292E0(this)
|
||||
){
|
||||
animctrl_setSmoothTransition(this->animctrl, 0);
|
||||
func_80328B8C(this, 2, 0.00001f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.00001f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
this->yaw = (f32)func_80329784(this);
|
||||
this->unk28 = 0.0f;
|
||||
@@ -221,12 +221,12 @@ void func_8038B124(Actor *this){
|
||||
case 3: //L8038B494
|
||||
func_8030E2C4(this->unk44_31);
|
||||
if(func_80329530(this, 175)){
|
||||
func_80328B8C(this, 4, 0.00001f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.00001f, 1);
|
||||
actor_loopAnimation(this);
|
||||
this->unk1C[0] = 1.0f;
|
||||
}
|
||||
else if(!func_80329530(this, 1100) || !func_8038AF78(this, 8.0f, 16.0f)){
|
||||
func_80328B8C(this, 8, 0.00001f, 1);
|
||||
subaddie_set_state_with_direction(this, 8, 0.00001f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk1C[0] = 1.0f;
|
||||
func_802BB3DC(0, 6.0f, 0.92f);
|
||||
@@ -249,7 +249,7 @@ void func_8038B124(Actor *this){
|
||||
this->yaw_ideal = func_80329784(this);
|
||||
func_80328FB0(this, 8.0f);
|
||||
if(this->unk38_31 >= 20){
|
||||
func_80328B8C(this, 5, 0.00001f, 1);
|
||||
subaddie_set_state_with_direction(this, 5, 0.00001f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk38_31 = 0;
|
||||
this->unk1C[0] = 1.0f;
|
||||
@@ -269,7 +269,7 @@ void func_8038B124(Actor *this){
|
||||
func_8030E878(SFX_3_DULL_CANNON_SHOT, 1.0f, 32000, this->position, 2250.0f, 4500.0f);
|
||||
}//L8038B734
|
||||
if(0.98 < animctrl_getAnimTimer(this->animctrl)){
|
||||
func_80328B8C(this, 6, 0.99f, 0);
|
||||
subaddie_set_state_with_direction(this, 6, 0.99f, 0);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk60 = 0.0f;
|
||||
this->unk1C[0] = 1.0f;
|
||||
@@ -278,7 +278,7 @@ void func_8038B124(Actor *this){
|
||||
|
||||
case 6: //L8038B78C
|
||||
if(75.0f <= this->unk60){
|
||||
func_80328B8C(this, 7, 0.00001f, 1);
|
||||
subaddie_set_state_with_direction(this, 7, 0.00001f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk1C[0] = 1.0f;
|
||||
}
|
||||
@@ -295,14 +295,14 @@ void func_8038B124(Actor *this){
|
||||
|
||||
case 8: //L8038B820
|
||||
if(0.98 < animctrl_getAnimTimer(this->animctrl)){
|
||||
func_80328B8C(this, 1, 0.00001f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.00001f, 1);
|
||||
this->unk1C[0] = 0.0f;
|
||||
this->unk1C[1] = 2.0f;
|
||||
}
|
||||
break;
|
||||
|
||||
case 9: //L8038B870
|
||||
func_80328A84(this, 0xA);
|
||||
subaddie_set_state(this, 0xA);
|
||||
func_8038ACEC(this->position, 2);
|
||||
func_8034A174(this->marker->unk44, 5, GV_D_80391A70);
|
||||
func_8038ACEC(GV_D_80391A70, 2);
|
||||
|
@@ -47,7 +47,7 @@ extern s32 D_80391A80;
|
||||
/* .code */
|
||||
void func_8038B988(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
Actor *this = marker_getActor(caller);
|
||||
func_80328B8C(this, 5, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 5, 0.01f, 1);
|
||||
actor_loopAnimation(this);
|
||||
func_802BAFE4(0x13);
|
||||
FUNC_8030E624(SFX_8D_BOGGY_OHWW, 0.9f, 32000);
|
||||
@@ -56,7 +56,7 @@ void func_8038B988(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
}
|
||||
|
||||
void func_8038BA08(Actor *this){
|
||||
func_80328B8C(this, 6, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 6, 0.01f, 1);
|
||||
actor_loopAnimation(this);
|
||||
this->unk100 = NULL;
|
||||
D_80391A80 = 3;
|
||||
@@ -182,7 +182,7 @@ void GV_func_8038BEA0(Actor *this){
|
||||
this->unk100 = func_8032B16C(JIGGY_3E_GV_GRABBA);
|
||||
local->unk0 = this->unk100 != NULL ? this->unk100->unk5C : NULL;
|
||||
}
|
||||
func_80328B8C(this, this->state, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, this->state, 0.01f, 1);
|
||||
this->unk58_0 = FALSE;
|
||||
this->marker->propPtr->unk8_3 = FALSE;
|
||||
}//L8038BFF4
|
||||
@@ -195,7 +195,7 @@ void GV_func_8038BEA0(Actor *this){
|
||||
this->unk58_0 = FALSE;
|
||||
this->marker->propPtr->unk8_3 = FALSE;
|
||||
if(func_8038BB24(this)){
|
||||
func_80328B8C(this, 2, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.01f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk38_31 = 0;
|
||||
D_80391A80 = this->state;
|
||||
@@ -208,7 +208,7 @@ void GV_func_8038BEA0(Actor *this){
|
||||
|
||||
case 2: //L8038C108
|
||||
if(actor_animationIsAt(this, 0.69f)){
|
||||
func_80328B8C(this, 3, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.01f, 1);
|
||||
actor_loopAnimation(this);
|
||||
D_80391A80 = this->state;
|
||||
if(this->unk100){
|
||||
@@ -230,7 +230,7 @@ void GV_func_8038BEA0(Actor *this){
|
||||
func_8038BA08(this);
|
||||
}
|
||||
else if(this->unk38_31 >= 0xC){
|
||||
func_80328B8C(this, 4, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.01f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
D_80391A80 = this->state;
|
||||
func_802BB3DC(0, 12.0f, 0.92f);
|
||||
@@ -257,7 +257,7 @@ void GV_func_8038BEA0(Actor *this){
|
||||
func_8038BA08(this);
|
||||
}
|
||||
else if(actor_animationIsAt(this, 0.89f)){
|
||||
func_80328B8C(this, 1, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.01f, 1);
|
||||
actor_loopAnimation(this);
|
||||
D_80391A80 = this->state;
|
||||
}
|
||||
|
@@ -49,13 +49,13 @@ void GV_func_8038C658(Actor *this){
|
||||
|
||||
if(!this->unk16C_4 && this->initialized){
|
||||
this->unk16C_4 = TRUE;
|
||||
func_80328B8C(this, this->state, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, this->state, 0.01f, 1);
|
||||
}
|
||||
sp24 = GV_func_8038C5BC();
|
||||
if(GV_D_80391A90)
|
||||
marker_despawn(this->marker);
|
||||
if(this->state != sp24)
|
||||
func_80328A84(this, sp24);
|
||||
subaddie_set_state(this, sp24);
|
||||
}
|
||||
|
||||
void func_8038C748(void){
|
||||
|
@@ -23,7 +23,7 @@ ActorInfo D_803912B8 = { MARKER_F9_JINXY, ACTOR_1F7_JINXY, ASSET_422_MODEL_JINXY
|
||||
/* .code */
|
||||
void func_8038D450(ActorMarker *this_marker){
|
||||
Actor *this = marker_getActor(this_marker);
|
||||
func_80328AC8(this, 3);
|
||||
subaddie_set_state_forward(this, 3);
|
||||
}
|
||||
|
||||
void func_8038D47C(Actor *this){
|
||||
@@ -83,13 +83,13 @@ void func_8038D47C(Actor *this){
|
||||
case 1: //L8038D6C0
|
||||
if(!mapSpecificFlags_get(0xE) && mapSpecificFlags_get(0) + mapSpecificFlags_get(1) == 1){
|
||||
mapSpecificFlags_set(0xE, TRUE);
|
||||
func_80328AC8(this, 2);
|
||||
subaddie_set_state_forward(this, 2);
|
||||
this->unk38_31 = 1;
|
||||
}
|
||||
else if(!mapSpecificFlags_get(0xF) && mapSpecificFlags_get(0) + mapSpecificFlags_get(1) == 2){
|
||||
mapSpecificFlags_set(0xF, TRUE);
|
||||
func_8028F918(2);
|
||||
func_80328AC8(this, 3);
|
||||
subaddie_set_state_forward(this, 3);
|
||||
func_802BAFE4(0);
|
||||
}
|
||||
break;
|
||||
@@ -104,7 +104,7 @@ void func_8038D47C(Actor *this){
|
||||
if(--this->unk38_31 == 0){
|
||||
func_80311480(ASSET_A7C_TEXT_JINXY_ONE_EGG, 4, NULL, NULL, NULL, NULL);
|
||||
mapSpecificFlags_set(0x14, TRUE);
|
||||
func_80328AC8(this, 1);
|
||||
subaddie_set_state_forward(this, 1);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -126,7 +126,7 @@ void func_8038D47C(Actor *this){
|
||||
}
|
||||
}
|
||||
if(actor_animationIsAt(this, 0.99f)){
|
||||
func_80328AC8(this, 1);
|
||||
subaddie_set_state_forward(this, 1);
|
||||
}
|
||||
break;
|
||||
case 4: //L8038D910
|
||||
|
@@ -34,7 +34,7 @@ void func_8038E1A8(Actor *this){
|
||||
if(sp24){
|
||||
sp24->velocity_y = 1.0f;
|
||||
}
|
||||
func_80328B8C(this, 1, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.02f, 1);
|
||||
}
|
||||
else{
|
||||
if(actor_animationIsAt(this, 0.2f))
|
||||
@@ -57,7 +57,7 @@ void func_8038E2FC(ActorMarker *this_marker){
|
||||
Actor *this = marker_getActor(this_marker);
|
||||
Actor *other = func_8032A7AC(this);
|
||||
if(other){
|
||||
func_80328B8C(this, 2, 0.02f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.02f, 1);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -229,7 +229,7 @@ void func_8038E648(Actor *this){
|
||||
this->pitch = 0.0f;
|
||||
if(mapSpecificFlags_get(5)){
|
||||
func_802BAFE4(2);
|
||||
func_80328A84(this, 6);
|
||||
subaddie_set_state(this, 6);
|
||||
this->unk38_31 = 600;
|
||||
func_80244BB0(0, 0x6A, 0x7ff8, 0.3f);
|
||||
func_802D68F0(25);
|
||||
@@ -240,7 +240,7 @@ void func_8038E648(Actor *this){
|
||||
case 6: //L8038E700
|
||||
this->pitch += (this->pitch < 1.0) ? 0.017 : 1.09;
|
||||
if(90.0f <= this->pitch){
|
||||
func_80328A84(this, 7);
|
||||
subaddie_set_state(this, 7);
|
||||
this->pitch = 90.0f;
|
||||
func_8030E540(SFX_7F_HEAVYDOOR_SLAM);
|
||||
func_80244C78(0);
|
||||
@@ -250,7 +250,7 @@ void func_8038E648(Actor *this){
|
||||
case 7: //L8038E78C
|
||||
this->unk38_31 -= time_getDelta();
|
||||
if(this->unk38_31 == 0){
|
||||
func_80328A84(this, 8);
|
||||
subaddie_set_state(this, 8);
|
||||
func_80244BB0(0, 0x6A, 0x7ff8, 0.3f);
|
||||
}
|
||||
break;
|
||||
@@ -258,7 +258,7 @@ void func_8038E648(Actor *this){
|
||||
case 8: //L8038E894
|
||||
this->pitch -= 1.5;
|
||||
if(this->pitch <= 0.0f){
|
||||
func_80328A84(this, 1);
|
||||
subaddie_set_state(this, 1);
|
||||
this->pitch = 0.0f;
|
||||
func_8030E540(SFX_7F_HEAVYDOOR_SLAM);
|
||||
mapSpecificFlags_set(5, FALSE);
|
||||
@@ -295,7 +295,7 @@ void func_8038E97C(Actor *this){
|
||||
this->position_z += 117.0;
|
||||
this->position_y += 130.0;
|
||||
this->unk38_31 = 30;
|
||||
func_80328A84(this, 8);
|
||||
subaddie_set_state(this, 8);
|
||||
func_80244BB0(1, 0x6A, 0x7ff8, 0.3f);
|
||||
}
|
||||
}//L8038EA6C
|
||||
@@ -313,7 +313,7 @@ void func_8038E97C(Actor *this){
|
||||
this->position_y = tmp_f0 - (f32)130.0/30.0f;
|
||||
this->unk38_31 -= 1;
|
||||
if(this->unk38_31 == 0){
|
||||
func_80328A84(this, 1);
|
||||
subaddie_set_state(this, 1);
|
||||
func_80244C78(1);
|
||||
func_8030E540(SFX_7F_HEAVYDOOR_SLAM);
|
||||
}
|
||||
@@ -329,7 +329,7 @@ void chKazooieDoor_update(Actor *this){
|
||||
if(mapSpecificFlags_get(6)){
|
||||
func_8025A6EC(COMUSIC_2B_DING_B, -1);
|
||||
func_802BAFE4(3);
|
||||
func_80328A84(this, 6);
|
||||
subaddie_set_state(this, 6);
|
||||
func_80244BB0(1, 0x6a, 0x7ff8, 0.3f);
|
||||
this->unk1C[1] = this->position_y + 210.0f;
|
||||
this->unk1C[0] = this->position_y;
|
||||
@@ -340,7 +340,7 @@ void chKazooieDoor_update(Actor *this){
|
||||
this->position_y += 1.8;
|
||||
this->position_z -= 1.3319999999999999;
|
||||
if(this->unk1C[1] <= this->position_y){
|
||||
func_80328A84(this, 7);
|
||||
subaddie_set_state(this, 7);
|
||||
func_8030E540(SFX_7F_HEAVYDOOR_SLAM);
|
||||
func_80244C78(1);
|
||||
this->unk38_31 = 450;
|
||||
@@ -350,7 +350,7 @@ void chKazooieDoor_update(Actor *this){
|
||||
case 7: //L8038EC70
|
||||
this->unk38_31--;
|
||||
if(this->unk38_31 == 0){
|
||||
func_80328A84(this, 8);
|
||||
subaddie_set_state(this, 8);
|
||||
func_80244BB0(1, 0x6a, 0x7ff8, 0.3f);
|
||||
}
|
||||
break;
|
||||
@@ -360,7 +360,7 @@ void chKazooieDoor_update(Actor *this){
|
||||
this->position_z += 1.3319999999999999;
|
||||
if(this->position_y <= this->unk1C[0]){
|
||||
this->position_y = this->unk1C[0];
|
||||
func_80328A84(this, 1);
|
||||
subaddie_set_state(this, 1);
|
||||
func_8030E540(SFX_7F_HEAVYDOOR_SLAM);
|
||||
func_80244C78(1);
|
||||
mapSpecificFlags_set(6, FALSE);
|
||||
|
@@ -44,7 +44,7 @@ void chchimpystump_update(Actor *this){
|
||||
{
|
||||
case 1:
|
||||
if(mapSpecificFlags_get(0))
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
|
||||
_chchimpystump_80386CA0(this);
|
||||
break;
|
||||
@@ -53,7 +53,7 @@ void chchimpystump_update(Actor *this){
|
||||
this->position_y += 2.5;
|
||||
if(this->unk28 <= this->position_y){
|
||||
this->position_y = this->unk28;
|
||||
func_80328A84(this, 3);
|
||||
subaddie_set_state(this, 3);
|
||||
func_802BB41C(1);
|
||||
func_80244C78(0);
|
||||
}
|
||||
|
@@ -17,7 +17,7 @@
|
||||
|
||||
void func_80328FB0(Actor *, f32);
|
||||
|
||||
void func_80328B8C(Actor*, s32, f32, s32);
|
||||
void subaddie_set_state_with_direction(Actor*, s32, f32, s32);
|
||||
void func_802C8F70(f32);
|
||||
void timed_exitStaticCamera(f32);
|
||||
Actor *func_8032811C(s32 actor_id, s32 position[3], s32 yaw);
|
||||
@@ -78,7 +78,7 @@ int func_80386ED0(Actor * this){
|
||||
}
|
||||
|
||||
void func_80386FB0(Actor *this){
|
||||
func_80328C64(this, func_80329784(this));
|
||||
subaddie_set_ideal_yaw(this, func_80329784(this));
|
||||
func_80328FB0(this, 3.0f);
|
||||
}
|
||||
|
||||
@@ -92,7 +92,7 @@ void func_80386FE8(void){
|
||||
}
|
||||
|
||||
void func_8038708C(Actor *this, s32 anim_id){
|
||||
func_80328B8C(this, anim_id, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, anim_id, 0.0f, 1);
|
||||
func_8030E58C(SFX_24_KONGA_NOISE_3, randf2(0.9f, 1.1f));
|
||||
}
|
||||
|
||||
@@ -128,7 +128,7 @@ void func_80387168(ActorMarker *marker, ActorMarker *other_marker){
|
||||
if( actorPtr->unk38_31 == 3
|
||||
&& !jiggyscore_isCollected(JIGGY_A_MM_CONGA)
|
||||
){
|
||||
func_80328B8C(actorPtr, 8, 0 ,1);
|
||||
subaddie_set_state_with_direction(actorPtr, 8, 0 ,1);
|
||||
timed_setStaticCameraToNode(0.0f, 0x10);
|
||||
func_80324E38(0.0f, 3);
|
||||
FUNC_8030E624(SFX_84_GOBI_CRYING, 0.8f, 32750);
|
||||
@@ -238,7 +238,7 @@ void func_803876D0(Actor *this){
|
||||
){
|
||||
if(this->state > 3 && this->state < 8){
|
||||
actor_loopAnimation(this);
|
||||
func_80328B8C(this, 1, 0.76f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.76f, 1);
|
||||
}
|
||||
return;
|
||||
}
|
||||
@@ -269,7 +269,7 @@ void func_803876D0(Actor *this){
|
||||
};
|
||||
}//L80387A18
|
||||
if(actor_animationIsAt(this, 0.66f)){
|
||||
func_80328BD4(this, 6, 0, 1, 0.38f);
|
||||
subaddie_maybe_set_state_position_direction(this, 6, 0, 1, 0.38f);
|
||||
}
|
||||
if( sp3C
|
||||
&& func_8028ECAC() != 1
|
||||
@@ -278,14 +278,14 @@ void func_803876D0(Actor *this){
|
||||
&& !func_8032A9E4(((ActorLocal_Conga *)&this->local)->unk10, ((ActorLocal_Conga *)&this->local)->unk18, ((ActorLocal_Conga *)&this->local)->unk1C)
|
||||
&& !func_803872EC()
|
||||
){
|
||||
func_80328B8C(this, 4, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.0f, 1);
|
||||
}//L80387AC0
|
||||
if( func_8028ECAC() != 1
|
||||
&& func_80386ED0(this)
|
||||
&& this->unk38_31 != 0
|
||||
&& !func_803872EC()
|
||||
){
|
||||
func_80328B8C(this, 7, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 7, 0.0f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -296,12 +296,12 @@ void func_803876D0(Actor *this){
|
||||
if( animctrl_isPlayedForwards(this->animctrl) == TRUE
|
||||
&& actor_animationIsAt(this, 0.0f)
|
||||
){
|
||||
func_80328B8C(this, 5, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 5, 0.0f, 1);
|
||||
}
|
||||
else if( !animctrl_isPlayedForwards(this->animctrl)
|
||||
&& actor_animationIsAt(this, 0.001f)
|
||||
){
|
||||
func_80328B8C(this, 1, 0.76f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.76f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -310,7 +310,7 @@ void func_803876D0(Actor *this){
|
||||
actor_loopAnimation(this);
|
||||
func_80386FE8();
|
||||
if( actor_animationIsAt(this, 0.99f)){
|
||||
func_80328BD4(this, 6, 0.999f, 0, sp3C ? 1.0 : 0.4);
|
||||
subaddie_maybe_set_state_position_direction(this, 6, 0.999f, 0, sp3C ? 1.0 : 0.4);
|
||||
}//L80387C30
|
||||
if( actor_animationIsAt(this, 0.9f)
|
||||
|| actor_animationIsAt(this, 0.4f)
|
||||
@@ -330,21 +330,21 @@ void func_803876D0(Actor *this){
|
||||
|| !timedFuncQueue_is_empty()
|
||||
|| func_803872EC()
|
||||
){
|
||||
func_80328B8C(this, 1, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.0f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
case 2: //L80387D0C
|
||||
actor_playAnimationOnce(this);
|
||||
if(actor_animationIsAt(this, 0.99f)){
|
||||
func_80328B8C(this, 1, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.0f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
case 8: //L80387D4C
|
||||
actor_playAnimationOnce(this);
|
||||
if(actor_animationIsAt(this, 0.99f)){
|
||||
func_80328B8C(this, 3, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.0f, 1);
|
||||
func_80311480(ASSET_B38_TEXT_CONGA_DEFEAT, 0xe, this->position, this->marker, func_80387370, NULL);
|
||||
}
|
||||
break;
|
||||
@@ -352,7 +352,7 @@ void func_803876D0(Actor *this){
|
||||
case 3: //L80387DB8
|
||||
actor_loopAnimation(this);
|
||||
if(jiggyscore_isCollected(JIGGY_A_MM_CONGA)){
|
||||
func_80328B8C(this, 1, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.0f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -360,7 +360,7 @@ void func_803876D0(Actor *this){
|
||||
if(this->unk10_12 == 0){
|
||||
if(actor_animationIsAt(this, 0.97f)){
|
||||
((ActorLocal_Conga *)&this->local)->unkC = 1;
|
||||
func_80328B8C(this, 6, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 6, 0.0f, 1);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@@ -21,7 +21,7 @@ typedef struct chgrublin_s{
|
||||
void (*unk34)(ActorMarker *, s32);
|
||||
}ActorLocal_Grublin;
|
||||
|
||||
void func_80328B8C(Actor *, s32, f32, s32);
|
||||
void subaddie_set_state_with_direction(Actor *, s32, f32, s32);
|
||||
|
||||
void func_80388A80(Actor *);
|
||||
|
||||
@@ -51,7 +51,7 @@ void func_803889A0(ActorMarker *this, s32 arg1){
|
||||
Actor *actorPtr;
|
||||
|
||||
actorPtr = marker_getActor(this);
|
||||
func_80328B8C(actorPtr, 5, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(actorPtr, 5, 0.0f, 1);
|
||||
actor_playAnimationOnce(actorPtr);
|
||||
FUNC_8030E8B4(SFX_C2_GRUBLIN_EGH, 1.0f, 32000, actorPtr->position, 1250, 2500);
|
||||
|
||||
|
@@ -82,7 +82,7 @@ void chhut_update(Actor *this){
|
||||
sp3C[2] = this->position_z;
|
||||
sp3C[1] += 125.0;
|
||||
func_8030E484(SFX_5B_HEAVY_STUFF_FALLING);
|
||||
func_80328A84(this, 1);
|
||||
subaddie_set_state(this, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
__spawnQueue_add_1((GenFunction_1)func_803869EC, (s32)this->marker);
|
||||
func_802C8F70(this->yaw);
|
||||
@@ -98,7 +98,7 @@ void chhut_update(Actor *this){
|
||||
case 1: //L80386C2C
|
||||
if(animctrl_getAnimTimer(this->animctrl) > 0.99){
|
||||
animctrl_setTransitionDuration(this->animctrl, 0.0f);
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
this->position_y -= 160.0f;
|
||||
}
|
||||
break;
|
||||
|
@@ -4,7 +4,7 @@
|
||||
|
||||
void func_8028E668(f32 *, f32, f32, f32);
|
||||
int actor_animationIsAt(Actor *, f32);
|
||||
void func_80328B8C(Actor *, s32, f32, s32);
|
||||
void subaddie_set_state_with_direction(Actor *, s32, f32, s32);
|
||||
void timed_exitStaticCamera(f32);
|
||||
void func_80324E38(f32,s32);
|
||||
void timed_setStaticCameraToNode(f32, s32);
|
||||
@@ -70,7 +70,7 @@ void __chLMonkey_spawnJiggy(s32 x, s32 y, s32 z){
|
||||
void __chLMonkey_complete(ActorMarker *marker, enum asset_e arg1, s32 arg2){
|
||||
Actor * actor = marker_getActor(marker);
|
||||
mapSpecificFlags_set(4,1);
|
||||
func_80328A84(actor, 3);
|
||||
subaddie_set_state(actor, 3);
|
||||
timed_setStaticCameraToNode(2.3f, 0x12);
|
||||
timedFunc_set_3(2.9f,__chLMonkey_spawnJiggy, actor->position_x, actor->position_y + 150.0f, actor->position_z);
|
||||
timed_exitStaticCamera(4.3f);
|
||||
@@ -90,7 +90,7 @@ void chLMonkey_update(Actor *this){
|
||||
switch(this->state){
|
||||
case 1://L80388690
|
||||
if(mapSpecificFlags_get(2)){
|
||||
func_80328A84(this, 4);
|
||||
subaddie_set_state(this, 4);
|
||||
if(!jiggyscore_isCollected(JIGGY_9_MM_CHIMPY)){
|
||||
func_80311480(ASSET_B40_DIALOG_CHIMPY_COMPLETE, 0xE, this->position, this->marker, __chLMonkey_complete, NULL);
|
||||
}else{//L803886E8
|
||||
@@ -107,14 +107,14 @@ void chLMonkey_update(Actor *this){
|
||||
this->unk138_24 = 1;
|
||||
}//L80388774
|
||||
actor_loopAnimation(this);
|
||||
func_80328BD4(this, 2, 0.0f, -1, 0.02f);
|
||||
subaddie_maybe_set_state_position_direction(this, 2, 0.0f, -1, 0.02f);
|
||||
}
|
||||
break;
|
||||
case 2: //L803887A4
|
||||
func_80388300(&this);
|
||||
actor_playAnimationOnce(this);
|
||||
if(actor_animationIsAt(this, 0.99f)){
|
||||
func_80328B8C(this,1,0.0f,-1);
|
||||
subaddie_set_state_with_direction(this,1,0.0f,-1);
|
||||
}
|
||||
break;
|
||||
case 4: //L803887E4
|
||||
|
@@ -2,6 +2,7 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "actor.h"
|
||||
|
||||
#include "prop.h"
|
||||
|
||||
@@ -16,13 +17,13 @@ extern ActorInfo chorangepadInfo;
|
||||
extern ActorInfo chlmonkeyInfo;
|
||||
|
||||
void MM_func_803888B0(void){
|
||||
spawnableActorList_add( &chhutInfo, actor_new, 0X400);
|
||||
spawnableActorList_add( &chchimpystump, actor_new, 0x0);
|
||||
spawnableActorList_add( &chgrublinInfo, actor_new, 0X2000121);
|
||||
spawnableActorList_add( &chcongaInfo, actor_new, 0X2000160);
|
||||
spawnableActorList_add( &chorangeInfo, actor_new, 0x0);
|
||||
spawnableActorList_add( &chjujuhitboxInfo, actor_new, 0x0);
|
||||
spawnableActorList_add( &chjujuInfo, actor_new, 0X4004);
|
||||
spawnableActorList_add( &chorangepadInfo, actor_new, 0X40);
|
||||
spawnableActorList_add( &chlmonkeyInfo, actor_new, 0X100);
|
||||
spawnableActorList_add( &chhutInfo, actor_new, ACTOR_FLAG_UNKNOWN_10);
|
||||
spawnableActorList_add( &chchimpystump, actor_new, ACTOR_FLAG_NONE);
|
||||
spawnableActorList_add( &chgrublinInfo, actor_new, ACTOR_FLAG_UNKNOWN_25 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_0);
|
||||
spawnableActorList_add( &chcongaInfo, actor_new, ACTOR_FLAG_UNKNOWN_25 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_5);
|
||||
spawnableActorList_add( &chorangeInfo, actor_new, ACTOR_FLAG_NONE);
|
||||
spawnableActorList_add( &chjujuhitboxInfo, actor_new, ACTOR_FLAG_NONE);
|
||||
spawnableActorList_add( &chjujuInfo, actor_new, ACTOR_FLAG_UNKNOWN_14 | ACTOR_FLAG_UNKNOWN_2);
|
||||
spawnableActorList_add( &chorangepadInfo, actor_new, ACTOR_FLAG_UNKNOWN_6);
|
||||
spawnableActorList_add( &chlmonkeyInfo, actor_new, ACTOR_FLAG_UNKNOWN_8);
|
||||
}
|
||||
|
@@ -24,7 +24,7 @@ ActorInfo chLoggo = {
|
||||
void __chLoggo_flush(ActorMarker* marker) {
|
||||
Actor* sp1C = marker_getActor(marker);
|
||||
func_8028F918(2);
|
||||
func_80328B8C(sp1C, 2, 0.01, 1);
|
||||
subaddie_set_state_with_direction(sp1C, 2, 0.01, 1);
|
||||
actor_playAnimationOnce(sp1C);
|
||||
sp1C->unk60 = 3.2f;
|
||||
}
|
||||
@@ -67,7 +67,7 @@ void chLoggo_update(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
actor_collisionOn(this);
|
||||
marker_setCollisionScripts(this->marker, __chLoggo_collide, NULL, NULL);
|
||||
func_80328B8C(this, 1, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.01f, 1);
|
||||
actor_loopAnimation(this);
|
||||
this->unk60 = 0.0f;
|
||||
if(!fileProgressFlag_get(FILEPROG_8A_EXITED_LOGGO) && levelSpecificFlags_get(0x33)){
|
||||
|
@@ -191,7 +191,7 @@ f32 MMM_func_80388430(Actor *this, s32 arg1, s32 arg2, f32 arg3) {
|
||||
this->unk1C[1] = 11.0f;
|
||||
break;
|
||||
case 3:
|
||||
func_80328A84(this, 5);
|
||||
subaddie_set_state(this, 5);
|
||||
break;
|
||||
}
|
||||
func_8030E878(SFX_82_METAL_BREAK, randf2(0.93f, 1.07f), 0x7FF8, this->position, 100.0f, 900.0f);
|
||||
@@ -290,7 +290,7 @@ void func_80388BDC(Actor *this) {
|
||||
if (!this->unk16C_4) {
|
||||
if (this->yaw != 0.0f) {
|
||||
this->unk60 = 0.5f;
|
||||
func_80328A84(this, 7);
|
||||
subaddie_set_state(this, 7);
|
||||
this->unk38_31 = 1;
|
||||
this->yaw = 270.0f;
|
||||
} else {
|
||||
@@ -305,7 +305,7 @@ void func_80388BDC(Actor *this) {
|
||||
this->yaw = 0.0f;
|
||||
if(mapSpecificFlags_get(0)) {
|
||||
func_802BAFE4(0x21);
|
||||
func_80328A84(this, 6);
|
||||
subaddie_set_state(this, 6);
|
||||
func_80244BB0(0, 0x6A, 0x7FF8, 0.3f);
|
||||
mapSpecificFlags_set(2, 0);
|
||||
func_8025A6EC(COMUSIC_4_MMM_CLOCK_VERSION, -1);
|
||||
@@ -316,7 +316,7 @@ void func_80388BDC(Actor *this) {
|
||||
case 6:
|
||||
func_80388B2C(this, - (((this->yaw == 0.0f) || (359.0 < this->yaw)) ? 0.023 : 1.09));
|
||||
if ((this->yaw <= 270.0f) && (this->yaw > 260.0f)) {
|
||||
func_80328A84(this, 7U);
|
||||
subaddie_set_state(this, 7U);
|
||||
this->yaw = 270.0f;
|
||||
func_8030E540(0x7F);
|
||||
func_80244C78(0);
|
||||
@@ -339,14 +339,14 @@ void func_80388BDC(Actor *this) {
|
||||
} else {
|
||||
func_802BAFE4(0x23);
|
||||
}
|
||||
func_80328A84(this, 8);
|
||||
subaddie_set_state(this, 8);
|
||||
func_80244BB0(0, 0x6A, 0x7FF8, 0.3f);
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
func_80388B2C(this, 1.3f);
|
||||
if ((this->yaw >= 0.0f) && (this->yaw < 10.0f)) {
|
||||
func_80328A84(this, 1U);
|
||||
subaddie_set_state(this, 1U);
|
||||
this->yaw = 0.0f;
|
||||
func_8030E540(SFX_7F_HEAVYDOOR_SLAM);
|
||||
mapSpecificFlags_set(0, 0);
|
||||
|
@@ -75,7 +75,7 @@ void func_803893A4(Actor *this){
|
||||
break;
|
||||
case 2:
|
||||
if(actor_animationIsAt(this, 0.999f)){
|
||||
func_80328B8C(this, 1, 0.001f, 0);
|
||||
subaddie_set_state_with_direction(this, 1, 0.001f, 0);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk38_31 = 2;
|
||||
}
|
||||
@@ -86,7 +86,7 @@ void func_803893A4(Actor *this){
|
||||
void func_80389484(ActorMarker * marker, f32 anim_duration){
|
||||
Actor *this = marker_getActor(marker);
|
||||
|
||||
func_80328B8C(this, 2, 0.001f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.001f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
animctrl_setDuration(this->animctrl, anim_duration);
|
||||
this->unk38_31 = 1;
|
||||
|
@@ -74,7 +74,7 @@ bool MMM_func_80387340(ActorMarker *marker){
|
||||
if(actor->state == 2)
|
||||
return FALSE;
|
||||
|
||||
func_80328A84(actor, 2);
|
||||
subaddie_set_state(actor, 2);
|
||||
animctrl_setPlaybackType(actor->animctrl, ANIMCTRL_ONCE);
|
||||
sp1C = func_803871B0();
|
||||
if(sp1C != 0){
|
||||
|
@@ -98,7 +98,7 @@ void chAttackTutorial_setState(Actor * this, s32 arg1){
|
||||
}
|
||||
break;
|
||||
}//L803874A8
|
||||
func_80328A84(this, arg1);
|
||||
subaddie_set_state(this, arg1);
|
||||
}
|
||||
|
||||
int func_803874C4(void){
|
||||
|
@@ -8,7 +8,7 @@
|
||||
f32 func_80309724(f32*);
|
||||
void func_802C4218(s32, f32, f32, f32);
|
||||
void func_803252D0(f32, s32);
|
||||
void func_80328B8C(Actor *, s32, f32, s32);
|
||||
void subaddie_set_state_with_direction(Actor *, s32, f32, s32);
|
||||
|
||||
//typedefs
|
||||
typedef struct ch_vegatable{
|
||||
@@ -208,7 +208,7 @@ void func_80387C28(Actor * this){
|
||||
func_803252D0(1.5f, 7);
|
||||
actor_collisionOff(this);
|
||||
if(local->unkC != 3){
|
||||
func_80328B8C(this, 3, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.0f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
}
|
||||
else{
|
||||
@@ -337,7 +337,7 @@ void func_80388080(Actor *this){
|
||||
this->unk1C_y += (local->unkC == 3)? 270.0 : 85.0;
|
||||
}
|
||||
//L80388384
|
||||
func_80328A84(this, 4);
|
||||
subaddie_set_state(this, 4);
|
||||
}
|
||||
break;
|
||||
case 4: //L8038839C
|
||||
@@ -352,7 +352,7 @@ void func_80388080(Actor *this){
|
||||
func_80387F00(this);
|
||||
|
||||
actor_collisionOn(this);
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
}//L80388494
|
||||
|
||||
if(!this->unk138_23){
|
||||
|
@@ -8,7 +8,7 @@ void func_8028E668(f32*, f32, f32, f32);
|
||||
void func_80328FB0(Actor *, f32);
|
||||
void func_8030DA44(u8);
|
||||
void timed_exitStaticCamera(f32);
|
||||
void func_80328B8C(Actor *, s32, f32, s32);
|
||||
void subaddie_set_state_with_direction(Actor *, s32, f32, s32);
|
||||
|
||||
//static types
|
||||
typedef struct sm_2900_struct{
|
||||
@@ -126,7 +126,7 @@ void func_80388FA0(Actor *this, s32 arg1){
|
||||
other = subaddie_getLinkedActor(this);
|
||||
myOther = this->unk100;
|
||||
if(myOther && other && myOther->unk14_20 == 0xB8)
|
||||
func_80328B8C(other, 3, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(other, 3, 0.0001f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk44_31 = func_8030D90C();
|
||||
sfxsource_setSfxId(this->unk44_31, 0x3f9);
|
||||
@@ -150,7 +150,7 @@ void func_80388FA0(Actor *this, s32 arg1){
|
||||
other = subaddie_getLinkedActor(this);
|
||||
myOther = this->unk100;
|
||||
if(myOther && other && myOther->unk14_20 == 0xB8)
|
||||
func_80328B8C(other, 2, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(other, 2, 0.0001f, 1);
|
||||
animctrl_setSmoothTransition(this->animctrl, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk44_31 = func_8030D90C();
|
||||
@@ -162,7 +162,7 @@ void func_80388FA0(Actor *this, s32 arg1){
|
||||
func_8028F94C(2, this->position);
|
||||
break;
|
||||
}
|
||||
func_80328B8C(this, arg1, 0.0001f, 1);
|
||||
subaddie_set_state_with_direction(this, arg1, 0.0001f, 1);
|
||||
}
|
||||
|
||||
void func_80389214(ActorMarker *marker, enum asset_e text_id, s32 arg2){
|
||||
|
@@ -57,7 +57,7 @@ void func_8038A3B0(Actor *this){
|
||||
|
||||
actor_collisionOff(this);
|
||||
if(this->state == 2 && levelSpecificFlags_get(sp24 + 0x35)){
|
||||
func_80328A84(this, 1);
|
||||
subaddie_set_state(this, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
}
|
||||
|
||||
|
@@ -52,7 +52,7 @@ void func_8038A4DC(Actor *this, s32 arg1){
|
||||
mapSpecificFlags_set(5, 1);
|
||||
break;
|
||||
}//L8038A5BC
|
||||
func_80328A84(this, arg1);
|
||||
subaddie_set_state(this, arg1);
|
||||
}
|
||||
|
||||
void SM_func_8038A5D8(Actor *this){
|
||||
|
@@ -145,7 +145,7 @@ void SM_func_80386EF4(Actor *this) {
|
||||
} else {
|
||||
this->unk100 = NULL;
|
||||
}
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -25,7 +25,7 @@ void SM_func_80386FE0(Actor *this){
|
||||
case 1://L80387064
|
||||
if(this->unk38_31++ == 2){
|
||||
this->unk10_12 = actorArray_actorCount(ACTOR_16F_QUARRIE);
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
}
|
||||
break;
|
||||
case 2://L803870C4
|
||||
|
@@ -60,7 +60,7 @@ void func_80387520(ActorMarker *caller, enum asset_e text_id, s32 arg1){
|
||||
local->unk24 = 0;
|
||||
}
|
||||
else{
|
||||
func_80328B8C(this, 2, 0, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0, 1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -77,7 +77,7 @@ void func_803875D4(ActorMarker *marker){
|
||||
Actor *this = marker_getActor(reinterpret_cast(ActorMarker *, marker));
|
||||
enum asset_e text_id;
|
||||
|
||||
func_80328A84(this, 4);
|
||||
subaddie_set_state(this, 4);
|
||||
actor_loopAnimation(this);
|
||||
this->unk28 = 0.0f;
|
||||
|
||||
@@ -97,7 +97,7 @@ void func_80387678(Actor *this){
|
||||
func_8028F918(2);
|
||||
timed_setStaticCameraToNode(0.0f, 4);
|
||||
timedFunc_set_1(1.0f, (GenFunction_1)func_803875D4, (s32)this->marker);
|
||||
func_80328B8C(this, 1, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.0f, 1);
|
||||
}
|
||||
|
||||
void func_8038771C(Actor *this){
|
||||
@@ -140,7 +140,7 @@ void func_803878CC(Actor * this){
|
||||
|
||||
if(!this->unk16C_4){
|
||||
if(this->state == 3){
|
||||
func_80328B8C(this, 2, 0.0f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.0f, 1);
|
||||
}
|
||||
this->unk16C_4 = TRUE;
|
||||
}//L80387970
|
||||
@@ -151,7 +151,7 @@ void func_803878CC(Actor * this){
|
||||
){
|
||||
func_80311480(0xa0b, 0xe, this->position, this->marker, func_80387520, NULL);
|
||||
this->unk138_24 = TRUE;
|
||||
func_80328AC8(this, 3);
|
||||
subaddie_set_state_forward(this, 3);
|
||||
}
|
||||
|
||||
if( mapSpecificFlags_get(0)
|
||||
@@ -173,7 +173,7 @@ void func_803878CC(Actor * this){
|
||||
}
|
||||
func_80387774(&this);
|
||||
|
||||
if(func_80328BD4(this, 2, 0.0f, 1, 0.007f))
|
||||
if(subaddie_maybe_set_state_position_direction(this, 2, 0.0f, 1, 0.007f))
|
||||
break;
|
||||
|
||||
func_80328FB0(this, 3.0f);
|
||||
@@ -185,7 +185,7 @@ void func_803878CC(Actor * this){
|
||||
case 2:// 80387B10
|
||||
func_80387774(&this);
|
||||
if( actor_animationIsAt(this, 0.99f)
|
||||
&& func_80328BD4(this, 1, 0.0f, 1, 0.78f)
|
||||
&& subaddie_maybe_set_state_position_direction(this, 1, 0.0f, 1, 0.78f)
|
||||
){
|
||||
this->unk28 = 4.0f;
|
||||
break;
|
||||
@@ -214,7 +214,7 @@ void func_803878CC(Actor * this){
|
||||
func_80328FB0(this, 3.0f);
|
||||
local = (ActorLocal_Blubber*)&this->local;
|
||||
if(actor_animationIsAt(this, 0.99f) && !local->unk24){
|
||||
func_80328A84(this, 5);
|
||||
subaddie_set_state(this, 5);
|
||||
this->unk28 = 8.0f;
|
||||
}
|
||||
}
|
||||
|
@@ -35,7 +35,7 @@ void __chClam_func_803863F0(enum sfx_e sfx_id, f32 arg1, s32 arg2, f32 position[
|
||||
}
|
||||
|
||||
void __chClam_func_80386454(Actor *this){
|
||||
func_80328B8C(this, 1, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.01f, 1);
|
||||
actor_loopAnimation(this);
|
||||
animctrl_setDuration(this->animctrl, randf2(1.9f, 2.1f));
|
||||
}
|
||||
@@ -286,7 +286,7 @@ void chClam_update(Actor *this){
|
||||
if(this->position_y <= sp48 + 15.0f && sp48 - 15.0f <= this->position_y){
|
||||
this->position_y = sp48;
|
||||
this->unk38_31 = sp44;
|
||||
func_80328B8C(this, 3, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.01f, 1);
|
||||
actor_loopAnimation(this);
|
||||
this->velocity_x = 0.0f;
|
||||
animctrl_setDuration(this->animctrl, 0.6f);
|
||||
@@ -298,7 +298,7 @@ void chClam_update(Actor *this){
|
||||
switch(this->state){
|
||||
case 1://L80387170
|
||||
if(__chClam_rotateTowardTarget(this, 140)){
|
||||
func_80328B8C(this, 2, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.01f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
animctrl_setDuration(this->animctrl, 1.0f);
|
||||
__chClam_func_803863F0(SFX_3F2_UNKNOWN, randf2(1.0f, 1.1f), 22000, this->position, 1500.0f, 2000.0f);
|
||||
|
@@ -83,7 +83,7 @@ void chLeaky_update(Actor *this) {
|
||||
void __chLeaky_startCutscene(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
Actor *this = marker_getActor(caller);
|
||||
Struct73s *temp_v0;
|
||||
func_80328A84(this, 2);
|
||||
subaddie_set_state(this, 2);
|
||||
temp_v0 = func_8034C5AC(300);
|
||||
if(temp_v0 != NULL){
|
||||
func_8034E7B8(temp_v0, -600, 4.0f, 2, 10.0f);
|
||||
|
@@ -56,7 +56,7 @@ Actor *func_803894C0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
}
|
||||
|
||||
void TTC_func_80389530(Actor *this){
|
||||
func_80328B8C(this, 1, 0.2f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.2f, 1);
|
||||
this->marker->collidable = FALSE;
|
||||
this->unk38_31 = 0;
|
||||
FUNC_8030E8B4(SFX_6C_LOCKUP_CLOSING, 1.0f, 32000, this->position, 1250, 2500);
|
||||
@@ -65,7 +65,7 @@ void TTC_func_80389530(Actor *this){
|
||||
|
||||
void func_8038959C(Actor *this){
|
||||
func_80389468();
|
||||
func_80328B8C(this, 2, 0.2f, 1);
|
||||
subaddie_set_state_with_direction(this, 2, 0.2f, 1);
|
||||
this->unk38_31 = 1;
|
||||
FUNC_8030E8B4(SFX_6B_LOCKUP_OPENING, 1.0f, 32000, this->position, 1250, 2500);
|
||||
}
|
||||
@@ -94,7 +94,7 @@ void func_80389600(Actor *this){
|
||||
case 1: //L803896F0
|
||||
if(!this->initialized){
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
func_80328B8C(this, 1, 0.2f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.2f, 1);
|
||||
this->marker->collidable = FALSE;
|
||||
this->unk38_31 = 0;
|
||||
this->initialized = TRUE;
|
||||
@@ -119,7 +119,7 @@ void func_80389600(Actor *this){
|
||||
}
|
||||
|
||||
if(actor_animationIsAt(this, 0.5f)){
|
||||
func_80328B8C(this, 3, 0.5f, 1);
|
||||
subaddie_set_state_with_direction(this, 3, 0.5f, 1);
|
||||
}
|
||||
if(0.15 < animctrl_getAnimTimer(this->animctrl)){
|
||||
this->marker->collidable = TRUE;
|
||||
@@ -135,7 +135,7 @@ void func_80389600(Actor *this){
|
||||
|
||||
if(!(local->unk4 < tmp_v1)){
|
||||
local->unk4 = 0;
|
||||
func_80328B8C(this, 4, 0.5f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.5f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -66,7 +66,7 @@ Actor *func_80387EB0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
||||
}
|
||||
|
||||
void TTC_func_80387F18(Actor *this) {
|
||||
func_80328AEC(this, 3);
|
||||
subaddie_set_state_looped(this, 3);
|
||||
this->unk1C[0] = 0.0f;
|
||||
switch((s32)this->unk60){
|
||||
case 0x78:
|
||||
@@ -94,7 +94,7 @@ void TTC_func_80387FB0(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
void TTC_func_80387FF4(Actor *this) {
|
||||
s32 i;
|
||||
|
||||
func_80328B8C(this, 4, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 4, 0.01f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
for(i = 0; i < 3; i ++){
|
||||
FUNC_8030E8B4(SFX_79_TICKER_DEATH, 0.5f, 17000, this->position, 1500, 3000);
|
||||
@@ -127,7 +127,7 @@ void func_80388178(ActorMarker *this_marker, ActorMarker *other_marker) {
|
||||
func_8032B4DC(this, other_marker, 7);
|
||||
|
||||
if (this->unk60 == 40.0f) {
|
||||
func_80328B8C(this, 6, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 6, 0.01f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
for(i = 0; i < 3; i++){
|
||||
FUNC_8030E8B4(SFX_78_EAGLECRY, 0.7f, 20000, this->position, 1500, 3000);
|
||||
@@ -220,7 +220,7 @@ void func_80388434(Actor *this){
|
||||
case 1:// L80388578
|
||||
if(!this->initialized){
|
||||
animctrl_setTransitionDuration(this->animctrl, 0.35f);
|
||||
func_80328B8C(this, 1, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 1, 0.01f, 1);
|
||||
this->unk60 = 120.0f;
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
marker_setCollisionScripts(this->marker, func_803883C8, func_80388344, func_80388178);
|
||||
@@ -233,7 +233,7 @@ void func_80388434(Actor *this){
|
||||
&& temp_v0 != 1
|
||||
&& temp_v0 != 10
|
||||
){
|
||||
func_80328B8C(this, 5, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 5, 0.01f, 1);
|
||||
if(func_80311480(0xa0e, 0xf, this->position, this->marker, TTC_func_80387FB0, NULL)){
|
||||
this->unk138_24 = TRUE;
|
||||
}
|
||||
@@ -258,7 +258,7 @@ void func_80388434(Actor *this){
|
||||
|
||||
case 2:// L8038872C
|
||||
if(!func_8038812C(this)){
|
||||
func_80328AEC(this, 1);
|
||||
subaddie_set_state_looped(this, 1);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -284,7 +284,7 @@ void func_80388434(Actor *this){
|
||||
}
|
||||
|
||||
if(2.0f <= this->unk1C[0]){
|
||||
func_80328AEC(this, 2);
|
||||
subaddie_set_state_looped(this, 2);
|
||||
this->unk38_31 = 0;
|
||||
break;
|
||||
}
|
||||
@@ -322,7 +322,7 @@ void func_80388434(Actor *this){
|
||||
}
|
||||
|
||||
if(actor_animationIsAt(this, 0.99f)){
|
||||
func_80328B8C(this, 7, 0.01f, 1);
|
||||
subaddie_set_state_with_direction(this, 7, 0.01f, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -76,7 +76,7 @@ void chtreasure_update(Actor *this){
|
||||
this->unk5C = animctrl_getAnimTimer(this->animctrl) *300.0; //radius of 300.0f
|
||||
if(animctrl_isStopped(this->animctrl)){
|
||||
actor_loopAnimation(this);
|
||||
func_80328AC8(this, 2);
|
||||
subaddie_set_state_forward(this, 2);
|
||||
this->marker->propPtr->unk8_3 = 1;
|
||||
actor_collisionOn(this);
|
||||
func_8030E878(SFX_3F2_UNKNOWN, randf2(1.2f, 1.3f), 20000, this->position, 200.0f, 1500.0f);
|
||||
|
@@ -216,9 +216,8 @@ void sns_write_payload_over_heap(void)
|
||||
|
||||
sns_generate_payload(snsBasePayloadPtr2);
|
||||
|
||||
// memcpy
|
||||
func_80254630(snsBasePayloadPtr3, snsBasePayloadPtr2, sizeof(*snsBasePayloadPtr2));
|
||||
func_80254630(snsBasePayloadPtr4, snsBasePayloadPtr2, sizeof(*snsBasePayloadPtr2));
|
||||
wmemcpy(snsBasePayloadPtr3, snsBasePayloadPtr2, sizeof(*snsBasePayloadPtr2));
|
||||
wmemcpy(snsBasePayloadPtr4, snsBasePayloadPtr2, sizeof(*snsBasePayloadPtr2));
|
||||
|
||||
for (i = 1; i < 5; i++)
|
||||
{
|
||||
@@ -231,8 +230,7 @@ void sns_write_payload_over_heap(void)
|
||||
val1 -= val1 & 0x1FFF;
|
||||
|
||||
for (val1 += 0x2C00; val1 < val3; val1 += 0x2000)
|
||||
// memcpy
|
||||
func_80254630((void *)val1, snsBasePayloadPtr2, sizeof(*snsBasePayloadPtr2));
|
||||
wmemcpy((void *)val1, snsBasePayloadPtr2, sizeof(*snsBasePayloadPtr2));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -79,10 +79,10 @@ f32 viewport_getYaw(void){
|
||||
return viewportRotation[1];
|
||||
}
|
||||
|
||||
void func_8024C794(f32 *arg0, f32 *arg1, f32 *arg2){
|
||||
*arg0 = viewportRotation[0];
|
||||
*arg1 = viewportRotation[1];
|
||||
*arg2 = viewportRotation[2];
|
||||
void func_8024C794(f32 *pitch, f32 *yaw, f32 *roll){
|
||||
*pitch = viewportRotation[0];
|
||||
*yaw = viewportRotation[1];
|
||||
*roll = viewportRotation[2];
|
||||
}
|
||||
|
||||
void func_8024C7B8(Gfx **gfx, Mtx **mtx){
|
||||
|
@@ -141,7 +141,7 @@ void memcpy(void * dst, void *src, int size){
|
||||
}
|
||||
}
|
||||
|
||||
void func_80254630(void * dst, void *src, int size){
|
||||
void wmemcpy(void * dst, void *src, int size){
|
||||
while(size > 0){
|
||||
*(u32*)dst = *(u32*)src;
|
||||
size -= 4;
|
||||
@@ -150,22 +150,16 @@ void func_80254630(void * dst, void *src, int size){
|
||||
}
|
||||
}
|
||||
|
||||
void func_80254658(u8* arg0, u8* arg1, s32 arg2) {
|
||||
if(arg0 < arg1){
|
||||
if(arg2--){
|
||||
do{
|
||||
*(arg0++) = *(arg1++);
|
||||
|
||||
}while(arg2--);
|
||||
void memmove(u8* dst, u8* src, s32 n) {
|
||||
if(dst < src){ //copy
|
||||
while(n--){
|
||||
*(dst++) = *(src++);
|
||||
}
|
||||
}else{
|
||||
arg0 += arg2 -1;
|
||||
arg1 += arg2 -1;
|
||||
if(arg2--){
|
||||
do{
|
||||
*(arg0--) = *(arg1--);
|
||||
|
||||
}while(arg2--);
|
||||
}else{ //copy backwards to avoid data lose
|
||||
dst += n -1;
|
||||
src += n -1;
|
||||
while(n--){
|
||||
*(dst--) = *(src--);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -244,11 +238,11 @@ void func_80254908(void){
|
||||
}
|
||||
}
|
||||
|
||||
u32 _heap_get_occupied_size(void){
|
||||
static u32 _heap_get_occupied_size(void){
|
||||
return heap_occupiedBytes;
|
||||
}
|
||||
|
||||
u32 func_8025496C(void){
|
||||
u32 heap_get_occupied_size(void){
|
||||
return _heap_get_occupied_size();
|
||||
}
|
||||
|
||||
@@ -356,7 +350,7 @@ void *malloc(s32 size){
|
||||
animCache_flushStale();
|
||||
|
||||
if(!func_80254B84(0))
|
||||
func_8028873C(0);
|
||||
animBinCache_flushStale(0); //nonpersistent anim
|
||||
|
||||
if(!func_80254B84(0))
|
||||
func_8032AD7C(2);
|
||||
@@ -377,7 +371,7 @@ void *malloc(s32 size){
|
||||
func_802F1294(); //particleEmitters
|
||||
|
||||
if(!func_80254B84(0))
|
||||
func_8028873C(1); //AnimationFileCache
|
||||
animBinCache_flushStale(1); //persistent anim
|
||||
|
||||
if(v1 = func_80254B84(0)){}
|
||||
else
|
||||
@@ -591,8 +585,8 @@ void *realloc(void *ptr, s32 size){
|
||||
return ptr;
|
||||
}
|
||||
|
||||
u32 func_80255498(void){
|
||||
return HEAP_SIZE - func_8025496C();
|
||||
u32 heap_get_free_size(void){
|
||||
return HEAP_SIZE - heap_get_occupied_size();
|
||||
}
|
||||
|
||||
s32 heap_findLargestEmptyBlock(s32 *size_ptr){
|
||||
|
@@ -2,6 +2,8 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/ba/anim.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
|
||||
extern f32 func_802E4B38(void);
|
||||
extern f32 ml_mapRange_f(f32, f32, f32, f32, f32);
|
||||
@@ -53,14 +55,14 @@ void __baanim_update_scaleToHorizontalVelocity(void) {
|
||||
f32 scale;
|
||||
|
||||
scale = (baAnimScale.scalable_duration != 0) ? baAnimScale.duration_scale : 1.0f;
|
||||
_get_velocity(velocity);
|
||||
baphysics_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 __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_setDuration(playerAnimCtrl, ml_clamp_f(ml_mapRange_f(mlAbsF(baphysics_get_vertical_velocity()), baAnimScale.velocity_min, baAnimScale.velocity_max, baAnimScale.duration_min, baAnimScale.duration_max), baAnimMinDuration, baAnimMaxDuration));
|
||||
animctrl_update(playerAnimCtrl);
|
||||
}
|
||||
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
#include "prop.h"
|
||||
#include "SnS.h"
|
||||
@@ -105,8 +106,8 @@ void __baMarker_8028B7F4(void){
|
||||
yaw_setIdeal(func_8029B41C());
|
||||
yaw_setUpdateState(1);
|
||||
func_8029957C(3);
|
||||
func_802978DC(2);
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_type(BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_8029151C(0xC);
|
||||
}
|
||||
|
||||
@@ -686,7 +687,7 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
||||
|
||||
case MARKER_6B_GLOOPBUBBLE: //L8028CD20
|
||||
if(func_8028EE84() == BSWATERGROUP_2_UNDERWATER){
|
||||
func_803463D4(ITEM_17_AIR, func_80301DBC(2));
|
||||
func_803463D4(ITEM_17_AIR, fxairscore_count_to_time(2));
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -3,6 +3,7 @@
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/model.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
void func_80254008(void);
|
||||
extern void func_80256E24(f32[3], f32, f32, f32, f32, f32);
|
||||
@@ -317,7 +318,7 @@ void baModel_80292284(f32 arg0[3], s32 arg1){
|
||||
arg0[1] += sp44[1];
|
||||
arg0[2] += sp44[2];
|
||||
}
|
||||
func_802976C0(sp38);
|
||||
baphysics_get_position_change(sp38);
|
||||
arg0[0] = arg0[0] + sp38[0];
|
||||
arg0[1] = arg0[1] + sp38[1];
|
||||
arg0[2] = arg0[2] + sp38[2];
|
||||
|
432
src/core2/ba/physics.c
Normal file
432
src/core2/ba/physics.c
Normal file
@@ -0,0 +1,432 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
#define _SQ3v1(v) (v[0] * v[0] + v[1] * v[1] + v[2] * v[2])
|
||||
|
||||
extern f32 ml_sin_deg(f32);
|
||||
extern f32 ml_dotProduct_vec3f(f32[3], f32[3]);
|
||||
extern void func_80256D0C(f32, f32, f32, f32, f32, f32 *, f32 *, f32 *);
|
||||
extern void func_80256E24(f32[3], f32, f32, f32, f32, f32);
|
||||
extern f32 climbGetRadius(void);
|
||||
extern f32 func_8029CED0(void);
|
||||
|
||||
/* .data */
|
||||
f32 baphysics_default_gravity = -2700.0f; //defaultGravity
|
||||
f32 baphysics_default_terminal_velocity = -4000.0f;
|
||||
|
||||
/* .bss */
|
||||
s32 baphysics_type;
|
||||
f32 s_next_position[3];
|
||||
f32 s_player_velocity[3]; //velocity?
|
||||
f32 baphysics_target_velocity[3];
|
||||
f32 s_delta_position[3];
|
||||
f32 D_8037C4E4;
|
||||
f32 s_gravity; //gravity
|
||||
f32 s_terminal_velocity;
|
||||
f32 baphysics_target_horizontal_velocity;
|
||||
f32 baphysics_target_yaw; //angle
|
||||
f32 baphysics_acceleration;
|
||||
f32 D_8037C4FC;
|
||||
f32 D_8037C500;
|
||||
|
||||
struct {
|
||||
u8 state;
|
||||
//u8 pad1[0x3];
|
||||
f32 start_position[3];
|
||||
f32 end_position[3];
|
||||
f32 duration;
|
||||
f32 elapsed_time;
|
||||
} baphysics_goto;
|
||||
|
||||
/* .code */
|
||||
void __baphysics_update_normal(void){
|
||||
f32 sp84[3];
|
||||
f32 sp78[3];
|
||||
f32 sp6C[3];
|
||||
f32 sp60[3];
|
||||
f32 sp54[3];
|
||||
f32 sp48[3];
|
||||
f32 sp44;
|
||||
f32 sp40;
|
||||
|
||||
|
||||
func_80256D0C(0.0f, baphysics_target_yaw, 0.0f, 0.0f, baphysics_target_horizontal_velocity, &baphysics_target_velocity[0], &baphysics_target_velocity[1], &baphysics_target_velocity[2]);
|
||||
sp6C[0] = s_player_velocity[0];\
|
||||
sp6C[1] = 0.0f;\
|
||||
sp6C[2] = s_player_velocity[2];
|
||||
// sp6C[1] = s_player_velocity[1];
|
||||
|
||||
ml_vec3f_copy(sp60, baphysics_target_velocity);
|
||||
sp60[1] = 0.0f;
|
||||
if(func_80294548()){
|
||||
func_80294480(sp54);
|
||||
ml_vec3f_normalize_copy(sp48, sp60);
|
||||
sp44 = ml_dotProduct_vec3f(sp48, sp54);
|
||||
sp40 = get_slope_timer();
|
||||
if(sp44 != 0.0f){
|
||||
if(sp44 < 0){
|
||||
//sp44 = 0.0f;
|
||||
if(func_8028B3B4()){
|
||||
sp40 = ml_map_f(sp40, 0.0f, 1.0f, sp44*0.5, -1.0f);
|
||||
}
|
||||
else{//L80296E3C
|
||||
sp40 = 0.5*sp44;
|
||||
}//L80296E54
|
||||
ml_vec3f_scale(sp60, 1.0 + sp40);
|
||||
}
|
||||
else{//L80296E84
|
||||
sp40 = sp44*0.2;
|
||||
ml_vec3f_scale(sp60, sp40 + 1.0);
|
||||
}
|
||||
}//L80296EBC
|
||||
}//L80296EBC
|
||||
|
||||
ml_vec3f_scale_copy(sp84, sp60, func_8029CED0());
|
||||
ml_vec3f_scale_copy(sp78, sp6C, func_8029CED0());
|
||||
ml_vec3f_diff(sp84, sp78);
|
||||
ml_vec3f_scale(sp84, time_getDelta()/0.0333333);
|
||||
s_player_velocity[0] += sp84[0];\
|
||||
s_player_velocity[1] += sp84[1];\
|
||||
s_player_velocity[2] += sp84[2];
|
||||
|
||||
sp6C[0] = s_player_velocity[0];
|
||||
sp6C[2] = s_player_velocity[2];
|
||||
ml_vec3f_scale_copy(s_delta_position, sp6C, 1.0f);
|
||||
if(mlAbsF(s_player_velocity[0]) < 0.0001)
|
||||
s_player_velocity[0] = 0;
|
||||
|
||||
if(mlAbsF(s_player_velocity[2]) < 0.0001)
|
||||
s_player_velocity[2] = 0;
|
||||
|
||||
//update velocity for gravity
|
||||
s_player_velocity[1] = s_player_velocity[1] + time_getDelta()*s_gravity ;
|
||||
if(s_player_velocity[1] < s_terminal_velocity)
|
||||
s_player_velocity[1] = s_terminal_velocity;
|
||||
|
||||
//update position
|
||||
s_delta_position[1] = s_delta_position[1] + s_player_velocity[1];
|
||||
ml_vec3f_scale(s_delta_position, time_getDelta());
|
||||
s_next_position[0] += s_delta_position[0];\
|
||||
s_next_position[1] += s_delta_position[1];\
|
||||
s_next_position[2] += s_delta_position[2];
|
||||
}
|
||||
|
||||
void __baphysics_update_no_gravity(void){
|
||||
f32 sp24[3];
|
||||
//update velocity
|
||||
ml_vec3f_diff_copy(sp24, baphysics_target_velocity, s_player_velocity);
|
||||
ml_vec3f_scale(sp24, time_getDelta()*baphysics_acceleration);
|
||||
if(_SQ3v1(sp24) < 0.02){
|
||||
ml_vec3f_copy(s_player_velocity, baphysics_target_velocity);
|
||||
}
|
||||
else{
|
||||
s_player_velocity[0] += sp24[0];\
|
||||
s_player_velocity[1] += sp24[1];\
|
||||
s_player_velocity[2] += sp24[2];
|
||||
}
|
||||
//update position
|
||||
s_delta_position[0] = s_player_velocity[0];\
|
||||
s_delta_position[1] = s_player_velocity[1];\
|
||||
s_delta_position[2] = s_player_velocity[2];
|
||||
ml_vec3f_scale( s_delta_position, time_getDelta());
|
||||
|
||||
s_next_position[0] += s_delta_position[0];\
|
||||
s_next_position[1] += s_delta_position[1];\
|
||||
s_next_position[2] += s_delta_position[2];
|
||||
}
|
||||
|
||||
void func_802971DC(void){
|
||||
s_player_velocity[1] = s_player_velocity[1] + time_getDelta()*s_gravity;
|
||||
if(s_player_velocity[1] < s_terminal_velocity)
|
||||
s_player_velocity[1] = s_terminal_velocity;
|
||||
|
||||
s_delta_position[0] = s_player_velocity[0];\
|
||||
s_delta_position[1] = s_player_velocity[1];\
|
||||
s_delta_position[2] = s_player_velocity[2];
|
||||
ml_vec3f_scale(s_delta_position, time_getDelta());
|
||||
|
||||
s_next_position[0] += s_delta_position[0];\
|
||||
s_next_position[1] += s_delta_position[1];\
|
||||
s_next_position[2] += s_delta_position[2];
|
||||
}
|
||||
|
||||
void __baphysics_update_climb(void){
|
||||
f32 sp34[3];
|
||||
f32 sp28[3];
|
||||
|
||||
climbGetBottom(sp28);
|
||||
s_next_position[0] = sp28[0];
|
||||
s_next_position[2] = sp28[2];
|
||||
func_80256E24(sp34, 0.0f, yaw_get(), 0.0f, 0.0f, -climbGetRadius());
|
||||
|
||||
s_player_velocity[2] = 0.0f;
|
||||
s_next_position[0] += sp34[0];\
|
||||
s_next_position[1] += sp34[1];\
|
||||
s_next_position[2] += sp34[2];
|
||||
|
||||
|
||||
s_player_velocity[0] = baphysics_target_velocity[0] = baphysics_target_velocity[2] = s_player_velocity[2];
|
||||
__baphysics_update_no_gravity();
|
||||
}
|
||||
|
||||
void func_8029737C(void){
|
||||
s_delta_position[0] = s_player_velocity[0];
|
||||
s_delta_position[1] = s_player_velocity[1];
|
||||
s_delta_position[2] = s_player_velocity[2];
|
||||
ml_vec3f_scale(s_delta_position, time_getDelta());
|
||||
s_next_position[0] += s_delta_position[0];
|
||||
s_next_position[1] += s_delta_position[1];
|
||||
s_next_position[2] += s_delta_position[2];
|
||||
}
|
||||
|
||||
void func_8029740C(void){
|
||||
s_delta_position[0] = s_player_velocity[0];
|
||||
s_delta_position[1] = s_player_velocity[1];
|
||||
s_delta_position[2] = s_player_velocity[2];
|
||||
ml_vec3f_clear(s_player_velocity);
|
||||
ml_vec3f_scale(s_delta_position, time_getDelta());
|
||||
s_next_position[0] += s_delta_position[0];
|
||||
s_next_position[1] += s_delta_position[1];
|
||||
s_next_position[2] += s_delta_position[2];
|
||||
}
|
||||
|
||||
void __baphysics_update_goto(void){
|
||||
f32 sp2C;
|
||||
|
||||
switch(baphysics_goto.state){
|
||||
case 0: //L80297628
|
||||
break;
|
||||
case 1: //L802974E8
|
||||
baphysics_goto.state = 2;
|
||||
_player_getPosition(baphysics_goto.start_position);
|
||||
baphysics_goto.elapsed_time = 0.0f;
|
||||
baphysics_set_velocity(0);
|
||||
break;
|
||||
case 2: //L80297510
|
||||
baphysics_goto.elapsed_time += time_getDelta();
|
||||
sp2C = ml_map_f(baphysics_goto.elapsed_time, 0.0f, baphysics_goto.duration, 0.0f, 1.0f);
|
||||
ml_vec3f_copy(s_player_velocity, s_next_position);
|
||||
s_next_position[0] = ml_interpolate_f(sp2C, baphysics_goto.start_position[0], baphysics_goto.end_position[0]);
|
||||
s_next_position[1] = ml_interpolate_f(sp2C, baphysics_goto.start_position[1], baphysics_goto.end_position[1]);
|
||||
s_next_position[2] = ml_interpolate_f(sp2C, baphysics_goto.start_position[2], baphysics_goto.end_position[2]);
|
||||
ml_vec3f_diff_copy(s_player_velocity, s_next_position, s_player_velocity);
|
||||
ml_vec3f_scale(s_player_velocity, 1.0/time_getDelta());
|
||||
if(1.0 == sp2C){
|
||||
baphysics_set_velocity(0);
|
||||
baphysics_goto.state = 3;
|
||||
}
|
||||
break;
|
||||
case 3: //L80297628
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void __baphysics_update_transform(void){
|
||||
f32 temp_f0;
|
||||
|
||||
D_8037C500 += time_getDelta();
|
||||
temp_f0 = func_80257A44(D_8037C500, 1.2f);
|
||||
temp_f0 = ml_sin_deg(temp_f0*360.0f);
|
||||
s_next_position[1] = 5.0*temp_f0 + D_8037C4FC;
|
||||
}
|
||||
|
||||
void baphysics_get_position_change(f32 arg0[3]){
|
||||
ml_vec3f_copy(arg0, s_delta_position);
|
||||
}
|
||||
|
||||
void baphysics_init(void){
|
||||
baphysics_type = 0;
|
||||
ml_vec3f_clear(s_player_velocity);
|
||||
ml_vec3f_clear(baphysics_target_velocity);
|
||||
ml_vec3f_clear(s_delta_position);
|
||||
ml_vec3f_clear(s_next_position);
|
||||
D_8037C4E4 = 0.0f;
|
||||
baphysics_reset();
|
||||
}
|
||||
|
||||
void baphysics_update(void){
|
||||
_player_getPosition(s_next_position);
|
||||
switch(baphysics_type){
|
||||
case BA_PHYSICS_GOTO: //L80297780
|
||||
__baphysics_update_goto();
|
||||
break;
|
||||
case BA_PHYSICS_TRANSFORM: //L80297790
|
||||
__baphysics_update_transform();
|
||||
break;
|
||||
case BA_PHYSICS_UNK8: //L802977A0
|
||||
func_8029737C();
|
||||
break;
|
||||
case BA_PHYSICS_UNK1: //L802977B0
|
||||
func_802971DC();
|
||||
break;
|
||||
case BA_PHYSICS_NO_GRAVITY: //L802977C0
|
||||
__baphysics_update_no_gravity();
|
||||
break;
|
||||
case BA_PHYSICS_NORMAL: //L802977D0 //bear
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
__baphysics_update_normal();
|
||||
break;
|
||||
case BA_PHYSICS_INVERTED_YAW: //L802977F0 //bird
|
||||
baphysics_set_target_yaw(mlNormalizeAngle(yaw_getIdeal() + 180.0f));
|
||||
__baphysics_update_normal();
|
||||
break;
|
||||
case BA_PHYSICS_LOCKED_ROTATION: //L80297820
|
||||
__baphysics_update_normal();
|
||||
break;
|
||||
case BA_PHYSICS_UNK4: //L80297830
|
||||
func_8029740C();
|
||||
break;
|
||||
case BA_PHYSICS_AIRBORN: //L80297840
|
||||
if(0.0f < func_8029B2E8()){
|
||||
baphysics_set_target_yaw(func_8029B33C());
|
||||
}
|
||||
__baphysics_update_normal();
|
||||
break;
|
||||
case BA_PHYSICS_CLIMB: //L80297880
|
||||
__baphysics_update_climb();
|
||||
break;
|
||||
case BA_PHYSICS_NONE:
|
||||
case BA_PHYSICS_FREEZE:
|
||||
default:
|
||||
break;
|
||||
}
|
||||
player_setPosition(s_next_position);
|
||||
}
|
||||
|
||||
void baphysics_reset_horizontal_velocity(void){
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
s_player_velocity[0] = s_player_velocity[2] = 0.0f;
|
||||
}
|
||||
|
||||
void baphysics_set_type(BaPhysicsType arg0){
|
||||
if((arg0 == BA_PHYSICS_TRANSFORM) && (arg0 != baphysics_type)){
|
||||
D_8037C4FC = s_next_position[1];
|
||||
D_8037C500 = 0.0f;
|
||||
}
|
||||
if(arg0 == BA_PHYSICS_GOTO){
|
||||
baphysics_goto.state = 1;
|
||||
}
|
||||
baphysics_type = arg0;
|
||||
}
|
||||
|
||||
void baphysics_set_target_velocity(f32 src[3]){
|
||||
if(src)
|
||||
ml_vec3f_copy(baphysics_target_velocity, src);
|
||||
else
|
||||
ml_vec3f_clear(baphysics_target_velocity);
|
||||
}
|
||||
|
||||
void baphysics_set_target_horizontal_velocity(f32 arg0){
|
||||
baphysics_target_horizontal_velocity = arg0;
|
||||
}
|
||||
|
||||
void baphysics_set_target_yaw(f32 arg0){
|
||||
baphysics_target_yaw = mlNormalizeAngle(arg0);
|
||||
}
|
||||
|
||||
void baphysics_set_vertical_velocity(f32 arg0){
|
||||
s_player_velocity[1] = arg0;
|
||||
}
|
||||
|
||||
void baphysics_set_horizontal_velocity(f32 yaw, f32 magnitude) { \
|
||||
func_80256D0C(0.0f, yaw, 0.0f, 0.0f, magnitude, &s_player_velocity[0], &s_player_velocity[1], &s_player_velocity[2]);
|
||||
}
|
||||
|
||||
void baphysics_set_velocity(f32 src[3]){
|
||||
if(src)
|
||||
ml_vec3f_copy(s_player_velocity, src);
|
||||
else
|
||||
ml_vec3f_clear(s_player_velocity);
|
||||
}
|
||||
|
||||
f32 baphysics_get_gravity(void){
|
||||
return s_gravity;
|
||||
}
|
||||
|
||||
BaPhysicsType baphysics_get_type(void){
|
||||
return baphysics_type;
|
||||
}
|
||||
|
||||
f32 baphysics_get_target_horizontal_velocity(void){
|
||||
return baphysics_target_horizontal_velocity;
|
||||
}
|
||||
|
||||
f32 baphysics_get_target_vertical_velocity(void){
|
||||
return baphysics_target_velocity[1];
|
||||
}
|
||||
|
||||
f32 baphysics_get_target_yaw(void){
|
||||
return baphysics_target_yaw;
|
||||
}
|
||||
|
||||
void baphysics_get_velocity(f32 dst[3]){
|
||||
ml_vec3f_copy(dst, s_player_velocity);
|
||||
}
|
||||
|
||||
f32 baphysics_get_vertical_velocity(void){
|
||||
return s_player_velocity[1];
|
||||
}
|
||||
|
||||
f32 baphysics_get_horizontal_velocity(void){
|
||||
return gu_sqrtf(s_player_velocity[0]*s_player_velocity[0] + s_player_velocity[2]*s_player_velocity[2]);
|
||||
}
|
||||
|
||||
f32 baphysics_get_horizontal_velocity_percentage(void){
|
||||
f32 horz_vel;
|
||||
f32 target_vel;
|
||||
f32 temp_f12;
|
||||
|
||||
horz_vel = baphysics_get_horizontal_velocity();
|
||||
target_vel = baphysics_get_target_horizontal_velocity();
|
||||
|
||||
if(horz_vel < target_vel){
|
||||
temp_f12 = horz_vel/target_vel;
|
||||
}
|
||||
else{
|
||||
temp_f12 = 1.0f;
|
||||
}
|
||||
return temp_f12;
|
||||
}
|
||||
|
||||
void baphysics_reset(void){
|
||||
baphysics_reset_gravity();
|
||||
baphysics_reset_terminal_velocity();
|
||||
}
|
||||
|
||||
void baphysics_set_acceleration(f32 arg0){
|
||||
baphysics_acceleration = arg0;
|
||||
}
|
||||
|
||||
void baphysics_reset_gravity(void){
|
||||
baphysics_set_gravity(baphysics_default_gravity);
|
||||
}
|
||||
|
||||
void baphysics_reset_terminal_velocity(void){
|
||||
baphysics_set_terminal_velocity(baphysics_default_terminal_velocity);
|
||||
}
|
||||
|
||||
void baphysics_set_goto_duration(f32 arg0){
|
||||
baphysics_goto.duration = arg0;
|
||||
}
|
||||
|
||||
void baphysics_set_goto_position(f32 src[3]) { \
|
||||
ml_vec3f_copy(baphysics_goto.end_position, src);
|
||||
}
|
||||
|
||||
void baphysics_set_gravity(f32 arg0){
|
||||
s_gravity = arg0;
|
||||
}
|
||||
|
||||
void baphysics_set_terminal_velocity(f32 arg0){
|
||||
s_terminal_velocity = arg0;
|
||||
}
|
||||
|
||||
int baphysics_is_slower_than(f32 arg0){
|
||||
return s_player_velocity[0]*s_player_velocity[0] + s_player_velocity[2]*s_player_velocity[2] <= (arg0*arg0);
|
||||
}
|
||||
|
||||
int baphysics_goto_done(void){
|
||||
return baphysics_goto.state == 3;
|
||||
}
|
@@ -3,6 +3,7 @@
|
||||
#include "variables.h"
|
||||
#include "core2/yaw.h"
|
||||
#include "core2/ba/anim.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
void func_80293D48(f32,f32);
|
||||
|
||||
@@ -41,10 +42,10 @@ void func_8029E48C(void){
|
||||
f32 sp1C = func_8029B30C();
|
||||
|
||||
if(func_8029B300() == 0){
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
}
|
||||
else{
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364960, D_80364964));
|
||||
baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp1C, D_80364960, D_80364964));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -79,8 +80,8 @@ int bsant_inSet(s32 move_indx){
|
||||
void bsant_idle_init(void){
|
||||
func_8029E554();
|
||||
baanim_playForDuration_loopSmooth(ASSET_5E_ANIM_BSANT_IDLE, 1.2f);
|
||||
func_8029C7F4(1,YAW_STATE_1_DEFAULT,1,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,YAW_STATE_1_DEFAULT,1,BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
roll_setAngularVelocity(1000.0f, 12.0f);
|
||||
miscflag_set(3);
|
||||
@@ -115,7 +116,7 @@ void bsant_idle_end(void){
|
||||
void bsant_walk_init(void){
|
||||
func_8029E554();
|
||||
baanim_playForDuration_loopSmooth(ASSET_5F_ANIM_BSANT_WALK, 0.8f);
|
||||
func_8029C7F4(2,YAW_STATE_1_DEFAULT,1,2);
|
||||
func_8029C7F4(2, YAW_STATE_1_DEFAULT,1, BA_PHYSICS_NORMAL);
|
||||
baanim_setVelocityMapRanges(D_80364960, D_80364964, D_80364968, D_8036496C);
|
||||
func_802900B4();
|
||||
}
|
||||
@@ -133,7 +134,7 @@ void bsant_walk_update(void){
|
||||
if(animctrl_isAt(aCtrl, 0.2781f))
|
||||
func_8029E448(1);
|
||||
|
||||
if(func_8029B300() == 0 && func_80297C04(1.0f))
|
||||
if(func_8029B300() == 0 && baphysics_is_slower_than(1.0f))
|
||||
sp1C = BS_35_ANT_IDLE;
|
||||
|
||||
if(func_8028B094())
|
||||
@@ -161,14 +162,14 @@ void bsant_jump_init(void){
|
||||
animctrl_setSubRange(aCtrl, 0.0f, 0.4423f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(aCtrl, "bsant.c", 0x17c);
|
||||
func_8029C7F4(1,YAW_STATE_1_DEFAULT,3,6);
|
||||
func_8029C7F4(1, YAW_STATE_1_DEFAULT, 3, BA_PHYSICS_AIRBORN);
|
||||
if(func_8029B2E8() != 0.0f)
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_8029E48C();
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
player_setYVelocity(D_80364970);
|
||||
gravity_set(D_80364974);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_vertical_velocity(D_80364970);
|
||||
baphysics_set_gravity(D_80364974);
|
||||
func_8029E3E0();
|
||||
D_8037D294 = 0;
|
||||
}
|
||||
@@ -180,10 +181,10 @@ void bsant_jump_update(void){
|
||||
f32 sp1C[3];
|
||||
|
||||
func_8029E48C();
|
||||
_get_velocity(sp1C);
|
||||
baphysics_get_velocity(sp1C);
|
||||
|
||||
if(button_released(BUTTON_A) && 0.0f < sp1C[1])
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
|
||||
switch(D_8037D294){
|
||||
case 0://L8029EA88
|
||||
@@ -213,7 +214,7 @@ void bsant_jump_update(void){
|
||||
break;
|
||||
}//L8029EB38
|
||||
if(func_8028B2E8()){
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
if(func_8029B300() > 0)
|
||||
sp2C = BS_ANT_WALK;
|
||||
|
||||
@@ -225,7 +226,7 @@ void bsant_jump_update(void){
|
||||
}
|
||||
|
||||
void bsant_jump_end(void){
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
func_8029E4EC();
|
||||
}
|
||||
|
||||
@@ -239,7 +240,7 @@ void bsant_fall_init(void){
|
||||
animctrl_setStart(aCtrl, 0.4423f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED);
|
||||
animctrl_start(aCtrl, "bsant.c", 0x208);
|
||||
func_8029C7F4(1,YAW_STATE_1_DEFAULT,3,6);
|
||||
func_8029C7F4(1, YAW_STATE_1_DEFAULT, 3, BA_PHYSICS_AIRBORN);
|
||||
D_8037D294 = 0;
|
||||
}
|
||||
|
||||
@@ -252,7 +253,7 @@ void bsant_fall_update(void){
|
||||
if(D_8037D298)
|
||||
func_8029E48C();
|
||||
|
||||
_get_velocity(sp1C);
|
||||
baphysics_get_velocity(sp1C);
|
||||
switch(D_8037D294){
|
||||
case 0:
|
||||
if(func_8028B254(0x5A)){
|
||||
@@ -300,12 +301,12 @@ static void __bsant_recoil_init(int take_damage){
|
||||
func_80257F18(sp20, sp2C, &sp38);
|
||||
yaw_setIdeal(mlNormalizeAngle(sp38 + 180.0f));
|
||||
yaw_applyIdeal();
|
||||
func_80297970(200.0f);
|
||||
func_8029797C(sp38);
|
||||
func_802979AC(sp38, func_80297A64());
|
||||
func_8029C7F4(1,YAW_STATE_1_DEFAULT,2,3);
|
||||
player_setYVelocity(510.0f);
|
||||
gravity_set(-1200.0f);
|
||||
baphysics_set_target_horizontal_velocity(200.0f);
|
||||
baphysics_set_target_yaw(sp38);
|
||||
baphysics_set_horizontal_velocity(sp38, baphysics_get_target_horizontal_velocity());
|
||||
func_8029C7F4(1, YAW_STATE_1_DEFAULT, 2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_vertical_velocity(510.0f);
|
||||
baphysics_set_gravity(-1200.0f);
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
D_8037D294 = 0;
|
||||
@@ -336,7 +337,7 @@ static void __bsant_recoil_update(void){
|
||||
|
||||
static void __bsant_recoil_end(void){
|
||||
func_80297CA8();
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
func_8029E4EC();
|
||||
@@ -387,12 +388,12 @@ void bsant_die_init(void){
|
||||
D_8037D290 = 250.0f;
|
||||
yaw_setIdeal(mlNormalizeAngle(sp38 + 180.0f));
|
||||
yaw_applyIdeal();
|
||||
func_80297970(D_8037D290);
|
||||
func_8029797C(sp38);
|
||||
func_802979AC(sp38, func_80297A64());
|
||||
func_8029C7F4(1,YAW_STATE_1_DEFAULT,2,3);
|
||||
player_setYVelocity(510.0f);
|
||||
gravity_set(-1200.0f);
|
||||
baphysics_set_target_horizontal_velocity(D_8037D290);
|
||||
baphysics_set_target_yaw(sp38);
|
||||
baphysics_set_horizontal_velocity(sp38, baphysics_get_target_horizontal_velocity());
|
||||
func_8029C7F4(1, YAW_STATE_1_DEFAULT, 2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_vertical_velocity(510.0f);
|
||||
baphysics_set_gravity(-1200.0f);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
func_802914CC(0xd);
|
||||
ncDynamicCamD_func_802BF2C0(30.0f);
|
||||
@@ -406,7 +407,7 @@ void bsant_die_init(void){
|
||||
void bsant_die_update(void){
|
||||
AnimCtrl *aCtrl = baanim_getAnimCtrlPtr();
|
||||
|
||||
func_80297970(D_8037D290);
|
||||
baphysics_set_target_horizontal_velocity(D_8037D290);
|
||||
func_80299628(0);
|
||||
switch(D_8037D294){
|
||||
case 0://L8029F270
|
||||
@@ -440,7 +441,7 @@ void bsant_die_update(void){
|
||||
|
||||
void bsant_die_end(void){
|
||||
func_8024BD08(0);
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
pitch_setIdeal(0.0f);
|
||||
roll_setIdeal(0.0f);
|
||||
func_80291548();
|
||||
@@ -450,8 +451,8 @@ void bsant_die_end(void){
|
||||
void func_8029F398(void){
|
||||
func_8029E554();
|
||||
baanim_playForDuration_loopSmooth(ASSET_5E_ANIM_BSANT_IDLE, 2.0f);
|
||||
func_8029C7F4(1,YAW_STATE_1_DEFAULT,3,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1, YAW_STATE_1_DEFAULT, 3, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_8029C674();
|
||||
func_802B3A50();
|
||||
}
|
||||
|
@@ -1,15 +1,11 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
void func_8029797C(f32);
|
||||
f32 func_80297A64(void);
|
||||
void func_80297970(f32);
|
||||
f32 func_80297A7C(void);
|
||||
|
||||
s32 func_8029E2E0(s32, f32);
|
||||
void func_80292864(f32, f32);
|
||||
void func_802979AC(f32, f32);
|
||||
void func_8029E3C0(s32, f32);
|
||||
|
||||
|
||||
@@ -36,15 +32,15 @@ void func_8029F4F0(void){
|
||||
|
||||
switch(D_8037D2A4){
|
||||
case 0:
|
||||
tmp_f = (func_80297A7C() + 180.0f);
|
||||
tmp_f = (baphysics_get_target_yaw() + 180.0f);
|
||||
func_80292864(tmp_f - 70.0f, 20.0f);
|
||||
break;
|
||||
case 1:
|
||||
tmp_f = (func_80297A7C() + 180.0f);
|
||||
tmp_f = (baphysics_get_target_yaw() + 180.0f);
|
||||
func_80292864(tmp_f - 10.0f, 20.0f);
|
||||
break;
|
||||
case 2:
|
||||
tmp_f = (func_80297A7C() + 180.0f);
|
||||
tmp_f = (baphysics_get_target_yaw() + 180.0f);
|
||||
func_80292864(tmp_f + 50.0f, 20.0f);
|
||||
break;
|
||||
}
|
||||
@@ -73,10 +69,10 @@ void bsbarge_init(void){
|
||||
animctrl_setPlaybackType(plyrMvmnt, ANIMCTRL_ONCE);
|
||||
animctrl_start(plyrMvmnt, "bsbbarge.c", 0x98);
|
||||
D_8037D2A4 = 0;
|
||||
func_8029C7F4(1,1,3,3);
|
||||
func_8029797C(yaw_getIdeal());
|
||||
func_80297970(func_80297A64()*0.3);
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
baphysics_set_target_horizontal_velocity(baphysics_get_target_horizontal_velocity()*0.3);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
func_8029E070(1);
|
||||
D_8037D2A6 = 0;
|
||||
D_8037D2A5 = 0;
|
||||
@@ -127,15 +123,15 @@ void bsbarge_update(void){
|
||||
|
||||
animctrl_setDuration(plyrMvmnt, 1.0f);
|
||||
baanim_setEnd(0.565f);
|
||||
func_80297970(D_8037D2A0);
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
baphysics_set_target_horizontal_velocity(D_8037D2A0);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
func_8030E760(SFX_2_CLAW_SWIPE, 0.558f, 22000);
|
||||
D_8037D2A5 = 2;
|
||||
func_8029F4F0();
|
||||
D_8037D2A6 = 1;
|
||||
break;
|
||||
case 2:
|
||||
func_80297970(D_8037D2A0);
|
||||
baphysics_set_target_horizontal_velocity(D_8037D2A0);
|
||||
if(animctrl_isStopped(plyrMvmnt)){
|
||||
animctrl_setDuration(plyrMvmnt, 2.0f);
|
||||
baanim_setEnd(0.6f);
|
||||
@@ -149,7 +145,7 @@ void bsbarge_update(void){
|
||||
if(miscflag_isFalse(0xC) || func_8029E384(0)){
|
||||
D_8037D2A0 -= 80.0f;
|
||||
}
|
||||
func_80297970(D_8037D2A0);
|
||||
baphysics_set_target_horizontal_velocity(D_8037D2A0);
|
||||
if(D_8037D2A0 < 200.0f){
|
||||
animctrl_setDuration(plyrMvmnt, 1.5f);
|
||||
baanim_setEnd(1.0f);
|
||||
@@ -164,7 +160,7 @@ void bsbarge_update(void){
|
||||
D_8037D2A0 = 0.0f;
|
||||
D_8037D2A6 = 0;
|
||||
}
|
||||
func_80297970(D_8037D2A0);
|
||||
baphysics_set_target_horizontal_velocity(D_8037D2A0);
|
||||
if(animctrl_isAt(plyrMvmnt, 0.9193f))
|
||||
sp24 = BS_20_LANDING;
|
||||
break;
|
||||
|
@@ -2,6 +2,8 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
/* .bss */
|
||||
u8 D_8037D2E0;
|
||||
u8 D_8037D2E1;
|
||||
@@ -9,9 +11,9 @@ u8 D_8037D2E1;
|
||||
/* .code */
|
||||
void bseggass_init(void){
|
||||
baanim_playForDuration_onceSmooth(ASSET_2B_ANIM_BSEGGASS, 1.0f);
|
||||
func_8029C7F4(1,3,1,3);
|
||||
func_8029C7F4(1,3,1, BA_PHYSICS_LOCKED_ROTATION);
|
||||
yaw_setVelocityBounded(350.0f, 14.0f);
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_8029E058(1);
|
||||
D_8037D2E0 = (D_8037D2E1 = 1);
|
||||
func_802952A8(5,0);
|
||||
@@ -60,6 +62,6 @@ void bseggass_update(void) {
|
||||
|
||||
void bseggass_end(void){
|
||||
func_802952A8(5, 1);
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
func_8029E058(0);
|
||||
}
|
||||
|
@@ -2,6 +2,8 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
void yaw_setVelocityBounded(f32, f32);
|
||||
void animctrl_start(AnimCtrl *, char*, s32);
|
||||
|
||||
@@ -12,9 +14,9 @@ u8 D_8037D2F1;
|
||||
/* .code */
|
||||
void bsegghead_init(void){
|
||||
baanim_playForDuration_onceSmooth(ASSET_2A_ANIM_BSEGGHEAD, 1.0f);
|
||||
func_8029C7F4(1,3,1,3);
|
||||
func_8029C7F4(1,3,1, BA_PHYSICS_LOCKED_ROTATION);
|
||||
yaw_setVelocityBounded(350.0f, 14.0f);
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_8029E070(1);
|
||||
D_8037D2F0 = (D_8037D2F1 = 1);
|
||||
func_802952A8(2,0);
|
||||
@@ -68,6 +70,6 @@ void bsegghead_update(void) {
|
||||
|
||||
void bsegghead_end(void){
|
||||
func_802952A8(2, 1);
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
func_8029E070(0);
|
||||
}
|
||||
|
@@ -2,6 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
f32 func_802A2858(void);
|
||||
|
||||
@@ -19,15 +20,15 @@ u8 D_8037D30C;
|
||||
|
||||
void bsbflap_init(void) {
|
||||
baanim_playForDuration_onceSmooth(ASSET_18_ANIM_BSBFLAP_ENTER, 0.3f);
|
||||
func_8029C7F4(1, 1, 1, 2);
|
||||
func_8029C7F4(1, 1, 1, BA_PHYSICS_NORMAL);
|
||||
if (func_8029B2E8() != 0.0f) {
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
}
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_802B6FA8();
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
player_setYVelocity(0.0f);
|
||||
gravity_set(D_80364A14);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_vertical_velocity(0.0f);
|
||||
baphysics_set_gravity(D_80364A14);
|
||||
func_8029E070(1);
|
||||
miscflag_set(MISC_FLAG_12_HAS_FLAPPED);
|
||||
func_8029E3C0(0, 2.5f);
|
||||
@@ -119,9 +120,9 @@ void bsbflap_update(void){
|
||||
animctrl_setPlaybackType(sp18, ANIMCTRL_LOOP);
|
||||
animctrl_setStart(sp18, 0.0f);
|
||||
animctrl_start(sp18, "bsbflap.c", 0xe1);
|
||||
player_setYVelocity(D_80364A10);
|
||||
gravity_set(D_80364A14);
|
||||
func_80297BF8(D_80364A18);
|
||||
baphysics_set_vertical_velocity(D_80364A10);
|
||||
baphysics_set_gravity(D_80364A14);
|
||||
baphysics_set_terminal_velocity(D_80364A18);
|
||||
D_8037D300 = 1;
|
||||
}
|
||||
break;
|
||||
@@ -144,8 +145,8 @@ void bsbflap_update(void){
|
||||
if(D_8037D301 == 4)
|
||||
D_8037D300 = 3;
|
||||
if(button_released(BUTTON_A)){
|
||||
gravity_reset();
|
||||
func_80297B94();
|
||||
baphysics_reset_gravity();
|
||||
baphysics_reset_terminal_velocity();
|
||||
animctrl_setDuration(sp18, 1.0f);
|
||||
D_8037D300 = 4;
|
||||
}
|
||||
@@ -157,14 +158,14 @@ void bsbflap_update(void){
|
||||
func_802A28CC();
|
||||
func_802A298C();
|
||||
if(button_released(BUTTON_A)){
|
||||
gravity_reset();
|
||||
func_80297B94();
|
||||
baphysics_reset_gravity();
|
||||
baphysics_reset_terminal_velocity();
|
||||
animctrl_setDuration(sp18, 1.0f);
|
||||
func_80293240(2);
|
||||
D_8037D300 = 4;
|
||||
}
|
||||
else{
|
||||
func_80297970(func_80297A64() * 0.35);
|
||||
baphysics_set_target_horizontal_velocity(baphysics_get_target_horizontal_velocity() * 0.35);
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
@@ -192,8 +193,8 @@ void bsbflap_update(void){
|
||||
|
||||
void bsbflap_end(void) {
|
||||
ability_use(1);
|
||||
gravity_reset();
|
||||
func_80297B94();
|
||||
baphysics_reset_gravity();
|
||||
baphysics_reset_terminal_velocity();
|
||||
func_8029E090(0, 0.2f);
|
||||
func_8030DA44(D_8037D30C);
|
||||
}
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
/* .data */
|
||||
const f32 D_80364A20 = 920.0f;
|
||||
@@ -18,9 +19,9 @@ void _bsbflip_802A2D60(void){
|
||||
f32 sp1C;
|
||||
sp1C = func_8029B30C();
|
||||
if(!func_8029B300())
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
else
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364A2C, D_80364A30));
|
||||
baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp1C, D_80364A2C, D_80364A30));
|
||||
}
|
||||
|
||||
void _bsbflip_802A2DC0(void){
|
||||
@@ -33,10 +34,10 @@ void _bsbflip_802A2DC0(void){
|
||||
animctrl_setStart(aCtrl, 0.8566f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(aCtrl, "bsbflip.c", 0x69); //nice
|
||||
func_802978DC(3);
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_type(BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
ml_vec3f_clear(sp20);
|
||||
func_80297A0C(sp20);
|
||||
baphysics_set_velocity(sp20);
|
||||
func_8029C5E8();
|
||||
}
|
||||
|
||||
@@ -50,7 +51,7 @@ void bsbflip_init(void){
|
||||
animctrl_setStart(aCtrl, 0.0f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(aCtrl, "bsbflip.c", 0x80);
|
||||
func_8029C7F4(1,1,2,3);
|
||||
func_8029C7F4(1,1,2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
func_8029B324(0, 0.03f);
|
||||
func_8029B324(1, 1.0f);
|
||||
func_8029E070(1);
|
||||
@@ -79,17 +80,17 @@ void bsbflip_update(void){
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
}
|
||||
yaw_rotateTimed(1.0f);
|
||||
func_802978DC(6);
|
||||
func_8029797C(yaw_getIdeal());
|
||||
func_80297970(200.0f);
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
baphysics_set_type(BA_PHYSICS_AIRBORN);
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
baphysics_set_target_horizontal_velocity(200.0f);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
}else{//L802A3098
|
||||
func_802978DC(6);
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_type(BA_PHYSICS_AIRBORN);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
}
|
||||
player_setYVelocity(D_80364A20);
|
||||
gravity_set(D_80364A24);
|
||||
func_80297BF8(D_80364A28);
|
||||
baphysics_set_vertical_velocity(D_80364A20);
|
||||
baphysics_set_gravity(D_80364A24);
|
||||
baphysics_set_terminal_velocity(D_80364A28);
|
||||
animctrl_setDuration(aCtrl, 1.9f);
|
||||
func_8030E4E4(SFX_33_BANJO_AHOO);
|
||||
D_8037D310 = 1;
|
||||
@@ -120,7 +121,7 @@ void bsbflip_update(void){
|
||||
animctrl_setDuration(aCtrl, 0.8f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(aCtrl, "bsbflip.c", 0xee);
|
||||
func_80297B94();
|
||||
baphysics_reset_terminal_velocity();
|
||||
D_8037D310 = 3;
|
||||
}//L802A320C
|
||||
if(func_8028B2E8()){
|
||||
@@ -160,8 +161,8 @@ void bsbflip_update(void){
|
||||
|
||||
void bsbflip_end(void){
|
||||
ability_use(2);
|
||||
gravity_reset();
|
||||
func_80297B94();
|
||||
baphysics_reset_gravity();
|
||||
baphysics_reset_terminal_velocity();
|
||||
func_8029E070(0);
|
||||
func_8029B0C0();
|
||||
}
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
extern void func_8028FDC8(f32);
|
||||
extern void baModel_setYDisplacement(f32);
|
||||
@@ -60,8 +61,8 @@ void func_802A3430(void){
|
||||
|
||||
void func_802A34C8(void){
|
||||
if(!bsbfly_inSet(bs_getNextState())){
|
||||
gravity_reset();
|
||||
func_80297B94();
|
||||
baphysics_reset_gravity();
|
||||
baphysics_reset_terminal_velocity();
|
||||
func_8029E070(0);
|
||||
baModel_setYDisplacement(0.0f);
|
||||
func_8029CB84();
|
||||
@@ -134,14 +135,14 @@ int func_802A37F8(void){
|
||||
|
||||
void bsbfly_enter_init(void){
|
||||
baanim_playForDuration_onceSmooth(ASSET_45_ANIM_BSBFLY_ENTER, 1.4f);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
if(func_8029B2E8() != 0.0f)
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
|
||||
func_8029797C(yaw_getIdeal());
|
||||
func_80297A0C(0);
|
||||
func_80297970(0.0f);
|
||||
gravity_set(-1200.0f);
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
baphysics_set_velocity(0);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
baphysics_set_gravity(-1200.0f);
|
||||
func_8029E070(1);
|
||||
func_80299BD4();
|
||||
D_8037D344 = 0;
|
||||
@@ -156,14 +157,14 @@ void bsbfly_enter_update(void){
|
||||
case 0:
|
||||
if(animctrl_isAt(aCtrl, 0.2416f)){
|
||||
animctrl_setDuration(aCtrl, 2.4f);
|
||||
player_setYVelocity(1600.0f);
|
||||
baphysics_set_vertical_velocity(1600.0f);
|
||||
func_8030E58C(SFX_C_TAKING_FLIGHT_LIFTOFF, 0.7f);
|
||||
D_8037D344 = 1;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
func_802A36D0();
|
||||
if(_get_vertVelocity() < 0.0f)
|
||||
if(baphysics_get_vertical_velocity() < 0.0f)
|
||||
sp1C = BS_24_FLY;
|
||||
break;
|
||||
}
|
||||
@@ -178,18 +179,18 @@ void bsbfly_enter_end(void){
|
||||
|
||||
void bsbfly_init(void){
|
||||
baanim_playForDuration_loopSmooth(ASSET_38_ANIM_BSBFLY, 0.62f);
|
||||
func_8029C7F4(1,1,3,3);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_LOCKED_ROTATION);
|
||||
if(miscflag_isTrue(9)){
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
}else{
|
||||
func_80297970(600.0f);
|
||||
baphysics_set_target_horizontal_velocity(600.0f);
|
||||
}
|
||||
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_8029E070(1);
|
||||
gravity_set(-300.0f);
|
||||
func_80297BF8(-99.9f);
|
||||
baphysics_set_gravity(-300.0f);
|
||||
baphysics_set_terminal_velocity(-99.9f);
|
||||
func_802914CC(4);
|
||||
func_802A3430();
|
||||
D_8037D320 = 1.0f;
|
||||
@@ -247,7 +248,7 @@ void bsbfly_update(void){
|
||||
pitch_setIdeal(sp34);
|
||||
func_802A3404();
|
||||
if(sp30){
|
||||
player_setYVelocity(sp30 * 400.0);
|
||||
baphysics_set_vertical_velocity(sp30 * 400.0);
|
||||
}
|
||||
if(!sp30){
|
||||
animctrl_setDuration(aCtrl, 0.62f);
|
||||
@@ -259,19 +260,19 @@ void bsbfly_update(void){
|
||||
if(animctrl_isAt(aCtrl, 0.1358f)){
|
||||
func_8030EBC8(SFX_2_CLAW_SWIPE, 0.6f, 0.7f, 0x2710, 0x2ee0);
|
||||
}
|
||||
gravity_set(-300.0f);
|
||||
baphysics_set_gravity(-300.0f);
|
||||
if(miscflag_isTrue(9)){
|
||||
func_80297BF8(0.0f);
|
||||
func_80297A0C(0);
|
||||
baphysics_set_terminal_velocity(0.0f);
|
||||
baphysics_set_velocity(0);
|
||||
sp38 = 0.0f;
|
||||
}
|
||||
else if(sp3C <= 80.0f){
|
||||
func_80297BF8(ml_map_f(sp3C, 60.0f, 80.0f, -99.9f, -1000.33));
|
||||
gravity_set(ml_map_f(sp3C, 60.0f, 80.0f, -300.0f, -700.0f));
|
||||
baphysics_set_terminal_velocity(ml_map_f(sp3C, 60.0f, 80.0f, -99.9f, -1000.33));
|
||||
baphysics_set_gravity(ml_map_f(sp3C, 60.0f, 80.0f, -300.0f, -700.0f));
|
||||
sp38 = ml_map_f(sp3C, 60.0f, 80.0f, 600.0f, 60.0f);
|
||||
}
|
||||
else{
|
||||
func_80297BF8(ml_map_f(sp3C, 300.0f, 310.0f, -399.99f, -99.9f));
|
||||
baphysics_set_terminal_velocity(ml_map_f(sp3C, 300.0f, 310.0f, -399.99f, -99.9f));
|
||||
sp38 = ml_map_f(sp3C, 300.0f, 340.0f, 0.0f, 600.0f);
|
||||
}//L802A3E18
|
||||
|
||||
@@ -281,8 +282,8 @@ void bsbfly_update(void){
|
||||
if(sp4C != NULL && -1.0 < sp40[1])
|
||||
sp38 = 0.0f;
|
||||
|
||||
func_8029797C(yaw_get());
|
||||
func_80297970(sp38);
|
||||
baphysics_set_target_yaw(yaw_get());
|
||||
baphysics_set_target_horizontal_velocity(sp38);
|
||||
|
||||
if(should_beak_bust())
|
||||
sp54 = BS_F_BBUSTER;
|
||||
@@ -321,12 +322,12 @@ int bsbfly_bombHitboxActive(void){
|
||||
void func_802A3F9C(void){
|
||||
f32 sp1C[3];
|
||||
baanim_playForDuration_once(ASSET_43_ANIM_BSBFLY_BEAKBOMB_START, 1.0f);
|
||||
func_8029C7F4(1,1,3,7);
|
||||
func_8029C7F4(1,1,3,BA_PHYSICS_FREEZE);
|
||||
func_802A339C(D_8037D338, sp1C, 4200.0f);
|
||||
yaw_setIdeal(sp1C[1] + 180.0f);
|
||||
pitch_setIdeal(sp1C[0]);
|
||||
roll_setIdeal(0.0f);
|
||||
func_80297A0C(D_8037D338);
|
||||
baphysics_set_velocity(D_8037D338);
|
||||
pitch_setIdeal(sp1C[0]);
|
||||
func_8029E070(1);
|
||||
func_802914CC(4);
|
||||
@@ -375,7 +376,7 @@ void func_802A411C(void) {
|
||||
switch (D_8037D344) {
|
||||
case 0:
|
||||
if (animctrl_isAt(sp58, 0.6905f)) {
|
||||
func_802978DC(8);
|
||||
baphysics_set_type(BA_PHYSICS_UNK8);
|
||||
func_802914CC(5);
|
||||
ncDynamicCam5_func_802BF590(&D_8037D338);
|
||||
animctrl_setDuration(sp58, 0.05f);
|
||||
@@ -453,15 +454,15 @@ void func_802A4430(void){
|
||||
animctrl_setDuration(plyr_animctrl, 0.38f);
|
||||
animctrl_setPlaybackType(plyr_animctrl, ANIMCTRL_LOOP);
|
||||
animctrl_start(plyr_animctrl, "bsbfly.c", 0x38a);
|
||||
func_8029C7F4(1, 1, 3, 3);
|
||||
func_8029C7F4(1, 1, 3, BA_PHYSICS_LOCKED_ROTATION);
|
||||
func_8029E070(1);
|
||||
func_802A3430();
|
||||
func_80293D74();
|
||||
func_80294378(1);
|
||||
roll_setIdeal(0.0f);
|
||||
pitch_setIdeal(0.0f);
|
||||
gravity_reset();
|
||||
func_80297B94();
|
||||
baphysics_reset_gravity();
|
||||
baphysics_reset_terminal_velocity();
|
||||
baModel_setYDisplacement(0.0f);
|
||||
func_80299CF4(SFX_31_BANJO_OHHWAAOOO, 1.0f, 0x7fff);
|
||||
func_80299D2C(SFX_61_CARTOONY_FALL, 1.0f, 0x7fff);
|
||||
@@ -472,7 +473,7 @@ void func_802A4430(void){
|
||||
void func_802A4548(void){
|
||||
s32 next_state = 0;
|
||||
f32 sp20[3];
|
||||
_get_velocity(sp20);
|
||||
baphysics_get_velocity(sp20);
|
||||
switch(D_8037D344){
|
||||
case 0://L802A457C
|
||||
if(func_8028B254(0x5A)){
|
||||
@@ -528,7 +529,7 @@ void func_802A46C8(void) {
|
||||
|
||||
void bsbfly_beakbomb_crash_init(void) {
|
||||
baanim_playForDuration_once(ASSET_3E_ANIM_BSBFLY_BEAKBOMB_CRASH, 1.4f);
|
||||
func_8029C7F4(1, 1, 3, 3);
|
||||
func_8029C7F4(1, 1, 3, BA_PHYSICS_LOCKED_ROTATION);
|
||||
func_8029E070(1);
|
||||
FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 32750);
|
||||
func_80299CF4(SFX_36_BANJO_DOH, 1.0f, 28000);
|
||||
@@ -552,7 +553,7 @@ void func_802A47E0(void) {
|
||||
func_80299CF4(SFX_38_BANJO_AYE_1, 1.0f, 22000);
|
||||
}
|
||||
if (animctrl_isAt(sp1C, 0.92f)) {
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
}
|
||||
if (animctrl_getAnimTimer(sp1C) < 0.8) {
|
||||
func_802929F8();
|
||||
@@ -639,17 +640,17 @@ void func_802A4A78(s32 arg0) {
|
||||
func_80257F18(sp30, sp3C, &sp28);
|
||||
yaw_setIdeal(mlNormalizeAngle(sp28 + 180.0f));
|
||||
yaw_applyIdeal();
|
||||
func_80297970(sp20);
|
||||
func_8029797C(sp28);
|
||||
func_802979AC(sp28, func_80297A64());
|
||||
baphysics_set_target_horizontal_velocity(sp20);
|
||||
baphysics_set_target_yaw(sp28);
|
||||
baphysics_set_horizontal_velocity(sp28, baphysics_get_target_horizontal_velocity());
|
||||
if ((arg0 == 1) && (map_get() == MAP_90_GL_BATTLEMENTS)) {
|
||||
yaw_setIdeal(mlNormalizeAngle(sp28));
|
||||
yaw_applyIdeal();
|
||||
}
|
||||
func_8029C7F4(1, 1, 2, 3);
|
||||
player_setYVelocity(800.0f);
|
||||
gravity_set(sp2C);
|
||||
func_80297BF8(-4000.0f);
|
||||
func_8029C7F4(1, 1, 2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_vertical_velocity(800.0f);
|
||||
baphysics_set_gravity(sp2C);
|
||||
baphysics_set_terminal_velocity(-4000.0f);
|
||||
func_8029E070(1);
|
||||
func_802914CC(4);
|
||||
ncDynamicCam4_func_802BFE50(12.0f, 10000.0f, 800.0f);
|
||||
@@ -671,7 +672,7 @@ void func_802A4C34(s32 arg0) {
|
||||
}
|
||||
|
||||
void func_802A4C88(s32 arg0) {
|
||||
func_80297B3C();
|
||||
baphysics_reset();
|
||||
baMarker_collisionOn();
|
||||
func_80297CA8();
|
||||
func_8029E070(0);
|
||||
@@ -716,16 +717,16 @@ void func_802A4D90(void) {
|
||||
func_80257F18(sp1C, player_position, &sp34);
|
||||
yaw_setIdeal(mlNormalizeAngle(sp34 + 180.0f));
|
||||
yaw_applyIdeal();
|
||||
func_80297970(1300.0f);
|
||||
func_8029797C(sp34);
|
||||
func_802979AC(sp34, func_80297A64());
|
||||
baphysics_set_target_horizontal_velocity(1300.0f);
|
||||
baphysics_set_target_yaw(sp34);
|
||||
baphysics_set_horizontal_velocity(sp34, baphysics_get_target_horizontal_velocity());
|
||||
if (map_get() == MAP_90_GL_BATTLEMENTS) {
|
||||
yaw_setIdeal(mlNormalizeAngle(sp34));
|
||||
yaw_applyIdeal();
|
||||
}
|
||||
func_8029C7F4(1, 1, 2, 3);
|
||||
player_setYVelocity(400.0f);
|
||||
gravity_set(-1800.0f);
|
||||
func_8029C7F4(1, 1, 2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_vertical_velocity(400.0f);
|
||||
baphysics_set_gravity(-1800.0f);
|
||||
baMarker_collisionOff();
|
||||
func_802914CC(4);
|
||||
ncDynamicCam4_func_802BFE50(12.0f, 10000.0f, 800.0f);
|
||||
@@ -748,14 +749,14 @@ void func_802A4EC8(void) {
|
||||
}
|
||||
|
||||
void func_802A4F44(void){
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
baMarker_collisionOn();
|
||||
func_802A34C8();
|
||||
}
|
||||
|
||||
void func_802A4F74(void) {
|
||||
baanim_playForDuration_loopSmooth(ASSET_38_ANIM_BSBFLY, 0.62f);
|
||||
func_8029C7F4(1, 1, 3, 7);
|
||||
func_8029C7F4(1, 1, 3, BA_PHYSICS_FREEZE);
|
||||
func_8029E070(1);
|
||||
func_802914CC(4);
|
||||
func_802A3430();
|
||||
@@ -808,15 +809,15 @@ void func_802A50F8(void){
|
||||
|
||||
void func_802A5120(void){
|
||||
baanim_playForDuration_loop(ASSET_68_ANIM_BSJUMP_TUMBLE, 0.35f);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_80297970(0.0f);
|
||||
func_80297A0C(0);
|
||||
player_setYVelocity(2000.0f);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
baphysics_set_velocity(0);
|
||||
baphysics_set_vertical_velocity(2000.0f);
|
||||
func_80299CF4(SFX_63_BANJO_UWAAAAOOH, 1.0f, 32000);
|
||||
}
|
||||
|
||||
void func_802A5190(void){
|
||||
player_setYVelocity(2000.0f);
|
||||
baphysics_set_vertical_velocity(2000.0f);
|
||||
bs_setState(0);
|
||||
}
|
||||
|
||||
|
@@ -4,6 +4,7 @@
|
||||
#include "core2/ba/model.h"
|
||||
#include "core2/statetimer.h"
|
||||
#include "core2/ba/anim.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
|
||||
/* .data */
|
||||
@@ -39,9 +40,9 @@ void func_802A5208(int arg0){
|
||||
void func_802A524C(void){
|
||||
f32 sp1C = func_8029B30C();
|
||||
if(!func_8029B300())
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
else
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364A40, D_80364A44));
|
||||
baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp1C, D_80364A40, D_80364A44));
|
||||
}
|
||||
|
||||
int bslongleg_inSet(s32 move_indx){
|
||||
@@ -125,8 +126,8 @@ void bsblongleg_enter_init(void){
|
||||
__bsblongleg_enterFromTrot();
|
||||
else
|
||||
__bsblongleg_enter();
|
||||
func_8029C7F4(1,1,3,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_802A5374();
|
||||
func_80299BD4();
|
||||
}
|
||||
@@ -156,8 +157,8 @@ void bsblongleg_enter_end(void){
|
||||
|
||||
void bsblongleg_stand_enter(void){
|
||||
baanim_playForDuration_loopSmooth(ASSET_41_ANIM_BSLONGLEG_IDLE, 1.0f);
|
||||
func_8029C7F4(1,1,1,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,1, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
baModel_setDirection(PLAYER_MODEL_DIR_KAZOOIE);
|
||||
func_802A5374();
|
||||
}
|
||||
@@ -202,7 +203,7 @@ void bsblongleg_walk_init(void){
|
||||
animctrl_setIndex(aCtrl, ASSET_42_ANIM_BSLONGLEG_WALK);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_LOOP);
|
||||
animctrl_start(aCtrl, "bsblongleg.c", 0x1a1);
|
||||
func_8029C7F4(2,1,1,2);
|
||||
func_8029C7F4(2,1,1, BA_PHYSICS_NORMAL);
|
||||
baanim_setVelocityMapRanges(D_80364A40, D_80364A44, D_80364A48, D_80364A4C);
|
||||
}
|
||||
|
||||
@@ -220,10 +221,10 @@ void bsblongleg_walk_update(void){
|
||||
func_802A5208(1);
|
||||
|
||||
func_802A524C();
|
||||
if(button_pressed(BUTTON_B) && func_80297A64() == 0.0f)
|
||||
if(button_pressed(BUTTON_B) && baphysics_get_target_horizontal_velocity() == 0.0f)
|
||||
stateTimer_clear(STATE_TIMER_2_LONGLEG);
|
||||
|
||||
if(!func_8029B300() && func_80297C04(1.0f))
|
||||
if(!func_8029B300() && baphysics_is_slower_than(1.0f))
|
||||
next_state = BS_26_LONGLEG_IDLE;
|
||||
|
||||
if(player_shouldSlideTrot())
|
||||
@@ -273,7 +274,7 @@ void bsblongleg_exit_init(void){
|
||||
func_802A5AB0();
|
||||
baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL);
|
||||
func_8029957C(2);
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
D_8037D361 = func_8030D90C();
|
||||
sfxsource_setSfxId(D_8037D361, SFX_2C_PULLING_NOISE);
|
||||
func_8030E04C(D_8037D361, 1.4f, 0.4f, -1.2f);
|
||||
@@ -322,14 +323,14 @@ void bsblongleg_jump_init(void){
|
||||
animctrl_setSubRange(aCtrl, 0.0f, 0.42f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(aCtrl, "bsblongleg.c", 0x27F);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
if(func_8029B2E8() != 0.0f)
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_802A524C();
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
player_setYVelocity(D_80364A50);
|
||||
gravity_set(D_80364A54);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_vertical_velocity(D_80364A50);
|
||||
baphysics_set_gravity(D_80364A54);
|
||||
func_8030E58C(SFX_48_KAZOOIE_RUUH, 0.9f);
|
||||
D_8037D360 = 0;
|
||||
}
|
||||
@@ -342,9 +343,9 @@ void bsblongleg_jump_update(void){
|
||||
|
||||
func_802A531C();
|
||||
func_802A524C();
|
||||
_get_velocity(&sp34);
|
||||
baphysics_get_velocity(sp34);
|
||||
if(button_released(BUTTON_A) && 0.0f < sp34[1])
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
|
||||
sp30 = player_getYPosition() - func_80294438();
|
||||
switch(D_8037D360){
|
||||
@@ -400,7 +401,7 @@ void bsblongleg_jump_update(void){
|
||||
}
|
||||
|
||||
void bsblongleg_jump_end(void){
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
func_802A5404();
|
||||
}
|
||||
|
||||
@@ -412,14 +413,14 @@ void bsblongleg_slide_init(void){
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED);
|
||||
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());
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
func_8029E070(1);
|
||||
func_8029E064(1);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
roll_setAngularVelocity(1000.0f, 12.0f);
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_80299AAC();
|
||||
D_8037D358 = 1.0f;
|
||||
}
|
||||
@@ -437,8 +438,8 @@ void bsblongleg_slide_update(void){
|
||||
func_80294480(sp30);
|
||||
func_8025801C(sp30, &sp2C);
|
||||
func_80299594(1, 0.5f);
|
||||
func_80297970(ml_map_f(pitch_getIdeal(), 20.0f, 60.0f, 550.0f, 700.0f));
|
||||
func_8029797C(sp2C);
|
||||
baphysics_set_target_horizontal_velocity(ml_map_f(pitch_getIdeal(), 20.0f, 60.0f, 550.0f, 700.0f));
|
||||
baphysics_set_target_yaw(sp2C);
|
||||
func_8029C22C();
|
||||
}else{//L802A6304
|
||||
sp3C = BS_26_LONGLEG_IDLE;
|
||||
@@ -463,8 +464,8 @@ void func_802A6388(f32 arg0){
|
||||
|
||||
void func_802A6394(void){
|
||||
baanim_playForDuration_loopSmooth(ASSET_41_ANIM_BSLONGLEG_IDLE, 1.0f);
|
||||
func_8029C7F4(1,1,3,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_802A5374();
|
||||
baModel_setDirection(PLAYER_MODEL_DIR_KAZOOIE);
|
||||
func_8029C674();
|
||||
|
@@ -3,6 +3,8 @@
|
||||
#include "variables.h"
|
||||
#include "core2/yaw.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
void baModel_80292048(s32, f32, f32, f32);
|
||||
void animctrl_start(AnimCtrl *, char *, s32);
|
||||
|
||||
@@ -38,11 +40,11 @@ void bsbpeck_init(void){
|
||||
func_80293240(2);
|
||||
|
||||
baanim_playForDuration_onceSmooth(ASSET_1A_ANIM_BSBPECK, 0.2f);
|
||||
func_8029C7F4(1,YAW_STATE_3_BOUNDED, 1, 6);
|
||||
func_8029C7F4(1,YAW_STATE_3_BOUNDED, 1, BA_PHYSICS_AIRBORN);
|
||||
yaw_setVelocityBounded(1200.0f, 10.0f);
|
||||
func_8029E070(1);
|
||||
gravity_set(D_80364A60);
|
||||
player_setYVelocity(D_80364A64);
|
||||
baphysics_set_gravity(D_80364A60);
|
||||
baphysics_set_vertical_velocity(D_80364A64);
|
||||
baModel_80292048(1, -38.0f, 0.0f, 105.0f);
|
||||
baModel_80292048(0, -38.0f, 0.0f, -7.0f);
|
||||
baMarker_8028D638(0x23, 0x2A);
|
||||
@@ -66,7 +68,7 @@ void func_802A664C(void){
|
||||
}
|
||||
miscflag_set(MISC_FLAG_5_HAS_PECKED);
|
||||
func_8030E58C(SFX_42_KAZOOIE_RAH, sp1C);
|
||||
player_setYVelocity(D_80364A64);
|
||||
baphysics_set_vertical_velocity(D_80364A64);
|
||||
D_8037D375++;
|
||||
}
|
||||
|
||||
@@ -76,7 +78,7 @@ void bsbpeck_update(void){
|
||||
|
||||
func_802B6FA8();
|
||||
if(D_8037D377){
|
||||
func_80297970(func_80297A64() * 0.1);
|
||||
baphysics_set_target_horizontal_velocity(baphysics_get_target_horizontal_velocity() * 0.1);
|
||||
}
|
||||
|
||||
switch(D_8037D374){
|
||||
@@ -134,5 +136,5 @@ void bsbpeck_end(void){
|
||||
baModel_80292048(0, 0.0f, 0.0f, 0.0f);
|
||||
baMarker_8028D638(0, 0);
|
||||
func_8029E070(0);
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
}
|
||||
|
@@ -1,6 +1,8 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"s
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
/* .data */
|
||||
const f32 D_80364A70 = 1250.0f;
|
||||
@@ -21,14 +23,14 @@ void bsbshock_charge_init(void){
|
||||
animctrl_setSubRange(aCtrl, 0.0f, 0.1061f);
|
||||
animctrl_setPlaybackType(aCtrl,1);
|
||||
animctrl_start(aCtrl, "bsbshock.c", 0x61);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
|
||||
if(func_8029B2E8() != 0.0f)
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_802B6FA8();
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
func_8029E064(1);
|
||||
func_8029E070(1);
|
||||
func_80299BD4();
|
||||
@@ -55,9 +57,9 @@ void bsbshock_charge_update(void){
|
||||
func_8029C348();
|
||||
}
|
||||
func_802B6FA8();
|
||||
_get_velocity(sp1C);
|
||||
baphysics_get_velocity(sp1C);
|
||||
if(button_released(BUTTON_A) && 0.0f < sp1C[1]){
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
}
|
||||
|
||||
switch(D_8037D381){
|
||||
@@ -89,7 +91,7 @@ void bsbshock_charge_update(void){
|
||||
D_8037D380 = 0;
|
||||
}//L802A6CF4
|
||||
if(func_8028B2E8())
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
}
|
||||
else{//L802A6D18
|
||||
if(should_flap())
|
||||
@@ -102,7 +104,7 @@ void bsbshock_charge_update(void){
|
||||
sp2C = BS_BSHOCK_JUMP;
|
||||
|
||||
if(animctrl_isAt(aCtrl, 0.5551f)){
|
||||
player_setYVelocity(180.0f);
|
||||
baphysics_set_vertical_velocity(180.0f);
|
||||
baModel_80292158(0.0f);
|
||||
func_80298528(50.0f);
|
||||
}
|
||||
@@ -132,16 +134,16 @@ void bsbshock_init(void){
|
||||
animctrl_setSubRange(aCtrl, 0.0f, 1.0f);
|
||||
animctrl_setPlaybackType(aCtrl,1);
|
||||
animctrl_start(aCtrl, "bsbshock.c", 0x13a);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
|
||||
if(func_8029B2E8() != 0.0f)
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_802B6FA8();
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
player_setYVelocity(D_80364A70);
|
||||
gravity_set(D_80364A74);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_vertical_velocity(D_80364A70);
|
||||
baphysics_set_gravity(D_80364A74);
|
||||
func_8030E484(SFX_E_SHOCKSPRING_BOING);
|
||||
func_8029E064(1);
|
||||
func_8029E070(1);
|
||||
@@ -157,12 +159,12 @@ void bsbshock_update(void){
|
||||
AnimCtrl * aCtrl = baanim_getAnimCtrlPtr();
|
||||
|
||||
func_802B6FA8();
|
||||
_get_velocity(sp20);
|
||||
baphysics_get_velocity(sp20);
|
||||
if(animctrl_isAt(aCtrl, 0.7f))
|
||||
func_8030E484(SFX_53_BANJO_HUIII);
|
||||
|
||||
if(button_released(BUTTON_A) && 0.0f < sp20[1])
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
|
||||
if(D_8037D381 == 0){
|
||||
func_8029C348();
|
||||
@@ -186,7 +188,7 @@ void bsbshock_update(void){
|
||||
|
||||
void bsbshock_end(void){
|
||||
if(bs_getNextState() != BS_11_BPECK)
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
|
||||
func_8029E064(0);
|
||||
func_8029E070(0);
|
||||
|
@@ -3,6 +3,8 @@
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/model.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
|
||||
extern f32 func_8029494C(void);
|
||||
extern f32 func_8029B2D0(void);
|
||||
@@ -17,12 +19,12 @@ u8 D_8037D396;
|
||||
f32 D_8037D398;
|
||||
|
||||
void func_802A7140() {
|
||||
func_8029C7F4(1, 3, 3, 9);
|
||||
func_8029C7F4(1, 3, 3, BA_PHYSICS_NO_GRAVITY);
|
||||
}
|
||||
|
||||
f32 func_802A716C() {
|
||||
f32 sp24[3];
|
||||
_get_velocity(sp24);
|
||||
baphysics_get_velocity(sp24);
|
||||
ml_map_f(gu_sqrtf((sp24[0] * sp24[0]) + (sp24[1] * sp24[1]) + (sp24[2] * sp24[2])), 50.0f, 200.0f, 0.0f, 1.0f);
|
||||
}
|
||||
|
||||
@@ -71,14 +73,14 @@ void func_802A744C(void) {
|
||||
func_8035644C(FILEPROG_AC_DIVE_OILY_WATER);
|
||||
}
|
||||
roll_setAngularVelocity(30.0f, 0.9f);
|
||||
gravity_set(0.0f);
|
||||
func_80297BF8(-399.99f);
|
||||
baphysics_set_gravity(0.0f);
|
||||
baphysics_set_terminal_velocity(-399.99f);
|
||||
func_8029B324(0, 0.03f);
|
||||
func_8029B324(1, 1.0f);
|
||||
func_8029E070(1);
|
||||
func_80294378(3);
|
||||
baModel_setYDisplacement(60.0f);
|
||||
func_80297B64(2.0f);
|
||||
baphysics_set_acceleration(2.0f);
|
||||
}
|
||||
|
||||
|
||||
@@ -102,8 +104,8 @@ void func_802A75B0(void) {
|
||||
if (!bsbswim_inSet(bs_getNextState())) {
|
||||
pitch_setIdeal(0.0f);
|
||||
roll_setIdeal(0.0f);
|
||||
func_80297B94();
|
||||
gravity_reset();
|
||||
baphysics_reset_terminal_velocity();
|
||||
baphysics_reset_gravity();
|
||||
func_8029B0C0();
|
||||
func_8029E070(0);
|
||||
func_80294378(1);
|
||||
@@ -114,9 +116,9 @@ void func_802A75B0(void) {
|
||||
void func_802A762C() {
|
||||
baanim_playForDuration_loopSmooth(0x70, 2.0f);
|
||||
func_802A7140();
|
||||
func_80297930(0);
|
||||
baphysics_set_target_velocity(0);
|
||||
func_802A744C();
|
||||
func_80297B64(0.4f);
|
||||
baphysics_set_acceleration(0.4f);
|
||||
}
|
||||
|
||||
void func_802A7674() {
|
||||
@@ -162,7 +164,7 @@ void func_802A7738(void) {
|
||||
func_802A7140();
|
||||
func_802A744C();
|
||||
D_8037D390 = 0.0f;
|
||||
func_80297B64(1.0f);
|
||||
baphysics_set_acceleration(1.0f);
|
||||
func_802906A4(2);
|
||||
}
|
||||
|
||||
@@ -174,8 +176,8 @@ void func_802A77D8(void) {
|
||||
sp34 = pitch_get();
|
||||
sp30 = yaw_get();
|
||||
func_80256E24(sp24, sp34, sp30, 0.0f, 0.0f, D_8037D390);
|
||||
func_80297930(sp24);
|
||||
func_80297A0C(sp24);
|
||||
baphysics_set_target_velocity(sp24);
|
||||
baphysics_set_velocity(sp24);
|
||||
}
|
||||
|
||||
void func_802A7838(void) {
|
||||
@@ -237,7 +239,7 @@ void func_802A7A54() {
|
||||
func_802A7140();
|
||||
func_802A744C();
|
||||
D_8037D390 = 120.0f;
|
||||
func_80297B64(2.0f);
|
||||
baphysics_set_acceleration(2.0f);
|
||||
func_802906A4(2);
|
||||
}
|
||||
|
||||
@@ -291,10 +293,10 @@ void func_802A7BD0(void) {
|
||||
func_80257F18(sp24, sp30, &sp3C);
|
||||
yaw_setIdeal(mlNormalizeAngle(sp3C));
|
||||
yaw_applyIdeal();
|
||||
func_80297970(func_802987D4());
|
||||
func_8029797C(sp3C);
|
||||
func_802979AC(sp3C, func_80297A64());
|
||||
func_8029C7F4(1, 1, 2, 3);
|
||||
baphysics_set_target_horizontal_velocity(func_802987D4());
|
||||
baphysics_set_target_yaw(sp3C);
|
||||
baphysics_set_horizontal_velocity(sp3C, baphysics_get_target_horizontal_velocity());
|
||||
func_8029C7F4(1, 1, 2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
func_802A744C();
|
||||
@@ -333,7 +335,7 @@ void bsSwim_dive_init(void) {
|
||||
baanim_playForDuration_once(ASSET_3C_ANIM_BSSWIM_DIVE_ENTER, 1.0f);
|
||||
func_802A7140();
|
||||
yaw_setVelocityBounded(500.0f, 5.0f);
|
||||
func_80297930(0);
|
||||
baphysics_set_target_velocity(0);
|
||||
func_802A744C();
|
||||
pitch_setAngVel(200.0f, 2.5f);
|
||||
func_80299BD4();
|
||||
@@ -357,7 +359,7 @@ void func_802A7E2C(void) {
|
||||
sp34 = pitch_get();
|
||||
sp30 = yaw_get();
|
||||
func_80256E24(sp24, sp34, sp30, 0.0f, 0.0f, 800.0f);
|
||||
func_80297A0C(sp24);
|
||||
baphysics_set_velocity(sp24);
|
||||
func_8029E3C0(1, 0.8f);
|
||||
D_8037D396 = TRUE;
|
||||
}
|
||||
@@ -394,9 +396,9 @@ void func_802A7F6C(void) {
|
||||
baanim_playForDuration_loopSmooth(ASSET_B9_ANIM_BSSWIM_DIE, 0.7f);
|
||||
func_802A7140();
|
||||
func_802A744C();
|
||||
func_80297B64(1.0f);
|
||||
func_80297930(0);
|
||||
func_80297A0C(0);
|
||||
baphysics_set_acceleration(1.0f);
|
||||
baphysics_set_target_velocity(0);
|
||||
baphysics_set_velocity(0);
|
||||
pitch_setIdeal(275.0f);
|
||||
roll_setIdeal(0.0f);
|
||||
D_8037D396 = 0;
|
||||
@@ -415,8 +417,8 @@ void func_802A8098(void) {
|
||||
|
||||
next_state = 0;
|
||||
func_80256E24(sp40, -90.0f, 0.0f, 0.0f, 0.0f, 100.0f);
|
||||
func_80297930(sp40);
|
||||
func_80297A0C(sp40);
|
||||
baphysics_set_target_velocity(sp40);
|
||||
baphysics_set_velocity(sp40);
|
||||
func_8029E22C(1);
|
||||
if( func_8029E284(1, 0.2f)
|
||||
|| func_8029E284(1, 0.8f)
|
||||
@@ -437,7 +439,7 @@ void func_802A8098(void) {
|
||||
next_state = BS_2D_SWIM_IDLE;
|
||||
}
|
||||
if (func_8029E314(1, 1.55f)) {
|
||||
player_setYVelocity(-50.0f);
|
||||
baphysics_set_vertical_velocity(-50.0f);
|
||||
}
|
||||
if (func_8029E284(1, 1.9f)) {
|
||||
func_802914CC(0xD);
|
||||
@@ -487,8 +489,8 @@ void func_802A8330(void) {
|
||||
void func_802A83C0(void) {
|
||||
baanim_playForDuration_loopSmooth(0x70, 2.0f);
|
||||
func_802A7140();
|
||||
func_80297930(0);
|
||||
func_80297B64(0.4f);
|
||||
baphysics_set_target_velocity(0);
|
||||
baphysics_set_acceleration(0.4f);
|
||||
func_802A744C();
|
||||
func_802A8330();
|
||||
}
|
||||
@@ -535,10 +537,10 @@ void func_802A846C(void) {
|
||||
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);
|
||||
func_8029C7F4(1, 3, 3, 9);
|
||||
baphysics_set_vertical_velocity(D_8037D398);
|
||||
func_8029C7F4(1, 3, 3, BA_PHYSICS_NO_GRAVITY);
|
||||
func_802A744C();
|
||||
func_802978DC(6);
|
||||
baphysics_set_type(BA_PHYSICS_AIRBORN);
|
||||
}
|
||||
|
||||
void func_802A85EC(void) {
|
||||
@@ -554,7 +556,7 @@ void func_802A85EC(void) {
|
||||
particleEmitter_emitN(sp34, 1);
|
||||
if (D_8037D398 < 0.0f) {
|
||||
D_8037D398 += ml_max_f(mlAbsF(D_8037D398) * 0.1, 50.0f);
|
||||
player_setYVelocity(D_8037D398);
|
||||
baphysics_set_vertical_velocity(D_8037D398);
|
||||
}
|
||||
if (func_8028B2E8()) {
|
||||
next_state = BS_2D_SWIM_IDLE;
|
||||
@@ -562,7 +564,7 @@ void func_802A85EC(void) {
|
||||
if (!player_inWater()) {
|
||||
next_state = BS_1_IDLE;
|
||||
}
|
||||
if (_get_vertVelocity() >= 0.0f) {
|
||||
if (baphysics_get_vertical_velocity() >= 0.0f) {
|
||||
next_state = BS_2D_SWIM_IDLE;
|
||||
}
|
||||
bs_setState(next_state);
|
||||
|
@@ -3,8 +3,9 @@
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/model.h"
|
||||
#include "core2/statetimer.h"
|
||||
#include "core2/ba/anim.h"
|
||||
#include "core2/ba/physics.h"
|
||||
#include "core2/statetimer.h"
|
||||
|
||||
/* .data */
|
||||
f32 D_80364A90 = 30.0f;
|
||||
@@ -42,7 +43,7 @@ void func_802A880C(s32 arg0){
|
||||
void func_802A8850(void){
|
||||
if( button_pressed(BUTTON_B)
|
||||
&& stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)
|
||||
&& func_80297A64() == 0.0f
|
||||
&& baphysics_get_target_horizontal_velocity() == 0.0f
|
||||
){
|
||||
stateTimer_clear(STATE_TIMER_3_TURBO_TALON);
|
||||
}
|
||||
@@ -90,10 +91,10 @@ f32 func_802A8984(void){
|
||||
void func_802A89D4(void){
|
||||
f32 sp24 = func_8029B30C();
|
||||
if(!func_8029B300()){
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
}
|
||||
else{
|
||||
func_80297970(ml_interpolate_f(sp24, func_802A8900(), func_802A88B0()));
|
||||
baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp24, func_802A8900(), func_802A88B0()));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -213,8 +214,8 @@ enum bs_e func_802A8D84(enum bs_e arg0){
|
||||
void bsbtrot_enter_init(void){
|
||||
func_802A8AD8();
|
||||
baanim_playForDuration_onceSmooth(ASSET_16_ANIM_BSBTROT_ENTER, 1.0f);
|
||||
func_8029C7F4(1,1,2,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,2, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_802A8A40();
|
||||
func_80299BD4();
|
||||
func_802952A8(0,0);
|
||||
@@ -242,8 +243,8 @@ void bsbtrot_enter_end(void){
|
||||
|
||||
void bsbtrot_stand_init(void){
|
||||
baanim_playForDuration_loopSmooth(ASSET_26_ANIM_BSBTROT_IDLE, 1.2f);
|
||||
func_8029C7F4(1,1,1,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,1, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_802A8A40();
|
||||
}
|
||||
|
||||
@@ -272,7 +273,7 @@ void func_802A9054(void){
|
||||
f32 tmp = 1.0f;
|
||||
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);
|
||||
tmp = ml_map_f(baphysics_get_horizontal_velocity_percentage(), 0.0f, 1.0f, 0.6f, 0.9f);
|
||||
baanim_scaleDuration(tmp);
|
||||
}
|
||||
else{
|
||||
@@ -282,7 +283,7 @@ void func_802A9054(void){
|
||||
|
||||
void bsbtrot_walk_init(void){
|
||||
baanim_playForDuration_loopSmooth(func_802A9030(), 0.53f);
|
||||
func_8029C7F4(2,1,1,2);
|
||||
func_8029C7F4(2,1,1, BA_PHYSICS_NORMAL);
|
||||
func_802A8A40();
|
||||
func_802A9054();
|
||||
}
|
||||
@@ -312,7 +313,7 @@ void bsbtrot_walk_update(void){
|
||||
if(animctrl_isAt(aCtrl, 0.2115f) || animctrl_isAt(aCtrl, 0.7115f))
|
||||
func_802A87C0();
|
||||
}
|
||||
if(!func_8029B300() && func_80297C04(1.0f))
|
||||
if(!func_8029B300() && baphysics_is_slower_than(1.0f))
|
||||
sp1C = BS_15_BTROT_IDLE;
|
||||
|
||||
if(func_8028B094())
|
||||
@@ -355,15 +356,15 @@ void bsbtrot_jump_init(void){
|
||||
baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL);
|
||||
yaw_setUpdateState(1);
|
||||
func_8029957C(3);
|
||||
func_802978DC(6);
|
||||
baphysics_set_type(BA_PHYSICS_AIRBORN);
|
||||
if(func_8029B2E8() != 0.0f)
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_802A89D4();
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
player_setYVelocity(D_80364ABC);
|
||||
gravity_set(D_80364AC0);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_vertical_velocity(D_80364ABC);
|
||||
baphysics_set_gravity(D_80364AC0);
|
||||
func_8030E484(SFX_48_KAZOOIE_RUUH);
|
||||
D_8037D3A4 = 0;
|
||||
}
|
||||
@@ -377,13 +378,13 @@ void bsbtrot_jump_update(void){
|
||||
func_802A87C0();
|
||||
|
||||
if(miscflag_isTrue(0xF))
|
||||
func_802978A4();
|
||||
baphysics_reset_horizontal_velocity();
|
||||
else
|
||||
func_802A89D4();
|
||||
|
||||
_get_velocity(sp1C);
|
||||
baphysics_get_velocity(sp1C);
|
||||
if(button_released(BUTTON_A) && 0.0f < sp1C[1])
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
|
||||
switch(D_8037D3A4){
|
||||
case 0://L802A9530
|
||||
@@ -411,13 +412,13 @@ void bsbtrot_jump_update(void){
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
func_8029957C(1);
|
||||
D_8037D3A4 = 3;
|
||||
if(220.0f < func_80297A64())
|
||||
if(220.0f < baphysics_get_target_horizontal_velocity())
|
||||
func_80299AAC();
|
||||
func_8029C22C();
|
||||
}
|
||||
break;
|
||||
case 3://L802A9660
|
||||
if(220.0f < func_80297A64())
|
||||
if(220.0f < baphysics_get_target_horizontal_velocity())
|
||||
func_80299AAC();
|
||||
func_802A9320();
|
||||
func_80299628(1);
|
||||
@@ -430,7 +431,7 @@ void bsbtrot_jump_update(void){
|
||||
func_8029C22C();
|
||||
break;
|
||||
case 4://L802A96F0
|
||||
if(220.0f < func_80297A64())
|
||||
if(220.0f < baphysics_get_target_horizontal_velocity())
|
||||
func_80299AAC();
|
||||
|
||||
func_802A9320();
|
||||
@@ -444,7 +445,7 @@ void bsbtrot_jump_update(void){
|
||||
func_8029C22C();
|
||||
break;
|
||||
case 5://L802A9780
|
||||
if(220.0f < func_80297A64())
|
||||
if(220.0f < baphysics_get_target_horizontal_velocity())
|
||||
func_80299AAC();
|
||||
func_802A9320();
|
||||
func_80299628(1);
|
||||
@@ -474,14 +475,14 @@ void bsbtrot_jump_update(void){
|
||||
}
|
||||
|
||||
void bsbtrot_jump_end(void){
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
func_802A8BB0();
|
||||
}
|
||||
|
||||
void bsbtrot_exit_init(void){
|
||||
baanim_playForDuration_onceSmooth(ASSET_7_ANIM_BSBTROT_EXIT, 0.6f);
|
||||
baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL);
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
}
|
||||
|
||||
void bsbtrot_exit_update(void){
|
||||
@@ -504,14 +505,14 @@ void bsbtrot_slide_init(void){
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED);
|
||||
animctrl_start(aCtrl, "bsbtrot.c", 0x382);
|
||||
func_802A8A40();
|
||||
func_8029C7F4(1,1,3,3);
|
||||
func_8029797C(yaw_getIdeal());
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
func_8029E070(1);
|
||||
func_8029E064(1);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
roll_setAngularVelocity(1000.0f, 12.0f);
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_80299AAC();
|
||||
D_8037D3A0 = 1.0f;
|
||||
}
|
||||
@@ -530,8 +531,8 @@ void bsbtrot_slide_update(void){
|
||||
func_80294480(sp30);
|
||||
func_8025801C(sp30, &sp2C);
|
||||
func_80299628(1);
|
||||
func_80297970(ml_map_f(pitch_getIdeal(), 20.0f, 60.0f, 550.0f, 700.0f));
|
||||
func_8029797C(sp2C);
|
||||
baphysics_set_target_horizontal_velocity(ml_map_f(pitch_getIdeal(), 20.0f, 60.0f, 550.0f, 700.0f));
|
||||
baphysics_set_target_yaw(sp2C);
|
||||
func_8029C22C();
|
||||
}else{
|
||||
sp3C = BS_15_BTROT_IDLE;
|
||||
@@ -572,10 +573,10 @@ void bsbtrot_fall_init(void){
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED);
|
||||
animctrl_start(aCtrl, "bsbtrot.c", 0x400);
|
||||
func_802A8A40();
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029797C(yaw_getIdeal());
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_802A89D4();
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
D_8037D3A4 = 0;
|
||||
}
|
||||
|
||||
@@ -588,11 +589,11 @@ void bsbtrot_fall_update(void){
|
||||
func_802A87C0();
|
||||
|
||||
if(miscflag_isTrue(0xf))
|
||||
func_802978A4();
|
||||
baphysics_reset_horizontal_velocity();
|
||||
else
|
||||
func_802A89D4();
|
||||
|
||||
_get_velocity(sp1C);
|
||||
baphysics_get_velocity(sp1C);
|
||||
switch (D_8037D3A4){
|
||||
case 0://L802A9D90
|
||||
if(func_8028B254(0x8C)){
|
||||
@@ -610,7 +611,7 @@ void bsbtrot_fall_update(void){
|
||||
animctrl_setDuration(aCtrl, 0.9f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
func_8029957C(1);
|
||||
if(220.0f < func_80297A64()){
|
||||
if(220.0f < baphysics_get_target_horizontal_velocity()){
|
||||
func_80299AAC();
|
||||
}
|
||||
func_8029C22C();
|
||||
@@ -618,7 +619,7 @@ void bsbtrot_fall_update(void){
|
||||
}
|
||||
break;
|
||||
case 2://L802A9E78
|
||||
if(220.0f < func_80297A64())
|
||||
if(220.0f < baphysics_get_target_horizontal_velocity())
|
||||
func_80299AAC();
|
||||
|
||||
func_802A9320();
|
||||
@@ -632,7 +633,7 @@ void bsbtrot_fall_update(void){
|
||||
func_8029C22C();
|
||||
break;
|
||||
case 3://L802A9F08
|
||||
if(220.0f < func_80297A64())
|
||||
if(220.0f < baphysics_get_target_horizontal_velocity())
|
||||
func_80299AAC();
|
||||
|
||||
func_802A9320();
|
||||
@@ -646,7 +647,7 @@ void bsbtrot_fall_update(void){
|
||||
func_8029C22C();
|
||||
break;
|
||||
case 4://802A9F98
|
||||
if(220.0f < func_80297A64())
|
||||
if(220.0f < baphysics_get_target_horizontal_velocity())
|
||||
func_80299AAC();
|
||||
|
||||
func_802A9320();
|
||||
@@ -679,8 +680,8 @@ void bsbtrot_fall_end(void){
|
||||
|
||||
void bsbtrot_unk79_init(void){
|
||||
baanim_playForDuration_loopSmooth(ASSET_26_ANIM_BSBTROT_IDLE, 1.2f);
|
||||
func_8029C7F4(1,1,3,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_802A8A40();
|
||||
baModel_setDirection(PLAYER_MODEL_DIR_KAZOOIE);
|
||||
func_8029C674();
|
||||
@@ -715,14 +716,14 @@ void bsbtrot_ow_init(void){
|
||||
func_80257F18(sp24, sp30, &sp3C);
|
||||
yaw_setIdeal(mlNormalizeAngle(sp3C + 180.0f));\
|
||||
yaw_applyIdeal();
|
||||
func_80297970(func_802987D4());
|
||||
func_8029797C(sp3C);
|
||||
func_802979AC(sp3C, func_80297A64());
|
||||
func_8029C7F4(1,1,2,3);
|
||||
baphysics_set_target_horizontal_velocity(func_802987D4());
|
||||
baphysics_set_target_yaw(sp3C);
|
||||
baphysics_set_horizontal_velocity(sp3C, baphysics_get_target_horizontal_velocity());
|
||||
func_8029C7F4(1,1,2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
if(func_802987B4() == 2)
|
||||
func_802978DC(6);
|
||||
player_setYVelocity(func_802987C4());
|
||||
gravity_set(func_802987E4());
|
||||
baphysics_set_type(BA_PHYSICS_AIRBORN);
|
||||
baphysics_set_vertical_velocity(func_802987C4());
|
||||
baphysics_set_gravity(func_802987E4());
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
}
|
||||
@@ -749,7 +750,7 @@ void bsbtrot_ow_update(void){
|
||||
|
||||
void bsbtrot_ow_end(void){
|
||||
func_80297CA8();
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
func_802A8BB0();
|
||||
|
@@ -3,6 +3,7 @@
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/anim.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
const f32 D_80364AD0 = 80.0f;
|
||||
const f32 D_80364AD4 = 425.0f;
|
||||
@@ -19,9 +20,9 @@ u8 D_8037D3B4;
|
||||
void func_802AA400(void){
|
||||
f32 sp1C = func_8029B30C();
|
||||
if(!func_8029B300()){
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
}else{
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364AD0, D_80364AD4));
|
||||
baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp1C, D_80364AD0, D_80364AD4));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -79,8 +80,8 @@ void func_802AA58C(enum bs_e *arg0){
|
||||
|
||||
void bsbwhirl_enter_init(void){
|
||||
baanim_playForDuration_onceSmooth(ASSET_22_ANIM_BSWHIRL_EXIT, 0.5f);
|
||||
func_8029C7F4(1,1,1,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,1, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_8029B324(0, 0.03f);
|
||||
func_8029B324(1, 1.0f);
|
||||
func_8029E070(1);
|
||||
@@ -107,8 +108,8 @@ void bsbwhirl_enter_end(void){
|
||||
|
||||
void bsbwhirl_stand_init(void){
|
||||
baanim_playForDuration_loopSmooth(ASSET_23_ANIM_BSWONDERWING_IDLE, 1.0f);
|
||||
func_8029C7F4(1,1,1,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,1, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
}
|
||||
|
||||
void bsbwhirl_stand_update(void){
|
||||
@@ -134,8 +135,7 @@ void bsbwhirl_stand_end(void){
|
||||
void bsbwhirl_walk_init(void){
|
||||
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);
|
||||
|
||||
func_8029C7F4(2,1,1, BA_PHYSICS_NORMAL);
|
||||
}
|
||||
|
||||
void bsbwhirl_walk_update(void){
|
||||
@@ -145,7 +145,7 @@ void bsbwhirl_walk_update(void){
|
||||
func_8029AD28(0.97f, 3);
|
||||
func_802AA400();
|
||||
|
||||
if(!func_8029B300() && func_80297C04(1.0f))
|
||||
if(!func_8029B300() && baphysics_is_slower_than(1.0f))
|
||||
sp1C = BS_1B_WONDERWING_IDLE;
|
||||
|
||||
if(button_released(BUTTON_Z))
|
||||
@@ -180,15 +180,15 @@ void bsbwhirl_jump_init(void){
|
||||
animctrl_setSubRange(aCtrl, 0.0f, 0.4495f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(aCtrl, "bsbwhirl.c", 0x181);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3,BA_PHYSICS_AIRBORN);
|
||||
if(func_8029B2E8() != 0.0f)
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_802AA400();
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
player_setYVelocity(D_80364AE0);
|
||||
gravity_set(D_80364AE4);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_vertical_velocity(D_80364AE0);
|
||||
baphysics_set_gravity(D_80364AE4);
|
||||
func_80299B58(0.91f, 1.09f);
|
||||
D_8037D3B4 = 0;
|
||||
}
|
||||
@@ -200,9 +200,9 @@ void bsbwhirl_jump_update(void){
|
||||
|
||||
__bsbwhirl_spawnSparkle();
|
||||
func_802AA400();
|
||||
_get_velocity(&sp1C);
|
||||
baphysics_get_velocity(sp1C);
|
||||
if(button_released(BUTTON_A) && 0.0f < sp1C[1])
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
|
||||
switch(D_8037D3B4){
|
||||
case 0://L802AAB48
|
||||
@@ -236,7 +236,7 @@ void bsbwhirl_jump_update(void){
|
||||
}
|
||||
|
||||
void bsbwhirl_jump_end(void){
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
__bsbwhirl_end();
|
||||
}
|
||||
|
||||
@@ -252,7 +252,7 @@ void bsbwhirl_exit_init(void){
|
||||
animctrl_start(aCtrl, "bsbwhirl.c", 0x201);
|
||||
baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL);
|
||||
func_8029957C(2);
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
comusic_8025AB44(COMUSIC_25_USING_GOLD_FEATHERS, 0.0f, 0xFA0);
|
||||
}
|
||||
|
||||
@@ -285,8 +285,8 @@ void bsbwhirl_drone_end(void){
|
||||
|
||||
void func_802AADBC(void){
|
||||
baanim_playForDuration_loopSmooth(ASSET_23_ANIM_BSWONDERWING_IDLE, 1.0f);
|
||||
func_8029C7F4(1,1,3,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_8029C674();
|
||||
}
|
||||
|
||||
|
@@ -2,6 +2,8 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
/*.data*/
|
||||
const f32 D_80364990 = 400.0f;
|
||||
const f32 D_80364994 = -800.0f;
|
||||
@@ -62,11 +64,11 @@ void bsbbuster_init(void){
|
||||
animctrl_setSubRange(aCtrl, 0.0f, 0.35f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(aCtrl, "bsbbuster.c", 0x81);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
gravity_set(0.0f);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
baphysics_set_gravity(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
ml_vec3f_clear(sp20);
|
||||
func_80297A0C(sp20);
|
||||
baphysics_set_velocity(sp20);
|
||||
func_8029E070(1);
|
||||
func_802A02B4(0);
|
||||
D_8037D2B9 = 0;
|
||||
@@ -101,16 +103,16 @@ void bsbbuster_update(void){
|
||||
case 1://8029FE24
|
||||
D_8037D2B0 -= time_getDelta();
|
||||
if(D_8037D2B0 <= 0.0f){
|
||||
gravity_reset();
|
||||
func_80297BF8(D_803649A8);
|
||||
gravity_set(D_803649A4);
|
||||
player_setYVelocity(D_803649A0);
|
||||
baphysics_reset_gravity();
|
||||
baphysics_set_terminal_velocity(D_803649A8);
|
||||
baphysics_set_gravity(D_803649A4);
|
||||
baphysics_set_vertical_velocity(D_803649A0);
|
||||
D_8037D2B7 = 1;
|
||||
D_8037D2BA = 2;
|
||||
}
|
||||
break;
|
||||
case 2://8029FEA0
|
||||
if(D_8037D2B5 == 0 && _get_vertVelocity() < 0.0f){
|
||||
if(D_8037D2B5 == 0 && baphysics_get_vertical_velocity() < 0.0f){
|
||||
func_8030E760(SFX_45_KAZOOIE_HUGHH, 1.2f, 0x7530);
|
||||
D_8037D2B5++;
|
||||
}
|
||||
@@ -137,9 +139,9 @@ void bsbbuster_update(void){
|
||||
func_802BB3DC( 0, 45.0f, 0.71f);
|
||||
func_8029AE74(0);
|
||||
func_8029FB30();
|
||||
func_80297A0C(0);
|
||||
gravity_set(0.0f);
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_velocity(0);
|
||||
baphysics_set_gravity(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
D_8037D2B7 = 2;
|
||||
D_8037D2B8 = 1;
|
||||
D_8037D2B0 = 0.09f;
|
||||
@@ -160,11 +162,11 @@ void bsbbuster_update(void){
|
||||
D_8037D2B0 -= time_getDelta();
|
||||
if(D_8037D2B0 <= 0.0f){
|
||||
if(D_8037D2BB){
|
||||
player_setYVelocity(D_80364990);
|
||||
gravity_set(D_80364994);
|
||||
baphysics_set_vertical_velocity(D_80364990);
|
||||
baphysics_set_gravity(D_80364994);
|
||||
}else{
|
||||
player_setYVelocity(D_80364998);
|
||||
gravity_set(D_8036499C);
|
||||
baphysics_set_vertical_velocity(D_80364998);
|
||||
baphysics_set_gravity(D_8036499C);
|
||||
}
|
||||
|
||||
animctrl_setSubRange(aCtrl, 0.0f, 0.7299f);
|
||||
@@ -196,8 +198,8 @@ void bsbbuster_update(void){
|
||||
}//L802A024C
|
||||
|
||||
void bsbbuster_end(void){
|
||||
gravity_reset();
|
||||
func_80297B94();
|
||||
baphysics_reset_gravity();
|
||||
baphysics_reset_terminal_velocity();
|
||||
func_8029E070(0);
|
||||
D_8037D2B7 = 0;
|
||||
D_8037D2B8 = 0;
|
||||
|
@@ -2,20 +2,18 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
|
||||
void func_80354030(f32*, f32);
|
||||
f32 func_8029B2E8(void);
|
||||
f32 func_8029B33C(void);
|
||||
void func_8029797C(f32);
|
||||
void func_80297970(f32);
|
||||
|
||||
void baModel_setYDisplacement(f32);
|
||||
void func_80297BF8(f32);
|
||||
void ncDynamicCam4_func_802BFE50(f32, f32, f32);
|
||||
void yaw_setVelocityBounded(f32, f32);
|
||||
f32 func_8029B2D0(void);
|
||||
f32 func_8029B2DC(void);
|
||||
f32 func_80297A64(void);
|
||||
void func_802979AC(f32, f32);
|
||||
void func_8028FDC8(f32);
|
||||
void func_80290B40(f32);
|
||||
void func_80290A6C(void);
|
||||
@@ -45,13 +43,13 @@ void func_802A04F0(void){
|
||||
void func_802A0590(void){
|
||||
func_802A0340();
|
||||
baanim_playForDuration_onceSmooth(0x1df, 1.5f);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
if(func_8029B2E8() != 0.0f){
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
}
|
||||
func_8029797C(yaw_getIdeal());
|
||||
func_80297970(0.0f);
|
||||
gravity_set(-1200.0f);
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
baphysics_set_gravity(-1200.0f);
|
||||
D_8037D2C0 = 0;
|
||||
}
|
||||
|
||||
@@ -64,7 +62,7 @@ void func_802A0630(void){
|
||||
case 0:
|
||||
if(!animctrl_isAt(mvmnt, 0.266f))
|
||||
break;
|
||||
player_setYVelocity(1600.0f);
|
||||
baphysics_set_vertical_velocity(1600.0f);
|
||||
func_8030E58C(SFX_C_TAKING_FLIGHT_LIFTOFF, 0.7f);
|
||||
D_8037D2C0 = 1;
|
||||
break;
|
||||
@@ -72,7 +70,7 @@ void func_802A0630(void){
|
||||
func_802A04F0();
|
||||
if(animctrl_isStopped(mvmnt))
|
||||
baanim_playForDuration_loopSmooth(ASSET_1DC_ANIM_BEE_FLY, 0.38f);
|
||||
if(_get_vertVelocity() < 0.0f)
|
||||
if(baphysics_get_vertical_velocity() < 0.0f)
|
||||
next_state = BS_BEE_FLY;
|
||||
break;
|
||||
}
|
||||
@@ -98,8 +96,8 @@ void _bsbeefly_end(void){
|
||||
roll_setIdeal(0.0f);
|
||||
pitch_setIdeal(0.0f);
|
||||
func_80291548();
|
||||
gravity_reset();
|
||||
func_80297B94();
|
||||
baphysics_reset_gravity();
|
||||
baphysics_reset_terminal_velocity();
|
||||
func_8028FFBC(0);
|
||||
func_8029099C();
|
||||
}
|
||||
@@ -111,8 +109,8 @@ void func_802A07F8(void){
|
||||
yaw_setUpdateState(3);
|
||||
roll_setAngularVelocity(500.0f, 2.0f);
|
||||
func_802A0724();
|
||||
gravity_set(-300.0f);
|
||||
func_80297BF8(-99.9f);
|
||||
baphysics_set_gravity(-300.0f);
|
||||
baphysics_set_terminal_velocity(-99.9f);
|
||||
func_8028FEF0();
|
||||
func_8028FFBC(1);
|
||||
func_802909C4();
|
||||
@@ -153,13 +151,13 @@ void bsbeefly_enter(void){
|
||||
|
||||
mvmnt = bs_getPrevState();
|
||||
baanim_playForDuration_loopSmooth(ASSET_1DC_ANIM_BEE_FLY, 0.38);
|
||||
func_8029C7F4(1, 1, 3, 3);
|
||||
func_8029C7F4(1, 1, 3, BA_PHYSICS_LOCKED_ROTATION);
|
||||
if(miscflag_isTrue(9))
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
else
|
||||
func_80297970(600.0f);
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_target_horizontal_velocity(600.0f);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_802914CC(4);
|
||||
func_802A07F8();
|
||||
if(mvmnt != 0x8b){
|
||||
@@ -200,7 +198,7 @@ void bsbeefly_update(void){
|
||||
sp40 += *sp24;
|
||||
sp3C = pitch_get();
|
||||
sp30 = 0.0f;
|
||||
if(_get_vertVelocity() < 0.0f){
|
||||
if(baphysics_get_vertical_velocity() < 0.0f){
|
||||
if(sp3C < 300.0f){
|
||||
sp30 = ml_map_f(sp3C, 0.0f, 80.0f, 0.0f, 0.23f);
|
||||
}
|
||||
@@ -228,7 +226,7 @@ void bsbeefly_update(void){
|
||||
pitch_setIdeal(sp40);
|
||||
func_802A0750();
|
||||
if(sp44 != 0){
|
||||
player_setYVelocity(sp44*400.0);
|
||||
baphysics_set_vertical_velocity(sp44*400.0);
|
||||
func_802A04F0();
|
||||
}
|
||||
if((s32)sp24 == (s32)&D_803649C4){
|
||||
@@ -238,23 +236,23 @@ void bsbeefly_update(void){
|
||||
break;
|
||||
}//L802A0DF0
|
||||
if(miscflag_isTrue(9)){
|
||||
func_80297BF8(0.0f);
|
||||
func_80297A0C(0);
|
||||
baphysics_set_terminal_velocity(0.0f);
|
||||
baphysics_set_velocity(0);
|
||||
sp38 = 0.0f;
|
||||
}else{
|
||||
if(sp3C <= 80.0f){
|
||||
func_80297BF8(ml_map_f(sp3C, 60.0f, 80.0f, -99.9, -1266.66));
|
||||
baphysics_set_terminal_velocity(ml_map_f(sp3C, 60.0f, 80.0f, -99.9, -1266.66));
|
||||
sp38 = ml_map_f(sp3C, 60.0f, 80.0f, 600.0f, 60.0f);
|
||||
}else{
|
||||
func_80297BF8(ml_map_f(sp3C, 300.0f, 310.0f, -399.99, -99.9));
|
||||
baphysics_set_terminal_velocity(ml_map_f(sp3C, 300.0f, 310.0f, -399.99, -99.9));
|
||||
sp38 = ml_map_f(sp3C, 300.0f, 340.0f, 0.0f, 600.0f);
|
||||
}
|
||||
}
|
||||
func_8029797C(yaw_get());
|
||||
baphysics_set_target_yaw(yaw_get());
|
||||
if(button_held(9)){
|
||||
sp38 += (f64)sp38;
|
||||
}
|
||||
func_80297970(sp38);
|
||||
baphysics_set_target_horizontal_velocity(sp38);
|
||||
if(func_8028B2E8() && !player_inWater())
|
||||
sp4C = BS_85_BEE_IDLE;
|
||||
func_8028FFF0();
|
||||
|
@@ -2,13 +2,12 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
f32 func_8029B41C(void);
|
||||
void func_8029E3C0(s32, f32);
|
||||
void func_80299628(s32);
|
||||
void yaw_applyIdeal(void);
|
||||
void func_8029797C(f32);
|
||||
f32 func_80297A64(void);
|
||||
void func_802979AC(f32, f32);
|
||||
void ncDynamicCamD_func_802BF2C0(f32);
|
||||
|
||||
f32 baanim_getTimer(void);
|
||||
@@ -51,18 +50,18 @@ void func_802A1020(void){
|
||||
|
||||
sp1c = func_8029B30C();
|
||||
if(func_8029B300() == 0){
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
}
|
||||
else{
|
||||
func_80297970(ml_interpolate_f(sp1c, D_803649E0, D_803649E4));
|
||||
baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp1c, D_803649E0, D_803649E4));
|
||||
}
|
||||
}
|
||||
|
||||
void func_802A1080(void){
|
||||
func_802A0340();
|
||||
baanim_playForDuration_loopSmooth(ASSET_1DE_ANIM_BEE_IDLE,3.0f);
|
||||
func_8029C7F4(1,1,1,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,1, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_802900B4();
|
||||
}
|
||||
|
||||
@@ -97,7 +96,7 @@ void func_802A117C(void){
|
||||
void func_802A11A4(void){
|
||||
func_802A0340();
|
||||
baanim_playForDuration_loopSmooth(ASSET_1DD_ANIM_BEE_WALK, 0.38f);
|
||||
func_8029C7F4(2,1,1,2);
|
||||
func_8029C7F4(2,1,1, BA_PHYSICS_NORMAL);
|
||||
baanim_setVelocityMapRanges(D_803649E0, D_803649E4, D_803649E8, D_803649EC);
|
||||
func_802900B4();
|
||||
}
|
||||
@@ -110,7 +109,7 @@ void func_802A1214(void){
|
||||
func_802A1020();
|
||||
func_8029AD28(0.94f, 4);
|
||||
func_8029AD28(0.44f, 3);
|
||||
if(func_8029B300() == 0 && func_80297C04(1.0f))
|
||||
if(func_8029B300() == 0 && baphysics_is_slower_than(1.0f))
|
||||
s0 = BS_85_BEE_IDLE;
|
||||
|
||||
if(func_8028B094())
|
||||
@@ -143,15 +142,15 @@ void func_802A12FC(void){
|
||||
animctrl_setDuration(s0, 1.2f);
|
||||
animctrl_setPlaybackType(s0, ANIMCTRL_ONCE);
|
||||
animctrl_start(s0, "bsbeemain.c", 0x15b);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
if(func_8029B2E8() != 0.0f){
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
}
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_802A1020();
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
player_setYVelocity(D_803649F0);
|
||||
gravity_set(D_803649F4);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_vertical_velocity(D_803649F0);
|
||||
baphysics_set_gravity(D_803649F4);
|
||||
func_802A0FB4();
|
||||
D_8037D2D4 = 0;
|
||||
}
|
||||
@@ -164,9 +163,9 @@ void func_802A1438(void){
|
||||
sp2c = 0;
|
||||
sp28 = baanim_getAnimCtrlPtr();
|
||||
func_802A1020();
|
||||
_get_velocity(sp1c);
|
||||
baphysics_get_velocity(sp1c);
|
||||
if(button_released(BUTTON_A) && (0.0f < sp1c[1])){
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
}
|
||||
switch (D_8037D2D4)
|
||||
{
|
||||
@@ -198,7 +197,7 @@ void func_802A1438(void){
|
||||
case 3:
|
||||
func_80299628(0);
|
||||
if(animctrl_isStopped(sp28)){
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
sp2c = BS_85_BEE_IDLE;
|
||||
}
|
||||
break;
|
||||
@@ -222,7 +221,7 @@ void func_802A1438(void){
|
||||
|
||||
void func_802A163C(void){
|
||||
func_802A02C0();
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
}
|
||||
|
||||
void func_802A1664(void){
|
||||
@@ -237,7 +236,7 @@ void func_802A1664(void){
|
||||
animctrl_setSubRange(s0, 0, 0.51f);
|
||||
animctrl_setPlaybackType(s0, ANIMCTRL_ONCE);
|
||||
animctrl_start(s0, "bsbeemain.c", 0x1e2);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
D_8037D2D4 = 0;
|
||||
}
|
||||
|
||||
@@ -250,7 +249,7 @@ void func_802A170C(void){
|
||||
sp28 = baanim_getAnimCtrlPtr();
|
||||
func_80299628(0);
|
||||
func_802A1020();
|
||||
_get_velocity(sp1c);
|
||||
baphysics_get_velocity(sp1c);
|
||||
switch(D_8037D2D4){
|
||||
case 0:
|
||||
if(func_8028B254(0x82)){
|
||||
@@ -262,7 +261,7 @@ void func_802A170C(void){
|
||||
func_80299628(0);
|
||||
if(func_8028B2E8()){
|
||||
func_802A0F90();
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
baanim_setEndAndDuration(1.0f, 0.7f);
|
||||
D_8037D2D4 = 2;
|
||||
}
|
||||
@@ -270,7 +269,7 @@ void func_802A170C(void){
|
||||
case 2:
|
||||
func_80299628(0);
|
||||
if(animctrl_isStopped(sp28)){
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
sp2c = BS_85_BEE_IDLE;
|
||||
}
|
||||
break;
|
||||
@@ -325,12 +324,12 @@ void func_802A18E8(s32 arg0){
|
||||
func_80257F18(sp20, sp2C, &sp38);
|
||||
yaw_setIdeal(mlNormalizeAngle(sp38 + 180.0f));
|
||||
yaw_applyIdeal();
|
||||
func_80297970(200.0f);
|
||||
func_8029797C(sp38);
|
||||
func_802979AC(sp38, func_80297A64());
|
||||
func_8029C7F4(1, 1, 2, 3);
|
||||
player_setYVelocity(510.0f);
|
||||
gravity_set(-1200.0f);
|
||||
baphysics_set_target_horizontal_velocity(200.0f);
|
||||
baphysics_set_target_yaw(sp38);
|
||||
baphysics_set_horizontal_velocity(sp38, baphysics_get_target_horizontal_velocity());
|
||||
func_8029C7F4(1, 1, 2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_vertical_velocity(510.0f);
|
||||
baphysics_set_gravity(-1200.0f);
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
D_8037D2D4 = 0;
|
||||
@@ -363,7 +362,7 @@ void func_802A1A50(void){
|
||||
|
||||
void func_802A1B28(void){
|
||||
func_80297CA8();
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
func_802A02C0();
|
||||
@@ -409,18 +408,18 @@ void bsbeemain_die_init(void){
|
||||
animctrl_setDuration(sp3C, 1.7f);
|
||||
animctrl_setPlaybackType(sp3C, ANIMCTRL_ONCE);
|
||||
animctrl_start(sp3C, "bsbeemain.c", 0x2ef);
|
||||
func_8029C7F4(1,1,2,3);
|
||||
func_8029C7F4(1,1,2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
_player_getPosition(sp2C);
|
||||
func_80294980(sp20);
|
||||
func_80257F18(sp20, sp2C, &sp38);
|
||||
yaw_setIdeal(mlNormalizeAngle(sp38 + 180.0f));
|
||||
yaw_applyIdeal();
|
||||
D_8037D2D0 = 250.f;
|
||||
func_80297970(D_8037D2D0);
|
||||
func_8029797C(sp38);
|
||||
func_802979AC(sp38, func_80297A64());
|
||||
player_setYVelocity(420.0f);
|
||||
gravity_set(-1200.0f);
|
||||
baphysics_set_target_horizontal_velocity(D_8037D2D0);
|
||||
baphysics_set_target_yaw(sp38);
|
||||
baphysics_set_horizontal_velocity(sp38, baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_vertical_velocity(420.0f);
|
||||
baphysics_set_gravity(-1200.0f);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
@@ -433,7 +432,7 @@ void bsbeemain_die_init(void){
|
||||
}
|
||||
|
||||
void func_802A1DD8(void){
|
||||
func_80297970(D_8037D2D0);
|
||||
baphysics_set_target_horizontal_velocity(D_8037D2D0);
|
||||
func_80299628(0);
|
||||
switch(D_8037D2D4){
|
||||
case 0:
|
||||
@@ -442,7 +441,7 @@ void func_802A1DD8(void){
|
||||
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);
|
||||
baphysics_set_vertical_velocity(400.0f);
|
||||
D_8037D2D4 = 1;
|
||||
break;
|
||||
case 1:
|
||||
@@ -471,7 +470,7 @@ void func_802A1DD8(void){
|
||||
|
||||
void func_802A1F2C(void){
|
||||
func_8024BD08(0);
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
func_80291548();
|
||||
func_80292EA4();
|
||||
func_802A02C0();
|
||||
@@ -480,8 +479,8 @@ void func_802A1F2C(void){
|
||||
void func_802A1F6C(void){
|
||||
func_802A0340();
|
||||
baanim_playForDuration_loopSmooth(ASSET_1DE_ANIM_BEE_IDLE, 3.0f);
|
||||
func_8029C7F4(1,1,3,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_8029C674();
|
||||
func_802B3A50();
|
||||
}
|
||||
@@ -518,8 +517,8 @@ void func_802A2098(void){
|
||||
miscflag_clear(0x1A);
|
||||
baanim_playForDuration_loopSmooth(ASSET_1DE_ANIM_BEE_IDLE, 3.0f);
|
||||
yaw_setIdeal(func_8029B41C());
|
||||
func_8029C7F4(1,1,3,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_8024BD08(0);
|
||||
func_8025A2FC(0, 0xFA0);
|
||||
func_8025A6EC(COMUSIC_42_NOTEDOOR_OPENING_FANFARE, -1);
|
||||
|
@@ -4,6 +4,7 @@
|
||||
#include "bsint.h"
|
||||
#include "core2/statetimer.h"
|
||||
#include "core2/ba/anim.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
/* .data */
|
||||
const f32 D_80364AF0 = 30.0f;
|
||||
@@ -14,9 +15,9 @@ const f32 D_80364AFC = 0.4f;
|
||||
void func_802AAE80(void){
|
||||
f32 sp1C = func_8029B30C();
|
||||
if(func_8029B300() == 0)
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
else
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364AF0, D_80364AF4));
|
||||
baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp1C, D_80364AF0, D_80364AF4));
|
||||
}
|
||||
|
||||
void func_802AAEE0(void){
|
||||
@@ -34,8 +35,8 @@ void bscarry_idle_init(void){
|
||||
animctrl_setIndex(aCtrl, ASSET_72_ANIM_BSCARRY_IDLE);
|
||||
animctrl_setDuration(aCtrl, 1.2f);
|
||||
animctrl_start(aCtrl, "bscarry.c", 0x6f);
|
||||
func_8029C7F4(1,1,1,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,1, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
roll_setAngularVelocity(1000.0f, 12.0f);
|
||||
}
|
||||
@@ -63,7 +64,7 @@ void bscarry_walk_init(void){
|
||||
animctrl_setDuration(aCtrl, 0.8f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_LOOP);
|
||||
animctrl_start(aCtrl, "bscarry.c", 0xac);
|
||||
func_8029C7F4(2,1,1,2);
|
||||
func_8029C7F4(2,1,1, BA_PHYSICS_NORMAL);
|
||||
baanim_setVelocityMapRanges(D_80364AF0, D_80364AF4, D_80364AF8, D_80364AFC);
|
||||
}
|
||||
|
||||
@@ -72,7 +73,7 @@ void bscarry_walk_update(void){
|
||||
func_8029AD28(0.4f, 4);
|
||||
func_8029AD28(0.9f, 3);
|
||||
func_802AAE80();
|
||||
if(func_8029B300() == 0 && func_80297C04(1.0f))
|
||||
if(func_8029B300() == 0 && baphysics_is_slower_than(1.0f))
|
||||
sp1C = BS_3A_CARRY_IDLE;
|
||||
|
||||
if(carriedobj_getMarker() == NULL)
|
||||
|
@@ -1,7 +1,7 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
|
||||
void func_802915CC(f32);
|
||||
@@ -17,9 +17,9 @@ int bsclaw_hitboxActive(void){
|
||||
|
||||
void bsclaw_init(void){
|
||||
baanim_playForDuration_once(ASSET_5_ANIM_BSPUNCH, 1.3f);
|
||||
func_8029C7F4(1,1,3,3);
|
||||
func_8029797C(yaw_getIdeal());
|
||||
func_80297970(160.0f);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
baphysics_set_target_horizontal_velocity(160.0f);
|
||||
func_802915CC(80.0f);
|
||||
_bsclawHitboxActive = 0;
|
||||
}
|
||||
@@ -37,7 +37,7 @@ void bsclaw_update(void){
|
||||
|| animctrl_isAt(aCtrl, 0.5788f)
|
||||
|| (0.4788 < sp24 && sp24 < 0.6788);
|
||||
if(animctrl_isAt(aCtrl, 0.5788f))
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
|
||||
func_8029AD28(0.08f, 3);
|
||||
func_8029AD28(0.34f, 4);
|
||||
|
@@ -2,6 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/ba/anim.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
/* .bss */
|
||||
u8 D_8037D3D0;
|
||||
@@ -24,7 +25,7 @@ void func_802AB5C0(void){
|
||||
sp2C[0] = 0.0f;
|
||||
sp2C[1] = f2;
|
||||
sp2C[2] = 0.0f;
|
||||
func_80297930(sp2C);
|
||||
baphysics_set_target_velocity(sp2C);
|
||||
}
|
||||
|
||||
void func_802AB654(void){
|
||||
@@ -33,8 +34,8 @@ void func_802AB654(void){
|
||||
yaw_setVelocityBounded(500.0f, 15.0f);
|
||||
func_8029B324(0, 0.03f);
|
||||
func_8029B324(1, 1.0f);
|
||||
func_802978DC(0xA);
|
||||
func_80297B64(10.0f);
|
||||
baphysics_set_type(BA_PHYSICS_CLIMB);
|
||||
baphysics_set_acceleration(10.0f);
|
||||
func_80294378(5);
|
||||
func_80293D48(80.0f, 10.0f);
|
||||
func_802914CC(0x10);
|
||||
@@ -45,7 +46,7 @@ void func_802AB6F0(void){
|
||||
func_80291548();
|
||||
func_8029B0C0();
|
||||
baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL);
|
||||
func_802978DC(2);
|
||||
baphysics_set_type(BA_PHYSICS_NORMAL);
|
||||
func_80294378(1);
|
||||
func_80293D74();
|
||||
}
|
||||
@@ -56,7 +57,7 @@ void func_802AB750(f32 arg0, f32 arg1){
|
||||
}
|
||||
|
||||
int func_802AB788(void){
|
||||
return (0.0f < mlAbsF(func_80297A70())) || (yaw_get() != yaw_getIdeal());
|
||||
return (0.0f < mlAbsF(baphysics_get_target_vertical_velocity())) || (yaw_get() != yaw_getIdeal());
|
||||
}
|
||||
|
||||
int bsclimb_inSet(s32 move_indx){
|
||||
@@ -160,15 +161,15 @@ void bsclimb_move_update(void){
|
||||
func_80299D2C(SFX_D3_JINXIE_SNIFFLING_1, 0.87f, 22000);
|
||||
}//L802ABB84
|
||||
|
||||
if(!func_802AB788() && _get_vertVelocity() < 30.0f)
|
||||
if(!func_802AB788() && baphysics_get_vertical_velocity() < 30.0f)
|
||||
next_state = BS_4F_CLIMB_IDLE;
|
||||
|
||||
_player_getPosition(plyr_pos);
|
||||
if(func_80297A70() < 0.0f && climbGetBottomY() == plyr_pos[1])
|
||||
if(baphysics_get_target_vertical_velocity() < 0.0f && climbGetBottomY() == plyr_pos[1])
|
||||
next_state = BS_1_IDLE;
|
||||
|
||||
if( func_8029825C() == 2
|
||||
&& 0.0f < func_80297A70()
|
||||
&& 0.0f < baphysics_get_target_vertical_velocity()
|
||||
&& climbGetTopY() == plyr_pos[1]
|
||||
){
|
||||
next_state = BS_51_CLIMB_EXIT;
|
||||
@@ -194,7 +195,7 @@ void func_802ABCCC(void){
|
||||
baanim_playForDuration_loopSmooth(ASSET_B2_ANIM_BSCLIMB_IDLE_2, 2.64f);
|
||||
baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL);
|
||||
func_802AB654();
|
||||
func_802978DC(7);
|
||||
baphysics_set_type(BA_PHYSICS_FREEZE);
|
||||
}
|
||||
|
||||
//bsclimb_unknown_9E_update
|
||||
|
@@ -3,6 +3,7 @@
|
||||
#include "variables.h"
|
||||
#include "core2/statetimer.h"
|
||||
#include "core2/ba/anim.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
int bscroc_inSet(enum bs_e state);
|
||||
|
||||
@@ -68,10 +69,10 @@ void func_802ABE70(void){
|
||||
void func_802ABF54(void){
|
||||
f32 sp1C = func_8029B30C();
|
||||
if(func_8029B300() == 0){
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
}
|
||||
else{
|
||||
func_80297970(ml_interpolate_f(sp1C, bsCrocMinWalkVelocity, __bscroc_getMaxVelocity()));
|
||||
baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp1C, bsCrocMinWalkVelocity, __bscroc_getMaxVelocity()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -103,8 +104,8 @@ int bscroc_inSet(enum bs_e state){
|
||||
|
||||
void bscroc_idle_init(void){
|
||||
baanim_playForDuration_loopSmooth(0xe1, 1.0f);
|
||||
func_8029C7F4(1,1,1,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,1, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
roll_setAngularVelocity(1000.0f, 12.0f);
|
||||
func_80293D48(50.0f, 25.0f);
|
||||
@@ -144,7 +145,7 @@ void bscroc_idle_end(void){
|
||||
|
||||
void bscroc_walk_init(void){
|
||||
baanim_playForDuration_loopStartingAt(ASSET_E0_ANIM_BSCROC_WALK, 0.8f, 0.4f);
|
||||
func_8029C7F4(BAANIM_UPDATE_2_SCALE_HORZ,1,1,2);
|
||||
func_8029C7F4(BAANIM_UPDATE_2_SCALE_HORZ, 1, 1, BA_PHYSICS_NORMAL);
|
||||
baanim_setVelocityMapRanges(bsCrocMinWalkVelocity, bsCrocMaxWalkVelocity, bsCrocSlowestWalkDuration, bsCrocFastestWalkDuration);
|
||||
func_802900B4();
|
||||
}
|
||||
@@ -158,7 +159,7 @@ void bscroc_walk_update(void){
|
||||
|
||||
func_8029AD28(0.1f, 4);
|
||||
func_8029AD28(0.6f, 3);
|
||||
if(func_8029B300() == 0 && func_80297C04(1.0f))
|
||||
if(func_8029B300() == 0 && baphysics_is_slower_than(1.0f))
|
||||
next_state = BS_5E_CROC_IDLE;
|
||||
|
||||
if(func_8028B094())
|
||||
@@ -189,15 +190,15 @@ void bscroc_jump_init(void){
|
||||
animctrl_setStart(aCtrl, 0.1f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(aCtrl, "bscroc.c", 0x1ac);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
if(func_8029B2E8() != 0.0f){
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
}
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_802ABF54();
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
player_setYVelocity(bsCrocInitialJumpVelocity);
|
||||
gravity_set(bsCrocGravity);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_vertical_velocity(bsCrocInitialJumpVelocity);
|
||||
baphysics_set_gravity(bsCrocGravity);
|
||||
__bscroc_jumpSfx();
|
||||
D_8037D3EC = 0;
|
||||
}
|
||||
@@ -209,9 +210,9 @@ void bscroc_jump_update(void){
|
||||
|
||||
func_802ABE70();
|
||||
func_802ABF54();
|
||||
_get_velocity(player_velocity);
|
||||
baphysics_get_velocity(player_velocity);
|
||||
if(button_released(BUTTON_A) && 0.0f < player_velocity[1])
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
|
||||
switch(D_8037D3EC){
|
||||
case 0:
|
||||
@@ -243,7 +244,7 @@ void bscroc_jump_update(void){
|
||||
case 3:
|
||||
func_80299628(0);
|
||||
if(animctrl_isStopped(aCtrl)){
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
sp2C = BS_5E_CROC_IDLE;
|
||||
}
|
||||
break;
|
||||
@@ -264,7 +265,7 @@ void bscroc_jump_update(void){
|
||||
}
|
||||
|
||||
void bscroc_jump_end(void){
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
func_802ABFBC();
|
||||
}
|
||||
|
||||
@@ -277,7 +278,7 @@ void bscroc_fall_init(void){
|
||||
animctrl_setDuration(aCtrl, 0.7f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED);
|
||||
animctrl_start(aCtrl, "bscroc.c", 0x235);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
D_8037D3EC = 0;
|
||||
}
|
||||
|
||||
@@ -289,7 +290,7 @@ void bscroc_fall_update(void){
|
||||
func_802ABE70();
|
||||
func_80299628(0);
|
||||
func_802ABF54();
|
||||
_get_velocity(player_velocity);
|
||||
baphysics_get_velocity(player_velocity);
|
||||
|
||||
switch(D_8037D3EC){
|
||||
case 0:
|
||||
@@ -301,7 +302,7 @@ void bscroc_fall_update(void){
|
||||
case 1:
|
||||
if(func_8028B2E8()){
|
||||
func_8029AE48();
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
baanim_setEndAndDuration(1.0f, 1.0f);
|
||||
D_8037D3EC = 2;
|
||||
}
|
||||
@@ -348,12 +349,12 @@ static void __bscroc_recoil_init(s32 damage){
|
||||
func_80257F18(sp20, player_position, &sp38);
|
||||
yaw_setIdeal(mlNormalizeAngle(sp38 + 180.0f));
|
||||
yaw_applyIdeal();
|
||||
func_80297970(200.0f);
|
||||
func_8029797C(sp38);
|
||||
func_802979AC(sp38, func_80297A64());
|
||||
func_8029C7F4(1,1,2,3);
|
||||
player_setYVelocity(510.0f);
|
||||
gravity_set(-1200.0f);
|
||||
baphysics_set_target_horizontal_velocity(200.0f);
|
||||
baphysics_set_target_yaw(sp38);
|
||||
baphysics_set_horizontal_velocity(sp38, baphysics_get_target_horizontal_velocity());
|
||||
func_8029C7F4(1,1,2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_vertical_velocity(510.0f);
|
||||
baphysics_set_gravity(-1200.0f);
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
D_8037D3EC = 0;
|
||||
@@ -383,7 +384,7 @@ static void __bscroc_recoil_update(void){
|
||||
|
||||
void __bscroc_recoil_end(void){
|
||||
func_80297CA8();
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
func_802ABFBC();
|
||||
@@ -427,18 +428,18 @@ void bscroc_die_init(void){
|
||||
animctrl_setDuration(aCtrl, 1.7f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(aCtrl, "bscroc.c", 0x32b);
|
||||
func_8029C7F4(1,1,2,3);
|
||||
func_8029C7F4(1,1,2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
_player_getPosition(player_position);
|
||||
func_80294980(sp20);
|
||||
func_80257F18(sp20, player_position, &sp38);
|
||||
yaw_setIdeal(mlNormalizeAngle(sp38 + 180.0f));
|
||||
yaw_applyIdeal();
|
||||
D_8037D3E0 = 250.0f;
|
||||
func_80297970(D_8037D3E0);
|
||||
func_8029797C(sp38);
|
||||
func_802979AC(sp38, func_80297A64());
|
||||
player_setYVelocity(420.0f);
|
||||
gravity_set(-1200.0f);
|
||||
baphysics_set_target_horizontal_velocity(D_8037D3E0);
|
||||
baphysics_set_target_yaw(sp38);
|
||||
baphysics_set_horizontal_velocity(sp38, baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_vertical_velocity(420.0f);
|
||||
baphysics_set_gravity(-1200.0f);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
@@ -453,7 +454,7 @@ void bscroc_die_init(void){
|
||||
void bscroc_die_update(void){
|
||||
enum bs_e next_state = 0;
|
||||
func_802ABE70();
|
||||
func_80297970(D_8037D3E0);
|
||||
baphysics_set_target_horizontal_velocity(D_8037D3E0);
|
||||
func_80299628(0);
|
||||
switch(D_8037D3EC){
|
||||
case 0:
|
||||
@@ -461,7 +462,7 @@ void bscroc_die_update(void){
|
||||
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);
|
||||
baphysics_set_vertical_velocity(400.0f);
|
||||
D_8037D3EC = 1;
|
||||
}
|
||||
break;
|
||||
@@ -490,7 +491,7 @@ void bscroc_die_update(void){
|
||||
|
||||
void bscroc_die_end(void){
|
||||
func_8024BD08(0);
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
pitch_setIdeal(0.0f);
|
||||
roll_setIdeal(0.0f);
|
||||
func_80291548();
|
||||
@@ -507,12 +508,12 @@ static void func_802ACF58(void){
|
||||
sp2C = func_8028B2E8() ? 500.0f : 400.0f;
|
||||
func_802589E4(sp20, yaw_get(), sp2C);
|
||||
sp20[1] = 200.0f;
|
||||
func_80297A0C(sp20);
|
||||
baphysics_set_velocity(sp20);
|
||||
}
|
||||
|
||||
void bscroc_bite_init(void){
|
||||
baanim_playForDuration_loopStartingAt(ASSET_122_ANIM_BSCROC_BITE, 0.25f, 0.2f);
|
||||
func_8029C7F4(1,1,1,3);
|
||||
func_8029C7F4(1,1,1, BA_PHYSICS_LOCKED_ROTATION);
|
||||
func_802ACF58();
|
||||
D_8037D3F4 = 0;
|
||||
_bscrocHitboxActive = TRUE;
|
||||
@@ -561,8 +562,8 @@ void bscroc_bite_end(void){
|
||||
|
||||
void bscroc_eat_bad_init(void){
|
||||
baanim_playForDuration_once(ASSET_123_ANIM_BSCROC_EAT_BAD, 2.41f);
|
||||
func_8029C7F4(1,1,2,3);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
}
|
||||
|
||||
void bscroc_eat_bad_update(void){
|
||||
@@ -612,7 +613,7 @@ void func_802AD318(void){
|
||||
|
||||
void bscroc_eat_good_init(void){
|
||||
baanim_playForDuration_loopSmooth(ASSET_122_ANIM_BSCROC_BITE, 0.25f);
|
||||
func_8029C7F4(1,1,1,2);
|
||||
func_8029C7F4(1,1,1, BA_PHYSICS_NORMAL);
|
||||
baModel_setPostDraw(func_802AD2A8);
|
||||
D_8037D3E8 = assetcache_get(func_80294974());
|
||||
D_8037D3F0 = 1.0f;
|
||||
@@ -668,8 +669,8 @@ void bscroc_eat_good_end(void){
|
||||
|
||||
void func_802AD56C(void){
|
||||
baanim_playForDuration_loopSmooth(ASSET_E1_ANIM_BSCROC_IDLE, 1.0f);
|
||||
func_8029C7F4(1,1,3,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_8029C674();
|
||||
func_802B3A50();
|
||||
}
|
||||
|
@@ -2,6 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/ba/anim.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
/* .bss */
|
||||
f32 D_8037D400;
|
||||
@@ -62,16 +63,16 @@ void bscrouch_init(void){
|
||||
yaw_setVelocityBounded(350.0f, 14.0f);
|
||||
func_8029957C(7);
|
||||
func_8029932C(8.0f);
|
||||
func_802978DC(3);
|
||||
baphysics_set_type(BA_PHYSICS_LOCKED_ROTATION);
|
||||
func_8029E3C0(0, 0.7f);
|
||||
func_8029E3C0(1, 0.2f);
|
||||
_get_velocity(&sp28);
|
||||
baphysics_get_velocity(sp28);
|
||||
D_8037D400 = gu_sqrtf(sp28[0]*sp28[0] + sp28[2]*sp28[2]);
|
||||
if(140.0f < D_8037D400)
|
||||
func_80299AAC();
|
||||
|
||||
if(func_8025801C(sp28, &sp20))
|
||||
func_8029797C(sp20);
|
||||
baphysics_set_target_yaw(sp20);
|
||||
|
||||
D_8037D404 = 0;
|
||||
}
|
||||
@@ -88,7 +89,7 @@ void bscrouch_update(void){
|
||||
func_8029E1A8(1);
|
||||
|
||||
sp30 = ml_map_f(func_8029E270(0), 0.0f, 0.3f, 0.0f, D_8037D400);
|
||||
func_80297970(sp30);
|
||||
baphysics_set_target_horizontal_velocity(sp30);
|
||||
if(220.0f < sp30)
|
||||
func_802929F8();
|
||||
if(160.0f < sp30)
|
||||
|
@@ -2,6 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/ba/anim.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
/* .bss */
|
||||
f32 D_8037D410;
|
||||
@@ -41,15 +42,15 @@ void bsdie_init(void){
|
||||
D_8037D410 = 250.0f;
|
||||
yaw_setIdeal(mlNormalizeAngle(sp38 + 180.0f));
|
||||
yaw_applyIdeal();
|
||||
func_80297970(D_8037D410);
|
||||
func_8029797C(sp38);
|
||||
func_802979AC(sp38, func_80297A64());
|
||||
baphysics_set_target_horizontal_velocity(D_8037D410);
|
||||
baphysics_set_target_yaw(sp38);
|
||||
baphysics_set_horizontal_velocity(sp38, baphysics_get_target_horizontal_velocity());
|
||||
baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL);
|
||||
yaw_setUpdateState(1);
|
||||
func_8029957C(2);
|
||||
func_802978DC(3);
|
||||
player_setYVelocity(510.0f);
|
||||
gravity_set(-1400.0f);
|
||||
baphysics_set_type(BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_vertical_velocity(510.0f);
|
||||
baphysics_set_gravity(-1400.0f);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
func_8029E070(1);
|
||||
func_8029151C(0xd);
|
||||
@@ -64,14 +65,14 @@ void bsdie_init(void){
|
||||
void bsdie_update(void){
|
||||
AnimCtrl *aCtrl = baanim_getAnimCtrlPtr();
|
||||
enum bs_e sp28 = 0;
|
||||
func_80297970(D_8037D410);
|
||||
baphysics_set_target_horizontal_velocity(D_8037D410);
|
||||
func_80299628(0);
|
||||
switch(D_8037D414){
|
||||
case 0://L802AE0B8
|
||||
if(_bsdie_802ADE00()){
|
||||
animctrl_setSubRange(aCtrl, 0.0f, 1.0f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
player_setYVelocity(400.0f);
|
||||
baphysics_set_vertical_velocity(400.0f);
|
||||
func_80299DB8();
|
||||
FUNC_8030E624(SFX_39_BANJO_AYE_2, 1.0f, 18000);
|
||||
rumbleManager_80250D94(1.0f, 1.0f, 0.4f);
|
||||
@@ -124,7 +125,7 @@ void bsdie_update(void){
|
||||
|
||||
void bsdie_end(void){
|
||||
func_8024BD08(0);
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
func_8029E070(0);
|
||||
pitch_setIdeal(0.0f);
|
||||
roll_setIdeal(0.0f);
|
||||
|
@@ -1,6 +1,8 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
|
||||
enum bsdroneenter_state_e{
|
||||
BSDRONEENTER_SUBSTATE_0_UNINITIALIZED,
|
||||
@@ -108,7 +110,7 @@ void bsDroneEnter_init(void) {
|
||||
|
||||
func_8029BCF8(&anim_id, &anim_duration);
|
||||
baanim_playForDuration_loopSmooth(anim_id, anim_duration);
|
||||
func_8029C7F4(1, 1, 3, 7);
|
||||
func_8029C7F4(1, 1, 3, BA_PHYSICS_FREEZE);
|
||||
func_80294378(6);
|
||||
__bsDroneEnter_init();
|
||||
bsDroneEnterSubstate = BSDRONEENTER_SUBSTATE_0_UNINITIALIZED;
|
||||
|
@@ -2,7 +2,8 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
void func_80297BB8(f32);
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
|
||||
/* .bss */
|
||||
u8 D_8037D440;
|
||||
@@ -34,11 +35,11 @@ void func_802AEB60(s32 arg0){
|
||||
}
|
||||
|
||||
void func_802AEC08(void){
|
||||
func_802978A4();
|
||||
baphysics_reset_horizontal_velocity();
|
||||
}
|
||||
|
||||
void func_802AEC28(void){
|
||||
func_802978A4();
|
||||
baphysics_reset_horizontal_velocity();
|
||||
if(func_8028B2E8() || player_inWater())
|
||||
func_802AEB60(2);
|
||||
}
|
||||
@@ -52,9 +53,9 @@ void func_802AEC78(void){
|
||||
func_8029BC60(&sp1C, &sp2C);
|
||||
baanim_playForDuration_loopSmooth(sp1C, sp2C);
|
||||
func_802925F8(&sp20, &sp2C);
|
||||
func_80297BC4(&sp20);
|
||||
func_80297BB8(sp2C);
|
||||
func_8029C7F4(1,1,3,0xC);
|
||||
baphysics_set_goto_position(&sp20);
|
||||
baphysics_set_goto_duration(sp2C);
|
||||
func_8029C7F4(1,1,3,BA_PHYSICS_GOTO);
|
||||
func_8029436C(1);
|
||||
D_8037D441 = 0;
|
||||
}
|
||||
@@ -64,7 +65,7 @@ void func_802AECE4(void){
|
||||
f32 sp20[3];
|
||||
AnimCtrl *aCtrl = baanim_getAnimCtrlPtr();
|
||||
|
||||
_get_velocity(&sp20);
|
||||
baphysics_get_velocity(sp20);
|
||||
if(func_8025801C(sp20, &sp2C)){
|
||||
yaw_setIdeal(sp2C);
|
||||
}
|
||||
@@ -77,7 +78,7 @@ void func_802AECE4(void){
|
||||
animctrl_start(aCtrl, "bsdronegoto.c", 0x9d);
|
||||
}
|
||||
|
||||
if(func_80297C48() && D_8037D441 == 0){
|
||||
if(baphysics_goto_done() && D_8037D441 == 0){
|
||||
D_8037D441++;
|
||||
func_80292768();
|
||||
}
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
extern f32 func_8029B2D0(void);
|
||||
|
||||
@@ -18,9 +19,9 @@ void bsDroneLook_init(void) {
|
||||
func_80299D2C(SFX_12D_CAMERA_ZOOM_CLOSEST, 1.2f, 12000);
|
||||
func_8029BCF8(&anim_id, &anim_duration);
|
||||
baanim_playForDuration_loopSmooth(anim_id, anim_duration);
|
||||
func_8029C7F4(1, 1, 3, 2);
|
||||
func_80297970(0.0f);
|
||||
func_80297A0C(0);
|
||||
func_8029C7F4(1, 1, 3, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
baphysics_set_velocity(0);
|
||||
ncDynamicCamera_enterFirstPerson();
|
||||
__bsDroneLook_getEyePos(eye_position);
|
||||
ncFirstPersonCamera_setZoomedOutPosition(eye_position);
|
||||
@@ -42,6 +43,7 @@ void bsDroneLook_update(void) {
|
||||
next_state = 0;
|
||||
dt = time_getDelta();
|
||||
if (ncFirstPersonCamera_getState() == 2) {
|
||||
//camera is in "idle" state
|
||||
ncFirstPersonCamera_getZoomedInRotation(eye_rotation);
|
||||
eye_rotation[0] -= func_8029B2DC() * 90.0f * dt;
|
||||
eye_rotation[1] -= func_8029B2D0() * 90.0f * dt;
|
||||
@@ -49,10 +51,13 @@ void bsDroneLook_update(void) {
|
||||
eye_rotation[0] = (eye_rotation[0] > 180.0f) ? ml_max_f(305.0f, eye_rotation[0]) : ml_min_f(70.0f, eye_rotation[0]);
|
||||
ncFirstPersonCamera_setZoomedOutRotation(eye_rotation);
|
||||
yaw_setIdeal(eye_rotation[1] + 180.0f);
|
||||
|
||||
exit_first_person = FALSE;
|
||||
// 1st person cancelled via input
|
||||
if (button_pressed(BUTTON_B) || button_pressed(BUTTON_A) || button_pressed(BUTTON_C_UP)) {
|
||||
exit_first_person = TRUE;
|
||||
}
|
||||
// 1st person cancelled via entering water
|
||||
if (player_inWater()) {
|
||||
if (player_getTransformation() == TRANSFORM_1_BANJO && func_8028EE84() == BSWATERGROUP_0_NONE) {
|
||||
exit_first_person += TRUE;
|
||||
|
@@ -2,6 +2,8 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
/* .bss */
|
||||
struct {
|
||||
ParticleEmitter *unk0;
|
||||
@@ -93,7 +95,7 @@ void bsDroneVanish_init(void){
|
||||
|
||||
func_8029BCF8(&anim_id, &anim_duration);
|
||||
baanim_playForDuration_loopSmooth(anim_id, anim_duration);
|
||||
func_8029C7F4(1,1,3,7);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_FREEZE);
|
||||
func_80294378(6);
|
||||
__bsDroneVanish_init();
|
||||
D_8037D468 = 0;
|
||||
|
@@ -1,10 +1,11 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
|
||||
extern void player_setYPosition(f32);
|
||||
extern void yaw_applyIdeal(void);
|
||||
extern void func_802978DC(int);
|
||||
extern f32 func_80257A44(f32, f32);
|
||||
extern f32 cosf(f32);
|
||||
extern f32 ml_remainder_f(f32, f32);
|
||||
@@ -260,14 +261,14 @@ static void __bsdronexform_setState(int next_state){
|
||||
func_802AFBA0(180.0f);
|
||||
func_802AFBAC(0.04f);
|
||||
func_802B01B0(0.05f);
|
||||
func_802978DC(7);
|
||||
baphysics_set_type(BA_PHYSICS_FREEZE);
|
||||
func_8029E3C0(0, 2.8f);
|
||||
FUNC_8030E624(SFX_17E_MUMBO_TRANSFORMATION_01, 1.0f, 15000);
|
||||
break;
|
||||
|
||||
case 2:// 802B02A8
|
||||
func_8029E3C0(0, 0.5f);
|
||||
func_802978DC(0xb);
|
||||
baphysics_set_type(BA_PHYSICS_TRANSFORM);
|
||||
break;
|
||||
|
||||
case 3:// 802B02C4
|
||||
@@ -314,7 +315,7 @@ static void __bsdronexform_setState(int next_state){
|
||||
case 9:// 802B0438
|
||||
D_8037D470.unk1C = 0;
|
||||
func_8029E3C0(0, 0.7f);
|
||||
func_802978DC(7);
|
||||
baphysics_set_type(BA_PHYSICS_FREEZE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -324,9 +325,9 @@ void bsdronexform_init(void){
|
||||
enum asset_e sp18;
|
||||
func_8029BCAC(&sp18, &sp1C);
|
||||
baanim_playForDuration_loopSmooth(sp18, sp1C);
|
||||
func_8029C7F4(1,1,3,7);
|
||||
func_80297A0C(0);
|
||||
func_80297930(0);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_FREEZE);
|
||||
baphysics_set_velocity(0);
|
||||
baphysics_set_target_velocity(0);
|
||||
pitch_setIdeal(0.0f);
|
||||
roll_setIdeal(0.0f);
|
||||
func_80294378(6);
|
||||
|
@@ -2,6 +2,8 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
/* .bss */
|
||||
u8 D_8037D4B0;
|
||||
u8 D_8037D4B1;
|
||||
@@ -28,8 +30,8 @@ void bsjig_jiggy_init(void){
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(aCtrl, "bsjig.c", 0x7f);
|
||||
yaw_setIdeal(func_8029B41C()); //face camera
|
||||
func_8029C7F4(1,1,3,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_8024BD08(0);
|
||||
func_8025A2FC(0,0xfa0);
|
||||
tmp = (item_getCount(ITEM_E_JIGGY) == 9);
|
||||
@@ -169,8 +171,8 @@ void bsjig_notedoor_init(void){
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(aCtrl, "bsjig.c", 0x14d);
|
||||
yaw_setIdeal(func_8029B41C());
|
||||
func_8029C7F4(1,1,3,2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
if(bs_getPrevState() != BS_44_JIG_JIGGY){
|
||||
func_8024BD08(0);
|
||||
func_8025A2FC(0,0xfa0);
|
||||
|
@@ -5,10 +5,9 @@
|
||||
#include "core2/ba/model.h"
|
||||
#include "core2/ba/anim.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
f32 func_80294438(void);
|
||||
void func_8029797C(f32);
|
||||
void func_802979AC(f32, f32);
|
||||
f32 func_80297A64(void);
|
||||
void func_80299B58(f32, f32);
|
||||
f32 func_8029B2E8(void);
|
||||
f32 func_8029B33C(void);
|
||||
@@ -59,19 +58,19 @@ void bsjump_init(void){
|
||||
animctrl_setSubRange(aCtrl, 0.0f, 0.5042f);
|
||||
animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(aCtrl, "bsjump.c", 0x95);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
if(func_8029B2E8() != 0.0f){
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
}
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_802B6FA8();
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
if(D_8037D4C1){
|
||||
player_setYVelocity(D_80364CE4);
|
||||
baphysics_set_vertical_velocity(D_80364CE4);
|
||||
} else {
|
||||
player_setYVelocity(D_80364CD0);
|
||||
baphysics_set_vertical_velocity(D_80364CD0);
|
||||
}
|
||||
gravity_set(D_80364CD4);
|
||||
baphysics_set_gravity(D_80364CD4);
|
||||
D_8037D4C0 = 0;
|
||||
if(D_8037D4C2){
|
||||
func_8030E6D4(SFX_33_BANJO_AHOO);
|
||||
@@ -91,14 +90,14 @@ void bsjump_update(void){
|
||||
func_8029C348();
|
||||
|
||||
if(miscflag_isTrue(0xf)){
|
||||
func_802978A4();
|
||||
baphysics_reset_horizontal_velocity();
|
||||
}else{
|
||||
func_802B6FA8();
|
||||
}
|
||||
|
||||
_get_velocity(velocity);
|
||||
baphysics_get_velocity(velocity);
|
||||
if((button_released(BUTTON_A) && 0.0f < velocity[1] && !D_8037D4C2) || !can_control_jump_height()){
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
}
|
||||
|
||||
switch(D_8037D4C0){
|
||||
@@ -166,15 +165,15 @@ void bsjump_end(void){
|
||||
ability_use(0);
|
||||
|
||||
if(bs_getNextState() != BS_11_BPECK)
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
}
|
||||
|
||||
void bsjump_fall_init(void){
|
||||
AnimCtrl *aCtrl = baanim_getAnimCtrlPtr();
|
||||
int sp20;
|
||||
|
||||
if(miscflag_isTrue(7) && 700.0f < _get_vertVelocity())
|
||||
player_setYVelocity(700.0f);
|
||||
if(miscflag_isTrue(7) && 700.0f < baphysics_get_vertical_velocity())
|
||||
baphysics_set_vertical_velocity(700.0f);
|
||||
|
||||
sp20 = (bs_getPrevState() == BS_12_BFLIP)? 0 : 1;
|
||||
animctrl_reset(aCtrl);
|
||||
@@ -183,7 +182,7 @@ void bsjump_fall_init(void){
|
||||
animctrl_setTransitionDuration(aCtrl, 0.3f);
|
||||
animctrl_setDuration(aCtrl, 0.38f);
|
||||
animctrl_start(aCtrl, "bsjump.c", 0x188);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
D_8037D4C0 = 0;
|
||||
}
|
||||
|
||||
@@ -193,11 +192,11 @@ void bsjump_fall_update(void){
|
||||
f32 player_velocity[3];
|
||||
|
||||
if(miscflag_isTrue(0xf))
|
||||
func_802978A4();
|
||||
baphysics_reset_horizontal_velocity();
|
||||
else
|
||||
func_802B6FA8();
|
||||
|
||||
_get_velocity(player_velocity);
|
||||
baphysics_get_velocity(player_velocity);
|
||||
|
||||
switch(D_8037D4C0){
|
||||
case 0://L802B17B8
|
||||
@@ -264,12 +263,12 @@ void func_802B1928(void) {
|
||||
baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL);
|
||||
yaw_setUpdateState(1);
|
||||
func_8029957C(3);
|
||||
func_802978DC(3);
|
||||
func_8029797C(yaw_getIdeal());
|
||||
func_80297970(60.0f);
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
player_setYVelocity(D_80364CDC);
|
||||
gravity_set(D_80364CE0);
|
||||
baphysics_set_type(BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
baphysics_set_target_horizontal_velocity(60.0f);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_vertical_velocity(D_80364CDC);
|
||||
baphysics_set_gravity(D_80364CE0);
|
||||
func_80294378(6);
|
||||
D_8037D4C0 = 0;
|
||||
func_802B1100();
|
||||
@@ -282,7 +281,7 @@ void func_802B1A54(void) {
|
||||
|
||||
next_state = 0;
|
||||
anim_ctrl = baanim_getAnimCtrlPtr();
|
||||
_get_velocity(velocity);
|
||||
baphysics_get_velocity(velocity);
|
||||
if (velocity[1] < 0.0f) {
|
||||
func_80294378(1);
|
||||
}
|
||||
@@ -321,7 +320,7 @@ void func_802B1A54(void) {
|
||||
|
||||
void func_802B1BCC(void){
|
||||
func_80294378(1);
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
}
|
||||
|
||||
void func_802B1BF4(void) {
|
||||
@@ -345,9 +344,9 @@ void func_802B1BF4(void) {
|
||||
baanim_setUpdateType(BAANIM_UPDATE_1_NORMAL);
|
||||
yaw_setUpdateState(1);
|
||||
func_8029957C(3);
|
||||
func_802978DC(6);
|
||||
func_80297970(0.0f);
|
||||
func_80297A0C(0);
|
||||
baphysics_set_type(BA_PHYSICS_AIRBORN);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
baphysics_set_velocity(0);
|
||||
D_8037D4C0 = 0;
|
||||
baMarker_collisionOff();
|
||||
}
|
||||
@@ -359,7 +358,7 @@ void func_802B1CF8(void) {
|
||||
|
||||
next_state = 0;
|
||||
anim_ctrl = baanim_getAnimCtrlPtr();
|
||||
_get_velocity(velocity);
|
||||
baphysics_get_velocity(velocity);
|
||||
switch (D_8037D4C0) {
|
||||
case 0:
|
||||
if (func_8028B254(90)) {
|
||||
@@ -388,7 +387,7 @@ bool bsjump_jumpingFromWater(void){
|
||||
|
||||
void bsjump_tumble_init(void){
|
||||
baanim_playForDuration_loop(ASSET_68_ANIM_BSJUMP_TUMBLE, 0.35f);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
func_8029C7F4(1,1,3, BA_PHYSICS_AIRBORN);
|
||||
baModel_setYDisplacement(60.0f);
|
||||
if(func_80293234() == 1){
|
||||
func_8029E3C0(0, 0.5f);
|
||||
|
@@ -2,6 +2,8 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
void func_802B37DC(void);
|
||||
|
||||
/* .bss */
|
||||
@@ -54,7 +56,7 @@ void bsow_update(void) {
|
||||
if (func_8028B2E8() != 0) {
|
||||
sp1C = BS_2_WALK_SLOW;
|
||||
}
|
||||
if ((player_inWater() != 0) && (_get_vertVelocity() <= 0.0f)) {
|
||||
if ((player_inWater() != 0) && (baphysics_get_vertical_velocity() <= 0.0f)) {
|
||||
sp1C = BS_4C_LANDING_IN_WATER;
|
||||
}
|
||||
|
||||
@@ -65,7 +67,7 @@ void bsow_end(void){
|
||||
func_802B35DC();
|
||||
func_802B1FD0(0);
|
||||
func_80297CA8();
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
}
|
||||
|
@@ -4,6 +4,7 @@
|
||||
|
||||
#include "core2/ba/model.h"
|
||||
#include "core2/ba/anim.h"
|
||||
#include "core2/ba/physics.h"
|
||||
|
||||
extern void baanim_playForDuration_loop(s32, f32);
|
||||
extern void func_8029AD68(f32, s32);
|
||||
@@ -43,10 +44,10 @@ void func_802B223C(void) {
|
||||
|
||||
sp1C = func_8029B30C();
|
||||
if (func_8029B300() == 0) {
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
return;
|
||||
}
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364CF0, D_80364CF4));
|
||||
baphysics_set_target_horizontal_velocity(ml_interpolate_f(sp1C, D_80364CF0, D_80364CF4));
|
||||
}
|
||||
|
||||
void func_802B229C(void) {
|
||||
@@ -74,8 +75,8 @@ int bspumpkin_inSet(s32 move_indx){
|
||||
|
||||
void bspumpkin_idle_init(void) {
|
||||
baanim_playForDuration_loop(ASSET_A0_ANIM_BSPUMPKIN_WALK, 0.8f);
|
||||
func_8029C7F4(1, 1, 1, 2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1, 1, 1, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
roll_setAngularVelocity(1000.0f, 12.0f);
|
||||
func_80293D48(50.0f, 25.0f);
|
||||
@@ -118,7 +119,7 @@ void bspumpkin_walk_init(void) {
|
||||
animctrl_setDuration(anim_ctrl, 0.8f);
|
||||
animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_LOOP);
|
||||
animctrl_start(anim_ctrl, "bspumpkin.c", 0x11D);
|
||||
func_8029C7F4(2, 1, 1, 2);
|
||||
func_8029C7F4(2, 1, 1, BA_PHYSICS_NORMAL);
|
||||
baanim_setVelocityMapRanges(D_80364CF0, D_80364CF4, D_80364CF8, D_80364CFC);
|
||||
func_802900B4();
|
||||
}
|
||||
@@ -130,7 +131,7 @@ void bspumpkin_walk_update(void) {
|
||||
next_state = 0;
|
||||
func_802B223C();
|
||||
func_8029AD68(0.3f, 4);
|
||||
if ((func_8029B300() == 0) && func_80297C04(1.0f)) {
|
||||
if ((func_8029B300() == 0) && baphysics_is_slower_than(1.0f)) {
|
||||
next_state = BS_48_PUMPKIN_IDLE;
|
||||
}
|
||||
if (func_8028B094()) {
|
||||
@@ -157,15 +158,15 @@ void bspumpkin_jump_init(void) {
|
||||
animctrl_setDuration(anim_ctrl, 1.2f);
|
||||
animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE);
|
||||
animctrl_start(anim_ctrl, "bspumpkin.c", 0x16C);
|
||||
func_8029C7F4(1, 1, 3, 6);
|
||||
func_8029C7F4(1, 1, 3, BA_PHYSICS_AIRBORN);
|
||||
if (func_8029B2E8() != 0.0f) {
|
||||
yaw_setIdeal(func_8029B33C());
|
||||
}
|
||||
func_8029797C(yaw_getIdeal());
|
||||
baphysics_set_target_yaw(yaw_getIdeal());
|
||||
func_802B223C();
|
||||
func_802979AC(yaw_getIdeal(), func_80297A64());
|
||||
player_setYVelocity(D_80364D00);
|
||||
gravity_set(D_80364D04);
|
||||
baphysics_set_horizontal_velocity(yaw_getIdeal(), baphysics_get_target_horizontal_velocity());
|
||||
baphysics_set_vertical_velocity(D_80364D00);
|
||||
baphysics_set_gravity(D_80364D04);
|
||||
func_802B21D0();
|
||||
D_8037D4E0 = 0;
|
||||
}
|
||||
@@ -178,13 +179,13 @@ void bspumpkin_jump_update(void) {
|
||||
next_state = 0;
|
||||
anim_ctrl = baanim_getAnimCtrlPtr();
|
||||
func_802B223C();
|
||||
_get_velocity(sp1C);
|
||||
baphysics_get_velocity(sp1C);
|
||||
if (button_released(BUTTON_A) && sp1C[1] > 0.0f) {
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
}
|
||||
switch (D_8037D4E0) {
|
||||
case 0:
|
||||
if (_get_vertVelocity() < 0.0f) {
|
||||
if (baphysics_get_vertical_velocity() < 0.0f) {
|
||||
if (func_8028B254(130)) {
|
||||
func_80292E48();
|
||||
animctrl_setDuration(anim_ctrl, 0.7f);
|
||||
@@ -218,7 +219,7 @@ void bspumpkin_jump_update(void) {
|
||||
case 3:
|
||||
if (animctrl_isStopped(anim_ctrl)) {
|
||||
func_80292EA4();
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
next_state = BS_48_PUMPKIN_IDLE;
|
||||
}
|
||||
break;
|
||||
@@ -236,7 +237,7 @@ void bspumpkin_jump_update(void) {
|
||||
|
||||
void bspumpkin_jump_end(void){
|
||||
func_80292EA4();
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
func_802B229C();
|
||||
}
|
||||
|
||||
@@ -251,7 +252,7 @@ void bspumpkin_fall_init(void) {
|
||||
animctrl_setDuration(anim_ctrl, 0.7f);
|
||||
animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_STOPPED);
|
||||
animctrl_start(anim_ctrl, "bspumpkin.c", 0x1F1);
|
||||
func_8029C7F4(1, 1, 3, 6);
|
||||
func_8029C7F4(1, 1, 3, BA_PHYSICS_AIRBORN);
|
||||
D_8037D4E0 = 0;
|
||||
}
|
||||
|
||||
@@ -266,7 +267,7 @@ void bspumpkin_fall_update(void) {
|
||||
if (D_8037D4E4) {
|
||||
func_802B223C();
|
||||
}
|
||||
_get_velocity(sp1C);
|
||||
baphysics_get_velocity(sp1C);
|
||||
switch (D_8037D4E0) {
|
||||
case 0:
|
||||
if (func_8028B254(130)) {
|
||||
@@ -278,7 +279,7 @@ void bspumpkin_fall_update(void) {
|
||||
case 1:
|
||||
if (func_8028B2E8()) {
|
||||
func_8029AE48();
|
||||
func_80297970(0.0f);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
animctrl_setSubRange(anim_ctrl, 0.0f, 1.0f);
|
||||
animctrl_setDuration(anim_ctrl, 1.2f);
|
||||
animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE);
|
||||
@@ -306,7 +307,7 @@ void func_802B2BF0(void) {
|
||||
func_8029656C(D_8037D4E8);
|
||||
func_8028FAB0(D_8037D4E8);
|
||||
baanim_playForDuration_loop(ASSET_A0_ANIM_BSPUMPKIN_WALK, 0.8f);
|
||||
func_8029C7F4(1, 1, 2, 7);
|
||||
func_8029C7F4(1, 1, 2, BA_PHYSICS_FREEZE);
|
||||
func_80294378(6);
|
||||
func_8029E3C0(0, 0.0f);
|
||||
}
|
||||
@@ -357,12 +358,12 @@ void __bspumpkin_bounce_init(s32 arg0) {
|
||||
func_80257F18(sp20, plyr_pos, &sp38);
|
||||
yaw_setIdeal(mlNormalizeAngle(sp38 + 180.0f));
|
||||
yaw_applyIdeal();
|
||||
func_80297970(200.0f);
|
||||
func_8029797C(sp38);
|
||||
func_802979AC(sp38, func_80297A64());
|
||||
func_8029C7F4(1, 1, 2, 3);
|
||||
player_setYVelocity(510.0f);
|
||||
gravity_set(-1200.0f);
|
||||
baphysics_set_target_horizontal_velocity(200.0f);
|
||||
baphysics_set_target_yaw(sp38);
|
||||
baphysics_set_horizontal_velocity(sp38, baphysics_get_target_horizontal_velocity());
|
||||
func_8029C7F4(1, 1, 2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_vertical_velocity(510.0f);
|
||||
baphysics_set_gravity(-1200.0f);
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
D_8037D4E0 = 0;
|
||||
@@ -394,7 +395,7 @@ void __bspumpkin_bounce_update(void) {
|
||||
|
||||
void __bspumpkin_bounce_end(void) {
|
||||
func_80297CA8();
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
func_802B229C();
|
||||
@@ -446,12 +447,12 @@ void bspumpkin_die_init(void) {
|
||||
D_8037D4F4 = 250.0f;
|
||||
yaw_setIdeal(mlNormalizeAngle(sp38 + 180.0f));
|
||||
yaw_applyIdeal();
|
||||
func_80297970(D_8037D4F4);
|
||||
func_8029797C(sp38);
|
||||
func_802979AC(sp38, func_80297A64());
|
||||
func_8029C7F4(1, 1, 2, 3);
|
||||
player_setYVelocity(510.0f);
|
||||
gravity_set(-1200.0f);
|
||||
baphysics_set_target_horizontal_velocity(D_8037D4F4);
|
||||
baphysics_set_target_yaw(sp38);
|
||||
baphysics_set_horizontal_velocity(sp38, baphysics_get_target_horizontal_velocity());
|
||||
func_8029C7F4(1, 1, 2, BA_PHYSICS_LOCKED_ROTATION);
|
||||
baphysics_set_vertical_velocity(510.0f);
|
||||
baphysics_set_gravity(-1200.0f);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
func_802914CC(0xD);
|
||||
ncDynamicCamD_func_802BF2C0(30.0f);
|
||||
@@ -463,7 +464,7 @@ void bspumpkin_die_init(void) {
|
||||
}
|
||||
|
||||
void bspumpkin_die_update(void){
|
||||
func_80297970(D_8037D4F4);
|
||||
baphysics_set_target_horizontal_velocity(D_8037D4F4);
|
||||
func_80299628(0);
|
||||
switch(D_8037D4E0){
|
||||
case 0://L802B3284
|
||||
@@ -485,7 +486,7 @@ void bspumpkin_die_update(void){
|
||||
|
||||
case 2://L802B3300
|
||||
if(baanim_isStopped()) {
|
||||
player_setYVelocity(400.0f);
|
||||
baphysics_set_vertical_velocity(400.0f);
|
||||
baanim_setEnd(0.355f);
|
||||
D_8037D4E0 = 3;
|
||||
}
|
||||
@@ -524,7 +525,7 @@ void bspumpkin_die_update(void){
|
||||
void bspumpkin_die_end(void) {
|
||||
func_802B229C();
|
||||
func_8024BD08(0);
|
||||
gravity_reset();
|
||||
baphysics_reset_gravity();
|
||||
pitch_setIdeal(0.0f);
|
||||
roll_setIdeal(0.0f);
|
||||
func_80292EA4();
|
||||
@@ -533,8 +534,8 @@ void bspumpkin_die_end(void) {
|
||||
|
||||
void func_802B34A0(void) {
|
||||
baanim_playForDuration_loopSmooth(0xA0, 0.8f);
|
||||
func_8029C7F4(1, 1, 3, 2);
|
||||
func_80297970(0.0f);
|
||||
func_8029C7F4(1, 1, 3, BA_PHYSICS_NORMAL);
|
||||
baphysics_set_target_horizontal_velocity(0.0f);
|
||||
func_8029C674();
|
||||
func_802B3A50();
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user