misc documentation
This commit is contained in:
@@ -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();
|
||||
|
||||
|
@@ -30,8 +30,8 @@ void __bsDroneEnter_setSubstate(enum bsdroneenter_state_e arg0) {
|
||||
func_8025A6CC(COMUSIC_43_ENTER_LEVEL_GLITTER, 32000);
|
||||
func_8025AABC(COMUSIC_43_ENTER_LEVEL_GLITTER);
|
||||
func_8029E3C0(0, 0.4f);
|
||||
playerModel_setEnvAlpha(0);
|
||||
playerModel_updateModel();
|
||||
baModel_setEnvAlpha(0);
|
||||
baModel_updateModel();
|
||||
break;
|
||||
case 3:
|
||||
comusic_8025AB44(COMUSIC_43_ENTER_LEVEL_GLITTER, 0, 2000);
|
||||
@@ -69,27 +69,27 @@ void __bsDroneEnter_emitParticles(void) {
|
||||
}
|
||||
|
||||
void __bsDroneEnter_initParticleTypes(ParticleEmitter *p_ctrl, enum asset_e sprite_id) {
|
||||
func_802F0D54(p_ctrl);
|
||||
particleEmitter_manualFree(p_ctrl);
|
||||
particleEmitter_setSprite(p_ctrl, sprite_id);
|
||||
func_802EFA5C(p_ctrl, 0.3f, 0.8f);
|
||||
particleEmitter_setFade(p_ctrl, 0.3f, 0.8f);
|
||||
func_802EFB70(p_ctrl, 0.15f, 0.22f);
|
||||
func_802EFB84(p_ctrl, 0.03f, 0.05f);
|
||||
func_802EFE24(p_ctrl, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
func_802EFEC0(p_ctrl, 0.55f, 0.55f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_ctrl, 0.55f, 0.55f);
|
||||
}
|
||||
|
||||
void __bsDroneEnter_removeParticleTypes(void) {
|
||||
partEmitList_remove(bsDroneEnter.yellow_sparkle_emitter);
|
||||
partEmitList_remove(bsDroneEnter.white_sparkle_emitter);
|
||||
partEmitMgr_freeEmitter(bsDroneEnter.yellow_sparkle_emitter);
|
||||
partEmitMgr_freeEmitter(bsDroneEnter.white_sparkle_emitter);
|
||||
}
|
||||
|
||||
void __bsDroneEnter_init(void) {
|
||||
bsDroneEnter.unk10 = 0.0f;
|
||||
bsDroneEnter.unk8 = 0.0f;
|
||||
bsDroneEnter.unkC = 1.0f;
|
||||
bsDroneEnter.white_sparkle_emitter = partEmitList_pushNew(60);
|
||||
bsDroneEnter.white_sparkle_emitter = partEmitMgr_newEmitter(60);
|
||||
__bsDroneEnter_initParticleTypes(bsDroneEnter.white_sparkle_emitter, ASSET_716_SPRITE_SPARKLE_WHITE);
|
||||
bsDroneEnter.yellow_sparkle_emitter = partEmitList_pushNew(60);
|
||||
bsDroneEnter.yellow_sparkle_emitter = partEmitMgr_newEmitter(60);
|
||||
__bsDroneEnter_initParticleTypes(bsDroneEnter.yellow_sparkle_emitter, ASSET_713_SPRITE_SPARKLE_YELLOW);
|
||||
}
|
||||
|
||||
@@ -131,7 +131,7 @@ void bsDroneEnter_update(void) {
|
||||
case BSDRONEENTER_SUBSTATE_2:
|
||||
func_802AE914();
|
||||
sp20 = func_8029E1A8(0);
|
||||
playerModel_setEnvAlpha((s32) ml_map_f(func_8029E270(0), 0.0f, 0.4f, 255.0f, 0.0f));
|
||||
baModel_setEnvAlpha((s32) ml_map_f(func_8029E270(0), 0.0f, 0.4f, 255.0f, 0.0f));
|
||||
if (sp20) {
|
||||
__bsDroneEnter_setSubstate(BSDRONEENTER_SUBSTATE_3);
|
||||
}
|
||||
@@ -148,5 +148,5 @@ void bsDroneEnter_update(void) {
|
||||
void bsDroneEnter_end(void){
|
||||
__bsDroneEnter_removeParticleTypes();
|
||||
func_80294378(1);
|
||||
playerModel_updateModel();
|
||||
baModel_updateModel();
|
||||
}
|
||||
|
@@ -46,7 +46,7 @@ void bsDroneLook_update(void) {
|
||||
eye_rotation[0] -= func_8029B2DC() * 90.0f * dt;
|
||||
eye_rotation[1] -= func_8029B2D0() * 90.0f * dt;
|
||||
eye_rotation[2] = 0.0f;
|
||||
eye_rotation[0] = (eye_rotation[0] > 180.0f) ? max_f(305.0f, eye_rotation[0]) : min_f(70.0f, eye_rotation[0]);
|
||||
eye_rotation[0] = (eye_rotation[0] > 180.0f) ? ml_max_f(305.0f, eye_rotation[0]) : ml_min_f(70.0f, eye_rotation[0]);
|
||||
func_802C2A8C(eye_rotation);
|
||||
yaw_setIdeal(eye_rotation[1] + 180.0f);
|
||||
exit_first_person = FALSE;
|
||||
|
@@ -25,7 +25,7 @@ void __bsDroneVanish_setSubstate(s32 next_state) {
|
||||
break;
|
||||
case 3:
|
||||
gcpausemenu_returnToLair();
|
||||
playerModel_setVisible(FALSE);
|
||||
baModel_setVisible(FALSE);
|
||||
comusic_8025AB44(COMUSIC_43_ENTER_LEVEL_GLITTER, 0, 2000);
|
||||
func_8029E3C0(0, 2.0f);
|
||||
break;
|
||||
@@ -53,28 +53,28 @@ void __bsDroneVanish_emitParticles(void) {
|
||||
}
|
||||
|
||||
void __bsDroneVanish_particleEmitInit(ParticleEmitter *p_ctrl, enum asset_e sprite_id) {
|
||||
func_802F0D54();
|
||||
particleEmitter_manualFree();
|
||||
particleEmitter_setSprite(p_ctrl, sprite_id);
|
||||
func_802EFA5C(p_ctrl, 0.3f, 0.8f);
|
||||
particleEmitter_setFade(p_ctrl, 0.3f, 0.8f);
|
||||
particleEmitter_setParticleSpawnPositionRange(p_ctrl, -45.0f, 0.0f, -45.0f, 45.0f, 0.0f, 45.0f);
|
||||
func_802EFB70(p_ctrl, 0.15f, 0.22f);
|
||||
func_802EFB84(p_ctrl, 0.03f, 0.05f);
|
||||
func_802EFE24(p_ctrl, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
func_802EFEC0(p_ctrl, 0.55f, 0.55f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_ctrl, 0.55f, 0.55f);
|
||||
}
|
||||
|
||||
void __bsDroneVanish_end(void) {
|
||||
partEmitList_remove(D_8037D450.unk4);
|
||||
partEmitList_remove(D_8037D450.unk0);
|
||||
partEmitMgr_freeEmitter(D_8037D450.unk4);
|
||||
partEmitMgr_freeEmitter(D_8037D450.unk0);
|
||||
}
|
||||
|
||||
void __bsDroneVanish_init(void) {
|
||||
D_8037D450.unk10 = 0.0f;
|
||||
D_8037D450.unk8 = 0.0f;
|
||||
D_8037D450.unkC = 1.0f;
|
||||
D_8037D450.unk0 = partEmitList_pushNew(60);
|
||||
D_8037D450.unk0 = partEmitMgr_newEmitter(60);
|
||||
__bsDroneVanish_particleEmitInit(D_8037D450.unk0, ASSET_716_SPRITE_SPARKLE_WHITE);
|
||||
D_8037D450.unk4 = partEmitList_pushNew(60);
|
||||
D_8037D450.unk4 = partEmitMgr_newEmitter(60);
|
||||
__bsDroneVanish_particleEmitInit(D_8037D450.unk4, ASSET_713_SPRITE_SPARKLE_YELLOW);
|
||||
}
|
||||
|
||||
@@ -115,7 +115,7 @@ void bsDroneVanish_update(void) {
|
||||
case 2:
|
||||
__bsDroneVanish_update();
|
||||
sp20 = func_8029E1A8(0);
|
||||
playerModel_setEnvAlpha((s32) ml_map_f(func_8029E270(0), 0.0f, 0.4f, 0.0f, 255.0f));
|
||||
baModel_setEnvAlpha((s32) ml_map_f(func_8029E270(0), 0.0f, 0.4f, 0.0f, 255.0f));
|
||||
if (sp20) {
|
||||
__bsDroneVanish_setSubstate(3);
|
||||
}
|
||||
@@ -132,5 +132,5 @@ void bsDroneVanish_update(void) {
|
||||
void bsDroneVanish_end(void){
|
||||
__bsDroneVanish_end();
|
||||
func_80294378(1);
|
||||
playerModel_updateModel();
|
||||
baModel_updateModel();
|
||||
}
|
||||
|
@@ -7,7 +7,7 @@ extern void yaw_applyIdeal(void);
|
||||
extern void func_802978DC(int);
|
||||
extern f32 func_80257A44(f32, f32);
|
||||
extern f32 cosf(f32);
|
||||
extern f32 func_802588B0(f32, f32);
|
||||
extern f32 ml_remainder_f(f32, f32);
|
||||
extern f32 func_80257AD4(f32, f32);
|
||||
|
||||
/* .bss */
|
||||
@@ -25,20 +25,20 @@ struct {
|
||||
f32 unk24;
|
||||
f32 unk28;
|
||||
f32 unk2C;
|
||||
u8 unk30;
|
||||
u8 unk31; //enum bs_e
|
||||
u8 unk32;
|
||||
u8 room_transformation;
|
||||
u8 player_transformation; //enum bs_e
|
||||
u8 state;
|
||||
} D_8037D470;
|
||||
|
||||
/* .code */
|
||||
void func_802AF7A0(ParticleEmitter *arg0, enum asset_e arg1){
|
||||
func_802F0D54(arg0);
|
||||
particleEmitter_manualFree(arg0);
|
||||
particleEmitter_setSprite(arg0, arg1);
|
||||
particleEmitter_setParticleAccelerationRange(arg0, 0.0f, -50.0f, 0.0f, 0.0f, -50.0f, 0.0f);
|
||||
func_802EFA5C(arg0, 0.4f, 0.8f);
|
||||
particleEmitter_setFade(arg0, 0.4f, 0.8f);
|
||||
func_802EFB84(arg0, 0.03f, 0.03f);
|
||||
func_802EFE24(arg0, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
func_802EFEC0(arg0, 0.65f, 0.65f);
|
||||
particleEmitter_setAngularVelocityRange(arg0, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(arg0, 0.65f, 0.65f);
|
||||
func_802EFF50(arg0, 1.0f);
|
||||
}
|
||||
|
||||
@@ -65,16 +65,16 @@ void func_802AF900(void){
|
||||
sp40 = sinf(sp4C);
|
||||
sp44 = cosf(sp4C);
|
||||
sp30[0] += sp40 * D_8037D470.unk18;
|
||||
sp30[1] += func_80257C48(func_80257A44(sp3C, 1.14f), 0.0f, 130.0f);
|
||||
sp30[1] += ml_interpolate_f(func_80257A44(sp3C, 1.14f), 0.0f, 130.0f);
|
||||
sp30[2] += sp44 * D_8037D470.unk18;
|
||||
func_802AF88C(D_8037D470.unk4, sp40, sp44);
|
||||
particleEmitter_setPosition(D_8037D470.unk4, sp30);
|
||||
particleEmitter_emitN(D_8037D470.unk4, 1);
|
||||
|
||||
player_getPosition(sp30);
|
||||
sp4C = (1.0 - func_802588B0(sp48 + 0.5, 1.0f))* 6.283185308;
|
||||
sp4C = (1.0 - ml_remainder_f(sp48 + 0.5, 1.0f))* 6.283185308;
|
||||
sp30[0] -= sinf(sp4C) * D_8037D470.unk18;
|
||||
sp30[1] += func_80257C48(func_80257A44(sp3C, 1.14f), 130.0f, 0.0f);
|
||||
sp30[1] += ml_interpolate_f(func_80257A44(sp3C, 1.14f), 130.0f, 0.0f);
|
||||
sp30[2] -= cosf(sp4C) * D_8037D470.unk18;
|
||||
func_802AF88C(D_8037D470.unk0, sp40, sp44);
|
||||
particleEmitter_setPosition(D_8037D470.unk0, sp30);
|
||||
@@ -82,15 +82,15 @@ void func_802AF900(void){
|
||||
}
|
||||
|
||||
void func_802AFADC(void){
|
||||
partEmitList_remove(D_8037D470.unk4);
|
||||
partEmitList_remove(D_8037D470.unk0);
|
||||
partEmitMgr_freeEmitter(D_8037D470.unk4);
|
||||
partEmitMgr_freeEmitter(D_8037D470.unk0);
|
||||
}
|
||||
|
||||
void func_802AFB0C(void){
|
||||
D_8037D470.unk0 = partEmitList_pushNew(0x32);
|
||||
D_8037D470.unk0 = partEmitMgr_newEmitter(0x32);
|
||||
func_802AF7A0(D_8037D470.unk0, ASSET_476_SPRITE_BLUE_GLOW); //blue glow
|
||||
|
||||
D_8037D470.unk4 = partEmitList_pushNew(0x32);
|
||||
D_8037D470.unk4 = partEmitMgr_newEmitter(0x32);
|
||||
func_802AF7A0(D_8037D470.unk4, ASSET_477_SPRITE_YELLOW_GLOW); //orange glow
|
||||
|
||||
D_8037D470.unkC = 1.0f;
|
||||
@@ -142,34 +142,34 @@ void func_802AFBB8(f32 arg0[3]){
|
||||
{{-200.0f, 10.0f, -200.0f}, { 200.0f, 20.0f, 200.0f}},
|
||||
{{ 0.0f, -850.0f, 0.0f}, { 0.0f, -850.0f, 0.0f}}
|
||||
};
|
||||
ParticleEmitter* s0 = partEmitList_pushNew(1);
|
||||
ParticleEmitter* s0 = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setSprite(s0, ASSET_6C4_SPRITE_SMOKE_YELLOW); //yellow blast
|
||||
func_802EFA5C(s0, 0.7f, 0.8f);
|
||||
particleEmitter_setFade(s0, 0.7f, 0.8f);
|
||||
particleEmitter_setParticleFramerateRange(s0, 12.0f, 12.0f);
|
||||
particleEmitter_setPosition(s0, arg0);
|
||||
func_802EFB70(s0, 3.2f, 3.2f);
|
||||
func_802EFB84(s0, 3.2f, 3.2f);
|
||||
func_802EFEC0(s0, 0.8f, 0.8f);
|
||||
particleEmitter_setParticleLifeTimeRange(s0, 0.8f, 0.8f);
|
||||
particleEmitter_emitN(s0, 1);
|
||||
|
||||
s0 = partEmitList_pushNew(1);
|
||||
s0 = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setSprite(s0, ASSET_6C2_SPRITE_SMOKE_WHITE); //smoke
|
||||
func_802EFA5C(s0, 0.1f, 0.8f);
|
||||
particleEmitter_setFade(s0, 0.1f, 0.8f);
|
||||
particleEmitter_setParticleFramerateRange(s0, 15.0f, 15.0f);
|
||||
particleEmitter_setPosition(s0, arg0);
|
||||
func_802EFB70(s0, 3.0f, 3.0f);
|
||||
func_802EFB84(s0, 3.0f, 3.0f);
|
||||
func_802EFEC0(s0, 0.65f, 0.65f);
|
||||
particleEmitter_setParticleLifeTimeRange(s0, 0.65f, 0.65f);
|
||||
particleEmitter_emitN(s0, 1);
|
||||
|
||||
s0 = partEmitList_pushNew(0x11);
|
||||
s0 = partEmitMgr_newEmitter(0x11);
|
||||
particleEmitter_setSprite(s0, ASSET_713_SPRITE_SPARKLE_YELLOW); //sparkle
|
||||
particleEmitter_setVelocityAndAccelerationRanges(s0, &D_80364BB0);
|
||||
func_802EFA5C(s0, 0.0f, 0.6f);
|
||||
particleEmitter_setFade(s0, 0.0f, 0.6f);
|
||||
func_802EFB70(s0, 0.28f, 0.32f);
|
||||
func_802EFB84(s0, 0.03f, 0.03f);
|
||||
func_802EFE24(s0, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
func_802EFEC0(s0, 2.0f, 2.0f);
|
||||
particleEmitter_setAngularVelocityRange(s0, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(s0, 2.0f, 2.0f);
|
||||
func_802EFF50(s0, 1.0f);
|
||||
particleEmitter_setPosition(s0, arg0);
|
||||
particleEmitter_emitN(s0, 8);
|
||||
@@ -182,14 +182,14 @@ void func_802AFBB8(f32 arg0[3]){
|
||||
func_802EFA18(s0, 3);
|
||||
particleEmitter_emitN(s0, 4);
|
||||
|
||||
s0 = partEmitList_pushNew(0x11);
|
||||
s0 = partEmitMgr_newEmitter(0x11);
|
||||
particleEmitter_setSprite(s0, ASSET_716_SPRITE_SPARKLE_WHITE); //sparkle
|
||||
particleEmitter_setVelocityAndAccelerationRanges(s0, &D_80364C40);
|
||||
func_802EFA5C(s0, 0.0f, 0.6f);
|
||||
particleEmitter_setFade(s0, 0.0f, 0.6f);
|
||||
func_802EFB70(s0, 0.28f, 0.32f);
|
||||
func_802EFB84(s0, 0.03f, 0.03f);
|
||||
func_802EFE24(s0, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
func_802EFEC0(s0, 2.0f, 2.0f);
|
||||
particleEmitter_setAngularVelocityRange(s0, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(s0, 2.0f, 2.0f);
|
||||
func_802EFF50(s0, 1.0f);
|
||||
particleEmitter_setPosition(s0, arg0);
|
||||
particleEmitter_emitN(s0, 8);
|
||||
@@ -246,13 +246,13 @@ void func_802B01C8(void){
|
||||
D_8037D470.unk20 += time_getDelta();
|
||||
}
|
||||
|
||||
static void __bsdronexform_setState(int arg0){
|
||||
static void __bsdronexform_setState(int next_state){
|
||||
enum asset_e sp34;
|
||||
f32 sp30;
|
||||
f32 sp24[3];
|
||||
|
||||
D_8037D470.unk32 = arg0;
|
||||
switch(arg0){
|
||||
D_8037D470.state = next_state;
|
||||
switch(next_state){
|
||||
case 1:// 802B0230
|
||||
D_8037D470.unk1C = 1;
|
||||
D_8037D470.unk2C = player_getYPosition();
|
||||
@@ -289,12 +289,12 @@ static void __bsdronexform_setState(int arg0){
|
||||
case 6: // 802B033C
|
||||
func_802BB3DC(2, 80.0f, 0.85f);
|
||||
func_8030E6D4(SFX_147_GRUNTY_SPELL_ATTACK_2);
|
||||
if(D_8037D470.unk30 == 7 || D_8037D470.unk31 == 7){
|
||||
if(D_8037D470.room_transformation == TRANSFORM_7_WISHWASHY || D_8037D470.player_transformation == TRANSFORM_7_WISHWASHY){
|
||||
yaw_setIdeal(yaw_get() + 180.0f);
|
||||
yaw_applyIdeal();
|
||||
}
|
||||
func_8029A95C(func_80294A4C()); //set player transformation
|
||||
playerModel_updateModel(); //update player model
|
||||
player_setTransformation(func_80294A4C()); //set player transformation
|
||||
baModel_updateModel(); //update player model
|
||||
func_8029BD44(&sp34, &sp30);
|
||||
func_8028A010(sp34, sp30);
|
||||
func_8029E3C0(0, 0.1f);
|
||||
@@ -305,7 +305,7 @@ static void __bsdronexform_setState(int arg0){
|
||||
break;
|
||||
|
||||
case 8: // 802B03FC
|
||||
if(D_8037D470.unk30 == 1 && D_8037D470.unk31 == 1){
|
||||
if(D_8037D470.room_transformation == TRANSFORM_1_BANJO && D_8037D470.player_transformation == TRANSFORM_1_BANJO){
|
||||
func_8025A6EC(COMUSIC_3C_MINIGAME_LOSS, 28000);
|
||||
}
|
||||
func_8029E3C0(0, 1.0f);
|
||||
@@ -332,10 +332,10 @@ void bsdronexform_init(void){
|
||||
func_80294378(6);
|
||||
func_802AFB0C();
|
||||
func_802B016C();
|
||||
D_8037D470.unk31 = _player_getTransformation();
|
||||
D_8037D470.unk30 = func_80294A4C();
|
||||
D_8037D470.player_transformation = _player_getTransformation();
|
||||
D_8037D470.room_transformation = func_80294A4C();
|
||||
miscflag_set(MISC_FLAG_1B_TRANSFORMING);
|
||||
D_8037D470.unk32 = 0;
|
||||
D_8037D470.state = 0;
|
||||
__bsdronexform_setState(1);
|
||||
}
|
||||
|
||||
@@ -349,7 +349,7 @@ void bsdronexform_update(void){
|
||||
func_802AFFAC();
|
||||
|
||||
func_802B01C8();
|
||||
switch(D_8037D470.unk32){
|
||||
switch(D_8037D470.state){
|
||||
case 1:
|
||||
sp24 = func_8029E1A8(0);
|
||||
player_setYPosition(func_802B051C(0, 2.8f, 0.0f, 90.0f) + D_8037D470.unk2C);
|
||||
|
@@ -42,7 +42,7 @@ void bsjig_jiggy_init(void){
|
||||
func_8030E6D4(SFX_33_BANJO_AHOO);
|
||||
miscflag_clear(7);
|
||||
miscflag_clear(0xf);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_802C82C0(marker_getActor(bsjig_gJiggyMarker), 1);
|
||||
D_8037D4B0 = 0;
|
||||
}
|
||||
@@ -106,7 +106,7 @@ void bsjig_jiggy_end(void){
|
||||
func_8025A2FC(-1, 0xfa0);
|
||||
func_8024BD08(1);
|
||||
}
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
if( jiggyscore_total() == 100
|
||||
&& func_8031FF1C(BKPROG_FC_DEFEAT_GRUNTY)
|
||||
&& bs_getNextState() != BS_34_JIG_NOTEDOOR
|
||||
@@ -144,7 +144,7 @@ void bsjig_jiggy_interrupt(void){
|
||||
}
|
||||
|
||||
void bsjig_notedoor_end(void){
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_8025A2FC(-1, 0xfa0);
|
||||
func_8024BD08(1);
|
||||
func_8029E070(0);
|
||||
@@ -179,7 +179,7 @@ void bsjig_notedoor_init(void){
|
||||
func_8029151C(0xc);
|
||||
func_8029E070(1);
|
||||
func_8030E6D4(SFX_33_BANJO_AHOO);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
}
|
||||
|
||||
void bsjig_notedoor_update(void){
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/playerModel.h"
|
||||
#include "core2/ba/model.h"
|
||||
|
||||
f32 func_80294438(void);
|
||||
void func_8029797C(f32);
|
||||
@@ -348,7 +348,7 @@ void func_802B1BF4(void) {
|
||||
func_80297970(0.0f);
|
||||
func_80297A0C(0);
|
||||
D_8037D4C0 = 0;
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
}
|
||||
|
||||
void func_802B1CF8(void) {
|
||||
@@ -378,7 +378,7 @@ void func_802B1CF8(void) {
|
||||
}
|
||||
|
||||
void func_802B1DA4(void){
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
}
|
||||
|
||||
bool bsjump_jumpingFromWater(void){
|
||||
@@ -388,7 +388,7 @@ bool bsjump_jumpingFromWater(void){
|
||||
void bsjump_tumble_init(void){
|
||||
func_8028A084(0x68, 0.35f);
|
||||
func_8029C7F4(1,1,3,6);
|
||||
playerModel_setYDisplacement(60.0f);
|
||||
baModel_setYDisplacement(60.0f);
|
||||
if(func_80293234() == 1){
|
||||
func_8029E3C0(0, 0.5f);
|
||||
func_8029E3C0(1, 0.41f);
|
||||
@@ -439,6 +439,6 @@ void bsjump_tumble_end(void){
|
||||
func_80293240(3);
|
||||
}
|
||||
func_8029CB84();
|
||||
playerModel_setYDisplacement(0.0f);
|
||||
baModel_setYDisplacement(0.0f);
|
||||
func_80299E6C();
|
||||
}
|
||||
|
@@ -22,7 +22,7 @@ void bsow_init(void){
|
||||
func_802875AC(plyr_mvmnt, "bsow.c", 0x50);
|
||||
func_80299BFC(1.0f);
|
||||
func_802B360C();
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
D_8037D4D0 = 0;
|
||||
func_802B1FD0(1);
|
||||
@@ -66,6 +66,6 @@ void bsow_end(void){
|
||||
func_802B1FD0(0);
|
||||
func_80297CA8();
|
||||
gravity_reset();
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
}
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "core2/playerModel.h"
|
||||
#include "core2/ba/model.h"
|
||||
|
||||
extern void func_8028A084(s32, f32);
|
||||
extern void func_8029AD68(f32, s32);
|
||||
@@ -45,7 +45,7 @@ void func_802B223C(void) {
|
||||
func_80297970(0.0f);
|
||||
return;
|
||||
}
|
||||
func_80297970(func_80257C48(sp1C, D_80364CF0, D_80364CF4));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364CF0, D_80364CF4));
|
||||
}
|
||||
|
||||
void func_802B229C(void) {
|
||||
@@ -322,7 +322,7 @@ void func_802B2C58(void) {
|
||||
sp3C = ml_map_f(sp34, 0.0f, 2.3f, 0.0f, 45.0f);
|
||||
yaw_setIdeal(mlNormalizeAngle(sp38 + sp3C));
|
||||
yaw_applyIdeal();
|
||||
playerModel_setScale(ml_map_f(sp34, 0.0f, 2.3f, 1.0f, 0.3f));
|
||||
baModel_setScale(ml_map_f(sp34, 0.0f, 2.3f, 1.0f, 0.3f));
|
||||
ml_vec3f_copy(sp28, D_8037D4E8);
|
||||
sp28[1] = ml_map_f(sp34, 0.0f, 2.3f, D_8037D4E8[1], D_8037D4E8[1] - 50.0);
|
||||
func_8028FAB0(sp28);
|
||||
@@ -330,7 +330,7 @@ void func_802B2C58(void) {
|
||||
|
||||
void func_802B2D50(void) {
|
||||
func_80294378(1);
|
||||
playerModel_setScale(1.0f);
|
||||
baModel_setScale(1.0f);
|
||||
}
|
||||
|
||||
void func_802B2D80(s32 arg0) {
|
||||
@@ -362,7 +362,7 @@ void func_802B2D80(s32 arg0) {
|
||||
func_8029C7F4(1, 1, 2, 3);
|
||||
player_setYVelocity(510.0f);
|
||||
gravity_set(-1200.0f);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
D_8037D4E0 = 0;
|
||||
}
|
||||
@@ -394,7 +394,7 @@ void func_802B2EE8(void) {
|
||||
void func_802B2F9C(void) {
|
||||
func_80297CA8();
|
||||
gravity_reset();
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
func_802B229C();
|
||||
}
|
||||
@@ -455,7 +455,7 @@ void func_802B309C(void) {
|
||||
func_802914CC(0xD);
|
||||
func_802BF2C0(30.0f);
|
||||
func_8029C984();
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
func_8029E3C0(1, 2.9f);
|
||||
D_8037D4E0 = 0;
|
||||
@@ -491,7 +491,7 @@ void func_802B3240(void){
|
||||
break;
|
||||
|
||||
case 3://L802B3338
|
||||
D_8037D4F4 = max_f(0.0f, D_8037D4F4 - 10.0f);
|
||||
D_8037D4F4 = ml_max_f(0.0f, D_8037D4F4 - 10.0f);
|
||||
if (func_8028B254(90)) {
|
||||
func_8028A37C(0.36f);
|
||||
D_8037D4E0 = 4;
|
||||
@@ -499,7 +499,7 @@ void func_802B3240(void){
|
||||
break;
|
||||
|
||||
case 4://L802B3384
|
||||
D_8037D4F4 = max_f(0.0f, D_8037D4F4 - 10.0f);
|
||||
D_8037D4F4 = ml_max_f(0.0f, D_8037D4F4 - 10.0f);
|
||||
if (func_8028B2E8()) {
|
||||
func_8029AE48();
|
||||
FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 18000);
|
||||
@@ -510,7 +510,7 @@ void func_802B3240(void){
|
||||
break;
|
||||
|
||||
case 5://L802B33F4
|
||||
D_8037D4F4 = max_f(0.0f, D_8037D4F4 - 10.0f);
|
||||
D_8037D4F4 = ml_max_f(0.0f, D_8037D4F4 - 10.0f);
|
||||
break;
|
||||
|
||||
}
|
||||
|
@@ -103,7 +103,7 @@ void func_802B3868(void) {
|
||||
_func_802875AC(anim_ctrl, "bsrebound.c", 0xC6);
|
||||
func_8030E58C(SFX_56_BANJO_HUI, 1.0f);
|
||||
func_8029E3C0(0, 1.5f);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
}
|
||||
|
||||
|
||||
@@ -114,7 +114,7 @@ void func_802B3954(void) {
|
||||
next_state = 0;
|
||||
anim_ctrl = _player_getAnimCtrlPtr();
|
||||
if (func_8029E1A8(0) && map_get() == MAP_93_GL_DINGPOT) {
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
}
|
||||
func_802B37DC();
|
||||
if (func_8028B2E8()) {
|
||||
@@ -133,5 +133,5 @@ void func_802B3954(void) {
|
||||
void func_802B3A20(void) {
|
||||
func_802B35DC();
|
||||
gravity_reset();
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
}
|
||||
|
@@ -84,7 +84,7 @@ void bsslide_update(void){
|
||||
f32 sp28;
|
||||
|
||||
func_80299AAC();
|
||||
D_8037D528 = max_f(D_8037D528 - time_getDelta(), 0.0f);
|
||||
D_8037D528 = ml_max_f(D_8037D528 - time_getDelta(), 0.0f);
|
||||
if(player_isSliding()){
|
||||
func_80294480(sp30);
|
||||
if(func_80258108(sp30, &sp2C, &sp28)){
|
||||
|
@@ -4,7 +4,7 @@
|
||||
#include "bsint.h"
|
||||
|
||||
void func_80292900(f32, f32);
|
||||
void func_80250D94(f32, f32, f32);
|
||||
void rumbleManager_80250D94(f32, f32, f32);
|
||||
|
||||
/* .bss */
|
||||
u8 D_8037D530;
|
||||
@@ -27,10 +27,10 @@ void bssplat_init(void){
|
||||
if(func_8029CEB0() == 4){
|
||||
FUNC_8030E624(SFX_116_DEAF_RUSTLING, 0.7f, 32000);
|
||||
FUNC_8030E624(SFX_116_DEAF_RUSTLING, 0.8f, 32000);
|
||||
func_80250D94(0.75f, 0.25f, 0.3f);
|
||||
rumbleManager_80250D94(0.75f, 0.25f, 0.3f);
|
||||
}else{
|
||||
FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 32750);
|
||||
func_80250D94(1.0f, 0.5f, 0.4f);
|
||||
rumbleManager_80250D94(1.0f, 0.5f, 0.4f);
|
||||
}
|
||||
func_80299CF4(SFX_38_BANJO_AYE_1, 1.0f, 28000);
|
||||
func_802B4570();
|
||||
@@ -39,13 +39,13 @@ void bssplat_init(void){
|
||||
bs_setState(BS_41_DIE);
|
||||
|
||||
D_8037D530 = 0;
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
}
|
||||
|
||||
void bssplat_update(void){
|
||||
enum bs_e sp1C = 0;
|
||||
AnimCtrl *aCtrl = _player_getAnimCtrlPtr();
|
||||
func_80297970(max_f(0.0f, func_80297A64() - 15.0f));
|
||||
func_80297970(ml_max_f(0.0f, func_80297A64() - 15.0f));
|
||||
|
||||
switch (D_8037D530)
|
||||
{
|
||||
@@ -82,6 +82,6 @@ void bssplat_update(void){
|
||||
}
|
||||
|
||||
void bssplat_end(void){
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_80297CA8();
|
||||
}
|
||||
|
@@ -9,7 +9,7 @@ void func_80299234(f32, f32);
|
||||
void func_802875AC(AnimCtrl *, char*, s32);
|
||||
|
||||
void func_802900B4(void);
|
||||
void func_80250D94(f32, f32, f32);
|
||||
void rumbleManager_80250D94(f32, f32, f32);
|
||||
|
||||
/* .data */
|
||||
u8 D_80364D20[] = {
|
||||
@@ -100,7 +100,7 @@ void bsstand_init(void){
|
||||
void func_802B4A10(AnimCtrl *arg0){
|
||||
if(animctrl_isAt(arg0, 0.2057f)){ //(30/145)
|
||||
FUNC_8030E624(SFX_21_EGG_BOUNCE_1, 1.8f, 16000);
|
||||
func_80250D94(0.5f, 0.25f, 0.4f);
|
||||
rumbleManager_80250D94(0.5f, 0.25f, 0.4f);
|
||||
}//L802B4A54
|
||||
|
||||
if(animctrl_isAt(arg0, 0.2057f)) //(30/145)
|
||||
@@ -109,12 +109,12 @@ void func_802B4A10(AnimCtrl *arg0){
|
||||
|
||||
if(animctrl_isAt(arg0, 0.2555f)){ //(37/145)
|
||||
FUNC_8030E624(SFX_21_EGG_BOUNCE_1, 1.8f, 16000);
|
||||
func_80250D94(0.5f, 0.25f, 0.4f);
|
||||
rumbleManager_80250D94(0.5f, 0.25f, 0.4f);
|
||||
}//L802B4AB0
|
||||
|
||||
if(animctrl_isAt(arg0, 0.2896f)){ //(42/145)
|
||||
FUNC_8030E624(SFX_21_EGG_BOUNCE_1, 1.8f, 16000);
|
||||
func_80250D94(0.5f, 0.25f, 0.4f);
|
||||
rumbleManager_80250D94(0.5f, 0.25f, 0.4f);
|
||||
}//L802B4AEC
|
||||
|
||||
if(animctrl_isAt(arg0, 0.3f)){ //(43.5/145)?
|
||||
@@ -143,7 +143,7 @@ void func_802B4A10(AnimCtrl *arg0){
|
||||
|
||||
if(animctrl_isAt(arg0, 0.6619f)){
|
||||
FUNC_8030E624(SFX_21_EGG_BOUNCE_1, 1.8f, 16000);
|
||||
func_80250D94(0.5f, 0.25f, 0.4f);
|
||||
rumbleManager_80250D94(0.5f, 0.25f, 0.4f);
|
||||
}//L802B4BF4
|
||||
|
||||
if(animctrl_isAt(arg0, 0.6688f))
|
||||
@@ -152,7 +152,7 @@ void func_802B4A10(AnimCtrl *arg0){
|
||||
|
||||
if(animctrl_isAt(arg0, 0.6964f)){
|
||||
FUNC_8030E624(SFX_21_EGG_BOUNCE_1, 1.8f, 16000);
|
||||
func_80250D94(0.5f, 0.25f, 0.4f);
|
||||
rumbleManager_80250D94(0.5f, 0.25f, 0.4f);
|
||||
}//L802B4C50
|
||||
|
||||
if(animctrl_isAt(arg0, 0.7747f))
|
||||
@@ -315,14 +315,14 @@ void func_802B5350(void){
|
||||
if(_player_getTransformation() != TRANSFORM_1_BANJO)
|
||||
func_8029A86C(1);
|
||||
else{
|
||||
func_802948F8(func_8028D688());
|
||||
func_802948F8(baMarker_8028D688());
|
||||
bs_setState(BS_3A_CARRY_IDLE);
|
||||
}
|
||||
}
|
||||
else if(sp1C == 0x12){//L802B53D0
|
||||
func_8029A86C(1);
|
||||
if( _player_getTransformation() == TRANSFORM_1_BANJO && !miscflag_isTrue(0xF) && func_802916CC(0)){
|
||||
func_8028DE6C(carriedObject_getActorID());
|
||||
func_8028DE6C(baMarker_getCarriedObjectActorId());
|
||||
func_8029A86C(2);
|
||||
}
|
||||
}
|
||||
|
@@ -34,9 +34,9 @@ void func_802B5480(void) {
|
||||
|
||||
if (func_80294574()) {
|
||||
if (randf() > 0.5) {
|
||||
playerModel_8029223C(bubble_spawn_position);
|
||||
baModel_8029223C(bubble_spawn_position);
|
||||
} else {
|
||||
playerModel_80292260(bubble_spawn_position);
|
||||
baModel_80292260(bubble_spawn_position);
|
||||
}
|
||||
bubble_emitter = func_8029B950(bubble_spawn_position, 0.0f);
|
||||
particleEmitter_setParticleVelocityRange(bubble_emitter, -60.0f, -100.0f, -60.0f, 60.0f, 0.0f, 60.0f);
|
||||
@@ -67,7 +67,7 @@ void func_802B55DC(void) {
|
||||
func_80297970(0.0f);
|
||||
return;
|
||||
}
|
||||
func_80297970(func_80257C48(sp1C, D_80364D40, D_80364D44));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364D40, D_80364D44));
|
||||
}
|
||||
|
||||
void func_802B563C(void) {
|
||||
|
@@ -64,7 +64,7 @@ void bsthrow_end(void){
|
||||
void bsthrow_interrupt(void){
|
||||
if(bs_getInterruptType() == BS_INTR_12){
|
||||
if(D_8037D580 == 0){
|
||||
func_8028DE6C(carriedObject_getActorID());
|
||||
func_8028DE6C(baMarker_getCarriedObjectActorId());
|
||||
}
|
||||
else{
|
||||
func_8029A86C(1);
|
||||
|
@@ -18,7 +18,7 @@ void func_802B6270(void){
|
||||
func_8025A70C(COMUSIC_3C_MINIGAME_LOSS);
|
||||
func_8024BD08(0);
|
||||
func_8029E070(1);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
}
|
||||
|
||||
void func_802B6314(void){
|
||||
@@ -58,7 +58,7 @@ void func_802B63F8(void){
|
||||
func_8025A58C(0,0xfa0);
|
||||
func_8025A70C(COMUSIC_3C_MINIGAME_LOSS);
|
||||
func_8024BD08(0);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_8029E3C0(0, 2.9f);
|
||||
}
|
||||
|
||||
|
@@ -12,7 +12,7 @@ void func_8029AD28(f32, s32);
|
||||
f32 func_80297AF0(void);
|
||||
void func_80289EF8(f32);
|
||||
f32 func_8029B30C(void);
|
||||
f32 func_80257C48(f32, f32, f32);
|
||||
f32 ml_interpolate_f(f32, f32, f32);
|
||||
f32 func_80297A64(void);
|
||||
void func_80299594(s32, f32);
|
||||
|
||||
@@ -50,7 +50,7 @@ void func_802B6D00(void){
|
||||
if(sp18 == 0){
|
||||
func_80297970(0.0f);
|
||||
}else{//L802B6D48
|
||||
func_80297970(func_80257C48(func_8029B2E8(), D_80364D84, D_80364D88));
|
||||
func_80297970(ml_interpolate_f(func_8029B2E8(), D_80364D84, D_80364D88));
|
||||
}
|
||||
}
|
||||
else{//L802B6D78
|
||||
@@ -59,16 +59,16 @@ void func_802B6D00(void){
|
||||
func_80297970(0.0f);
|
||||
break;
|
||||
case 1://802B6DAC
|
||||
func_80297970(func_80257C48(sp1C, D_80364D70, D_80364D74));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364D70, D_80364D74));
|
||||
break;
|
||||
case 2://802B6DD0
|
||||
func_80297970(func_80257C48(sp1C, D_80364D74, D_80364D78));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364D74, D_80364D78));
|
||||
break;
|
||||
case 3://802B6DF4
|
||||
func_80297970(func_80257C48(sp1C, D_80364D78, D_80364D7C));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364D78, D_80364D7C));
|
||||
break;
|
||||
case 4://802B6E18
|
||||
func_80297970(func_80257C48(sp1C, D_80364D7C, D_80364D80));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364D7C, D_80364D80));
|
||||
break;
|
||||
}
|
||||
}//L802B6E34
|
||||
@@ -88,7 +88,7 @@ void func_802B6EB0(f32 arg0){
|
||||
}
|
||||
|
||||
void func_802B6EBC(void){
|
||||
D_8037D5B0 = max_f(0.0f, D_8037D5B0 - time_getDelta());
|
||||
D_8037D5B0 = ml_max_f(0.0f, D_8037D5B0 - time_getDelta());
|
||||
}
|
||||
|
||||
int func_802B6EF4(void){
|
||||
|
@@ -3,7 +3,7 @@
|
||||
#include "variables.h"
|
||||
|
||||
extern void func_8029AD68(f32, s32);
|
||||
extern f32 ml_vec3f_dot_product(f32[3], f32[3]);
|
||||
extern f32 ml_dotProduct_vec3f(f32[3], f32[3]);
|
||||
|
||||
int bswalrus_inSet(enum bs_e state);
|
||||
|
||||
@@ -47,7 +47,7 @@ void func_802B7E6C(void) {
|
||||
func_80297970(0.0f);
|
||||
return;
|
||||
}
|
||||
func_80297970(func_80257C48(sp1C, D_80364DC0, D_80364DC4));
|
||||
func_80297970(ml_interpolate_f(sp1C, D_80364DC0, D_80364DC4));
|
||||
}
|
||||
|
||||
void func_802B7ECC(void) {
|
||||
@@ -55,7 +55,7 @@ void func_802B7ECC(void) {
|
||||
if (func_80295530(8) < 3) {
|
||||
D_8037D5C0 = 1.0f;
|
||||
}
|
||||
D_8037D5C0 = mlClamp_f(D_8037D5C0, 0.0f, 1.0f);
|
||||
D_8037D5C0 = ml_clamp_f(D_8037D5C0, 0.0f, 1.0f);
|
||||
}
|
||||
|
||||
void func_802B7F28(void) {
|
||||
@@ -75,7 +75,7 @@ void func_802B7F28(void) {
|
||||
if (900.0 < sp20[0] * sp20[0] + sp20[1] * sp20[1] + sp20[2] * sp20[2]) {
|
||||
ml_vec3f_normalize(sp20);
|
||||
func_80294480(sp2C);
|
||||
if ( ml_vec3f_dot_product(sp20, sp2C) < -0.2) {
|
||||
if ( ml_dotProduct_vec3f(sp20, sp2C) < -0.2) {
|
||||
sp3C += D_8037D5C0 * 350.0;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +83,7 @@ void func_802B7F28(void) {
|
||||
func_80297970(0.0f);
|
||||
return;
|
||||
}
|
||||
func_80297970(func_80257C48(sp40, sp38, sp3C));
|
||||
func_80297970(ml_interpolate_f(sp40, sp38, sp3C));
|
||||
}
|
||||
|
||||
void func_802B8048(void){
|
||||
@@ -387,7 +387,7 @@ static void __bswalrus_recoil_init(s32 damage){
|
||||
func_8029C7F4(1,1,2,3);
|
||||
player_setYVelocity(func_802987C4());
|
||||
gravity_set(func_802987E4());
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
func_802B8110();
|
||||
}
|
||||
@@ -405,7 +405,7 @@ static void __bswalrus_recoil_update(void){
|
||||
|
||||
static void __bswalrus_recoil_end(void){
|
||||
gravity_reset();
|
||||
func_8028D5F4();
|
||||
baMarker_collisionOn();
|
||||
func_80292EA4();
|
||||
func_802B8048();
|
||||
}
|
||||
@@ -467,7 +467,7 @@ void bswalrus_die_init(void){
|
||||
func_8025AB00();
|
||||
func_8025A2FC(0, 0xfa0);
|
||||
func_8025A70C(0x1A);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_80292E48();
|
||||
func_8029E3C0(0, 1.5f);
|
||||
func_802B8110();
|
||||
@@ -494,7 +494,7 @@ void bswalrus_die_update(void){
|
||||
break;
|
||||
case 3://L802B8FB0
|
||||
if(0.0f < D_8037D5C4){
|
||||
D_8037D5C4 = max_f(0.0f, D_8037D5C4 - 10.0f);
|
||||
D_8037D5C4 = ml_max_f(0.0f, D_8037D5C4 - 10.0f);
|
||||
}
|
||||
break;
|
||||
}//L802B8FE0
|
||||
@@ -567,9 +567,9 @@ void bswalrus_sled_update(void){
|
||||
|
||||
if(50.0f < func_80297AB8()){
|
||||
if(func_8023DB4C(1)){
|
||||
playerModel_80292554(&sp20);
|
||||
baModel_80292554(&sp20);
|
||||
}else{
|
||||
playerModel_80292578(&sp20);
|
||||
baModel_80292578(&sp20);
|
||||
}
|
||||
particleEmitter_emitN(func_802F1EC8(sp20), 1);
|
||||
}//L802B927C
|
||||
@@ -731,7 +731,7 @@ void func_802B978C(void) {
|
||||
func_8025A58C(0, 0xFA0);
|
||||
func_8025A70C(COMUSIC_3C_MINIGAME_LOSS);
|
||||
func_8024BD08(0);
|
||||
func_8028D5DC();
|
||||
baMarker_collisionOff();
|
||||
func_8029E3C0(0, 2.9f);
|
||||
func_802B813C();
|
||||
func_80292E48();
|
||||
|
@@ -37,7 +37,7 @@ void func_803567EC(Actor *this){
|
||||
}
|
||||
|
||||
player_getPosition(plyr_pos);
|
||||
plyr_dist = ml_vec3f_distance(plyr_pos, this->position);
|
||||
plyr_dist = ml_distance_vec3f(plyr_pos, this->position);
|
||||
if(this->state == 1){
|
||||
if(plyr_dist < 700.0f)
|
||||
func_80356770(this, 2);
|
||||
|
@@ -148,7 +148,7 @@ void func_8035765C(Actor *this){
|
||||
}//L803576EC
|
||||
|
||||
player_getPosition(sp5C);
|
||||
sp58 = ml_vec3f_distance(this->position, sp5C);
|
||||
sp58 = ml_distance_vec3f(this->position, sp5C);
|
||||
if(this->state == 1){
|
||||
if(sp58 < this->scale*800.0f){
|
||||
func_80357264(this, 2);
|
||||
@@ -168,7 +168,7 @@ void func_8035765C(Actor *this){
|
||||
}//L80357808
|
||||
|
||||
if(this->state == 3){
|
||||
if(func_8025773C(&local->unk4, sp50)){
|
||||
if(ml_timer_update(&local->unk4, sp50)){
|
||||
func_80357264(this, 4);
|
||||
}
|
||||
}
|
||||
|
@@ -96,7 +96,7 @@ void func_80356CCC(Actor *this){
|
||||
func_803569F0(this, (this->state < 5)? 1 : 6);
|
||||
}//L80356D48
|
||||
player_getPosition(sp5C);
|
||||
sp58 = ml_vec3f_distance(this->position, sp5C);
|
||||
sp58 = ml_distance_vec3f(this->position, sp5C);
|
||||
if( this->state == 1){
|
||||
if( sp58 < this->scale*400.0f
|
||||
&& (map_get() != MAP_3C_RBB_KITCHEN || this->position_z < sp5C[2])
|
||||
@@ -116,7 +116,7 @@ void func_80356CCC(Actor *this){
|
||||
}
|
||||
}//L80356E88
|
||||
if(this->state == 3){
|
||||
if(func_8025773C(&this->local, sp50)){
|
||||
if(ml_timer_update(&this->local, sp50)){
|
||||
func_803569F0(this, 4);
|
||||
}
|
||||
}//L80356EAC
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/particle.h"
|
||||
|
||||
#define _HorzDist3v(v1, v2) ((v1[0]-v2[0])*(v1[0]-v2[0]) + (v1[2]-v2[2])*(v1[2]-v2[2]))
|
||||
extern int func_8024549C(f32[3], f32);
|
||||
@@ -35,16 +36,16 @@ struct43s D_80372B00 = {
|
||||
|
||||
/* .code */
|
||||
void func_80359A40(f32 position[3], struct_core2_D2AB0 *arg1, s32 cnt){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_70C_SPRITE_RIPPLE);
|
||||
func_802EFA70(pCtrl, 1);
|
||||
func_802EFFA8(pCtrl, D_80372AE4);
|
||||
particleEmitter_setDrawMode(pCtrl, PART_EMIT_3D_ROTATE);
|
||||
particleEmitter_setRGB(pCtrl, D_80372AE4);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
func_802EFB70(pCtrl, 0.1f, 0.1f);
|
||||
func_802EFB84(pCtrl, 1.0f, 1.4f);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, arg1->unk0, arg1->unk4);
|
||||
func_802EFEC0(pCtrl, arg1->unk8, arg1->unkC);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.5f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, arg1->unk8, arg1->unkC);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.5f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
@@ -74,14 +75,14 @@ void chdrips_update(Actor *this){
|
||||
this->unk60 = this->yaw/360.0;
|
||||
}
|
||||
if(__chdrips_playerWithinDist(this, 5000) && randf() < this->unk60){
|
||||
pCtrl = partEmitList_pushNew(1);
|
||||
pCtrl = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setModel(pCtrl, ASSET_8A0_SPRITE_WATER_DROP);
|
||||
particleEmitter_setPosition(pCtrl, this->position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_80372B00);
|
||||
func_802EFA18(pCtrl, 1);
|
||||
particleEmitter_setParticleCallback(pCtrl, __chdrips_particleCallback);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 7.0f, 7.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 7.0f, 7.0f);
|
||||
func_802EFB70(pCtrl, 0.1f, 0.1f);
|
||||
func_802EFB84(pCtrl, 0.1f, 0.1f);
|
||||
particleEmitter_emitN(pCtrl, 1);
|
||||
|
@@ -18,26 +18,26 @@ ActorInfo gChFireFxInfo = {
|
||||
void __chfirefx_spawnSmoke(f32 position[3], f32 scale){
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(1);
|
||||
pCtrl = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
|
||||
func_802EF9E4(pCtrl, 0x23);
|
||||
particleEmitter_setAlpha(pCtrl, 0x23);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl, 0.0f, 110.0f*scale, 0.0f, 0.0f, 110.0f*scale, 0.0f);
|
||||
particleEmitter_setParticleVelocityRange(pCtrl, 0.0f, 40.0f*scale, 0.0f, 0.0f, 90.0f*scale, 0.0f);
|
||||
func_802EFB70(pCtrl, 2.6*scale, 3.2*scale);
|
||||
func_802EFB84(pCtrl, 5.0*scale, 6.0*scale);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 4.0f, 7.0f);
|
||||
func_802EFA5C(pCtrl, 0.3f, 0.7f);
|
||||
func_802EFA70(pCtrl, 4);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 4.0f, 7.0f);
|
||||
particleEmitter_setFade(pCtrl, 0.3f, 0.7f);
|
||||
particleEmitter_setDrawMode(pCtrl, 4);
|
||||
particleEmitter_emitN(pCtrl, 1);
|
||||
}
|
||||
|
||||
void __chfirefx_spawnSpark(f32 position[3], f32 scale){
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(1);
|
||||
pCtrl = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_713_SPRITE_SPARKLE_YELLOW);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
@@ -47,9 +47,9 @@ void __chfirefx_spawnSpark(f32 position[3], f32 scale){
|
||||
func_802EFB70(pCtrl, 0.1*scale, 0.2*scale);
|
||||
func_802EFB84(pCtrl, 0.2*scale, 0.4*scale);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 0.9f, 1.3f);
|
||||
func_802EFA5C(pCtrl, 0.3f, 0.7f);
|
||||
func_802EFA70(pCtrl, 4);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.9f, 1.3f);
|
||||
particleEmitter_setFade(pCtrl, 0.3f, 0.7f);
|
||||
particleEmitter_setDrawMode(pCtrl, 4);
|
||||
particleEmitter_emitN(pCtrl, 1);
|
||||
}
|
||||
|
||||
|
@@ -146,7 +146,7 @@ void func_8035C080(Actor *this, s32 next_state){
|
||||
}
|
||||
}
|
||||
else if(next_state == 3){//L8035C4C0
|
||||
if(ml_vec3f_distance(local->unk28, this->position) < 10.0f){
|
||||
if(ml_distance_vec3f(local->unk28, this->position) < 10.0f){
|
||||
func_8035C080(this, 1);
|
||||
return;
|
||||
}
|
||||
@@ -237,7 +237,7 @@ Actor* func_8035C71C(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
if(local->pCtrl_8 && this->marker->unk14_21){
|
||||
func_8034A174(func_80329934(), 5, sp28);
|
||||
particleEmitter_setPosition(local->pCtrl_8, sp28);
|
||||
func_802EF3A8(local->pCtrl_8, gfx, mtx, vtx);
|
||||
particleEmitter_draw(local->pCtrl_8, gfx, mtx, vtx);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
@@ -246,7 +246,7 @@ void func_8035C8C8(Actor *this){
|
||||
ActorLocal_Core2_D50F0 *local = (ActorLocal_Core2_D50F0 *)&this->local;
|
||||
|
||||
if(local->pCtrl_8)
|
||||
func_802EF684(local->pCtrl_8);
|
||||
particleEmitter_free(local->pCtrl_8);
|
||||
}
|
||||
|
||||
void func_8035C8F4(Actor *this){
|
||||
@@ -293,11 +293,11 @@ void func_8035C8F4(Actor *this){
|
||||
local->unk0 += 1.9047619047619049*sp34;
|
||||
if(1.0f <= local->unk0)
|
||||
local->unk0 = 1.0f;
|
||||
func_80255FE4(this->position, local->unk10, local->unk1C, local->unk0);
|
||||
ml_interpolate_vec3f(this->position, local->unk10, local->unk1C, local->unk0);
|
||||
this->position_y += 100.0f*sinf(local->unk0*3.141592654);
|
||||
this->yaw = local->unk0*(local->unk34[2] - local->unk34[1]) + local->unk34[1];
|
||||
if(func_80335794(this->unk148) > 0){
|
||||
if(ml_vec3f_distance(this->position, local->unk28) < 10.0f){
|
||||
if(ml_distance_vec3f(this->position, local->unk28) < 10.0f){
|
||||
func_8035C080(this, 1);
|
||||
}
|
||||
else if(local->unkC > 0){//L8035CB8C
|
||||
|
@@ -1,6 +1,8 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/particle.h"
|
||||
|
||||
|
||||
typedef struct {
|
||||
f32 unk0;
|
||||
@@ -41,10 +43,10 @@ s32 D_80372C6C[3] = {0xFE, 0x46, 0xFE};
|
||||
|
||||
/* .code */
|
||||
void func_8035AFE0(f32 scale, f32 pos[3], s32 cnt, enum asset_e sprite_id, s32 arg4[3]){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
func_802EFFA8(pCtrl, arg4);
|
||||
particleEmitter_setRGB(pCtrl, arg4);
|
||||
particleEmitter_setPosition(pCtrl, pos);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
-100.0f*scale, 20.0f*scale, -100.0f*scale,
|
||||
@@ -61,9 +63,9 @@ void func_8035AFE0(f32 scale, f32 pos[3], s32 cnt, enum asset_e sprite_id, s32 a
|
||||
func_802EFB70(pCtrl, scale*0.4, scale*0.6);
|
||||
func_802EFB84(pCtrl, scale*1.0, scale*1.4);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 1.0f, 1.4f);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFA70(pCtrl, 0x10);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 1.0f, 1.4f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setDrawMode(pCtrl, PART_EMIT_NO_DEPTH);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
|
@@ -106,25 +106,25 @@ int func_80359FEC(f32 arg0[3], f32 arg1[3], s32 arg2){
|
||||
}
|
||||
|
||||
void func_8035A04C(f32 position[3], s32 cnt, enum asset_e model_id, f32 scale){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
|
||||
particleEmitter_setModel(pCtrl, model_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl, -100.0f*scale, 0.0f, -100.0f*scale, 100.0f*scale, 200.0f*scale, 100.0f*scale);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -1000.0f, 0.0f, 0.0f, -1000.0f, 0.0f);
|
||||
particleEmitter_setParticleVelocityRange(pCtrl, -400.0f*scale, 450.0f*scale, -400.0f*scale, 400.0f*scale, 600.0f*scale, 400.0f*scale);
|
||||
func_802EFE24(pCtrl, 100.0f*scale, 100.0f*scale, 100.0f*scale, 250.0f*scale, 250.0f*scale, 250.0f*scale);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, 100.0f*scale, 100.0f*scale, 100.0f*scale, 250.0f*scale, 250.0f*scale, 250.0f*scale);
|
||||
func_802EFB70(pCtrl, scale*0.2, scale*0.4);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.02f);
|
||||
func_802EFEC0(pCtrl, 2.2f, 2.2f);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.3f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 2.2f, 2.2f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.3f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
void func_8035A228(f32 position[3], s32 cnt, enum asset_e sprite_id, f32 scale){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
|
||||
func_802EFFA8(pCtrl, D_80372BC8);
|
||||
particleEmitter_setRGB(pCtrl, D_80372BC8);
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl, -50.0f*scale, 0.0f, -50.0f*scale, 50.0f*scale, 200.0f*scale, 50.0f*scale);
|
||||
@@ -133,15 +133,15 @@ void func_8035A228(f32 position[3], s32 cnt, enum asset_e sprite_id, f32 scale){
|
||||
func_802EFB70(pCtrl, scale*0.6, scale*0.8);
|
||||
func_802EFB84(pCtrl, scale*1.0, scale*1.4);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 1.2f, 1.8f);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 1.2f, 1.8f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
void func_8035A3F8(f32 position[3], s32 cnt, enum asset_e sprite_id, f32 scale){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
|
||||
func_802EFFA8(pCtrl, D_80372BD4);
|
||||
particleEmitter_setRGB(pCtrl, D_80372BD4);
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -10.0f, 0.0f, 0.0f, -10.0f, 0.0f);
|
||||
@@ -149,9 +149,9 @@ void func_8035A3F8(f32 position[3], s32 cnt, enum asset_e sprite_id, f32 scale){
|
||||
func_802EFB70(pCtrl, scale*0.4, scale*0.6);
|
||||
func_802EFB84(pCtrl, scale*0.8, scale*1.2);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 0.5f, 0.7f);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.3f);
|
||||
func_802EFA70(pCtrl, 4);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.5f, 0.7f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.3f);
|
||||
particleEmitter_setDrawMode(pCtrl, 4);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
|
@@ -354,7 +354,7 @@ void func_802D9D60(Actor *this){
|
||||
&& (func_8028ECAC() == 0 || func_8028ECAC() == BSGROUP_8_TROT)
|
||||
){
|
||||
player_getPosition(sp34);
|
||||
if(ml_vec3f_distance(sp34, this->velocity) < this->unk28){
|
||||
if(ml_distance_vec3f(sp34, this->velocity) < this->unk28){
|
||||
func_802D9CBC(this);
|
||||
}
|
||||
}
|
||||
|
@@ -57,7 +57,7 @@ void func_802DA634(ParticleEmitter *pCtrl, f32 arg1[3], s32 cnt){
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -600.0f, 0.0f, 0.0f, -600.0f, 0.0f);
|
||||
particleEmitter_setModel(pCtrl, 0x344);
|
||||
particleEmitter_setPosition(pCtrl, arg1);
|
||||
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);
|
||||
particleEmitter_setParticleVelocityRange(pCtrl, -150.0f, 150.0f, -150.0f, 150.0f, 360.0f, 150.0f);
|
||||
func_802EFB98(pCtrl, &D_80367E44);
|
||||
func_802EF9F8(pCtrl, 0.01f);
|
||||
@@ -83,7 +83,7 @@ void func_802DA740(Actor *this){
|
||||
}
|
||||
else{
|
||||
if(local->unk0 && actor_animationIsAt(this, 0.05f)){
|
||||
func_802DA634(partEmitList_pushNew(6), this->velocity, 6);
|
||||
func_802DA634(partEmitMgr_newEmitter(6), this->velocity, 6);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -93,19 +93,19 @@ void func_802DA740(Actor *this){
|
||||
}
|
||||
else if(local->unk0){
|
||||
if(actor_animationIsAt(this, 0.3f)){
|
||||
func_802DA634(partEmitList_pushNew(6), this->velocity, 6);
|
||||
func_802DA634(partEmitMgr_newEmitter(6), this->velocity, 6);
|
||||
}
|
||||
else if(actor_animationIsAt(this, 0.4f)){
|
||||
func_802DA634(partEmitList_pushNew(4), this->unk1C, 4);
|
||||
func_802DA634(partEmitMgr_newEmitter(4), this->unk1C, 4);
|
||||
}
|
||||
else if(actor_animationIsAt(this, 0.45f)){
|
||||
func_802DA634(partEmitList_pushNew(4), local->unk4, 4);
|
||||
func_802DA634(partEmitMgr_newEmitter(4), local->unk4, 4);
|
||||
}
|
||||
else if(actor_animationIsAt(this, 0.5f)){
|
||||
func_802DA634(partEmitList_pushNew(4), local->unk10, 4);
|
||||
func_802DA634(partEmitMgr_newEmitter(4), local->unk10, 4);
|
||||
}
|
||||
else if(actor_animationIsAt(this, 0.55f)){
|
||||
func_802DA634(partEmitList_pushNew(4), local->unk1C, 4);
|
||||
func_802DA634(partEmitMgr_newEmitter(4), local->unk1C, 4);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@@ -47,11 +47,11 @@ void __chSnowball_spawnPieces(f32 position[3]) {
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
|
||||
pCtrl = partEmitList_pushNew(8);
|
||||
pCtrl = partEmitMgr_newEmitter(8);
|
||||
particleEmitter_setModel(pCtrl, ASSET_37A_MODEL_TINY_SNOWBALL);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_8036875C);
|
||||
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_802EFB98(pCtrl, &D_80368734);
|
||||
particleEmitter_emitN(pCtrl, 8);
|
||||
}
|
||||
|
@@ -117,16 +117,16 @@ void __chSnowman_spawnSnowballParticles(f32 position[3], s32 count){
|
||||
{{-80.0f, 0.0f, -80.0f}, {80.0f, 200.0f, 80.0f}}
|
||||
};
|
||||
|
||||
ParticleEmitter *particleSpawner = partEmitList_pushNew(count);
|
||||
ParticleEmitter *particleSpawner = partEmitMgr_newEmitter(count);
|
||||
|
||||
particleEmitter_setModel(particleSpawner, ASSET_378_MODEL_SNOWBALL);
|
||||
particleEmitter_setPosition(particleSpawner, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(particleSpawner, &D_803686BC);
|
||||
func_802EFE24(particleSpawner, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setAngularVelocityRange(particleSpawner, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
func_802EF9F8(particleSpawner, 0.01f);
|
||||
func_802EFA18(particleSpawner, 3);
|
||||
func_802EFA20(particleSpawner, 1.0f, 1.3f);
|
||||
func_802EF9EC(particleSpawner, 0x2f, 16000);
|
||||
particleEmitter_setSfx(particleSpawner, SFX_2F_ORANGE_SPLAT, 16000);
|
||||
func_802EFB98(particleSpawner, &D_80368694);
|
||||
particleEmitter_emitN(particleSpawner, count);
|
||||
}
|
||||
|
@@ -84,7 +84,7 @@ void func_802D07C8(Actor *this){
|
||||
func_802D05A0(this, 1);
|
||||
}
|
||||
player_getPosition(sp2C);
|
||||
sp28 = ml_vec3f_distance(sp2C, this->position);
|
||||
sp28 = ml_distance_vec3f(sp2C, this->position);
|
||||
if( this->state == 1){
|
||||
if(sp28 < D_80367340[(s32)this->yaw].unk6*this->scale){
|
||||
func_802D05A0(this, 2);
|
||||
|
@@ -16,7 +16,7 @@ s32 D_80373124[3] = {0xA0, 0x6B, 0x23};
|
||||
|
||||
/* .code */
|
||||
void __chwhipcrack_spawnPieces(Actor *this, enum asset_e model_id, s32 cnt){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl,
|
||||
0.0f, -1000.0f, 0.0f,
|
||||
@@ -25,7 +25,7 @@ void __chwhipcrack_spawnPieces(Actor *this, enum asset_e model_id, s32 cnt){
|
||||
func_802EF9F8(pCtrl, 0.7f);
|
||||
func_802EFA18(pCtrl, 3);
|
||||
func_802EFA20(pCtrl, 0.5f, 1.0f);
|
||||
func_802EF9EC(pCtrl, 0x1f, 10000);
|
||||
particleEmitter_setSfx(pCtrl, SFX_1F_HITTING_AN_ENEMY_3, 10000);
|
||||
particleEmitter_setModel(pCtrl, model_id);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
-120.0f, 50.0f, -120.0f,
|
||||
@@ -33,12 +33,12 @@ void __chwhipcrack_spawnPieces(Actor *this, enum asset_e model_id, s32 cnt){
|
||||
);
|
||||
particleEmitter_setPosition(pCtrl, this->position);
|
||||
func_802EFB70(pCtrl, 0.5f, 1.0f);
|
||||
func_802EFE24(pCtrl,
|
||||
particleEmitter_setAngularVelocityRange(pCtrl,
|
||||
-500.0f, -500.0f, -500.0f,
|
||||
500.0f, 500.0f, 500.0f
|
||||
);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 4.0f, 4.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 4.0f, 4.0f);
|
||||
particleEmitter_setParticleVelocityRange(pCtrl,
|
||||
-300.0f, 250.0f, -300.0f,
|
||||
300.0f, 400.0f, 300.0f
|
||||
@@ -47,9 +47,9 @@ void __chwhipcrack_spawnPieces(Actor *this, enum asset_e model_id, s32 cnt){
|
||||
}
|
||||
|
||||
void __chwhipcrack_spawnSmoke(Actor *this, s32 cnt){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_70E_SPRITE_SMOKE_2);
|
||||
func_802EFA5C(pCtrl, 0.05f, 0.1f);
|
||||
particleEmitter_setFade(pCtrl, 0.05f, 0.1f);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 0, 7);
|
||||
particleEmitter_setPosition(pCtrl, this->position);
|
||||
func_802EFB70(pCtrl, 3.0f, 3.5f);
|
||||
@@ -62,8 +62,8 @@ void __chwhipcrack_spawnSmoke(Actor *this, s32 cnt){
|
||||
-30.0f, 150.0f, -30.0f,
|
||||
30.0f, 300.0f, 30.0f
|
||||
);
|
||||
func_802EFFA8(pCtrl, D_80373124);
|
||||
func_802EFEC0(pCtrl, 3.0f, 4.0f);
|
||||
particleEmitter_setRGB(pCtrl, D_80373124);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 3.0f, 4.0f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
@@ -105,7 +105,7 @@ void chwhipcrack_update(Actor *this){
|
||||
__chwhipcrack_setState(this, 1);
|
||||
}
|
||||
player_getPosition(plyr_pos);
|
||||
plyr_dist = ml_vec3f_distance(plyr_pos, this->position);
|
||||
plyr_dist = ml_distance_vec3f(plyr_pos, this->position);
|
||||
if(this->state == 1){
|
||||
if(plyr_dist < 700.0f){
|
||||
__chwhipcrack_setState(this, 2);
|
||||
|
@@ -55,7 +55,7 @@ climbSet(f32 bottom[3], f32 top[3], f32 radius, u32 arg3){
|
||||
}
|
||||
|
||||
void func_80298344(void){ //climbUpdateRegrab
|
||||
D_8037C58C = max_f(D_8037C58C - time_getDelta(), 0.0f);
|
||||
D_8037C58C = ml_max_f(D_8037C58C - time_getDelta(), 0.0f);
|
||||
if(D_8037C590 && ability_hasLearned(ABILITY_5_CLIMB)){
|
||||
bs_checkInterrupt(BS_INTR_C_CLIMB);
|
||||
}
|
||||
|
@@ -18,7 +18,7 @@ void func_80297FDC(void){
|
||||
D_8037C550 = D_8037C554;
|
||||
}
|
||||
else{
|
||||
D_8037C550 += mlClamp_f(diff, -0.12f, 0.12f);
|
||||
D_8037C550 += ml_clamp_f(diff, -0.12f, 0.12f);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -143,8 +143,8 @@ void func_80299A8C(void){
|
||||
|
||||
void func_80299AAC(void){
|
||||
D_8037C6CC += randf()*0.1 - 0.05;
|
||||
D_8037C6CC = max_f(D_8037C6CC, 0.9f);
|
||||
D_8037C6CC = min_f(D_8037C6CC, 1.5f);
|
||||
D_8037C6CC = ml_max_f(D_8037C6CC, 0.9f);
|
||||
D_8037C6CC = ml_min_f(D_8037C6CC, 1.5f);
|
||||
func_8030DBB4(D_8037C6C1, D_8037C6CC);
|
||||
func_8030E2C4(D_8037C6C1);
|
||||
}
|
||||
|
@@ -44,7 +44,7 @@ void func_8029A92C(void){
|
||||
func_8029A974(0.0f);
|
||||
}
|
||||
|
||||
void func_8029A95C(enum transformation_e xform_id){
|
||||
void player_setTransformation(enum transformation_e xform_id){
|
||||
D_8037D180.xform_8 = xform_id;
|
||||
}
|
||||
|
||||
|
@@ -319,7 +319,7 @@ void func_8029B73C(f32 arg0[3], f32 arg1, f32 arg2, f32 arg3, f32 arg4) {
|
||||
|
||||
if (!((arg3 * arg3) < temp_f20)) {
|
||||
temp_f20 = gu_sqrtf(temp_f20);
|
||||
ml_vec3f_set_length_copy(sp30, sp30, min_f(time_getDelta() * arg4, arg3 - temp_f20));
|
||||
ml_vec3f_set_length_copy(sp30, sp30, ml_min_f(time_getDelta() * arg4, arg3 - temp_f20));
|
||||
ml_vec3f_add(sp3C, sp3C, sp30);
|
||||
func_8028FAB0(sp3C);
|
||||
}
|
||||
@@ -677,9 +677,9 @@ void func_8029C4E4(bool arg0) {
|
||||
|
||||
if (func_80294574()) {
|
||||
if (arg0) {
|
||||
playerModel_80292260(sp3C);
|
||||
baModel_80292260(sp3C);
|
||||
} else {
|
||||
playerModel_8029223C(sp3C);
|
||||
baModel_8029223C(sp3C);
|
||||
}
|
||||
sp3C[1] = func_80294500();
|
||||
sp38 = yaw_get();
|
||||
|
@@ -100,7 +100,7 @@ void func_8029D2F8(void) {
|
||||
return;
|
||||
}
|
||||
|
||||
D_8037D224 = max_f(0.0f, D_8037D224 - time_getDelta());
|
||||
D_8037D224 = ml_max_f(0.0f, D_8037D224 - time_getDelta());
|
||||
if (D_8037D224 == 0.0f) {
|
||||
if (D_8037D211 == 1) {
|
||||
func_8029D050();
|
||||
@@ -137,7 +137,7 @@ void func_8029D448(void) {
|
||||
|
||||
void func_8029D4D8(void) {
|
||||
if (D_8037D212 != 0) {
|
||||
D_8037D224 = max_f(0.0f, D_8037D224 - time_getDelta());
|
||||
D_8037D224 = ml_max_f(0.0f, D_8037D224 - time_getDelta());
|
||||
if (!(D_8037D224 > 0.0f)) {
|
||||
D_8037D212 += -1;
|
||||
D_8037D224 = randf2(0.12f, 0.22f);
|
||||
@@ -255,7 +255,7 @@ void func_8029D968(void){
|
||||
sp18 = (temp_v0->flags & 0x4000) && func_8028B2E8();
|
||||
}
|
||||
if (sp1C || sp18) {
|
||||
func_80250D94(1.0f, 0.5f, 0.4f);
|
||||
rumbleManager_80250D94(1.0f, 0.5f, 0.4f);
|
||||
func_8028F504(0xD);
|
||||
}
|
||||
}//L8029DA18
|
||||
@@ -274,7 +274,7 @@ void func_8029D968(void){
|
||||
func_8029E3C0(4, 4.0f);
|
||||
if(func_8028F504(0xD)){
|
||||
func_8029D230();
|
||||
func_80250D94(1.0f, 0.5f, 0.4f);
|
||||
rumbleManager_80250D94(1.0f, 0.5f, 0.4f);
|
||||
}
|
||||
if(item_empty(ITEM_14_HEALTH)){
|
||||
bs_checkInterrupt(BS_INTR_13);
|
||||
|
@@ -26,15 +26,15 @@ f32 D_8037D240;
|
||||
/* .code */
|
||||
void func_8029DBF0(void){
|
||||
s32 temp_s0;
|
||||
switch(playerModel_getModelId()){
|
||||
switch(baModel_getModelId()){
|
||||
case 0x34D: //L8029DC24
|
||||
case 0x34E: //L8029DC24
|
||||
temp_s0 = (s32) func_80257C48(D_8037D23C, 1.0f, 8.0f);
|
||||
temp_s0 = (s32) ml_interpolate_f(D_8037D23C, 1.0f, 8.0f);
|
||||
func_8033A45C(0x1B, temp_s0);
|
||||
func_8033A45C(0x1D, temp_s0);
|
||||
func_8033A45C(0x1F, temp_s0);
|
||||
func_8033A45C(0x21, temp_s0);
|
||||
temp_s0 = (s32) func_80257C48(D_8037D240, 1.0f, 8.0f);
|
||||
temp_s0 = (s32) ml_interpolate_f(D_8037D240, 1.0f, 8.0f);
|
||||
func_8033A45C(0x1A, temp_s0);
|
||||
func_8033A45C(0x1C, temp_s0);
|
||||
func_8033A45C(0x1E, temp_s0);
|
||||
@@ -45,12 +45,12 @@ void func_8029DBF0(void){
|
||||
case ASSET_359_MODEL_BANJO_WALRUS: //L8029DCCC
|
||||
case ASSET_36F_MODEL_BANJO_PUMPKIN: //L8029DCCC
|
||||
case ASSET_374_MODEL_BANJO_CROC: //L8029DCCC
|
||||
func_8033A45C(0x1B, (s32) func_80257C48(D_8037D23C, 1.0f, 6.0f));
|
||||
func_8033A45C(0x1A, (s32) func_80257C48(D_8037D240, 1.0f, 6.0f));
|
||||
func_8033A45C(0x1B, (s32) ml_interpolate_f(D_8037D23C, 1.0f, 6.0f));
|
||||
func_8033A45C(0x1A, (s32) ml_interpolate_f(D_8037D240, 1.0f, 6.0f));
|
||||
break;
|
||||
|
||||
case ASSET_356_MODEL_BANJO_WISHYWASHY: //L8029DD2C
|
||||
func_8033A45C(1, (s32) func_80257C48(D_8037D240, 1.0f, 4.0f));
|
||||
func_8033A45C(1, (s32) ml_interpolate_f(D_8037D240, 1.0f, 4.0f));
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -61,7 +61,7 @@ void func_8029DD6C(void) {
|
||||
bool temp_s0;
|
||||
|
||||
func_8033A1FC();
|
||||
switch (playerModel_getModelId()) {
|
||||
switch (baModel_getModelId()) {
|
||||
case 0x34D:
|
||||
case 0x34E:
|
||||
func_8033A45C(1, D_8037D238);
|
||||
|
@@ -19,7 +19,7 @@ int func_8029E1A8(s32 arg0){
|
||||
if(0.0f == D_8037D250.unk0[arg0]){
|
||||
return 0;
|
||||
}
|
||||
D_8037D250.unk0[arg0] = max_f(0.0f, D_8037D250.unk0[arg0] - time_getDelta());
|
||||
D_8037D250.unk0[arg0] = ml_max_f(0.0f, D_8037D250.unk0[arg0] - time_getDelta());
|
||||
return D_8037D250.unk0[arg0] == 0.0f;
|
||||
}
|
||||
|
||||
|
@@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
|
||||
extern void func_80250E6C(f32, f32);
|
||||
extern void rumbleManager_80250E6C(f32, f32);
|
||||
extern void func_802BB360(s32, f32);
|
||||
extern void func_802BB378(s32, f32, f32);
|
||||
extern void func_802BB3AC(s32, f32);
|
||||
@@ -75,14 +75,14 @@ void func_80288B14(enum sfx_e arg0){
|
||||
void func_80288B34(s32 arg0, s32 arg1){
|
||||
f32 f12 = reinterpret_cast(f32, arg0);
|
||||
f32 f14 = reinterpret_cast(f32, arg1);
|
||||
func_80250E6C(f12, f14);
|
||||
rumbleManager_80250E6C(f12, f14);
|
||||
}
|
||||
|
||||
void func_80288B60(s32 arg0, s32 arg1, s32 arg2){
|
||||
f32 f12 = reinterpret_cast(f32, arg0);
|
||||
f32 f14 = reinterpret_cast(f32, arg1);
|
||||
f32 f0 = reinterpret_cast(f32, arg2);
|
||||
func_80250D94(f12, f14, f0);
|
||||
rumbleManager_80250D94(f12, f14, f0);
|
||||
}
|
||||
|
||||
void func_80288B98(vector(struct2s) **arg0, struct2s *arg1){
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
extern void func_80250E6C(f32, f32);
|
||||
extern void rumbleManager_80250E6C(f32, f32);
|
||||
extern void func_80258E60(f32[3], f32[3], f32);
|
||||
extern void func_80258EF4(f32[3], f32[3], f32);
|
||||
extern void func_80258F88(f32[3], f32[3], f32);
|
||||
|
@@ -3,7 +3,7 @@
|
||||
#include "variables.h"
|
||||
|
||||
|
||||
extern void func_80250E6C(f32, f32);
|
||||
extern void rumbleManager_80250E6C(f32, f32);
|
||||
extern void func_80258E60(f32[3], f32[3], f32);
|
||||
extern void func_80258EF4(f32[3], f32[3], f32);
|
||||
extern void func_80258F88(f32[3], f32[3], f32);
|
||||
@@ -120,14 +120,14 @@ void func_802BB4D8(s32 arg0, s32 arg1) {
|
||||
break;
|
||||
case 3:
|
||||
if (D_8037D840[phi_s1].unk18 != 0.0f) {
|
||||
temp_f0 = max_f(0.0f, D_8037D840[phi_s1].unk18 - temp_f22);
|
||||
temp_f0 = ml_max_f(0.0f, D_8037D840[phi_s1].unk18 - temp_f22);
|
||||
D_8037D840[phi_s1].unk18 = temp_f0;
|
||||
D_8037D840[phi_s1].unk10 = ml_map_f(temp_f0, D_8037D840[phi_s1].unk0, 0.0f, D_8037D840[phi_s1].unkC, D_8037D840[phi_s1].unk8);
|
||||
} else {
|
||||
D_8037D840[phi_s1].unk10 *= D_8037D840[phi_s1].unk4;
|
||||
}
|
||||
if (level_get() != LEVEL_D_CUTSCENE) {
|
||||
func_80250E6C(D_8037D840[phi_s1].unk10 * 0.25, temp_f22);
|
||||
rumbleManager_80250E6C(D_8037D840[phi_s1].unk10 * 0.25, temp_f22);
|
||||
}
|
||||
func_802BB434(phi_s1, arg0, arg1, D_8037D840[phi_s1].unk14*D_8037D840[phi_s1].unk10);
|
||||
D_8037D840[phi_s1].unk14 = (f32) -D_8037D840[phi_s1].unk14;
|
||||
|
@@ -94,11 +94,11 @@ f32 func_802BB938(f32 arg0[3], f32 arg1[3]) {
|
||||
|
||||
phi_f14 = func_802BBEA4(arg0, arg1, 350.0f, 1, 0x800000);
|
||||
phi_f12 = (D_8037D8D0.unk31) ? 25.0f : 10.0f;
|
||||
phi_f20 = max_f(phi_f12, phi_f14* 0.8 - 15.0);
|
||||
phi_f20 = ml_max_f(phi_f12, phi_f14* 0.8 - 15.0);
|
||||
func_802BAC58();
|
||||
|
||||
if (func_802BB884(arg0, &sp3C)) {
|
||||
phi_f20 = min_f(phi_f20, ml_map_f(sp3C, 90.0f, 450.0f, 20.0f, 240.0f));
|
||||
phi_f20 = ml_min_f(phi_f20, ml_map_f(sp3C, 90.0f, 450.0f, 20.0f, 240.0f));
|
||||
}
|
||||
|
||||
if (65.0 < phi_f20 && func_802BAC1C()) {
|
||||
@@ -106,7 +106,7 @@ f32 func_802BB938(f32 arg0[3], f32 arg1[3]) {
|
||||
}
|
||||
|
||||
if (gctransition_8030BDAC()) {
|
||||
phi_f20 = min_f(phi_f20, gctransition_8030BD88() * 0.8);
|
||||
phi_f20 = ml_min_f(phi_f20, gctransition_8030BD88() * 0.8);
|
||||
}
|
||||
return phi_f20;
|
||||
}
|
||||
@@ -143,7 +143,7 @@ void func_802BBA84(void) {
|
||||
D_8037D8C8 = 10.0f;
|
||||
return;
|
||||
}
|
||||
D_8037D8C8 = min_f(D_8037D8C8, func_802BB938(sp54, sp3C));
|
||||
D_8037D8C8 = ml_min_f(D_8037D8C8, func_802BB938(sp54, sp3C));
|
||||
}
|
||||
|
||||
void func_802BBC58(s32 arg0) {
|
||||
@@ -214,7 +214,7 @@ f32 func_802BBEA4(f32 arg0[3], f32 arg1[3], f32 arg2, s32 arg3, s32 arg4) {
|
||||
ml_vec3f_copy(sp4C, sp58[D_8037D8D0.unk30]);
|
||||
sp38 = func_80320B98(arg0, sp4C, sp3C, arg4);
|
||||
if (sp38 != NULL) {
|
||||
phi_f2 = ml_vec3f_distance(arg0, sp4C);
|
||||
phi_f2 = ml_distance_vec3f(arg0, sp4C);
|
||||
D_8037D8D0.unk0[D_8037D8D0.unk30] = sp38->flags;
|
||||
} else {
|
||||
phi_f2 = arg2;
|
||||
|
@@ -160,7 +160,7 @@ void func_802BC538(s32 arg0, s32 *arg1, s32 *arg2, s32 *arg3, s32 *arg4, s32 *ar
|
||||
void func_802BC5CC(void){
|
||||
int i;
|
||||
int overlay;
|
||||
overlay = get_loaded_overlay_id();
|
||||
overlay = overlayManagergetLoadedId();
|
||||
D_8037D930 = &D_80365C4C[0];
|
||||
for(i = 0; D_80365C64[i].overlay_id; i++){
|
||||
if(D_80365C64[i].overlay_id == overlay){
|
||||
|
@@ -12,7 +12,7 @@ extern f32 func_8028E82C(void);
|
||||
extern f32 func_8028EBA4(void);
|
||||
extern f32 func_8028EF88(void);
|
||||
extern int func_80320DB0(f32[3], f32, f32[3], u32);
|
||||
extern f32 ml_vec3f_dot_product(f32[3], f32[3]);
|
||||
extern f32 ml_dotProduct_vec3f(f32[3], f32[3]);
|
||||
|
||||
typedef struct {
|
||||
f32* unk0;
|
||||
@@ -77,7 +77,7 @@ bool func_802BC640(f32 arg0[3], f32 arg1[3], f32 arg2, s32 arg3) {
|
||||
f32 sp78[3];
|
||||
f32 phi_f26;
|
||||
|
||||
phi_f26 = max_f(150.0f, arg2 - 100.0f);
|
||||
phi_f26 = ml_max_f(150.0f, arg2 - 100.0f);
|
||||
switch (arg3) {
|
||||
case 1:
|
||||
phi_s4 = &D_80365D50;
|
||||
@@ -875,7 +875,7 @@ void func_802BE384(f32 arg0[3], f32 arg1[3], f32 arg2[3], f32 arg3[3], f32 arg4[
|
||||
sp1C[0] = sp34[0] - sp28[0];
|
||||
sp1C[1] = sp34[1] - sp28[1];
|
||||
sp1C[2] = sp34[2] - sp28[2];
|
||||
dp = -ml_vec3f_dot_product(arg4, sp1C);
|
||||
dp = -ml_dotProduct_vec3f(arg4, sp1C);
|
||||
arg3[0] += dp*arg4[0];
|
||||
arg3[1] += dp*arg4[1];
|
||||
arg3[2] += dp*arg4[2];
|
||||
|
@@ -61,7 +61,7 @@ void func_802BFAF0(void) {
|
||||
sp44 += func_80259198(temp_f10 * D_8037DB10, sp38 * D_8037DB14);
|
||||
func_8025727C(sp84[0], sp84[1], sp84[2], sp6C[0], sp6C[1], sp6C[2], &sp54[0], &sp54[1]);
|
||||
if ((sp34 > 180.0f) && (sp34 < 360.0f)) {
|
||||
sp34 = min_f(100.0f, (f32) ((f64) (360.0f - sp34) * 1.4));
|
||||
sp34 = ml_min_f(100.0f, (f32) ((f64) (360.0f - sp34) * 1.4));
|
||||
}
|
||||
sp48[0] = mlDiffDegF(mlNormalizeAngle(sp34), sp54[0]);
|
||||
sp48[1] = mlDiffDegF(mlNormalizeAngle(func_8028EBA4() + 180.0f), sp54[1]);
|
||||
|
@@ -56,7 +56,7 @@ void func_802BFF8C(void) {
|
||||
case MAP_27_FP_FREEZEEZY_PEAK:
|
||||
case MAP_48_FP_MUMBOS_SKULL:
|
||||
if (!func_802BE834(sp3C)) {
|
||||
D_8037DB30.unk4 = max_f(D_8037DB30.unk4 - 8.0f, -75.0f);
|
||||
D_8037DB30.unk4 = ml_max_f(D_8037DB30.unk4 - 8.0f, -75.0f);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
@@ -27,7 +27,7 @@ f32 func_802C09E8(void) {
|
||||
sp2C[0] = D_8037DBB0[0] - sp20[0];
|
||||
sp2C[1] = 0.0f;
|
||||
sp2C[2] = D_8037DBB0[2] - sp20[2];
|
||||
return min_f(gu_sqrtf(sp2C[0]*sp2C[0] + sp2C[2]*sp2C[2]), D_8037DBBC) / D_8037DBBC;
|
||||
return ml_min_f(gu_sqrtf(sp2C[0]*sp2C[0] + sp2C[2]*sp2C[2]), D_8037DBBC) / D_8037DBBC;
|
||||
}
|
||||
|
||||
void func_802C0A60(f32 arg0[3]) {
|
||||
|
@@ -102,7 +102,7 @@ f32 func_802C1030(struct56s *arg0, f32 arg1[3], f32 arg2[3]) {
|
||||
ml_vec3f_set_length_copy(sp30, sp30, 400.0f);
|
||||
ml_vec3f_add(sp3C, sp30, sp48);
|
||||
func_80259554(sp54, sp48, sp3C, arg1);
|
||||
return ml_vec3f_distance(sp54, arg2);
|
||||
return ml_distance_vec3f(sp54, arg2);
|
||||
}
|
||||
else{
|
||||
func_80323240(arg0, sp2C, sp54);
|
||||
@@ -141,8 +141,8 @@ s32 func_802C11C8(f32 arg0[3]) {
|
||||
sp3C = func_80323F74(sp2C, D_8037DBE0.unk8, -1000.0f);
|
||||
func_80323240(sp2C, sp40, sp64);
|
||||
func_80323240(sp2C, sp3C, sp58);
|
||||
sp48 = ml_vec3f_distance(sp4C, sp64);
|
||||
sp44 = ml_vec3f_distance(sp4C, sp58);
|
||||
sp48 = ml_distance_vec3f(sp4C, sp64);
|
||||
sp44 = ml_distance_vec3f(sp4C, sp58);
|
||||
sp38 = 0.0f;
|
||||
sp38 = 0.0f;
|
||||
if (mlAbsF(sp48 - sp44) > 3.0f) {
|
||||
@@ -260,7 +260,7 @@ void func_802C16CC(s32 arg0) {
|
||||
D_8037DBE0.unk28 = sp38;
|
||||
D_8037DBE0.unk0 = func_80341EC4(sp54);
|
||||
D_8037DBE0.unk8 = func_803243D0(func_802C0EC0(), sp3C);
|
||||
D_8037DBE0.unk8 = func_802453DC(func_802C0EC0(), D_8037DBE0.unk8, sp3C, func_8028D694() | 0x1E0000);
|
||||
D_8037DBE0.unk8 = func_802453DC(func_802C0EC0(), D_8037DBE0.unk8, sp3C, baMarker_8028D694() | 0x1E0000);
|
||||
D_8037DBE0.unk2C = 1;
|
||||
func_80323240(func_802C0EC0(), D_8037DBE0.unk8, D_8037DBE0.unk1C);
|
||||
if (func_802C11C8(D_8037DBE0.unk1C) == 1) {
|
||||
|
@@ -21,7 +21,7 @@ struct{
|
||||
|
||||
/* .code */
|
||||
bool func_802C2550(void) {
|
||||
return (ml_vec3f_distance(D_8037DC60.unk0, D_8037DC60.unk18) < 40.0f);
|
||||
return (ml_distance_vec3f(D_8037DC60.unk0, D_8037DC60.unk18) < 40.0f);
|
||||
}
|
||||
|
||||
void func_802C2598(f32 arg0[3], f32 arg1[3]) {
|
||||
|
@@ -101,16 +101,16 @@ void func_802C71F0(Actor *actor){
|
||||
case 0x8E:
|
||||
case 0xAC:
|
||||
case 0xB8://L802C7254
|
||||
func_8033A45C(0x1, (s32)func_80257C48(local->unk0[0], 1.0f, 6.0f));
|
||||
func_8033A45C(0x2, (s32)func_80257C48(local->unk0[1], 1.0f, 6.0f));
|
||||
func_8033A45C(0x1, (s32)ml_interpolate_f(local->unk0[0], 1.0f, 6.0f));
|
||||
func_8033A45C(0x2, (s32)ml_interpolate_f(local->unk0[1], 1.0f, 6.0f));
|
||||
break;
|
||||
|
||||
case 0x195:
|
||||
case 0x196:
|
||||
case 0x197://L802C72B0
|
||||
case 0x2FB://L802C72B4
|
||||
func_8033A45C(0x1C, (s32)func_80257C48(local->unk0[0], 1.0f, 8.0f));
|
||||
func_8033A45C(0x1D, (s32)func_80257C48(local->unk0[1], 1.0f, 8.0f));
|
||||
func_8033A45C(0x1C, (s32)ml_interpolate_f(local->unk0[0], 1.0f, 8.0f));
|
||||
func_8033A45C(0x1D, (s32)ml_interpolate_f(local->unk0[1], 1.0f, 8.0f));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@@ -81,7 +81,7 @@ void func_802CAA44(Actor *this){
|
||||
}
|
||||
|
||||
void func_802CAAF0(f32 position[3]){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(0x18);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(0x18);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_715_SPRITE_SPARKLE_RED);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_80366FB4);
|
||||
|
@@ -95,14 +95,14 @@ void func_802CB22C(ActorMarker *marker, ActorMarker *other) {
|
||||
|
||||
void func_802CB310(ParticleEmitter *p_ctrl, f32 position[3]) {
|
||||
particleEmitter_setPosition(p_ctrl, position);
|
||||
func_802EFA70(p_ctrl, 2);
|
||||
particleEmitter_setDrawMode(p_ctrl, 2);
|
||||
func_802EF9F8(p_ctrl, 0.7f);
|
||||
func_802EFA18(p_ctrl, 5);
|
||||
func_802EFA20(p_ctrl, 0.8f, 1.0f);
|
||||
func_802EF9EC(p_ctrl, 0x1F, 10000);
|
||||
particleEmitter_setSfx(p_ctrl, SFX_1F_HITTING_AN_ENEMY_3, 10000);
|
||||
particleEmitter_setSpawnIntervalRange(p_ctrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(p_ctrl, 3.5f, 3.5f);
|
||||
func_802EFA5C(p_ctrl, 0.0f, 0.65f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_ctrl, 3.5f, 3.5f);
|
||||
particleEmitter_setFade(p_ctrl, 0.0f, 0.65f);
|
||||
}
|
||||
|
||||
|
||||
@@ -111,7 +111,7 @@ void func_802CB3C8(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_
|
||||
particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(p_ctrl, model_id);
|
||||
func_802EFB70(p_ctrl, 0.5f, 0.8f);
|
||||
func_802EFE24(p_ctrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f);
|
||||
particleEmitter_setParticleVelocityRange(p_ctrl, -200.0f, 850.0f, -200.0f, 400.0f, 1000.0f, 400.0f);
|
||||
particleEmitter_emitN(p_ctrl, 2);
|
||||
}
|
||||
@@ -121,7 +121,7 @@ void func_802CB4B8(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_
|
||||
particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(p_ctrl, model_id);
|
||||
func_802EFB70(p_ctrl, 0.5f, 0.8f);
|
||||
func_802EFE24(p_ctrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f);
|
||||
particleEmitter_setParticleVelocityRange(p_ctrl, -200.0f, 850.0f, -200.0f, 400.0f, 1000.0f, 400.0f);
|
||||
particleEmitter_emitN(p_ctrl, 6);
|
||||
}
|
||||
@@ -131,7 +131,7 @@ void func_802CB5A8(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_
|
||||
particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(p_ctrl, model_id);
|
||||
func_802EFB70(p_ctrl, 1.0f, 1.0f);
|
||||
func_802EFE24(p_ctrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setParticleVelocityRange(p_ctrl, -50.0f, 750.0f, -50.0f, 120.0f, 900.0f, 120.0f);
|
||||
particleEmitter_emitN(p_ctrl, 1);
|
||||
}
|
||||
@@ -199,15 +199,15 @@ void func_802CB7C0(ActorMarker *marker, ActorMarker *other){
|
||||
func_80324DBC(2.25f, 0xD33, 0xF, sp48, NULL, func_802CB6E4, NULL);
|
||||
}
|
||||
}
|
||||
p_ctrl = partEmitList_pushNew(2);
|
||||
p_ctrl = partEmitMgr_newEmitter(2);
|
||||
phi_a2 = (sp40) ? 0x392 : (sp3C) ? 0x569 : 0x38C;
|
||||
func_802CB3C8(p_ctrl, this->position, phi_a2);
|
||||
|
||||
p_ctrl = partEmitList_pushNew(6);
|
||||
p_ctrl = partEmitMgr_newEmitter(6);
|
||||
phi_a2 = (sp40) ? 0x391 : (sp3C) ? 0x568 : 0x38D;
|
||||
func_802CB4B8(p_ctrl, this->position, phi_a2);
|
||||
|
||||
p_ctrl = partEmitList_pushNew(1);
|
||||
p_ctrl = partEmitMgr_newEmitter(1);
|
||||
phi_a2 = (sp40) ? 0x390 : (sp3C) ? 0x567 : 0x38E;
|
||||
func_802CB5A8(p_ctrl, this->position, phi_a2);
|
||||
}
|
||||
|
@@ -49,7 +49,7 @@ bool func_802CC2A0(Actor *this) {
|
||||
if (!this->marker->unk14_21) {
|
||||
return TRUE;
|
||||
}
|
||||
func_80255FE4(sp20, local->unk8, local->unk18, func_802575BC(local->unk4 + 0.05));
|
||||
ml_interpolate_vec3f(sp20, local->unk8, local->unk18, func_802575BC(local->unk4 + 0.05));
|
||||
sp20[1] += 60.0f;
|
||||
return func_80320DB0(sp20, 50.0f, sp2C, 0) == 0;
|
||||
}
|
||||
@@ -351,7 +351,7 @@ void func_802CCC5C(Actor *this) {
|
||||
spB0 = (spB0 < spAC) ? spAC : MIN(spA8 , spB0);
|
||||
}
|
||||
func_8030DBB4(local->unk0, spB0);
|
||||
phi_f12 = 1.0f - ml_vec3f_distance(spC4, this->position) / 2000.0f;
|
||||
phi_f12 = 1.0f - ml_distance_vec3f(spC4, this->position) / 2000.0f;
|
||||
if(0.0f > phi_f12){
|
||||
phi_f12 = 0.0f;
|
||||
}
|
||||
@@ -362,7 +362,7 @@ void func_802CCC5C(Actor *this) {
|
||||
}
|
||||
}
|
||||
if (this->unk10_25 != 0) {
|
||||
if (func_8025773C(&local->unk28, spB8) != 0) {
|
||||
if (ml_timer_update(&local->unk28, spB8) != 0) {
|
||||
spBC = 2;
|
||||
}
|
||||
if (local->unk3A == 2) {
|
||||
@@ -411,7 +411,7 @@ void func_802CCC5C(Actor *this) {
|
||||
local->unk4 = 1.0f;
|
||||
}
|
||||
sp9C = func_802575BC(local->unk4);
|
||||
func_80255FE4(this->position, local->unk8, local->unk18, sp9C);
|
||||
ml_interpolate_vec3f(this->position, local->unk8, local->unk18, sp9C);
|
||||
this->yaw = local->unk14 + (sp9C * (local->unk24 - local->unk14));
|
||||
if ((func_8033567C(this->unk148) == 0x10E) && (func_80335794(this->unk148) > 0)) {
|
||||
func_80335924(this->unk148, 0x10F, 0.1f, 0.45f);
|
||||
@@ -455,7 +455,7 @@ void func_802CCC5C(Actor *this) {
|
||||
sp68[1] = this->position[1];
|
||||
sp68[2] = this->position[2];
|
||||
sp68[0] = 0.0f;
|
||||
if (ml_vec3f_distance(sp8C, sp68) < 800.0f) {
|
||||
if (ml_distance_vec3f(sp8C, sp68) < 800.0f) {
|
||||
spBC = 3;
|
||||
}
|
||||
}
|
||||
|
@@ -122,7 +122,7 @@ void func_802CEDE4(f32 target_position[3], f32 p_ctrl[3], f32 distance, f32 *arg
|
||||
p_ctrl[1] = randf2(-distance, distance);
|
||||
p_ctrl[2] = randf2(-distance, distance);
|
||||
phi_s1++;
|
||||
}while(phi_s1 < 10 && ml_vec3f_distance(target_position, p_ctrl) < distance);
|
||||
}while(phi_s1 < 10 && ml_distance_vec3f(target_position, p_ctrl) < distance);
|
||||
*arg3 = randf2(arg4, arg5);
|
||||
}
|
||||
|
||||
@@ -237,7 +237,7 @@ void chBeeSwarm_802CF434(Actor *this) {
|
||||
local = (ActorLocal_core2_47BD0 *) &this->local;
|
||||
for(phi_s2 = 0, phi_s0 = local->unk8; phi_s2 < local->unk0; phi_s2++){
|
||||
chBeeSwarm_802CF1C8(phi_s0->unk18, phi_s0->unk0, phi_s0->unkC, phi_s0->unk24[2], 150.0f, phi_s0->unk24, &sp58);
|
||||
if (ml_vec3f_distance(phi_s0->unk0, phi_s0->unk18) < 50.0f) {
|
||||
if (ml_distance_vec3f(phi_s0->unk0, phi_s0->unk18) < 50.0f) {
|
||||
func_802CEEA4(this, phi_s0);
|
||||
}
|
||||
phi_s0++;
|
||||
@@ -278,18 +278,18 @@ bool chBeeSwarm_802CF5E4(Actor *this){
|
||||
void chBeeSwarm_802CF610(Actor *this, ParticleEmitter *p_ctrl, f32 position[3]) {
|
||||
func_8030E6A4(SFX_66_BIRD_AUUGHH, randf2(1.75f, 1.85f), 15000);
|
||||
particleEmitter_setPosition(p_ctrl, position);
|
||||
func_802EFA70(p_ctrl, 2);
|
||||
particleEmitter_setDrawMode(p_ctrl, 2);
|
||||
func_802EF9F8(p_ctrl, 0.5f);
|
||||
func_802EFA18(p_ctrl, 3);
|
||||
func_802EFA20(p_ctrl, 0.8f, 1.0f);
|
||||
func_802EF9EC(p_ctrl, 0x1F, 10000);
|
||||
particleEmitter_setSfx(p_ctrl, SFX_1F_HITTING_AN_ENEMY_3, 10000);
|
||||
particleEmitter_setSpawnIntervalRange(p_ctrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(p_ctrl, 2.0f, 2.5f);
|
||||
func_802EFA5C(p_ctrl, 0.0f, 0.65f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_ctrl, 2.0f, 2.5f);
|
||||
particleEmitter_setFade(p_ctrl, 0.0f, 0.65f);
|
||||
particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(p_ctrl,this->marker->modelId);
|
||||
func_802EFB70(p_ctrl, 0.25f, 0.25f);
|
||||
func_802EFE24(p_ctrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setParticleVelocityRange(p_ctrl, -300.0f, 750.0f, -300.0f, 300.0f, 900.0f, 300.0f);
|
||||
particleEmitter_emitN(p_ctrl, 1);
|
||||
}
|
||||
@@ -455,12 +455,12 @@ void chBeeSwarm_update(Actor *this) {
|
||||
if (chBeeSwarm_802CF5E4(this)) {
|
||||
func_80328A84(this, 2U);
|
||||
}
|
||||
if (ml_vec3f_distance(this->position, this->unk1C) < 50.0f) {
|
||||
if (ml_distance_vec3f(this->position, this->unk1C) < 50.0f) {
|
||||
func_802CEF54(this, local->unkC, 100.0f);
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (ml_vec3f_distance(this->position, this->unk1C) < 50.0f) {
|
||||
if (ml_distance_vec3f(this->position, this->unk1C) < 50.0f) {
|
||||
func_802CEF54(this, local->unkC, 100.0f);
|
||||
}
|
||||
chBeeSwarm_802CF518(this);
|
||||
@@ -471,7 +471,7 @@ void chBeeSwarm_update(Actor *this) {
|
||||
this->unk1C[2] = spB4[2];
|
||||
this->unk1C[1] += 50.0f;
|
||||
this->unk28 = 400.0f;
|
||||
if (ml_vec3f_distance(this->position, this->unk1C) < 100.0f) {
|
||||
if (ml_distance_vec3f(this->position, this->unk1C) < 100.0f) {
|
||||
func_802CEF54(this, spB4, 50.0f);
|
||||
func_80328A84(this, 4);
|
||||
}
|
||||
@@ -489,29 +489,29 @@ void chBeeSwarm_update(Actor *this) {
|
||||
sp68[0] = local->unk8[local->unk0].unk0[0] + this->position[0];
|
||||
sp68[1] = local->unk8[local->unk0].unk0[1] + this->position[1];
|
||||
sp68[2] = local->unk8[local->unk0].unk0[2] + this->position[2];
|
||||
chBeeSwarm_802CF610(this, partEmitList_pushNew(1), sp68);
|
||||
chBeeSwarm_802CF610(this, partEmitMgr_newEmitter(1), sp68);
|
||||
this->unk60 -= 0.2;
|
||||
}
|
||||
}
|
||||
if (local->unk0 == 0) {
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
if (ml_vec3f_distance(this->position, this->unk1C) < 50.0f) {
|
||||
if (ml_distance_vec3f(this->position, this->unk1C) < 50.0f) {
|
||||
func_802CEF54(this, (s32 *) spB4, 50.0f);
|
||||
}
|
||||
if (ml_vec3f_distance(this->position, spB4) > 100.0f) {
|
||||
if (ml_distance_vec3f(this->position, spB4) > 100.0f) {
|
||||
func_80328A84(this, 3);
|
||||
}
|
||||
chBeeSwarm_802CF57C(this);
|
||||
break;
|
||||
case 5:
|
||||
if (ml_vec3f_distance(this->position, this->unk1C) < 50.0f) {
|
||||
if (ml_distance_vec3f(this->position, this->unk1C) < 50.0f) {
|
||||
func_80328A84(this, 2);
|
||||
}
|
||||
chBeeSwarm_802CF518(this);
|
||||
break;
|
||||
case 6:
|
||||
if (ml_vec3f_distance(this->position, this->unk1C) < 50.0f) {
|
||||
if (ml_distance_vec3f(this->position, this->unk1C) < 50.0f) {
|
||||
func_80328A84(this, local->unk6);
|
||||
}
|
||||
break;
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/particle.h"
|
||||
|
||||
#define ABS(s) (((s) >= 0) ? (s) : -(s))
|
||||
|
||||
@@ -62,17 +63,17 @@ void chShrapnel_emitExplosion(Actor *this) {
|
||||
ParticleEmitter *temp_v0;
|
||||
|
||||
func_802BB3DC(0, 60.0f, 0.9f);
|
||||
temp_v0 = partEmitList_pushNew(1U);
|
||||
temp_v0 = partEmitMgr_newEmitter(1U);
|
||||
particleEmitter_setSprite(temp_v0, ASSET_4A0_SPRITE_EXPLOSION);
|
||||
func_802EFA5C(temp_v0, 0.1f, 0.2f);
|
||||
func_802EFA70(temp_v0, 8);
|
||||
particleEmitter_setFade(temp_v0, 0.1f, 0.2f);
|
||||
particleEmitter_setDrawMode(temp_v0, PART_EMIT_NO_LOOP);
|
||||
particleEmitter_setStartingFrameRange(temp_v0, 0, 0);
|
||||
particleEmitter_setParticleFramerateRange(temp_v0, 4.0f, 4.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(temp_v0, 0.0f, 200.0f, 0.0f, 0.0f, 200.0f, 0.0f);
|
||||
particleEmitter_setPosition(temp_v0, this->position);
|
||||
func_802EFB70(temp_v0, 3.0f, 3.0f);
|
||||
func_802EFB84(temp_v0, 8.0f, 8.0f);
|
||||
func_802EFEC0(temp_v0, 0.5f, 0.5f);
|
||||
particleEmitter_setParticleLifeTimeRange(temp_v0, 0.5f, 0.5f);
|
||||
particleEmitter_setParticleVelocityRange(temp_v0, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);
|
||||
particleEmitter_emitN(temp_v0, 1);
|
||||
}
|
||||
@@ -80,33 +81,33 @@ void chShrapnel_emitExplosion(Actor *this) {
|
||||
void chShrapnel_emitSmoke(Actor *this) {
|
||||
ParticleEmitter *temp_v0;
|
||||
|
||||
temp_v0 = partEmitList_pushNew(6U);
|
||||
temp_v0 = partEmitMgr_newEmitter(6U);
|
||||
particleEmitter_setSprite(temp_v0, ASSET_70E_SPRITE_SMOKE_2);
|
||||
func_802EFA5C(temp_v0, 0.05f, 0.1f);
|
||||
particleEmitter_setFade(temp_v0, 0.05f, 0.1f);
|
||||
particleEmitter_setStartingFrameRange(temp_v0, 0, 7);
|
||||
particleEmitter_setPosition(temp_v0, this->position);
|
||||
func_802EFB70(temp_v0, 1.0f, 1.5f);
|
||||
func_802EFB84(temp_v0, 2.0f, 3.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(temp_v0, -75.0f, 25.0f, -75.0f, 75.0f, 75.0f, 75.0f);
|
||||
particleEmitter_setParticleVelocityRange(temp_v0, -70.0f, 50.0f, -70.0f, 70.0f, 100.0f, 70.0f);
|
||||
func_802EFFA8(temp_v0, &D_803673F8);
|
||||
func_802EFEC0(temp_v0, 3.0f, 4.0f);
|
||||
particleEmitter_setRGB(temp_v0, &D_803673F8);
|
||||
particleEmitter_setParticleLifeTimeRange(temp_v0, 3.0f, 4.0f);
|
||||
particleEmitter_emitN(temp_v0, 6);
|
||||
}
|
||||
|
||||
void chShrapnel_emitBodyParts(Actor *this, enum model_e model_id, s32 n) {
|
||||
ParticleEmitter *temp_v0;
|
||||
|
||||
temp_v0 = partEmitList_pushNew(n);
|
||||
temp_v0 = partEmitMgr_newEmitter(n);
|
||||
particleEmitter_setParticleAccelerationRange(temp_v0, 0.0f, -800.0f, 0.0f, 0.0f, -800.0f, 0.0f);
|
||||
func_802EF9F8(temp_v0, 0.6f);
|
||||
func_802EFA18(temp_v0, 1);
|
||||
particleEmitter_setModel(temp_v0, model_id);
|
||||
particleEmitter_setPosition(temp_v0, this->position);
|
||||
func_802EFB70(temp_v0, 0.05f, 2.0f);
|
||||
func_802EFE24(temp_v0, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setAngularVelocityRange(temp_v0, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setSpawnIntervalRange(temp_v0, 0.0f, 0.01f);
|
||||
func_802EFEC0(temp_v0, 10.0f, 10.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(temp_v0, 10.0f, 10.0f);
|
||||
particleEmitter_setParticleVelocityRange(temp_v0, -500.0f, 400.0f, -500.0f, 500.0f, 800.0f, 500.0f);
|
||||
particleEmitter_emitN(temp_v0, n);
|
||||
}
|
||||
|
@@ -29,7 +29,7 @@ void func_802D2DA0(Actor *this) {
|
||||
if (--this->unk38_31 == 0) {
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
pCtrl = partEmitList_pushNew((s32) this->unk60);
|
||||
pCtrl = partEmitMgr_newEmitter((s32) this->unk60);
|
||||
for(phi_s6 = 0; phi_s6 < (s32)this->unk60; phi_s6++){
|
||||
for(i = 0; i < 3; i++){
|
||||
sp70[i] = this->position[i] + randf()*2*this->unkF4_8 - ((i == 1)? 0: this->unkF4_8);
|
||||
|
@@ -60,7 +60,7 @@ struct31s D_80367C34 = {{0.2f, 0.4f}, {0.1f, 0.1f}, {0.0f, 0.01f}, {3.0f, 3.5f},
|
||||
void func_802D7960(f32 position[3], enum asset_e sprite_id) {
|
||||
ParticleEmitter *p_emitter;
|
||||
|
||||
p_emitter = partEmitList_pushNew(1);
|
||||
p_emitter = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setSprite(p_emitter, sprite_id);
|
||||
particleEmitter_setStartingFrameRange(p_emitter, 0, 7);
|
||||
particleEmitter_setPosition(p_emitter, position);
|
||||
@@ -73,16 +73,16 @@ void func_802D7960(f32 position[3], enum asset_e sprite_id) {
|
||||
void func_802D7A40(f32 position[3], enum asset_e sprite_id) {
|
||||
ParticleEmitter *p_emitter;
|
||||
|
||||
p_emitter = partEmitList_pushNew(8);
|
||||
p_emitter = partEmitMgr_newEmitter(8);
|
||||
particleEmitter_setSprite(p_emitter, sprite_id);
|
||||
particleEmitter_setPosition(p_emitter, position);
|
||||
particleEmitter_setParticleAccelerationRange(p_emitter, 0.0f, -250.0f, 0.0f, 0.0f, -250.0f, 0.0f);
|
||||
particleEmitter_setParticleVelocityRange(p_emitter, -100.0f, 200.0f, -100.0f, 100.0f, 350.0f, 100.0f);
|
||||
func_802EFE24(p_emitter, 0.0f, 0.0f, 200.0f, 0.0f, 0.0f, 240.0f);
|
||||
particleEmitter_setAngularVelocityRange(p_emitter, 0.0f, 0.0f, 200.0f, 0.0f, 0.0f, 240.0f);
|
||||
func_802EFB70(p_emitter, 0.47f, 0.47f);
|
||||
func_802EFB84(p_emitter, 0.03f, 0.03f);
|
||||
func_802EFA5C(p_emitter, 0.4f, 0.8f);
|
||||
func_802EFEC0(p_emitter, 0.9f, 0.9f);
|
||||
particleEmitter_setFade(p_emitter, 0.4f, 0.8f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_emitter, 0.9f, 0.9f);
|
||||
particleEmitter_emitN(p_emitter, 8);
|
||||
}
|
||||
|
||||
|
@@ -46,7 +46,7 @@ void func_802D8730(Actor *this) {
|
||||
pCtrl = func_802F4094(this->position, 40.0f);
|
||||
func_802EFB70(pCtrl, 0.05f, 0.06f);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -3400.0f, 0.0f, 0.0f, -3400.0f, 0.0f);
|
||||
func_802EFFA8(pCtrl, D_80367C84);
|
||||
particleEmitter_setRGB(pCtrl, D_80367C84);
|
||||
particleEmitter_setParticleVelocityRange(pCtrl, -180.0f, 200.0f, -180.0f, 180.0f, 400.0f, 180.0f);
|
||||
particleEmitter_emitN(pCtrl, 9);
|
||||
}
|
||||
|
@@ -48,7 +48,7 @@ void func_802D88E0(Actor *this) {
|
||||
this->position_y += this->unk1C[1];
|
||||
}
|
||||
if (this->unk60 > 0.5) {
|
||||
pCtrl = partEmitList_pushNew(1U);
|
||||
pCtrl = partEmitMgr_newEmitter(1U);
|
||||
for(i = 0; i < 3; i++){
|
||||
sp5C[i] = this->position[i] + (randf()*2)*25 - ((i == 1) ? 0 : 25);
|
||||
}
|
||||
|
@@ -34,15 +34,15 @@ typedef struct {
|
||||
/* .code */
|
||||
void func_802DABA0(ParticleEmitter *pCtrl, f32 position[3], f32 scale, enum asset_e model_id) {
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
func_802EFA70(pCtrl, 2);
|
||||
particleEmitter_setDrawMode(pCtrl, 2);
|
||||
func_802EF9F8(pCtrl, 0.7f);
|
||||
func_802EFA18(pCtrl, 5);
|
||||
func_802EFA20(pCtrl, 0.8f, 1.0f);
|
||||
func_802EF9EC(pCtrl, 0x1F, 6000);
|
||||
particleEmitter_setSfx(pCtrl, SFX_1F_HITTING_AN_ENEMY_3, 6000);
|
||||
func_802EFB70(pCtrl, scale, scale);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 3.5f, 3.5f);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.65f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 3.5f, 3.5f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.65f);
|
||||
particleEmitter_setModel(pCtrl, model_id);
|
||||
}
|
||||
|
||||
@@ -53,7 +53,7 @@ void func_802DAC84(ParticleEmitter *pCtrl, Actor *this, enum asset_e model_id) {
|
||||
};
|
||||
particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_80367EA0);
|
||||
func_802DABA0(pCtrl, this->position, this->scale, model_id);
|
||||
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);
|
||||
particleEmitter_emitN(pCtrl, 6);
|
||||
}
|
||||
|
||||
@@ -65,7 +65,7 @@ void func_802DAD08(ParticleEmitter *pCtrl, Actor *this, enum asset_e model_id) {
|
||||
};
|
||||
particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_80367ED0);
|
||||
func_802DABA0(pCtrl, this->position, this->scale, model_id);
|
||||
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);
|
||||
particleEmitter_emitN(pCtrl, 1);
|
||||
}
|
||||
|
||||
@@ -76,7 +76,7 @@ void func_802DAD8C(ParticleEmitter *pCtrl, Actor *this, enum asset_e model_id) {
|
||||
};
|
||||
particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_80367F00);
|
||||
func_802DABA0(pCtrl, this->position, this->scale, model_id);
|
||||
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);
|
||||
particleEmitter_emitN(pCtrl, 2);
|
||||
}
|
||||
|
||||
|
@@ -27,7 +27,7 @@ struct40s D_80367F60 = {
|
||||
{ {0.1f, 0.5f}, {1.0f, 1.5f}, {0.0f, 0.01f}, {0.5f, 1.4f},
|
||||
0.0f, 0.01f
|
||||
},
|
||||
4.0f, 1.0f
|
||||
4, 1
|
||||
};
|
||||
|
||||
struct43s D_80367F90 ={
|
||||
@@ -38,23 +38,23 @@ struct43s D_80367F90 ={
|
||||
|
||||
/* .code */
|
||||
void func_802DBCE0(ParticleEmitter *pCtrl, f32 arg1[3]){
|
||||
ParticleEmitter *other = partEmitList_pushNew(1);
|
||||
ParticleEmitter *other = partEmitMgr_newEmitter(1);
|
||||
if(func_8024549C(arg1, 4.0f)){
|
||||
arg1[1] += 2.0f;
|
||||
particleEmitter_setSprite(other, ASSET_70C_SPRITE_RIPPLE);
|
||||
func_802EFA70(other, 1);
|
||||
particleEmitter_setDrawMode(other, 1);
|
||||
particleEmitter_setPosition(other, arg1);
|
||||
func_802EFB70(other, 0.1f, 0.1f);
|
||||
func_802EFB84(other, 1.0f, 1.4f);
|
||||
func_802EFEC0(other, 1.0f, 1.4f);
|
||||
func_802EFA5C(other, 0.0f, 0.5f);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 1.0f, 1.4f);
|
||||
particleEmitter_setFade(other, 0.0f, 0.5f);
|
||||
particleEmitter_emitN(other, 1);
|
||||
func_8030E878(SFX_413_WATER_RIPPLE, randf2(1.0f, 1.4f), 0x4e20, arg1, 0.0f, 3500.0f);
|
||||
}
|
||||
else{//L802DBDF4
|
||||
particleEmitter_setSprite(other, ASSET_700_SPRITE_DUST);
|
||||
particleEmitter_setStartingFrameRange(other, 0, 7);
|
||||
func_802EFFA8(other, D_80367F54);
|
||||
particleEmitter_setRGB(other, D_80367F54);
|
||||
particleEmitter_setPosition(other, arg1);
|
||||
particleEmitter_setParticleVelocityRange(other, -230.0f, 30.0f, -230.0f, 230.0f, 110.0f, 230.0f);
|
||||
func_802EFC28(other, &D_80367F60);
|
||||
@@ -66,14 +66,14 @@ void func_802DBE9C(Actor *this, ParticleEmitter *pCtrl){
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_80367F90);
|
||||
particleEmitter_setModel(pCtrl, 0x344);
|
||||
particleEmitter_setPosition(pCtrl, this->position);
|
||||
func_802EFA70(pCtrl, 4);
|
||||
func_802EFE24(pCtrl, -450.0f, -450.0f, -450.0f, 450.0f, 450.0f, 450.0f);
|
||||
particleEmitter_setDrawMode(pCtrl, 4);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -450.0f, -450.0f, -450.0f, 450.0f, 450.0f, 450.0f);
|
||||
func_802EFA18(pCtrl, 1);
|
||||
particleEmitter_setParticleCallback(pCtrl, func_802DBCE0);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 7.0f, 7.0f);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.3f);
|
||||
func_802F0D54(pCtrl);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 7.0f, 7.0f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.3f);
|
||||
particleEmitter_manualFree(pCtrl);
|
||||
}
|
||||
|
||||
int func_802DBF94(Actor *this, s32 arg1){
|
||||
@@ -91,7 +91,7 @@ void func_802DC018(Actor *this){
|
||||
|
||||
if(!this->unk16C_4){
|
||||
actor_collisionOff(this);
|
||||
local->unk0 = partEmitList_pushNew(16);
|
||||
local->unk0 = partEmitMgr_newEmitter(16);
|
||||
func_802DBE9C(this, local->unk0);
|
||||
this->unk16C_4 = TRUE;
|
||||
}
|
||||
|
@@ -1,6 +1,8 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/particle.h"
|
||||
|
||||
|
||||
extern bool func_8024DB50(f32[3], f32);
|
||||
|
||||
@@ -27,11 +29,11 @@ struct40s D_80368004 = {
|
||||
void func_802DC110(f32 *position, enum asset_e sprite_id) {
|
||||
ParticleEmitter *pCtrl;
|
||||
|
||||
pCtrl = partEmitList_pushNew(1);
|
||||
pCtrl = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
func_802EFA70(pCtrl, 0x10);
|
||||
particleEmitter_setDrawMode(pCtrl, PART_EMIT_NO_DEPTH);
|
||||
func_802EFC28(pCtrl, &D_80368004);
|
||||
}
|
||||
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
extern f32 ml_vec3f_distance_squared(f32 [3], f32 [3]);
|
||||
extern f32 ml_distanceSquared_vec3f(f32 [3], f32 [3]);
|
||||
extern f32 func_80309B24(f32[3]);
|
||||
extern void func_80328FF0(Actor *, f32);
|
||||
extern void mapSpecificFlags_setN(s32, s32, s32);
|
||||
@@ -78,7 +78,7 @@ bool func_802E0DC0(f32 arg0[3]){
|
||||
f32 pad0;
|
||||
|
||||
player_getPosition(sp2C);
|
||||
return (4000000.0f < ml_vec3f_distance_squared(sp2C, arg0))
|
||||
return (4000000.0f < ml_distanceSquared_vec3f(sp2C, arg0))
|
||||
|| ( (arg0[1] - func_80309724(arg0) < 70.0f) && (func_80309B24(arg0) - arg0[1] < 70.0f));
|
||||
}
|
||||
|
||||
|
@@ -16,7 +16,7 @@ void func_802E3BD0(s32 frame_buffer_indx);
|
||||
int func_802E49F0(void);
|
||||
|
||||
/* .code */
|
||||
void func_802E2E40(void){
|
||||
void mapSavestate_init(void){
|
||||
int i;
|
||||
for(i = 0; i < 0x9A; i++){
|
||||
D_8037E650[i] = 0;
|
||||
|
@@ -152,7 +152,7 @@ void func_802E39D0(Gfx **gdl, Mtx **mptr, Vtx **vptr, s32 arg3, s32 arg4){
|
||||
|
||||
gcdialog_draw(gdl, mptr, vptr);
|
||||
if(!func_802E49F0()){
|
||||
func_802FAB54(gdl, mptr, vptr);
|
||||
itemPrint_draw(gdl, mptr, vptr);
|
||||
}
|
||||
|
||||
printbuffer_draw(gdl, mptr, vptr);
|
||||
@@ -264,7 +264,7 @@ void func_802E3E7C(enum game_mode_e mode){
|
||||
map = D_8037E8E0.map;
|
||||
sp28 = D_8037E8E0.exit;
|
||||
prev_mode = D_8037E8E0.unk0;
|
||||
func_802E3BF8(2, 0);
|
||||
func_802E3BF8(GAME_MODE_2_UNKNOWN, 0);
|
||||
if(!func_80320454(0x21, 0) || map_getLevel(map_get()) == map_getLevel(D_8037E8E0.map)){
|
||||
if(!func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE))
|
||||
mapSavestate_save(map_get());
|
||||
@@ -356,8 +356,8 @@ void func_802E412C(s32 arg0, s32 arg1){
|
||||
}
|
||||
|
||||
void func_802E4170(void){
|
||||
func_802E3BF8(2,0);
|
||||
func_80240844();
|
||||
func_802E3BF8(GAME_MODE_2_UNKNOWN,0);
|
||||
defragManager_free();
|
||||
func_802E5F68();
|
||||
if(!func_802E4A08())
|
||||
func_802F4F64();
|
||||
@@ -374,7 +374,7 @@ void func_802E4170(void){
|
||||
func_8030D8DC();
|
||||
}
|
||||
|
||||
void func_802E4214(s32 arg0){
|
||||
void func_802E4214(enum map_e map_id){
|
||||
D_8037E8E0.transition = TRANSITION_0_NONE;
|
||||
D_8037E8E0.unk19 = D_8037E8E0.unk18 = 0;
|
||||
D_8037E8E0.map = D_8037E8E0.exit = D_8037E8E0.unk17 = 0;
|
||||
@@ -392,7 +392,7 @@ void func_802E4214(s32 arg0){
|
||||
if(!func_802E4A08())
|
||||
func_802F51B8();
|
||||
func_802E5F38();
|
||||
func_802407C0();
|
||||
defragManager_init();
|
||||
func_8033A1A4();
|
||||
func_80253428(1);
|
||||
func_80288070();
|
||||
@@ -408,12 +408,12 @@ void func_802E4214(s32 arg0){
|
||||
D_8037E8E0.unk8 = 0.0f;
|
||||
func_8033DC9C(0.0f);
|
||||
func_8033DD04(0);
|
||||
func_803216D0(arg0);
|
||||
func_8030AFA0(arg0);
|
||||
func_803216D0(map_id);
|
||||
func_8030AFA0(map_id);
|
||||
func_802E3854();
|
||||
func_802E38E8(arg0, 0, 0);
|
||||
func_802E38E8(map_id, 0, 0);
|
||||
D_8037E8E0.unk0 = 0;
|
||||
func_802E3BF8(3,1);
|
||||
func_802E3BF8(GAME_MODE_3_NORMAL,1);
|
||||
}
|
||||
|
||||
void func_802E4384(void){
|
||||
@@ -579,8 +579,8 @@ void func_802E48B8(enum game_mode_e mode, s32 arg1){
|
||||
func_802E3BF8(mode, arg1);
|
||||
}
|
||||
|
||||
s32 func_802E48D8(void){
|
||||
func_802555C4();
|
||||
s32 game_defrag(void){
|
||||
func_802555C4(); //reset defragged flag in memory.c
|
||||
if( !level_get() )
|
||||
return NULL;
|
||||
|
||||
@@ -590,7 +590,7 @@ s32 func_802E48D8(void){
|
||||
func_802BA128();
|
||||
modelRender_defrag();
|
||||
func_8028FB68();
|
||||
func_802F0E58();
|
||||
partEmitMgr_defrag();
|
||||
mapModel_defrag();
|
||||
func_803086B4();
|
||||
actorArray_defrag();
|
||||
@@ -600,7 +600,7 @@ s32 func_802E48D8(void){
|
||||
gcdialog_defrag();
|
||||
if(D_8037E8E0.game_mode == GAME_MODE_4_PAUSED)
|
||||
gcpausemenu_defrag();
|
||||
switch(get_loaded_overlay_id()){
|
||||
switch(overlayManagergetLoadedId()){
|
||||
case OVERLAY_2_WHALE:
|
||||
func_803894A0();
|
||||
break;
|
||||
@@ -608,7 +608,7 @@ s32 func_802E48D8(void){
|
||||
func_80350E00();
|
||||
break;
|
||||
}
|
||||
return func_802555D0();
|
||||
return func_802555D0(); //returns defrag flag in memory.c
|
||||
}
|
||||
|
||||
void func_802E49E0(void){
|
||||
|
@@ -213,15 +213,15 @@ bool func_802E74A0(f32 arg0[3], f32 arg1, f32 arg2[3], f32 arg3[3]) {
|
||||
sp24[0] = (arg2[0] + arg3[0]) / 2;
|
||||
sp24[1] = (arg2[1] + arg3[1]) / 2;
|
||||
sp24[2] = (arg2[2] + arg3[2]) / 2;
|
||||
sp20 = ml_vec3f_distance(sp24, arg0);
|
||||
if ((ml_vec3f_distance(sp24, arg2) + arg1) <= sp20) {
|
||||
sp20 = ml_distance_vec3f(sp24, arg0);
|
||||
if ((ml_distance_vec3f(sp24, arg2) + arg1) <= sp20) {
|
||||
return FALSE;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool func_802E7588(f32 arg0[3], f32 arg1, f32 arg2[3], f32 arg3) {
|
||||
return (ml_vec3f_distance(arg0, arg2) < (arg1 + arg3));
|
||||
return (ml_distance_vec3f(arg0, arg2) < (arg1 + arg3));
|
||||
}
|
||||
|
||||
void func_802E75D0(f32 p1[3], f32 p2[3], s32 boundMin[3], s32 boundMax[3], f32 diff[3]) {
|
||||
@@ -740,7 +740,7 @@ s32 func_802E9118(BKCollisionList * collision_list, BKVertexList *vtx_list, f32
|
||||
s32 sp3C;
|
||||
s32 i;
|
||||
|
||||
if (((f32)vtx_list->unk16 * arg4) <= (ml_vec3f_distance(arg6, arg2) - arg7)) {
|
||||
if (((f32)vtx_list->unk16 * arg4) <= (ml_distance_vec3f(arg6, arg2) - arg7)) {
|
||||
return 0;
|
||||
}
|
||||
mlMtxIdent();
|
||||
@@ -976,7 +976,7 @@ s32 func_802E9DD8(BKCollisionList *collisionList, BKVertexList *vtxList, f32 arg
|
||||
s32 sp30;
|
||||
s32 i;
|
||||
|
||||
if ((vtxList->unk16 * arg4) <= (ml_vec3f_distance(arg5, arg2) - arg6)) {
|
||||
if ((vtxList->unk16 * arg4) <= (ml_distance_vec3f(arg5, arg2) - arg6)) {
|
||||
return 0;
|
||||
}
|
||||
mlMtxIdent();
|
||||
|
@@ -346,7 +346,7 @@ s32 func_802EB8A0(BKModelUnk14List *arg0, f32 *position, f32 *rotation, f32 scal
|
||||
sp44[1] = sp5C[1] - sp68[1];
|
||||
sp44[2] = sp5C[2] - sp68[2];
|
||||
temp_f0 = gu_sqrtf(sp44[0]*sp44[0] + sp44[1]*sp44[1] + sp44[2]*sp44[2]);
|
||||
if ((arg7 + temp_f0 >= ml_vec3f_distance(sp68, sp74))) {
|
||||
if ((arg7 + temp_f0 >= ml_distance_vec3f(sp68, sp74))) {
|
||||
return (s32) var_s0->unk8;
|
||||
}
|
||||
}
|
||||
@@ -525,7 +525,7 @@ s32 func_802EC238(BKModelUnk14List *arg0, f32 arg1[3], f32 arg2[3], f32 arg3, f3
|
||||
sp40[1] = var_s0->unk2[1];
|
||||
sp40[2] = var_s0->unk2[2];
|
||||
arg3 = var_s0->unk0;
|
||||
if (ml_vec3f_distance(sp40, sp54) < arg3)
|
||||
if (ml_distance_vec3f(sp40, sp54) < arg3)
|
||||
return var_s0->unk8;
|
||||
if (!var_s0->unk0){
|
||||
|
||||
|
@@ -29,8 +29,8 @@ void func_802EDD68(ParticleEmitter *caller, f32 pos[3]){
|
||||
ParticleEmitter *func_802EDD8C(f32 pos[3], f32 xz_range, f32 arg2){
|
||||
ParticleEmitter *pCtrl = func_802F0EF0(D_803808F0);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_70A_SPRITE_BUBBLE_1);
|
||||
func_802EFA70(pCtrl, 4);
|
||||
func_802EF9E4(pCtrl, 0xff);
|
||||
particleEmitter_setDrawMode(pCtrl, 4);
|
||||
particleEmitter_setAlpha(pCtrl, 0xff);
|
||||
particleEmitter_setParticleAccelerationRange( pCtrl,
|
||||
0.0f, 150.0f, 0.0f,
|
||||
0.0f, 150.0f, 0.0f
|
||||
@@ -38,14 +38,14 @@ ParticleEmitter *func_802EDD8C(f32 pos[3], f32 xz_range, f32 arg2){
|
||||
func_802EFA18(pCtrl, 1);
|
||||
func_802EFA34(pCtrl, arg2);
|
||||
particleEmitter_setParticleCallback(pCtrl, func_802EDD68);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.8f);
|
||||
func_802EFEC0(pCtrl, 4.0f, 4.0f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.8f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 4.0f, 4.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange( pCtrl,
|
||||
-xz_range, 0.0f, -xz_range,
|
||||
xz_range, 0.0f, xz_range
|
||||
);
|
||||
particleEmitter_setPosition(pCtrl, pos);
|
||||
func_802EFFA8(pCtrl, D_80368850);
|
||||
particleEmitter_setRGB(pCtrl, D_80368850);
|
||||
func_802EFB70(pCtrl, 0.05f, 0.09f);
|
||||
func_802EFB84(pCtrl, 0.05f, 0.09f);
|
||||
func_802EFF50(pCtrl, 10.0f);
|
||||
|
@@ -41,12 +41,12 @@ s32 D_8036889C[] = {
|
||||
|
||||
/* .code */
|
||||
void func_802EDF40(f32 pos[3], s32 arg1, s32 cnt, f32 arg3, f32 arg4, f32 arg5, f32 arg6[3], f32 arg7[3]){
|
||||
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
f32 tmp_f0;
|
||||
if(arg1 < 0x3e7){
|
||||
particleEmitter_setModel(pCtrl, D_80368860[arg1]);
|
||||
func_802EFB70(pCtrl, arg3 * 0.6, arg3 * 1.1);
|
||||
func_802EFE24(pCtrl, 400.0f, 400.0f, 400.0f, 800.0f, 800.0f, 800.0f);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, 400.0f, 400.0f, 400.0f, 800.0f, 800.0f, 800.0f);
|
||||
}
|
||||
else{//L802EE008
|
||||
particleEmitter_setSprite(pCtrl, D_8036889C[arg1 - 0x3e8]);
|
||||
@@ -58,7 +58,7 @@ void func_802EDF40(f32 pos[3], s32 arg1, s32 cnt, f32 arg3, f32 arg4, f32 arg5,
|
||||
}
|
||||
func_802EFB70(pCtrl, arg3, arg3);
|
||||
func_802EFB84(pCtrl, arg3, arg3);
|
||||
func_802EFE24(pCtrl, 0, 0, 0, 0, 0, 0);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, 0, 0, 0, 0, 0, 0);
|
||||
func_802EFF9C(pCtrl, 0);
|
||||
}//L802EE0B4
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl,
|
||||
@@ -72,7 +72,7 @@ void func_802EDF40(f32 pos[3], s32 arg1, s32 cnt, f32 arg3, f32 arg4, f32 arg5,
|
||||
10.0f, 10.0f, 10.0f
|
||||
);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0, 0.01f);
|
||||
func_802EFEC0(pCtrl, arg5, arg5);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, arg5, arg5);
|
||||
if(arg7){
|
||||
tmp_f0 = arg7[0]*arg4;
|
||||
particleEmitter_setParticleVelocityRange(pCtrl,
|
||||
@@ -87,8 +87,8 @@ void func_802EDF40(f32 pos[3], s32 arg1, s32 cnt, f32 arg3, f32 arg4, f32 arg5,
|
||||
);
|
||||
}
|
||||
if(arg6){
|
||||
func_802EFFA8(pCtrl, arg6);
|
||||
func_802EF9E4(pCtrl, reinterpret_cast(s32, arg6[3]));
|
||||
particleEmitter_setRGB(pCtrl, arg6);
|
||||
particleEmitter_setAlpha(pCtrl, reinterpret_cast(s32, arg6[3]));
|
||||
}
|
||||
|
||||
particleEmitter_setPosition(pCtrl, pos);
|
||||
|
@@ -1,6 +1,8 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/particle.h"
|
||||
|
||||
|
||||
/* .data */
|
||||
s16 D_80368930[3] = {
|
||||
@@ -22,7 +24,7 @@ void func_802EE5E8(ParticleEmitter *this){
|
||||
}
|
||||
|
||||
bool func_802EE5F0(s32 arg0){
|
||||
return (arg0 < 3) ? !func_802EF648(func_802F0EF0(D_80380910[arg0])) : FALSE;
|
||||
return (arg0 < 3) ? !particleEmitter_isDone(func_802F0EF0(D_80380910[arg0])) : FALSE;
|
||||
}
|
||||
|
||||
void func_802EE63C(void) {
|
||||
@@ -52,7 +54,7 @@ void func_802EE6CC(f32 position[3], f32 velocity[3], s32 color[4], s32 arg3, f32
|
||||
sp3C = 0x28;
|
||||
p_ctrl = func_802F0EF0(D_80380910[arg8]);
|
||||
particleEmitter_setSprite(p_ctrl, D_80368930[arg8]);
|
||||
func_802EFA5C(p_ctrl, 0.075f, 0.4f);
|
||||
particleEmitter_setFade(p_ctrl, 0.075f, 0.4f);
|
||||
particleEmitter_setPosition(p_ctrl, position);
|
||||
particleEmitter_setSpawnIntervalRange(p_ctrl, 0.0f, 0.0f);
|
||||
func_802EFA78(p_ctrl, 1);
|
||||
@@ -67,14 +69,14 @@ void func_802EE6CC(f32 position[3], f32 velocity[3], s32 color[4], s32 arg3, f32
|
||||
}
|
||||
particleEmitter_setParticleVelocityRange(p_ctrl, sp40[0], sp40[1], sp40[2], sp40[0], sp40[1], sp40[2]);
|
||||
if (color != NULL) {
|
||||
func_802EFFA8(p_ctrl, color);
|
||||
func_802EF9E4(p_ctrl, color[3]);
|
||||
particleEmitter_setRGB(p_ctrl, color);
|
||||
particleEmitter_setAlpha(p_ctrl, color[3]);
|
||||
}
|
||||
if (arg3 == 0) {
|
||||
sp3C = 0x38;
|
||||
sp3C = PART_EMIT_NO_OPA | PART_EMIT_NO_DEPTH | PART_EMIT_NO_LOOP;
|
||||
}
|
||||
func_802EFA70(p_ctrl, sp3C);
|
||||
func_802EFEC0(p_ctrl, arg4, arg4);
|
||||
particleEmitter_setDrawMode(p_ctrl, sp3C);
|
||||
particleEmitter_setParticleLifeTimeRange(p_ctrl, arg4, arg4);
|
||||
func_802EFB70(p_ctrl, arg6 / 175.0, arg6 / 175.0);
|
||||
func_802EFB84(p_ctrl, (arg6 + arg7) / 175.0, (arg6 + arg7) / 175.0);
|
||||
if (arg8 == 0) {
|
||||
|
@@ -20,8 +20,8 @@ Struct_Core2_69F60_0 D_80380938[16];
|
||||
ParticleEmitter *func_802F0EF0(u8 arg0){
|
||||
if(D_80380938[arg0].p_emitter == NULL){
|
||||
D_80380930 = arg0;
|
||||
D_80380938[arg0].p_emitter = partEmitList_pushNew(D_80380938[arg0].capacity);
|
||||
func_802F0D54(D_80380938[arg0].p_emitter);
|
||||
D_80380938[arg0].p_emitter = partEmitMgr_newEmitter(D_80380938[arg0].capacity);
|
||||
particleEmitter_manualFree(D_80380938[arg0].p_emitter);
|
||||
D_80380930 = 0;
|
||||
}
|
||||
D_80380938[arg0].unk0 = 1.0f;
|
||||
@@ -59,7 +59,7 @@ void func_802F1104(void){
|
||||
|
||||
void func_802F1190(u8 arg0){
|
||||
if(D_80380938[arg0].p_emitter){
|
||||
partEmitList_remove(D_80380938[arg0].p_emitter);
|
||||
partEmitMgr_freeEmitter(D_80380938[arg0].p_emitter);
|
||||
}
|
||||
D_80380938[arg0].unk8_31 = 0;
|
||||
}
|
||||
@@ -69,11 +69,11 @@ void func_802F11E8(void){
|
||||
for(i = 1; i < 16; i++){
|
||||
if( D_80380938[i].unk8_31 != 0
|
||||
&& D_80380938[i].p_emitter != NULL
|
||||
&& func_802EF648(D_80380938[i].p_emitter)
|
||||
&& particleEmitter_isDone(D_80380938[i].p_emitter)
|
||||
){
|
||||
D_80380938[i].unk0 -= time_getDelta();
|
||||
if(D_80380938[i].unk0 <= 0.0f){
|
||||
partEmitList_remove(D_80380938[i].p_emitter);
|
||||
partEmitMgr_freeEmitter(D_80380938[i].p_emitter);
|
||||
D_80380938[i].p_emitter = NULL;
|
||||
}
|
||||
}
|
||||
@@ -87,7 +87,7 @@ void func_802F1294(void){
|
||||
&& D_80380938[i].p_emitter != NULL
|
||||
&& i != D_80380930
|
||||
){
|
||||
partEmitList_remove(D_80380938[i].p_emitter);
|
||||
partEmitMgr_freeEmitter(D_80380938[i].p_emitter);
|
||||
D_80380938[i].p_emitter = NULL;
|
||||
}
|
||||
}
|
||||
@@ -99,7 +99,7 @@ void func_802F1320(void){
|
||||
if( D_80380938[i].unk8_31 != 0
|
||||
&& D_80380938[i].p_emitter != NULL
|
||||
){
|
||||
D_80380938[i].p_emitter = func_802F0D74(D_80380938[i].p_emitter);
|
||||
D_80380938[i].p_emitter = partEmitMgr_defragEmitter(D_80380938[i].p_emitter);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -4,27 +4,15 @@
|
||||
|
||||
extern s16 D_803A5D00[2][0xF660];
|
||||
|
||||
|
||||
typedef struct Struct_Core2_6A4B0_2{
|
||||
void *unk0;
|
||||
void *unk4;
|
||||
s32 unk8;
|
||||
void (*unkC)(struct Struct_Core2_6A4B0_2 *, Gfx **, Mtx **, Vtx **);
|
||||
s32 unk10;
|
||||
s16 (*vtx_coord)[3];
|
||||
u16 *tmem_raw_ptr;
|
||||
u16 *tmem_ptr;
|
||||
void (*draw_method)(struct Struct_Core2_6A4B0_2 *, Gfx **, Mtx **, Vtx **);
|
||||
bool unk10;
|
||||
}Struct_Core2_6A4B0_2;
|
||||
|
||||
typedef struct {
|
||||
s16 unk0[3];
|
||||
}Struct_Core2_6A4B0_1;
|
||||
|
||||
typedef struct {
|
||||
u8 pad0[0x8];
|
||||
u16 *unk8;
|
||||
u8 padC[4];
|
||||
s32 unk10;
|
||||
}Struct_Core2_6A4B0_0;
|
||||
|
||||
s32 func_802F1804(s32 *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4);
|
||||
s16 *func_802F1804(Struct_Core2_6A4B0_2 *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4);
|
||||
void func_802F18B8(Struct_Core2_6A4B0_2 *arg0);
|
||||
|
||||
/* .data */
|
||||
@@ -39,36 +27,36 @@ Gfx D_803689D0[] = {
|
||||
gsSPEndDisplayList()
|
||||
};
|
||||
|
||||
s32 D_80368A10[6] = {0x60, 0x840, 0x60, 0x840, 0x840, 0x60};
|
||||
s32 D_80368A28[6] = {0x60, 0x60, 0x860, 0x60, 0x860, 0x860};
|
||||
s32 D_80368A40[6] = {0, 1, 0, 1, 1, 0};
|
||||
s32 D_80368A58[6] = {0, 0, 1, 0, 1, 1};
|
||||
s32 D_80368A70[6] = {0, 1, 0, 1, 1, 0};
|
||||
s32 D_80368A88[6] = {0, 0, 1, 0, 1, 1};
|
||||
|
||||
|
||||
|
||||
/* .code */
|
||||
#ifndef NONMATCHING
|
||||
s32 D_80368A10[6] = {0x60, 0x840, 0x60, 0x840, 0x840, 0x60};
|
||||
s32 D_80368A28[6] = {0x60, 0x60, 0x860, 0x60, 0x860, 0x860};
|
||||
void func_802F1440(Struct_Core2_6A4B0_2 *arg0, Gfx **gfx, Mtx **mtx, Vtx **vtx);
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_6A4B0/func_802F1440.s")
|
||||
#else
|
||||
void func_802F1440(Struct_Core2_6A4B0_2 *arg0, Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
||||
Vtx *start_vtx;
|
||||
|
||||
Vtx *sp9C;
|
||||
Vtx *var_s2_2;
|
||||
s32 *var_s1;
|
||||
s32 *var_s2;
|
||||
s16 *temp_v0_2;
|
||||
s32 var_s3;
|
||||
s32 sp54;
|
||||
s32 sp50;
|
||||
s32 sp4C;
|
||||
s32 var_s3;
|
||||
Struct_Core2_6A4B0_1 *temp_v0_2;
|
||||
s32 *var_s1;
|
||||
s32 *var_s2;
|
||||
u16* temp;
|
||||
static s32 D_80368A10[6] = {0x60, 0x840, 0x60, 0x840, 0x840, 0x60};
|
||||
static s32 D_80368A28[6] = {0x60, 0x60, 0x860, 0x60, 0x860, 0x860};
|
||||
|
||||
if (arg0->unk10 == 0) {
|
||||
if (!arg0->unk10) {
|
||||
func_8024C7B8(gfx, mtx);
|
||||
}
|
||||
gSPDisplayList((*gfx)++, D_803689D0);
|
||||
|
||||
var_s2_2 = sp9C = *vtx;
|
||||
start_vtx = sp9C = *vtx;
|
||||
for(sp4C = 0; sp4C < 6; sp4C++){
|
||||
for(sp50 = 0; sp50 < 9; sp50++){
|
||||
for(sp54 = 0; sp54 < 2; sp54++){
|
||||
@@ -76,9 +64,9 @@ void func_802F1440(Struct_Core2_6A4B0_2 *arg0, Gfx **gfx, Mtx **mtx, Vtx **vtx)
|
||||
var_s2 = D_80368A28 + 3*sp54;
|
||||
for(var_s3 = 0; var_s3 < 3; var_s3++){
|
||||
temp_v0_2 = func_802F1804(arg0, sp50, sp4C, sp54, var_s3);
|
||||
sp9C->n.ob[0] = temp_v0_2->unk0[0];
|
||||
sp9C->n.ob[1] = temp_v0_2->unk0[1];
|
||||
sp9C->n.ob[2] = temp_v0_2->unk0[2];
|
||||
sp9C->n.ob[0] = temp_v0_2[0];
|
||||
sp9C->n.ob[1] = temp_v0_2[1];
|
||||
sp9C->n.ob[2] = temp_v0_2[2];
|
||||
|
||||
sp9C->n.flag = 0;
|
||||
|
||||
@@ -96,13 +84,13 @@ void func_802F1440(Struct_Core2_6A4B0_2 *arg0, Gfx **gfx, Mtx **mtx, Vtx **vtx)
|
||||
}
|
||||
}
|
||||
*vtx = sp9C;
|
||||
sp9C = var_s2_2;
|
||||
sp9C = start_vtx;
|
||||
var_s3 = 0;
|
||||
gSPVertex((*gfx)++, osVirtualToPhysical(sp9C), 16, 0);
|
||||
for(sp4C = 0; sp4C < 6; sp4C++){
|
||||
for(sp50 = 0; sp50 < 9; sp50++){
|
||||
temp = (0x20*sp50 + 1) + ((u16*)arg0->unk8 + (0x20*sp4C + 0xC)*framebuffer_width);
|
||||
gDPLoadTextureTile((*gfx)++, osVirtualToPhysical(temp), G_IM_FMT_RGBA, G_IM_SIZ_16b, framebuffer_width, 0, 0, 0, 33, 33, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
temp_v0_2 = arg0->tmem_ptr + (0x20*sp50 + 1) + (0x20*sp4C + 0xC)*framebuffer_width;
|
||||
gDPLoadTextureTile((*gfx)++, osVirtualToPhysical(temp_v0_2), G_IM_FMT_RGBA, G_IM_SIZ_16b, framebuffer_width, 0, 0, 0, 33, 33, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
for(sp54 = 0; sp54 < 2; sp54++){
|
||||
gSP1Triangle((*gfx)++, var_s3, var_s3 + 1, var_s3 + 2, 0);
|
||||
var_s3 += 3;
|
||||
@@ -114,32 +102,32 @@ void func_802F1440(Struct_Core2_6A4B0_2 *arg0, Gfx **gfx, Mtx **mtx, Vtx **vtx)
|
||||
}
|
||||
}
|
||||
}
|
||||
if (arg0->unk10 == 0) {
|
||||
if (!arg0->unk10) {
|
||||
func_8024C904(gfx, mtx);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
s32 func_802F1804(s32 *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) {
|
||||
return *arg0 + (arg1 * 0x24) + (arg2 * 0x144) + (arg3 * 0x12) + (arg4 * 6);
|
||||
s16 *func_802F1804(Struct_Core2_6A4B0_2 *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4) {
|
||||
return (s16*)(arg0->vtx_coord + (arg1 * 2*3) + (arg2 * 2*3*9) + (arg3 * 3) + (arg4));
|
||||
}
|
||||
|
||||
void func_802F1858(Struct_Core2_6A4B0_2 *arg0, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
if(arg0->unkC != NULL){
|
||||
arg0->unkC(arg0, gfx, mtx, vtx);
|
||||
if(arg0->draw_method != NULL){
|
||||
arg0->draw_method(arg0, gfx, mtx, vtx);
|
||||
}
|
||||
}
|
||||
|
||||
void func_802F1884(Struct_Core2_6A4B0_2 *arg0){
|
||||
func_802F18B8(arg0);
|
||||
free(arg0->unk0);
|
||||
free(arg0->vtx_coord);
|
||||
free(arg0);
|
||||
}
|
||||
|
||||
void func_802F18B8(Struct_Core2_6A4B0_2 *arg0){
|
||||
if(arg0->unk4 != NULL){
|
||||
free(arg0->unk4);
|
||||
arg0->unk4 = NULL;
|
||||
if(arg0->tmem_raw_ptr != NULL){
|
||||
free(arg0->tmem_raw_ptr);
|
||||
arg0->tmem_raw_ptr = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -147,27 +135,27 @@ Struct_Core2_6A4B0_2 *func_802F18F0(void){
|
||||
Struct_Core2_6A4B0_2 *self;
|
||||
|
||||
self = (Struct_Core2_6A4B0_2 *) malloc(sizeof(Struct_Core2_6A4B0_2));
|
||||
self->unk0 = malloc(0x798);
|
||||
self->unk4 = 0;
|
||||
self->unkC = 0;
|
||||
self->vtx_coord = malloc(6*9*2*3*3*sizeof(u16));
|
||||
self->tmem_raw_ptr = NULL;
|
||||
self->draw_method = 0;
|
||||
self->unk10 = 0;
|
||||
return self;
|
||||
}
|
||||
|
||||
void func_802F1934(Struct_Core2_6A4B0_2 * arg0, s32 arg1){
|
||||
func_802F18B8(arg0);
|
||||
arg0->unk4 = malloc(framebuffer_width*framebuffer_height*sizeof(u16) + 0x10);
|
||||
arg0->unk8 = arg0->unk4;
|
||||
while((arg0->unk8 & 0x10) == 0){
|
||||
(arg0->unk8)++;
|
||||
arg0->tmem_raw_ptr = malloc(framebuffer_width*framebuffer_height*sizeof(u16) + 0x10);
|
||||
arg0->tmem_ptr = arg0->tmem_raw_ptr;
|
||||
while(((s32)arg0->tmem_ptr & 0x10) == 0){
|
||||
arg0->tmem_ptr = (u16*)((s32)arg0->tmem_ptr + 1);
|
||||
}
|
||||
func_80253010(arg0->unk8, D_803A5D00[arg1], framebuffer_width*framebuffer_height*sizeof(u16));
|
||||
func_80253010(arg0->tmem_ptr, D_803A5D00[arg1], framebuffer_width*framebuffer_height*sizeof(u16));
|
||||
osWriteBackDCacheAll();
|
||||
}
|
||||
|
||||
void func_802F1A08(s32 arg0) { }
|
||||
|
||||
void func_802F1A10(Struct_Core2_6A4B0_2 *arg0, f32 arg1) {
|
||||
void func_802F1A10(Struct_Core2_6A4B0_2 *arg0, f32 angle_degrees) {
|
||||
s32 spCC[3];
|
||||
f32 spC0[3];
|
||||
f32 temp_f0;
|
||||
@@ -184,9 +172,11 @@ void func_802F1A10(Struct_Core2_6A4B0_2 *arg0, f32 arg1) {
|
||||
s32 sp90;
|
||||
s32 var_s6;
|
||||
s16 *temp_v0_2;
|
||||
static s32 D_80368A40[6] = {0, 1, 0, 1, 1, 0};
|
||||
static s32 D_80368A58[6] = {0, 0, 1, 0, 1, 1};
|
||||
|
||||
cos = cosf(arg1 * 2 * BAD_PI);
|
||||
sin = sinf(arg1 * 2 * BAD_PI);
|
||||
cos = cosf(angle_degrees * 2 * BAD_PI);
|
||||
sin = sinf(angle_degrees * 2 * BAD_PI);
|
||||
func_8024C5CC(spC0);
|
||||
spCC[0] = (-(framebuffer_width / 2) * 4) + 8;
|
||||
spCC[1] = ((framebuffer_height / 2) * 4) - 0x38;
|
||||
@@ -201,15 +191,15 @@ void func_802F1A10(Struct_Core2_6A4B0_2 *arg0, f32 arg1) {
|
||||
temp_f0 = (f32) (spCC[0] + var_s4 * 0x80 + (*var_s1 * 0x80));
|
||||
temp_f2 = (f32) (spCC[1] - var_s6 * 0x80 - (*var_s2 * 0x80));
|
||||
|
||||
temp_f0 = temp_f0 * (1.0f - arg1);
|
||||
temp_f2 = temp_f2 * (1.0f - arg1);
|
||||
temp_f0 = temp_f0 * (1.0f - angle_degrees);
|
||||
temp_f2 = temp_f2 * (1.0f - angle_degrees);
|
||||
|
||||
temp_f12 = temp_f0;
|
||||
temp_f0 = (temp_f12 * cos) - (temp_f2 * sin);
|
||||
temp_f2 = (temp_f12 * sin) + (temp_f2 * cos);
|
||||
|
||||
temp_f0 = temp_f0 + ((-560.0f - temp_f0) * arg1);
|
||||
temp_f2 = temp_f2 + ((400.0f - temp_f2) * arg1);
|
||||
temp_f0 = temp_f0 + ((-560.0f - temp_f0) * angle_degrees);
|
||||
temp_f2 = temp_f2 + ((400.0f - temp_f2) * angle_degrees);
|
||||
|
||||
temp_v0_2[0] = (s16) (s32) temp_f0;
|
||||
temp_v0_2[1] = (s16) (s32) temp_f2;
|
||||
@@ -220,11 +210,14 @@ void func_802F1A10(Struct_Core2_6A4B0_2 *arg0, f32 arg1) {
|
||||
}
|
||||
}
|
||||
}
|
||||
arg0->unkC = &func_802F1440;
|
||||
arg0->unk10 = 0;
|
||||
arg0->draw_method = &func_802F1440;
|
||||
arg0->unk10 = FALSE;
|
||||
}
|
||||
|
||||
void func_802F1CAC(Struct_Core2_6A4B0_2 *arg0) {
|
||||
static s32 D_80368A70[6] = {0, 1, 0, 1, 1, 0};
|
||||
static s32 D_80368A88[6] = {0, 0, 1, 0, 1, 1};
|
||||
|
||||
s32 sp84[3];
|
||||
f32 sp78[3];
|
||||
s32 var_s0;
|
||||
@@ -258,6 +251,6 @@ void func_802F1CAC(Struct_Core2_6A4B0_2 *arg0) {
|
||||
}
|
||||
}
|
||||
}
|
||||
arg0->unkC = &func_802F1440;
|
||||
arg0->unk10 = 1;
|
||||
arg0->draw_method = &func_802F1440;
|
||||
arg0->unk10 = TRUE;
|
||||
}
|
||||
|
@@ -25,10 +25,10 @@ ParticleEmitter *func_802F1EC8(f32 *position) {
|
||||
particleEmitter_setPosition(p_emitter, position);
|
||||
particleEmitter_setSprite(p_emitter, ASSET_700_SPRITE_DUST);
|
||||
particleEmitter_setParticleVelocityRange(p_emitter, -10.0f, 10.0f, -10.0f, 10.0f, 240.0f, 10.0f);
|
||||
func_802EFFA8(p_emitter, D_80368AA0);
|
||||
func_802EFA5C(p_emitter, 0.2f, 0.3f);
|
||||
particleEmitter_setRGB(p_emitter, D_80368AA0);
|
||||
particleEmitter_setFade(p_emitter, 0.2f, 0.3f);
|
||||
func_802EFB70(p_emitter, 0.2f, 0.4f);
|
||||
func_802EFB84(p_emitter, 0.85f, 0.9f);
|
||||
func_802EFEC0(p_emitter, 0.3f, 0.35f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_emitter, 0.3f, 0.35f);
|
||||
return p_emitter;
|
||||
}
|
||||
|
@@ -101,7 +101,7 @@ bool func_8028DD60(enum actor_e actor_id, Actor **arg1){
|
||||
if(m2 && actor->modelCacheIndex != actor_id)
|
||||
return 0;
|
||||
|
||||
carriedObject_setActorID(actor_id);
|
||||
baMarker_setCarriedObject(actor_id);
|
||||
if(!item_empty(carriedobj_actorId2ItemId(actor_id))){
|
||||
func_8028F66C(BS_INTR_12);
|
||||
}
|
||||
@@ -113,7 +113,7 @@ void func_8028DE0C(enum actor_e actor_id){
|
||||
Actor *actor;
|
||||
f32 sp20[3];
|
||||
|
||||
playerModel_getPosition(sp20);
|
||||
baModel_getPosition(sp20);
|
||||
actor = func_8032813C(actor_id, sp20, (s32) yaw_get());
|
||||
actor->unk138_22 = TRUE;
|
||||
func_802948F8(actor->marker);
|
||||
@@ -133,7 +133,7 @@ void func_8028DE6C(enum actor_e actor_id){
|
||||
func_802948F8(marker);
|
||||
}
|
||||
else{
|
||||
__spawnQueue_add_1((GenMethod_1)func_8028DE0C, carriedObject_getActorID());
|
||||
__spawnQueue_add_1((GenMethod_1)func_8028DE0C, baMarker_getCarriedObjectActorId());
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/particle.h"
|
||||
|
||||
extern bool func_8024549C(f32[3], f32);
|
||||
extern void func_802EFAB0(ParticleEmitter *, s32, f32);
|
||||
@@ -109,7 +110,7 @@ ParticleEmitter *func_802F3404(s32 arg0, f32 arg1[3], bool arg2){
|
||||
sp38[1] += 3.0f;
|
||||
p_emitter = func_802F0EF0(D_80380A60);
|
||||
particleEmitter_setSprite(p_emitter, ASSET_70C_SPRITE_RIPPLE);
|
||||
func_802EFA70(p_emitter, 1);
|
||||
particleEmitter_setDrawMode(p_emitter, PART_EMIT_3D_ROTATE);
|
||||
if(sp44){
|
||||
func_802EFAB0(p_emitter, sp44, sp38[1]);
|
||||
}
|
||||
@@ -120,12 +121,12 @@ ParticleEmitter *func_802F3404(s32 arg0, f32 arg1[3], bool arg2){
|
||||
sp28[0] = (s32) var_s0->unk1C[0];
|
||||
sp28[1] = (s32) var_s0->unk1C[1];
|
||||
sp28[2] = (s32) var_s0->unk1C[2];
|
||||
func_802EFA5C(p_emitter, 0.0f, var_s0->unk8);
|
||||
particleEmitter_setFade(p_emitter, 0.0f, var_s0->unk8);
|
||||
particleEmitter_setPosition(p_emitter, sp38);
|
||||
func_802EFFA8(p_emitter, sp28);
|
||||
particleEmitter_setRGB(p_emitter, sp28);
|
||||
func_802EFB70(p_emitter, var_s0->unkC[0], var_s0->unkC[1]);
|
||||
func_802EFB84(p_emitter, var_s0->unk14[0], var_s0->unk14[1]);
|
||||
func_802EFEC0(p_emitter, var_s0->unk0[0], var_s0->unk0[1]);
|
||||
particleEmitter_setParticleLifeTimeRange(p_emitter, var_s0->unk0[0], var_s0->unk0[1]);
|
||||
func_802EFF50(p_emitter, 100.0f);
|
||||
return p_emitter;
|
||||
}
|
||||
@@ -212,7 +213,7 @@ void func_802F3874(s16 arg0[3]){
|
||||
particleEmitter_setPositionAndVelocityRanges(p_emitter, &D_80368C30);
|
||||
func_802EFB70(p_emitter, 0.5f, 0.5f);
|
||||
particleEmitter_emitN(p_emitter, 12);
|
||||
func_802EFEC0(p_emitter, 1.5f, 1.5f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_emitter, 1.5f, 1.5f);
|
||||
}
|
||||
|
||||
void func_802F38F0(s16 arg0[3]){
|
||||
@@ -254,7 +255,7 @@ void func_802F3AC0(s16 arg0[3]){
|
||||
particleEmitter_setPositionAndVelocityRanges(p_emitter, &D_80368CC0);
|
||||
func_802EFB70(p_emitter, 0.4f, 0.4f);
|
||||
particleEmitter_emitN(p_emitter, 7);
|
||||
func_802EFEC0(p_emitter, 1.5f, 1.5f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_emitter, 1.5f, 1.5f);
|
||||
}
|
||||
|
||||
void func_802F3B3C(s16 arg0[3]){
|
||||
@@ -275,7 +276,7 @@ void func_802F3BF4(s16 arg0[3]){
|
||||
ParticleEmitter *p_emitter = func_802F3670(arg0, 10.0f, ASSET_713_SPRITE_SPARKLE_YELLOW);
|
||||
particleEmitter_setPositionAndVelocityRanges(p_emitter, &D_80368D50);
|
||||
func_802EFB70(p_emitter, 0.45f, 0.6f);
|
||||
func_802EFEC0(p_emitter, 0.5f, 0.8f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_emitter, 0.5f, 0.8f);
|
||||
particleEmitter_emitN(p_emitter, 3);
|
||||
}
|
||||
|
||||
|
@@ -1,6 +1,8 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
#include "core2/particle.h"
|
||||
|
||||
|
||||
/* .data */
|
||||
s16 D_80368D80[] = {
|
||||
@@ -32,20 +34,20 @@ void func_802F3CF8(f32 arg0[3], s32 arg1, s32 arg2){
|
||||
if(arg2 < 3){
|
||||
pCtrl = func_802F0EF0(D_80380A70);
|
||||
particleEmitter_setSprite(pCtrl, D_80368D80[arg2]);
|
||||
func_802EFA5C(pCtrl, 0.4f, 0.8f);
|
||||
particleEmitter_setFade(pCtrl, 0.4f, 0.8f);
|
||||
particleEmitter_setPosition(pCtrl, arg0);
|
||||
func_802EFE24(pCtrl,
|
||||
particleEmitter_setAngularVelocityRange(pCtrl,
|
||||
0.0f, 0.0f, 200.0f,
|
||||
0.0f, 0.0f, 240.0f
|
||||
);
|
||||
func_802EFF50(pCtrl, 1.0f);
|
||||
func_802EFA5C(pCtrl, 0.1f, 0.5f);
|
||||
particleEmitter_setFade(pCtrl, 0.1f, 0.5f);
|
||||
func_802EFB70(pCtrl, 0.1f, 0.2f);
|
||||
func_802EFB84(pCtrl, 0.4f, 0.5f);
|
||||
func_802EFEC0(pCtrl, 0.75f, 0.75f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.75f, 0.75f);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_80368D88);
|
||||
if(arg1 == 0){
|
||||
func_802EFA70(pCtrl, 16);
|
||||
particleEmitter_setDrawMode(pCtrl, PART_EMIT_NO_DEPTH);
|
||||
}
|
||||
particleEmitter_emitN(pCtrl, 12);
|
||||
}
|
||||
|
@@ -23,15 +23,15 @@ ParticleEmitter *func_802F3E98(f32 pos[3], enum asset_e sprite_id){
|
||||
0.0f, -250.0f, 0.0f,
|
||||
0.0f, -250.0f, 0.0f
|
||||
);
|
||||
func_802EFA5C(this, 0.4f, 0.8f);
|
||||
particleEmitter_setFade(this, 0.4f, 0.8f);
|
||||
particleEmitter_setPosition(this, pos);
|
||||
func_802EFB70(this, 0.22f, 0.22f);
|
||||
func_802EFB84(this, 0.03f, 0.03f);
|
||||
func_802EFE24(this,
|
||||
particleEmitter_setAngularVelocityRange(this,
|
||||
0.0f, 0.0f, 200.0f,
|
||||
0.0f, 0.0f, 240.0f
|
||||
);
|
||||
func_802EFEC0(this, 0.7f, 0.7f);
|
||||
particleEmitter_setParticleLifeTimeRange(this, 0.7f, 0.7f);
|
||||
func_802EFF50(this, 1.0f);
|
||||
return this;
|
||||
}
|
||||
|
@@ -40,7 +40,7 @@ ParticleEmitter *func_802F4094(f32 pos[3], f32 arg1){
|
||||
|
||||
pCtrl = func_802F0EF0(D_80380A90);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_70B_SPRITE_BUBBLE_2);
|
||||
func_802EF9E4(pCtrl, 180);
|
||||
particleEmitter_setAlpha(pCtrl, 180);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl,
|
||||
0.0f, -1300.0f, 0.0f,
|
||||
0.0f, -1300.0f, 0.0f
|
||||
@@ -48,16 +48,16 @@ ParticleEmitter *func_802F4094(f32 pos[3], f32 arg1){
|
||||
func_802EFA18(pCtrl, 1);
|
||||
func_802EFA04(pCtrl, pos[1]);
|
||||
particleEmitter_setParticleCallback(pCtrl, func_802F3FC0);
|
||||
func_802EFA5C(pCtrl, 0.0f, 0.8f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.8f);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
-arg1, 0.0f, -arg1,
|
||||
arg1, 0.0f, arg1
|
||||
);
|
||||
particleEmitter_setPosition(pCtrl, pos);
|
||||
func_802EFFA8(pCtrl, D_80368DD0);
|
||||
particleEmitter_setRGB(pCtrl, D_80368DD0);
|
||||
func_802EFB70(pCtrl, 0.02f, 0.04f);
|
||||
func_802EFB84(pCtrl, 0.01f, 0.01f);
|
||||
func_802EFEC0(pCtrl, 2.0f, 2.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 2.0f, 2.0f);
|
||||
func_802EFF50(pCtrl, 10.0f);
|
||||
return pCtrl;
|
||||
}
|
||||
|
@@ -49,13 +49,13 @@ ParticleEmitter *func_802F4274(f32 arg0[3]) {
|
||||
func_802EFAB0(temp_v0, sp20, sp2C[1]);
|
||||
}
|
||||
particleEmitter_setSprite(temp_v0, 0x42A);
|
||||
func_802EF9E4(temp_v0, 0xFF);
|
||||
func_802EFA5C(temp_v0, 0, 0.78f);
|
||||
particleEmitter_setAlpha(temp_v0, 0xFF);
|
||||
particleEmitter_setFade(temp_v0, 0, 0.78f);
|
||||
particleEmitter_setStartingFrameRange(temp_v0, 0, 0);
|
||||
particleEmitter_setParticleFramerateRange(temp_v0, 25.7142868f, 25.7142868f);
|
||||
func_802EFEC0(temp_v0, 0.7f, 0.7f);
|
||||
particleEmitter_setParticleLifeTimeRange(temp_v0, 0.7f, 0.7f);
|
||||
particleEmitter_setPosition(temp_v0, sp2C);
|
||||
func_802EFFA8(temp_v0, D_80368DE0);
|
||||
particleEmitter_setRGB(temp_v0, D_80368DE0);
|
||||
func_802EFB70(temp_v0, 0.8, 0.8);
|
||||
func_802EFB84(temp_v0, 0.8, 0.8);
|
||||
return temp_v0;
|
||||
|
@@ -230,10 +230,10 @@ void func_8028E668(f32 arg0[3], f32 arg1, f32 arg2, f32 arg3) {
|
||||
}
|
||||
|
||||
|
||||
void func_8028E6A4(Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
||||
void player_draw(Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
||||
if (D_8037BFB8) {
|
||||
eggShatter_draw(gfx, mtx, vtx);
|
||||
playerModel_draw(gfx, mtx, vtx);
|
||||
baModel_draw(gfx, mtx, vtx);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -259,7 +259,7 @@ AnimCtrl *player_getAnimCtrlPtr(void){
|
||||
}
|
||||
|
||||
ActorMarker *player_getMarker(void){
|
||||
return _player_getMarker();
|
||||
return baMarker_get();
|
||||
}
|
||||
|
||||
u32 player_getTransformation(void){
|
||||
@@ -316,8 +316,8 @@ f32 func_8028E904(void){
|
||||
f32 func_8028E924(f32 arg0[3], s32 arg1){
|
||||
s32 *sp1C;
|
||||
|
||||
playerModel_80292284(arg0, arg1);
|
||||
func_8028D6F0(&sp1C);
|
||||
baModel_80292284(arg0, arg1);
|
||||
baMarker_8028D6F0(&sp1C);
|
||||
return (f32) sp1C[arg1];
|
||||
}
|
||||
|
||||
@@ -336,19 +336,19 @@ void player_getPosition(f32 dst[3]){
|
||||
void func_8028E9C4(s32 arg0, f32 arg1[3]) {
|
||||
switch(arg0){
|
||||
case 1: //L8028E9EC
|
||||
playerModel_getPosition(arg1);
|
||||
baModel_getPosition(arg1);
|
||||
break;
|
||||
|
||||
case 2: //L8028E9FC
|
||||
playerModel_802924E8(arg1);
|
||||
baModel_802924E8(arg1);
|
||||
break;
|
||||
|
||||
case 3: //L8028EA0C
|
||||
playerModel_8029223C(arg1);
|
||||
baModel_8029223C(arg1);
|
||||
break;
|
||||
|
||||
case 4: //L8028EA1C
|
||||
playerModel_80292260(arg1);
|
||||
baModel_80292260(arg1);
|
||||
break;
|
||||
|
||||
case 5: //L8028EA2C
|
||||
@@ -603,7 +603,7 @@ bool func_8028F12C(void){
|
||||
}
|
||||
|
||||
bool func_8028F150(void){
|
||||
return playerModel_isVisible();
|
||||
return baModel_isVisible();
|
||||
}
|
||||
|
||||
bool func_8028F170(void){
|
||||
@@ -952,7 +952,7 @@ void func_8028FCBC(void){
|
||||
|
||||
//player_setModelVisibile
|
||||
void func_8028FCC8(bool arg0){
|
||||
playerModel_setVisible(arg0);
|
||||
baModel_setVisible(arg0);
|
||||
}
|
||||
|
||||
void func_8028FCE8(void) {
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user