misc documentation
This commit is contained in:
@@ -306,7 +306,7 @@ void func_80389080(Actor *this){
|
||||
func_80335924(this->unk148, ASSET_12B_ANIM_TIPTUP_IDLE, 1.0f, 9.0f);
|
||||
unqPtr->unkC = randf2(5.0f, 15.0f);
|
||||
}
|
||||
if(func_8025773C(&unqPtr->unkC, sp3C)){
|
||||
if(ml_timer_update(&unqPtr->unkC, sp3C)){
|
||||
func_80335924(this->unk148, ASSET_12C_ANIM_TIPTUP_TAPPING, 1.0f, 4.0f);
|
||||
}
|
||||
func_80258A4C(this->position, this->yaw - 90.0f, player_position, &sp38, &sp34, &sp30);
|
||||
@@ -319,7 +319,7 @@ void func_80389080(Actor *this){
|
||||
}
|
||||
}
|
||||
else{
|
||||
if(ml_vec3f_distance(this->position, player_position) < 300.0f && player_getTransformation() == TRANSFORM_1_BANJO && !jiggyscore_isSpawned(JIGGY_27_BGS_TIPTUP)){
|
||||
if(ml_distance_vec3f(this->position, player_position) < 300.0f && player_getTransformation() == TRANSFORM_1_BANJO && !jiggyscore_isSpawned(JIGGY_27_BGS_TIPTUP)){
|
||||
BGS_func_803888E4(this, 2);
|
||||
}
|
||||
}
|
||||
@@ -333,12 +333,12 @@ void func_80389080(Actor *this){
|
||||
}
|
||||
} //L80389370
|
||||
else{
|
||||
if(ml_vec3f_distance(this->position, player_position) >= 300.0f)
|
||||
if(ml_distance_vec3f(this->position, player_position) >= 300.0f)
|
||||
BGS_func_803888E4(this, 1);
|
||||
}
|
||||
}//L803893A0
|
||||
if(this->state == 6){
|
||||
if(ml_vec3f_distance(this->position, player_position) < 300.0f && !unqPtr->unk8){
|
||||
if(ml_distance_vec3f(this->position, player_position) < 300.0f && !unqPtr->unk8){
|
||||
unqPtr->unk8 = 1;
|
||||
func_80311480(0xc7d, 4, 0, 0, 0, 0);
|
||||
}
|
||||
|
@@ -343,7 +343,7 @@ void chflibbit_update(Actor *this){
|
||||
spB0[2] = player_position[2] - this->position[2];
|
||||
player_distance = gu_sqrtf(spB0[0]*spB0[0] + spB0[1]*spB0[1] + spB0[2]*spB0[2]);
|
||||
|
||||
if(func_8025773C(&local->unk24, spA4)){
|
||||
if(ml_timer_update(&local->unk24, spA4)){
|
||||
func_8030E878(0x3f0, randf2(0.9f, 1.1f), randi2(12000, 19000), this->position, 500.0f, 2500.0f);
|
||||
local->unk24 = randf2(1.0f, 6.0f);
|
||||
}//L80387274
|
||||
@@ -375,7 +375,7 @@ void chflibbit_update(Actor *this){
|
||||
sp84[0] = (f32)local->unkE[0];
|
||||
sp84[1] = (f32)local->unkE[1];
|
||||
sp84[2] = (f32)local->unkE[2];
|
||||
if(ml_vec3f_distance(this->position, sp84) < 30.0f){
|
||||
if(ml_distance_vec3f(this->position, sp84) < 30.0f){
|
||||
func_80386AEC(this, 1);
|
||||
}
|
||||
else{
|
||||
@@ -421,7 +421,7 @@ void chflibbit_update(Actor *this){
|
||||
|
||||
|
||||
if(this->state == 4 || this->state == 5){
|
||||
if(func_8025773C(&local->unk18, spA4)){
|
||||
if(ml_timer_update(&local->unk18, spA4)){
|
||||
func_80386AEC(this, 3);
|
||||
}
|
||||
}
|
||||
|
@@ -156,7 +156,7 @@ void func_8038BDD4(Actor *this) {
|
||||
start_position[0] = this->position[0];
|
||||
start_position[1] = this->position[1];
|
||||
start_position[2] = this->position[2];
|
||||
func_8025773C(&local->unk14, sp5C);
|
||||
ml_timer_update(&local->unk14, sp5C);
|
||||
if ((local->unkC == 102) || (local->unkC == 103) || (local->unkC == 104)) {
|
||||
sp44[0] = 0.0f;
|
||||
sp44[1] = 0.0f;
|
||||
@@ -262,7 +262,7 @@ bool func_8038C2A8(ActorMarker *marker) {
|
||||
local = (ActorLocal_MrVile *)&this->local;
|
||||
player_getPosition(player_position);
|
||||
if (this->state == 6) {
|
||||
return ml_vec3f_distance(this->position, player_position) < 150.0f;
|
||||
return ml_distance_vec3f(this->position, player_position) < 150.0f;
|
||||
}
|
||||
return local->unk0 == 1;
|
||||
}
|
||||
@@ -353,7 +353,7 @@ void chvile_update(Actor *this) {
|
||||
local->game_marker = actorArray_findClosestActorFromActorId(this->position, 0x138, -1, &sp90)->marker;
|
||||
}
|
||||
player_getPosition(player_position);
|
||||
sp90 = ml_vec3f_distance(this->position, player_position);
|
||||
sp90 = ml_distance_vec3f(this->position, player_position);
|
||||
if (sp90 <= 300.0f) {
|
||||
local->unk0 = (local->unk0 == 0) ? 1 : 2;
|
||||
} else if (sp90 > 300.0f) {
|
||||
@@ -413,7 +413,7 @@ void chvile_update(Actor *this) {
|
||||
if (this->state == 4) {
|
||||
player_getPosition(local->target_position);
|
||||
local->unk10 = 500.0f;
|
||||
if ((local->unkC == 102) && (ml_vec3f_distance(this->position, local->target_position) < 200.0f)) {
|
||||
if ((local->unkC == 102) && (ml_distance_vec3f(this->position, local->target_position) < 200.0f)) {
|
||||
BGS_func_8038BBA0(this, 103);
|
||||
}
|
||||
if ((local->unkC == 103) && (func_80335794(this->unk148) >= 2)) {
|
||||
@@ -422,7 +422,7 @@ void chvile_update(Actor *this) {
|
||||
}
|
||||
if (this->state == 5) {
|
||||
local->unk10 = 200.0f;
|
||||
if (ml_vec3f_distance(this->position, local->target_position) < 100.0f) {
|
||||
if (ml_distance_vec3f(this->position, local->target_position) < 100.0f) {
|
||||
local->target_position[0] = randf2(-500.0f, 500.0f);
|
||||
local->target_position[1] = 0.0f;
|
||||
local->target_position[2] = randf2(-500.0f, 500.0f);
|
||||
@@ -430,12 +430,12 @@ void chvile_update(Actor *this) {
|
||||
}
|
||||
if ((this->state == 6)){
|
||||
local->unk10 = 400.0f;
|
||||
if((ml_vec3f_distance(this->position, local->target_position) < 100.0f) || (ml_vec3f_distance(player_position, local->target_position) < 300.0f)) {
|
||||
if((ml_distance_vec3f(this->position, local->target_position) < 100.0f) || (ml_distance_vec3f(player_position, local->target_position) < 300.0f)) {
|
||||
for(i = 0; i < 10; i++){
|
||||
random_position[0] = randf2(-500.0f, 500.0f);
|
||||
random_position[1] = 0.0f;
|
||||
random_position[2] = randf2(-500.0f, 500.0f);
|
||||
if ((i == 0) || (ml_vec3f_distance(player_position, random_position) > ml_vec3f_distance(player_position, local->target_position))) {
|
||||
if ((i == 0) || (ml_distance_vec3f(player_position, random_position) > ml_distance_vec3f(player_position, local->target_position))) {
|
||||
local->target_position[0] = random_position[0];
|
||||
local->target_position[1] = random_position[1];
|
||||
local->target_position[2] = random_position[2];
|
||||
|
@@ -79,11 +79,11 @@ void func_8038F610(Actor *this) {
|
||||
f32 sp24[3];
|
||||
|
||||
func_8034A174(this->marker->unk44, 8, sp24);
|
||||
if (func_80258368(sp24) != 0) {
|
||||
if (ml_isNonzero_vec3f(sp24) != 0) {
|
||||
func_8028E668(sp24, 200.0f, -600.0f, 300.0f);
|
||||
}
|
||||
func_8034A174(this->marker->unk44, 7, sp24);
|
||||
if (func_80258368(sp24) != 0) {
|
||||
if (ml_isNonzero_vec3f(sp24) != 0) {
|
||||
func_8028E668(sp24, 200.0f, -600.0f, 200.0f);
|
||||
}
|
||||
}
|
||||
@@ -140,7 +140,7 @@ void func_8038F6A4(Actor *this)
|
||||
player_getPosition(sp48);
|
||||
if (!this->unk138_24)
|
||||
{
|
||||
if ((((ml_vec3f_distance(local->unk18, sp48) < 250.0f) && (ml_vec3f_distance(local->unk18, sp48) > 80.0f)) && (!func_8028ECAC())) && (player_getTransformation() == TRANSFORM_1_BANJO))
|
||||
if ((((ml_distance_vec3f(local->unk18, sp48) < 250.0f) && (ml_distance_vec3f(local->unk18, sp48) > 80.0f)) && (!func_8028ECAC())) && (player_getTransformation() == TRANSFORM_1_BANJO))
|
||||
{
|
||||
func_80311480(0xC7E, 0, 0, 0, 0, 0);
|
||||
this->unk138_24 = 1;
|
||||
|
@@ -34,16 +34,16 @@ f32 BGS_D_80390B10[3] = {0.0f, 0.0f, 0.0f};
|
||||
void func_8038D1E0(Actor *this) {
|
||||
ParticleEmitter *temp_s0;
|
||||
|
||||
temp_s0 = partEmitList_pushNew(4U);
|
||||
temp_s0 = partEmitMgr_newEmitter(4U);
|
||||
particleEmitter_setSprite(temp_s0, ASSET_70E_SPRITE_SMOKE_2);
|
||||
func_802EFA5C(temp_s0, 0.01f, 0.7f);
|
||||
particleEmitter_setFade(temp_s0, 0.01f, 0.7f);
|
||||
particleEmitter_setStartingFrameRange(temp_s0, 0, 7);
|
||||
particleEmitter_setPosition(temp_s0, this->position);
|
||||
func_802EFFA8(temp_s0, D_80390B04);
|
||||
particleEmitter_setRGB(temp_s0, D_80390B04);
|
||||
func_802EFB70(temp_s0, 1.0f, 1.5f);
|
||||
func_802EFB84(temp_s0, 2.5f, 3.0f);
|
||||
particleEmitter_setParticleVelocityRange(temp_s0, -70.0f, 50.0f, -70.0f, 70.0f, 100.0f, 70.0f);
|
||||
func_802EFEC0(temp_s0, 3.0f, 4.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(temp_s0, 3.0f, 4.0f);
|
||||
particleEmitter_emitN(temp_s0, 4);
|
||||
FUNC_8030E8B4(SFX_30_MAGIC_POOF, 1.0f, 25000, this->position, 500, 2500);
|
||||
}
|
||||
@@ -372,7 +372,7 @@ void BGS_func_8038E034(Actor *this) {
|
||||
spA8[1] = spB4[1] - this->position[1];
|
||||
spA8[2] = spB4[2] - this->position[2];
|
||||
spA4 = gu_sqrtf(spA8[0]*spA8[0] + spA8[1]*spA8[1] + spA8[2]*spA8[2]);
|
||||
if (func_8025773C(&local->unk28, sp9C) != 0) {
|
||||
if (ml_timer_update(&local->unk28, sp9C) != 0) {
|
||||
func_8030E878(0x3F0, randf2(0.9f, 1.1f), randi2(12000, 19000), this->position, 500.0f, 2500.0f);
|
||||
local->unk28 = randf2(1.0f, 6.0f);
|
||||
}
|
||||
@@ -395,7 +395,7 @@ void BGS_func_8038E034(Actor *this) {
|
||||
}
|
||||
|
||||
if(this->state == 2){
|
||||
if(func_8025773C(&local->unk1C, sp9C)){
|
||||
if(ml_timer_update(&local->unk1C, sp9C)){
|
||||
func_8038D9D0(this, 3);
|
||||
}
|
||||
}
|
||||
@@ -423,7 +423,7 @@ void BGS_func_8038E034(Actor *this) {
|
||||
sp7C[0] = (f32) local->unk10[0];
|
||||
sp7C[1] = (f32) local->unk10[1];
|
||||
sp7C[2] = (f32) local->unk10[2];
|
||||
if (ml_vec3f_distance(this->position, sp7C) < 30.0f) {
|
||||
if (ml_distance_vec3f(this->position, sp7C) < 30.0f) {
|
||||
func_8038D9D0(this, 1);
|
||||
} else {
|
||||
func_8038D9D0(this, 5);
|
||||
@@ -464,7 +464,7 @@ void BGS_func_8038E034(Actor *this) {
|
||||
}
|
||||
|
||||
if(this->state == 7 || this->state == 8){
|
||||
if(func_8025773C(&local->unk1C, sp9C)){
|
||||
if(ml_timer_update(&local->unk1C, sp9C)){
|
||||
func_8038D9D0(this, 6);
|
||||
}
|
||||
}
|
||||
|
@@ -162,7 +162,7 @@ void chyumblie_update(Actor *this){
|
||||
}
|
||||
sp50 = func_80335684(this->unk148);
|
||||
if(this->state == YUMBLIE_STATE_1_UNDER_GROUND){
|
||||
if(func_8025773C(&s0->unk8, sp4C)){
|
||||
if(ml_timer_update(&s0->unk8, sp4C)){
|
||||
if(mapSpecificFlags_get(6) && (12 > chvilegame_get_piece_count(s0->game_marker))){
|
||||
chyumblie_set_state(this, YUMBLIE_STATE_2_APPEAR);
|
||||
}
|
||||
@@ -194,7 +194,7 @@ void chyumblie_update(Actor *this){
|
||||
|
||||
}
|
||||
if(this->state == YUMBLIE_STATE_3_ABOVE_GROUND){
|
||||
if( func_8025773C(&s0->unk8,sp4C) || !mapSpecificFlags_get(6) ){
|
||||
if( ml_timer_update(&s0->unk8,sp4C) || !mapSpecificFlags_get(6) ){
|
||||
chyumblie_set_state(this,YUMBLIE_STATE_4_DISAPPEAR);
|
||||
}
|
||||
}
|
||||
@@ -210,7 +210,7 @@ void chyumblie_update(Actor *this){
|
||||
}
|
||||
|
||||
if(this->state == YUMBLIE_STATE_5_BEING_EATEN){
|
||||
if( func_8025773C(&s0->unk8,sp4C)){
|
||||
if( ml_timer_update(&s0->unk8,sp4C)){
|
||||
chyumblie_set_state(this,YUMBLIE_STATE_1_UNDER_GROUND);
|
||||
}
|
||||
}
|
||||
|
@@ -107,7 +107,7 @@ void BGS_func_80389850(Actor *this, s32 arg1) {
|
||||
sp7C[2] = 0.0f;
|
||||
sp7C[1] = sp94[1];
|
||||
sp7C[0] = 0.0f;
|
||||
if(ml_vec3f_distance(sp94, sp7C) <= 1000.0f){
|
||||
if(ml_distance_vec3f(sp94, sp7C) <= 1000.0f){
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -366,7 +366,7 @@ void chvilegame_player_consume_piece(Actor *this) {
|
||||
if ((end != begin) && BGS_func_80389810(sp44)){
|
||||
sp44[1] = 0.0f;
|
||||
for(i_ptr = begin; i_ptr < end; i_ptr++){
|
||||
if ((ml_vec3f_distance(i_ptr->position, sp44) < 65.25) && chyumblie_is_edible(i_ptr->marker)) {
|
||||
if ((ml_distance_vec3f(i_ptr->position, sp44) < 65.25) && chyumblie_is_edible(i_ptr->marker)) {
|
||||
is_correct_type = ((local->current_type != YUMBLIE) && (i_ptr->type != YUMBLIE)) || (((local->current_type == YUMBLIE) && i_ptr->type == YUMBLIE));
|
||||
if (is_correct_type) {
|
||||
local->player_score++;
|
||||
@@ -404,7 +404,7 @@ bool chvilegame_cpu_consume_piece(ActorMarker *marker, f32 position[3]) {
|
||||
begin = vector_getBegin(local->game_pieces);
|
||||
end = vector_getEnd(local->game_pieces);
|
||||
for(i_ptr = begin; i_ptr < end; i_ptr++){
|
||||
if ((ml_vec3f_distance(i_ptr->position, position) < 50.0f) && func_8038B684(i_ptr->marker)) {
|
||||
if ((ml_distance_vec3f(i_ptr->position, position) < 50.0f) && func_8038B684(i_ptr->marker)) {
|
||||
local->vile_score++;
|
||||
timedFunc_set_1(0.0f, (GenMethod_1)func_802FDCB8, ITEM_1B_VILE_VILE_SCORE);
|
||||
timedFunc_set_1(0.5f, (GenMethod_1)func_802FDCB8, ITEM_1B_VILE_VILE_SCORE);
|
||||
@@ -483,12 +483,12 @@ bool chvilegame_find_closest_piece(ActorMarker *marker, f32 position[0], f32 yaw
|
||||
piece_direction[0] = i_ptr->position[0] - position[0];
|
||||
piece_direction[1] = i_ptr->position[1] - position[1];
|
||||
piece_direction[2] = i_ptr->position[2] - position[2];
|
||||
distance = ml_vec3f_distance(i_ptr->position, position);
|
||||
distance = ml_distance_vec3f(i_ptr->position, position);
|
||||
angle_diff = func_80256AB4(target_direction[0], target_direction[2], piece_direction[0], piece_direction[2]);
|
||||
if( (distance > 300.0f)
|
||||
|| ((-0.8 < angle_diff) && (angle_diff < 0.8) && ((piece_direction[0]*target_direction[0] + piece_direction[1]*target_direction[1] + piece_direction[2]*target_direction[2]) >= 0.0f))
|
||||
) {
|
||||
if ((closest_piece == NULL) || (distance < ml_vec3f_distance(position, closest_piece->position))){
|
||||
if ((closest_piece == NULL) || (distance < ml_distance_vec3f(position, closest_piece->position))){
|
||||
closest_piece = i_ptr;
|
||||
}
|
||||
}
|
||||
@@ -601,7 +601,7 @@ void chvilegame_update(Actor *this) {
|
||||
} else {
|
||||
chvilegame_player_consume_piece(this);
|
||||
if ((local->unkC == 3) || (local->unkC == 6)) {
|
||||
if (func_8025773C(&local->type_change_timer, sp50)) {
|
||||
if (ml_timer_update(&local->type_change_timer, sp50)) {
|
||||
local->current_type = !local->current_type;
|
||||
if (func_803203FC(2)) {
|
||||
local->type_change_timer = 5.0f;
|
||||
|
@@ -61,7 +61,7 @@ void func_803864D4(Actor *this){
|
||||
func_80388B4C(&sp4C);
|
||||
TUPLE_ASSIGN(sp40, 2640.0f, 5695.0f, -10.0f);
|
||||
local->unk8 += sp3C;
|
||||
if(func_8025773C(&local->unk4, sp3C)){
|
||||
if(ml_timer_update(&local->unk4, sp3C)){
|
||||
sp30[0] = sp4C[0] - sp40[0];
|
||||
sp30[1] = 0.0f;
|
||||
sp30[2] = sp4C[2] - sp40[2];
|
||||
@@ -76,7 +76,7 @@ void func_803864D4(Actor *this){
|
||||
}
|
||||
}//L80386634
|
||||
|
||||
if(func_8025773C(&local->unk0, sp3C)){
|
||||
if(ml_timer_update(&local->unk0, sp3C)){
|
||||
CC_func_803863F0(this, 4);
|
||||
}
|
||||
|
||||
|
@@ -83,7 +83,7 @@ void func_8038817C(void){
|
||||
if(D_80389F90.unk0 != 0){
|
||||
D_80389F90.unk4 += sp20;
|
||||
player_getPosition(sp24);
|
||||
if(func_8025773C(&D_80389F90.unk8, sp20)){
|
||||
if(ml_timer_update(&D_80389F90.unk8, sp20)){
|
||||
func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 28000);
|
||||
func_80324E38(0.0f, 3);
|
||||
timed_setCameraToNode(2.0f, 0);
|
||||
|
@@ -23,7 +23,7 @@ extern void ml_vec3f_normalize(f32[3]);
|
||||
extern void func_8033A45C(s32, s32);
|
||||
extern void func_8033A238(s32);
|
||||
extern void func_8028FAB0(f32[3]);
|
||||
extern void playerModel_802921D4(f32[3]);
|
||||
extern void baModel_802921D4(f32[3]);
|
||||
|
||||
/* .data */
|
||||
f32 D_80389C00[3] = {5700.0f, 4300.0f, 0.0f};
|
||||
@@ -208,7 +208,7 @@ void CC_func_80388760(Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
modelRender_draw(gfx, mtx, D_80389FA0.unk28, NULL, 1.0f, NULL, D_80389FA0.unk24);
|
||||
if(func_80340020(D_80389FA0.unk18, D_80389FA0.unk28, 0, 1.0f, 0, D_80389FA0.unk40, spA4, spA4)){
|
||||
func_8028FAB0(spA4);
|
||||
playerModel_802921D4(spA4);
|
||||
baModel_802921D4(spA4);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -331,7 +331,7 @@ void CC_func_80388F4C(void){
|
||||
CC_func_80387D4C();
|
||||
if(D_80389FA0.unk21 != 0 && func_80334904() == 2){
|
||||
player_getPosition(sp6C);
|
||||
D_80389FA0.unk20 = (ml_vec3f_distance(sp6C, D_80389FA0.unkC) < 200.0f);
|
||||
D_80389FA0.unk20 = (ml_distance_vec3f(sp6C, D_80389FA0.unkC) < 200.0f);
|
||||
|
||||
D_80389FA0.unk38 += sp68;
|
||||
sp64 = func_80335684(D_80389FA0.unk0);
|
||||
@@ -381,7 +381,7 @@ void CC_func_80388F4C(void){
|
||||
|
||||
if(D_80389FA0.unk21 == 3){
|
||||
func_8034A174(D_80389FA0.unk34, 6, sp48);
|
||||
if(ml_vec3f_distance(sp48, sp6C) <= 130.0f && sp6C[1] - sp48[1] < 50.0f){
|
||||
if(ml_distance_vec3f(sp48, sp6C) <= 130.0f && sp6C[1] - sp48[1] < 50.0f){
|
||||
func_8031D04C(0x21, 1);
|
||||
}
|
||||
}//L80389260
|
||||
@@ -400,7 +400,7 @@ void CC_func_80388F4C(void){
|
||||
}
|
||||
}
|
||||
}//L803892DC
|
||||
if(func_8025773C(&D_80389FA0.unk3C, sp68)){
|
||||
if(ml_timer_update(&D_80389FA0.unk3C, sp68)){
|
||||
if(D_80389FA0.unk21 == 3){
|
||||
func_8030E9FC(SFX_D0_GRIMLET_SQUEAK, 0.5f, 0.7f, 20000, D_80389C24, 2000.0f, 4000.0f);
|
||||
}else{
|
||||
@@ -409,7 +409,7 @@ void CC_func_80388F4C(void){
|
||||
D_80389FA0.unk3C = randf2(3.0f, 6.0f);
|
||||
}//L803893A0
|
||||
if(D_80389FA0.unk50 == 0){
|
||||
if(func_8025773C(&D_80389FA0.unk54, sp68))
|
||||
if(ml_timer_update(&D_80389FA0.unk54, sp68))
|
||||
D_80389FA0.unk50 = 1;
|
||||
}
|
||||
|
||||
|
@@ -138,7 +138,7 @@ void func_803870F8(Actor *this){
|
||||
sp3C[0] = this->position_x;
|
||||
sp3C[1] = this->position_y + 100;
|
||||
sp3C[2] = this->position_z;
|
||||
if(ml_vec3f_distance(&sp3C, &sp70) < 120.0f){
|
||||
if(ml_distance_vec3f(&sp3C, &sp70) < 120.0f){
|
||||
func_8031D04C(0x22, (local->unk0 == 1)? 7 : 6);
|
||||
}
|
||||
}//L80387500
|
||||
|
@@ -45,7 +45,7 @@ void func_803878A0(Actor *this, s32 next_state) {
|
||||
local->unkC[0] = randf2(-500.0f, 500.0f);
|
||||
local->unkC[1] = randf2(400.0f, 900.0f);
|
||||
local->unkC[2] = randf2(-400.0f, 700.0f);
|
||||
if(ml_vec3f_distance(this->position, local->unkC) > 800.0f)
|
||||
if(ml_distance_vec3f(this->position, local->unkC) > 800.0f)
|
||||
break;
|
||||
}
|
||||
local->unk8 = randf2(500.0f, 1000.0f);
|
||||
@@ -90,7 +90,7 @@ void CCW_func_80387A40(Actor *this) {
|
||||
sp5C[0] = local->unkC[0] - this->position[0];
|
||||
sp5C[1] = local->unkC[1] - this->position[1];
|
||||
sp5C[2] = local->unkC[2] - this->position[2];
|
||||
if (ml_vec3f_distance(this->position, local->unkC) < 500.0f) {
|
||||
if (ml_distance_vec3f(this->position, local->unkC) < 500.0f) {
|
||||
ml_vec3f_set_length(sp5C, local->unk8 * 8.0f);
|
||||
} else {
|
||||
ml_vec3f_set_length(sp5C, local->unk8 * 2);
|
||||
@@ -106,7 +106,7 @@ void CCW_func_80387A40(Actor *this) {
|
||||
}
|
||||
func_80258A4C(this->position, this->yaw - 90.0f, local->unkC, &sp58, &sp54, &sp50);
|
||||
this->yaw += 140.0f * sp50 * sp68;
|
||||
if (ml_vec3f_distance(this->position, local->unkC) < 100.0f) {
|
||||
if (ml_distance_vec3f(this->position, local->unkC) < 100.0f) {
|
||||
func_803878A0(this, 1);
|
||||
}
|
||||
}
|
||||
|
@@ -172,7 +172,7 @@ void func_8038687C(Actor *this) {
|
||||
other->position[1] = this->position[1] + sp6C[1];
|
||||
other->position[2] = this->position[2] + sp6C[2];
|
||||
}
|
||||
if (func_8025773C(&local->unkC, sp88)) {
|
||||
if (ml_timer_update(&local->unkC, sp88)) {
|
||||
if ((local->unk4 < 3) && ((local->unk8 + local->unk4) < 10)) {
|
||||
player_getPosition(sp5C);
|
||||
for(phi_s0 = 0; phi_s0 < 20; phi_s0++){
|
||||
@@ -180,10 +180,10 @@ void func_8038687C(Actor *this) {
|
||||
sp4C[1] = -100.0f;
|
||||
sp4C[2] = randf2(-500.0f, 900.0f);
|
||||
|
||||
if(ml_vec3f_distance(this->position, sp4C) < 400.0f)
|
||||
if(ml_distance_vec3f(this->position, sp4C) < 400.0f)
|
||||
continue;
|
||||
|
||||
tmp = ml_vec3f_distance(sp5C, sp4C);
|
||||
tmp = ml_distance_vec3f(sp5C, sp4C);
|
||||
phi_v0 = (phi_s0 < 0xA) ? 500 : 200;
|
||||
if(tmp < (f32) phi_v0)
|
||||
continue;
|
||||
@@ -204,7 +204,7 @@ void func_8038687C(Actor *this) {
|
||||
func_803865F4(this, 3);
|
||||
} else if ((local->unk0 != NULL) && (map_get() == MAP_5A_CCW_SUMMER_ZUBBA_HIVE)) {
|
||||
player_getPosition(sp40);
|
||||
if ((ml_vec3f_distance(this->position, sp40) < 300.0f) && (player_getTransformation() == TRANSFORM_1_BANJO)) {
|
||||
if ((ml_distance_vec3f(this->position, sp40) < 300.0f) && (player_getTransformation() == TRANSFORM_1_BANJO)) {
|
||||
func_803865F4(this, 2);
|
||||
}
|
||||
}
|
||||
|
@@ -161,7 +161,7 @@ void chGobiCCW_update(Actor *this) {
|
||||
if(this->state == 1){
|
||||
if (!this->unk138_24) {
|
||||
player_getPosition(sp48);
|
||||
if (ml_vec3f_distance(this->position, sp48) < 600.0f) {
|
||||
if (ml_distance_vec3f(this->position, sp48) < 600.0f) {
|
||||
if (local->unk0->unk2 != 0) {
|
||||
func_80311480((s32) local->unk0->unk2, 4, NULL, NULL, NULL, NULL);
|
||||
}
|
||||
|
@@ -272,7 +272,7 @@ void CCW_func_80389BFC(Actor *this) {
|
||||
}
|
||||
if ((local->unk0->map_id != MAP_43_CCW_SPRING) && ((this->position[0] + 500.0f) < sp4C[0])) {
|
||||
func_8028F364(this->position, 1110.0f, 200.0f, ACTOR_2A2_CATERPILLAR, &this);
|
||||
if ((local->unk0->unkE != 0) && (carriedObj_getActorId() == ACTOR_2A2_CATERPILLAR) && (ml_vec3f_distance(this->position, sp4C) < 1010.0f) && (func_8028FC34() != 0)) {
|
||||
if ((local->unk0->unkE != 0) && (carriedObj_getActorId() == ACTOR_2A2_CATERPILLAR) && (ml_distance_vec3f(this->position, sp4C) < 1010.0f) && (func_8028FC34() != 0)) {
|
||||
func_8028FA54(D_8038FDE0);
|
||||
if ((local->unk0->map_id == MAP_44_CCW_SUMMER) && (local->unk4 == 0)) {
|
||||
func_80311480(0xCD8, 4, NULL, NULL, NULL, NULL);
|
||||
|
@@ -111,13 +111,13 @@ void chcaterpillar_update(Actor *this){
|
||||
if(this->state == 1){
|
||||
func_8033568C(this->unk148, &sp64, &sp60);
|
||||
player_getPosition(sp74);
|
||||
if(ml_vec3f_distance(this->position, local->unk0) < 10.0f){
|
||||
if(ml_distance_vec3f(this->position, local->unk0) < 10.0f){
|
||||
for(i = 0; i < 10; i++){
|
||||
|
||||
local->unk0[0] = randf2(-300.0f, 300.0f) + this->position_x;
|
||||
local->unk0[1] = this->position_y;
|
||||
local->unk0[2] = randf2(-300.0f, 300.0f) + this->position_z;
|
||||
if( !(ml_vec3f_distance(local->unk0, this->position) < 50.0f) && func_80329210(this, local->unk0))
|
||||
if( !(ml_distance_vec3f(local->unk0, this->position) < 50.0f) && func_80329210(this, local->unk0))
|
||||
break;
|
||||
}//L8038A544
|
||||
if(i == 10){
|
||||
@@ -150,7 +150,7 @@ void chcaterpillar_update(Actor *this){
|
||||
}
|
||||
}//L8038A714
|
||||
|
||||
if(ml_vec3f_distance(this->position, sp74) < 50.0f){
|
||||
if(ml_distance_vec3f(this->position, sp74) < 50.0f){
|
||||
func_8028F030(ACTOR_2A2_CATERPILLAR);
|
||||
if(!func_803203FC(0xb2)){
|
||||
func_80311480(0xcc7, 4, NULL, NULL, NULL, NULL);
|
||||
@@ -177,7 +177,7 @@ void chcaterpillar_update(Actor *this){
|
||||
local->unk24 += 3.3333333333333335*sp84;
|
||||
|
||||
local->unk24 = (1.0 < local->unk24) ? 1.0 : local->unk24;
|
||||
func_80255FE4(this->position, local->unkC, local->unk18, local->unk24);
|
||||
ml_interpolate_vec3f(this->position, local->unkC, local->unk18, local->unk24);
|
||||
|
||||
this->position[1] += 50.0f*sinf(local->unk24*3.141592654);
|
||||
if(1.0 == local->unk24){
|
||||
|
@@ -101,7 +101,7 @@ void func_8038AA8C(Actor *this) {
|
||||
}
|
||||
|
||||
player_getPosition(sp54);
|
||||
if (ml_vec3f_distance(this->position, sp54) < 850.0f) {
|
||||
if (ml_distance_vec3f(this->position, sp54) < 850.0f) {
|
||||
func_8038A950(this, 2);
|
||||
}
|
||||
}
|
||||
|
@@ -67,7 +67,7 @@ void func_8038B19C(Actor *this) {
|
||||
func_8038B0F0(this, 1);
|
||||
}
|
||||
|
||||
if ((this->state == 1) && func_8025773C(&local->unk0, tick)) {
|
||||
if ((this->state == 1) && ml_timer_update(&local->unk0, tick)) {
|
||||
func_8038B0F0(this, 2);
|
||||
}
|
||||
|
||||
|
@@ -133,7 +133,7 @@ void chnabnut_update(Actor *this) {
|
||||
|
||||
if (this->state == NABNUT_STATE_1_SAD) {
|
||||
player_getPosition(sp30);
|
||||
if (!this->unk138_24 && (ml_vec3f_distance(this->position, sp30) < 400.0f)) {
|
||||
if (!this->unk138_24 && (ml_distance_vec3f(this->position, sp30) < 400.0f)) {
|
||||
this->unk138_24 = TRUE;
|
||||
func_80311480(0xCCA, 0xE, this->position, NULL, NULL, NULL);
|
||||
}
|
||||
@@ -143,7 +143,7 @@ void chnabnut_update(Actor *this) {
|
||||
}
|
||||
if (this->unk138_24 && !func_803114B0()) {
|
||||
func_8028F364(this->position, 500.0f, 200.0f, ACTOR_2A9_ACORN, &this);
|
||||
if ((carriedObj_getActorId() == ACTOR_2A9_ACORN) && (ml_vec3f_distance(this->position, sp30) < 300.0f) && func_8028FC34()) {
|
||||
if ((carriedObj_getActorId() == ACTOR_2A9_ACORN) && (ml_distance_vec3f(this->position, sp30) < 300.0f) && func_8028FC34()) {
|
||||
func_8028FA54(D_8038F350);
|
||||
local->returned_acorn_count++;
|
||||
if (local->returned_acorn_count == 6) {
|
||||
|
@@ -114,7 +114,7 @@ void func_8038C41C(Actor *this) {
|
||||
|
||||
if ((this->marker->unk14_20 == 0x1CB) && (this->state == 2)) {
|
||||
player_getPosition(sp2C);
|
||||
if (!this->unk138_24 && (ml_vec3f_distance(this->position, sp2C) < 400.0f)) {
|
||||
if (!this->unk138_24 && (ml_distance_vec3f(this->position, sp2C) < 400.0f)) {
|
||||
this->unk138_24 = TRUE;
|
||||
func_80311480(0xCCD, 0, NULL, NULL, NULL, NULL);
|
||||
}
|
||||
|
@@ -73,7 +73,7 @@ void func_8038C7A8(Actor *this) {
|
||||
|
||||
if (this->state == 1) {
|
||||
player_getPosition(sp38);
|
||||
if (ml_vec3f_distance(this->position, sp38) < 50.0f) {
|
||||
if (ml_distance_vec3f(this->position, sp38) < 50.0f) {
|
||||
func_8028F030(0x2A9);
|
||||
FUNC_8030E8B4(SFX_C5_TWINKLY_POP, 1.0f, 25000, this->position, 500, 2500);
|
||||
CCW_func_8038C6A0(this, 5);
|
||||
@@ -91,7 +91,7 @@ void func_8038C7A8(Actor *this) {
|
||||
if (this->state == 3) {
|
||||
local->unk18 += 3.3333333333333333 * sp44;
|
||||
local->unk18 = (local->unk18 > 1.0) ? 1.0 : local->unk18;
|
||||
func_80255FE4(this->position, local->unk0, local->unkC, local->unk18);
|
||||
ml_interpolate_vec3f(this->position, local->unk0, local->unkC, local->unk18);
|
||||
this->position[1] += 50.0f * sinf(local->unk18 * BAD_PI);
|
||||
if (local->unk18 == 1.0) {
|
||||
CCW_func_8038C6A0(this, 4);
|
||||
|
@@ -115,7 +115,7 @@ void func_8038CC4C(Actor *this) {
|
||||
}
|
||||
if (!this->unk138_24) {
|
||||
player_getPosition(sp38);
|
||||
if (ml_vec3f_distance(this->position, sp38) < 900.0f) {
|
||||
if (ml_distance_vec3f(this->position, sp38) < 900.0f) {
|
||||
if (local->unk0->map_id != MAP_46_CCW_WINTER || func_8028F2FC()) {
|
||||
func_80311480(local->unk0->unk4, 4, NULL, NULL, NULL, NULL);
|
||||
this->unk138_24 = TRUE;
|
||||
|
@@ -116,7 +116,7 @@ void func_8038CFB4(Actor *this) {
|
||||
if (this->state == 1) {
|
||||
if (!this->unk138_24) {
|
||||
player_getPosition(sp60);
|
||||
if (ml_vec3f_distance(this->position, sp60) < 900.0f) {
|
||||
if (ml_distance_vec3f(this->position, sp60) < 900.0f) {
|
||||
func_80311480(0xCCF, 4, NULL, NULL, NULL, NULL);
|
||||
this->unk138_24 = TRUE;
|
||||
}
|
||||
|
@@ -68,7 +68,7 @@ void func_8038D368(Actor *this) {
|
||||
|
||||
if(!this->unk138_24){
|
||||
player_getPosition(plyr_pos);
|
||||
if (ml_vec3f_distance(this->position, plyr_pos) < 600.0f) {
|
||||
if (ml_distance_vec3f(this->position, plyr_pos) < 600.0f) {
|
||||
if (!jiggyscore_isCollected(JIGGY_4B_CCW_GNAWTY)) {
|
||||
func_80311480(local->unk0->unk2, 4, NULL, NULL, NULL, NULL);
|
||||
} else {
|
||||
|
@@ -25,16 +25,16 @@ void CCW_func_8038D510(Actor *this) {
|
||||
};
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(6);
|
||||
pCtrl = partEmitMgr_newEmitter(6);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_70E_SPRITE_SMOKE_2);
|
||||
func_802EFA5C(pCtrl, 0.01f, 0.5f);
|
||||
particleEmitter_setFade(pCtrl, 0.01f, 0.5f);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 0, 7);
|
||||
particleEmitter_setPosition(pCtrl, this->position);
|
||||
func_802EFB70(pCtrl, 1.0f, 2.0f);
|
||||
func_802EFB84(pCtrl, 3.0f, 4.0f);
|
||||
particleEmitter_setPositionAndVelocityRanges(pCtrl, &D_8038F670);
|
||||
func_802EFFA8(pCtrl, D_8038F664);
|
||||
func_802EFEC0(pCtrl, 3.0f, 4.0f);
|
||||
particleEmitter_setRGB(pCtrl, D_8038F664);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 3.0f, 4.0f);
|
||||
particleEmitter_emitN(pCtrl, 6);
|
||||
}
|
||||
|
||||
@@ -47,18 +47,18 @@ void func_8038D5DC(Actor *this) {
|
||||
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(30);
|
||||
pCtrl = partEmitMgr_newEmitter(30);
|
||||
func_802EF9F8(pCtrl, 0.6f);
|
||||
func_802EFA18(pCtrl, 3);
|
||||
particleEmitter_setModel(pCtrl, 0x896);
|
||||
particleEmitter_setPosition(pCtrl, this->position);
|
||||
func_802EFB70(pCtrl, 0.05f, 0.3f);
|
||||
func_802EFE24(pCtrl,
|
||||
particleEmitter_setAngularVelocityRange(pCtrl,
|
||||
-600.0f, -600.0f, -600.0f,
|
||||
600.0f, 600.0f, 600.0f
|
||||
);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 10.0f, 10.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 10.0f, 10.0f);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_8038F6A0);
|
||||
particleEmitter_emitN(pCtrl, 30);
|
||||
}
|
||||
@@ -116,7 +116,7 @@ void func_8038D85C(Actor *this) {
|
||||
return;
|
||||
}
|
||||
if(this->state == 2){
|
||||
if (func_8025773C(&local->unk0, tick) ) {
|
||||
if (ml_timer_update(&local->unk0, tick) ) {
|
||||
func_8038D6D8(this, 3);
|
||||
}
|
||||
}
|
||||
|
@@ -70,7 +70,7 @@ void func_8038E440(ParticleEmitter *pCtrl, Actor *actor, enum asset_e model_id){
|
||||
};
|
||||
|
||||
func_802DABA0(pCtrl, actor->position, actor->scale, model_id);
|
||||
func_802EFE24(pCtrl,
|
||||
particleEmitter_setAngularVelocityRange(pCtrl,
|
||||
-600.0f, -600.0f, -600.0f,
|
||||
600.0f, 600.0f, 600.0f
|
||||
);
|
||||
@@ -85,7 +85,7 @@ void func_8038E4C0(ActorMarker* marker, s32 arg1) {
|
||||
func_80328B8C(actor, 5, 0.0f, 1);
|
||||
actor_playAnimationOnce(actor);
|
||||
FUNC_8030E8B4(SFX_C2_GRUBLIN_EGH, 1.0f, 32000, actor->position, 1250, 2500);
|
||||
pCtrl = partEmitList_pushNew(1);
|
||||
pCtrl = partEmitMgr_newEmitter(1);
|
||||
func_8038E440(pCtrl, actor, ASSET_52D_MODEL_GRUBLIN_HOOD_HAT);
|
||||
__spawnQueue_add_4((GenMethod_4)func_802C4140, ACTOR_4C_STEAM, reinterpret_cast(s32,actor->position_x), reinterpret_cast(s32,actor->position_y), reinterpret_cast(s32,actor->position_z));
|
||||
actor_collisionOff(actor);
|
||||
|
@@ -80,7 +80,7 @@ void func_8038FF54(Actor *this){
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
else if(this->marker->unk14_21){//L8039016C
|
||||
sp3C = partEmitList_pushNew(1);
|
||||
sp3C = partEmitMgr_newEmitter(1);
|
||||
func_8034A174(this->marker->unk44, 5, sp40);
|
||||
particleEmitter_setSprite(sp3C, ASSET_713_SPRITE_SPARKLE_YELLOW);
|
||||
particleEmitter_setStartingFrameRange(sp3C, 1, 6);
|
||||
|
@@ -229,8 +229,8 @@ void func_80388D70(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
func_8025A58C(0, 4000);
|
||||
func_8024BD08(0);
|
||||
func_802BE720();
|
||||
local->unk0 = partEmitList_pushNew(16);
|
||||
local->unk4 = partEmitList_pushNew(16);
|
||||
local->unk0 = partEmitMgr_newEmitter(16);
|
||||
local->unk4 = partEmitMgr_newEmitter(16);
|
||||
func_80388EE8(local->unk0);
|
||||
func_80388EE8(local->unk4);
|
||||
func_80328B8C(this, 4, 0.0001f, 1);
|
||||
@@ -256,10 +256,10 @@ void func_80388D70(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
|
||||
void func_80388EE8(ParticleEmitter *pCtrl){
|
||||
particleEmitter_setSprite(pCtrl, ASSET_700_SPRITE_DUST);
|
||||
func_802EFFA8(pCtrl, D_80391D24);
|
||||
particleEmitter_setRGB(pCtrl, D_80391D24);
|
||||
particleEmitter_setPositionAndVelocityRanges(pCtrl, &D_80391D58);
|
||||
func_802EFB98(pCtrl, &D_80391D30);
|
||||
func_802F0D54(pCtrl);
|
||||
particleEmitter_manualFree(pCtrl);
|
||||
}
|
||||
|
||||
void FP_func_80388F4C(Actor *this){}
|
||||
|
@@ -91,22 +91,22 @@ Actor *func_8038C1F8(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
void func_8038C260(f32 position[3], s32 count, enum asset_e model_id){
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
particleEmitter_setModel(pCtrl, model_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_80392028);
|
||||
func_802EFE24(pCtrl,
|
||||
particleEmitter_setAngularVelocityRange(pCtrl,
|
||||
400.0f, 400.0f, 400.0f,
|
||||
800.0f, 800.0f, 800.0f
|
||||
);
|
||||
func_802EFB70(pCtrl, 0.1f, 0.2f);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.02f);
|
||||
func_802EFEC0(pCtrl, 1.5f, 1.5f);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.3f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 1.5f, 1.5f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.3f);
|
||||
func_802EF9F8(pCtrl, 0.6f);
|
||||
func_802EFA18(pCtrl, 0);
|
||||
func_802EFA20(pCtrl, 1.0f, 1.3f);
|
||||
func_802EF9EC(pCtrl, 0x7B, 8000);
|
||||
particleEmitter_setSfx(pCtrl, SFX_7B_ICE_BREAKING_1, 8000);
|
||||
particleEmitter_emitN(pCtrl, count);
|
||||
}
|
||||
|
||||
|
@@ -127,11 +127,11 @@ Actor *FP_func_8038CED0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
void func_8038CF54(f32 position[3], s32 count, enum asset_e model_id){
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
particleEmitter_setModel(pCtrl, model_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_80392134);
|
||||
func_802EFE24(pCtrl,
|
||||
particleEmitter_setAngularVelocityRange(pCtrl,
|
||||
100.0f, 100.0f, 100.0f,
|
||||
200.0f, 200.0f, 200.0f
|
||||
);
|
||||
@@ -144,8 +144,8 @@ void func_8038CF54(f32 position[3], s32 count, enum asset_e model_id){
|
||||
void func_8038D01C(f32 position[3], s32 count, enum asset_e sprite_id){
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
func_802EFFA8(pCtrl, D_803921A4);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
particleEmitter_setRGB(pCtrl, D_803921A4);
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_803921B0);
|
||||
@@ -156,11 +156,11 @@ void func_8038D01C(f32 position[3], s32 count, enum asset_e sprite_id){
|
||||
void func_8038D0A8(f32 position[3], s32 count, enum asset_e model_id){
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
particleEmitter_setModel(pCtrl, model_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_80392220);
|
||||
func_802EFE24(pCtrl,
|
||||
particleEmitter_setAngularVelocityRange(pCtrl,
|
||||
200.0f, 200.0f, 200.0f,
|
||||
300.0f, 300.0f, 300.0f
|
||||
);
|
||||
@@ -173,7 +173,7 @@ void func_8038D0A8(f32 position[3], s32 count, enum asset_e model_id){
|
||||
void func_8038D170(f32 position[3], s32 count, enum asset_e sprite_id){
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_80392290);
|
||||
@@ -186,8 +186,8 @@ void func_8038D170(f32 position[3], s32 count, enum asset_e sprite_id){
|
||||
void func_8038D208(f32 position[3], s32 count, enum asset_e sprite_id){
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
func_802EFFA8(pCtrl, D_80392300);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
particleEmitter_setRGB(pCtrl, D_80392300);
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_8039230C);
|
||||
|
@@ -47,7 +47,7 @@ Actor *func_80386B80(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
|
||||
void FP_func_80386BEC(Actor *this){
|
||||
f32 plyr_pos[3];
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(12);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(12);
|
||||
|
||||
player_getPosition(plyr_pos);
|
||||
func_80328B8C(this, 2, 0.01f, 1);
|
||||
@@ -55,7 +55,7 @@ void FP_func_80386BEC(Actor *this){
|
||||
func_8025A6EC(COMUSIC_2B_DING_B, 28000);
|
||||
FUNC_8030E624(SFX_90_SWITCH_PRESS, 1.0f, 32000);
|
||||
func_8038AB40();
|
||||
func_802EFFA8(pCtrl, D_80391B44);
|
||||
particleEmitter_setRGB(pCtrl, D_80391B44);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_700_SPRITE_DUST);
|
||||
particleEmitter_setPosition(pCtrl, plyr_pos);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_80391AFC);
|
||||
|
@@ -47,7 +47,7 @@ void func_8038E7CC(ActorMarker *this_marker, ActorMarker *other_marker){
|
||||
|
||||
void func_8038E840(f32 position[3], s32 cnt, enum asset_e sprite_id){
|
||||
static struct31s D_80392444 = {{0.4f, 0.6f}, {0.8f, 1.8f}, {0.0f, 0.01f}, {0.5f, 1.4f}, 0.0f, 0.01f};
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
|
@@ -140,7 +140,7 @@ bool func_8038F5D4(Actor *this, f32 arg1[3], f32 arg2, f32 arg3, s32 arg4){
|
||||
}
|
||||
this->unk28 = (1.0f- sp24)*arg2;
|
||||
func_80329054(this, 2);
|
||||
if(ml_vec3f_distance(this->position, arg1) <= arg4)
|
||||
if(ml_distance_vec3f(this->position, arg1) <= arg4)
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
|
||||
|
@@ -27,11 +27,11 @@ void func_80390944(f32 position[3], s32 cnt, enum asset_e model_id){
|
||||
{{ 0.0f, -1000.0f, 0.0f}, { 0.0f, -1000.0f, 0.0f}}, /*velocitcy*/
|
||||
{{-100.0f, 0.0f, -100.0f}, {100.0f, 200.0f, 100.0f}} /*acceleration*/
|
||||
};
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
particleEmitter_setModel(pCtrl, model_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_8039277C);
|
||||
func_802EFE24(pCtrl,
|
||||
particleEmitter_setAngularVelocityRange(pCtrl,
|
||||
100.0f, 100.0f, 100.0f,
|
||||
250.0f, 250.0f, 250.0f
|
||||
);
|
||||
@@ -39,7 +39,7 @@ void func_80390944(f32 position[3], s32 cnt, enum asset_e model_id){
|
||||
func_802EF9F8(pCtrl, 0.6f);
|
||||
func_802EFA18(pCtrl, 0);
|
||||
func_802EFA20(pCtrl, 1.0f, 1.3f);
|
||||
func_802EF9EC(pCtrl, 0x7B, 8000);
|
||||
particleEmitter_setSfx(pCtrl, SFX_7B_ICE_BREAKING_1, 8000);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
@@ -51,8 +51,8 @@ void func_80390A30(f32 position[3], s32 cnt, enum asset_e sprite_id){
|
||||
{{ -50.0f, 0.0f, -50.0f}, { 50.0f, 200.0f, 50.0f}} /*acceleration*/
|
||||
};
|
||||
static s32 D_80392834[3] = {0xDC, 0xDC, 0xE6};
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
func_802EFFA8(pCtrl, D_80392834);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
particleEmitter_setRGB(pCtrl, D_80392834);
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_803927EC);
|
||||
|
@@ -18,11 +18,11 @@ void func_80390C70(f32 position[3]){
|
||||
static struct40s FP_D_80392864 = {{{1.7f, 2.0f}, {2.4f, 2.7f}, {0.0f, 0.01f}, {4.0f, 7.0f}, 0.3f, 0.7f}, 4.0f, 1.0f};
|
||||
static s32 D_80392894[3] = {0xFF, 0XFF, 0xFF};
|
||||
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(1);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
|
||||
func_802EFFA8(pCtrl, D_80392894);
|
||||
func_802EF9E4(pCtrl, 0x41);
|
||||
particleEmitter_setRGB(pCtrl, D_80392894);
|
||||
particleEmitter_setAlpha(pCtrl, 0x41);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
-40.0f, 110.0f, -40.0f,
|
||||
@@ -39,11 +39,11 @@ void func_80390D58(f32 position[3]){
|
||||
static struct40s D_803928A0 = {{{0.05f, 0.1f}, {0.1f, 0.2f}, {0.0f, 0.01f}, {0.9f, 1.3f}, 0.3f, 0.7f}, 4.0f, 1.0f};
|
||||
static s32 D_803928D0[3] = {0xFF, 0xFF, 0xFF};
|
||||
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(1);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_713_SPRITE_SPARKLE_YELLOW);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
|
||||
func_802EFFA8(pCtrl, D_803928D0);
|
||||
func_802EF9E4(pCtrl, 0xFF);
|
||||
particleEmitter_setRGB(pCtrl, D_803928D0);
|
||||
particleEmitter_setAlpha(pCtrl, 0xFF);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
-40.0f, 50.0,-40.0f,
|
||||
|
@@ -136,13 +136,13 @@ void chGobi1_update(Actor *this){
|
||||
return;
|
||||
}//L80387514
|
||||
|
||||
if(func_8025773C(&local->unk8, tick))
|
||||
if(ml_timer_update(&local->unk8, tick))
|
||||
sp6C = 5;
|
||||
|
||||
if(func_8025773C(&local->unkC, tick))
|
||||
if(ml_timer_update(&local->unkC, tick))
|
||||
FUNC_8030E8B4(SFX_84_GOBI_CRYING, 0.9f, 32000, this->position, 1500, 2500);
|
||||
|
||||
if(func_8025773C(&local->unk10, tick)){
|
||||
if(ml_timer_update(&local->unk10, tick)){
|
||||
for(i = 0; i < 2; i++){
|
||||
sfxsource_setSfxId(local->unk0[i], SFX_3F9_UNKNOWN);
|
||||
func_8030DD14(local->unk0[i], 3);
|
||||
@@ -151,7 +151,7 @@ void chGobi1_update(Actor *this){
|
||||
}
|
||||
}
|
||||
|
||||
if(func_8025773C(&local->unk14, tick)){
|
||||
if(ml_timer_update(&local->unk14, tick)){
|
||||
local->unk10 = 0.75f;
|
||||
local->unk8 = 7.5f;
|
||||
timed_setCameraToNode(0.5f, 0xa);
|
||||
@@ -191,7 +191,7 @@ void chGobi1_update(Actor *this){
|
||||
sp6C = 6;
|
||||
}//L803877F0
|
||||
else{
|
||||
if(func_8025773C(&local->unk4, tick))
|
||||
if(ml_timer_update(&local->unk4, tick))
|
||||
sp6C = 2;
|
||||
}
|
||||
}//L80387808
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
extern void func_802EF3A8(ParticleEmitter *, Gfx **, Mtx **, Vtx**);
|
||||
extern void particleEmitter_draw(ParticleEmitter *, Gfx **, Mtx **, Vtx**);
|
||||
|
||||
typedef struct {
|
||||
f32 unk0[3];
|
||||
@@ -61,8 +61,8 @@ Actor *chGobiRock_draw(ActorMarker *this_marker, Gfx **gfx, Mtx **mtx, Vtx **vtx
|
||||
ActorLocal_chGobiRock *local = (ActorLocal_chGobiRock *)&this->local;
|
||||
f32 sp3C[3];
|
||||
|
||||
func_802EF3A8(local->unkC, gfx, mtx, vtx);
|
||||
func_802EF3A8(local->unk10, gfx, mtx, vtx);
|
||||
particleEmitter_draw(local->unkC, gfx, mtx, vtx);
|
||||
particleEmitter_draw(local->unk10, gfx, mtx, vtx);
|
||||
if(this->state == 0 || this->state == 2)
|
||||
return this;
|
||||
|
||||
@@ -84,8 +84,8 @@ bool chGobiRock_isDestroyed(void){
|
||||
void chGobiRock_free(Actor *this){
|
||||
ActorLocal_chGobiRock *local = (ActorLocal_chGobiRock *)&this->local;
|
||||
__chGobiRock_setState(this, 0);
|
||||
func_802EF684(local->unkC);
|
||||
func_802EF684(local->unk10);
|
||||
particleEmitter_free(local->unkC);
|
||||
particleEmitter_free(local->unk10);
|
||||
}
|
||||
|
||||
void chGobiRock_update(Actor *this){
|
||||
@@ -119,12 +119,12 @@ void chGobiRock_update(Actor *this){
|
||||
else{//L80388ED0
|
||||
particleEmitter_update(local->unkC);
|
||||
particleEmitter_update(local->unk10);
|
||||
if(func_8025773C(&local->unk14, sp24)){
|
||||
if(ml_timer_update(&local->unk14, sp24)){
|
||||
jiggySpawn(JIGGY_44_GV_GOBI_1, jiggy_position);
|
||||
func_802BB3DC(0, 60.0f, 0.65f);
|
||||
}
|
||||
if(this->state == 2){
|
||||
if(func_802EF648(local->unkC) && func_802EF648(local->unk10)){
|
||||
if(particleEmitter_isDone(local->unkC) && particleEmitter_isDone(local->unk10)){
|
||||
marker_despawn(sp34);
|
||||
}
|
||||
}
|
||||
|
@@ -175,7 +175,7 @@ void chMazeCtrl_update(Actor *this){
|
||||
__chMazeCtrl_setState(this, 2);
|
||||
}
|
||||
if( !levelSpecificFlags_get(0x15)
|
||||
&& func_8025773C(&local->unk8, sp34)
|
||||
&& ml_timer_update(&local->unk8, sp34)
|
||||
&& func_80311480(ASSET_A81_TEXT_SANDYBUTT_ENTER, 0, NULL, NULL, NULL, NULL)
|
||||
){
|
||||
levelSpecificFlags_set(0x15, TRUE);
|
||||
|
@@ -28,11 +28,11 @@ s32 D_80390F94[3] = {0xFF, 0xFF, 0x9B};
|
||||
|
||||
/* .code */
|
||||
void func_80389FA0(f32 position[3]){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(1);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
|
||||
func_802EFFA8(pCtrl, D_80390F94);
|
||||
func_802EF9E4(pCtrl, 100);
|
||||
particleEmitter_setRGB(pCtrl, D_80390F94);
|
||||
particleEmitter_setAlpha(pCtrl, 100);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange( pCtrl,
|
||||
-700.0f, 0.0f, -700.0f,
|
||||
|
@@ -39,19 +39,19 @@ f32 GV_D_80391A70[3];
|
||||
/* .code */
|
||||
void func_8038AB30(ParticleEmitter *pCtrl, f32 position[3], s32 cnt){
|
||||
if(map_get() != MAP_1A_GV_INSIDE_JINXY)
|
||||
func_802EFFA8(pCtrl, D_803910BC);
|
||||
particleEmitter_setRGB(pCtrl, D_803910BC);
|
||||
else
|
||||
func_802EFFA8(pCtrl, D_803910C8);
|
||||
particleEmitter_setRGB(pCtrl, D_803910C8);
|
||||
|
||||
func_802EF9E4(pCtrl, 0xBE);
|
||||
particleEmitter_setAlpha(pCtrl, 0xBE);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_700_SPRITE_DUST);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 0, 7);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
}
|
||||
|
||||
void func_8038ABD8(f32 position[3], s32 cnt){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
func_8038AB30(pCtrl, position, cnt);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
-40.0f, -5.0f, -40.0f,
|
||||
@@ -64,12 +64,12 @@ void func_8038ABD8(f32 position[3], s32 cnt){
|
||||
func_802EFB70(pCtrl, 0.1f, 0.5f);
|
||||
func_802EFB84(pCtrl, 1.2f, 2.6f);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 0.5f, 1.4f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.5f, 1.4f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
void func_8038ACEC(f32 pos[3], s32 cnt){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
func_8038AB30(pCtrl, pos, cnt);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
-80.0f, 20.0f, -80.0f,
|
||||
@@ -82,23 +82,23 @@ void func_8038ACEC(f32 pos[3], s32 cnt){
|
||||
func_802EFB70(pCtrl, 1.0f, 2.6f);
|
||||
func_802EFB84(pCtrl, 3.0f, 5.5f);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 1.2f, 3.2f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 1.2f, 3.2f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
void func_8038ADFC(f32 pos[3], s32 cnt){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
particleEmitter_setModel(pCtrl, 0x389);
|
||||
particleEmitter_setPosition(pCtrl, pos);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_803910D4);
|
||||
func_802EFE24(pCtrl, -500.0f, -500.0f, -500.0f, 500.0f, 500.0f, 500.0f);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -500.0f, -500.0f, -500.0f, 500.0f, 500.0f, 500.0f);
|
||||
func_802EF9F8(pCtrl, 0.6f);
|
||||
func_802EFA18(pCtrl, 2);
|
||||
func_802EFB70(pCtrl, 1.0f, 1.0f);
|
||||
func_802EFA70(pCtrl, 2);
|
||||
particleEmitter_setDrawMode(pCtrl, 2);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 4.0f, 6.0f);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.05f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 4.0f, 6.0f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.05f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
|
@@ -109,16 +109,16 @@ void func_8038BB6C(Actor *jiggy, ActorMarker * grabba_marker)
|
||||
}
|
||||
|
||||
void func_8038BBFC(ParticleEmitter *pCtrl, f32 position[3], s32 cnt){
|
||||
func_802EFFA8(pCtrl, D_8039117C);
|
||||
func_802EF9E4(pCtrl, 0x96);
|
||||
particleEmitter_setRGB(pCtrl, D_8039117C);
|
||||
particleEmitter_setAlpha(pCtrl, 0x96);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_700_SPRITE_DUST);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 0, 7);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
}
|
||||
|
||||
void func_8038BC7C(f32 position[3], s32 cnt){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
func_8038BBFC(pCtrl, position, cnt);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
-60.0f, 0.0f, -60.0f,
|
||||
@@ -131,12 +131,12 @@ void func_8038BC7C(f32 position[3], s32 cnt){
|
||||
func_802EFB70(pCtrl, 0.1f, 0.5f);
|
||||
func_802EFB84(pCtrl, 2.0f, 2.6f);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 0.5f, 1.4f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.5f, 1.4f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
void func_8038BD8C(f32 position[3], s32 cnt){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
func_8038BBFC(pCtrl, position, cnt);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
-40.0f, 0.0f, -40.0f,
|
||||
@@ -149,7 +149,7 @@ void func_8038BD8C(f32 position[3], s32 cnt){
|
||||
func_802EFB70(pCtrl, 0.1f, 0.5f);
|
||||
func_802EFB84(pCtrl, 1.2, 1.6f);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 0.5f, 1.4f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.5f, 1.4f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
|
@@ -94,7 +94,7 @@ void func_8038C8A0(Actor *this, s32 next_state){
|
||||
local->unk18[1] = this->position_y;
|
||||
local->unk18[2] = this->position_z;
|
||||
if(this->state == 1){
|
||||
func_80250E94(0.0f, 0.6f, 1.0f, 0, 1.3f, 0.0f);
|
||||
rumbleManager_80250E94(0.0f, 0.6f, 1.0f, 0, 1.3f, 0.0f);
|
||||
timed_playSfx(1.0f, SFX_3F6_UNKNOWN, 0.8f, 30000);
|
||||
}
|
||||
}//L8038CA6C
|
||||
@@ -125,13 +125,13 @@ void func_8038C8A0(Actor *this, s32 next_state){
|
||||
local->unk18[0] = this->position_x;
|
||||
local->unk18[1] = this->position_y;
|
||||
local->unk18[2] = this->position_z;
|
||||
func_80250D94(0.7f, 0.5f, 1.3f);
|
||||
rumbleManager_80250D94(0.7f, 0.5f, 1.3f);
|
||||
FUNC_8030E624(SFX_3F6_UNKNOWN, 0.8f, 30000);
|
||||
}
|
||||
|
||||
if(next_state == 8){
|
||||
if(this->state == 7){
|
||||
func_80250D94(0.8f, 0.7f, 3.0f);
|
||||
rumbleManager_80250D94(0.8f, 0.7f, 3.0f);
|
||||
func_8038C760(this, *local->unk8 + 1);
|
||||
}
|
||||
marker_despawn(this->marker);
|
||||
|
@@ -72,7 +72,7 @@ void func_8038D47C(Actor *this){
|
||||
if(!mapSpecificFlags_get(0x14)){
|
||||
player_getPosition(sp3C);
|
||||
if(func_8028ECAC() == 0){
|
||||
if( ml_vec3f_distance(sp3C, this->unk1C) < 100.0f || ml_vec3f_distance(sp3C, this->velocity) < 100.0f){
|
||||
if( ml_distance_vec3f(sp3C, this->unk1C) < 100.0f || ml_distance_vec3f(sp3C, this->velocity) < 100.0f){
|
||||
if(func_80311480(ASSET_A7B_TEXT_JINXY_MEET, 0, NULL, NULL, NULL, NULL)){
|
||||
mapSpecificFlags_set(0x14, 1);
|
||||
}
|
||||
|
@@ -116,6 +116,6 @@ void chhut_update(Actor *this){
|
||||
|
||||
}
|
||||
|
||||
void func_80386C90(void){
|
||||
void mm_resetHuts(void){
|
||||
D_8037DCB0 = 0;
|
||||
}
|
||||
|
@@ -59,7 +59,7 @@ void func_80386444(ActorMarker *arg0){
|
||||
}// L803865D8
|
||||
|
||||
//emmit sparkles
|
||||
s0 = partEmitList_pushNew(30);
|
||||
s0 = partEmitMgr_newEmitter(30);
|
||||
particleEmitter_setPosition(s0, orange_pad->position);
|
||||
particleEmitter_setModel(s0, 0x89f);
|
||||
func_802EFB70(s0, 0.09f, 0.19f);
|
||||
@@ -75,12 +75,12 @@ void func_80386444(ActorMarker *arg0){
|
||||
0.0f, -1200.0f, 0.0f
|
||||
);
|
||||
|
||||
func_802EFE24(s0,
|
||||
particleEmitter_setAngularVelocityRange(s0,
|
||||
-600.0f, -600.0f, -600.0f,
|
||||
600.0f, 600.0f, 600.0f
|
||||
);
|
||||
particleEmitter_setSpawnIntervalRange(s0, 0.0f, 0.01f);
|
||||
func_802EFEC0(s0, 4.0f, 4.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(s0, 4.0f, 4.0f);
|
||||
func_802EF9F8(s0, 0.01f);
|
||||
func_802EFA18(s0, 3);
|
||||
func_802EFA20(s0, 1.0f, 1.3f);
|
||||
|
@@ -180,7 +180,7 @@ void chnapper_update(Actor *this){
|
||||
}
|
||||
}//L80386F74
|
||||
|
||||
if(this->state == 2 && func_8025773C(&local->unk8, sp68)){
|
||||
if(this->state == 2 && ml_timer_update(&local->unk8, sp68)){
|
||||
player_getPosition(player_position);
|
||||
sp30[0] = player_position[0] - this->position_x;
|
||||
sp30[1] = player_position[1] - this->position_y;
|
||||
|
@@ -125,8 +125,8 @@ void func_80387DF8(f32 position[3], s32 count, enum asset_e sprite_id) {
|
||||
};
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
func_802EFFA8(pCtrl, D_8038BAF4);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
particleEmitter_setRGB(pCtrl, D_8038BAF4);
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_8038BB28);
|
||||
@@ -143,16 +143,16 @@ void func_80387E84(f32 position[3], s32 count, enum asset_e model_id) {
|
||||
};
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
particleEmitter_setModel(pCtrl, model_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_8038BB98);
|
||||
func_802EFE24(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
func_802EF9F8(pCtrl, 0.4f);
|
||||
func_802EFA18(pCtrl, 3);
|
||||
func_802EFA20(pCtrl, 1.0f, 1.3f);
|
||||
func_802EF9EC(pCtrl, 0x2F, 0x3E80);
|
||||
func_802EFA70(pCtrl, 2);
|
||||
particleEmitter_setSfx(pCtrl, SFX_2F_ORANGE_SPLAT, 16000);
|
||||
particleEmitter_setDrawMode(pCtrl, 2);
|
||||
func_802EFB98(pCtrl, &D_8038BB70);
|
||||
particleEmitter_emitN(pCtrl, count);
|
||||
}
|
||||
@@ -189,7 +189,7 @@ void func_80388028(Actor *this){
|
||||
}//L803880B4
|
||||
|
||||
player_getPosition(plyr_position);
|
||||
plyr_dist = ml_vec3f_distance(this->position, plyr_position);
|
||||
plyr_dist = ml_distance_vec3f(this->position, plyr_position);
|
||||
|
||||
if(this->state == 4)
|
||||
actor_collisionOn(this);
|
||||
@@ -214,7 +214,7 @@ void func_80388028(Actor *this){
|
||||
}//L80388204
|
||||
|
||||
if(this->state == 3){
|
||||
if(func_8025773C(&local->unk0, sp58)){
|
||||
if(ml_timer_update(&local->unk0, sp58)){
|
||||
func_80387B14(this, 4);
|
||||
}
|
||||
}
|
||||
|
@@ -366,7 +366,7 @@ void organMinigame_update(void){
|
||||
if(func_8038769C(D_8038C4F0.motzhand_marker)){
|
||||
player_getPosition(plyr_pos);
|
||||
motzhand_2 = marker_getActor(D_8038C4F0.motzhand_marker);
|
||||
if( ml_vec3f_distance(motzhand_2->position, plyr_pos) < 400.0f
|
||||
if( ml_distance_vec3f(motzhand_2->position, plyr_pos) < 400.0f
|
||||
&& motzhand_2->position_y - 50.0f <= plyr_pos[1]
|
||||
){
|
||||
organMinigame_setState(2);
|
||||
|
@@ -41,7 +41,7 @@ void MMM_func_803871FC(Actor *this){
|
||||
func_803255FC(this);
|
||||
}
|
||||
|
||||
void func_80387260() {
|
||||
void mm_resetFlowerPots() {
|
||||
func_803871D4(5);
|
||||
}
|
||||
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/particle.h"
|
||||
|
||||
|
||||
|
||||
@@ -124,39 +125,39 @@ void func_80387C5C(void){
|
||||
ParticleEmitter *actor;
|
||||
|
||||
func_802BB3DC(0, 60.0f, 0.9f);
|
||||
actor = partEmitList_pushNew(1);
|
||||
actor = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setSprite(actor, ASSET_4A0_SPRITE_EXPLOSION);
|
||||
func_802EFA5C(actor, 0.1f, 0.2f);
|
||||
func_802EFA70(actor, 8);
|
||||
particleEmitter_setFade(actor, 0.1f, 0.2f);
|
||||
particleEmitter_setDrawMode(actor, PART_EMIT_NO_LOOP);
|
||||
particleEmitter_setStartingFrameRange(actor, 0, 0);
|
||||
particleEmitter_setParticleFramerateRange(actor, 4.0f, 4.0f);
|
||||
func_802EFB70(actor, 10.0f, 10.0f);
|
||||
func_802EFB84(actor, 15.0f, 20.0f);
|
||||
func_802EFEC0(actor, 4.0f, 4.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(actor, 4.0f, 4.0f);
|
||||
particleEmitter_setParticleVelocityRange(actor, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);
|
||||
func_802EF3F4(actor, &D_803902D4, &D_803902E0, 1);
|
||||
particleEmitter_emitInVolume(actor, &D_803902D4, &D_803902E0, 1);
|
||||
}
|
||||
|
||||
void func_80387D80(void){
|
||||
ParticleEmitter *actor = partEmitList_pushNew(3);
|
||||
ParticleEmitter *actor = partEmitMgr_newEmitter(3);
|
||||
particleEmitter_setSprite(actor, ASSET_70E_SPRITE_SMOKE_2);
|
||||
particleEmitter_setStartingFrameRange(actor, 0, 7);
|
||||
func_802EFB98(actor, &D_80390304);
|
||||
particleEmitter_setParticleVelocityRange(actor, 0.0f, 100.0f, 0.0f, 0.0f, 200.0f ,0.0f);
|
||||
func_802EF3F4(actor, &D_803902EC, &D_803902F8, 3);
|
||||
particleEmitter_emitInVolume(actor, &D_803902EC, &D_803902F8, 3);
|
||||
}
|
||||
|
||||
void func_80387E20(void){
|
||||
ParticleEmitter *actor = partEmitList_pushNew(0x19);
|
||||
ParticleEmitter *actor = partEmitMgr_newEmitter(0x19);
|
||||
func_802EF9F8(actor, 0.6f);
|
||||
func_802EFA18(actor, 3);
|
||||
particleEmitter_setModel(actor, 0x427);
|
||||
func_802EFB70(actor, 0.05f, 0.4f);
|
||||
func_802EFE24(actor, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setAngularVelocityRange(actor, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setSpawnIntervalRange(actor, 0.0f, 0.01f);
|
||||
func_802EFEC0(actor, 10.0f, 10.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(actor, 10.0f, 10.0f);
|
||||
particleEmitter_setVelocityAndAccelerationRanges(actor, &D_80390344);
|
||||
func_802EF3F4(actor, &D_8039032C, &D_80390338, 0x19);
|
||||
particleEmitter_emitInVolume(actor, &D_8039032C, &D_80390338, 0x19);
|
||||
}
|
||||
|
||||
void RBB_func_80387F18(ActorMarker *marker, s32 arg1){
|
||||
@@ -164,7 +165,7 @@ void RBB_func_80387F18(ActorMarker *marker, s32 arg1){
|
||||
}
|
||||
|
||||
void RBB_func_80387F44(void){
|
||||
func_80250E94(0.5f, 1.0f, 1.5f, 0.0f, 1.0f, 1.5f);
|
||||
rumbleManager_80250E94(0.5f, 1.0f, 1.5f, 0.0f, 1.0f, 1.5f);
|
||||
}
|
||||
|
||||
void func_80387F88(ActorMarker *marker){
|
||||
|
@@ -111,7 +111,7 @@ void func_803890BC(Actor *this){
|
||||
func_80388EB8(this, 1);
|
||||
}//L80389164
|
||||
|
||||
if(func_8025773C(&local->unk24, sp38))
|
||||
if(ml_timer_update(&local->unk24, sp38))
|
||||
func_80388EB8(this, (this->state == 1) ? 2 : 1);
|
||||
//L803891A8
|
||||
|
||||
@@ -119,7 +119,7 @@ void func_803890BC(Actor *this){
|
||||
local->unk1C += 0.25 * sp38;
|
||||
if(1.0f < local->unk1C)
|
||||
local->unk1C = 1.0f;
|
||||
func_80255FE4(sp2C, local->unk4, local->unk10, local->unk1C);
|
||||
ml_interpolate_vec3f(sp2C, local->unk4, local->unk10, local->unk1C);
|
||||
this->pitch = sp2C[0];
|
||||
this->yaw = sp2C[1];
|
||||
this->roll = sp2C[2];
|
||||
|
@@ -143,7 +143,7 @@ void func_8038944C(Actor *this){
|
||||
}
|
||||
}//L80389508
|
||||
|
||||
if(func_8025773C(&local->unk28, tick)){
|
||||
if(ml_timer_update(&local->unk28, tick)){
|
||||
if(this->state == 2)
|
||||
func_803892D8(this, 3);
|
||||
else if(this->state == 3)
|
||||
|
@@ -148,7 +148,7 @@ void func_8038A724(Actor *this){
|
||||
|
||||
if(this->state == 2){
|
||||
if(0.0f < local->unk1C){
|
||||
if(func_8025773C(&local->unk1C, sp1C)){
|
||||
if(ml_timer_update(&local->unk1C, sp1C)){
|
||||
func_8038A524(this, 3);
|
||||
}//L8038AA8C
|
||||
}else{
|
||||
@@ -163,7 +163,7 @@ void func_8038A724(Actor *this){
|
||||
|
||||
if(this->state == 3){
|
||||
if(0.0f < local->unk1C){
|
||||
if(func_8025773C(&local->unk1C, sp1C)){
|
||||
if(ml_timer_update(&local->unk1C, sp1C)){
|
||||
func_8038A524(this, 2);
|
||||
}//L8038AA8C
|
||||
}else{
|
||||
|
@@ -143,7 +143,7 @@ void func_8038AEB8(Actor *this){
|
||||
func_8038AC18(this, 1);
|
||||
}//L8038AF88
|
||||
|
||||
if(func_8025773C(&local->unk8, sp20))
|
||||
if(ml_timer_update(&local->unk8, sp20))
|
||||
func_8038AC18(this, 1);
|
||||
|
||||
if(this->state == 2){
|
||||
|
@@ -75,7 +75,7 @@ void RBB_func_8038B0B8(Actor *this, s32 arg1){
|
||||
func_80335924(this->unk148, local->unk0->unk12, 0.0f, 0.5f);
|
||||
func_80335A8C(this->unk148, 2);
|
||||
timed_playSfx(0.1f, local->unk0->unk14, 1.0f, 0x7d00);
|
||||
other = partEmitList_pushNew(0xa);
|
||||
other = partEmitMgr_newEmitter(0xa);
|
||||
particleEmitter_setSprite(other, ASSET_70E_SPRITE_SMOKE_2);
|
||||
particleEmitter_setParticleAccelerationRange(other,
|
||||
0.0f, 100.0f, 0.0f,
|
||||
|
@@ -99,11 +99,11 @@ void RBB_func_8038C370(ActorMarker *marker, s32 arg1){
|
||||
|
||||
void func_8038C39C(Actor *this){
|
||||
ActorLocal_RBB_5F80 *local = (ActorLocal_RBB_5F80 *) &this->local;
|
||||
ParticleEmitter *other = partEmitList_pushNew(local->unk0->unkE);
|
||||
ParticleEmitter *other = partEmitMgr_newEmitter(local->unk0->unkE);
|
||||
particleEmitter_setSprite(other, ASSET_70E_SPRITE_SMOKE_2);
|
||||
func_802EFA5C(other, 0.0f, 0.1f);
|
||||
particleEmitter_setFade(other, 0.0f, 0.1f);
|
||||
particleEmitter_setStartingFrameRange(other, 0, 7);
|
||||
func_802EFA70(other, 4);
|
||||
particleEmitter_setDrawMode(other, 4);
|
||||
particleEmitter_setPosition(other, this->position);
|
||||
func_802EFB70(other, local->unk0->unk4*1, local->unk0->unk4*3.0f);
|
||||
func_802EFB84(other, 3.0f*local->unk0->unk4, local->unk0->unk4*7.0f);
|
||||
@@ -115,16 +115,16 @@ void func_8038C39C(Actor *this){
|
||||
-50.0f, 100.0f, -50.0f,
|
||||
50.0f, 200.0f, 50.0f
|
||||
);
|
||||
func_802EFEC0(other, 0.5f, 1.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 0.5f, 1.0f);
|
||||
particleEmitter_emitN(other, local->unk0->unkE);
|
||||
}
|
||||
|
||||
void RBB_func_8038C538(Actor *this){
|
||||
ActorLocal_RBB_5F80 *local = (ActorLocal_RBB_5F80 *) &this->local;
|
||||
ParticleEmitter *other = partEmitList_pushNew(3*local->unk0->unkE);
|
||||
ParticleEmitter *other = partEmitMgr_newEmitter(3*local->unk0->unkE);
|
||||
particleEmitter_setSprite(other, ASSET_70E_SPRITE_SMOKE_2);
|
||||
func_802EFA5C(other, 0.1f, 0.3f);
|
||||
func_802EFA70(other, 4);
|
||||
particleEmitter_setFade(other, 0.1f, 0.3f);
|
||||
particleEmitter_setDrawMode(other, 4);
|
||||
particleEmitter_setStartingFrameRange(other, 0, 7);
|
||||
particleEmitter_setPosition(other, this->position);
|
||||
func_802EFB70(other, local->unk0->unk4*1, local->unk0->unk4*6.0f);
|
||||
@@ -137,19 +137,19 @@ void RBB_func_8038C538(Actor *this){
|
||||
-70.0f, 50.0f, -70.0f,
|
||||
70.0f, 100.0f, 70.0f
|
||||
);
|
||||
func_802EFFA8(other, &D_80390C60);
|
||||
func_802EFEC0(other, 3.0f, 4.0f);
|
||||
particleEmitter_setRGB(other, &D_80390C60);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 3.0f, 4.0f);
|
||||
particleEmitter_emitN(other, 3*local->unk0->unkE);
|
||||
|
||||
}
|
||||
|
||||
void RBB_func_8038C70C(Actor *this){
|
||||
ActorLocal_RBB_5F80 *local = (ActorLocal_RBB_5F80 *) &this->local;
|
||||
ParticleEmitter *other = partEmitList_pushNew(0xa);
|
||||
ParticleEmitter *other = partEmitMgr_newEmitter(0xa);
|
||||
|
||||
func_802EF9F8(other, 0.6f);
|
||||
func_802EFA18(other, 3);
|
||||
func_802EFA70(other, 4);
|
||||
particleEmitter_setDrawMode(other, 4);
|
||||
particleEmitter_setModel(other, 0x427);
|
||||
particleEmitter_setParticleSpawnPositionRange(other,
|
||||
local->unk0->unk4 * -300.0f, local->unk0->unk4 * 100.0f, local->unk0->unk4 * -300.0f,
|
||||
@@ -157,12 +157,12 @@ void RBB_func_8038C70C(Actor *this){
|
||||
);
|
||||
particleEmitter_setPosition(other, this->position);
|
||||
func_802EFB70(other, local->unk0->unk4*0.3, local->unk0->unk4*0.8);
|
||||
func_802EFE24(other,
|
||||
particleEmitter_setAngularVelocityRange(other,
|
||||
-600.0f, -600.0f, -600.0f,
|
||||
600.0f, 600.0f, 600.0f
|
||||
);
|
||||
particleEmitter_setSpawnIntervalRange(other, 0.0f, 0.01f);
|
||||
func_802EFEC0(other, 10.0f, 10.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 10.0f, 10.0f);
|
||||
particleEmitter_setVelocityAndAccelerationRanges(other, &D_80390C6C);
|
||||
particleEmitter_emitN(other, 10);
|
||||
|
||||
@@ -170,7 +170,7 @@ void RBB_func_8038C70C(Actor *this){
|
||||
|
||||
void func_8038C8A8(Actor * this){
|
||||
ActorLocal_RBB_5F80 *local = (ActorLocal_RBB_5F80 *) &this->local;
|
||||
ParticleEmitter *other = partEmitList_pushNew(5);
|
||||
ParticleEmitter *other = partEmitMgr_newEmitter(5);
|
||||
f32 sp24[3];
|
||||
|
||||
|
||||
@@ -178,15 +178,15 @@ void func_8038C8A8(Actor * this){
|
||||
sp24[1] += 50.0f;
|
||||
|
||||
particleEmitter_setSprite(other, ASSET_70E_SPRITE_SMOKE_2);
|
||||
func_802EFA5C(other, 0.0, 0.5f);
|
||||
func_802EFA70(other, 4);
|
||||
particleEmitter_setFade(other, 0.0, 0.5f);
|
||||
particleEmitter_setDrawMode(other, 4);
|
||||
particleEmitter_setStartingFrameRange(other, 0, 7);
|
||||
particleEmitter_setPosition(other, sp24);
|
||||
func_802EFB70(other, local->unk0->unk4*1, local->unk0->unk4*3.0f);
|
||||
func_802EFB84(other, local->unk0->unk4*3.0f, local->unk0->unk4*6.0f);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(other, &D_80390CA8);
|
||||
func_802EFEC0(other, 1.0f, 2.0f);
|
||||
func_802EFFA8(other, &D_80390C9C);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 1.0f, 2.0f);
|
||||
particleEmitter_setRGB(other, &D_80390C9C);
|
||||
particleEmitter_emitN(other, 5);
|
||||
}
|
||||
|
||||
@@ -547,7 +547,7 @@ void func_8038D8BC(Actor *this){
|
||||
}
|
||||
}
|
||||
else{//L8038DAA8
|
||||
if(ml_vec3f_distance(this->position, player_position) < 1200.0f){
|
||||
if(ml_distance_vec3f(this->position, player_position) < 1200.0f){
|
||||
RBB_func_8038CC9C(this, 2);
|
||||
}
|
||||
}
|
||||
@@ -583,7 +583,7 @@ void func_8038D8BC(Actor *this){
|
||||
func_8033568C(this->unk148, &sp54, &sp50);
|
||||
if(0.1 <= sp50 && sp50 <= 0.6){
|
||||
sp4C = (sp50 - 0.1)/0.5;
|
||||
func_80255FE4(this->position, local->unk8, local->unk14, sp4C);
|
||||
ml_interpolate_vec3f(this->position, local->unk8, local->unk14, sp4C);
|
||||
this->yaw = local->unk24 + sp4C*(local->unk28 - local->unk24);
|
||||
}
|
||||
|
||||
@@ -601,7 +601,7 @@ void func_8038D8BC(Actor *this){
|
||||
tmp_f2 = tmp_f2/0.3;
|
||||
else
|
||||
tmp_f2 = 1.0f;
|
||||
func_80255FE4(this->position, local->unk8, local->unk14, tmp_f2);
|
||||
ml_interpolate_vec3f(this->position, local->unk8, local->unk14, tmp_f2);
|
||||
}
|
||||
}//L8038DE10
|
||||
|
||||
|
@@ -72,12 +72,12 @@ void func_8038DF6C(Actor* this){
|
||||
}
|
||||
}
|
||||
}
|
||||
if(func_8025773C(&local->unk24[1], sp68)){
|
||||
if(ml_timer_update(&local->unk24[1], sp68)){
|
||||
local->unk24[1] = randf2(1.5f, 2.5f);
|
||||
FUNC_8030E8B4(SFX_40E_UNKNOWN, 1.5f, 20000, this->position, 500, 1500);
|
||||
}//L8038E118
|
||||
|
||||
if(func_8025773C(&local->unk24[2], sp68)){
|
||||
if(ml_timer_update(&local->unk24[2], sp68)){
|
||||
local->unk24[2] = randf2(3.5f, 5.5f);
|
||||
func_8030E878(SFX_69_WHIPCRACK_CREAKING, randf2(1.1f, 1.2f), 0x55f0, this->position, 500.0f, 1500.0f);
|
||||
}//L8038E184
|
||||
|
@@ -55,7 +55,7 @@ void func_8038E3D8(Actor *this){
|
||||
func_8038E3C0(this, 1);
|
||||
}//L8038E4C8
|
||||
|
||||
if(func_8025773C(&local->unk2C, sp5C)){
|
||||
if(ml_timer_update(&local->unk2C, sp5C)){
|
||||
local->unk2C = randf2(3.5f, 5.5f);
|
||||
func_8030E878(SFX_69_WHIPCRACK_CREAKING, randf2(1.1f, 1.2f), 22000, &this->position, 500.0f, 1500.0f);
|
||||
}//L8038E544
|
||||
|
@@ -1,8 +1,10 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/particle.h"
|
||||
|
||||
extern void func_80255FE4(f32 [3], f32 [3], f32 [3], f32);
|
||||
|
||||
extern void ml_interpolate_vec3f(f32 [3], f32 [3], f32 [3], f32);
|
||||
extern void func_802C8F70(f32);
|
||||
extern int func_80309EB0(f32(*)[3], f32, f32 (*)[3], s32);
|
||||
extern int func_803342AC(f32(*)[3], f32(*)[3],f32);
|
||||
@@ -64,71 +66,71 @@ void func_8038E92C(Actor *this){
|
||||
|
||||
if(this->state == 2 && local->unk34 == 0)
|
||||
return;
|
||||
if(func_8025773C( &local->unk30, time_getDelta()))
|
||||
if(ml_timer_update( &local->unk30, time_getDelta()))
|
||||
func_8038F190(this, 3);
|
||||
}
|
||||
|
||||
void func_8038E998(Actor *this){
|
||||
ParticleEmitter *other = partEmitList_pushNew(2);
|
||||
ParticleEmitter *other = partEmitMgr_newEmitter(2);
|
||||
f32 temp_f0;
|
||||
|
||||
particleEmitter_setSprite(other, ASSET_70E_SPRITE_SMOKE_2);
|
||||
func_802EFA5C(other, 0.0f, 0.1f);
|
||||
particleEmitter_setFade(other, 0.0f, 0.1f);
|
||||
particleEmitter_setStartingFrameRange(other, 0, 7);
|
||||
particleEmitter_setPosition(other, this->position);
|
||||
func_802EFB70(other, 0.25f, 0.75f);
|
||||
func_802EFB84(other, 0.75f, 1.75f);
|
||||
particleEmitter_setParticleSpawnPositionRange(other, -50.0f, 25.0f, -50.0f, 50.0f, 25.0f, 50.0f);
|
||||
particleEmitter_setParticleVelocityRange(other, -50.0f, 100.0f, -50.0f, 50.0f, 200.0f, 50.0f);
|
||||
func_802EFEC0(other, 0.5f, 1.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 0.5f, 1.0f);
|
||||
particleEmitter_emitN(other, 2);
|
||||
}
|
||||
|
||||
void func_8038EAB4(Actor *this){
|
||||
ParticleEmitter *other;
|
||||
func_802BB3DC(0, 60.0f, 0.9f);
|
||||
other = partEmitList_pushNew(1);
|
||||
other = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setSprite(other, ASSET_4A0_SPRITE_EXPLOSION);
|
||||
func_802EFA5C(other, 0.1f, 0.2f);
|
||||
func_802EFA70(other, 8);
|
||||
particleEmitter_setFade(other, 0.1f, 0.2f);
|
||||
particleEmitter_setDrawMode(other, PART_EMIT_NO_LOOP);
|
||||
particleEmitter_setStartingFrameRange(other, 0, 0);
|
||||
particleEmitter_setParticleFramerateRange(other, 4.0f, 4.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(other, 0.0f, 200.0f, 0.0f, 0.0f, 200.0f, 0.0f);
|
||||
particleEmitter_setPosition(other, this->position);
|
||||
func_802EFB70(other, 3.0f, 3.0f);
|
||||
func_802EFB84(other, 8.0f, 8.0f);
|
||||
func_802EFEC0(other, 0.5f, 0.5f);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 0.5f, 0.5f);
|
||||
particleEmitter_setParticleVelocityRange(other, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);
|
||||
particleEmitter_emitN(other, 1);
|
||||
}
|
||||
|
||||
void func_8038EC14(Actor *this){
|
||||
ParticleEmitter *other;
|
||||
other = partEmitList_pushNew(6);
|
||||
other = partEmitMgr_newEmitter(6);
|
||||
particleEmitter_setSprite(other, ASSET_70E_SPRITE_SMOKE_2);
|
||||
func_802EFA5C(other, 0.05f, 0.1f);
|
||||
particleEmitter_setFade(other, 0.05f, 0.1f);
|
||||
particleEmitter_setStartingFrameRange(other, 0, 7);
|
||||
particleEmitter_setPosition(other, this->position);
|
||||
func_802EFB70(other, 1.0f, 1.5f);
|
||||
func_802EFB84(other, 2.0f, 3.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(other, -75.0f, 25.0f, -75.0f, 75.0f, 75.0f, 75.0f);
|
||||
particleEmitter_setParticleVelocityRange(other, -70.0f, 50.0f, -70.0f, 70.0f, 100.0f, 70.0f);
|
||||
func_802EFFA8(other, &RBB_D_80390DD0);
|
||||
func_802EFEC0(other, 3.0f, 4.0f);
|
||||
particleEmitter_setRGB(other, &RBB_D_80390DD0);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 3.0f, 4.0f);
|
||||
particleEmitter_emitN(other, 6);
|
||||
}
|
||||
|
||||
void func_8038ED3C(Actor * actor, s32 arg1){
|
||||
ParticleEmitter *other = partEmitList_pushNew(0xa);
|
||||
ParticleEmitter *other = partEmitMgr_newEmitter(0xa);
|
||||
particleEmitter_setParticleAccelerationRange(other, 0.0f, -800.0f, 0.0f, 0.0f, -800.0f, 0.0f);
|
||||
func_802EF9F8(other, 0.6f);
|
||||
func_802EFA18(other, 3);
|
||||
particleEmitter_setModel(other, arg1);
|
||||
particleEmitter_setPosition(other, actor->position);
|
||||
func_802EFB70(other, 0.05f, 0.4f);
|
||||
func_802EFE24(other, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setAngularVelocityRange(other, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setSpawnIntervalRange(other, 0.0f, 0.01f);
|
||||
func_802EFEC0(other, 10.0f, 10.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 10.0f, 10.0f);
|
||||
particleEmitter_setParticleVelocityRange(other, -700.0f, 200.0f, -700.0f, 700.0f, 500.0f, 700.0f);
|
||||
particleEmitter_emitN(other, 0xa);
|
||||
}
|
||||
@@ -274,7 +276,7 @@ void func_8038F430(ActorMarker *marker, s32 arg1){
|
||||
|
||||
if(actor->state < 3){
|
||||
player_getPosition(&sp18);
|
||||
if(ml_vec3f_distance(&actor->position, &sp18) < 300.0f)
|
||||
if(ml_distance_vec3f(&actor->position, &sp18) < 300.0f)
|
||||
func_8028F55C(5, actor->marker);
|
||||
func_8038F190(actor, 3);
|
||||
}//L8038F4A4
|
||||
@@ -351,7 +353,7 @@ void func_8038F618(Actor *this){
|
||||
}
|
||||
func_8038E92C(this);
|
||||
if(this->state == 1){
|
||||
if(sp78 && ml_vec3f_distance(&this->position, &sp7C) < 500.0f){
|
||||
if(sp78 && ml_distance_vec3f(&this->position, &sp7C) < 500.0f){
|
||||
func_8038F190(this, 2);
|
||||
}
|
||||
}//L8038F7A0
|
||||
@@ -370,7 +372,7 @@ void func_8038F618(Actor *this){
|
||||
func_8033568C(this->unk148, &sp6C, &sp68);
|
||||
|
||||
if(0.1 <= sp68 && sp68 <= 0.6)
|
||||
func_80255FE4(this->position, &local->unk14, &local->unk20, (sp68 - 0.1) /0.5 );
|
||||
ml_interpolate_vec3f(this->position, &local->unk14, &local->unk20, (sp68 - 0.1) /0.5 );
|
||||
if(sp6C < 0.6 && 0.6 <= sp68)
|
||||
func_8030E878(SFX_6C_LOCKUP_CLOSING, 1.1 + randf2(-0.05f, 0.05f), 20000, this->position, 500.0f, 1000.0f);
|
||||
|
||||
@@ -385,7 +387,7 @@ void func_8038F618(Actor *this){
|
||||
|
||||
this->yaw += (sp44*400.0f)*sp70;
|
||||
if(func_80335794(this->unk148) > 0){
|
||||
if(ml_vec3f_distance(&this->position, &local->unk8) < 10.0f){
|
||||
if(ml_distance_vec3f(&this->position, &local->unk8) < 10.0f){
|
||||
func_8038F190(this, 1);
|
||||
}else{
|
||||
func_8038F190(this, 2);
|
||||
|
@@ -56,7 +56,7 @@ void func_8038FF70(void){
|
||||
func_8038FDE0(1);
|
||||
|
||||
if(D_803912C8 == 1)
|
||||
if(func_8025773C(&D_803912CC,time_getDelta()))
|
||||
if(ml_timer_update(&D_803912CC,time_getDelta()))
|
||||
func_8038FDE0(2);
|
||||
|
||||
if(D_803912C8 == 2)
|
||||
|
@@ -101,7 +101,7 @@ void func_80387488(ActorMarker *marker){
|
||||
player_getPosition(&sp1C);
|
||||
if(-50.0f < sp1C[1] && sp1C[1] < 600.0f){
|
||||
sp1C[1] = 0;
|
||||
if(ml_vec3f_distance(&sp1C, &D_80390264) < 500.0f){
|
||||
if(ml_distance_vec3f(&sp1C, &D_80390264) < 500.0f){
|
||||
timedFunc_set_1(1.0f, (GenMethod_1) func_80387488, (s32)actor->marker);
|
||||
return;
|
||||
}
|
||||
|
@@ -138,7 +138,7 @@ struct43s D_8038AF0C ={
|
||||
/* .code */
|
||||
void func_80387910(ParticleEmitter *arg0, f32 *arg1, s32 arg2){
|
||||
s32 sp24[3] = D_8038ADA0;
|
||||
func_802EFFA8(arg0, sp24);
|
||||
particleEmitter_setRGB(arg0, sp24);
|
||||
particleEmitter_setSprite(arg0, ASSET_700_SPRITE_DUST);
|
||||
particleEmitter_setStartingFrameRange(arg0, 0, 7);
|
||||
particleEmitter_setPosition(arg0, arg1);
|
||||
@@ -152,8 +152,8 @@ void func_803879B8(ParticleEmitter *arg0, f32 *arg1, s32 arg2, enum asset_e mode
|
||||
func_802EFA18(arg0, 2);
|
||||
particleEmitter_setModel(arg0, model_id);
|
||||
particleEmitter_setPosition(arg0, arg1);
|
||||
func_802EFA70(arg0, 2);
|
||||
func_802EFE24(arg0, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f);
|
||||
particleEmitter_setDrawMode(arg0, 2);
|
||||
particleEmitter_setAngularVelocityRange(arg0, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f);
|
||||
func_802EFB98(arg0, &D_8038AE04);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(arg0, &D_8038AE2C);
|
||||
particleEmitter_emitN(arg0, arg2);
|
||||
@@ -164,8 +164,8 @@ void func_80387A80(ParticleEmitter *arg0, f32 *arg1, s32 arg2, enum asset_e mode
|
||||
func_802EFA18(arg0, 3);
|
||||
particleEmitter_setModel(arg0, model_id);
|
||||
particleEmitter_setPosition(arg0, arg1);
|
||||
func_802EFA70(arg0, 2);
|
||||
func_802EFE24(arg0, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f);
|
||||
particleEmitter_setDrawMode(arg0, 2);
|
||||
particleEmitter_setAngularVelocityRange(arg0, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f);
|
||||
func_802EFB98(arg0, &D_8038AE74);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(arg0, &D_8038AE9C);
|
||||
particleEmitter_emitN(arg0, arg2);
|
||||
@@ -176,9 +176,9 @@ void func_80387B48(ParticleEmitter *arg0, f32 arg1[3], s32 arg2, enum asset_e mo
|
||||
func_802EFA18(arg0, 4);
|
||||
particleEmitter_setModel(arg0, model_id);
|
||||
particleEmitter_setPosition(arg0, arg1);
|
||||
func_802EFA70(arg0, 2);
|
||||
func_802EFE24(arg0, 150.0f, -300.0f, -300.0f, 300.0f, 300.0f, -150.0f);
|
||||
func_802EF9EC(arg0, 0x1f, 0x1f40);
|
||||
particleEmitter_setDrawMode(arg0, 2);
|
||||
particleEmitter_setAngularVelocityRange(arg0, 150.0f, -300.0f, -300.0f, 300.0f, 300.0f, -150.0f);
|
||||
particleEmitter_setSfx(arg0, SFX_1F_HITTING_AN_ENEMY_3, 8000);
|
||||
func_802EFB98(arg0, &D_8038AEE4);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(arg0, &D_8038AF0C);
|
||||
particleEmitter_emitN(arg0, arg2);
|
||||
@@ -194,11 +194,11 @@ void func_80387C28(Actor * this){
|
||||
sp30[1] = this->position_y;
|
||||
sp30[2] = this->position_z;
|
||||
sp30[1] += 50.0f;
|
||||
func_80387B48(partEmitList_pushNew(0xC), sp30, 0xC, 0x4F4);
|
||||
func_803879B8(partEmitList_pushNew(4), sp30, 0x4, 0x4F2);
|
||||
func_803879B8(partEmitList_pushNew(4), sp30, 0x4, 0x4F3);
|
||||
func_80387B48(partEmitMgr_newEmitter(0xC), sp30, 0xC, 0x4F4);
|
||||
func_803879B8(partEmitMgr_newEmitter(4), sp30, 0x4, 0x4F2);
|
||||
func_803879B8(partEmitMgr_newEmitter(4), sp30, 0x4, 0x4F3);
|
||||
sp30[1] += 50.0f;
|
||||
func_80387910(partEmitList_pushNew(8), sp30, 8);
|
||||
func_80387910(partEmitMgr_newEmitter(8), sp30, 8);
|
||||
}//L80387D18
|
||||
if(this->unk38_31){
|
||||
this->position_y += 100.0f;
|
||||
@@ -423,7 +423,7 @@ void func_80388080(Actor *this){
|
||||
if(gu_sqrtf(this->velocity_z*this->velocity_z + (this->velocity_x*this->velocity_x + this->velocity_y*this->velocity_y)) > 50.0f){
|
||||
ml_vec3f_set_length(this->velocity, 50.0f);
|
||||
}
|
||||
if(ml_vec3f_distance(this->position, this->unk1C) < 20.0f){
|
||||
if(ml_distance_vec3f(this->position, this->unk1C) < 20.0f){
|
||||
func_80387E64(this);
|
||||
}
|
||||
this->unk28 = 5.0f;
|
||||
@@ -484,7 +484,7 @@ void func_80388080(Actor *this){
|
||||
if(local->unkC == 1)
|
||||
sp54[1] += 150.0f;
|
||||
this->unk138_24 = 0;
|
||||
func_80387A80(partEmitList_pushNew(3), sp54, 3, (local->unkC == 1)? 0x4f0: 0x4f1);
|
||||
func_80387A80(partEmitMgr_newEmitter(3), sp54, 3, (local->unkC == 1)? 0x4f0: 0x4f1);
|
||||
}//L80388CC4
|
||||
|
||||
if(actor_animationIsAt(this, 0.75f))
|
||||
|
@@ -427,7 +427,7 @@ void func_803899B0(Actor * this){
|
||||
|| (this->unkF4_8 == 8 && mapSpecificFlags_get(3) && !mapSpecificFlags_get(0xF))
|
||||
){//L80389C50
|
||||
|
||||
if( ((ml_vec3f_distance(sp44, this->unk1C) < this->unk28) && func_8028F20C())
|
||||
if( ((ml_distance_vec3f(sp44, this->unk1C) < this->unk28) && func_8028F20C())
|
||||
|| mapSpecificFlags_get(0x10)
|
||||
){//L80389C8C
|
||||
if(func_80329530(this, 0x96))
|
||||
|
@@ -40,7 +40,7 @@ void func_8038A8F8(Actor *this){
|
||||
this->unk16C_4 = 1;
|
||||
}//L8038A968
|
||||
player_getPosition(this->velocity);
|
||||
sp2C = ml_vec3f_distance(this->velocity, this->position);
|
||||
sp2C = ml_distance_vec3f(this->velocity, this->position);
|
||||
if(sp2C < (f32) this->unkF4_8)
|
||||
func_80388D48();
|
||||
|
||||
@@ -48,7 +48,7 @@ void func_8038A8F8(Actor *this){
|
||||
if( !mapSpecificFlags_get(2)
|
||||
|| (mapSpecificFlags_get(3) && !mapSpecificFlags_get(0xf))
|
||||
){ //L8038AA54
|
||||
this->yaw_ideal = ml_vec3f_distance(this->velocity, this->unk1C) / 150.0;
|
||||
this->yaw_ideal = ml_distance_vec3f(this->velocity, this->unk1C) / 150.0;
|
||||
func_8028F3D8(this->unk1C, this->yaw_ideal, func_8038A8C0, this->marker);
|
||||
mapSpecificFlags_set(0x10, 1);
|
||||
}
|
||||
|
@@ -72,29 +72,29 @@ void SM_func_80386A00(Actor *this) {
|
||||
void func_80386B04(ParticleEmitter *p_ctrl, f32 *arg1, s32 arg2, f32 arg3) {
|
||||
func_802EF9F8(p_ctrl, 0.6f);
|
||||
func_802EFA18(p_ctrl, 4);
|
||||
func_802EFA5C(p_ctrl, 0.00f, 0.75f);
|
||||
particleEmitter_setFade(p_ctrl, 0.00f, 0.75f);
|
||||
particleEmitter_setModel(p_ctrl, 0x42E);
|
||||
particleEmitter_setPosition(p_ctrl, arg1);
|
||||
func_802EFA70(p_ctrl, 2);
|
||||
particleEmitter_setDrawMode(p_ctrl, 2);
|
||||
func_802EFB70(p_ctrl, arg3, arg3);
|
||||
func_802EFB84(p_ctrl, arg3, arg3);
|
||||
func_802EFE24(p_ctrl, -100.0f, -100.0f, -100.0f, 100.0f, 100.0f, 100.0f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, -100.0f, -100.0f, -100.0f, 100.0f, 100.0f, 100.0f);
|
||||
particleEmitter_setSpawnIntervalRange(p_ctrl, 0.00f, 0.01f);
|
||||
func_802EFEC0(p_ctrl, 2.0f, 2.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_ctrl, 2.0f, 2.0f);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(p_ctrl, &D_8038AB48);
|
||||
particleEmitter_emitN(p_ctrl, arg2);
|
||||
}
|
||||
|
||||
void func_80386C2C(ParticleEmitter *p_ctrl, f32 *arg1, s32 arg2, f32 arg3) {
|
||||
func_802EFFA8(p_ctrl, D_8038AB90);
|
||||
particleEmitter_setRGB(p_ctrl, D_8038AB90);
|
||||
particleEmitter_setSprite(p_ctrl, ASSET_700_SPRITE_DUST);
|
||||
func_802EFA5C(p_ctrl, 0.00f, 0.01f);
|
||||
particleEmitter_setFade(p_ctrl, 0.00f, 0.01f);
|
||||
particleEmitter_setStartingFrameRange(p_ctrl, 0, 7);
|
||||
particleEmitter_setPosition(p_ctrl, arg1);
|
||||
func_802EFB70(p_ctrl, (arg3 * 0.1), (arg3 * 0.5));
|
||||
func_802EFB84(p_ctrl, (arg3 * 1.5), (arg3 * 3.0));
|
||||
particleEmitter_setSpawnIntervalRange(p_ctrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(p_ctrl, 1.5f, 2.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_ctrl, 1.5f, 2.0f);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(p_ctrl, &D_8038AB9C);
|
||||
particleEmitter_emitN(p_ctrl, arg2);
|
||||
}
|
||||
@@ -108,8 +108,8 @@ void SM_func_80386D68(Actor *this){
|
||||
sfxsource_setSampleRate(this->unk44_31, 32000);
|
||||
func_8030DBB4(this->unk44_31, (0.01 < (2.0 - this->scale))? (2.0 - this->scale): 0.01);
|
||||
func_8030E2C4(this->unk44_31);
|
||||
func_80386B04(partEmitList_pushNew(0xA), this->position, 0xA, this->scale);
|
||||
func_80386C2C(partEmitList_pushNew(0x10), this->position, 0x10, this->scale);
|
||||
func_80386B04(partEmitMgr_newEmitter(0xA), this->position, 0xA, this->scale);
|
||||
func_80386C2C(partEmitMgr_newEmitter(0x10), this->position, 0x10, this->scale);
|
||||
|
||||
if(this->unk100 && func_803870E8(this->unk100)){
|
||||
func_802CA1CC(HONEYCOMB_18_SM_QUARRIES);
|
||||
|
@@ -141,11 +141,11 @@ void __chClam_particalEmitterInit(ParticleEmitter *pCtrl, f32 position[3]){
|
||||
func_802EF9F8(pCtrl, 0.7f);
|
||||
func_802EFA18(pCtrl, 3);
|
||||
func_802EFA20(pCtrl, 0.8f, 1.0f);
|
||||
func_802EF9EC(pCtrl, 0x1f, 10000);
|
||||
particleEmitter_setSfx(pCtrl, SFX_1F_HITTING_AN_ENEMY_3, 10000);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 3.5f, 3.5f);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.65f);
|
||||
func_802EFA70(pCtrl, 2);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 3.5f, 3.5f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.65f);
|
||||
particleEmitter_setDrawMode(pCtrl, 2);
|
||||
}
|
||||
|
||||
void __chClam_emitLargeShellParticles(f32 position[3], s32 count){
|
||||
@@ -155,11 +155,11 @@ void __chClam_emitLargeShellParticles(f32 position[3], s32 count){
|
||||
};
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
__chClam_particalEmitterInit(pCtrl, position);
|
||||
particleEmitter_setModel(pCtrl, ASSET_37C_MODEL_CLAM_LARGE_SHELL_PIECE);
|
||||
particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C3F4);
|
||||
func_802EFE24(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
func_802EFB70(pCtrl, 1.0f, 1.0f);
|
||||
particleEmitter_emitN(pCtrl, count);
|
||||
}
|
||||
@@ -171,11 +171,11 @@ void __chClam_emitEyeParticles(f32 position[3], s32 count){
|
||||
};
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
__chClam_particalEmitterInit(pCtrl, position);
|
||||
particleEmitter_setModel(pCtrl, ASSET_37D_MODEL_CLAM_EYE);
|
||||
particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C424);
|
||||
func_802EFE24(pCtrl, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f);
|
||||
func_802EFB70(pCtrl, 1.0f, 1.0f);
|
||||
particleEmitter_emitN(pCtrl, count);
|
||||
}
|
||||
@@ -187,11 +187,11 @@ void __chClam_emitSmallShellParticles(f32 position[3], s32 count){
|
||||
};
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
__chClam_particalEmitterInit(pCtrl, position);
|
||||
particleEmitter_setModel(pCtrl, ASSET_37E_MODEL_CLAM_SMALL_SHELL_PIECE);
|
||||
particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C454);
|
||||
func_802EFE24(pCtrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f);
|
||||
func_802EFB70(pCtrl, 0.5f, 0.8f);
|
||||
particleEmitter_emitN(pCtrl, count);
|
||||
}
|
||||
@@ -212,7 +212,7 @@ void __chClam_emitEatenCollectableParticles(f32 position[3], enum asset_e sprite
|
||||
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
|
@@ -39,10 +39,10 @@ void func_80387DC0(f32 *position, s32 count) {
|
||||
};
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(count);
|
||||
pCtrl = partEmitMgr_newEmitter(count);
|
||||
pCtrl = pCtrl;
|
||||
particleEmitter_setSprite(pCtrl, ASSET_700_SPRITE_DUST);
|
||||
func_802EFFA8(pCtrl, D_8038C5A4);
|
||||
particleEmitter_setRGB(pCtrl, D_8038C5A4);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 0, 7);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
|
@@ -158,8 +158,8 @@ void func_80389CC4(s16 arg0[3], s32 arg1){
|
||||
D_8038D708[2] = (f32)arg0[2];
|
||||
D_8038D708[1] = func_80309724(D_8038D708);
|
||||
__spawnQueue_add_4((GenMethod_4)func_802C4140, 0xF4, reinterpret_cast(s32, D_8038D708[0]), reinterpret_cast(s32, D_8038D708[1]), reinterpret_cast(s32, D_8038D708[2]));
|
||||
D_8038D700 = partEmitList_pushNew(3);
|
||||
func_802EFFA8(D_8038D700, D_8038C91C);
|
||||
D_8038D700 = partEmitMgr_newEmitter(3);
|
||||
particleEmitter_setRGB(D_8038D700, D_8038C91C);
|
||||
particleEmitter_setSprite(D_8038D700, ASSET_700_SPRITE_DUST);
|
||||
particleEmitter_setStartingFrameRange(D_8038D700, 0, 7);
|
||||
particleEmitter_setPosition(D_8038D700, D_8038D708);
|
||||
@@ -175,7 +175,7 @@ void func_80389CC4(s16 arg0[3], s32 arg1){
|
||||
}//L80389E70
|
||||
}
|
||||
|
||||
void func_80389E84(void){
|
||||
void ttc_resetTresureHunt(void){
|
||||
D_8037DCB4 = 0;
|
||||
}
|
||||
|
||||
|
@@ -5,7 +5,7 @@
|
||||
#include "gc/gctransition.h"
|
||||
|
||||
|
||||
void func_8023E00C(s32);
|
||||
void func_8023E00C(enum map_e);
|
||||
void func_8023DFF0(s32);
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ u32 D_8027A130;
|
||||
u8 pad_8027A138[0x400];
|
||||
u64 D_8027A538;
|
||||
u8 pad_8027A540[0x17F8];
|
||||
OSThread D_8027BD38;
|
||||
OSThread s_MainThread;
|
||||
s32 D_8027BEE8;
|
||||
s32 D_8027BEEC;
|
||||
u64 D_8027BEF0;
|
||||
@@ -98,12 +98,12 @@ void func_8023DBDC(void){
|
||||
func_8023DFF0(3);
|
||||
}
|
||||
|
||||
void func_8023DC0C(void){
|
||||
void core1_init(void){
|
||||
func_80255C30();
|
||||
func_8023E00C(func_8023DBA4());
|
||||
rarezip_init(); //initialize decompressor's huft table
|
||||
func_8024BE30();
|
||||
func_80251308();
|
||||
overlayManagerloadCore2();
|
||||
D_8027BEF0 = D_8027A538;
|
||||
heap_init();
|
||||
func_80254028();
|
||||
@@ -111,10 +111,10 @@ void func_8023DC0C(void){
|
||||
func_8033EF58();
|
||||
assetCache_init();
|
||||
pfsManager_init();
|
||||
func_80250C84();
|
||||
rumbleManager_init();
|
||||
audioManager_init();
|
||||
func_8025425C();
|
||||
func_80257424();
|
||||
ml_init();
|
||||
gctransition_reset();
|
||||
D_8027A130 = 0;
|
||||
D_80275618 = 0;
|
||||
@@ -132,9 +132,9 @@ void func_8023DCF4(void){
|
||||
|
||||
|
||||
#ifndef NOMATCHING
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_0/func_8023DD0C.s")
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/core1/code_0/mainLoop.s")
|
||||
#else
|
||||
void func_8023DD0C(void){
|
||||
void mainLoop(void){
|
||||
s32 x;
|
||||
s32 y;
|
||||
s32 r;
|
||||
@@ -152,7 +152,7 @@ void func_8023DD0C(void){
|
||||
if(!D_8027BEEC)
|
||||
func_8024E7C8();
|
||||
D_8027BEEC = 0;
|
||||
func_80250C08();
|
||||
rumbleManager_80250C08();
|
||||
|
||||
if(!mapSpecificFlags_validateCRC1()){
|
||||
write_file_blocks(0, 0, 0x80397AD0, 0x40);
|
||||
@@ -200,11 +200,11 @@ void func_8023DD0C(void){
|
||||
}
|
||||
#endif
|
||||
|
||||
void func_8023DF9C(void *arg0){
|
||||
func_8023DC0C();
|
||||
void __mainMethod(void *arg0){
|
||||
core1_init();
|
||||
sns_write_payload_over_heap();
|
||||
while(1){ //main loop
|
||||
func_8023DD0C();
|
||||
mainLoop();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -216,18 +216,18 @@ s32 func_8023E000(void){
|
||||
return D_8027A130;
|
||||
}
|
||||
|
||||
void func_8023E00C(s32 arg0){
|
||||
D_8027BEE8 = arg0;
|
||||
void func_8023E00C(enum map_e map_id){
|
||||
D_8027BEE8 = map_id;
|
||||
}
|
||||
|
||||
void func_8023E018(void){
|
||||
void mainThread_create(void){
|
||||
// 5th argument should be a pointer to the end of an array, but the start is unknown
|
||||
// D_8027A538 is not the right symbol, but the end of the array is the important port and this is the closest symbol currently
|
||||
osCreateThread(&D_8027BD38, 6, func_8023DF9C, NULL, ((u8*)&D_8027A538) + 0x1800, 0x14);
|
||||
osCreateThread(&s_MainThread, 6, __mainMethod, NULL, ((u8*)&D_8027A538) + 0x1800, 0x14);
|
||||
}
|
||||
|
||||
OSThread *func_8023E060(void){
|
||||
return &D_8027BD38;
|
||||
OSThread *mainThread_get(void){
|
||||
return &s_MainThread;
|
||||
}
|
||||
|
||||
void func_8023E06C(void){
|
||||
|
@@ -119,28 +119,28 @@ f32 func_80255F14(f32 vec1[3], f32 vec2[3])
|
||||
}
|
||||
|
||||
//ml_vec3f_cross_product
|
||||
void func_80255F74(f32 dst[3], f32 src1[3], f32 src2[3])
|
||||
void ml_crossProduct_vec3f(f32 dst[3], f32 src1[3], f32 src2[3])
|
||||
{
|
||||
dst[0] = src1[1] * src2[2] - src1[2] * src2[1];
|
||||
dst[1] = src1[2] * src2[0] - src1[0] * src2[2];
|
||||
dst[2] = src1[0] * src2[1] - src1[1] * src2[0];
|
||||
}
|
||||
|
||||
void func_80255FE4(f32 dst[3], f32 vec1[3], f32 vec2[3], f32 scale)
|
||||
void ml_interpolate_vec3f(f32 dst[3], f32 vec1[3], f32 vec2[3], f32 scale)
|
||||
{
|
||||
dst[0] = vec1[0] + (vec2[0] - vec1[0]) * scale;
|
||||
dst[1] = vec1[1] + (vec2[1] - vec1[1]) * scale;
|
||||
dst[2] = vec1[2] + (vec2[2] - vec1[2]) * scale;
|
||||
}
|
||||
|
||||
f32 ml_vec3f_dot_product(f32 vec1[3], f32 vec2[3])
|
||||
f32 ml_dotProduct_vec3f(f32 vec1[3], f32 vec2[3])
|
||||
{
|
||||
return vec1[0] * vec2[0]
|
||||
+ vec1[1] * vec2[1]
|
||||
+ vec1[2] * vec2[2];
|
||||
}
|
||||
|
||||
f32 ml_vec3f_distance(f32 vec1[3], f32 vec2[3])
|
||||
f32 ml_distance_vec3f(f32 vec1[3], f32 vec2[3])
|
||||
{
|
||||
f32 diff[3];
|
||||
|
||||
@@ -167,7 +167,7 @@ f32 func_802560D0(f32 arg0[3], f32 arg1[3], f32 arg2[3]) {
|
||||
sp24[2] = arg1[2] - arg0[2];
|
||||
sp20 = gu_sqrtf(sp24[0]*sp24[0] + sp24[1]*sp24[1] + sp24[2]*sp24[2]);
|
||||
if (sp20 < 0.01) {
|
||||
return ml_vec3f_distance(arg0, arg2);
|
||||
return ml_distance_vec3f(arg0, arg2);
|
||||
}
|
||||
|
||||
sp3C[0] = arg2[0] - arg0[0];
|
||||
@@ -183,10 +183,10 @@ f32 func_802560D0(f32 arg0[3], f32 arg1[3], f32 arg2[3]) {
|
||||
sp4C[0] = arg0[0] + (sp24[0] * sp30);
|
||||
sp4C[1] = arg0[1] + (sp24[1] * sp30);
|
||||
sp4C[2] = arg0[2] + (sp24[2] * sp30);
|
||||
return ml_vec3f_distance(sp4C, arg2);
|
||||
return ml_distance_vec3f(sp4C, arg2);
|
||||
}
|
||||
|
||||
f32 ml_vec3f_distance_squared(f32 vec1[3], f32 vec2[3])
|
||||
f32 ml_distanceSquared_vec3f(f32 vec1[3], f32 vec2[3])
|
||||
{
|
||||
f32 diff[3];
|
||||
|
||||
@@ -564,7 +564,7 @@ void func_8025727C(f32 x1, f32 y1, f32 z1, f32 x2, f32 y2, f32 z2, f32 *o1, f32
|
||||
}
|
||||
|
||||
//ml_init
|
||||
void func_80257424(void)
|
||||
void ml_init(void)
|
||||
{
|
||||
u16 i;
|
||||
|
||||
@@ -583,7 +583,7 @@ void func_80257424(void)
|
||||
* Deallocates the ushort table used for asin
|
||||
*/
|
||||
//ml_free
|
||||
void func_80257594(void)
|
||||
void ml_free(void)
|
||||
{
|
||||
free(D_80276CB8);
|
||||
D_80276CB8 = NULL;
|
||||
@@ -629,7 +629,7 @@ void func_802576F8(void)
|
||||
|
||||
//ml_timer_update
|
||||
//decrement a counter and returns True if timer reaches 0
|
||||
bool func_8025773C(f32 *timer, f32 delta)
|
||||
bool ml_timer_update(f32 *timer, f32 delta)
|
||||
{
|
||||
if (*timer > 0)
|
||||
{
|
||||
@@ -658,9 +658,9 @@ void func_8025778C(f32 dst[3], f32 arg1[3], f32 arg2[3][3]){
|
||||
func_802596AC(sp34, arg2[1], arg2[2], arg1);
|
||||
func_802596AC(sp28, arg2[2], arg2[0], arg1);
|
||||
|
||||
sp54 = ml_vec3f_distance_squared(sp40, arg1);
|
||||
sp50 = ml_vec3f_distance_squared(sp34, arg1);
|
||||
sp4C = ml_vec3f_distance_squared(sp28, arg1);
|
||||
sp54 = ml_distanceSquared_vec3f(sp40, arg1);
|
||||
sp50 = ml_distanceSquared_vec3f(sp34, arg1);
|
||||
sp4C = ml_distanceSquared_vec3f(sp28, arg1);
|
||||
|
||||
if(sp54 < sp50){
|
||||
if(sp4C < sp54){
|
||||
@@ -688,7 +688,7 @@ void func_802578A4(f32 dst[3], f32 vec1[3], f32 vec2[3])
|
||||
|
||||
ml_vec3f_diff_copy(tmp1, &vec2[3], vec2);
|
||||
ml_vec3f_diff_copy(tmp2, &vec2[6], vec2);
|
||||
func_80255F74(tmp3, tmp1, tmp2);
|
||||
ml_crossProduct_vec3f(tmp3, tmp1, tmp2);
|
||||
ml_vec3f_normalize(tmp3);
|
||||
func_80257918(dst, vec1, vec2, tmp3);
|
||||
}
|
||||
@@ -712,19 +712,19 @@ bool func_802579B0(f32 vec[3], f32 x1, f32 z1, f32 x2, f32 z2)
|
||||
|
||||
f32 func_80257A44(f32 val1, f32 val2)
|
||||
{
|
||||
return func_802588B0(val1, val2) / val2;
|
||||
return ml_remainder_f(val1, val2) / val2;
|
||||
}
|
||||
|
||||
f32 func_80257A6C(f32 val1, f32 val2)
|
||||
{
|
||||
f32 tmp = func_802588B0(val1, val2) / val2;
|
||||
f32 tmp = ml_remainder_f(val1, val2) / val2;
|
||||
|
||||
return (sinf(tmp * (2*BAD_PI)) + 1.0) / 2.0;
|
||||
}
|
||||
|
||||
f32 func_80257AD4(f32 val1, f32 val2)
|
||||
{
|
||||
return sinf((func_802588B0(val1, val2) / val2) * (2*BAD_PI));
|
||||
return sinf((ml_remainder_f(val1, val2) / val2) * (2*BAD_PI));
|
||||
}
|
||||
|
||||
f32 ml_map_f(f32 a, f32 b, f32 c, f32 d, f32 e)
|
||||
@@ -768,8 +768,7 @@ f32 func_80257BFC(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4)
|
||||
return arg4;
|
||||
}
|
||||
|
||||
//ml_f_interpolate
|
||||
f32 func_80257C48(f32 arg0, f32 arg1, f32 arg2)
|
||||
f32 ml_interpolate_f(f32 arg0, f32 arg1, f32 arg2)
|
||||
{
|
||||
return arg0 * (arg2 - arg1) + arg1;
|
||||
}
|
||||
@@ -805,7 +804,7 @@ void func_80257DB0(f32 arg0[3], f32 arg1[3], f32 arg2[3])
|
||||
f32 tmp[3];
|
||||
|
||||
ml_vec3f_scale_copy(arg0, arg1, -1);
|
||||
dot_product = ml_vec3f_dot_product(arg0, arg2);
|
||||
dot_product = ml_dotProduct_vec3f(arg0, arg2);
|
||||
ml_vec3f_scale_copy(tmp, arg2, 2 * dot_product);
|
||||
ml_vec3f_diff_copy(arg0, tmp, arg0);
|
||||
}
|
||||
@@ -821,8 +820,7 @@ void func_80257E14(f32 v[3], f32 a)
|
||||
}
|
||||
}
|
||||
|
||||
// int clamp
|
||||
s32 func_80257EA8(s32 val, s32 min, s32 max)
|
||||
s32 ml_clamp_w(s32 val, s32 min, s32 max)
|
||||
{
|
||||
if (val < min)
|
||||
return min;
|
||||
@@ -833,16 +831,15 @@ s32 func_80257EA8(s32 val, s32 min, s32 max)
|
||||
return val;
|
||||
}
|
||||
|
||||
//ml_clamp_f
|
||||
f32 mlClamp_f(f32 arg0, f32 arg1, f32 arg2)
|
||||
f32 ml_clamp_f(f32 val, f32 min, f32 max)
|
||||
{
|
||||
if (arg0 < arg1)
|
||||
return arg1;
|
||||
if (val < min)
|
||||
return min;
|
||||
|
||||
if (arg0 > arg2)
|
||||
return arg2;
|
||||
if (val > max)
|
||||
return max;
|
||||
|
||||
return arg0;
|
||||
return val;
|
||||
}
|
||||
|
||||
//ml_vec3f_yaw_between
|
||||
@@ -948,14 +945,12 @@ int func_80258210(f32 x, f32 y, f32 *dst)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//ml_vec3f_is_zero
|
||||
int func_802582EC(f32 vec[3])
|
||||
int ml_isZero_vec3f(f32 vec[3])
|
||||
{
|
||||
return !(vec[0] != 0 || vec[1] != 0 || vec[2] != 0);
|
||||
}
|
||||
|
||||
//ml_vec3f_is_not_zero
|
||||
bool func_80258368(f32 vec[3])
|
||||
bool ml_isNonzero_vec3f(f32 vec[3])
|
||||
{
|
||||
return vec[0] != 0 || vec[1] != 0 || vec[2] != 0;
|
||||
}
|
||||
@@ -1062,19 +1057,19 @@ f32 mlNormalizeAngle(f32 angle)
|
||||
return angle;
|
||||
}
|
||||
|
||||
f32 func_802588B0(f32 arg0, f32 arg1)
|
||||
f32 ml_remainder_f(f32 arg0, f32 arg1)
|
||||
{
|
||||
f32 val = arg0 / arg1;
|
||||
|
||||
return (val - (s32)val) * arg1;
|
||||
}
|
||||
|
||||
f32 max_f(f32 arg0, f32 arg1)
|
||||
f32 ml_max_f(f32 arg0, f32 arg1)
|
||||
{
|
||||
return arg0 > arg1 ? arg0 : arg1;
|
||||
}
|
||||
|
||||
f32 min_f(f32 arg0, f32 arg1)
|
||||
f32 ml_min_f(f32 arg0, f32 arg1)
|
||||
{
|
||||
return arg0 < arg1 ? arg0 : arg1;
|
||||
}
|
||||
@@ -1471,9 +1466,9 @@ void func_802596AC(f32 a0[3], f32 a1[3], f32 a2[3], f32 a3[3])
|
||||
|
||||
func_80259554(a0, a1, a2, a3);
|
||||
|
||||
a = ml_vec3f_distance_squared(a1, a2);
|
||||
b = ml_vec3f_distance_squared(a1, a0);
|
||||
c = ml_vec3f_distance_squared(a2, a0);
|
||||
a = ml_distanceSquared_vec3f(a1, a2);
|
||||
b = ml_distanceSquared_vec3f(a1, a0);
|
||||
c = ml_distanceSquared_vec3f(a2, a0);
|
||||
|
||||
if (a < b || a < c)
|
||||
{
|
||||
|
@@ -126,7 +126,7 @@ void func_80259BD0(void) {
|
||||
for(var_s0 = D_80276E30; var_s0 < &D_80276E30[6]; var_s0++){
|
||||
if (var_s0->unk10 >= 0) {
|
||||
temp_lo = var_s0 - D_80276E30;
|
||||
var_s0->unk4 = min_f(var_s0->unk4 + sp3C, 600.0f);
|
||||
var_s0->unk4 = ml_min_f(var_s0->unk4 + sp3C, 600.0f);
|
||||
if ((var_s0->unk4 > 1.0f) && func_80250074(temp_lo)) {
|
||||
func_8025A7DC(var_s0->unk10);
|
||||
}
|
||||
|
@@ -35,7 +35,7 @@ void func_802405F0(u32 arg0, u32 arg1, s32 size){
|
||||
}
|
||||
#endif
|
||||
|
||||
void func_80240754(void){
|
||||
void piMgr_create(void){
|
||||
osCreateMesgQueue(&D_8027E0AC, &D_8027E0A8, 1);
|
||||
osCreateMesgQueue(&D_8027E108, &D_8027E0C8[0], 16);
|
||||
osCreatePiManager(OS_PRIORITY_PIMGR, &D_8027E108, &D_8027E0C8[0], 16);
|
||||
|
@@ -14,14 +14,14 @@ void func_80240BE0(void){
|
||||
osStartThread(&D_8027ED10);
|
||||
}
|
||||
|
||||
void func_80240754(void);
|
||||
void func_8023E018(void);
|
||||
OSThread *func_8023E060(void);
|
||||
void piMgr_create(void);
|
||||
void mainThread_create(void);
|
||||
OSThread *mainThread_get(void);
|
||||
|
||||
void func_80240C30(void *arg)
|
||||
{
|
||||
func_80240754();
|
||||
func_8023E018();
|
||||
osStartThread(func_8023E060());
|
||||
piMgr_create();
|
||||
mainThread_create();
|
||||
osStartThread(mainThread_get());
|
||||
while (1);
|
||||
}
|
||||
|
@@ -5,7 +5,7 @@
|
||||
int func_802458E0(f32 arg0[3], Actor *arg1, s32 arg2);
|
||||
extern bool func_80320DB0(f32[3], f32, f32[3], u32);
|
||||
extern bool func_80323240(struct56s *, f32, f32[3]);
|
||||
extern f32 ml_vec3f_dot_product(f32[3], f32[3]);
|
||||
extern f32 ml_dotProduct_vec3f(f32[3], f32[3]);
|
||||
extern BKCollisionTri *func_80320B98(f32[3], f32[3], f32[3], u32);
|
||||
extern BKCollisionTri *func_80320C94(f32 arg0[3], f32 arg1[3], f32 arg2, f32 arg3[3], s32 arg4, u32 arg5);
|
||||
extern f32 func_8031C5D4(struct0*);
|
||||
@@ -122,7 +122,7 @@ void func_802450DC(f32 arg0[3], f32 arg1[3], f32 arg2[3], f32 arg3[3], f32 arg4[
|
||||
ml_vec3f_diff_copy(sp3C, arg1, arg0);
|
||||
ml_vec3f_diff_copy(sp30, arg3, arg2);
|
||||
ml_vec3f_diff_copy(sp24, sp3C, sp30);
|
||||
phi_f12 = -ml_vec3f_dot_product(arg4, sp24);
|
||||
phi_f12 = -ml_dotProduct_vec3f(arg4, sp24);
|
||||
phi_f12 = MAX(5.0f, phi_f12);
|
||||
arg1[0] += phi_f12 * arg4[0];
|
||||
arg1[1] += phi_f12 * arg4[1];
|
||||
@@ -145,13 +145,13 @@ void func_802451A4(f32 arg0[3], f32 arg1[3], f32 arg2[3], f32 arg3[3], f32 arg4[
|
||||
ml_vec3f_diff_copy(sp54, sp6C, sp60);
|
||||
ml_vec3f_normalize_copy(sp3C, sp54);
|
||||
ml_vec3f_yaw_rotate_copy(sp30, sp3C, 90.0f);
|
||||
sp28 = ml_vec3f_dot_product(arg4, sp3C);
|
||||
sp28 = ml_dotProduct_vec3f(arg4, sp3C);
|
||||
if (arg5 != 0) {
|
||||
D_8027EF30 = ml_vec3f_dot_product(arg4, sp30);
|
||||
D_8027EF30 = ml_dotProduct_vec3f(arg4, sp30);
|
||||
}
|
||||
phi_v0 = (D_8027EF30 < 0.0f) ? -1 : 1;
|
||||
ml_vec3f_yaw_rotate_copy(sp48, arg4,(phi_v0 * sp28) * 45.0);
|
||||
phi_f12 = -ml_vec3f_dot_product(sp48, sp54);
|
||||
phi_f12 = -ml_dotProduct_vec3f(sp48, sp54);
|
||||
phi_f12 = MAX(5.0f, phi_f12);
|
||||
arg1[0] += phi_f12 * sp48[0];
|
||||
arg1[1] += phi_f12 * sp48[1];
|
||||
@@ -280,7 +280,7 @@ void func_8024560C(f32 arg0[3], struct0 *arg1, UNK_TYPE(s32) arg2, u8 *arg3, f32
|
||||
}
|
||||
|
||||
BKCollisionTri *func_8024575C(f32 arg0[3], f32 arg1[3], f32 arg2, f32 arg3[3], s32 arg4, u32 arg5){
|
||||
if(arg2 < ml_vec3f_distance(arg0, arg1)){
|
||||
if(arg2 < ml_distance_vec3f(arg0, arg1)){
|
||||
return NULL;
|
||||
}
|
||||
return func_80320C94(arg0, arg1, arg2, arg3, arg4, arg5);
|
||||
|
@@ -399,7 +399,7 @@ void func_8024730C(void){
|
||||
} else {
|
||||
osViSetMode(&D_802759F8);
|
||||
}
|
||||
func_80250FC0(); //stop controller motors
|
||||
rumbleManager_80250FC0(); //stop controller motors
|
||||
do{
|
||||
osDpSetStatus(DPC_STATUS_FLUSH);
|
||||
}while(1);
|
||||
|
@@ -145,8 +145,8 @@ void func_8024BFD8(s32 arg0){
|
||||
static s32 D_80280E90;
|
||||
|
||||
osSetThreadPri(NULL, 0x7f);
|
||||
func_802408EC(0x1E);
|
||||
func_80240874();
|
||||
defragManager_setPriority(0x1E);
|
||||
defragManager_80240874();
|
||||
if(arg0){
|
||||
osRecvMesg(&D_802807B0, NULL, OS_MESG_BLOCK);
|
||||
}
|
||||
@@ -167,9 +167,9 @@ void func_8024BFD8(s32 arg0){
|
||||
}//L8024C178
|
||||
D_80280724 = D_802808D8;
|
||||
D_802808D8 = 0;
|
||||
func_802408B0();
|
||||
defragManager_802408B0();
|
||||
osSetThreadPri(NULL, 0x14);
|
||||
func_802408EC(0xA);
|
||||
defragManager_setPriority(0xA);
|
||||
}
|
||||
|
||||
void func_8024C1B4(void){
|
||||
|
@@ -3,7 +3,7 @@
|
||||
#include "variables.h"
|
||||
|
||||
extern void guPerspective(Mtx *, u16*, f32, f32, f32, f32, f32);
|
||||
extern f32 ml_vec3f_dot_product(f32[3], f32[3]);
|
||||
extern f32 ml_dotProduct_vec3f(f32[3], f32[3]);
|
||||
|
||||
/* .data */
|
||||
f32 D_80275D20 = 40.0f; //fovy
|
||||
@@ -48,7 +48,7 @@ void func_8024C510(f32 arg0){
|
||||
}
|
||||
|
||||
void func_8024C584(f32 arg0[3]){
|
||||
ml_vec3f_distance(arg0, D_80280EB0);
|
||||
ml_distance_vec3f(arg0, D_80280EB0);
|
||||
}
|
||||
|
||||
void func_8024C5A8(f32 arg0[3]){
|
||||
@@ -355,7 +355,7 @@ bool func_8024DB50(f32 arg0[3], f32 arg1) {
|
||||
sp3C[1] = arg0[1] - D_80280EB0[1];
|
||||
sp3C[2] = arg0[2] - D_80280EB0[2];
|
||||
for(i = 0; i < 4; i++){
|
||||
if(arg1 <= ml_vec3f_dot_product(sp3C, D_80280ED0[i])){
|
||||
if(arg1 <= ml_dotProduct_vec3f(sp3C, D_80280ED0[i])){
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
@@ -2,53 +2,53 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
void func_80240924(s32 arg0);
|
||||
void __defrag_thread(s32 arg0);
|
||||
|
||||
OSMesgQueue D_8027E120;
|
||||
OSMesg D_8027E138;
|
||||
OSMesgQueue D_8027E140;
|
||||
OSMesg D_8027E158;
|
||||
OSThread D_8027E160;
|
||||
u8 D_8027E310[0x800];
|
||||
OSThread defragThread;
|
||||
u8 defragStack[0x800];
|
||||
|
||||
/* .code */
|
||||
void func_802407C0(void){
|
||||
void defragManager_init(void){
|
||||
osCreateMesgQueue(&D_8027E120, &D_8027E138, 1);
|
||||
osCreateMesgQueue(&D_8027E140, &D_8027E158, 1);
|
||||
osCreateThread(&D_8027E160, 2, func_80240924, NULL, &D_8027E310[0x800], 10);
|
||||
osStartThread(&D_8027E160);
|
||||
osCreateThread(&defragThread, 2, __defrag_thread, NULL, &defragStack[0x800], 10);
|
||||
osStartThread(&defragThread);
|
||||
}
|
||||
|
||||
void func_80240844(void){
|
||||
osStopThread(&D_8027E160);
|
||||
osDestroyThread(&D_8027E160);
|
||||
void defragManager_free(void){
|
||||
osStopThread(&defragThread);
|
||||
osDestroyThread(&defragThread);
|
||||
}
|
||||
|
||||
void func_80240874(void){
|
||||
void defragManager_80240874(void){
|
||||
if(func_8023E000() == 3){
|
||||
osSendMesg(&D_8027E120, NULL, OS_MESG_BLOCK);
|
||||
}
|
||||
}
|
||||
|
||||
void func_802408B0(void){
|
||||
void defragManager_802408B0(void){
|
||||
if(func_8023E000() == 3){
|
||||
osSendMesg(&D_8027E140, NULL, OS_MESG_BLOCK);
|
||||
}
|
||||
}
|
||||
|
||||
void func_802408EC(OSPri pri){
|
||||
void defragManager_setPriority(OSPri pri){
|
||||
if(func_8023E000() == 3){
|
||||
osSetThreadPri(&D_8027E160, pri);
|
||||
osSetThreadPri(&defragThread, pri);
|
||||
}
|
||||
}
|
||||
|
||||
void func_80240924(s32 arg0){
|
||||
void __defrag_thread(s32 arg0){
|
||||
int tmp_v0;
|
||||
do{
|
||||
osRecvMesg(&D_8027E120, NULL, OS_MESG_BLOCK);
|
||||
if(!D_8027E140.validCount){
|
||||
do{
|
||||
tmp_v0 = func_802E48D8();
|
||||
tmp_v0 = game_defrag();
|
||||
}while(!D_8027E140.validCount && tmp_v0);
|
||||
}
|
||||
osRecvMesg(&D_8027E140, NULL, OS_MESG_BLOCK);
|
@@ -15,7 +15,7 @@ extern u8 D_8002D500;
|
||||
extern u32 D_8027BF2C;
|
||||
extern u32 D_8027BF30;
|
||||
|
||||
void func_80253050(
|
||||
void overlay_load(
|
||||
s32 overlay_id, u32 ram_start, u32 ram_end, u32 rom_start, u32 rom_end,
|
||||
u32 code_start, u32 code_end, u32 data_start, u32 data_end, u32 bss_start, u32 bss_end
|
||||
){
|
@@ -14,7 +14,7 @@ typedef struct struct_2a_s{
|
||||
u8* data_end;
|
||||
u8* bss_start;
|
||||
u8* bss_end;
|
||||
} struct2As;
|
||||
} OverlayAddressMap;
|
||||
|
||||
|
||||
extern u8 D_803A5D00;
|
||||
@@ -56,7 +56,7 @@ SEGMENT_EXTERNS(fight);
|
||||
{#realname, segname##_VRAM, segname##_VRAM_END, segname##_ROM_START, segname##_ROM_END, NULL, NULL, NULL, NULL, NULL, NULL}
|
||||
|
||||
/* .data */
|
||||
struct2As D_802762D0[] = {
|
||||
static OverlayAddressMap overlayAddressMap[] = {
|
||||
SEGMENT_ENTRY(core2, gs),
|
||||
DUMMY_SEGMENT_ENTRY(emptyLvl, coshow),
|
||||
SEGMENT_ENTRY(CC, whale),
|
||||
@@ -73,117 +73,116 @@ struct2As D_802762D0[] = {
|
||||
SEGMENT_ENTRY(lair, witch),
|
||||
SEGMENT_ENTRY(fight, battle),
|
||||
};
|
||||
s32 D_80276564 = sizeof(D_802762D0) / sizeof(D_802762D0[0]);
|
||||
static s32 overlayCount = sizeof(overlayAddressMap) / sizeof(overlayAddressMap[0]);
|
||||
|
||||
/* .bss */
|
||||
enum overlay_e D_80282800;
|
||||
enum overlay_e overlayMgrLoadedId;
|
||||
|
||||
|
||||
void func_802513A4(void);
|
||||
void overlayManagerdebug(void);
|
||||
|
||||
/* .code */
|
||||
struct2As *func_802510F0(void){
|
||||
//returns struct2As ptr with largest RAM size
|
||||
OverlayAddressMap *__overlayManagergetLargetOverlayAddressMap(void){
|
||||
//returns OverlayAddressMap ptr with largest RAM size
|
||||
int i;
|
||||
struct2As * v1;
|
||||
OverlayAddressMap * largest_overlay;
|
||||
|
||||
v1 = &D_802762D0[1];
|
||||
for(i = 1; i < D_80276564; i++){
|
||||
if(v1->ram_end - v1->ram_start < (u32)(D_802762D0[i].ram_end - D_802762D0[i].ram_start)){
|
||||
v1 = &D_802762D0[i];
|
||||
largest_overlay = &overlayAddressMap[1];
|
||||
for(i = 1; i < overlayCount; i++){
|
||||
if(largest_overlay->ram_end - largest_overlay->ram_start < (u32)(overlayAddressMap[i].ram_end - overlayAddressMap[i].ram_start)){
|
||||
largest_overlay = &overlayAddressMap[i];
|
||||
}
|
||||
}
|
||||
return v1;
|
||||
return largest_overlay;
|
||||
}
|
||||
|
||||
s32 func_80251170(void){
|
||||
s32 __overlayManager80251170(void){
|
||||
return 0;
|
||||
}
|
||||
|
||||
s32 func_80251178(void){
|
||||
s32 __overlayManager80251178(void){
|
||||
int sp24;
|
||||
struct2As *sp20;
|
||||
OverlayAddressMap *largest_overlay;
|
||||
s32 sp1C;
|
||||
s32 sp18;
|
||||
|
||||
|
||||
sp20 = func_802510F0();
|
||||
largest_overlay = __overlayManagergetLargetOverlayAddressMap();
|
||||
sp18 = func_802546DC();
|
||||
sp1C = func_80251170();
|
||||
sp1C = __overlayManager80251170();
|
||||
|
||||
return ((sp1C + &D_803A5D00) - sp20->ram_end) + sp18;
|
||||
return ((sp1C + &D_803A5D00) - largest_overlay->ram_end) + sp18;
|
||||
}
|
||||
|
||||
void func_802511C4(void){
|
||||
void __overlayManager802511C4(void){
|
||||
s32 sp24;
|
||||
int sp20;
|
||||
int sp1C;
|
||||
int sp18;
|
||||
int heap_size;
|
||||
u32 tmp_v0;
|
||||
|
||||
sp24 = func_80251178();
|
||||
sp18 = heap_get_size();
|
||||
sp24 = __overlayManager80251178();
|
||||
heap_size = heap_get_size();
|
||||
sp20 = func_802546DC();
|
||||
sp1C = sp18 - sp20;
|
||||
sp1C = heap_size - sp20;
|
||||
|
||||
if(sp24 < 0){
|
||||
func_802513A4();
|
||||
overlayManagerdebug();
|
||||
tmp_v0 = sp1C + sp24;
|
||||
while( tmp_v0 & 0xF){tmp_v0--;}
|
||||
}
|
||||
}
|
||||
|
||||
int get_loaded_overlay_id(void){
|
||||
return D_80282800;
|
||||
int overlayManagergetLoadedId(void){
|
||||
return overlayMgrLoadedId;
|
||||
}
|
||||
|
||||
int is_overlay_loaded(int overlay_id){
|
||||
return D_80282800 == overlay_id;
|
||||
bool overlayManagerisOverlayLoaded(int overlay_id){
|
||||
return overlayMgrLoadedId == overlay_id;
|
||||
}
|
||||
|
||||
bool load_overlay(enum overlay_e overlay_id){
|
||||
enum overlay_e rom_addr;
|
||||
bool overlayManagerload(enum overlay_e overlay_id){
|
||||
s32 rom_addr;
|
||||
|
||||
if(overlay_id == 0)
|
||||
return FALSE;
|
||||
|
||||
if(overlay_id == D_80282800)
|
||||
if(overlay_id == overlayMgrLoadedId)
|
||||
return FALSE;
|
||||
|
||||
D_80282800 = overlay_id;
|
||||
rom_addr = D_802762D0 + overlay_id;
|
||||
overlayMgrLoadedId = overlay_id;
|
||||
rom_addr = (s32)(overlayAddressMap + overlay_id);
|
||||
|
||||
func_80253050(
|
||||
overlay_load(
|
||||
overlay_id,
|
||||
((struct2As*)rom_addr)->ram_start,
|
||||
((struct2As*)rom_addr)->ram_end,
|
||||
((struct2As*)rom_addr)->unkC,
|
||||
((struct2As*)rom_addr)->unk10,
|
||||
((struct2As*)rom_addr)->code_start,
|
||||
((struct2As*)rom_addr)->code_end,
|
||||
((struct2As*)rom_addr)->data_start,
|
||||
((struct2As*)rom_addr)->data_end,
|
||||
((struct2As*)rom_addr)->bss_start,
|
||||
((struct2As*)rom_addr)->bss_end
|
||||
((OverlayAddressMap*)rom_addr)->ram_start,
|
||||
((OverlayAddressMap*)rom_addr)->ram_end,
|
||||
((OverlayAddressMap*)rom_addr)->unkC,
|
||||
((OverlayAddressMap*)rom_addr)->unk10,
|
||||
((OverlayAddressMap*)rom_addr)->code_start,
|
||||
((OverlayAddressMap*)rom_addr)->code_end,
|
||||
((OverlayAddressMap*)rom_addr)->data_start,
|
||||
((OverlayAddressMap*)rom_addr)->data_end,
|
||||
((OverlayAddressMap*)rom_addr)->bss_start,
|
||||
((OverlayAddressMap*)rom_addr)->bss_end
|
||||
);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//clear_loaded_overlay_id
|
||||
s32 func_802512FC(void){
|
||||
D_80282800 = 0;
|
||||
s32 overlayManagerclearLoadedId(void){
|
||||
overlayMgrLoadedId = 0;
|
||||
}
|
||||
|
||||
void func_80251308(void){
|
||||
func_802512FC();
|
||||
func_80253050(0,
|
||||
void overlayManagerloadCore2(void){
|
||||
overlayManagerclearLoadedId();
|
||||
overlay_load(0,
|
||||
core2_VRAM, core2_VRAM_END,
|
||||
core2_ROM_START, core2_ROM_END,
|
||||
core2_TEXT_START, core2_TEXT_END,
|
||||
core2_DATA_START, core2_RODATA_END,
|
||||
core2_BSS_START, core2_BSS_END
|
||||
);
|
||||
func_802511C4();
|
||||
__overlayManager802511C4();
|
||||
}
|
||||
|
||||
void func_802513A4(void){}
|
||||
void overlayManagerdebug(void){}
|
@@ -15,13 +15,13 @@ f32 D_80282420;
|
||||
f32 D_80282424;
|
||||
f32 D_80282428;
|
||||
f32 D_8028242C;
|
||||
OSThread D_80282430;
|
||||
u8 D_802825E0[0x200];
|
||||
OSThread rumbleThread;
|
||||
u8 rumbleStack[0x200];
|
||||
|
||||
/* .code */
|
||||
void func_80250D94(f32, f32, f32);
|
||||
void rumbleManager_80250D94(f32, f32, f32);
|
||||
|
||||
void func_80250890(void){
|
||||
void __rumbleManager_startRumble(void){
|
||||
u32 motor_status;
|
||||
|
||||
if(D_802823B0){
|
||||
@@ -32,7 +32,7 @@ void func_80250890(void){
|
||||
}
|
||||
}
|
||||
|
||||
void func_802508E0(void){
|
||||
void __rumbleManager_stopRumble(void){
|
||||
u32 motor_status;
|
||||
|
||||
if(D_802823B0){
|
||||
@@ -54,14 +54,14 @@ void func_80250930(void){
|
||||
}
|
||||
}
|
||||
|
||||
void func_8025098C(void *arg0) {
|
||||
void __rumbleUpdate(void *arg0) {
|
||||
static s32 D_802827E0;
|
||||
static s32 D_802827E4;
|
||||
static s32 rumble_state;
|
||||
f32 temp_f2;
|
||||
f32 temp_f0;
|
||||
f32 temp_f12;
|
||||
f32 temp_f14;
|
||||
s32 temp_a0;
|
||||
s32 prev_state;
|
||||
s32 var_v0;
|
||||
s32 var_v1;
|
||||
|
||||
@@ -71,42 +71,42 @@ void func_8025098C(void *arg0) {
|
||||
if (!D_802823B0 && ((D_802827E0 % 60) == 0)) {
|
||||
func_80250930();
|
||||
}
|
||||
temp_a0 = D_802827E4;
|
||||
prev_state = rumble_state;
|
||||
if (D_80282424 != D_80282420) {
|
||||
temp_f2 = D_80282428 + ((D_8028242C - D_80282428) * D_80282424 / D_80282420);
|
||||
var_v0 = (s32) (((1.0 - temp_f2) * 8.0) + 1);
|
||||
if (var_v0 < 2) {
|
||||
D_802827E4 = var_v0;
|
||||
rumble_state = var_v0;
|
||||
} else {
|
||||
D_802827E4 = (D_802827E0 % var_v0) == 0;
|
||||
rumble_state = (D_802827E0 % var_v0) == 0;
|
||||
}
|
||||
} else {
|
||||
D_802827E4 = 0;
|
||||
rumble_state = 0;
|
||||
}
|
||||
if (D_802827E4 != temp_a0) {
|
||||
D_802827E4 = D_802827E4;
|
||||
if (D_802827E4) {
|
||||
func_80250890(); //start_motor
|
||||
|
||||
if (rumble_state != prev_state) {
|
||||
if (rumble_state) {
|
||||
__rumbleManager_startRumble(); //start_motor
|
||||
}
|
||||
else{
|
||||
func_802508E0(); //stop_motor
|
||||
__rumbleManager_stopRumble(); //stop_motor
|
||||
}
|
||||
}
|
||||
}while(1);
|
||||
}
|
||||
|
||||
void func_80250BA4(s32 arg0, s32 arg1, s32 arg2){
|
||||
void __rumbleManager_80250BA4(s32 arg0, s32 arg1, s32 arg2){
|
||||
f64 f0 = 524288.0;
|
||||
func_80250D94(arg0/f0, arg1/f0, arg2/f0);
|
||||
rumbleManager_80250D94(arg0/f0, arg1/f0, arg2/f0);
|
||||
}
|
||||
|
||||
void func_80250C08(void) {
|
||||
void rumbleManager_80250C08(void) {
|
||||
if (D_802823AC != 0) {
|
||||
D_80282424 = MIN(D_80282420, D_80282424 + time_getDelta());
|
||||
}
|
||||
}
|
||||
|
||||
void func_80250C84(void){
|
||||
void rumbleManager_init(void){
|
||||
s32 pfs_status;
|
||||
|
||||
func_8024F35C(4);
|
||||
@@ -120,15 +120,15 @@ void func_80250C84(void){
|
||||
D_802823B0 = D_802823AC;
|
||||
if(D_802823AC){
|
||||
osCreateMesgQueue(&D_80282390, &D_802823A8, 1);
|
||||
osCreateThread(&D_80282430, 8, func_8025098C, NULL, &D_802825E0[0x200], 0x19);
|
||||
osStartThread(&D_80282430);
|
||||
osCreateThread(&rumbleThread, 8, __rumbleUpdate, NULL, &rumbleStack[0x200], 0x19);
|
||||
osStartThread(&rumbleThread);
|
||||
func_8024BDAC(&D_80282390, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void func_80250D8C(void){}
|
||||
void __rumbleManager_80250D8C(void){}
|
||||
|
||||
void func_80250D94(f32 arg0, f32 arg1, f32 arg2){
|
||||
void rumbleManager_80250D94(f32 arg0, f32 arg1, f32 arg2){
|
||||
f32 f4;
|
||||
if(arg2 != 0.0f && D_802823AC){
|
||||
if(func_802E4A08() == 0){
|
||||
@@ -142,21 +142,20 @@ void func_80250D94(f32 arg0, f32 arg1, f32 arg2){
|
||||
}
|
||||
}
|
||||
|
||||
void func_80250E6C(f32 arg0, f32 arg1){
|
||||
func_80250D94(arg0, arg0, arg1);
|
||||
void rumbleManager_80250E6C(f32 arg0, f32 arg1){
|
||||
rumbleManager_80250D94(arg0, arg0, arg1);
|
||||
}
|
||||
|
||||
void func_80250E94(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5){
|
||||
|
||||
void rumbleManager_80250E94(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5){
|
||||
if(D_802823AC){
|
||||
timedFunc_set_3(0.0f, (GenMethod_3) func_80250BA4, 0, (s32) (arg0 * 524288.0f), (s32) (arg2*524288.0f));
|
||||
timedFunc_set_3(arg2, (GenMethod_3) func_80250BA4, (s32) (arg0 * 524288.0f), (s32) (arg1 * 524288.0f), (s32) (arg3*524288.0f));
|
||||
timedFunc_set_3(arg2 + arg3, (GenMethod_3) func_80250BA4, (s32) (arg1 * 524288.0f), (s32) (arg1 * 524288.0f), (s32) (arg4*524288.0f));
|
||||
timedFunc_set_3(arg2 + arg3 + arg4, (GenMethod_3) func_80250BA4, (s32) (arg1 * 524288.0f), 0, (s32) (arg5*524288.0f));
|
||||
timedFunc_set_3(0.0f, (GenMethod_3) __rumbleManager_80250BA4, 0, (s32) (arg0 * 524288.0f), (s32) (arg2*524288.0f));
|
||||
timedFunc_set_3(arg2, (GenMethod_3) __rumbleManager_80250BA4, (s32) (arg0 * 524288.0f), (s32) (arg1 * 524288.0f), (s32) (arg3*524288.0f));
|
||||
timedFunc_set_3(arg2 + arg3, (GenMethod_3) __rumbleManager_80250BA4, (s32) (arg1 * 524288.0f), (s32) (arg1 * 524288.0f), (s32) (arg4*524288.0f));
|
||||
timedFunc_set_3(arg2 + arg3 + arg4, (GenMethod_3) __rumbleManager_80250BA4, (s32) (arg1 * 524288.0f), 0, (s32) (arg5*524288.0f));
|
||||
}
|
||||
}
|
||||
|
||||
void func_80250FC0(void){
|
||||
void rumbleManager_80250FC0(void){
|
||||
int i;
|
||||
u32 motor_status;
|
||||
if(D_802823B0){
|
@@ -16,7 +16,7 @@ void animctrl_80286F90(AnimCtrl *this){
|
||||
anim = animctrl_getAnimPtr(this);
|
||||
duration = anim_getDuration(anim);
|
||||
if( duration < 1.0f ){
|
||||
anim_setDuration(anim, min_f(1.0f, time_getDelta()/animctrl_getTransistionDuration(this) + duration));
|
||||
anim_setDuration(anim, ml_min_f(1.0f, time_getDelta()/animctrl_getTransistionDuration(this) + duration));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -12,7 +12,7 @@ f32 D_803635E0[3] = {0.0f, 5.0f, 0.0f};
|
||||
s32 D_803635EC[7] = {0x4, 0x3, 0x60, 0x18, 0x1B, 0x67, 0x80};
|
||||
|
||||
/* .bss */
|
||||
AnimCtrl *D_8037BF20;
|
||||
AnimCtrl *playerAnimCtrl;
|
||||
s32 D_8037BF24;
|
||||
f32 D_8037BF28;
|
||||
f32 D_8037BF2C;
|
||||
@@ -39,13 +39,13 @@ void func_8028982C(void) {
|
||||
sp24 = (D_8037BF30.unk14 != 0) ? D_8037BF30.unk10 : 1.0f;
|
||||
_get_velocity(sp2C);
|
||||
temp_f12 = func_80257BFC(gu_sqrtf(sp2C[0]*sp2C[0] + sp2C[2] * sp2C[2]), D_8037BF30.unk0, D_8037BF30.unk4, D_8037BF30.unk8 * sp24, D_8037BF30.unkC * sp24);
|
||||
animctrl_setDuration(D_8037BF20, mlClamp_f(temp_f12, D_8037BF28, D_8037BF2C));
|
||||
animctrl_update(D_8037BF20);
|
||||
animctrl_setDuration(playerAnimCtrl, ml_clamp_f(temp_f12, D_8037BF28, D_8037BF2C));
|
||||
animctrl_update(playerAnimCtrl);
|
||||
}
|
||||
|
||||
void func_802898F8(void) {
|
||||
animctrl_setDuration(D_8037BF20, mlClamp_f(func_80257BFC(mlAbsF(func_80297AAC()), D_8037BF30.unk0, D_8037BF30.unk4, D_8037BF30.unk8, D_8037BF30.unkC), D_8037BF28, D_8037BF2C));
|
||||
animctrl_update(D_8037BF20);
|
||||
animctrl_setDuration(playerAnimCtrl, ml_clamp_f(func_80257BFC(mlAbsF(func_80297AAC()), D_8037BF30.unk0, D_8037BF30.unk4, D_8037BF30.unk8, D_8037BF30.unkC), D_8037BF28, D_8037BF2C));
|
||||
animctrl_update(playerAnimCtrl);
|
||||
}
|
||||
|
||||
|
||||
@@ -106,10 +106,10 @@ void func_80289A78(s32 arg0, s32 arg1) {
|
||||
}
|
||||
if (map_get() == MAP_A_TTC_SANDCASTLE) {
|
||||
if ((D_8037BF4C & 0x80) && (player_getTransformation() != TRANSFORM_7_WISHWASHY)) {
|
||||
func_8028FB88(7);
|
||||
func_8028FB88(TRANSFORM_7_WISHWASHY);
|
||||
}
|
||||
if (!(D_8037BF4C & 0x80) && (player_getTransformation() == TRANSFORM_7_WISHWASHY)) {
|
||||
func_8028FB88(1);
|
||||
func_8028FB88(TRANSFORM_1_BANJO);
|
||||
}
|
||||
}
|
||||
if (D_8037BF48 != NULL) {
|
||||
@@ -117,11 +117,11 @@ void func_80289A78(s32 arg0, s32 arg1) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_80289D1C(void){
|
||||
D_8037BF20 = animctrl_new(1);
|
||||
func_80287784(D_8037BF20, 0);
|
||||
animctrl_setSmoothTransition(D_8037BF20, FALSE);
|
||||
func_8028746C(D_8037BF20, func_80289A78);
|
||||
void baAnim_init(void){
|
||||
playerAnimCtrl = animctrl_new(1);
|
||||
func_80287784(playerAnimCtrl, 0);
|
||||
animctrl_setSmoothTransition(playerAnimCtrl, FALSE);
|
||||
func_8028746C(playerAnimCtrl, func_80289A78);
|
||||
D_8037BF48 = NULL;
|
||||
func_80289F30();
|
||||
D_8037BF24 = 0;
|
||||
@@ -132,11 +132,11 @@ void func_80289D1C(void){
|
||||
D_8037BF30.unk10 = 1.0f;
|
||||
}
|
||||
|
||||
void func_80289DDC(void){
|
||||
animctrl_free(D_8037BF20);
|
||||
void baAnim_free(void){
|
||||
animctrl_free(playerAnimCtrl);
|
||||
}
|
||||
|
||||
void func_80289E00(void){
|
||||
void baAnim_update(void){
|
||||
switch(D_8037BF24){
|
||||
case 2:
|
||||
func_8028982C();
|
||||
@@ -147,7 +147,7 @@ void func_80289E00(void){
|
||||
break;
|
||||
|
||||
case 1:
|
||||
animctrl_update(D_8037BF20);
|
||||
animctrl_update(playerAnimCtrl);
|
||||
break;
|
||||
|
||||
case 0:
|
||||
@@ -155,8 +155,8 @@ void func_80289E00(void){
|
||||
}
|
||||
}
|
||||
|
||||
void func_80289E74(void){
|
||||
D_8037BF20 = animctrl_defrag(D_8037BF20);
|
||||
void baAnim_defrag(void){
|
||||
playerAnimCtrl = animctrl_defrag(playerAnimCtrl);
|
||||
}
|
||||
|
||||
s32 func_80289E9C(void){
|
||||
@@ -193,98 +193,98 @@ void func_80289F30(void){
|
||||
f32 sp1C[3];
|
||||
|
||||
_player_getPosition(sp1C);
|
||||
func_8028781C(D_8037BF20, sp1C, 1);
|
||||
func_8028781C(playerAnimCtrl, sp1C, 1);
|
||||
}
|
||||
|
||||
AnimCtrl *_player_getAnimCtrlPtr(void){
|
||||
return D_8037BF20;
|
||||
return playerAnimCtrl;
|
||||
}
|
||||
|
||||
f32 func_80289F70(void){
|
||||
return animctrl_getAnimTimer(D_8037BF20);
|
||||
return animctrl_getAnimTimer(playerAnimCtrl);
|
||||
}
|
||||
|
||||
bool func_80289F94(enum asset_e anim_id){
|
||||
return animctrl_getIndex(D_8037BF20) == anim_id;
|
||||
return animctrl_getIndex(playerAnimCtrl) == anim_id;
|
||||
}
|
||||
|
||||
bool baanim_isStopped(void){
|
||||
return animctrl_isStopped(D_8037BF20);
|
||||
return animctrl_isStopped(playerAnimCtrl);
|
||||
}
|
||||
|
||||
bool baanim_isAt(f32 time){
|
||||
return animctrl_isAt(D_8037BF20, time);
|
||||
return animctrl_isAt(playerAnimCtrl, time);
|
||||
}
|
||||
|
||||
void func_8028A010(enum asset_e anim_id, f32 duration){
|
||||
animctrl_reset(D_8037BF20);
|
||||
animctrl_setIndex(D_8037BF20, anim_id);
|
||||
animctrl_setDuration(D_8037BF20, duration);
|
||||
animctrl_setPlaybackType(D_8037BF20, 2);
|
||||
func_802875AC(D_8037BF20, "baanim.c", 0x188);
|
||||
animctrl_reset(playerAnimCtrl);
|
||||
animctrl_setIndex(playerAnimCtrl, anim_id);
|
||||
animctrl_setDuration(playerAnimCtrl, duration);
|
||||
animctrl_setPlaybackType(playerAnimCtrl, 2);
|
||||
func_802875AC(playerAnimCtrl, "baanim.c", 0x188);
|
||||
}
|
||||
|
||||
void func_8028A084(enum asset_e anim_id, f32 duration){
|
||||
animctrl_reset(D_8037BF20);
|
||||
animctrl_setSmoothTransition(D_8037BF20, FALSE);
|
||||
animctrl_setIndex(D_8037BF20, anim_id);
|
||||
animctrl_setDuration(D_8037BF20, duration);
|
||||
animctrl_setPlaybackType(D_8037BF20, 2);
|
||||
func_802875AC(D_8037BF20, "baanim.c", 0x193);
|
||||
animctrl_reset(playerAnimCtrl);
|
||||
animctrl_setSmoothTransition(playerAnimCtrl, FALSE);
|
||||
animctrl_setIndex(playerAnimCtrl, anim_id);
|
||||
animctrl_setDuration(playerAnimCtrl, duration);
|
||||
animctrl_setPlaybackType(playerAnimCtrl, 2);
|
||||
func_802875AC(playerAnimCtrl, "baanim.c", 0x193);
|
||||
}
|
||||
|
||||
void func_8028A100(enum asset_e anim_id, f32 duration, f32 arg2){
|
||||
animctrl_reset(D_8037BF20);
|
||||
animctrl_setIndex(D_8037BF20, anim_id);
|
||||
animctrl_setDuration(D_8037BF20, duration);
|
||||
func_8028774C(D_8037BF20, arg2);
|
||||
animctrl_setPlaybackType(D_8037BF20, 2);
|
||||
func_802875AC(D_8037BF20, "baanim.c", 0x19e);
|
||||
animctrl_reset(playerAnimCtrl);
|
||||
animctrl_setIndex(playerAnimCtrl, anim_id);
|
||||
animctrl_setDuration(playerAnimCtrl, duration);
|
||||
func_8028774C(playerAnimCtrl, arg2);
|
||||
animctrl_setPlaybackType(playerAnimCtrl, 2);
|
||||
func_802875AC(playerAnimCtrl, "baanim.c", 0x19e);
|
||||
}
|
||||
|
||||
void func_8028A180(enum asset_e anim_id, f32 duration){
|
||||
animctrl_reset(D_8037BF20);
|
||||
animctrl_setIndex(D_8037BF20, anim_id);
|
||||
animctrl_setDuration(D_8037BF20, duration);
|
||||
animctrl_setPlaybackType(D_8037BF20, 1);
|
||||
func_802875AC(D_8037BF20, "baanim.c", 0x1a8);
|
||||
animctrl_reset(playerAnimCtrl);
|
||||
animctrl_setIndex(playerAnimCtrl, anim_id);
|
||||
animctrl_setDuration(playerAnimCtrl, duration);
|
||||
animctrl_setPlaybackType(playerAnimCtrl, 1);
|
||||
func_802875AC(playerAnimCtrl, "baanim.c", 0x1a8);
|
||||
}
|
||||
|
||||
void func_8028A1F4(enum asset_e anim_id, f32 duration, f32 arg2){
|
||||
animctrl_reset(D_8037BF20);
|
||||
animctrl_setIndex(D_8037BF20, anim_id);
|
||||
animctrl_setDuration(D_8037BF20, duration);
|
||||
func_8028774C(D_8037BF20, arg2);
|
||||
animctrl_setPlaybackType(D_8037BF20, 1);
|
||||
func_802875AC(D_8037BF20, "baanim.c", 0x1b3);
|
||||
animctrl_reset(playerAnimCtrl);
|
||||
animctrl_setIndex(playerAnimCtrl, anim_id);
|
||||
animctrl_setDuration(playerAnimCtrl, duration);
|
||||
func_8028774C(playerAnimCtrl, arg2);
|
||||
animctrl_setPlaybackType(playerAnimCtrl, 1);
|
||||
func_802875AC(playerAnimCtrl, "baanim.c", 0x1b3);
|
||||
}
|
||||
|
||||
void func_8028A274(enum asset_e anim_id, f32 duration){
|
||||
animctrl_reset(D_8037BF20);
|
||||
animctrl_setSmoothTransition(D_8037BF20, FALSE);
|
||||
animctrl_setIndex(D_8037BF20, anim_id);
|
||||
animctrl_setDuration(D_8037BF20, duration);
|
||||
animctrl_setPlaybackType(D_8037BF20, 1);
|
||||
func_802875AC(D_8037BF20, "baanim.c", 0x1bd);
|
||||
animctrl_reset(playerAnimCtrl);
|
||||
animctrl_setSmoothTransition(playerAnimCtrl, FALSE);
|
||||
animctrl_setIndex(playerAnimCtrl, anim_id);
|
||||
animctrl_setDuration(playerAnimCtrl, duration);
|
||||
animctrl_setPlaybackType(playerAnimCtrl, 1);
|
||||
func_802875AC(playerAnimCtrl, "baanim.c", 0x1bd);
|
||||
}
|
||||
|
||||
void func_8028A2F0(enum asset_e anim_id, f32 duration, f32 arg2){
|
||||
animctrl_reset(D_8037BF20);
|
||||
animctrl_setSmoothTransition(D_8037BF20, FALSE);
|
||||
animctrl_setIndex(D_8037BF20, anim_id);
|
||||
animctrl_setDuration(D_8037BF20, duration);
|
||||
func_8028774C(D_8037BF20, arg2);
|
||||
animctrl_setPlaybackType(D_8037BF20, 1);
|
||||
func_802875AC(D_8037BF20, "baanim.c", 0x1c9);
|
||||
animctrl_reset(playerAnimCtrl);
|
||||
animctrl_setSmoothTransition(playerAnimCtrl, FALSE);
|
||||
animctrl_setIndex(playerAnimCtrl, anim_id);
|
||||
animctrl_setDuration(playerAnimCtrl, duration);
|
||||
func_8028774C(playerAnimCtrl, arg2);
|
||||
animctrl_setPlaybackType(playerAnimCtrl, 1);
|
||||
func_802875AC(playerAnimCtrl, "baanim.c", 0x1c9);
|
||||
}
|
||||
|
||||
void func_8028A37C(f32 arg0){
|
||||
animctrl_setSubRange(D_8037BF20, 0.0f, arg0);
|
||||
animctrl_setPlaybackType(D_8037BF20, 1);
|
||||
animctrl_setSubRange(playerAnimCtrl, 0.0f, arg0);
|
||||
animctrl_setPlaybackType(playerAnimCtrl, 1);
|
||||
}
|
||||
|
||||
void func_8028A3B8(f32 arg0, f32 arg1){
|
||||
animctrl_setSubRange(D_8037BF20, 0.0f, arg0);
|
||||
animctrl_setDuration(D_8037BF20, arg1);
|
||||
animctrl_setPlaybackType(D_8037BF20, 1);
|
||||
animctrl_setSubRange(playerAnimCtrl, 0.0f, arg0);
|
||||
animctrl_setDuration(playerAnimCtrl, arg1);
|
||||
animctrl_setPlaybackType(playerAnimCtrl, 1);
|
||||
}
|
@@ -7,8 +7,8 @@
|
||||
|
||||
extern void func_803012F8(void);
|
||||
extern f32 func_8024DDD8(f32[3], f32);
|
||||
extern f32 ml_vec3f_distance_squared(f32 arg0[3], f32 arg1[3]);
|
||||
extern void func_8028BA00(s32);
|
||||
extern f32 ml_distanceSquared_vec3f(f32 arg0[3], f32 arg1[3]);
|
||||
extern void __baMarker_8028BA00(s32);
|
||||
extern void func_802C418C(void);
|
||||
extern void func_802A6388(f32);
|
||||
extern f32 chwadingboots_802D6E4C(Actor *);
|
||||
@@ -20,11 +20,11 @@ extern void func_8035644C(s32);
|
||||
extern void func_8035646C(s32 arg0);
|
||||
extern void func_80291634(ActorMarker *, ActorMarker *);
|
||||
extern void func_80291610(ActorMarker *, ActorMarker *);
|
||||
extern void playerModel_80291AAC(void);
|
||||
extern void func_8028D7B8(s32 arg0, ActorMarker *arg1, struct5Cs *collision_flags);
|
||||
extern Actor *baModel_80291AAC(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
|
||||
extern void baMarker_8028D7B8(s32 arg0, ActorMarker *arg1, struct5Cs *collision_flags);
|
||||
extern void func_802EE6CC(f32[3], s32, s32[4], s32, f32, f32, s32,s32,s32);
|
||||
extern void func_80320ED8(ActorMarker *, f32, s32);
|
||||
|
||||
extern NodeProp *cubeList_findNodePropByActorId(enum actor_e actor_id, s32 position[3]);
|
||||
|
||||
typedef struct
|
||||
{
|
||||
@@ -34,7 +34,7 @@ typedef struct
|
||||
}
|
||||
tmp_struct_type;
|
||||
|
||||
void func_8028D638(s32 arg0, s32 arg1);
|
||||
void baMarker_8028D638(s32 arg0, s32 arg1);
|
||||
|
||||
/* .data */
|
||||
s32 D_80363630[2] = {0x20, 0x1C};
|
||||
@@ -59,7 +59,7 @@ s32 D_80363680[4] = {0xff, 0xff, 0xff, 0xc8};
|
||||
/* .bss */
|
||||
ActorMarker *playerMarker;
|
||||
s32 D_8037BF74;
|
||||
s32 carriedObject_actorID;
|
||||
s32 baMarkerCarriedObjActorId;
|
||||
s32 D_8037BF7C;
|
||||
s32 D_8037BF80[2];
|
||||
s32 D_8037BF88;
|
||||
@@ -67,7 +67,7 @@ ActorMarker *D_8037BF8C;
|
||||
u8 D_8037BF90;
|
||||
|
||||
/* .code */
|
||||
s32 *func_8028B750(void){
|
||||
s32 *__baMarker_8028B750(void){
|
||||
if(D_8037BF80[0]){
|
||||
return D_8037BF80;
|
||||
}
|
||||
@@ -101,7 +101,7 @@ s32 *func_8028B750(void){
|
||||
}
|
||||
}
|
||||
|
||||
void func_8028B7F4(void){
|
||||
void __baMarker_8028B7F4(void){
|
||||
yaw_setIdeal(func_8029B41C());
|
||||
func_802991A8(1);
|
||||
func_8029957C(3);
|
||||
@@ -110,7 +110,7 @@ void func_8028B7F4(void){
|
||||
func_8029151C(0xC);
|
||||
}
|
||||
|
||||
void func_8028B848(void){
|
||||
void __baMarker_8028B848(void){
|
||||
s32 s0 = 0;
|
||||
if(map_get() == MAP_69_GL_MM_LOBBY){
|
||||
s0 = 0xf57;
|
||||
@@ -121,18 +121,18 @@ void func_8028B848(void){
|
||||
|
||||
if(s0){
|
||||
if(player_getTransformation() == TRANSFORM_1_BANJO){
|
||||
func_8028B7F4();
|
||||
__baMarker_8028B7F4();
|
||||
}
|
||||
func_80311480(s0, 0x2A, NULL, NULL, NULL, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void func_8028B8DC(void){
|
||||
void __baMarker_8028B8DC(void){
|
||||
func_8028F918(1);
|
||||
D_8037BF88 = 1;
|
||||
}
|
||||
|
||||
void func_8028B904(s32 arg0, s32 arg1, s32 arg2, s32 arg3){
|
||||
void __baMarker_8028B904(s32 arg0, s32 arg1, s32 arg2, s32 arg3){
|
||||
f32 sp1C[3];
|
||||
|
||||
sp1C[0] = reinterpret_cast(s16, arg0);
|
||||
@@ -153,38 +153,37 @@ void func_8028B904(s32 arg0, s32 arg1, s32 arg2, s32 arg3){
|
||||
}
|
||||
|
||||
|
||||
void func_8028B9A8(s32 arg0){
|
||||
s16 *tmp_v0;
|
||||
void __baMarker_8028B9A8(s32 arg0){
|
||||
NodeProp *tmp_v0;
|
||||
s32 ideal_yaw[3];
|
||||
|
||||
tmp_v0 = cubeList_findNodePropByActorId(0x1F6, 0);
|
||||
func_80304D4C(tmp_v0, &ideal_yaw);
|
||||
func_802CA1CC(arg0);
|
||||
func_8032811C(0x47, &ideal_yaw, 0);
|
||||
func_8032811C(ACTOR_47_EMPTY_HONEYCOMB, &ideal_yaw, 0);
|
||||
func_8025A6EC(COMUSIC_2B_DING_B, 28000);
|
||||
|
||||
}
|
||||
|
||||
void func_8028BA00(s32 arg0){
|
||||
__spawnQueue_add_1((GenMethod_1)func_8028B9A8, arg0);
|
||||
if(arg0);
|
||||
void __baMarker_8028BA00(s32 arg0){
|
||||
__spawnQueue_add_1((GenMethod_1)__baMarker_8028B9A8, reinterpret_cast(s32, arg0));
|
||||
}
|
||||
|
||||
|
||||
void func_8028BA2C(s32 arg0) {
|
||||
if (func_802FADD4(0x1B) == 0) {
|
||||
void __baMarker_resolveMusicNoteCollision(Prop *arg0) {
|
||||
if (!func_802FADD4(ITEM_1B_VILE_VILE_SCORE)) {
|
||||
item_inc(ITEM_C_NOTE);
|
||||
} else {
|
||||
func_803463F4(ITEM_C_NOTE, 1);
|
||||
}
|
||||
if (item_getCount(ITEM_C_NOTE) < 100) {
|
||||
func_8025A6EC(COMUSIC_9_NOTE_COLLECTED, 0x3E80);
|
||||
func_8025A6EC(COMUSIC_9_NOTE_COLLECTED, 16000);
|
||||
timedFunc_set_1(0.75f, func_8035644C, 3);
|
||||
}
|
||||
func_802F379C(arg0 + 4);
|
||||
func_802F379C(arg0->unk4);
|
||||
}
|
||||
|
||||
void func_8028BAB0(enum jiggy_e jiggy_id, s32 arg1, s32 arg2, s32 arg3){
|
||||
void __baMarker_8028BAB0(enum jiggy_e jiggy_id, s32 arg1, s32 arg2, s32 arg3){
|
||||
if(jiggyscore_isCollected(jiggy_id))
|
||||
return;
|
||||
|
||||
@@ -195,7 +194,7 @@ void func_8028BAB0(enum jiggy_e jiggy_id, s32 arg1, s32 arg2, s32 arg3){
|
||||
func_8030E6D4(SFX_90_SWITCH_PRESS);
|
||||
}
|
||||
|
||||
void func_8028BB1C(s32 arg0, u32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6){
|
||||
void __baMarker_8028BB1C(s32 arg0, u32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6){
|
||||
u32 sp24;
|
||||
if(arg0 != 1)
|
||||
return;
|
||||
@@ -222,15 +221,15 @@ void func_8028BB1C(s32 arg0, u32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s
|
||||
}
|
||||
}
|
||||
|
||||
int func_8028BC20(ActorMarker *marker){
|
||||
int __baMarker_8028BC20(ActorMarker *marker){
|
||||
return D_8037BF90 == 1 && player_getActiveHitbox(marker) == HITBOX_5_PECK;
|
||||
}
|
||||
|
||||
int func_8028BC60(void){
|
||||
int __baMarker_8028BC60(void){
|
||||
return D_8037BF90 == 1 && player_getActiveHitbox(NULL) == HITBOX_5_PECK;
|
||||
}
|
||||
|
||||
void func_8028BCA0(Prop *prop){
|
||||
void __baMarker_resolveCollision(Prop *other_prop){
|
||||
s32 plyr_collision_type;
|
||||
s32 obj_collision_type;
|
||||
s32 plyr_hitbox_type;
|
||||
@@ -252,10 +251,10 @@ void func_8028BCA0(Prop *prop){
|
||||
tmp_struct_type sp64;
|
||||
s32 tmp1;
|
||||
|
||||
if(*((u32*)(((u32)prop) + 8)) & 1){
|
||||
if(*((u32*)(((u32)other_prop) + 8)) & 1){
|
||||
plyr_collision_type = 0;
|
||||
obj_collision_type = 0;
|
||||
marker = prop->actorProp.marker;
|
||||
marker = other_prop->actorProp.marker;
|
||||
actor = NULL;
|
||||
if(marker->unk3E_0){
|
||||
actor = marker_getActor(marker);
|
||||
@@ -294,18 +293,18 @@ void func_8028BCA0(Prop *prop){
|
||||
break;
|
||||
|
||||
case MARKER_B5_RED_FEATHER_COLLECTABLE: //L8028BEF4
|
||||
if(func_8028BC20(marker) != HITBOX_0_NONE)
|
||||
if(__baMarker_8028BC20(marker) != HITBOX_0_NONE)
|
||||
return;
|
||||
if(chcollectable_collectRedFeather(prop)){
|
||||
if(chcollectable_collectRedFeather(other_prop)){
|
||||
marker_despawn(marker);
|
||||
}
|
||||
break;
|
||||
|
||||
case MARKER_1E5_GOLD_FEATHER_COLLECTABLE: //L8028BF24
|
||||
if(func_8028BC20(marker))
|
||||
if(__baMarker_8028BC20(marker))
|
||||
return;
|
||||
|
||||
if(chcollectable_collectGoldFeather(prop)){
|
||||
if(chcollectable_collectGoldFeather(other_prop)){
|
||||
marker_despawn(marker);
|
||||
}
|
||||
break;
|
||||
@@ -333,12 +332,12 @@ void func_8028BCA0(Prop *prop){
|
||||
|
||||
case MARKER_F5_BGS_ELEVATED_WALKWAY_SWITCH: //L8028BFB0
|
||||
if(plyr_hitbox_type == HITBOX_1_BEAK_BUSTER)
|
||||
func_8028BAB0(JIGGY_20_BGS_ELEVATED_WALKWAY, 1, 3, 7);
|
||||
__baMarker_8028BAB0(JIGGY_20_BGS_ELEVATED_WALKWAY, 1, 3, 7);
|
||||
break;
|
||||
|
||||
case MARKER_FD_BGS_MAZE_SWITCH: //L8028BFD4
|
||||
if(plyr_hitbox_type == HITBOX_1_BEAK_BUSTER)
|
||||
func_8028BAB0(JIGGY_25_BGS_MAZE, 0xa, 0xc, 8);
|
||||
__baMarker_8028BAB0(JIGGY_25_BGS_MAZE, 0xa, 0xc, 8);
|
||||
break;
|
||||
|
||||
case MARKER_EC_GV_SUN_SWITCH: //L8028BFF8
|
||||
@@ -354,7 +353,7 @@ void func_8028BCA0(Prop *prop){
|
||||
mapSpecificFlags_set(0xD, 1);
|
||||
func_8030E6D4(SFX_90_SWITCH_PRESS);
|
||||
func_802BAFE4(0x14);
|
||||
timedFunc_set_1(1.5f, func_8028BA00, 0xB);
|
||||
timedFunc_set_1(1.5f, __baMarker_8028BA00, 0xB);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -365,7 +364,7 @@ void func_8028BCA0(Prop *prop){
|
||||
mapSpecificFlags_set(0,1);
|
||||
func_8030E6D4(SFX_90_SWITCH_PRESS);
|
||||
func_802BAFE4(0x7E);
|
||||
timedFunc_set_1(1.5f, func_8028BA00, 0xf);
|
||||
timedFunc_set_1(1.5f, __baMarker_8028BA00, 0xf);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -455,62 +454,62 @@ void func_8028BCA0(Prop *prop){
|
||||
break;
|
||||
|
||||
case 0x241: //L8028C31C
|
||||
func_8028BB1C(plyr_hitbox_type, 0xC6, 0x6E, 0x81, 0x2C, 0xA, 0xC7);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0xC6, 0x6E, 0x81, 0x2C, 0xA, 0xC7);
|
||||
break;
|
||||
|
||||
case MARKER_23C_GV_SNS_SWITCH: //L8028C350
|
||||
func_8028BB1C(plyr_hitbox_type, 0xA3, 0x92, 0x7F, 0x1A, 0xA, 0xA4);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0xA3, 0x92, 0x7F, 0x1A, 0xA, 0xA4);
|
||||
break;
|
||||
|
||||
case MARKER_161_GV_WITCH_SWITCH: //L8028C384
|
||||
func_8028BB1C(plyr_hitbox_type, 0x4000BE, 0x6E, 0x7D, 0x19, 0x14, 0xA0);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x4000BE, 0x6E, 0x7D, 0x19, 0x14, 0xA0);
|
||||
break;
|
||||
|
||||
case MARKER_162_BGS_WITCH_SWITCH: //L8028C3BC
|
||||
func_8028BB1C(plyr_hitbox_type, 0x4000BD, 0x71, 0x7C, 0x18, 0x14, 0x9F);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x4000BD, 0x71, 0x7C, 0x18, 0x14, 0x9F);
|
||||
break;
|
||||
case MARKER_166_CC_WITCH_SWITCH: //L8028C3F4
|
||||
func_8028BB1C(plyr_hitbox_type, 0x4000BC, 0x6A, 0x7A, 0x17, 0x14, 0x9A);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x4000BC, 0x6A, 0x7A, 0x17, 0x14, 0x9A);
|
||||
break;
|
||||
|
||||
case MARKER_22B_FP_WITCH_SWITCH: //L8028C42C
|
||||
func_8028BB1C(plyr_hitbox_type, 0x4000BB, 0x6F, 0x3A, 0x13, 0x15, 0x47);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x4000BB, 0x6F, 0x3A, 0x13, 0x15, 0x47);
|
||||
break;
|
||||
|
||||
case MARKER_22A_CCW_WITCH_SWITCH: //L8028C464
|
||||
func_8028BB1C(plyr_hitbox_type, 0x4000BA, 0x79, 0x39, 0x12, 0x15, 0x46);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x4000BA, 0x79, 0x39, 0x12, 0x15, 0x46);
|
||||
break;
|
||||
|
||||
case MARKER_103_MM_WITCH_SWITCH: //L8028C49C
|
||||
func_8028BB1C(plyr_hitbox_type, 0x4000B6, 0x69, 0x26, 1, 4, 0x18);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x4000B6, 0x69, 0x26, 1, 4, 0x18);
|
||||
break;
|
||||
|
||||
case MARKER_104_MMM_WITCH_SWITCH: //L8028C4D4
|
||||
func_8028BB1C(plyr_hitbox_type, 0x4000B7, 0x6F, 0x27, 2, 0x14, 0x19);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x4000B7, 0x6F, 0x27, 2, 0x14, 0x19);
|
||||
break;
|
||||
|
||||
case MARKER_105_TTC_WITCH_SWITCH: //L8028C50C
|
||||
func_8028BB1C(plyr_hitbox_type, 0x4000B8, 0x6D, 0x28, 3, 0x14, 0x1A);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x4000B8, 0x6D, 0x28, 3, 0x14, 0x1A);
|
||||
break;
|
||||
|
||||
case MARKER_106_RBB_WITCH_SWITCH: //L8028C544
|
||||
func_8028BB1C(plyr_hitbox_type, 0x4000B9, 0x76, 0x29, 4, 0xe, 0x1C);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x4000B9, 0x76, 0x29, 4, 0xe, 0x1C);
|
||||
break;
|
||||
|
||||
case MARKER_11B_WATER_LEVEL_SWITCH_1: //L8028C57C
|
||||
func_8028BB1C(plyr_hitbox_type, 0x22, 0x77, 0x2D, 5, 0xA, 0x23);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x22, 0x77, 0x2D, 5, 0xA, 0x23);
|
||||
break;
|
||||
|
||||
case MARKER_11C_WATER_LEVEL_SWITCH_2: //L8028C5B0
|
||||
func_8028BB1C(plyr_hitbox_type, 0x24, 0x77, 0x2E, 6, 0xA, 0x25);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x24, 0x77, 0x2E, 6, 0xA, 0x25);
|
||||
break;
|
||||
|
||||
case MARKER_11D_WATER_LEVEL_SWITCH_3: //L8028C5E4
|
||||
func_8028BB1C(plyr_hitbox_type, 0x26, 0x76, 0x2F, 0x7, 0xA, 0x27);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x26, 0x76, 0x2F, 0x7, 0xA, 0x27);
|
||||
break;
|
||||
|
||||
case 0x232: //L8028C618
|
||||
func_8028BB1C(plyr_hitbox_type, 0x53, 0x6b, 0x3b, 0x14, 0x12, 0x54);
|
||||
__baMarker_8028BB1C(plyr_hitbox_type, 0x53, 0x6b, 0x3b, 0x14, 0x12, 0x54);
|
||||
break;
|
||||
|
||||
case MARKER_F3_GV_KAZOOIE_TARGET: //L8028C64C
|
||||
@@ -523,13 +522,13 @@ void func_8028BCA0(Prop *prop){
|
||||
|
||||
case MARKER_52_JIGGY: //L8028C66C
|
||||
{
|
||||
if(func_8028BC20(marker))
|
||||
if(__baMarker_8028BC20(marker))
|
||||
return;
|
||||
|
||||
player_getPosition(spA0);
|
||||
jiggy_id = chjiggy_getJiggyId(actor);
|
||||
if( jiggy_id != JIGGY_2F_FP_XMAS_TREE
|
||||
|| (func_8028B2E8() && !(3600.0f < ml_vec3f_distance_squared(actor->position, spA0)))
|
||||
|| (func_8028B2E8() && !(3600.0f < ml_distanceSquared_vec3f(actor->position, spA0)))
|
||||
){
|
||||
jiggyscore_setCollected(jiggy_id, TRUE);
|
||||
func_803463F4(ITEM_26_JIGGY_TOTAL, 1);
|
||||
@@ -537,14 +536,14 @@ void func_8028BCA0(Prop *prop){
|
||||
func_802D6924();
|
||||
}
|
||||
if(jiggyscore_total() < 3){
|
||||
func_8028B848();
|
||||
__baMarker_8028B848();
|
||||
}
|
||||
|
||||
if(func_8025AD7C(COMUSIC_30_5TH_JINJO_COLLECTED)){
|
||||
func_8028B8DC();
|
||||
__baMarker_8028B8DC();
|
||||
}
|
||||
|
||||
__spawnQueue_add_4((GenMethod_4)func_8028B904, reinterpret_cast(u32, prop->actorProp.x), reinterpret_cast(u32, prop->actorProp.y), reinterpret_cast(u32, prop->actorProp.z), jiggy_id);
|
||||
__spawnQueue_add_4((GenMethod_4)__baMarker_8028B904, reinterpret_cast(u32, other_prop->actorProp.x), reinterpret_cast(u32, other_prop->actorProp.y), reinterpret_cast(u32, other_prop->actorProp.z), jiggy_id);
|
||||
marker_despawn(marker);
|
||||
}
|
||||
}
|
||||
@@ -553,7 +552,7 @@ void func_8028BCA0(Prop *prop){
|
||||
case MARKER_53_EMPTY_HONEYCOMB: //L8028C774
|
||||
{
|
||||
|
||||
if(func_8028BC20(marker))
|
||||
if(__baMarker_8028BC20(marker))
|
||||
return;
|
||||
sp98 = func_802CA1C4(marker_getActor(marker));
|
||||
if(sp98 != HONEYCOMB_12_MMM_FLOORBOARD || player_getTransformation() == TRANSFORM_3_PUMPKIN)
|
||||
@@ -565,7 +564,7 @@ void func_8028BCA0(Prop *prop){
|
||||
if(!(item_getCount(ITEM_13_EMPTY_HONEYCOMB) < 6)){
|
||||
gcpausemenu_80314AC8(0);
|
||||
}
|
||||
func_802F36DC(&prop->actorProp.x);
|
||||
func_802F36DC(&other_prop->actorProp.x);
|
||||
marker_despawn(marker);
|
||||
}
|
||||
}
|
||||
@@ -574,12 +573,12 @@ void func_8028BCA0(Prop *prop){
|
||||
case 0x54: //L8028C820
|
||||
func_8025A6EC(COMUSIC_19_LOW_PITCH_FLUTES, 28000);
|
||||
func_803012F8();
|
||||
__spawnQueue_add_4((GenMethod_4)func_802C418C, 0x4E, reinterpret_cast(u32, prop->actorProp.x), reinterpret_cast(u32, prop->actorProp.y), reinterpret_cast(u32, prop->actorProp.z));
|
||||
__spawnQueue_add_4((GenMethod_4)func_802C418C, 0x4E, reinterpret_cast(u32, other_prop->actorProp.x), reinterpret_cast(u32, other_prop->actorProp.y), reinterpret_cast(u32, other_prop->actorProp.z));
|
||||
marker_despawn(marker);
|
||||
break;
|
||||
|
||||
case MARKER_55_HONEYCOMB: //L8028C86C
|
||||
if(func_8028BC20(marker))
|
||||
if(__baMarker_8028BC20(marker))
|
||||
return;
|
||||
|
||||
if( map_get() == MAP_8E_GL_FURNACE_FUN
|
||||
@@ -593,7 +592,7 @@ void func_8028BCA0(Prop *prop){
|
||||
func_8025A6EC(COMUSIC_16_HONEYCOMB_COLLECTED, 28000);
|
||||
timedFunc_set_1(0.75f, func_8035644C, 0xA);
|
||||
item_inc(ITEM_14_HEALTH);
|
||||
func_802F373C(&prop->actorProp.x);
|
||||
func_802F373C(&other_prop->actorProp.x);
|
||||
marker_despawn(marker);
|
||||
break;
|
||||
|
||||
@@ -670,17 +669,17 @@ void func_8028BCA0(Prop *prop){
|
||||
break;
|
||||
|
||||
case MARKER_5F_MUSIC_NOTE: //L8028CCC8
|
||||
if(func_8028BC20(marker))
|
||||
if(__baMarker_8028BC20(marker))
|
||||
return;
|
||||
|
||||
func_8028BA2C(prop);
|
||||
__baMarker_resolveMusicNoteCollision(other_prop);
|
||||
marker_despawn(marker);
|
||||
break;
|
||||
|
||||
case MARKER_60_BLUE_EGG_COLLECTABLE: //L8028CCF0
|
||||
if(func_8028BC20(marker))
|
||||
if(__baMarker_8028BC20(marker))
|
||||
return;
|
||||
if(chcollectable_collectEgg(prop)){
|
||||
if(chcollectable_collectEgg(other_prop)){
|
||||
marker_despawn(marker);
|
||||
}
|
||||
break;
|
||||
@@ -692,7 +691,7 @@ void func_8028BCA0(Prop *prop){
|
||||
break;
|
||||
|
||||
case MARKER_61_EXTRA_LIFE: //L8028CD50
|
||||
if(func_8028BC20(marker))
|
||||
if(__baMarker_8028BC20(marker))
|
||||
return;
|
||||
if( map_get() == MAP_8E_GL_FURNACE_FUN
|
||||
&& func_803203FC(0)
|
||||
@@ -703,7 +702,7 @@ void func_8028BCA0(Prop *prop){
|
||||
}
|
||||
func_8025A6EC(COMUSIC_15_EXTRA_LIFE_COLLECTED, 0x7FFF);
|
||||
timedFunc_set_1(1.5f, func_8035646C, 0xC);
|
||||
func_802F3B3C(&prop->actorProp.x);
|
||||
func_802F3B3C(&other_prop->actorProp.x);
|
||||
item_inc(ITEM_16_LIFE);
|
||||
marker_despawn(marker);
|
||||
break;
|
||||
@@ -733,7 +732,7 @@ void func_8028BCA0(Prop *prop){
|
||||
break;
|
||||
|
||||
case MARKER_11_WADING_BOOTS: //L8028CE8C
|
||||
if(func_8028BC20(marker))
|
||||
if(__baMarker_8028BC20(marker))
|
||||
return;
|
||||
if(_player_getTransformation() != TRANSFORM_1_BANJO)
|
||||
return;
|
||||
@@ -747,12 +746,12 @@ void func_8028BCA0(Prop *prop){
|
||||
miscflag_set(MISC_FLAG_E_TOUCHING_WADING_BOOTS);
|
||||
func_802A6388(chwadingboots_802D6E4C(actor));
|
||||
bs_checkInterrupt(BS_INTR_1B);
|
||||
__spawnQueue_add_4((GenMethod_4)func_802C418C, 0x4E, reinterpret_cast(u32, prop->actorProp.x), reinterpret_cast(u32, prop->actorProp.y), reinterpret_cast(u32, prop->actorProp.z));
|
||||
__spawnQueue_add_4((GenMethod_4)func_802C418C, 0x4E, reinterpret_cast(u32, other_prop->actorProp.x), reinterpret_cast(u32, other_prop->actorProp.y), reinterpret_cast(u32, other_prop->actorProp.z));
|
||||
chwadingboots_802D6E54(actor);
|
||||
break;
|
||||
|
||||
case MARKER_38_TURBO_TALON_TRAINERS: //L8028CF38
|
||||
if(func_8028BC20(marker))
|
||||
if(__baMarker_8028BC20(marker))
|
||||
return;
|
||||
|
||||
tmp1 = _player_getTransformation();
|
||||
@@ -771,7 +770,7 @@ void func_8028BCA0(Prop *prop){
|
||||
miscflag_set(MISC_FLAG_10_TOUCHING_TURBO_TRAINERS);
|
||||
func_80294AE8(chtrainers_802CA748(actor));
|
||||
bs_checkInterrupt(BS_INTR_1A);
|
||||
__spawnQueue_add_4((GenMethod_4)func_802C418C, 0x4E, reinterpret_cast(u32, prop->actorProp.x), reinterpret_cast(u32, prop->actorProp.y), reinterpret_cast(u32, prop->actorProp.z));
|
||||
__spawnQueue_add_4((GenMethod_4)func_802C418C, 0x4E, reinterpret_cast(u32, other_prop->actorProp.x), reinterpret_cast(u32, other_prop->actorProp.y), reinterpret_cast(u32, other_prop->actorProp.z));
|
||||
chtrainers_802CA750(actor);
|
||||
break;
|
||||
|
||||
@@ -806,9 +805,9 @@ void func_8028BCA0(Prop *prop){
|
||||
func_8032B258(actor, obj_collision_type);
|
||||
}
|
||||
}
|
||||
else if(prop->unk8_1)//L8028D0B0 //ModelProp
|
||||
else if(other_prop->unk8_1)//L8028D0B0 //ModelProp
|
||||
{
|
||||
tmp2 = prop->modelProp.unk0_31 + 0x2D1;
|
||||
tmp2 = other_prop->modelProp.unk0_31 + 0x2D1;
|
||||
switch (tmp2)
|
||||
{
|
||||
case 0x2E8:
|
||||
@@ -823,31 +822,31 @@ void func_8028BCA0(Prop *prop){
|
||||
}
|
||||
}
|
||||
else{//L8028D10C //SpriteProp
|
||||
tmp3 = prop->spriteProp.unk0_31 + 0x572;
|
||||
tmp3 = other_prop->spriteProp.unk0_31 + 0x572;
|
||||
switch (tmp3)
|
||||
{
|
||||
case 0x6D6: //L8028D144
|
||||
if(!func_8028BC60()){
|
||||
prop->spriteProp.unk8_4 = 0;
|
||||
func_8028BA2C(prop);
|
||||
if(!__baMarker_8028BC60()){
|
||||
other_prop->spriteProp.unk8_4 = 0;
|
||||
__baMarker_resolveMusicNoteCollision(other_prop);
|
||||
}
|
||||
break;
|
||||
case 0x6D7: //L8028D16C
|
||||
if(!func_8028BC60()){
|
||||
prop->spriteProp.unk8_4 = 0;
|
||||
chcollectable_collectEgg(prop);
|
||||
if(!__baMarker_8028BC60()){
|
||||
other_prop->spriteProp.unk8_4 = 0;
|
||||
chcollectable_collectEgg(other_prop);
|
||||
}
|
||||
break;
|
||||
case 0x580: //L8028D194
|
||||
if(!func_8028BC60()){
|
||||
prop->spriteProp.unk8_4 = 0;
|
||||
chcollectable_collectRedFeather(prop);
|
||||
if(!__baMarker_8028BC60()){
|
||||
other_prop->spriteProp.unk8_4 = 0;
|
||||
chcollectable_collectRedFeather(other_prop);
|
||||
}
|
||||
break;
|
||||
case 0x6D1: //L8028D1BC
|
||||
if(!func_8028BC60()){
|
||||
prop->spriteProp.unk8_4 = 0;
|
||||
chcollectable_collectGoldFeather(prop);
|
||||
if(!__baMarker_8028BC60()){
|
||||
other_prop->spriteProp.unk8_4 = 0;
|
||||
chcollectable_collectGoldFeather(other_prop);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
@@ -857,31 +856,30 @@ void func_8028BCA0(Prop *prop){
|
||||
}
|
||||
}
|
||||
|
||||
//player_initMarker
|
||||
void playerMarker_init(void){
|
||||
void baMarker_init(void){
|
||||
f32 sp1C[3];
|
||||
_player_getPosition(sp1C);
|
||||
playerMarker = func_8032FBE4(sp1C, playerModel_80291AAC, 1, 0);
|
||||
playerMarker = func_8032FBE4(sp1C, baModel_80291AAC, 1, 0);
|
||||
playerMarker->unk2C_1 = 1;
|
||||
marker_setCollisionScripts(playerMarker, NULL, func_80291634, func_80291610);
|
||||
func_803300B8(playerMarker, func_8028D7B8);
|
||||
func_803300B8(playerMarker, baMarker_8028D7B8);
|
||||
miscflag_clear(MISC_FLAG_1_ON_FLIGHT_PAD);
|
||||
miscflag_clear(MISC_FLAG_2_ON_SPRING_PAD);
|
||||
miscflag_clear(8);
|
||||
func_8028D638(0,0);
|
||||
baMarker_8028D638(0,0);
|
||||
func_8033D2F4();
|
||||
D_8037BF8C = 0;
|
||||
D_8037BF90 = 0xff;
|
||||
|
||||
}
|
||||
|
||||
void playerMarker_free(void){
|
||||
void baMarker_free(void){
|
||||
marker_free(playerMarker);
|
||||
playerMarker = NULL;
|
||||
}
|
||||
|
||||
|
||||
void func_8028D2E4(void){
|
||||
void baMarker_update(void){
|
||||
f32 sp174[3];
|
||||
f32 sp168[3];
|
||||
s32 temp_s0;
|
||||
@@ -889,7 +887,7 @@ void func_8028D2E4(void){
|
||||
Prop *sp58[65];
|
||||
s32 *temp_s0_2;
|
||||
s32 temp_s2;
|
||||
Prop *temp_s1;
|
||||
Prop *other_prop;
|
||||
|
||||
if ((D_8037BF88 != 0)){
|
||||
temp_s0 = func_8024FEEC(func_8025ADD4(COMUSIC_30_5TH_JINJO_COLLECTED) & 0xFF);
|
||||
@@ -900,26 +898,26 @@ void func_8028D2E4(void){
|
||||
}//L8028D364
|
||||
miscflag_clear(8);
|
||||
if(playerMarker->collidable){
|
||||
temp_s0_2 = func_8028B750();
|
||||
temp_s0_2 = __baMarker_8028B750();
|
||||
miscflag_clear(MISC_FLAG_1_ON_FLIGHT_PAD);
|
||||
miscflag_clear(MISC_FLAG_2_ON_SPRING_PAD);
|
||||
_player_getPosition(sp168);
|
||||
func_8032F64C(sp168, playerMarker);
|
||||
for(D_8037BF8C = NULL, i = 0, temp_s2 = 0; i < 2;i++){//L8028D3DC
|
||||
D_8037BF90 = i;
|
||||
playerModel_80292284(sp174, i); //get top of player?
|
||||
baModel_80292284(sp174, i); //get top of player?
|
||||
playerMarker->unk38[0] = sp174[0] - sp168[0];
|
||||
playerMarker->unk38[1] = sp174[1] - sp168[1];
|
||||
playerMarker->unk38[2] = sp174[2] - sp168[2];
|
||||
func_80320ED8(playerMarker, temp_s0_2[i], 1);
|
||||
while(temp_s1 = func_8032F528()){//L8028D480
|
||||
if(!temp_s1->unk8_2){
|
||||
if(!D_8037BF8C && temp_s1->markerFlag && temp_s1->unk8_1){
|
||||
D_8037BF8C = temp_s1->actorProp.marker;
|
||||
while(other_prop = func_8032F528()){//L8028D480
|
||||
if(!other_prop->unk8_2){
|
||||
if(!D_8037BF8C && other_prop->markerFlag && other_prop->unk8_1){
|
||||
D_8037BF8C = other_prop->actorProp.marker;
|
||||
}
|
||||
func_8028BCA0(temp_s1);
|
||||
temp_s1->unk8_2 = 1;
|
||||
sp58[temp_s2] = temp_s1;
|
||||
__baMarker_resolveCollision(other_prop);
|
||||
other_prop->unk8_2 = 1;
|
||||
sp58[temp_s2] = other_prop;
|
||||
temp_s2++;
|
||||
}//L8028D4E0
|
||||
}//L8028D4F0
|
||||
@@ -932,52 +930,52 @@ void func_8028D2E4(void){
|
||||
}
|
||||
}
|
||||
|
||||
ActorMarker *_player_getMarker(void){ //_player_getMarker
|
||||
ActorMarker *baMarker_get(void){ //baMarker_get
|
||||
return playerMarker;
|
||||
}
|
||||
|
||||
void func_8028D5DC(void){ //player_collisionOff
|
||||
void baMarker_collisionOff(void){ //player_collisionOff
|
||||
playerMarker->collidable = 0;
|
||||
}
|
||||
|
||||
void func_8028D5F4(void){ //player_collisionOn
|
||||
void baMarker_collisionOn(void){ //player_collisionOn
|
||||
playerMarker->collidable = 1;
|
||||
}
|
||||
|
||||
s32 func_8028D60C(void){ //player_isCollidable
|
||||
return (playerMarker->collidable)? 1 : 0;
|
||||
bool baMarker_isCollidable(void){ //player_isCollidable
|
||||
return BOOL(playerMarker->collidable);
|
||||
}
|
||||
|
||||
void func_8028D638(s32 arg0, s32 arg1){
|
||||
void baMarker_8028D638(s32 arg0, s32 arg1){
|
||||
D_8037BF80[0] = arg0;
|
||||
D_8037BF80[1] = arg1;
|
||||
}
|
||||
|
||||
void func_8028D64C(s32 arg0){
|
||||
void baMarker_8028D64C(s32 arg0){
|
||||
D_8037BF74 = arg0;
|
||||
}
|
||||
|
||||
void carriedObject_setActorID(enum actor_e arg0){
|
||||
carriedObject_actorID = arg0;
|
||||
void baMarker_setCarriedObject(enum actor_e actor_id){
|
||||
baMarkerCarriedObjActorId = actor_id;
|
||||
}
|
||||
|
||||
s32 func_8028D664(void){
|
||||
s32 baMarker_8028D664(void){
|
||||
return D_8037BF74;
|
||||
}
|
||||
|
||||
enum actor_e carriedObject_getActorID(void){
|
||||
return carriedObject_actorID;
|
||||
enum actor_e baMarker_getCarriedObjectActorId(void){
|
||||
return baMarkerCarriedObjActorId;
|
||||
}
|
||||
|
||||
void func_8028D67C(s32 arg0){
|
||||
void baMarker_8028D67C(s32 arg0){
|
||||
D_8037BF7C = arg0;
|
||||
}
|
||||
|
||||
s32 func_8028D688(void){
|
||||
s32 baMarker_8028D688(void){
|
||||
return D_8037BF7C;
|
||||
}
|
||||
|
||||
s32 func_8028D694(void) {
|
||||
s32 baMarker_8028D694(void) {
|
||||
s32 temp_a0;
|
||||
s32 phi_v1;
|
||||
|
||||
@@ -992,12 +990,12 @@ s32 func_8028D694(void) {
|
||||
}
|
||||
|
||||
|
||||
s32 func_8028D6F0(s32 **arg0){
|
||||
*arg0 = func_8028B750();
|
||||
s32 baMarker_8028D6F0(s32 **arg0){
|
||||
*arg0 = __baMarker_8028B750();
|
||||
return 2;
|
||||
}
|
||||
|
||||
void func_8028D71C(void){
|
||||
void baMarker_8028D71C(void){
|
||||
f32 sp3C[3];
|
||||
f32 sp30[3];
|
||||
|
||||
@@ -1005,10 +1003,9 @@ void func_8028D71C(void){
|
||||
player_getPosition(sp3C);
|
||||
sp3C[1] += (sp30[1] - sp3C[1])*0.75;
|
||||
func_802EE6CC(sp3C, 0, D_80363680, 1, 0.75f, 0.0f, 0x7d, 0xfa, 0);
|
||||
|
||||
}
|
||||
|
||||
void func_8028D7B8(s32 arg0, ActorMarker *arg1, struct5Cs *collision_flags){
|
||||
void baMarker_8028D7B8(s32 arg0, ActorMarker *arg1, struct5Cs *collision_flags){
|
||||
s32 sp24;
|
||||
s32 sp20 = func_8033D594(collision_flags);
|
||||
s32 sp1C = 0;
|
||||
@@ -1050,15 +1047,15 @@ void func_8028D7B8(s32 arg0, ActorMarker *arg1, struct5Cs *collision_flags){
|
||||
sp24 = MAX(MIN(sp24, 0xb), 7);
|
||||
sp24 -= 7;
|
||||
func_8028F428(sp24 +8, arg1);
|
||||
func_80250D94(0.8f, sp24 + 0.2, 0.3f);
|
||||
rumbleManager_80250D94(0.8f, sp24 + 0.2, 0.3f);
|
||||
break;
|
||||
case 2://L8028DA10
|
||||
sp24 = MAX(MIN(sp24, 5), 1);
|
||||
sp24--;
|
||||
func_8028F55C(sp24 + 3, arg1);
|
||||
func_80250D94(1.0f, sp24 + 0.3, 0.5f);
|
||||
rumbleManager_80250D94(1.0f, sp24 + 0.3, 0.5f);
|
||||
if(actor->unk16C_2 || actor->unk16C_1){
|
||||
func_8028D71C();
|
||||
baMarker_8028D71C();
|
||||
}
|
||||
break;
|
||||
case 0:
|
388
src/core2/ba/model.c
Normal file
388
src/core2/ba/model.c
Normal file
@@ -0,0 +1,388 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/ba/model.h"
|
||||
|
||||
void func_80254008(void);
|
||||
extern void func_80256E24(f32[3], f32, f32, f32, f32, f32);
|
||||
void assetcache_release(void *); //assetcache_free
|
||||
extern void ml_vec3f_assign(f32[3], f32, f32, f32);
|
||||
void func_8033A280(f32);
|
||||
|
||||
extern s32 osCicId;
|
||||
|
||||
/* .data */
|
||||
struct5Bs *D_80363780 = NULL;
|
||||
|
||||
/* .bss */
|
||||
void *baModelBin; //baModelPtr
|
||||
s16 baModelId; //baModel asset_id
|
||||
u8 baModelEnvAlpha;
|
||||
u8 baModelDirection;
|
||||
u8 baModelIsVisible;
|
||||
f32 baModelScale;
|
||||
f32 baModelPitch;
|
||||
f32 baModelRoll;
|
||||
f32 baModelYaw;
|
||||
f32 D_8037C100[3];
|
||||
f32 D_8037C110[3];
|
||||
f32 baModelDisplacement[3];
|
||||
void (*baModelPostDrawMethod)(Gfx **gfx, Mtx **mtx, Vtx **vtx);
|
||||
f32 D_8037C130[2][4];
|
||||
struct {
|
||||
u8 unk0;
|
||||
f32 unk4[3];
|
||||
} D_8037C150;
|
||||
|
||||
//public
|
||||
void baModel_set(enum asset_e asset_id);
|
||||
|
||||
//.data
|
||||
static void _baModel_updateModelYaw(void){
|
||||
switch(baModelDirection){
|
||||
case PLAYER_MODEL_DIR_KAZOOIE:
|
||||
baModelYaw = mlNormalizeAngle(yaw_get() + 180.0f);
|
||||
break;
|
||||
default:
|
||||
baModelYaw = yaw_get();
|
||||
break;
|
||||
case PLAYER_MODEL_DIR_GLOBAL:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void baModel_80291A50(s32 arg0, f32 dst[3]){
|
||||
func_8034A174(D_80363780, arg0, dst);
|
||||
if(ml_isZero_vec3f(dst)){
|
||||
_player_getPosition(dst);
|
||||
}
|
||||
}
|
||||
|
||||
Actor *baModel_80291AAC(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static void _baModel_preDraw(int arg0){
|
||||
baMarker_get()->unk14_21 = 1;
|
||||
}
|
||||
|
||||
void baModel_draw(Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
f32 rotation[3];
|
||||
s32 env_color[3];
|
||||
f32 plyr_pos[3]; //sp44
|
||||
f32 sp38[3];
|
||||
|
||||
if(!baModelIsVisible)
|
||||
return;
|
||||
|
||||
_baModel_updateModelYaw();
|
||||
baModelRoll = roll_get();
|
||||
baModelPitch = pitch_get();
|
||||
_player_getPosition(plyr_pos);
|
||||
plyr_pos[1] += 2.0f;
|
||||
ml_vec3f_assign(rotation, baModelPitch, baModelYaw, baModelRoll);
|
||||
func_8029A47C(env_color);
|
||||
ml_vec3f_copy(sp38, D_8037C100);
|
||||
|
||||
plyr_pos[0] += baModelDisplacement[0];\
|
||||
plyr_pos[1] += baModelDisplacement[1];\
|
||||
plyr_pos[2] += baModelDisplacement[2];
|
||||
|
||||
sp38[0] += baModelDisplacement[0];\
|
||||
sp38[1] += baModelDisplacement[1];\
|
||||
sp38[2] += baModelDisplacement[2];
|
||||
|
||||
if(baModelBin){
|
||||
func_80289F30();
|
||||
func_8029DD6C();
|
||||
modelRender_setEnvColor(env_color[0], env_color[1], env_color[2], baModelEnvAlpha);
|
||||
func_8033A280(2.0f);
|
||||
modelRender_preDraw((GenMethod_1)_baModel_preDraw, 0);
|
||||
func_8033A450(D_80363780);
|
||||
modelRender_setDepthMode(MODEL_RENDER_DEPTH_FULL);
|
||||
if(D_8037C150.unk0){
|
||||
D_8037C150.unk0 = 0;
|
||||
modelRender_draw(gfx, mtx, D_8037C150.unk4, rotation, baModelScale, sp38, baModelBin);
|
||||
}
|
||||
else{
|
||||
modelRender_draw(gfx, mtx, plyr_pos, rotation, baModelScale, sp38, baModelBin);
|
||||
}
|
||||
}//L80291CD4
|
||||
|
||||
if(baModelPostDrawMethod){
|
||||
baModelPostDrawMethod(gfx, mtx, vtx);
|
||||
}
|
||||
}
|
||||
|
||||
void baModel_updateModel(void){
|
||||
baModel_set(func_802985F0());
|
||||
}
|
||||
|
||||
void baModel_reset(void){
|
||||
f32 plyr_pos[3];
|
||||
int i;
|
||||
for(i = 0; i < 2 ; i++){
|
||||
baModel_80292048(i, 0.0f, 0.0f, 0.0f);
|
||||
baModel_80292078(i, 0.0f);
|
||||
}
|
||||
baModelEnvAlpha = 0xFF;
|
||||
baModelBin = NULL;
|
||||
baModelId = 0;
|
||||
baModelPostDrawMethod = NULL;
|
||||
D_80363780 = func_8034A2C8();
|
||||
func_8034A130(D_80363780);
|
||||
ml_vec3f_clear(D_8037C100);
|
||||
ml_vec3f_clear(D_8037C110);
|
||||
ml_vec3f_clear(baModelDisplacement);
|
||||
baModelYaw = baModelRoll = baModelPitch = 0.0f;
|
||||
D_8037C150.unk0 = 0;
|
||||
baModel_setVisible(TRUE);
|
||||
baModel_setScale(1.0f);
|
||||
baModelDirection = 0;
|
||||
baModel_setDirection(PLAYER_MODEL_DIR_BANJO);
|
||||
if(!func_8028ADB4())
|
||||
baModel_updateModel();
|
||||
player_getPosition(plyr_pos);
|
||||
__spawnQueue_add_4((GenMethod_4)func_802C4140,
|
||||
ACTOR_17_PLAYER_SHADOW,
|
||||
reinterpret_cast(s32, plyr_pos[0]),
|
||||
reinterpret_cast(s32, plyr_pos[1]),
|
||||
reinterpret_cast(s32, plyr_pos[2])
|
||||
);
|
||||
}
|
||||
|
||||
void baModel_free(void){
|
||||
assetcache_release(baModelBin);
|
||||
baModelBin = NULL;
|
||||
baModelId = 0;
|
||||
func_8034A2A8(D_80363780);
|
||||
D_80363780 = NULL;
|
||||
}
|
||||
|
||||
void baModel_update(void){
|
||||
f32 sp1C;
|
||||
f32 temp_f0;
|
||||
|
||||
sp1C = D_8037C110[1] - D_8037C100[1];
|
||||
temp_f0 = mlAbsF(sp1C);
|
||||
if( temp_f0 < 0.01){
|
||||
D_8037C100[1] = D_8037C110[1];
|
||||
}
|
||||
else{
|
||||
if(5.0f < temp_f0){
|
||||
temp_f0 = 1.0f;
|
||||
}
|
||||
if(0.0f < sp1C){
|
||||
D_8037C100[1] += temp_f0;
|
||||
}
|
||||
else{
|
||||
D_8037C100[1] -= temp_f0;
|
||||
}
|
||||
{//L80291F7C
|
||||
baMarker_get()->unk14_21 = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
BKModelBin *baModel_getModelBin(void){
|
||||
return baModelBin;
|
||||
}
|
||||
|
||||
enum asset_e baModel_getModelId(void){
|
||||
return baModelId;
|
||||
}
|
||||
|
||||
void baModel_setEnvAlpha(s32 alpha){
|
||||
baModelEnvAlpha = alpha;
|
||||
}
|
||||
|
||||
void baModel_set(enum asset_e asset_id){
|
||||
if(asset_id != baModelId){
|
||||
if(baModelBin){
|
||||
func_80254008();
|
||||
assetcache_release(baModelBin);
|
||||
baModelBin = NULL;
|
||||
}
|
||||
baModelId = asset_id;
|
||||
if(baModelId)
|
||||
baModelBin = assetcache_get(baModelId);
|
||||
}
|
||||
}
|
||||
|
||||
void baModel_80292048(s32 arg0, f32 arg1, f32 arg2, f32 arg3){
|
||||
D_8037C130[arg0][2] = arg1;
|
||||
D_8037C130[arg0][3] = arg2;
|
||||
D_8037C130[arg0][1] = arg3;
|
||||
}
|
||||
|
||||
void baModel_80292078(s32 arg0, f32 arg1){
|
||||
D_8037C130[arg0][0] = arg1;
|
||||
}
|
||||
|
||||
void baModel_setDirection(enum player_model_direction_e direction){
|
||||
if(direction != baModelDirection){
|
||||
if(direction == PLAYER_MODEL_DIR_KAZOOIE || PLAYER_MODEL_DIR_KAZOOIE == baModelDirection){
|
||||
//flip model
|
||||
yaw_setIdeal(mlNormalizeAngle(yaw_get() + 180.0f));
|
||||
yaw_applyIdeal();
|
||||
}
|
||||
}
|
||||
baModelDirection = direction;
|
||||
}
|
||||
|
||||
void baModel_setScale(f32 scale){
|
||||
if(osCicId + -6103){
|
||||
scale = scale*0.25;
|
||||
}
|
||||
baModelScale = scale;
|
||||
}
|
||||
|
||||
void baModel_setYaw(f32 angleDegrees){
|
||||
baModelYaw = mlNormalizeAngle(angleDegrees);
|
||||
}
|
||||
|
||||
void baModel_80292158(f32 arg0){
|
||||
D_8037C100[1] = arg0;
|
||||
baModel_8029217C(arg0);
|
||||
}
|
||||
|
||||
void baModel_8029217C(f32 arg0){
|
||||
D_8037C110[1] = arg0;
|
||||
}
|
||||
|
||||
void baModel_setPostDraw(void (*draw_func)(Gfx **gfx, Mtx **mtx, Vtx **vtx)){
|
||||
baModelPostDrawMethod = draw_func;
|
||||
}
|
||||
|
||||
void baModel_setDisplacement(f32 arg0[3]){
|
||||
ml_vec3f_copy(baModelDisplacement, arg0);
|
||||
}
|
||||
|
||||
void baModel_setYDisplacement(f32 arg0){
|
||||
baModelDisplacement[1] = arg0;
|
||||
}
|
||||
|
||||
void baModel_setVisible(s32 arg0){
|
||||
baModelIsVisible = arg0;
|
||||
}
|
||||
|
||||
void baModel_802921D4(f32 arg0[3]){
|
||||
if(func_8028EE84() == BSWATERGROUP_0_NONE){
|
||||
D_8037C150.unk0 = 1;
|
||||
D_8037C150.unk4[0] = arg0[0];
|
||||
D_8037C150.unk4[1] = arg0[1];
|
||||
D_8037C150.unk4[2] = arg0[2];
|
||||
}
|
||||
}
|
||||
|
||||
f32 baModel_getYaw(void){
|
||||
return baModelYaw;
|
||||
}
|
||||
|
||||
f32 baModel_80292230(void){
|
||||
return D_8037C100[1];
|
||||
}
|
||||
|
||||
void baModel_8029223C(f32 arg0[3]){
|
||||
baModel_80291A50(8, arg0);
|
||||
}
|
||||
|
||||
void baModel_80292260(f32 arg0[3]){
|
||||
baModel_80291A50(7, arg0);
|
||||
}
|
||||
|
||||
void baModel_80292284(f32 arg0[3], s32 arg1){
|
||||
f32 sp44[3];
|
||||
f32 sp38[3];
|
||||
|
||||
if(baMarker_get()->unk14_21 && baModelIsVisible){
|
||||
switch(baModel_getModelId()){
|
||||
case 0x34D:
|
||||
case 0x34E:
|
||||
case ASSET_34F_MODEL_BANJO_TERMITE: //802922E8
|
||||
case ASSET_359_MODEL_BANJO_WALRUS: //802922E8
|
||||
case ASSET_362_MODEL_BANJO_BEE:
|
||||
case ASSET_36F_MODEL_BANJO_PUMPKIN:
|
||||
case ASSET_374_MODEL_BANJO_CROC:
|
||||
func_8034A174(D_80363780, arg1 + 1, arg0);
|
||||
if(ml_isZero_vec3f(arg0)){
|
||||
_player_getPosition(arg0);
|
||||
}
|
||||
|
||||
arg0[1] += D_8037C130[arg1][0];
|
||||
if(D_8037C130[arg1][1] != 0.0f){
|
||||
func_80256E24(sp44, D_8037C130[arg1][2], mlNormalizeAngle(yaw_get() + D_8037C130[arg1][3]), 0.0f, 0.0f, D_8037C130[arg1][1]);
|
||||
arg0[0] += sp44[0];
|
||||
arg0[1] += sp44[1];
|
||||
arg0[2] += sp44[2];
|
||||
}
|
||||
func_802976C0(sp38);
|
||||
arg0[0] = arg0[0] + sp38[0];
|
||||
arg0[1] = arg0[1] + sp38[1];
|
||||
arg0[2] = arg0[2] + sp38[2];
|
||||
break;
|
||||
default: ////80292400
|
||||
_player_getPosition(arg0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
else{//L80292410
|
||||
_player_getPosition(arg0);
|
||||
if(arg1){
|
||||
arg0[1] += 33.0f;
|
||||
}
|
||||
else{
|
||||
arg0[1] += 75.0f;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void baModel_getPosition(f32* dst){
|
||||
f32 tmp1[3];
|
||||
f32 tmp2[3];
|
||||
baModel_80291A50(5,tmp1);
|
||||
baModel_80291A50(6,tmp2);
|
||||
ml_vec3f_add(dst, tmp1, tmp2);
|
||||
ml_vec3f_scale(dst, 0.5);
|
||||
}
|
||||
|
||||
void baModel_802924B8(f32 arg0[3]){
|
||||
baModel_80291A50(0xA, arg0);
|
||||
}
|
||||
|
||||
enum player_model_direction_e baModel_getDirection(void){
|
||||
return baModelDirection;
|
||||
}
|
||||
|
||||
void baModel_802924E8(f32 arg0[3]){
|
||||
switch(player_getTransformation()){
|
||||
case TRANSFORM_5_CROC:
|
||||
baModel_80291A50(5, arg0);
|
||||
break;
|
||||
case TRANSFORM_4_WALRUS: //L80292520
|
||||
baModel_80291A50(0xB, arg0);
|
||||
break;
|
||||
default: //L80292530
|
||||
baModel_80291A50(0x9, arg0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
s32 baModel_isVisible(void){
|
||||
return baModelIsVisible;
|
||||
}
|
||||
|
||||
void baModel_80292554(f32 arg0[3]){
|
||||
baModel_80291A50(0x9, arg0);
|
||||
}
|
||||
|
||||
void baModel_80292578(f32 arg0[3]){
|
||||
baModel_80291A50(0xA, arg0);
|
||||
}
|
||||
|
||||
void baModel_defrag(void){
|
||||
if(D_80363780){
|
||||
D_80363780 = func_8034A348(D_80363780);
|
||||
}
|
||||
}
|
@@ -42,7 +42,7 @@ void func_8029E48C(void){
|
||||
func_80297970(0.0f);
|
||||
}
|
||||
else{
|
||||
func_80297970(func_80257C48(sp1C, D_80364960, D_80364964));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364960, D_80364964));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -304,7 +304,7 @@ static void __bsant_recoil_init(int take_damage){
|
||||
func_8029C7F4(1,1,2,3);
|
||||
player_setYVelocity(510.0f);
|
||||
gravity_set(-1200.0f);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
D_8037D294 = 0;
|
||||
}
|
||||
@@ -335,7 +335,7 @@ static void __bsant_recoil_update(void){
|
||||
static void __bsant_recoil_end(void){
|
||||
func_80297CA8();
|
||||
gravity_reset();
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
func_8029E4EC();
|
||||
}
|
||||
@@ -396,7 +396,7 @@ void bsant_die_init(void){
|
||||
func_802BF2C0(30.0f);
|
||||
func_8029C984();
|
||||
D_8037D294 = 0;
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
func_8029E3C0(0, 2.9f);
|
||||
}
|
||||
|
@@ -20,7 +20,7 @@ void _bsbflip_802A2D60(void){
|
||||
if(!func_8029B300())
|
||||
func_80297970(0.0f);
|
||||
else
|
||||
func_80297970(func_80257C48(sp1C, D_80364A2C, D_80364A30));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364A2C, D_80364A30));
|
||||
}
|
||||
|
||||
void _bsbflip_802A2DC0(void){
|
||||
|
@@ -3,7 +3,7 @@
|
||||
#include "variables.h"
|
||||
|
||||
extern void func_8028FDC8(f32);
|
||||
extern void playerModel_setYDisplacement(f32);
|
||||
extern void baModel_setYDisplacement(f32);
|
||||
extern f32 func_8029B2D0(void);
|
||||
extern void func_802BFE50(f32, f32, f32);
|
||||
extern void func_80354030(f32[3], f32);
|
||||
@@ -47,7 +47,7 @@ void func_802A3404(void){
|
||||
}
|
||||
|
||||
void func_802A3430(void){
|
||||
playerModel_setYDisplacement(60.0f);
|
||||
baModel_setYDisplacement(60.0f);
|
||||
func_802991A8(3);
|
||||
func_80299234(500.0f, 2.0f);
|
||||
roll_setAngularVelocity(500.0f, 2.0f);
|
||||
@@ -63,7 +63,7 @@ void func_802A34C8(void){
|
||||
gravity_reset();
|
||||
func_80297B94();
|
||||
func_8029E070(0);
|
||||
playerModel_setYDisplacement(0.0f);
|
||||
baModel_setYDisplacement(0.0f);
|
||||
func_8029CB84();
|
||||
func_802991A8(1);
|
||||
func_80291548();
|
||||
@@ -287,7 +287,7 @@ void bsbfly_update(void){
|
||||
if(should_beak_bust())
|
||||
sp54 = BS_F_BBUSTER;
|
||||
|
||||
D_8037D320 = max_f(D_8037D320 - time_getDelta(), 0.0f);
|
||||
D_8037D320 = ml_max_f(D_8037D320 - time_getDelta(), 0.0f);
|
||||
if( D_8037D320 == 0.0f
|
||||
&& button_pressed(BUTTON_B)
|
||||
&& can_beak_bomb()
|
||||
@@ -462,7 +462,7 @@ void func_802A4430(void){
|
||||
pitch_setIdeal(0.0f);
|
||||
gravity_reset();
|
||||
func_80297B94();
|
||||
playerModel_setYDisplacement(0.0f);
|
||||
baModel_setYDisplacement(0.0f);
|
||||
func_80299CF4(SFX_31_BANJO_OHHWAAOOO, 1.0f, 0x7fff);
|
||||
func_80299D2C(SFX_61_CARTOONY_FALL, 1.0f, 0x7fff);
|
||||
D_8037D320 = 0.35f;
|
||||
@@ -532,10 +532,10 @@ void func_802A4748(void) {
|
||||
func_8029E070(1);
|
||||
FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 32750);
|
||||
func_80299CF4(SFX_36_BANJO_DOH, 1.0f, 28000);
|
||||
func_80250D94(1.0f, 0.5f, 0.5f);
|
||||
rumbleManager_80250D94(1.0f, 0.5f, 0.5f);
|
||||
item_dec(ITEM_14_HEALTH);
|
||||
func_802A46C8();
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
D_8037D344 = 0;
|
||||
}
|
||||
|
||||
@@ -612,7 +612,7 @@ void func_802A4A40(void) {
|
||||
func_80291548();
|
||||
func_8029CB84();
|
||||
func_8029E070(0);
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
}
|
||||
|
||||
void func_802A4A78(s32 arg0) {
|
||||
@@ -633,7 +633,7 @@ void func_802A4A78(s32 arg0) {
|
||||
func_802BB3DC(2, 100.0f, 0.85f);
|
||||
func_8028A274(0xD3, 1.2f);
|
||||
func_80299BFC(1.0f);
|
||||
func_80250D94(1.0f, 0.5f, 0.5f);
|
||||
rumbleManager_80250D94(1.0f, 0.5f, 0.5f);
|
||||
_player_getPosition(sp3C);
|
||||
func_80294980(sp30);
|
||||
func_80257F18(sp30, sp3C, &sp28);
|
||||
@@ -653,7 +653,7 @@ void func_802A4A78(s32 arg0) {
|
||||
func_8029E070(1);
|
||||
func_802914CC(4);
|
||||
func_802BFE50(12.0f, 10000.0f, 800.0f);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_802A3430();
|
||||
}
|
||||
|
||||
@@ -672,7 +672,7 @@ void func_802A4C34(s32 arg0) {
|
||||
|
||||
void func_802A4C88(s32 arg0) {
|
||||
func_80297B3C();
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_80297CA8();
|
||||
func_8029E070(0);
|
||||
func_80291548();
|
||||
@@ -726,7 +726,7 @@ void func_802A4D90(void) {
|
||||
func_8029C7F4(1, 1, 2, 3);
|
||||
player_setYVelocity(400.0f);
|
||||
gravity_set(-1800.0f);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_802914CC(4);
|
||||
func_802BFE50(12.0f, 10000.0f, 800.0f);
|
||||
}
|
||||
@@ -749,7 +749,7 @@ void func_802A4EC8(void) {
|
||||
|
||||
void func_802A4F44(void){
|
||||
gravity_reset();
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_802A34C8();
|
||||
}
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/playerModel.h"
|
||||
#include "core2/ba/model.h"
|
||||
|
||||
/* .data */
|
||||
const f32 D_80364A40 = 80.0f;
|
||||
@@ -38,7 +38,7 @@ void func_802A524C(void){
|
||||
if(!func_8029B300())
|
||||
func_80297970(0.0f);
|
||||
else
|
||||
func_80297970(func_80257C48(sp1C, D_80364A40, D_80364A44));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364A40, D_80364A44));
|
||||
}
|
||||
|
||||
int bslongleg_inSet(s32 move_indx){
|
||||
@@ -58,7 +58,7 @@ void func_802A531C(void){
|
||||
}
|
||||
|
||||
void func_802A5374(void){
|
||||
playerModel_80292078(1, -50.0f);
|
||||
baModel_80292078(1, -50.0f);
|
||||
func_8029B324(0, 0.03f);
|
||||
func_8029B324(1, 1.0f);
|
||||
func_8029E070(1);
|
||||
@@ -73,12 +73,12 @@ void func_802A5404(void){
|
||||
if(bslongleg_inSet(bs_getNextState()))
|
||||
return;
|
||||
|
||||
playerModel_80292078(1,0);
|
||||
baModel_80292078(1,0);
|
||||
func_8029B0C0();
|
||||
func_8029E070(0);
|
||||
func_8029E064(0);
|
||||
func_8029E0F4(0);
|
||||
playerModel_setDirection(PLAYER_MODEL_DIR_BANJO);
|
||||
baModel_setDirection(PLAYER_MODEL_DIR_BANJO);
|
||||
pitch_setIdeal(0.0f);
|
||||
roll_setIdeal(0.0f);
|
||||
func_802917C4(2);
|
||||
@@ -155,7 +155,7 @@ void bsblongleg_stand_enter(void){
|
||||
func_8028A010(ASSET_41_ANIM_BSLONGLEG_IDLE, 1.0f);
|
||||
func_8029C7F4(1,1,1,2);
|
||||
func_80297970(0.0f);
|
||||
playerModel_setDirection(PLAYER_MODEL_DIR_KAZOOIE);
|
||||
baModel_setDirection(PLAYER_MODEL_DIR_KAZOOIE);
|
||||
func_802A5374();
|
||||
}
|
||||
|
||||
@@ -428,7 +428,7 @@ void bsblongleg_slide_update(void){
|
||||
|
||||
func_802A531C();
|
||||
func_80299AAC();
|
||||
D_8037D358 = max_f(D_8037D358 - time_getDelta(), 0.0f);
|
||||
D_8037D358 = ml_max_f(D_8037D358 - time_getDelta(), 0.0f);
|
||||
|
||||
if(player_isSliding()){
|
||||
func_80294480(sp30);
|
||||
@@ -463,7 +463,7 @@ void func_802A6394(void){
|
||||
func_8029C7F4(1,1,3,2);
|
||||
func_80297970(0.0f);
|
||||
func_802A5374();
|
||||
playerModel_setDirection(PLAYER_MODEL_DIR_KAZOOIE);
|
||||
baModel_setDirection(PLAYER_MODEL_DIR_KAZOOIE);
|
||||
func_8029C674();
|
||||
}
|
||||
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
void playerModel_80292048(s32, f32, f32, f32);
|
||||
void baModel_80292048(s32, f32, f32, f32);
|
||||
void func_802875AC(AnimCtrl *, char *, s32);
|
||||
|
||||
/* .data */
|
||||
@@ -42,9 +42,9 @@ void bsbpeck_init(void){
|
||||
func_8029E070(1);
|
||||
gravity_set(D_80364A60);
|
||||
player_setYVelocity(D_80364A64);
|
||||
playerModel_80292048(1, -38.0f, 0.0f, 105.0f);
|
||||
playerModel_80292048(0, -38.0f, 0.0f, -7.0f);
|
||||
func_8028D638(0x23, 0x2A);
|
||||
baModel_80292048(1, -38.0f, 0.0f, 105.0f);
|
||||
baModel_80292048(0, -38.0f, 0.0f, -7.0f);
|
||||
baMarker_8028D638(0x23, 0x2A);
|
||||
D_8037D375 = 0;
|
||||
D_8037D374 = 0;
|
||||
D_8037D376 = 1;
|
||||
@@ -129,9 +129,9 @@ void bsbpeck_update(void){
|
||||
void bsbpeck_end(void){
|
||||
D_8037D376 = 0;
|
||||
ability_use(0xa);
|
||||
playerModel_80292048(1, 0.0f, 0.0f, 0.0f);
|
||||
playerModel_80292048(0, 0.0f, 0.0f, 0.0f);
|
||||
func_8028D638(0, 0);
|
||||
baModel_80292048(1, 0.0f, 0.0f, 0.0f);
|
||||
baModel_80292048(0, 0.0f, 0.0f, 0.0f);
|
||||
baMarker_8028D638(0, 0);
|
||||
func_8029E070(0);
|
||||
gravity_reset();
|
||||
}
|
||||
|
@@ -35,7 +35,7 @@ void bsbshock_charge_init(void){
|
||||
D_8037D382 = func_8030D90C();
|
||||
sfxsource_setSfxId(D_8037D382, SFX_2C_PULLING_NOISE);
|
||||
func_8030E04C(D_8037D382, 1.4f, 0.4f, -1.2f);
|
||||
playerModel_80292158(-50.0f);
|
||||
baModel_80292158(-50.0f);
|
||||
func_80298528(-50.0f);
|
||||
D_8037D380 = 1;
|
||||
D_8037D381 = 0;
|
||||
@@ -103,7 +103,7 @@ void bsbshock_charge_update(void){
|
||||
|
||||
if(animctrl_isAt(aCtrl, 0.5551f)){
|
||||
player_setYVelocity(180.0f);
|
||||
playerModel_80292158(0.0f);
|
||||
baModel_80292158(0.0f);
|
||||
func_80298528(50.0f);
|
||||
}
|
||||
|
||||
@@ -116,8 +116,8 @@ void bsbshock_charge_end(void){
|
||||
func_8030DA44(D_8037D382);
|
||||
func_8029E064(0);
|
||||
func_8029E070(0);
|
||||
if(playerModel_80292230() != 0.0f){
|
||||
playerModel_80292158(0.0f);
|
||||
if(baModel_80292230() != 0.0f){
|
||||
baModel_80292158(0.0f);
|
||||
func_80298528(50.0f);
|
||||
}
|
||||
}
|
||||
@@ -146,7 +146,7 @@ void bsbshock_init(void){
|
||||
func_8029E064(1);
|
||||
func_8029E070(1);
|
||||
ability_use(9);
|
||||
playerModel_80292158(-50.0f);
|
||||
baModel_80292158(-50.0f);
|
||||
func_80298528(-50.0f);
|
||||
D_8037D381 = 0;
|
||||
}
|
||||
@@ -190,6 +190,6 @@ void bsbshock_end(void){
|
||||
|
||||
func_8029E064(0);
|
||||
func_8029E070(0);
|
||||
playerModel_80292158(0.0f);
|
||||
baModel_80292158(0.0f);
|
||||
func_80298528(50.0f);
|
||||
}
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/playerModel.h"
|
||||
#include "core2/ba/model.h"
|
||||
|
||||
extern f32 func_8029494C(void);
|
||||
extern f32 func_8029B2D0(void);
|
||||
@@ -40,8 +40,8 @@ void func_802A71D8(void) {
|
||||
func_80299234(250.0f, 20.0f);
|
||||
} else {
|
||||
roll_range = 35.0f;
|
||||
yaw_range = func_80257C48(sp38, 3.1f, 2.4f);
|
||||
func_80299234(90.0f, func_80257C48(sp38, 3.8f, 2.2f));
|
||||
yaw_range = ml_interpolate_f(sp38, 3.1f, 2.4f);
|
||||
func_80299234(90.0f, ml_interpolate_f(sp38, 3.8f, 2.2f));
|
||||
}
|
||||
roll_setIdeal(ml_map_f(sp30, -1.0f, 1.0f, -roll_range, roll_range));
|
||||
yaw_setIdeal(mlNormalizeAngle(yaw_getIdeal() + ml_map_f(sp30, -1.0f, 1.0f, yaw_range, -yaw_range)));
|
||||
@@ -50,7 +50,7 @@ void func_802A71D8(void) {
|
||||
void func_802A7304() {
|
||||
f32 temp_f0;
|
||||
|
||||
pitch_setAngVel(func_80257C48(func_802A716C(), 70.0f, 30.0f), 0.9f);
|
||||
pitch_setAngVel(ml_interpolate_f(func_802A716C(), 70.0f, 30.0f), 0.9f);
|
||||
temp_f0 = func_8029B2DC();
|
||||
if (temp_f0 < 0.0f) {
|
||||
pitch_setIdeal(ml_map_f(temp_f0, -1.0f, 0.0f, 275.0f, 360.0f));
|
||||
@@ -77,7 +77,7 @@ void func_802A744C(void) {
|
||||
func_8029B324(1, 1.0f);
|
||||
func_8029E070(1);
|
||||
func_80294378(3);
|
||||
playerModel_setYDisplacement(60.0f);
|
||||
baModel_setYDisplacement(60.0f);
|
||||
func_80297B64(2.0f);
|
||||
}
|
||||
|
||||
@@ -107,7 +107,7 @@ void func_802A75B0(void) {
|
||||
func_8029B0C0();
|
||||
func_8029E070(0);
|
||||
func_80294378(1);
|
||||
playerModel_setYDisplacement(0.0f);
|
||||
baModel_setYDisplacement(0.0f);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,7 +189,7 @@ void func_802A7838(void) {
|
||||
func_802A7304();
|
||||
if (D_8037D390 > 0.0f) {
|
||||
func_802A77D8();
|
||||
D_8037D390 = max_f(D_8037D390 - 10.0f, 0.0f);
|
||||
D_8037D390 = ml_max_f(D_8037D390 - 10.0f, 0.0f);
|
||||
}
|
||||
if (animctrl_isAt(anim_ctrl, 0.1f)) {
|
||||
func_8030EB88(SFX_0_BLOOP, 1.2f, 1.4f);
|
||||
@@ -295,7 +295,7 @@ void func_802A7BD0(void) {
|
||||
func_8029797C(sp3C);
|
||||
func_802979AC(sp3C, func_80297A64());
|
||||
func_8029C7F4(1, 1, 2, 3);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
func_802A744C();
|
||||
}
|
||||
@@ -323,7 +323,7 @@ void func_802A7CA8(void) {
|
||||
|
||||
void func_802A7D74(void) {
|
||||
func_80297CA8();
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
func_802A75B0();
|
||||
}
|
||||
@@ -400,7 +400,7 @@ void func_802A7F6C(void) {
|
||||
pitch_setIdeal(275.0f);
|
||||
roll_setIdeal(0.0f);
|
||||
D_8037D396 = 0;
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_8029E3C0(0, 0.0f);
|
||||
func_8029E3C0(1, 0.0f);
|
||||
func_802906A4(3);
|
||||
@@ -463,7 +463,7 @@ void func_802A82D4(void) {
|
||||
func_802906A4(1);
|
||||
func_80291548();
|
||||
func_8024BD08(0);
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
if (bs_getNextState() != BS_5A_LOADZONE) {
|
||||
func_80346CE8();
|
||||
}
|
||||
@@ -517,7 +517,7 @@ void func_802A846C(void) {
|
||||
func_8029CCC4();
|
||||
sp28 = func_8029494C();
|
||||
if (bs_getPrevState() == 0xF) {
|
||||
sp28 = max_f(sp28, 600.0f);
|
||||
sp28 = ml_max_f(sp28, 600.0f);
|
||||
}
|
||||
if (sp28 > 80.0f) {
|
||||
animctrl_reset(temp_s0);
|
||||
@@ -553,7 +553,7 @@ void func_802A85EC(void) {
|
||||
particleEmitter_setParticleVelocityRange(sp34, -30.0f, -30.0f, -30.0f, 30.0f, 30.0f, 30.0f);
|
||||
particleEmitter_emitN(sp34, 1);
|
||||
if (D_8037D398 < 0.0f) {
|
||||
D_8037D398 += max_f(mlAbsF(D_8037D398) * 0.1, 50.0f);
|
||||
D_8037D398 += ml_max_f(mlAbsF(D_8037D398) * 0.1, 50.0f);
|
||||
player_setYVelocity(D_8037D398);
|
||||
}
|
||||
if (func_8028B2E8()) {
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/playerModel.h"
|
||||
#include "core2/ba/model.h"
|
||||
|
||||
/* .data */
|
||||
f32 D_80364A90 = 30.0f;
|
||||
@@ -91,7 +91,7 @@ void func_802A89D4(void){
|
||||
func_80297970(0.0f);
|
||||
}
|
||||
else{
|
||||
func_80297970(func_80257C48(sp24, func_802A8900(), func_802A88B0()));
|
||||
func_80297970(ml_interpolate_f(sp24, func_802A8900(), func_802A88B0()));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -105,7 +105,7 @@ void func_802A8A40(void){
|
||||
roll_setAngularVelocity(1000.0f, 12.0f);
|
||||
miscflag_set(3);
|
||||
func_8029CF48(4,1,0.24f);
|
||||
playerModel_setDirection(PLAYER_MODEL_DIR_KAZOOIE);
|
||||
baModel_setDirection(PLAYER_MODEL_DIR_KAZOOIE);
|
||||
}
|
||||
|
||||
void func_802A8AD8(void){
|
||||
@@ -134,7 +134,7 @@ void func_802A8BB0(void){
|
||||
if(bsbtrot_inSet(next_state))
|
||||
return;
|
||||
|
||||
playerModel_setDirection(PLAYER_MODEL_DIR_BANJO);
|
||||
baModel_setDirection(PLAYER_MODEL_DIR_BANJO);
|
||||
func_8029B0C0();
|
||||
func_8029E070(0);
|
||||
func_8029E064(0);
|
||||
@@ -523,7 +523,7 @@ void bsbtrot_slide_update(void){
|
||||
if(func_80291698(3))
|
||||
func_802A87C0();
|
||||
func_80299AAC();
|
||||
D_8037D3A0 = max_f(D_8037D3A0-time_getDelta(), 0.0f);
|
||||
D_8037D3A0 = ml_max_f(D_8037D3A0-time_getDelta(), 0.0f);
|
||||
if(player_shouldSlideTrot()){
|
||||
func_80294480(sp30);
|
||||
func_8025801C(sp30, &sp2C);
|
||||
@@ -680,7 +680,7 @@ void bsbtrot_unk79_init(void){
|
||||
func_8029C7F4(1,1,3,2);
|
||||
func_80297970(0.0f);
|
||||
func_802A8A40();
|
||||
playerModel_setDirection(PLAYER_MODEL_DIR_KAZOOIE);
|
||||
baModel_setDirection(PLAYER_MODEL_DIR_KAZOOIE);
|
||||
func_8029C674();
|
||||
}
|
||||
|
||||
@@ -721,7 +721,7 @@ void bsbtrot_ow_init(void){
|
||||
func_802978DC(6);
|
||||
player_setYVelocity(func_802987C4());
|
||||
gravity_set(func_802987E4());
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
}
|
||||
|
||||
@@ -748,7 +748,7 @@ void bsbtrot_ow_update(void){
|
||||
void bsbtrot_ow_end(void){
|
||||
func_80297CA8();
|
||||
gravity_reset();
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
func_802A8BB0();
|
||||
}
|
||||
|
@@ -19,7 +19,7 @@ void func_802AA400(void){
|
||||
if(!func_8029B300()){
|
||||
func_80297970(0.0f);
|
||||
}else{
|
||||
func_80297970(func_80257C48(sp1C, D_80364AD0, D_80364AD4));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364AD0, D_80364AD4));
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -119,7 +119,7 @@ void bsbbuster_update(void){
|
||||
D_8037D2B4++;
|
||||
}
|
||||
if(D_8037D2B6 == 0 && func_8028B254(0x4b)){
|
||||
func_80250D94(1.0f, 0.3f, 0.4f);
|
||||
rumbleManager_80250D94(1.0f, 0.3f, 0.4f);
|
||||
D_8037D2B6++;
|
||||
}
|
||||
D_8037D2B9 = miscflag_isTrue(8);
|
||||
|
@@ -8,7 +8,7 @@ f32 func_8029B33C(void);
|
||||
void func_8029797C(f32);
|
||||
void func_80297970(f32);
|
||||
|
||||
void playerModel_setYDisplacement(f32);
|
||||
void baModel_setYDisplacement(f32);
|
||||
void func_80297BF8(f32);
|
||||
void func_802BFE50(f32, f32, f32);
|
||||
void func_80299234(f32, f32);
|
||||
@@ -94,7 +94,7 @@ void func_802A0750(void){
|
||||
void _bsbeefly_end(void){
|
||||
if(bsBeeFly_inSet(bs_getNextState()))
|
||||
return;
|
||||
playerModel_setYDisplacement(0.0f);
|
||||
baModel_setYDisplacement(0.0f);
|
||||
roll_setIdeal(0.0f);
|
||||
pitch_setIdeal(0.0f);
|
||||
func_80291548();
|
||||
@@ -107,7 +107,7 @@ void _bsbeefly_end(void){
|
||||
void func_802A07F8(void){
|
||||
if(bsBeeFly_inSet(bs_getPrevState()))
|
||||
return;
|
||||
playerModel_setYDisplacement(65.0f);
|
||||
baModel_setYDisplacement(65.0f);
|
||||
func_802991A8(3);
|
||||
roll_setAngularVelocity(500.0f, 2.0f);
|
||||
func_802A0724();
|
||||
|
@@ -15,7 +15,7 @@ f32 func_80289F70(void);
|
||||
void func_8028A3B8(f32, f32);
|
||||
f32 func_8029B2E8(void);
|
||||
f32 func_8029B33C(void);
|
||||
f32 func_80257C48(f32, f32, f32);
|
||||
f32 ml_interpolate_f(f32, f32, f32);
|
||||
f32 func_8029B30C();
|
||||
|
||||
/* .data */
|
||||
@@ -54,7 +54,7 @@ void func_802A1020(void){
|
||||
func_80297970(0.0f);
|
||||
}
|
||||
else{
|
||||
func_80297970(func_80257C48(sp1c, D_803649E0, D_803649E4));
|
||||
func_80297970(ml_interpolate_f(sp1c, D_803649E0, D_803649E4));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -331,7 +331,7 @@ void func_802A18E8(s32 arg0){
|
||||
func_8029C7F4(1, 1, 2, 3);
|
||||
player_setYVelocity(510.0f);
|
||||
gravity_set(-1200.0f);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
D_8037D2D4 = 0;
|
||||
}
|
||||
@@ -364,7 +364,7 @@ void func_802A1A50(void){
|
||||
void func_802A1B28(void){
|
||||
func_80297CA8();
|
||||
gravity_reset();
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
func_802A02C0();
|
||||
}
|
||||
@@ -422,7 +422,7 @@ void bsbeemain_die_init(void){
|
||||
player_setYVelocity(420.0f);
|
||||
gravity_set(-1200.0f);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
func_802914CC(0xd);
|
||||
func_802BF2C0(30.0f);
|
||||
@@ -458,7 +458,7 @@ void func_802A1DD8(void){
|
||||
break;
|
||||
case 3:
|
||||
if(0.0f < D_8037D2D0){
|
||||
D_8037D2D0 = max_f(0.0f, D_8037D2D0 - 10.0f);
|
||||
D_8037D2D0 = ml_max_f(0.0f, D_8037D2D0 - 10.0f);
|
||||
}
|
||||
break;
|
||||
}//L802A1EFC
|
||||
@@ -507,7 +507,7 @@ void func_802A2014(void){
|
||||
}
|
||||
|
||||
void func_802A2054(void){
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_8025A2FC(-1, 0xFA0);
|
||||
func_8024BD08(1);
|
||||
func_80291548();
|
||||
@@ -524,7 +524,7 @@ void func_802A2098(void){
|
||||
func_8025A2FC(0, 0xFA0);
|
||||
func_8025A6EC(COMUSIC_42_NOTEDOOR_OPENING_FANFARE, -1);
|
||||
func_8029151C(0xC);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_8029E3C0(0, 3.0f);
|
||||
}
|
||||
|
||||
|
@@ -14,7 +14,7 @@ void func_802AAE80(void){
|
||||
if(func_8029B300() == 0)
|
||||
func_80297970(0.0f);
|
||||
else
|
||||
func_80297970(func_80257C48(sp1C, D_80364AF0, D_80364AF4));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364AF0, D_80364AF4));
|
||||
}
|
||||
|
||||
void func_802AAEE0(void){
|
||||
@@ -91,14 +91,14 @@ int bscarry_inSet(enum bs_e state){
|
||||
void bscarry_interrupt(void){
|
||||
switch(bs_getInterruptType()){
|
||||
case 7:
|
||||
func_802948F8(func_8028D688());
|
||||
func_802948F8(baMarker_8028D688());
|
||||
break;
|
||||
case 8:
|
||||
func_8029A86C(2);
|
||||
bs_setState(BS_3C_TALK);
|
||||
break;
|
||||
case 0x12:
|
||||
func_8028DE6C(carriedObject_getActorID());
|
||||
func_8028DE6C(baMarker_getCarriedObjectActorId());
|
||||
break;
|
||||
case BS_INTR_16_THROW_CARRIED_OBJ:
|
||||
if(func_802916CC(1)){
|
||||
|
@@ -70,7 +70,7 @@ void func_802ABF54(void){
|
||||
func_80297970(0.0f);
|
||||
}
|
||||
else{
|
||||
func_80297970(func_80257C48(sp1C, D_80364B00, func_802ABDC0()));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364B00, func_802ABDC0()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -353,7 +353,7 @@ static void __bscroc_recoil_init(s32 damage){
|
||||
func_8029C7F4(1,1,2,3);
|
||||
player_setYVelocity(510.0f);
|
||||
gravity_set(-1200.0f);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
D_8037D3EC = 0;
|
||||
}
|
||||
@@ -383,7 +383,7 @@ static void __bscroc_recoil_update(void){
|
||||
void __bscroc_recoil_end(void){
|
||||
func_80297CA8();
|
||||
gravity_reset();
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
func_802ABFBC();
|
||||
}
|
||||
@@ -439,7 +439,7 @@ void bscroc_die_init(void){
|
||||
player_setYVelocity(420.0f);
|
||||
gravity_set(-1200.0f);
|
||||
pitch_setAngVel(1000.0f, 12.0f);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
func_802914CC(0xd);
|
||||
func_802BF2C0(30.0f);
|
||||
@@ -477,7 +477,7 @@ void bscroc_die_update(void){
|
||||
break;
|
||||
case 3:
|
||||
if(0.0f < D_8037D3E0)
|
||||
D_8037D3E0 = max_f(0.0f, D_8037D3E0 - 10.0f);
|
||||
D_8037D3E0 = ml_max_f(0.0f, D_8037D3E0 - 10.0f);
|
||||
break;
|
||||
}//L802ACECC
|
||||
|
||||
@@ -612,7 +612,7 @@ void func_802AD318(void){
|
||||
void bscroc_eat_good_init(void){
|
||||
func_8028A010(0x122, 0.25f);
|
||||
func_8029C7F4(1,1,1,2);
|
||||
playerModel_setPostDraw(func_802AD2A8);
|
||||
baModel_setPostDraw(func_802AD2A8);
|
||||
D_8037D3E8 = assetcache_get(func_80294974());
|
||||
D_8037D3F0 = 1.0f;
|
||||
D_8037D3F5 = 0;
|
||||
@@ -628,7 +628,7 @@ void bscroc_eat_good_update(void){
|
||||
AnimCtrl *aCtrl = _player_getAnimCtrlPtr();
|
||||
|
||||
func_802ABE70();
|
||||
D_8037D3F0 = max_f(0.1f, D_8037D3F0 - 0.05);
|
||||
D_8037D3F0 = ml_max_f(0.1f, D_8037D3F0 - 0.05);
|
||||
func_80299628(0);
|
||||
func_802ABF54();
|
||||
if(animctrl_isAt(aCtrl, 0.99f)){
|
||||
@@ -661,7 +661,7 @@ void bscroc_eat_good_update(void){
|
||||
void bscroc_eat_good_end(void){
|
||||
D_8037D3F5 = 0;
|
||||
assetcache_release(D_8037D3E8);
|
||||
playerModel_setPostDraw(0);
|
||||
baModel_setPostDraw(0);
|
||||
func_802ABFBC();
|
||||
}
|
||||
|
||||
|
@@ -56,7 +56,7 @@ void bsdie_init(void){
|
||||
func_8029C984();
|
||||
func_8029E3C0(0,2.9f);
|
||||
D_8037D414 = 0;
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
}
|
||||
|
||||
@@ -73,7 +73,7 @@ void bsdie_update(void){
|
||||
player_setYVelocity(400.0f);
|
||||
func_80299DB8();
|
||||
FUNC_8030E624(SFX_39_BANJO_AYE_2, 1.0f, 18000);
|
||||
func_80250D94(1.0f, 1.0f, 0.4f);
|
||||
rumbleManager_80250D94(1.0f, 1.0f, 0.4f);
|
||||
_bsdie_802ADE20();
|
||||
D_8037D414 = 1;
|
||||
}
|
||||
@@ -82,12 +82,12 @@ void bsdie_update(void){
|
||||
if(_bsdie_802ADE00()){
|
||||
func_80299E00();
|
||||
FUNC_8030E624(SFX_38_BANJO_AYE_1, 1.0f, 18000);
|
||||
func_80250D94(1.0f, 0.5f, 0.4f);
|
||||
rumbleManager_80250D94(1.0f, 0.5f, 0.4f);
|
||||
D_8037D414 = 2;
|
||||
}
|
||||
break;
|
||||
case 2://L802AE184
|
||||
D_8037D410 = max_f(D_8037D410 - 12.0f, 0.0f);
|
||||
D_8037D410 = ml_max_f(D_8037D410 - 12.0f, 0.0f);
|
||||
if(140.0f < D_8037D410)
|
||||
func_802929F8();
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user