Merge branch 'mr-origin-89'
This commit is contained in:
@@ -388,7 +388,7 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
||||
return;
|
||||
player_getPosition(spAC);
|
||||
spAC[1] += 40.0f;
|
||||
if(func_802458E0(spAC, actor, 0x87) == 0)
|
||||
if(collisionTri_isHitFromAbove_actor(spAC, actor, 0x87) == 0)
|
||||
return;
|
||||
volatileFlag_set(VOLATILE_FLAG_1E, 1);
|
||||
if(fileProgressFlag_get(((actor->unkF4_8 - 1) ^ 1) + 0x49)){
|
||||
|
@@ -5,7 +5,7 @@
|
||||
|
||||
void func_802D77D4(Actor *this);
|
||||
extern void player_setClimbParams(f32[3], f32[3], f32, u32);
|
||||
extern f32 func_80258640(f32[3], f32[3]);
|
||||
extern f32 ml_vec3f_horizontal_distance_zero_likely(f32[3], f32[3]);
|
||||
|
||||
typedef struct {
|
||||
f32 unk0[3];
|
||||
@@ -40,8 +40,8 @@ s32 func_802D76E0(Actor *this, f32 *arg1) {
|
||||
return FALSE;
|
||||
}
|
||||
if (sp28 && temp_v0) {
|
||||
sp30 = func_80258640(this->position, sp40);
|
||||
if (func_80258640(this->position, sp34) < sp30) {
|
||||
sp30 = ml_vec3f_horizontal_distance_zero_likely(this->position, sp40);
|
||||
if (ml_vec3f_horizontal_distance_zero_likely(this->position, sp34) < sp30) {
|
||||
sp28 = 0;
|
||||
}
|
||||
}
|
||||
|
@@ -26,7 +26,7 @@ extern void warp_smExitBanjosHouse(s32, s32);
|
||||
extern void func_80335110(s32);
|
||||
|
||||
extern void func_8024E60C(s32, s32[3]);
|
||||
extern void func_8024E71C(s32, f32*);
|
||||
extern void controller_getJoystick(s32, f32*);
|
||||
|
||||
extern char *gcpausemenu_TimeToA(int);
|
||||
extern struct5Bs *func_803097A0(void);
|
||||
@@ -334,7 +334,7 @@ void func_802C4C14(Actor *this){
|
||||
else{//L802C4D24
|
||||
func_8024E60C(0, sp74);
|
||||
func_8024E55C(0, sp5C);
|
||||
func_8024E71C(0, &sp54);
|
||||
controller_getJoystick(0, &sp54);
|
||||
switch(this->state){
|
||||
case 2:
|
||||
case 5:
|
||||
|
@@ -3,7 +3,7 @@
|
||||
#include "variables.h"
|
||||
#include <core1/viewport.h>
|
||||
|
||||
extern void func_8024E71C(s32, f32*);
|
||||
extern void controller_getJoystick(s32, f32*);
|
||||
extern f32 ml_acosf(f32);
|
||||
extern f32 player_getYaw(void);
|
||||
extern void particleEmitter_setSphericalParticleVelocityRange(ParticleEmitter *this, f32 pitch_min, f32 yaw_min, f32 radial_min, f32 pitch_max, f32 yaw_max, f32 radial_max);
|
||||
@@ -79,7 +79,7 @@ void func_8029B11C(void) {
|
||||
}
|
||||
|
||||
void func_8029B174(void) {
|
||||
func_8024E71C(0, &D_8037D1A0.unk1C);
|
||||
controller_getJoystick(0, &D_8037D1A0.unk1C);
|
||||
if (D_8037D1A0.unk34) {
|
||||
D_8037D1A0.unk1C[0] = D_8037D1A0.unk1C[1] = 0.0f;
|
||||
}
|
||||
|
@@ -7,7 +7,7 @@
|
||||
#include "core2/ba/physics.h"
|
||||
#include <core1/viewport.h>
|
||||
|
||||
extern void func_8024E71C(s32, f32*);
|
||||
extern void controller_getJoystick(s32, f32*);
|
||||
extern f32 ml_acosf(f32);
|
||||
extern f32 player_getYaw(void);
|
||||
extern void particleEmitter_setSphericalParticleVelocityRange(ParticleEmitter *this, f32 pitch_min, f32 yaw_min, f32 radial_min, f32 pitch_max, f32 yaw_max, f32 radial_max);
|
||||
|
@@ -4,7 +4,7 @@
|
||||
|
||||
#include "SnS.h"
|
||||
|
||||
extern f32 func_80258640(f32 [3], f32[3]);
|
||||
extern f32 ml_vec3f_horizontal_distance_zero_likely(f32 [3], f32[3]);
|
||||
extern void func_8025A788(enum comusic_e, f32, f32);
|
||||
extern void func_8031CC40(enum map_e, s32);
|
||||
extern void fxRipple_802F363C(f32);
|
||||
@@ -565,13 +565,13 @@ void func_802D4680(Actor *this){
|
||||
player_getPosition(sp1C);
|
||||
switch(this->state){
|
||||
case 0:
|
||||
if(150.0f < func_80258640(this->position, sp1C)){
|
||||
if(150.0f < ml_vec3f_horizontal_distance_zero_likely(this->position, sp1C)){
|
||||
subaddie_set_state(this, 1);
|
||||
D_803676AC = 0;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if(func_80258640(this->position, sp1C) < 150.0f && func_8028F20C()){
|
||||
if(ml_vec3f_horizontal_distance_zero_likely(this->position, sp1C) < 150.0f && func_8028F20C()){
|
||||
if(func_8028ECAC() == 0 || func_8028ECAC() == BSGROUP_8_TROT){
|
||||
if(map_get() == MAP_8E_GL_FURNACE_FUN){
|
||||
volatileFlag_set(VOLATILE_FLAG_0_IN_FURNACE_FUN_QUIZ, 0);
|
||||
|
@@ -626,7 +626,7 @@ s32 getGameMode(void){
|
||||
|
||||
int func_802E4A08(void){
|
||||
return (D_8037E8E0.game_mode == GAME_MODE_6_FILE_PLAYBACK)
|
||||
|| (D_8037E8E0.game_mode == 5)
|
||||
|| (D_8037E8E0.game_mode == GAME_MODE_5_UNKNOWN)
|
||||
|| (D_8037E8E0.game_mode == GAME_MODE_7_ATTRACT_DEMO)
|
||||
|| (D_8037E8E0.game_mode == GAME_MODE_8_BOTTLES_BONUS)
|
||||
|| (D_8037E8E0.game_mode == GAME_MODE_9_BANJO_AND_KAZOOIE)
|
||||
|
@@ -488,7 +488,7 @@ void func_80319EA4(void) {
|
||||
return;
|
||||
|
||||
func_8024E55C(0, sp58);
|
||||
func_8024E71C(0, sp4C);
|
||||
controller_getJoystick(0, sp4C);
|
||||
for(phi_s0 = 0; phi_s0 < 4; phi_s0++){
|
||||
gczoombox_update(D_803830E0->unk24[phi_s0]);
|
||||
}
|
||||
|
@@ -57,7 +57,7 @@ void func_803216D0(enum map_e map){
|
||||
chTreasurehunt_resetProgress();
|
||||
break;
|
||||
case MAP_1B_MMM_MAD_MONSTER_MANSION:
|
||||
mmm_resetFlowerPots();
|
||||
chFlowerpot_reset();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@@ -1190,9 +1190,11 @@ static bool __subaddie_set_state(Actor *this, s32 state)
|
||||
|
||||
void func_803285E8(Actor *this, f32 anim_start_position, int direction){
|
||||
animctrl_setStart(this->animctrl, anim_start_position);
|
||||
if(direction != -1){
|
||||
|
||||
if (direction != -1) {
|
||||
animctrl_setDirection(this->animctrl, direction);
|
||||
}
|
||||
|
||||
this->sound_timer = anim_start_position;
|
||||
}
|
||||
|
||||
@@ -1275,8 +1277,8 @@ int actor_animationIsAt(Actor *this, f32 arg1){
|
||||
}
|
||||
}
|
||||
|
||||
void func_803289EC(Actor *this , f32 arg1, int direction){
|
||||
func_803285E8(this, arg1, direction);
|
||||
void func_803289EC(Actor *this , f32 anim_start_position, int direction){
|
||||
func_803285E8(this, anim_start_position, direction);
|
||||
animctrl_start(this->animctrl, "subaddie.c", 0x6b1);
|
||||
}
|
||||
|
||||
@@ -1316,9 +1318,10 @@ int subaddie_maybe_set_state(Actor *this, s32 myAnimId, f32 chance){
|
||||
return 0;
|
||||
}
|
||||
|
||||
void subaddie_set_state_with_direction(Actor * this, s32 myAnimId, f32 arg2, s32 direction){
|
||||
if(__subaddie_set_state(this, myAnimId) && this->animctrl)
|
||||
func_803289EC(this, arg2, direction);
|
||||
void subaddie_set_state_with_direction(Actor * this, s32 myAnimId, f32 anim_start_position, s32 direction){
|
||||
if (__subaddie_set_state(this, myAnimId) && this->animctrl) {
|
||||
func_803289EC(this, anim_start_position, direction);
|
||||
}
|
||||
}
|
||||
|
||||
bool subaddie_maybe_set_state_position_direction(Actor *this, s32 myAnimId, f32 start_position, s32 direction, f32 probability) {
|
||||
|
@@ -4,55 +4,49 @@
|
||||
|
||||
#define CORE2_C31A0_VEC_COUNT 0x21
|
||||
|
||||
void func_8034A130(struct5Bs *this){
|
||||
f32 (*iPtr)[3];
|
||||
for(iPtr = this->unk0; iPtr < this->unk4; iPtr++){
|
||||
void func_8034A130(struct5Bs *this) {
|
||||
f32(*iPtr)[3];
|
||||
|
||||
for (iPtr = this->unk0; iPtr < this->unk4; iPtr++) {
|
||||
(*iPtr)[0] = (*iPtr)[1] = (*iPtr)[2] = 0.0f;
|
||||
}
|
||||
}
|
||||
|
||||
void func_8034A174(struct5Bs *this, s32 indx,f32 dst[3]){
|
||||
dst[0] = this->unk0[indx][0];
|
||||
dst[1] = this->unk0[indx][1];
|
||||
dst[2] = this->unk0[indx][2];
|
||||
void func_8034A174(struct5Bs *this, s32 indx, f32 dst[3]) {
|
||||
TUPLE_COPY(dst, this->unk0[indx])
|
||||
}
|
||||
|
||||
void func_8034A1B4(struct5Bs *this, s32 indx, s32 dst[3]){
|
||||
dst[0] = (s32)this->unk0[indx][0];
|
||||
dst[1] = (s32)this->unk0[indx][1];
|
||||
dst[2] = (s32)this->unk0[indx][2];
|
||||
void func_8034A1B4(struct5Bs *this, s32 indx, s32 dst[3]) {
|
||||
TUPLE_COPY(dst, this->unk0[indx])
|
||||
}
|
||||
|
||||
void func_8034A214(struct5Bs *this, s32 indx1, s32 indx2, f32 dst[3]){
|
||||
dst[0] = this->unk0[indx2][0] - this->unk0[indx1][0];
|
||||
dst[1] = this->unk0[indx2][1] - this->unk0[indx1][1];
|
||||
dst[2] = this->unk0[indx2][2] - this->unk0[indx1][2];
|
||||
void func_8034A214(struct5Bs *this, s32 indx1, s32 indx2, f32 dst[3]) {
|
||||
TUPLE_DIFF_COPY(dst, this->unk0[indx2], this->unk0[indx1])
|
||||
ml_vec3f_normalize(dst);
|
||||
}
|
||||
|
||||
void func_8034A2A8(struct5Bs *this){
|
||||
void func_8034A2A8(struct5Bs *this) {
|
||||
free(this);
|
||||
}
|
||||
|
||||
struct5Bs *func_8034A2C8(void){
|
||||
struct5Bs *this = (struct5Bs *)malloc(sizeof(struct5Bs) + sizeof(f32[3])*CORE2_C31A0_VEC_COUNT);
|
||||
this->unk0 = (f32(*)[3])((s32)this + sizeof(struct5Bs));
|
||||
this->unk4 = (f32(*)[3])((s32)this->unk0 + sizeof(f32[3])*CORE2_C31A0_VEC_COUNT);
|
||||
struct5Bs *func_8034A2C8(void) {
|
||||
struct5Bs *this = (struct5Bs *) malloc(sizeof(struct5Bs) + sizeof(f32[3]) * CORE2_C31A0_VEC_COUNT);
|
||||
this->unk0 = (f32(*)[3])((s32) this + sizeof(struct5Bs));
|
||||
this->unk4 = (f32(*)[3])((s32) this->unk0 + sizeof(f32[3]) * CORE2_C31A0_VEC_COUNT);
|
||||
func_8034A130(this);
|
||||
return this;
|
||||
}
|
||||
|
||||
void func_8034A308(struct5Bs *this, s32 indx, f32 arg2[3]){
|
||||
this->unk0[indx][0] = arg2[0];
|
||||
this->unk0[indx][1] = arg2[1];
|
||||
this->unk0[indx][2] = arg2[2];
|
||||
void func_8034A308(struct5Bs *this, s32 indx, f32 arg2[3]) {
|
||||
TUPLE_COPY(this->unk0[indx], arg2)
|
||||
}
|
||||
|
||||
struct5Bs *func_8034A348(struct5Bs *this){
|
||||
if(this){
|
||||
this = (struct5Bs *)defrag(this);
|
||||
this->unk0 = (f32(*)[3])(((s32)this + sizeof(struct5Bs)));
|
||||
this->unk4 = (f32(*)[3])((s32)this->unk0 + sizeof(f32[3])*CORE2_C31A0_VEC_COUNT);
|
||||
struct5Bs *func_8034A348(struct5Bs *this) {
|
||||
if (this) {
|
||||
this = (struct5Bs *) defrag(this);
|
||||
this->unk0 = (f32(*)[3])(((s32) this + sizeof(struct5Bs)));
|
||||
this->unk4 = (f32(*)[3])((s32) this->unk0 + sizeof(f32[3]) * CORE2_C31A0_VEC_COUNT);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
|
@@ -41,7 +41,7 @@ Struct_Core2_C9F00_1 D_803725C0[] = {
|
||||
|
||||
|
||||
void func_80351DE0(Struct6Bs *, Struct68s *);
|
||||
extern void MMM_func_8038ADF0(void *, Struct68s *);
|
||||
extern void chTumblar_init(void *, Struct68s *);
|
||||
extern void func_80387940(void *, Struct68s *);
|
||||
extern void GV_func_80387960(void *, Struct68s *);
|
||||
extern void func_80387980(void *, Struct68s *);
|
||||
@@ -53,7 +53,7 @@ extern void CC_func_80387A20(void *, Struct68s *);
|
||||
extern void func_80351FE0(void *, Struct68s *);
|
||||
|
||||
void func_80351E60(Struct6Bs *, Struct68s *, f32);
|
||||
extern void func_8038AF90(void *, Struct68s *, f32);
|
||||
extern void chTumblar_update(void *, Struct68s *, f32);
|
||||
extern void func_8038B790(void *, Struct68s *, f32);
|
||||
extern void CCW_func_80387A40(void *, Struct68s *, f32);
|
||||
extern void func_80352114(void *, Struct68s *, f32);
|
||||
@@ -61,7 +61,7 @@ extern void func_80352114(void *, Struct68s *, f32);
|
||||
Struct_Core2_C9F00_0 D_803725F4[] = {
|
||||
{ NULL, NULL},
|
||||
{func_80351DE0, func_80351E60},
|
||||
{MMM_func_8038ADF0, func_8038AF90},
|
||||
{chTumblar_init, chTumblar_update},
|
||||
{ NULL, NULL},
|
||||
{ NULL, func_8038B790},
|
||||
{func_80387940, CCW_func_80387A40},
|
||||
@@ -100,17 +100,20 @@ Actor *func_80350E90(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
||||
|
||||
temp_s0 = &D_803861B0.unk4[marker->actrArrayIdx];
|
||||
temp_v0 = temp_s0->unkC;
|
||||
|
||||
if (temp_v0 == NULL) {
|
||||
return 0;
|
||||
} else {
|
||||
if (temp_s0->unk8 != NULL) {
|
||||
temp_s0->unk8(&temp_s0->local, temp_s0, temp_s0->unk14, temp_s0->unk20, temp_s0->unk2C, temp_v0, gfx, mtx, vtx);
|
||||
} else {
|
||||
modelRender_setDepthMode(MODEL_RENDER_DEPTH_FULL);
|
||||
modelRender_draw(gfx, mtx, temp_s0->unk14, temp_s0->unk20, temp_s0->unk2C, NULL, temp_s0->unkC);
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
return 0;
|
||||
|
||||
if (temp_s0->unk8 != NULL) {
|
||||
temp_s0->unk8(&temp_s0->local, temp_s0, temp_s0->position, temp_s0->unk20, temp_s0->unk2C, temp_v0, gfx, mtx, vtx);
|
||||
}
|
||||
else {
|
||||
modelRender_setDepthMode(MODEL_RENDER_DEPTH_FULL);
|
||||
modelRender_draw(gfx, mtx, temp_s0->position, temp_s0->unk20, temp_s0->unk2C, NULL, temp_s0->unkC);
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
s32 func_80350F7C(ActorMarker *marker, s32 arg1, f32 arg2[3], s32 arg3, s32 arg4) {
|
||||
@@ -126,7 +129,7 @@ s32 func_80350F7C(ActorMarker *marker, s32 arg1, f32 arg2[3], s32 arg3, s32 arg4
|
||||
|
||||
colision_list = model_getCollisionList(temp_s0->unkC);
|
||||
vtx_list = model_getVtxList(temp_s0->unkC);
|
||||
sp4C = func_802E805C(colision_list, vtx_list, temp_s0->unk14, temp_s0->unk20, temp_s0->unk2C, arg1, arg2, arg3, arg4);
|
||||
sp4C = func_802E805C(colision_list, vtx_list, temp_s0->position, temp_s0->unk20, temp_s0->unk2C, arg1, arg2, arg3, arg4);
|
||||
if (sp4C != 0) {
|
||||
if (func_8029453C()) {
|
||||
D_80386180.unk20[0] = (s32) arg2[0];
|
||||
@@ -150,7 +153,7 @@ s32 func_803510B4(ActorMarker *marker, s32 arg1, f32 arg2[3], f32 arg3, s32 arg4
|
||||
}
|
||||
collision_list = model_getCollisionList(sp40->unkC);
|
||||
vertex_list = model_getVtxList(sp40->unkC);
|
||||
return func_802E9118(collision_list, vertex_list, sp40->unk14, sp40->unk20, sp40->unk2C, arg1, arg2, arg3, arg4, arg5, flagFliter);
|
||||
return func_802E9118(collision_list, vertex_list, sp40->position, sp40->unk20, sp40->unk2C, arg1, arg2, arg3, arg4, arg5, flagFliter);
|
||||
}
|
||||
|
||||
s32 func_80351198(ActorMarker *marker, s32 arg1, f32 arg2, s32 arg3, s32 arg4) {
|
||||
@@ -165,11 +168,11 @@ s32 func_80351198(ActorMarker *marker, s32 arg1, f32 arg2, s32 arg3, s32 arg4) {
|
||||
}
|
||||
collision_list = model_getCollisionList(sp38->unkC);
|
||||
vtx_list = model_getVtxList(sp38->unkC);
|
||||
return func_802E9DD8(collision_list, vtx_list, sp38->unk14, sp38->unk20, sp38->unk2C, arg1, arg2, arg3, arg4);
|
||||
return func_802E9DD8(collision_list, vtx_list, sp38->position, sp38->unk20, sp38->unk2C, arg1, arg2, arg3, arg4);
|
||||
}
|
||||
|
||||
|
||||
Struct68s * func_8035126C(f32 arg0[3], f32 arg1[3], f32 arg2, s32 arg3, enum asset_e arg4) {
|
||||
Struct68s * func_8035126C(f32 position[3], f32 arg1[3], f32 arg2, s32 arg3, enum asset_e arg4) {
|
||||
s32 sp2C;
|
||||
s32 sp1C;
|
||||
|
||||
@@ -177,22 +180,20 @@ Struct68s * func_8035126C(f32 arg0[3], f32 arg1[3], f32 arg2, s32 arg3, enum ass
|
||||
if (D_803861B0.unk8 == D_803861B0.unkC) {
|
||||
sp2C = D_803861B0.unk8 - D_803861B0.unk4;
|
||||
sp1C = sp2C * 2;
|
||||
D_803861B0.unk4 = (Struct68s *)realloc(D_803861B0.unk4, sp1C * sizeof(Struct68s));
|
||||
D_803861B0.unk4 = (Struct68s *) realloc(D_803861B0.unk4, sp1C * sizeof(Struct68s));
|
||||
D_803861B0.unk8 = D_803861B0.unk4 + sp2C;
|
||||
D_803861B0.unkC = D_803861B0.unk4 + sp1C;
|
||||
}
|
||||
|
||||
D_803861B0.unk8->unk0 = 0;
|
||||
D_803861B0.unk8->unk30 = 0;
|
||||
D_803861B0.unk8->unk8 = NULL;
|
||||
D_803861B0.unk8->unkC = NULL;
|
||||
D_803861B0.unk8->unk2C = arg2;
|
||||
D_803861B0.unk8->unk31 = arg3;
|
||||
D_803861B0.unk8->unk14[0] = arg0[0];
|
||||
D_803861B0.unk8->unk14[1] = arg0[1];
|
||||
D_803861B0.unk8->unk14[2] = arg0[2];
|
||||
D_803861B0.unk8->unk20[0] = arg1[0];
|
||||
D_803861B0.unk8->unk20[1] = arg1[1];
|
||||
D_803861B0.unk8->unk20[2] = arg1[2];
|
||||
|
||||
TUPLE_COPY(D_803861B0.unk8->position, position)
|
||||
TUPLE_COPY(D_803861B0.unk8->unk20, arg1)
|
||||
func_80351AD0(D_803861B0.unk8, arg4);
|
||||
return D_803861B0.unk8++;
|
||||
|
||||
@@ -224,7 +225,7 @@ void func_803514F4(Struct68s *arg0){
|
||||
}
|
||||
|
||||
void func_80351538(Struct68s *arg0){
|
||||
arg0->unk4 = (ActorMarker *)func_8032FBE4(arg0->unk14, func_80350E90, 1, 0x47);
|
||||
arg0->unk4 = (ActorMarker *)func_8032FBE4(arg0->position, func_80350E90, 1, 0x47);
|
||||
((ActorMarker *)arg0->unk4)->collidable = FALSE;
|
||||
((ActorMarker *)arg0->unk4)->actrArrayIdx = (arg0 - D_803861B0.unk4);
|
||||
((ActorMarker *)arg0->unk4)->unk18 = &D_80386180.unk4;
|
||||
@@ -279,10 +280,11 @@ bool func_80351724(void * arg0){
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
s32 func_80351758(Struct68s *arg0){
|
||||
if(arg0->unk0 == 0){
|
||||
s32 func_80351758_getSfxsourceIndex(Struct68s *arg0) {
|
||||
if (arg0->unk0 == NULL) {
|
||||
arg0->unk0 = sfxsource_createSfxsourceAndReturnIndex();
|
||||
}
|
||||
|
||||
return arg0->unk0;
|
||||
}
|
||||
|
||||
@@ -290,10 +292,8 @@ ActorMarker *func_80351794(Struct68s *arg0){
|
||||
return arg0->unk4;
|
||||
}
|
||||
|
||||
void func_8035179C(Struct68s* arg0, f32 arg1[3]) {
|
||||
arg1[0] = arg0->unk14[0];
|
||||
arg1[1] = arg0->unk14[1];
|
||||
arg1[2] = arg0->unk14[2];
|
||||
void func_8035179C_copyPosition(Struct68s* arg0, f32 position[3]) {
|
||||
TUPLE_COPY(position, arg0->position)
|
||||
}
|
||||
|
||||
void * func_803517B8(s32 arg0){
|
||||
@@ -305,9 +305,7 @@ Struct68s * func_803517E8(s32 arg0){
|
||||
}
|
||||
|
||||
void func_80351814(Struct68s *arg0, f32 arg1[3]) {
|
||||
arg1[0] = arg0->unk20[0];
|
||||
arg1[1] = arg0->unk20[1];
|
||||
arg1[2] = arg0->unk20[2];
|
||||
TUPLE_COPY(arg1, arg0->unk20)
|
||||
}
|
||||
|
||||
f32 func_80351830(Struct68s *arg0) {
|
||||
@@ -315,14 +313,14 @@ f32 func_80351830(Struct68s *arg0) {
|
||||
}
|
||||
|
||||
|
||||
s32 func_80351838(f32 arg0[3], s32 arg1, s32 arg2) {
|
||||
f32 sp2C[3];
|
||||
s32 func_80351838(f32 position[3], s32 key_flag, s32 arg2) {
|
||||
f32 rotation[3];
|
||||
Struct68s *sp28;
|
||||
|
||||
sp2C[0] = sp2C[1] = sp2C[2] = 0.0f;
|
||||
sp28 = func_8035126C(arg0, &sp2C, 1.0f, 4, arg1 + 0x884);
|
||||
rotation[0] = rotation[1] = rotation[2] = 0.0f;
|
||||
sp28 = func_8035126C(position, &rotation, 1.0f, 4, key_flag + 0x884);
|
||||
func_80351538(sp28);
|
||||
func_8038B5D8(&sp28->local, sp28, arg1, arg2);
|
||||
func_8038B5D8(&sp28->local, sp28, key_flag, arg2);
|
||||
return sp28 - D_803861B0.unk4;
|
||||
}
|
||||
|
||||
@@ -416,7 +414,7 @@ void func_80351B28(Struct68s *arg0, f32 arg1[3]) {
|
||||
if(arg0->unkC != NULL){
|
||||
sp34 = func_8033A12C(arg0->unkC);
|
||||
if(sp34 != NULL){
|
||||
if(func_802EA760(sp34, 0, arg0->unk14, arg0->unk20, arg0->unk2C, 0, &sp48, &sp38)){
|
||||
if(func_802EA760(sp34, 0, arg0->position, arg0->unk20, arg0->unk2C, 0, &sp48, &sp38)){
|
||||
func_802EA760(sp34, 0, arg1, arg0->unk20, arg0->unk2C, 0, &sp3C, &sp38);
|
||||
if(func_80309DBC(&sp48, &sp3C, sp38, &sp54, 3, 0)){
|
||||
return;
|
||||
@@ -424,17 +422,13 @@ void func_80351B28(Struct68s *arg0, f32 arg1[3]) {
|
||||
}
|
||||
}
|
||||
}
|
||||
arg0->unk14[0] = arg1[0];
|
||||
arg0->unk14[1] = arg1[1];
|
||||
arg0->unk14[2] = arg1[2];
|
||||
func_8032F64C(arg0->unk14, arg0->unk4);
|
||||
|
||||
TUPLE_COPY(arg0->position, arg1)
|
||||
func_8032F64C(arg0->position, arg0->unk4);
|
||||
}
|
||||
|
||||
|
||||
void func_80351C2C(Struct68s *arg0, f32 arg1[3]){
|
||||
arg0->unk20[0] = arg1[0];
|
||||
arg0->unk20[1] = arg1[1];
|
||||
arg0->unk20[2] = arg1[2];
|
||||
TUPLE_COPY(arg0->unk20, arg1)
|
||||
}
|
||||
|
||||
void func_80351C48(void) {
|
||||
@@ -450,7 +444,7 @@ void func_80351C48(void) {
|
||||
if ((sp38[0] == D_80386180.unk20[0]) && (sp38[1] == D_80386180.unk20[1]) && (sp38[2] == D_80386180.unk20[2])) {
|
||||
player_getPosition(sp4C);
|
||||
mlMtxIdent();
|
||||
func_80252CC4(D_80386180.unk2C->unk14, D_80386180.unk2C->unk20, D_80386180.unk2C->unk2C, 0);
|
||||
func_80252CC4(D_80386180.unk2C->position, D_80386180.unk2C->unk20, D_80386180.unk2C->unk2C, 0);
|
||||
mlMtx_apply_vec3f(D_80386180.unk14, sp4C);
|
||||
if (func_8029FC4C() != 0) {
|
||||
D_80386180.unk0 = D_80386180.unk2C;
|
||||
@@ -469,7 +463,7 @@ void func_80351C48(void) {
|
||||
}
|
||||
if (D_80386180.unk2C != NULL) {
|
||||
mlMtxIdent();
|
||||
func_80252C08(D_80386180.unk2C->unk14, D_80386180.unk2C->unk20, D_80386180.unk2C->unk2C, NULL);
|
||||
func_80252C08(D_80386180.unk2C->position, D_80386180.unk2C->unk20, D_80386180.unk2C->unk2C, NULL);
|
||||
mlMtx_apply_vec3f(&sp4C, &D_80386180.unk14);
|
||||
func_8028FAB0(&sp4C);
|
||||
}
|
||||
@@ -480,7 +474,7 @@ void func_80351DE0(Struct6Bs *arg0, Struct68s *arg1) {
|
||||
arg0->unk0 = randf2(80.0f, 100.0f);
|
||||
arg0->unk4[0] = arg0->unk4[1] = arg0->unk4[2] = 0.0f;
|
||||
arg0->unk10[0] = arg0->unk10[1] = arg0->unk10[2] = 0.0f;
|
||||
func_8035179C(arg1, arg0->unk1C);
|
||||
func_8035179C_copyPosition(arg1, arg0->unk1C);
|
||||
func_80351814(arg1, arg0->unk28);
|
||||
arg0->unk34 = 0.0f;
|
||||
}
|
||||
@@ -492,12 +486,10 @@ void func_80351E60(Struct6Bs *arg0, Struct68s *arg1, f32 arg2) {
|
||||
arg0->unk10[1] = sinf(((arg0->unk34 * arg0->unk0) / 180.0) * BAD_PI) * 20.0f;
|
||||
arg0->unk4[0] = cosf(((arg0->unk34 * arg0->unk0) / 180.0) * BAD_PI) * 7.5;
|
||||
arg0->unk4[1] = sinf(((arg0->unk34 * arg0->unk0) / 180.0) * BAD_PI) * 3.0f;
|
||||
sp24[0] = arg0->unk1C[0] + arg0->unk10[0];
|
||||
sp24[1] = arg0->unk1C[1] + arg0->unk10[1];
|
||||
sp24[2] = arg0->unk1C[2] + arg0->unk10[2];
|
||||
|
||||
TUPLE_ADD_COPY(sp24, arg0->unk1C, arg0->unk10)
|
||||
func_80351B28(arg1, &sp24);
|
||||
sp24[0] = arg0->unk28[0] + arg0->unk4[0];
|
||||
sp24[1] = arg0->unk28[1] + arg0->unk4[1];
|
||||
sp24[2] = arg0->unk28[2] + arg0->unk4[2];
|
||||
|
||||
TUPLE_ADD_COPY(sp24, arg0->unk28, arg0->unk4)
|
||||
func_80351C2C(arg1, &sp24);
|
||||
}
|
||||
|
@@ -32,7 +32,7 @@ void func_80351FE0(Struct_core2_CB050_0 *arg0, Struct68s *arg1) {
|
||||
arg0->unk28[0] = arg0->unk28[1] = arg0->unk28[2] = 0.0f;
|
||||
arg0->unk34[0] = arg0->unk34[1] = arg0->unk34[2] = 0.0f;
|
||||
arg0->unk40[0] = arg0->unk40[1] = arg0->unk40[2] = 0.0f;
|
||||
func_8035179C(arg1, arg0->unk4C);
|
||||
func_8035179C_copyPosition(arg1, arg0->unk4C);
|
||||
func_80351814(arg1, arg0->unk58);
|
||||
arg0->unk64 = 0.0f;
|
||||
arg0->unk6C = 0;
|
||||
|
@@ -51,7 +51,7 @@ void fxegg_shatter(u8 projectile_indx){
|
||||
|
||||
s32 func_803531C8(u8 projectile_indx, s32 arg1){
|
||||
ActorProp *prop;
|
||||
f32 sp40[3];
|
||||
f32 egg_position[3];
|
||||
ActorMarker * marker;
|
||||
ActorMarker * other_marker;
|
||||
s32 sp34;
|
||||
@@ -63,7 +63,7 @@ s32 func_803531C8(u8 projectile_indx, s32 arg1){
|
||||
|
||||
marker = func_8033E840();
|
||||
sp34 = 0;
|
||||
projectile_getPosition(projectile_indx, sp40);
|
||||
projectile_getPosition(projectile_indx, egg_position);
|
||||
marker->unk38[1] = 0x1E;
|
||||
prop = func_80320EB0(marker, 30.0f, 1);
|
||||
if(prop != NULL && prop->unk8_0){
|
||||
@@ -84,7 +84,7 @@ s32 func_803531C8(u8 projectile_indx, s32 arg1){
|
||||
break;
|
||||
|
||||
case MARKER_33_LEAKY: //L80353350
|
||||
if(func_802458A8(sp40, other_marker, 0x32) && chLeaky_eggCollision(other_marker)){
|
||||
if (collisionTri_isHitFromAbove_marker(egg_position, other_marker, 0x32) && chLeaky_eggCollision(other_marker)) {
|
||||
func_8033E984();
|
||||
}
|
||||
break;
|
||||
@@ -94,7 +94,7 @@ s32 func_803531C8(u8 projectile_indx, s32 arg1){
|
||||
func_803870EC(1);
|
||||
break;
|
||||
|
||||
case 0x1ae: //L8035339C //zubba?
|
||||
case MARKER_1AE_ZUBBA: //L8035339C //zubba?
|
||||
func_8033E984();
|
||||
fxegg_shatter(projectile_indx);
|
||||
break;
|
||||
@@ -109,26 +109,26 @@ s32 func_803531C8(u8 projectile_indx, s32 arg1){
|
||||
func_8038685C(other_marker);
|
||||
break;
|
||||
|
||||
case 0xbb: //L803533E4 //"BIG_JINXYHEAD"
|
||||
case MARKER_BB_UNKNOWN: //L803533E4 //"BIG_JINXYHEAD"
|
||||
other_actor = marker_getActor(other_marker);
|
||||
*(s32 *)&other_actor->local = 1;
|
||||
func_8033E984();
|
||||
break;
|
||||
|
||||
case MARKER_34_CEMETARY_POT: //L80353400
|
||||
if(func_802458A8(sp40, other_marker, 0x3C) && MMM_func_80387340(other_marker)){
|
||||
if (collisionTri_isHitFromAbove_marker(egg_position, other_marker, 0x3C) && chFlowerpot_eggCollision(other_marker)) {
|
||||
func_8033E984();
|
||||
}
|
||||
break;
|
||||
|
||||
case MARKER_AB_RUBEES_EGG_POT: //L80353434
|
||||
if(func_802458A8(sp40, other_marker, 0x1E) && (func_8038E178() < func_8038E184())){
|
||||
if (collisionTri_isHitFromAbove_marker(egg_position, other_marker, 0x1E) && (func_8038E178() < func_8038E184())) {
|
||||
func_8033E984();
|
||||
func_8038E140();
|
||||
}
|
||||
break;
|
||||
|
||||
case 0xae: //L80353480 //big_jynxy_head
|
||||
case MARKER_AE_UNKNOWN: //L80353480 //big_jynxy_head
|
||||
if(func_8038E344(other_marker)){
|
||||
func_8033E984();
|
||||
func_8038E2FC(other_marker);
|
||||
|
@@ -33,7 +33,7 @@ void func_80310D2C(void);
|
||||
s32 level_get(void);
|
||||
void func_8024E6E0(s32, void *);
|
||||
void func_8024E60C(s32, void *);
|
||||
void func_8024E71C(s32, void *);
|
||||
void controller_getJoystick(s32, void *);
|
||||
s32 getGameMode(void);
|
||||
|
||||
void func_802DC5B8(void);
|
||||
@@ -937,7 +937,7 @@ s32 gcPauseMenu_update(void) {
|
||||
}
|
||||
|
||||
func_8024E55C(0, face_button);
|
||||
func_8024E71C(0, joystick);
|
||||
controller_getJoystick(0, joystick);
|
||||
func_8024E60C(0, sp60);
|
||||
func_8024E6E0(0, sp50);
|
||||
func_80310D2C();
|
||||
|
Reference in New Issue
Block a user