address variaty of compiler warnings and code documentation

This commit is contained in:
Banjo Kazooie 2022-12-03 01:30:35 -06:00
parent 263b5bab4e
commit 1c063c781c
211 changed files with 1341 additions and 1323 deletions

View File

@ -630,7 +630,7 @@ segments:
- [0xF90770, c, code_3AE10] #DONE
- [0xF90C20, c, done/code_3B2C0] #DONE
- [0xF90F20, c, code_3B5C0] #DONE
- [0xF914E0, c, code_3BB80] #DONE
- [0xF914E0, c, spawnqueue] #DONE
- [0xF92D30, c, ch/gameSelect] #DONE
- [0xF94430, c, code_3EAD0] #DONE
- [0xF94590, c, code_3EC30] #DONE
@ -927,7 +927,7 @@ segments:
- [0x1034730, .data, code_37E50]
- [0x1034760, .data, code_382E0]
- [0x1034770, .data, code_3AE10]
- [0x1034790, .data, code_3BB80]
- [0x1034790, .data, spawnqueue]
- [0x10347A0, .data, ch/gameSelect]
- [0x1034900, .data, code_3EAD0]
- [0x1034980, .data, code_3EC30]
@ -1198,7 +1198,7 @@ segments:
- [0x1044930, .rodata, code_39A10]
- [0x1044950, .rodata, code_39EF0]
- [0x1044990, .rodata, code_3AE10]
- [0x10449A0, .rodata, code_3BB80]
- [0x10449A0, .rodata, spawnqueue]
- [0x10449F0, .rodata, ch/gameSelect]
- [0x1044B70, .rodata, code_3ECE0]
- [0x1044B80, .rodata, ch/bigbutt]

View File

@ -25,7 +25,7 @@ void modelRender_setPrimAndEnvColors(s32 env[4], s32 prim[4]);
void modelRender_setEnvColor(s32 r, s32 g, s32 b, s32 a);
void modelRender_setAlpha(s32 a);
void func_8033A444(struct58s *arg0);
void func_8033A450(s32 arg0);
void func_8033A450(struct5Bs *arg0);
void func_8033A45C(s32 arg0, s32 arg1);
void func_8033A470(s32 arg0, s32 arg1);
void modelRender_setTextureList(BKTextureList *textureList);

View File

@ -2,24 +2,18 @@
#define __TIMED_FUNC_H__
#include <ultra64.h>
typedef void (* TFQM0)(void);
typedef void (* TFQM1)(s32);
typedef void (* TFQM2)(s32, s32);
typedef void (* TFQM3)(s32, s32, s32);
typedef void (* TFQM4)(s32, s32, s32, s32);
typedef void (* TFQM5)(s32, s32, s32, s32, s32);
typedef void (* TFQM6)(void *);
#include "generic.h"
#define reinterpret_cast(type, var) (*((type *)&var))
void timedFunc_set_0(f32 time, TFQM0 funcPtr);
void timedFunc_set_1(f32 time, TFQM1 funcPtr, s32 arg0);
void timedFunc_set_2(f32 time, TFQM2 funcPtr, s32 arg0, s32 arg1);
void timedFunc_set_3(f32 time, TFQM3 funcPtr, s32 arg0, s32 arg1, s32 arg2);
void timedFunc_set_4(f32 time, TFQM4 funcPtr, s32 arg0, s32 arg1, s32 arg2, s32 arg3);
void timedFunc_set_5(f32 time, TFQM5 funcPtr, s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4);
void timedFunc_set_6(f32 time, TFQM6 funcPtr, void* argPtr );
void timedFunc_set_0(f32 time, GenMethod_0 funcPtr);
void timedFunc_set_1(f32 time, GenMethod_1 funcPtr, s32 arg0);
void timedFunc_set_2(f32 time, GenMethod_2 funcPtr, s32 arg0, s32 arg1);
void timedFunc_set_3(f32 time, GenMethod_3 funcPtr, s32 arg0, s32 arg1, s32 arg2);
void timedFunc_set_4(f32 time, GenMethod_4 funcPtr, s32 arg0, s32 arg1, s32 arg2, s32 arg3);
void timedFunc_set_5(f32 time, GenMethod_5 funcPtr, s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4);
void timedFunc_set_6(f32 time, GenMethod_6 funcPtr, void* argPtr );
void timedJiggySpawn(f32 time, s32 jiggyId, f32 *position);
#endif

View File

@ -226,7 +226,7 @@ void particleEmitter_setSprite(ParticleEmitter *, enum asset_e);
void particleEmitter_setPosition(ParticleEmitter *, f32[3]);
ParticleEmitter *partEmitList_pushNew(u32);
void func_802BB3DC(s32, f32, f32);
void func_802C3F04(GenMethod_4, s32, s32, s32, s32);
void __spawnQueue_add_4(GenMethod_4, s32, s32, s32, s32);
Actor *func_802C4140(enum actor_e actor_id, s32 x, s32 y, s32 z);
void func_8030DA44(u8);
@ -451,7 +451,7 @@ void func_8030EC20(enum sfx_e uid, f32 arg1, f32 arg2, u32 arg3, u32 arg4);
u8 func_8030ED2C(enum sfx_e uid, s32 arg1);
void func_80320044(s32, s32, s32);
Actor *func_80325300(ActorMarker *marker, f32 rotation[3]);
Actor *marker_getActorAndRotation(ActorMarker *marker, f32 rotation[3]);
Actor *func_80325934(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
Actor *func_80325E78(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
@ -520,7 +520,7 @@ void player_setYPosition(f32);
NodeProp *func_80304C38(enum actor_e arg0, Actor *arg1);
NodeProp *func_80304CAC(s32 arg0, f32 position[3]);
Actor *func_80326D68(f32 position[3], enum actor_e actor_id, s32 arg2, f32 *min_distance_ptr);
Actor *actorArray_findClosestActorFromActorId(f32 position[3], enum actor_e actor_id, s32 arg2, f32 *min_distance_ptr);
Actor *subaddie_getLinkedActor(Actor *);
/* used in RBB */
@ -544,7 +544,7 @@ void func_802C8F70(f32);
void func_802F9DB8(s32, f32, f32, f32);
void func_802F9F80(s32, f32, f32, f32);
void func_802FA060(s32, s32, s32, f32);
Actor *func_80326EEC(enum actor_e);
Actor *actorArray_findActorFromActorId(enum actor_e);
f32 func_8038A6B8(ActorMarker *);
void *defrag_asset(void *);
void func_80255FE4(f32 [3], f32 [3], f32 [3], f32);
@ -579,8 +579,8 @@ void func_802596AC(f32 a0[3], f32 a1[3], f32 a2[3], f32 a3[3]);
void func_8024E55C(s32, s32 [6]);
void __spawnqueue_add_1(GenMethod_1, s32);
#define SPAWNQUEUE_ADD_1(method, arg0) __spawnqueue_add_1((GenMethod_1) (method), reinterpret_cast(s32, (arg0)))
void __spawnQueue_add_1(GenMethod_1, s32);
#define SPAWNQUEUE_ADD_1(method, arg0) __spawnQueue_add_1((GenMethod_1) (method), reinterpret_cast(s32, (arg0)))
void func_802FAD64(enum item_e);
void nodeprop_getPosition(NodeProp *, f32[3]);

View File

@ -7,5 +7,6 @@ typedef void (* GenMethod_2)(s32, s32);
typedef void (* GenMethod_3)(s32, s32, s32);
typedef void (* GenMethod_4)(s32, s32, s32, s32);
typedef void (* GenMethod_5)(s32, s32, s32, s32, s32);
typedef void (* GenMethod_6)(void *);
#endif

View File

@ -195,5 +195,5 @@ typedef struct{
BKVertexList *func_8033A148(BKModelBin *arg0);
Vtx *vtxList_getVertices(BKVertexList *vtxList);
void func_80333D48(BKVertexList *arg0, f32 position[3], f32 rotation[3], f32 scale, s32 arg4, BKVertexList *arg5);
void func_80333D48(BKVertexList *arg0, f32 position[3], f32 rotation[3], f32 scale, f32 arg4[3], BKVertexList *arg5);
#endif

View File

@ -635,7 +635,7 @@ typedef struct {
typedef struct struct_63_s{
s16 unk0;
// u8 pad2[2];
void (*unk4)(s32, struct actor_marker_s *);
void (*unk4)(vector(struct2s) **, struct actorMarker_s *);
} Struct63s;
typedef struct struct_64_s{
@ -645,8 +645,8 @@ typedef struct struct_64_s{
typedef struct struct_65_s{
f32 unk0[3];
struct actor_marker_s *unkC;
s32 (*unk10)(f32[3], f32, struct actor_marker_s *);
struct actorMarker_s *unkC;
s32 (*unk10)(f32[3], f32, struct actorMarker_s *);
s16 unk14[3];
s16 unk1A[3];
u8 unk20;
@ -665,7 +665,7 @@ typedef void (*Struct68DrawMethod)(void *, struct struct_68_s *, f32[3], f32[3]
typedef struct struct_68_s{
u8 unk0;
// u8 pad1[0x3];
struct actor_marker_s *unk4;
struct actorMarker_s *unk4;
Struct68DrawMethod unk8;
BKModelBin *unkC;
u8 pad10[0x4];
@ -688,10 +688,10 @@ typedef struct {
} Struct6Bs;
typedef struct{
s32 (* unk0)(struct actor_marker_s *, f32[3], f32[3], f32[3], s32);
s32 (* unk4)(struct actor_marker_s *, f32[3], f32[3], f32, f32[3], s32, u32);
s32 (* unk8)(struct actor_marker_s *, f32[3], f32, f32[3], s32);
s32 (* unkC)(struct actor_marker_s *, f32[3], f32, f32[3], s32);
s32 (* unk0)(struct actorMarker_s *, f32[3], f32[3], f32[3], s32);
s32 (* unk4)(struct actorMarker_s *, f32[3], f32[3], f32, f32[3], s32, u32);
s32 (* unk8)(struct actorMarker_s *, f32[3], f32, f32[3], s32);
s32 (* unkC)(struct actorMarker_s *, f32[3], f32, f32[3], s32);
} Struct6Cs;
typedef struct struct_6D_s{
@ -830,7 +830,7 @@ typedef struct {
f32 unk0;
u8 unk4;
u8 pad5[0x3];
void (* unk8)(struct actor_marker_s *);
void (* unk8)(struct actorMarker_s *);
s32 unkC;
}Struct7Fs;
@ -856,18 +856,18 @@ typedef struct {
typedef struct {
enum actor_e actor_id;
struct actor_marker_s *marker;
struct actorMarker_s *marker;
f32 position[3];
void (*unk14)(struct actor_s *, struct actor_marker_s *);
struct actor_marker_s *unk18;
void (*unk14)(struct actor_s *, struct actorMarker_s *);
struct actorMarker_s *unk18;
}Struct81s;
typedef struct {
enum actor_e actor_id;
struct actor_marker_s *marker;
struct actorMarker_s *marker;
f32 position[3];
void (*unk14)(struct actor_s *, struct actor_marker_s *);
struct actor_marker_s *unk18;
void (*unk14)(struct actor_s *, struct actorMarker_s *);
struct actorMarker_s *unk18;
}Struct82s;
typedef struct {

View File

@ -2,13 +2,13 @@
#include "functions.h"
#include "variables.h"
extern void func_80328748(ActorAnimCtrl *, f32, f32);
extern void func_80328748(AnimCtrl *, f32, f32);
extern void func_8028F94C(s32, f32[3]);
extern void func_80324CFC(f32, enum comusic_e, s32);
extern void func_803289EC(Actor *, f32, s32);
extern void func_80326310(Actor *);
extern void actor_setOpacity(Actor *, s32);
extern void func_802C3D3C(void (*)(s32, s32), s32, s32);
extern void __spawnQueue_add_2(void (*)(s32, s32), s32, s32);
extern void func_802BAFE4(s32 arg0);
@ -74,7 +74,7 @@ void func_80387E00(s32 arg0){
Actor * this = marker_getActor(marker);
func_803262E4(this);
func_802C3D3C(func_80387D18, reinterpret_cast(s32, marker), 0x1E);
__spawnQueue_add_2((GenMethod_2)func_80387D18, reinterpret_cast(s32, marker), 0x1E);
}
void func_80387E40(ActorMarker * arg0){
@ -95,10 +95,10 @@ void func_80387E68(ActorMarker *caller, enum asset_e text_id, s32 arg2){
func_80328B8C(this, 5, 0.79f, 1);
func_80326310(this);
bgs_D_803907B8[this->unkF4_8]->propPtr->unk8_4 = TRUE;
timedFunc_set_1(1.1f, func_80387E00, bgs_D_803907B8[this->unkF4_8]);
timedFunc_set_1(1.1f, (GenMethod_1)func_80387E00, reinterpret_cast(s32, bgs_D_803907B8[this->unkF4_8]));
timed_setCameraToNode(0.8f, 9);
func_80324DBC(3.4f, 0xC87, 0xE, NULL, NULL, func_80387E68, NULL);
func_802C3D3C(&func_80387D18, this->marker, 0x46);
__spawnQueue_add_2((GenMethod_2) func_80387D18, reinterpret_cast(s32, this->marker), 0x46);
}
else{
func_80324E88(0.0f);
@ -158,12 +158,12 @@ void func_80387FD4(Actor *this){
}
if (this->unkF4_8 < 5) {
bgs_D_803907B8[this->unkF4_8]->propPtr->unk8_4 = TRUE;
timedFunc_set_1(1.1f, (GenMethod_1)func_80387E00, bgs_D_803907B8[this->unkF4_8]);
timedFunc_set_1(1.1f, (GenMethod_1)func_80387E00, reinterpret_cast(s32, bgs_D_803907B8[this->unkF4_8]));
func_802BAFE4(D_803907B0[this->unkF4_8-1]);
} else {
timedFunc_set_1(0.8f, (GenMethod_1)func_80387D90, (s32) this->marker);
}
func_802C3D3C(&func_80387D18, this->marker, 0x46);
__spawnQueue_add_2((GenMethod_2)func_80387D18, reinterpret_cast(s32, this->marker), 0x46);
}
}
}//L80388348

View File

@ -16,7 +16,7 @@ typedef struct chleafboat_s{
} ActorLocal_Leafboat;
void func_8038FD9C(Actor *this);
Actor *func_8038FD10(ActorMarker *this, Gfx** gdl, Mtx** mtx, u32 arg3);
Actor *func_8038FD10(ActorMarker *this, Gfx** gdl, Mtx** mtx, Vtx **Vtx);
/* .data section */
@ -30,23 +30,23 @@ ActorInfo D_80390DA8 = {MARKER_DA_LEAFBOAT, ACTOR_F1_LEAFBOAT, ASSET_30D_MODEL_L
/* .code section */
Actor *func_8038FD10(ActorMarker *this, Gfx** gdl, Mtx** mtx, u32 arg3){
Actor *func_8038FD10(ActorMarker *this, Gfx** gdl, Mtx** mtx, Vtx **vtx){
Actor * thisActor;
thisActor = marker_getActor(this);
if((thisActor->unk1C_x != 0.0f) && (0x80 < thisActor->alpha_124_19)){
thisActor = func_80325888(this, gdl, mtx, arg3);
thisActor = func_80325888(this, gdl, mtx, vtx);
}
return thisActor;
}
void func_8038FD88(ActorMarker *this, u32 arg1){
void func_8038FD88(ActorMarker *this, ActorMarker *other){
this->unk3E_1 = 1;
}
void func_8038FD9C(Actor *this){
f32 sp64[3];
f32 sp58[3];
f32 player_position[3];
ActorLocal_Leafboat *local;
u8 tmp[6] = D_80390DA0;
f32 pad0;
@ -152,13 +152,13 @@ void func_8038FD9C(Actor *this){
local->unk60[1] = this->yaw;
local->unk60[2] = this->roll;
this->unk60 += time_getDelta();
_player_getPosition(&sp58);
_player_getPosition(player_position);
if( func_80294660() == 0x100
&& func_8028F20C()
&& this->marker->unk3E_1
){
sp44 = local->unk54[0] - sp58[0];
sp40 = local->unk54[2] - sp58[2];
sp44 = local->unk54[0] - player_position[0];
sp40 = local->unk54[2] - player_position[2];
sp3C = cosf((local->unk60[1] * M_PI) / 180.0);
sp38 = sinf((local->unk60[1] * M_PI) / 180.0);
local->unkC[0] = -((sp44 * sp38) + (sp40 * sp3C)) / 8;

View File

@ -108,13 +108,13 @@ void BGS_func_8038BBA0(Actor *this, s32 arg1){
if(arg1 == 103){
func_80335A24(this->unk148, 0x124, 0.1f, 0.5f); //0x124 = croc_munch
if(this->state == 4){
timed_playSfx(0.31f, SFX_4C_LIP_SMACK, 0.90f, 0x61A8);
timedFunc_set_1(0.31f, func_8038BB40, this->marker);
timed_playSfx(0.31f, SFX_4C_LIP_SMACK, 0.90f, 25000);
timedFunc_set_1(0.31f, (GenMethod_1)func_8038BB40, reinterpret_cast(s32, this->marker));
}
else{
timed_playSfx(0.31f, SFX_4C_LIP_SMACK, 0.90f, 0x61A8);
timed_playSfx(0.81f, SFX_4C_LIP_SMACK, 0.93f, 0x61A8);
timed_playSfx(1.31f, SFX_4C_LIP_SMACK, 0.91f, 0x61A8);
timed_playSfx(0.31f, SFX_4C_LIP_SMACK, 0.90f, 25000);
timed_playSfx(0.81f, SFX_4C_LIP_SMACK, 0.93f, 25000);
timed_playSfx(1.31f, SFX_4C_LIP_SMACK, 0.91f, 25000);
}
}
if(arg1 == 104){
@ -143,7 +143,7 @@ void func_8038BD84(Actor *this){
void func_8038BDD4(Actor *this) {
ActorLocal_MrVile *local;
f32 sp60[3];
f32 start_position[3];
f32 sp5C;
f32 sp58;
f32 sp54;
@ -153,9 +153,9 @@ void func_8038BDD4(Actor *this) {
local = (ActorLocal_MrVile *)&this->local;
sp5C = time_getDelta();
sp60[0] = this->position[0];
sp60[1] = this->position[1];
sp60[2] = this->position[2];
start_position[0] = this->position[0];
start_position[1] = this->position[1];
start_position[2] = this->position[2];
func_8025773C(&local->unk14, sp5C);
if ((local->unkC == 102) || (local->unkC == 103) || (local->unkC == 104)) {
sp44[0] = 0.0f;
@ -191,7 +191,7 @@ void func_8038BDD4(Actor *this) {
}
}
if (this->position[1] > 100.0f) {
func_8038B9F0(&sp60, this->position, 90.0f, 70.0f, 0);
func_8038B9F0(start_position, this->position, 90.0f, 70.0f, 0);
}
}
@ -228,7 +228,7 @@ void func_8038C0C8(Actor * this, s32 next_state){
Actor *chvile_draw(ActorMarker *marker, Gfx **gfx, Mtx** mtx, Vtx **vtx){
Actor *this;
ActorLocal_MrVile *local;
f32 sp34[3];
f32 position[3];
this = func_80325888(marker, gfx, mtx, vtx);
@ -238,10 +238,10 @@ Actor *chvile_draw(ActorMarker *marker, Gfx **gfx, Mtx** mtx, Vtx **vtx){
(local->unk14 > 0.0f)
&& (this->marker->unk14_21)
) {
func_8034A174(func_80329934(), 5, &sp34);
sp34[1] -= 30.0f;
func_8034A174(func_80329934(), 5, position);
position[1] -= 30.0f;
modelRender_setDepthMode(MODEL_RENDER_DEPTH_FULL);
modelRender_draw(gfx, mtx, &sp34, 0, local->unk14, 0, local->unk4);
modelRender_draw(gfx, mtx, position, 0, local->unk14, 0, local->unk4);
}
return this;
}
@ -323,12 +323,10 @@ void BGS_func_8038C460(ActorMarker *arg0){
}
void chvile_update(Actor *this) {
ActorLocal_MrVile *local;
bool var_v1;
f32 sp94;
f32 player_position[3];
f32 sp90;
f32 temp_a0;
f32 temp_f0;
bool var_v1;
f32 sp84;
f32 sp80;
f32 sp7C;
@ -337,8 +335,8 @@ void chvile_update(Actor *this) {
f32 sp70;
f32 sp6C;
f32 sp68;
f32 sp50;
f32 sp58[3];
ActorLocal_MrVile *local;
f32 random_position[3];
local = (ActorLocal_MrVile *)&this->local;
if (!this->unk16C_4) {
@ -352,17 +350,17 @@ void chvile_update(Actor *this) {
return;
}
if (local->game_marker == NULL) {
local->game_marker = func_80326D68(this->position, 0x138, -1, &sp90)->marker;
local->game_marker = actorArray_findClosestActorFromActorId(this->position, 0x138, -1, &sp90)->marker;
}
player_getPosition(&sp94);
sp90 = ml_vec3f_distance(this->position, &sp94);
player_getPosition(player_position);
sp90 = ml_vec3f_distance(this->position, player_position);
if (sp90 <= 300.0f) {
local->unk0 = (local->unk0 == 0) ? 1 : 2;
} else if (sp90 > 300.0f) {
local->unk0 = 0U;
}
if (this->state == 2) {
func_80258A4C(this->position, this->yaw - 90.0f, &sp94, &sp84, &sp80, &sp7C);
func_80258A4C(this->position, this->yaw - 90.0f, player_position, &sp84, &sp80, &sp7C);
if (((sp84 > 50.0f) && (0.05 < sp7C)) || (sp7C < -0.05)) {
this->yaw += sp7C * 20.0f;
} else {
@ -432,15 +430,15 @@ void chvile_update(Actor *this) {
}
if ((this->state == 6)){
local->unk10 = 400.0f;
if((ml_vec3f_distance(this->position, local->target_position) < 100.0f) || (ml_vec3f_distance(&sp94, local->target_position) < 300.0f)) {
if((ml_vec3f_distance(this->position, local->target_position) < 100.0f) || (ml_vec3f_distance(player_position, local->target_position) < 300.0f)) {
for(i = 0; i < 10; i++){
sp58[0] = randf2(-500.0f, 500.0f);
sp58[1] = 0.0f;
sp58[2] = randf2(-500.0f, 500.0f);
if ((i == 0) || (ml_vec3f_distance(&sp94, &sp58) > ml_vec3f_distance(&sp94, local->target_position))) {
local->target_position[0] = sp58[0];
local->target_position[1] = sp58[1];
local->target_position[2] = sp58[2];
random_position[0] = randf2(-500.0f, 500.0f);
random_position[1] = 0.0f;
random_position[2] = randf2(-500.0f, 500.0f);
if ((i == 0) || (ml_vec3f_distance(player_position, random_position) > ml_vec3f_distance(player_position, local->target_position))) {
local->target_position[0] = random_position[0];
local->target_position[1] = random_position[1];
local->target_position[2] = random_position[2];
}
};
}

View File

@ -9,7 +9,7 @@ void func_80324E88(f32);
void timedFunc_set_2(f32, void(*)(s32, s32), s32, s32);
void func_8028E668(f32[3], f32, f32, f32);
extern void func_802C3E10(void(*arg0)(void), ActorMarker *, s32, s32);
extern void __spawnQueue_add_3(GenMethod_3, s32, s32, s32);
void func_8038F6A4(Actor *);
@ -18,7 +18,7 @@ enum chtanktup_leg_e {
TANKTUP_LEG_FRONT_LEFT,
TANKTUP_LEG_BACK_LEFT,
TANKTUP_LEG_FRONT_RIGHT,
TANKTUP_LEG_BACK_RIGHT,
TANKTUP_LEG_BACK_RIGHT
};
ActorAnimationInfo BGS_D_80390C20[] = {
@ -53,7 +53,7 @@ void func_8038F470(ActorMarker *this, s32 arg1, enum chtanktup_leg_e leg_id){
void func_8038F51C(Actor *this){
Actor * spawnPtr;
spawnPtr = func_80326D68(this->position, ACTOR_E8_TANKTUP, -1, 0);
spawnPtr = actorArray_findClosestActorFromActorId(this->position, ACTOR_E8_TANKTUP, -1, 0);
spawnPtr->tanktup.unk0[this->unk10_12] = 1;
spawnPtr->tanktup.unk10 = 1;
}
@ -65,26 +65,26 @@ s32 func_8038F570(s16 *arg0){
pos[0] = (f32)arg0[0];
pos[1] = (f32)arg0[1];
pos[2] = (f32)arg0[2];
spawnPtr = func_80326D68(pos, ACTOR_E8_TANKTUP, -1, 0);
spawnPtr = actorArray_findClosestActorFromActorId(pos, ACTOR_E8_TANKTUP, -1, 0);
return spawnPtr->state == 3;
}
void func_8038F5E4(s32 arg0, s32 arg1, s32 arg2){
void func_8038F5E4(ActorMarker *marker, enum asset_e text_id, s32 arg2){
func_80324E88(0.0f);
}
void func_8038F610(Actor *this) {
f32 sp24[3];
func_8034A174(this->marker->unk44, 8, &sp24);
if (func_80258368(&sp24) != 0) {
func_8028E668(&sp24, 200.0f, -600.0f, 300.0f);
func_8034A174(this->marker->unk44, 8, sp24);
if (func_80258368(sp24) != 0) {
func_8028E668(sp24, 200.0f, -600.0f, 300.0f);
}
func_8034A174(this->marker->unk44, 7, &sp24);
if (func_80258368(&sp24) != 0) {
func_8028E668(&sp24, 200.0f, -600.0f, 200.0f);
func_8034A174(this->marker->unk44, 7, sp24);
if (func_80258368(sp24) != 0) {
func_8028E668(sp24, 200.0f, -600.0f, 200.0f);
}
}
@ -97,7 +97,7 @@ void func_8038F6A4(Actor *this)
ActorLocal_TanktupBody *local = (ActorLocal_TanktupBody *) (&this->local);
f32 sp48[3];
s32 sp44;
Prop *temp_v0;
NodeProp *temp_v0;
if (!this->initialized)
{
temp_v0 = func_80304C38(ACTOR_32B_UNKNOWN, this);
@ -124,7 +124,7 @@ void func_8038F6A4(Actor *this)
{
if (local->unk0[sp44] == 0)
{
func_802C3E10(func_8038F470, *((s32 *) (&this->marker)), local->unk0[sp44], sp44);
__spawnQueue_add_3((GenMethod_3)func_8038F470, *((s32 *) (&this->marker)), local->unk0[sp44], sp44);
}
}

View File

@ -6,13 +6,14 @@
extern void func_803253A0(Actor *);
extern void func_80325794(ActorMarker *);
extern f32 randf (void);
extern BKModelBin *chvilegame_get_grumblie_model(ActorMarker *marker);
enum chyumblie_state_e{
YUMBLIE_STATE_1_UNDER_GROUND = 1,
YUMBLIE_STATE_2_APPEAR,
YUMBLIE_STATE_3_ABOVE_GROUND,
YUMBLIE_STATE_4_DISAPPEAR,
YUMBLIE_STATE_5_BEING_EATEN,
YUMBLIE_STATE_5_BEING_EATEN
};
typedef struct chyumblie_s{
@ -157,7 +158,7 @@ void chyumblie_update(Actor *this){
}
if(s0->game_marker == NULL){
s0->game_marker = func_80326D68(this->position, ACTOR_138_VILE_GAME_CTRL, -1, &sp48)->marker;
s0->game_marker = actorArray_findClosestActorFromActorId(this->position, ACTOR_138_VILE_GAME_CTRL, -1, &sp48)->marker;
}
sp50 = func_80335684(this->unk148);
if(this->state == YUMBLIE_STATE_1_UNDER_GROUND){

View File

@ -43,7 +43,7 @@ void func_80389488(Actor *this, s32 next_state) {
if (next_state == 3) {
func_8030E6A4(SFX_86_TIPTUP_CHORUS_AH, local->unk8, 0x7FFF);
func_80335924(this->unk148, ASSET_12F_ANIM_CHOIR_TURTLE_HURT, 0.1f, 1.75f);
func_80335800(this->unk148, 0.9f, func_80389420, (s32)this->marker);
func_80335800(this->unk148, 0.9f, func_80389420, this->marker);
if (local->tiptup_marker != NULL) {
func_80388E94(local->tiptup_marker, local->unk0);
}
@ -88,7 +88,7 @@ void func_80389668(Actor *this) {
local->unkC++;
if (local->unkC == 2) {
tiptup = func_80326D68(this->position, ACTOR_27A_TIPTUP, -1, &sp30);
tiptup = actorArray_findClosestActorFromActorId(this->position, ACTOR_27A_TIPTUP, -1, &sp30);
local->tiptup_marker = (tiptup != NULL) ? tiptup->marker : NULL;
if (local->tiptup_marker != NULL) {
func_80388FFC(local->tiptup_marker, &local->unk0, &local->unk8);

View File

@ -228,7 +228,7 @@ void func_80389F08(ActorMarker *marker) {
this = marker_getActor(marker);
local = (ActorLocal_BGS_3420 *)&this->local;
BGS_func_80389850(this, 0);
var_s2 = func_80326F58(0x49);
var_s2 = actorArray_actorCount(ACTOR_49_EXTRA_LIFE);
vile = marker_getActor(local->vile_marker);
if (var_s2 > 0) {
func_8025A6EC(COMUSIC_15_EXTRA_LIFE_COLLECTED, 0x7FF8);
@ -305,7 +305,7 @@ void func_8038A068(Actor *this, s32 next_state) {
mapSpecificFlags_set(6, TRUE);
func_8038C3DC(local->vile_marker);
func_8025A58C(0, 4000);
timedFunc_set_2(1.0f, func_8025A6EC, COMUSIC_55_BGS_MR_VILE, 28000);
timedFunc_set_2(1.0f, (GenMethod_2)func_8025A6EC, COMUSIC_55_BGS_MR_VILE, 28000);
}
}
if (this->state == 5) {
@ -321,29 +321,29 @@ void func_8038A068(Actor *this, s32 next_state) {
if (next_state == 6) {
func_8038C3B0(local->vile_marker);
func_80324E38(0.0f, 3);
timedFunc_set_2(1.0f, func_8025A6EC, COMUSIC_3C_MINIGAME_LOSS, 28000);
timedFunc_set_0(4.0f, func_8038A044);
timedFunc_set_1(4.0f, func_80389C58, (s32) this->marker);
timedFunc_set_2(1.0f, (GenMethod_2)func_8025A6EC, COMUSIC_3C_MINIGAME_LOSS, 28000);
timedFunc_set_0(4.0f, (GenMethod_0)func_8038A044);
timedFunc_set_1(4.0f, (GenMethod_1)func_80389C58, (s32) this->marker);
}
if (next_state == 8) {
func_8038C3B0(local->vile_marker);
func_80324E38(0.0f, 3);
timedFunc_set_2(1.0f, func_8025A6EC, COMUSIC_3B_MINIGAME_VICTORY, 28000);
timedFunc_set_0(3.0f, func_8038A044);
timedFunc_set_1(3.0f, func_80389D20, (s32) this->marker);
timedFunc_set_2(1.0f, (GenMethod_2)func_8025A6EC, COMUSIC_3B_MINIGAME_VICTORY, 28000);
timedFunc_set_0(3.0f, (GenMethod_0)func_8038A044);
timedFunc_set_1(3.0f, (GenMethod_1)func_80389D20, (s32) this->marker);
}
if (next_state == 9) {
func_8038C3B0(local->vile_marker);
func_80324E38(0.0f, 3);
timedFunc_set_2(1.0f, func_8025A6EC, COMUSIC_3B_MINIGAME_VICTORY, 28000);
timedFunc_set_0(3.0f, func_8038A044);
timedFunc_set_1(3.0f, func_80389E40, (s32) this->marker);
timedFunc_set_2(1.0f, (GenMethod_2)func_8025A6EC, COMUSIC_3B_MINIGAME_VICTORY, 28000);
timedFunc_set_0(3.0f, (GenMethod_0)func_8038A044);
timedFunc_set_1(3.0f, (GenMethod_1)func_80389E40, (s32) this->marker);
}
if (next_state == 0xA) {
func_8038C3B0(local->vile_marker);
func_80324E38(0.5f, 3);
timedFunc_set_2(1.0f, func_8025A6EC, COMUSIC_3B_MINIGAME_VICTORY, 28000);
timedFunc_set_1(3.0f, func_80389F08, (s32) this->marker);
timedFunc_set_2(1.0f, (GenMethod_2) func_8025A6EC, COMUSIC_3B_MINIGAME_VICTORY, 28000);
timedFunc_set_1(3.0f, (GenMethod_1) func_80389F08, (s32) this->marker);
}
if (next_state == 7) {
func_8038C384(local->vile_marker);
@ -581,7 +581,7 @@ void chvilegame_update(Actor *this) {
return;
}
if (local->vile_marker == NULL) {
local->vile_marker = func_80326D68(this->position, 0x13A, -1, &sp4C)->marker;
local->vile_marker = actorArray_findClosestActorFromActorId(this->position, 0x13A, -1, &sp4C)->marker;
}
if (this->state == 1) {
if (func_803203FC(2)) {

View File

@ -72,7 +72,7 @@ void BGS_func_8038FB84(ActorMarker *this, ActorMarker *other_marker){
thisActor = marker_getActor(this);
FUNC_8030E8B4( SFX_87_TANKTUP_OOOHW, 1.0f, 32750, thisActor->position, 1000, 3000);
timedFunc_set_2(0.65f, (TFQM2) func_8038FB40, (s32) this, (s32) other_marker);
timedFunc_set_2(0.65f, (GenMethod_2) func_8038FB40, (s32) this, (s32) other_marker);
func_8038F51C(thisActor);
this->collidable = 0;
}

View File

@ -3,4 +3,4 @@
//TODO Implement CRC calculation in Makefile(?)
u32 D_80390B20 = 0x00282B61; //BGS.code CRC1
u32 D_80390B24 = 0xccdaeea0; //BGS.code CRC2
u32 D_80390B28 = 0x0002DE6B; //BGS.data CRC1 (with this value = 0)
u32 D_80390B28 = 0x0002DE6B; //BGS.data CRC1 (with this value = 0)

View File

@ -72,11 +72,11 @@ void BGS_func_80388760(void){
func_8025A6EC(COMUSIC_2C_BUZZER, 28000);
}
void func_80388784(ActorMarker *this, s32 arg1, s32 arg2){
void func_80388784(ActorMarker *this, enum asset_e text_id, s32 arg2){
Actor *thisActor;
thisActor = marker_getActor(this);
switch(arg1){
switch(text_id){
case 0xc72:
case 0xc74:
BGS_func_803888E4(thisActor, 3);
@ -167,8 +167,8 @@ void BGS_func_803888E4(Actor *this, s32 arg1){
for(; i < D_80390864[unqPtr->unkA]; i++){
tmpf += randf2(1.0f, 1.5f);
while((rand2 = randi2(1,7)) == prev_member);
timedFunc_set_2(tmpf, func_803886B4, this->marker, rand2);
timedFunc_set_2(tmpf + 0.1, func_803886B4, this->marker, 0);
timedFunc_set_2(tmpf, (GenMethod_2) func_803886B4, reinterpret_cast(s32, this->marker), rand2);
timedFunc_set_2(tmpf + 0.1, (GenMethod_2)func_803886B4, reinterpret_cast(s32, this->marker), 0);
prev_member = rand2;
}//L80388B7C
@ -179,7 +179,7 @@ void BGS_func_803888E4(Actor *this, s32 arg1){
}
func_80324E38(sp54 = tmpf + 0.6, 0);
if(func_803203FC(2)){
timedFunc_set_1(sp54, func_803886F4, this->marker);
timedFunc_set_1(sp54, (GenMethod_1)func_803886F4, reinterpret_cast(s32, this->marker));
}else{
this->state = 0x05;
}
@ -194,8 +194,8 @@ void BGS_func_803888E4(Actor *this, s32 arg1){
for(j = 0; j < vector_size(unqPtr->unk4); j++){
s1 = (Struct_BGS_2270_0s *)vector_at(unqPtr->unk4,j);
tmpf += randf2(1.0f, 1.5f);
timedFunc_set_2(tmpf, func_803886B4, this->marker, s1->unk0);
timedFunc_set_2(tmpf + 0.1, func_803886B4, this->marker, 0);
timedFunc_set_2(tmpf, (GenMethod_2)func_803886B4, reinterpret_cast(s32, this->marker), s1->unk0);
timedFunc_set_2(tmpf + 0.1, (GenMethod_2)func_803886B4, reinterpret_cast(s32, this->marker), 0);
}
func_80324E88(tmpf += 2.5);
func_80324E38(tmpf + 0.6,0);
@ -238,7 +238,7 @@ void func_80388E94(ActorMarker *this, s32 arg1){
}else{
tmp = (Struct_BGS_2270_0s *)vector_at(unqPtr->unk4, unqPtr->unk0);
if(arg1 == tmp->unk0){
timedFunc_set_1(0.5f, func_80388848, thisActor->marker);
timedFunc_set_1(0.5f, (GenMethod_1)func_80388848, reinterpret_cast(s32, thisActor->marker));
}
else{
func_8028F55C(1, thisActor->marker);
@ -271,7 +271,7 @@ void func_80388FFC(ActorMarker *this, s32 *arg1, f32* arg2){
}
void func_80389080(Actor *this){
f32 sp44[3];
f32 player_position[3];
ActorLocal_BGS_2270 *unqPtr;
f32 sp3C;
f32 sp38;
@ -301,7 +301,7 @@ void func_80389080(Actor *this){
marker_despawn(this->marker);
}
else{
player_getPosition(&sp44);
player_getPosition(player_position);
if(func_8033567C(this->unk148) == ASSET_12C_ANIM_TIPTUP_TAPPING && func_80335794(this->unk148) > 0){
func_80335924(this->unk148, ASSET_12B_ANIM_TIPTUP_IDLE, 1.0f, 9.0f);
unqPtr->unkC = randf2(5.0f, 15.0f);
@ -309,7 +309,7 @@ void func_80389080(Actor *this){
if(func_8025773C(&unqPtr->unkC, sp3C)){
func_80335924(this->unk148, ASSET_12C_ANIM_TIPTUP_TAPPING, 1.0f, 4.0f);
}
func_80258A4C(this->position, this->yaw - 90.0f, &sp44, &sp38, &sp34, &sp30);
func_80258A4C(this->position, this->yaw - 90.0f, player_position, &sp38, &sp34, &sp30);
this->yaw = this->yaw + 5.0f*sp30;
if(this->state == 1){
if(func_803203FC(2)){
@ -319,7 +319,7 @@ void func_80389080(Actor *this){
}
}
else{
if(ml_vec3f_distance(this->position, &sp44) < 300.0f && player_getTransformation() == TRANSFORM_1_BANJO && !jiggyscore_isSpawned(JIGGY_27_BGS_TIPTUP)){
if(ml_vec3f_distance(this->position, player_position) < 300.0f && player_getTransformation() == TRANSFORM_1_BANJO && !jiggyscore_isSpawned(JIGGY_27_BGS_TIPTUP)){
BGS_func_803888E4(this, 2);
}
}
@ -333,12 +333,12 @@ void func_80389080(Actor *this){
}
} //L80389370
else{
if(ml_vec3f_distance(this->position, &sp44) >= 300.0f)
if(ml_vec3f_distance(this->position, player_position) >= 300.0f)
BGS_func_803888E4(this, 1);
}
}//L803893A0
if(this->state == 6){
if(ml_vec3f_distance(this->position, &sp44) < 300.0f && !unqPtr->unk8){
if(ml_vec3f_distance(this->position, player_position) < 300.0f && !unqPtr->unk8){
unqPtr->unk8 = 1;
func_80311480(0xc7d, 4, 0, 0, 0, 0);
}

View File

@ -3,35 +3,35 @@
#include "variables.h"
void func_8038CEE8(Actor *);
void func_8038CC08(Actor * arg0, u32 arg1);
void chfrogminigame_update(Actor *);
void chFrogMinigame_setState(Actor * arg0, u32 arg1);
void func_8025A58C(u32, u32);
void func_80324E88(f32);
ActorInfo BGS_D_80390AB0 = {MARKER_C4_YELLOW_FLIBBIT_CTRL, ACTOR_136_YELLOW_FLIBBIT_CONTROLLER, 0x00, 0x00, NULL,
func_8038CEE8, NULL, func_80325340,
chfrogminigame_update, NULL, func_80325340,
0, 0, 0.0f, 0
};
f32 D_80390AD4[3] = {1985.0f, 200.0f, -1386.0f};
/* .bss */
u8 D_80391240[4];
/* .code */
void BGS_func_8038CB20(void){
static void __chFrogMinigame_spawnJiggy(void){
static f32 D_80390AD4[3] = {1985.0f, 200.0f, -1386.0f};
jiggySpawn(JIGGY_24_BGS_FLIBBITS, D_80390AD4);
}
void func_8038CB48(ActorMarker *arg0, u32 arg1, u32 arg2){
Actor *actPtr = marker_getActor(arg0);
static void __chFrogMinigame_textCallback(ActorMarker *marker, enum asset_e text_id, s32 arg2){
Actor *actPtr = marker_getActor(marker);
mapSpecificFlags_set(0x10, 0);
if(actPtr->state == 4){
func_8038CC08(actPtr,5);
chFrogMinigame_setState(actPtr,5);
}
else{
func_8038CC08(actPtr,3);
chFrogMinigame_setState(actPtr,3);
}
}
@ -45,7 +45,7 @@ void func_8038CBB4(Actor * arg0){
arg0->bgs_6730.unk4 = 0;
}
void func_8038CC08(Actor * arg0, u32 arg1){
void chFrogMinigame_setState(Actor * arg0, u32 arg1){
ActorLocal_BGS_6730 *s0;
s0 = &arg0->bgs_6730;
@ -55,13 +55,13 @@ void func_8038CC08(Actor * arg0, u32 arg1){
mapSpecificFlags_set(0x10, 1);
if(!func_8031FF1C(0x1B)){
func_80320004(0x1B, 1);
func_80311480(text_flibbits_meet, 0xf, arg0->position, arg0->marker, func_8038CB48, 0);
func_80311480(text_flibbits_meet, 0xf, arg0->position, arg0->marker, __chFrogMinigame_textCallback, 0);
}else{
if(!arg0->bgs_6730.unk8){
func_80311480(text_flibbits_return, 0x4, arg0->position, arg0->marker, func_8038CB48, 0);
func_80311480(text_flibbits_return, 0x4, arg0->position, arg0->marker, __chFrogMinigame_textCallback, 0);
}
else{
func_8038CB48(arg0->marker, text_flibbits_return, 0);
__chFrogMinigame_textCallback(arg0->marker, text_flibbits_return, 0);
return;
}
}
@ -92,12 +92,12 @@ void func_8038CC08(Actor * arg0, u32 arg1){
}
if(arg1 == 4){
func_80311480(text_flibbits_defeat, 0xf, arg0->position, arg0->marker, func_8038CB48, 0);
func_80311480(text_flibbits_defeat, 0xf, arg0->position, arg0->marker, __chFrogMinigame_textCallback, 0);
}
if(arg1 == 5){
func_80324E38(0.0f, 3);
timed_setCameraToNode(0.0f, 0x27);
timedFunc_set_0(0.2f, BGS_func_8038CB20);
timedFunc_set_0(0.2f, __chFrogMinigame_spawnJiggy);
func_80324E88(3.0f);
func_80324E38(3.0f, 0);
arg1 = 6;
@ -125,18 +125,18 @@ void BGS_func_8038CED0(void){
D_80391240[3]++;
}
void func_8038CEE8(Actor *this){
f32 sp34[3];
void chfrogminigame_update(Actor *this){
f32 player_position[3];
u32 sp28;
ActorLocal_BGS_6730 *bgs6730;
ActorLocal_BGS_6730 *local;
bgs6730 = &this->bgs_6730;
local = &this->bgs_6730;
if(!this->unk16C_4){
this->unk16C_4 = 1;
bgs6730->unk0 = 0;
bgs6730->unk4 = 0;
bgs6730->unk8 = 0;
bgs6730->unkC = 0;
local->unk0 = 0;
local->unk4 = 0;
local->unk8 = 0;
local->unkC = 0;
D_80391240[0] = 0;
D_80391240[1] = 0;
D_80391240[2] = 0;
@ -144,60 +144,60 @@ void func_8038CEE8(Actor *this){
mapSpecificFlags_set(0x12, 0);
mapSpecificFlags_set(0x10, 0);
if(jiggyscore_isSpawned(JIGGY_24_BGS_FLIBBITS)){
func_8038CC08(this,6);
chFrogMinigame_setState(this,6);
return;
}else{
func_8038CC08(this,1);
chFrogMinigame_setState(this,1);
return;
}
}
if(D_80391240[0]>0){
bgs6730->unk8 += D_80391240[0];
bgs6730->unkC -= D_80391240[0];
local->unk8 += D_80391240[0];
local->unkC -= D_80391240[0];
D_80391240[0] = 0;
}
if(D_80391240[1]>0){
bgs6730->unk8 -= D_80391240[1];
local->unk8 -= D_80391240[1];
D_80391240[1] = 0;
}
if(D_80391240[2]>0){
bgs6730->unk8 -= D_80391240[2];
bgs6730->unkC += D_80391240[2];
local->unk8 -= D_80391240[2];
local->unkC += D_80391240[2];
D_80391240[2] = 0;
}
if(D_80391240[3]>0){
bgs6730->unkC += D_80391240[3];
local->unkC += D_80391240[3];
D_80391240[3] = 0;
}
player_getPosition(&sp34);
sp28 = (sp34[1] < 500.0f) && (func_80329210(this,sp34) != 0);
player_getPosition(player_position);
sp28 = (player_position[1] < 500.0f) && (func_80329210(this, player_position) != 0);
if(this->state == 1){
if(sp28 && ((bgs6730->unk8 > 0) || (bgs6730->unkC > 0)) && !func_8028FB48(0xe000)){
func_8038CC08(this,2);
if(sp28 && ((local->unk8 > 0) || (local->unkC > 0)) && !func_8028FB48(0xe000)){
chFrogMinigame_setState(this,2);
}
else{
//L8038D0E0
if(bgs6730->unk4 && !bgs6730->unk8){
if(local->unk4 && !local->unk8){
func_8038CBB4(this);
}
}
}
if(this->state == 3){
if(!sp28){
func_8038CC08(this, 1);
chFrogMinigame_setState(this, 1);
}else{
if(bgs6730->unk8 < 2 && bgs6730->unkC > 0){
if(local->unk8 < 2 && local->unkC > 0){
mapSpecificFlags_set(0x12, 1);
}
}
}
if(this->state == 1 || this->state == 3){
if( (bgs6730->unk0)
if( (local->unk0)
&& !jiggyscore_isSpawned(JIGGY_24_BGS_FLIBBITS)
&& !bgs6730->unk8
&& !bgs6730->unkC
&& !local->unk8
&& !local->unkC
){
func_8038CC08(this, 4);
chFrogMinigame_setState(this, 4);
}
}
}

View File

@ -26,7 +26,11 @@ void func_8038EE50(void){
if(func_80304E24(0x14d, sp24)){
jiggySpawn(JIGGY_20_BGS_ELEVATED_WALKWAY, sp24);
func_802C3F04(func_802C4140, ACTOR_4C_STEAM, *((u32 *) &sp24[0]), *((u32 *) &sp24[1]), *((u32 *) &sp24[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4140, ACTOR_4C_STEAM,
reinterpret_cast(s32, sp24[0]),
reinterpret_cast(s32, sp24[1]),
reinterpret_cast(s32, sp24[2])
);
}
}
@ -65,7 +69,11 @@ void func_8038F018(void){
if(func_80304E24(0x1fc, sp24)){
jiggySpawn(JIGGY_25_BGS_MAZE, sp24);
func_802C3F04(func_802C4140, ACTOR_4C_STEAM, *((u32 *) &sp24[0]), *((u32 *) &sp24[1]), *((u32 *) &sp24[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4140, ACTOR_4C_STEAM,
reinterpret_cast(s32, sp24[0]),
reinterpret_cast(s32, sp24[1]),
reinterpret_cast(s32, sp24[2])
);
}
}

View File

@ -9,9 +9,9 @@ void func_802C4218(u32,f32,f32,f32);
void func_80328A84(Actor *, u32);
/* local declarations */
Actor *func_8038EAD0(ActorMarker *this, Gfx** gdl, Mtx** mtx, u32 arg3);
Actor *chmudhut_draw(ActorMarker *this, Gfx** gdl, Mtx** mtx, Vtx **vtx);
void func_8038EB4C(ActorMarker *);
void func_8038EB8C(Actor *this);
void chmudhut_update(Actor *this);
/* .data section */
ActorAnimationInfo D_80390B30[4] = {
@ -24,7 +24,7 @@ ActorAnimationInfo D_80390B30[4] = {
u32 D_80390B50[6] = {0xA, 0xA, 0xB, 0xA, 0xA, 0xC};
ActorInfo D_80390B68 = {MARKER_D5_BGS_MUD_HUT, ACTOR_C_MUD_HUT, ASSET_7D8_MODEL_MM_HUT_TOP, 0x01, D_80390B30,
func_8038EB8C, func_80326224, func_8038EAD0,
chmudhut_update, func_80326224, chmudhut_draw,
0, 0, 0.0f, 0
};
@ -43,7 +43,7 @@ void func_8038EA90(void){
}
}
Actor *func_8038EAD0(ActorMarker *this, Gfx** gdl, Mtx** mtx, u32 arg3){
Actor *chmudhut_draw(ActorMarker *this, Gfx** gdl, Mtx** mtx, Vtx **vtx){
Actor *thisActor;
thisActor = marker_getActor(this);
@ -51,7 +51,7 @@ Actor *func_8038EAD0(ActorMarker *this, Gfx** gdl, Mtx** mtx, u32 arg3){
if(thisActor->state == 3)
return thisActor;
return func_80325888(this, gdl, mtx, arg3);
return func_80325888(this, gdl, mtx, vtx);
}
void func_8038EB4C(ActorMarker *this){
@ -63,7 +63,7 @@ void func_8038EB4C(ActorMarker *this){
if(this);
}
void func_8038EB8C(Actor *this){
void chmudhut_update(Actor *this){
f32 diffPos[3];
f32 plyrPos[3];
@ -78,7 +78,7 @@ void func_8038EB8C(Actor *this){
switch(this->state){
case 1:
this->marker->propPtr->unk8_3 = 1;
player_getPosition(&plyrPos);
player_getPosition(plyrPos);
diffPos[0] = plyrPos[0] - this->position_x;
diffPos[1] = plyrPos[1] - this->position_y;
diffPos[2] = plyrPos[2] - this->position_z;
@ -100,9 +100,13 @@ void func_8038EB8C(Actor *this){
if(tmp == 5){
func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 28000);
}
__spawnqueue_add_1(func_8038EB4C, this->marker);
__spawnQueue_add_1((GenMethod_1)func_8038EB4C, reinterpret_cast(s32, this->marker));
if(tmp < 5){
func_802C3F04(func_802C4218,D_80390B50[tmp], ((u32 *)diffPos)[0], ((u32 *)diffPos)[1], ((u32 *)diffPos)[2]);
__spawnQueue_add_4((GenMethod_4)func_802C4218, D_80390B50[tmp],
reinterpret_cast(s32, diffPos[0]),
reinterpret_cast(s32, diffPos[1]),
reinterpret_cast(s32, diffPos[2])
);
} else {
jiggySpawn(JIGGY_23_BGS_HUTS, diffPos);
}

View File

@ -7,7 +7,7 @@ typedef struct chpinkegg_s{
u32 unk4;
} ActorLocal_PinkEgg;
void chpinkegg_draw(ActorMarker *this, Gfx ** gdl, Mtx** mptr, u32 arg3);
Actor *chpinkegg_draw(ActorMarker *this, Gfx ** gdl, Mtx** mptr, Vtx **vtx);
void chpinkegg_collision(ActorMarker *this, ActorMarker *other_marker);
void chpinkegg_update(Actor *this);
@ -67,14 +67,14 @@ void chpinkegg_spawn_next(ActorMarker * arg0, u32 arg1){
}
void chpinkegg_draw(ActorMarker *this, Gfx ** gdl, Mtx** mptr, u32 arg3){
Actor *chpinkegg_draw(ActorMarker *this, Gfx ** gdl, Mtx** mptr, Vtx **arg3){
u32 sp18;
u32 t7;
t7 = marker_getActor(this)->state == 3;
func_8033A45C(1, (sp18 = t7) ^ 1);
func_8033A45C(1, NOT(sp18 = t7));
func_8033A45C(2, sp18);
func_80325888(this, gdl, mptr, arg3);
return func_80325888(this, gdl, mptr, arg3);
}
@ -90,7 +90,7 @@ void chpinkegg_collision(ActorMarker *this, ActorMarker *other_marker){
this->collidable = 0;
thisActor->unk124_6 = 0;
if(D_803906C4[(tmp = (ActorLocal_PinkEgg *) &thisActor->local)->unk0] != 0){
func_802C3D3C(chpinkegg_spawn_next, thisActor->marker, tmp->unk0);
__spawnQueue_add_2(chpinkegg_spawn_next, thisActor->marker, tmp->unk0);
} else {
jiggySpawn(JIGGY_21_BGS_PINKEGG, thisActor->position);
func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 28000);

View File

@ -22,7 +22,6 @@ extern void func_8024C5CC(f32[3]);
extern void ml_vec3f_normalize(f32[3]);
extern void func_8033A45C(s32, s32);
extern void func_8033A238(s32);
extern void func_8033A450(s32);
extern void func_8028FAB0(f32[3]);
extern void playerModel_802921D4(f32[3]);
@ -46,7 +45,7 @@ struct {
//u8 pad22[0x2];
BKModelBin * unk24;
f32 unk28[3];
s32 unk34;
struct5Bs *unk34;
f32 unk38;
f32 unk3C;
BKVertexList *unk40;

View File

@ -140,7 +140,7 @@ void func_8038687C(Actor *this) {
return;
}
if ((s32)local->unk0 == 1) {
other = func_80326EEC(0x46);
other = actorArray_findActorFromActorId(0x46);
if(func_803203FC(2)) {
local->unk0 = NULL;
if (other != NULL) {
@ -192,7 +192,7 @@ void func_8038687C(Actor *this) {
break;
}
func_802C3F04(func_802C4140, 0x29B, reinterpret_cast(s32, sp4C[0]), reinterpret_cast(s32, sp4C[1]), reinterpret_cast(s32, sp4C[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4140, 0x29B, reinterpret_cast(s32, sp4C[0]), reinterpret_cast(s32, sp4C[1]), reinterpret_cast(s32, sp4C[2]));
local->unk4++;
}
local->unkC = randf2(0.5 - ((local->unk8 / 10) * 0.4), 1.0 - ((local->unk8 / 10) * 0.8));

View File

@ -123,14 +123,14 @@ Actor *CCW_func_803882F4(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) {
}
void func_803883F4() {
Actor* actor = func_80326EEC(0x29D);
Actor* actor = actorArray_findActorFromActorId(0x29D);
if (actor && actor->state == 1) {
func_80387F64(actor, 2);
}
}
bool func_80388438() {
Actor* actor = func_80326EEC(0x29D);
Actor* actor = actorArray_findActorFromActorId(0x29D);
if (actor && actor->state == 2) {
return TRUE;
}

View File

@ -60,7 +60,7 @@ void CCW_func_8038868C(Actor *this, s32 next_state) {
timed_playSfx(0.8f, SFX_4B_GULPING, 0.8f, 28000);
timed_playSfx(1.4f, SFX_4B_GULPING, 0.8f, 28000);
timed_playSfx(2.0f, SFX_4B_GULPING, 0.8f, 28000);
timedFunc_set_2(3.2f, (TFQM2) CCW_func_80388660, (s32) this->marker, 3);
timedFunc_set_2(3.2f, (GenMethod_2) CCW_func_80388660, (s32) this->marker, 3);
}
if (next_state == 3) {
func_803883F4();
@ -95,7 +95,7 @@ void func_8038894C(ActorMarker* marker, ActorMarker *other_marker) {
Actor* actor = marker_getActor(marker);
if (actor->state == 1) {
actor_collisionOff(actor);
timedFunc_set_2(0.5f, (TFQM2)CCW_func_80388660, (s32)actor->marker, 2);
timedFunc_set_2(0.5f, (GenMethod_2)CCW_func_80388660, (s32)actor->marker, 2);
}
}

View File

@ -111,7 +111,7 @@ void func_80389700(ActorMarker *marker, enum asset_e text_id, s32 arg2) {
void func_80389740(ActorMarker *marker) {
Actor *this = marker_getActor(marker);
if (this->marker->unk14_21) {
func_802C3F04(func_802C4140, 0x30C, reinterpret_cast(s32, D_8038FDE0[0]), reinterpret_cast(s32, D_8038FDE0[1]), reinterpret_cast(s32, D_8038FDE0[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4140, 0x30C, reinterpret_cast(s32, D_8038FDE0[0]), reinterpret_cast(s32, D_8038FDE0[1]), reinterpret_cast(s32, D_8038FDE0[2]));
}
}

View File

@ -40,7 +40,7 @@ void chnabnut_setState(Actor *this, s32 next_state) {
}
if (next_state == NABNUT_STATE_2_WAIT) {
timedFunc_set_2(1.0f, (TFQM2)__chnabnut_setState_method, (s32)this->marker, NABNUT_STATE_3_BACKFLIP);
timedFunc_set_2(1.0f, (GenMethod_2)__chnabnut_setState_method, (s32)this->marker, NABNUT_STATE_3_BACKFLIP);
}
if (next_state == NABNUT_STATE_3_BACKFLIP) {

View File

@ -61,7 +61,7 @@ void CCW_func_8038C16C(Actor *this, s32 next_state) {
func_80335924(this->unk148, 0x231, 0.2f, 4.0f);
}
if ((this->marker->unk14_20 == 0x1C7) || (this->marker->unk14_20 == 0x1CB) || (this->marker->unk14_20 == 0x1C8)) {
other = func_80326EEC(0x313);
other = actorArray_findActorFromActorId(0x313);
if (other != 0) {
this->position[0] = other->position[0];
this->position[1] = other->position[1];

View File

@ -87,7 +87,7 @@ void func_8038E4C0(ActorMarker* marker, s32 arg1) {
FUNC_8030E8B4(SFX_C2_GRUBLIN_EGH, 1.0f, 32000, actor->position, 1250, 2500);
pCtrl = partEmitList_pushNew(1);
func_8038E440(pCtrl, actor, ASSET_52D_MODEL_GRUBLIN_HOOD_HAT);
func_802C3F04((GenMethod_4)func_802C4140, ACTOR_4C_STEAM, reinterpret_cast(s32,actor->position_x), reinterpret_cast(s32,actor->position_y), reinterpret_cast(s32,actor->position_z));
__spawnQueue_add_4((GenMethod_4)func_802C4140, ACTOR_4C_STEAM, reinterpret_cast(s32,actor->position_x), reinterpret_cast(s32,actor->position_y), reinterpret_cast(s32,actor->position_z));
actor_collisionOff(actor);
actor->unk138_24 = 1;
}

View File

@ -125,7 +125,7 @@ void chwasp_update(Actor *this) {
return;
}
if(local->unk4 == NULL) {
other = func_80326EEC(0x299);
other = actorArray_findActorFromActorId(0x299);
if (other == NULL) {
marker_despawn(this->marker);
return;

View File

@ -7,6 +7,7 @@ extern void func_80324CD8(f32);
Actor *func_803875E0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
void func_8038774C(Actor *this);
void func_8038794C(Actor *this);
Actor *func_80328230(enum actor_e id, f32 pos[3], f32 rot[3]);
/* .data */
ActorAnimationInfo D_80391B80[] = {
@ -124,7 +125,7 @@ void func_8038794C(Actor *this){
if(jiggyscore_isCollected(JIGGY_2A_FP_BOGGY_1)){
if(!jiggyscore_isCollected(JIGGY_2C_FP_BOGGY_3) && !jiggyscore_isSpawned(JIGGY_2C_FP_BOGGY_3)){
__spawnqueue_add_1(func_80387760, this->marker);
__spawnQueue_add_1((GenMethod_1)func_80387760, reinterpret_cast(s32, this->marker));
}
this->unk38_31 = 0;
actor_collisionOff(this);
@ -194,7 +195,7 @@ void func_8038794C(Actor *this){
case 5://L80387D90
if(jiggyscore_isCollected(JIGGY_2A_FP_BOGGY_1)){
this->unk38_31 = 0;
__spawnqueue_add_1(func_80387760, this->marker);
__spawnQueue_add_1((GenMethod_1)func_80387760, reinterpret_cast(s32, this->marker));
}
break;
}

View File

@ -376,7 +376,7 @@ void func_803893E4(Actor *this, f32 arg1, u8 arg2){
void func_803895E0(void){
int i;
s16 *s0;
NodeProp *s0;
f32 sp64[3];
Actor *actor;
f32 f20;
@ -426,7 +426,7 @@ void func_803896FC(Actor *this){
func_8038B9B0(this->marker);
this->unk38_31 = 0;
func_80388C88(this);
func_802C3BF8(func_803895E0);
__spawnQueue_add_0(func_803895E0);
if(jiggyscore_isCollected(JIGGY_30_FP_BOGGY_2)){
local->unk19 = 2;
this->unk4C = 900.0f;
@ -584,7 +584,7 @@ void func_803896FC(Actor *this){
case 1: //L80389F78
if(this->unk38_31 == 2){
if(jiggyscore_isCollected(JIGGY_30_FP_BOGGY_2)){
__spawnqueue_add_1(func_80388F54, this->marker);
__spawnQueue_add_1((GenMethod_1)func_80388F54, reinterpret_cast(s32, this->marker));
func_8038B9BC();
marker_despawn(this->marker);
}

View File

@ -54,7 +54,7 @@ void func_8038A890(void){
if(D_80392F30.unk1C){
func_802BAFE4(0x12);
jiggySpawn(JIGGY_31_FP_SIR_SLUSH, D_80392F30.spawn_pos);
func_802C3F04(func_802C4140, ACTOR_4C_STEAM,
__spawnQueue_add_4((GenMethod_4)func_802C4140, ACTOR_4C_STEAM,
reinterpret_cast(s32, D_80392F30.spawn_pos[0]),
reinterpret_cast(s32, D_80392F30.spawn_pos[1]),
reinterpret_cast(s32, D_80392F30.spawn_pos[2])

View File

@ -51,7 +51,7 @@ void func_8038AA60(void){
if(D_80392F50.unk18){
func_802BAFE4(0x11);
jiggySpawn(JIGGY_2D_FP_SNOWMAN_BUTTONS, D_80392F50.spawn_pos);
func_802C3F04(func_802C4140, ACTOR_4C_STEAM,
__spawnQueue_add_4((GenMethod_4)func_802C4140, ACTOR_4C_STEAM,
reinterpret_cast(s32, D_80392F50.spawn_pos[0]),
reinterpret_cast(s32, D_80392F50.spawn_pos[1]),
reinterpret_cast(s32, D_80392F50.spawn_pos[2])

View File

@ -115,7 +115,7 @@ void func_8038AC90(s32 indx, s32 arg1){
}
void func_8038ADE4(s32 indx, s32 arg1){
func_802C3D3C(func_8038AC90, indx, arg1);
__spawnQueue_add_2((GenMethod_2)func_8038AC90, indx, arg1);
}
void func_8038AE14(s32 indx){
@ -164,7 +164,7 @@ void func_8038AEE0(s32 indx){
}
void func_8038B00C(s32 indx){
__spawnqueue_add_1(func_8038AEE0, indx);
__spawnQueue_add_1((GenMethod_1)func_8038AEE0, indx);
}
void func_8038B034(void){
@ -438,7 +438,7 @@ void func_8038B9C8(void){
func_8038ADE4(0x26, 2);
func_8038B034();
if(jiggyscore_isSpawned(JIGGY_30_FP_BOGGY_2) || jiggyscore_isCollected(JIGGY_30_FP_BOGGY_2)){
func_802C3BF8(func_8038B0F8);
__spawnQueue_add_0(func_8038B0F8);
}
D_803935A8.unk8 = -1;

View File

@ -252,7 +252,7 @@ void func_8038C94C(ActorMarker *caller, enum asset_e text_id, s32 arg2){
Actor *this = marker_getActor(caller);
if(!func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){
func_80328A84(this, 6);
__spawnqueue_add_1(func_8038C8F0, this->marker);
__spawnQueue_add_1((GenMethod_1)func_8038C8F0, reinterpret_cast(s32, this->marker));
}
}
@ -280,7 +280,7 @@ void func_8038C9A0(Actor *this){
this->velocity_z = 0.0f;
this->unk1C[0] = 0.0f;
animctrl_setAnimTimer(this->animctrl, 0.0f);
func_8038C428(this, &D_8039207C, 0);
func_8038C428(this, D_8039207C, 0);
return;
}
}//L8038CA9C

View File

@ -368,7 +368,7 @@ void func_8038D6C8(Actor *this){
func_8038D324(this);
if(actor_animationIsAt(this, 0.999f))
__spawnqueue_add_1((GenMethod_1)func_8038D474, (s32)this->marker);
__spawnQueue_add_1((GenMethod_1)func_8038D474, (s32)this->marker);
if(this->velocity[0] != 0.0f)
break;
@ -381,7 +381,7 @@ void func_8038D6C8(Actor *this){
item_set(ITEM_6_HOURGLASS, TRUE);
this->unk38_31 = 0xA;
item_set(ITEM_24_TWINKLY_SCORE, this->unk38_31);
__spawnqueue_add_1((GenMethod_1)func_8038D41C, (s32)this->marker);
__spawnQueue_add_1((GenMethod_1)func_8038D41C, (s32)this->marker);
this->unk60 = 0.0f;
func_80347A14(0);
func_802FAD64(ITEM_14_HEALTH);
@ -421,7 +421,7 @@ void func_8038D6C8(Actor *this){
if(0.96 < animctrl_getAnimTimer(this->animctrl)){
if(this->unk60 <= 0.0){
__spawnqueue_add_1((GenMethod_1)func_8038D474, (s32)this->marker);
__spawnQueue_add_1((GenMethod_1)func_8038D474, (s32)this->marker);
this->unk60 = 2.9f;
}
else{

View File

@ -204,7 +204,7 @@ void FP_func_8038F7AC(Actor *this){
this->position[0] = local->unkC[0];\
this->position[1] = local->unkC[1];\
this->position[2] = local->unkC[2];
__spawnqueue_add_1(FP_func_8038F758, this->marker);
__spawnQueue_add_1((GenMethod_1)FP_func_8038F758, reinterpret_cast(s32, this->marker));
local->unk30 = FALSE;
}
}//L8038F910

View File

@ -98,8 +98,8 @@ void chXmasTree_update(Actor *this){
func_8030DD14(this->unk44_31, 3);
sfxsource_setSampleRate(this->unk44_31, 28000);
}
func_802C3BF8(func_80386FB4);
__spawnqueue_add_1(FP_func_80386FE0, this->marker);
__spawnQueue_add_0(func_80386FB4);
__spawnQueue_add_1((GenMethod_1)FP_func_80386FE0, reinterpret_cast(s32, this->marker));
if(func_8031FF1C(0x13)){
func_80386F84(this);
mapSpecificFlags_set(2, FALSE);

View File

@ -79,8 +79,8 @@ void func_80390B2C(ActorMarker *marker){
void func_80390B70(Actor *this){
func_80324E38(0.0f, 3);
timed_setCameraToNode(0.0f, 0);
timedFunc_set_1(0.6f, (GenMethod_1)func_80390ABC, this->marker);
timedFunc_set_1(2.5f, func_80390B2C, this->marker);
timedFunc_set_1(0.6f, (GenMethod_1)func_80390ABC, reinterpret_cast(s32, this->marker));
timedFunc_set_1(2.5f, (GenMethod_1)func_80390B2C, reinterpret_cast(s32, this->marker));
}
void func_80390BDC(Actor *this){

View File

@ -228,7 +228,7 @@ void func_8039180C(Actor *this){
ActorMarker *sp24;
if(!this->initialized){
sp24 = func_80326EEC(0x254);
sp24 = actorArray_findActorFromActorId(0x254);
if(sns_get_item_state(SNS_ITEM_ICE_KEY, 1) == 1){
marker_despawn(this->marker);
}

View File

@ -13,7 +13,7 @@ void func_803918C0(void){
if(map_get() == MAP_7F_FP_WOZZAS_CAVE){
D_803935E0.unk0 = func_8030ED2C(SFX_128_FIRE_CRACKING, 2);
func_8030DBB4(D_803935E0.unk0, 1.0f);
actor = func_80326EEC(0x353);
actor = actorArray_findActorFromActorId(0x353);
if(actor){
D_803935E0.unk4[0] = actor->position_x;
D_803935E0.unk4[1] = actor->position_y;

View File

@ -130,7 +130,7 @@ Actor *chgobi2_draw(ActorMarker *this_marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
sp3C[1] = this->yaw;
sp3C[2] = this->roll;
func_8033A238(func_803356A0(this->unk148));
modelRender_preDraw(func_803253A0, this);
modelRender_preDraw((GenMethod_1)func_803253A0, (s32)this);
modelRender_draw(gfx, mtx, this->position, sp3C, 1.0f, NULL, func_80330B1C(this_marker));
if(this->state == 4){

View File

@ -89,7 +89,7 @@ void func_803867F4(void){
func_802BAFE4(4);
if(func_80304E24(0x148, sp24)){
jiggySpawn(JIGGY_46_GV_ANCIENT_ONES, sp24);
func_802C3F04((GenMethod_4)func_802C4140, 0x4C, reinterpret_cast(s32, sp24[0]), reinterpret_cast(s32, sp24[1]), reinterpret_cast(s32, sp24[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4140, 0x4C, reinterpret_cast(s32, sp24[0]), reinterpret_cast(s32, sp24[1]), reinterpret_cast(s32, sp24[2]));
}
}
@ -183,10 +183,10 @@ void chancientone_update(Actor *this){
this->position_z += (sp38 & 2) ? 0xC : -0xC;
if(this->unkF4_8 != 1){
if(sp38 == 6){
func_802C3F04((GenMethod_4)func_802C4140, 0x4C, reinterpret_cast(s32, this->position_x), reinterpret_cast(s32, sp34), reinterpret_cast(s32, this->position_z));
__spawnQueue_add_4((GenMethod_4)func_802C4140, 0x4C, reinterpret_cast(s32, this->position_x), reinterpret_cast(s32, sp34), reinterpret_cast(s32, this->position_z));
}
if(sp38 == 4 && this->position_y < LOCAL_GV_230(this)->unk1C - 600.0f){
func_802C3F04((GenMethod_4)func_802C4140, 0x11f, reinterpret_cast(s32, this->position_x), reinterpret_cast(s32, sp34), reinterpret_cast(s32, this->position_z));
__spawnQueue_add_4((GenMethod_4)func_802C4140, 0x11f, reinterpret_cast(s32, this->position_x), reinterpret_cast(s32, sp34), reinterpret_cast(s32, this->position_z));
}//L80386D80
}
if(LOCAL_GV_230(this)->unk1C <= this->position_y){

View File

@ -41,7 +41,7 @@ void chgobirope_update(Actor *this){
this->unk16C_4 = TRUE;
this->marker->propPtr->unk8_3 = TRUE;
actor_collisionOff(this);
sp2C = func_80326D68(this->position, ACTOR_12E_GOBI_1, -1, &sp28);
sp2C = actorArray_findClosestActorFromActorId(this->position, ACTOR_12E_GOBI_1, -1, &sp28);
if(sp2C){
this->position_x = sp2C->position_x;
this->position_y = sp2C->position_y;

View File

@ -71,7 +71,7 @@ Actor *func_80388C64(ActorMarker *this_marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
sp3C[0] = this->pitch;
sp3C[1] = this->yaw;
sp3C[2] = this->roll;
modelRender_preDraw(func_803253A0, this);
modelRender_preDraw((GenMethod_1)func_803253A0, (s32) this);
func_8033A450(func_80329934());
modelRender_draw(gfx, mtx, this->position, sp3C, 1.0f, NULL,func_80330B1C(this_marker));
func_8034A174(func_80329934(), 5, local->unk0);
@ -105,7 +105,7 @@ void func_80388DC8(Actor *this){
local->unkC = particleEmitter_new(20);
local->unk10 = particleEmitter_new(30);
GV_D_80391A60 = FALSE;
sp28 = func_80326D68(this->position, ACTOR_12E_GOBI_1, -1, &sp2C);
sp28 = actorArray_findClosestActorFromActorId(this->position, ACTOR_12E_GOBI_1, -1, &sp2C);
if(sp28){
this->position_x = sp28->position_x;
this->position_y = sp28->position_y;

View File

@ -23,13 +23,13 @@ Actor *func_803892D0(ActorMarker *this_marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
f32 position[3];
Actor *this;
this = func_80325300(this_marker, rotation);
this = marker_getActorAndRotation(this_marker, rotation);
if(this->unk1C[2] != 0.0f){
position[0] = this->position_x;
position[1] = this->position_y;
position[2] = this->position_z;
position[1] += 8.0f;
modelRender_preDraw(func_803253A0, this);
modelRender_preDraw((GenMethod_1)func_803253A0, (s32)this);
modelRender_draw(gfx, mtx, position, rotation, this->unk1C[0], NULL, func_80330B1C(this_marker));
}
return this;

View File

@ -70,7 +70,7 @@ void func_8038A31C(Actor *this){
if(!this->unk16C_4){
this->unk16C_4 = TRUE;
actor_collisionOff(this);
__spawnqueue_add_1((GenMethod_1)func_8038A2C0, reinterpret_cast(s32, this->marker));
__spawnQueue_add_1((GenMethod_1)func_8038A2C0, reinterpret_cast(s32, this->marker));
this->velocity[0] = 0.0f;
}

View File

@ -68,7 +68,7 @@ void func_8038A948(Actor *this){
this->initialized = TRUE;
this->marker->propPtr->unk8_3 = TRUE;
actor_collisionOff(this);
__spawnqueue_add_1((GenMethod_1)func_8038A8CC, (s32)this->marker);
__spawnQueue_add_1((GenMethod_1)func_8038A8CC, (s32)this->marker);
this->velocity_y = 0.0f;
}
}
@ -84,7 +84,7 @@ void GV_func_8038A9C0(Actor *this){
this->unk16C_4 = TRUE;
this->marker->propPtr->unk8_3 = TRUE;
actor_collisionOff(this);
__spawnqueue_add_1((GenMethod_1)func_8038A8CC, (s32)this->marker);
__spawnQueue_add_1((GenMethod_1)func_8038A8CC, (s32)this->marker);
sp24 = subaddie_getLinkedActor(this);
this->unk1C[1] = this->unk48;
this->pitch = 0.0f;

View File

@ -73,7 +73,7 @@ s32 func_8038BAA4(Actor *jiggy){
sp18[0] = (s32)jiggy->position_x;
sp18[1] = (s32)jiggy->position_y;
sp18[2] = (s32)jiggy->position_z;
tmp_v0 = func_80307164(sp18, jiggy);
tmp_v0 = func_80307164(sp18);
if( tmp_v0 < 0)
return 0;
else
@ -198,7 +198,7 @@ void GV_func_8038BEA0(Actor *this){
this->unk38_31 = 0;
D_80391A80 = this->state;
func_802BB3DC(0, 14.0f, 0.92f);
func_802C3F04((GenMethod_4)func_802C4140, 0x11f,
__spawnQueue_add_4((GenMethod_4)func_802C4140, 0x11f,
reinterpret_cast(s32, this->position_x), reinterpret_cast(s32, this->position_y), reinterpret_cast(s32, this->position_z)
);
}

View File

@ -50,13 +50,13 @@ void func_8038C760(Actor *this, s32 arg1){
timed_setCameraToNode(0.0f, 8);
if(arg1 < 3){
timed_setCameraToNode(3.5f, arg1 + 0x15);
timedFunc_set_3(3.5f, (TFQM3)func_80320044, BKPROG_F8_KING_SANDYBUTT_PYRAMID_STATE, arg1, 2);
timedFunc_set_3(3.5f, (GenMethod_3)func_80320044, BKPROG_F8_KING_SANDYBUTT_PYRAMID_STATE, arg1, 2);
func_80324E88(6.5f);
func_80324E38(6.5f, 0);
}
else{
timedFunc_set_2(3.5f, (TFQM2)func_8025A6EC, COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 0x7fff);
timedFunc_set_3(3.5f, (TFQM3)func_80320044, BKPROG_F8_KING_SANDYBUTT_PYRAMID_STATE, arg1, 2);
timedFunc_set_2(3.5f, (GenMethod_2)func_8025A6EC, COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 0x7fff);
timedFunc_set_3(3.5f, (GenMethod_3)func_80320044, BKPROG_F8_KING_SANDYBUTT_PYRAMID_STATE, arg1, 2);
func_80324E88(6.0f);
func_80324E38(6.0f, 0);
}
@ -181,7 +181,7 @@ void func_8038CC98(Actor *this){
}
if(!local->unk14){
local->unk14 = func_80326EEC(ACTOR_31D_SANDYBUTT_PYRAMID)->marker;
local->unk14 = actorArray_findActorFromActorId(ACTOR_31D_SANDYBUTT_PYRAMID)->marker;
}
if(this->state == 1){

View File

@ -448,7 +448,7 @@ void func_8038F028(UNK_TYPE(s32) arg0, ActorMarker *arg1, s32 arg2, s32 arg3){
sp24[0] = (f32)arg1->propPtr->x;
sp24[1] = (f32)arg1->propPtr->y;
sp24[2] = (f32)arg1->propPtr->z;
func_802C3F04((GenMethod_4)func_802C4140, 0x4e, reinterpret_cast(s32, sp24[0]), reinterpret_cast(s32, sp24[1]), reinterpret_cast(s32, sp24[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4140, 0x4e, reinterpret_cast(s32, sp24[0]), reinterpret_cast(s32, sp24[1]), reinterpret_cast(s32, sp24[2]));
func_8025A6EC(COMUSIC_2B_DING_B, 22000);
if(mapSpecificFlags_get(arg3)){
timedFunc_set_0(2.0f, func_8038F004);

View File

@ -96,9 +96,9 @@ void __chmazectrl_setState(Actor *this, s32 next_state){
if(next_state == 3){
func_80324E38(0.0f, 3);
timedFunc_set_2(0.0f, (TFQM2)func_8025A6EC, COMUSIC_3E_SANDYBUTT_FAILURE, 0x7FFF);
timedFunc_set_2(1.0f, (TFQM2)__chmazectrl_markerSetState, reinterpret_cast(s32, this->marker), 6);
timedFunc_set_2(2.0f, (TFQM2)__chmazectrl_markerSetState, reinterpret_cast(s32, this->marker), 4);
timedFunc_set_2(0.0f, (GenMethod_2)func_8025A6EC, COMUSIC_3E_SANDYBUTT_FAILURE, 0x7FFF);
timedFunc_set_2(1.0f, (GenMethod_2)__chmazectrl_markerSetState, reinterpret_cast(s32, this->marker), 6);
timedFunc_set_2(2.0f, (GenMethod_2)__chmazectrl_markerSetState, reinterpret_cast(s32, this->marker), 4);
}//L8038F850
if(next_state == 4){

View File

@ -128,7 +128,7 @@ void func_8039040C(void){
D_80391AE0.tile2_4 = NULL;
D_80391AE0.state_9 = 1;
D_80391AE0.unkC = 0.0f;
actor = func_80326EEC(0x34f);
actor = actorArray_findActorFromActorId(0x34f);
if(actor){
D_80391AE0.unk10 = actor->marker;
}

View File

@ -223,12 +223,12 @@ void func_803876D0(Actor *this){
func_80304D4C(sp40, &((ActorLocal_Conga *)&this->local)->unk10);
}
if(0.0f == this->unk28){
this->unk28 = (func_80326CCC(0x36) != NULL)? 2.0f: 1.0f;
this->unk28 = (actorArray_findActorFromMarkerId(MARKER_36_ORANGE_COLLECTABLE) != NULL)? 2.0f: 1.0f;
}
if(0.0f != this->velocity_x){
this->velocity_x -= 1.0f;
if(0.0f == this->velocity_x){
__spawnqueue_add_1((GenMethod_1)func_80387100, (s32)this->marker);
__spawnQueue_add_1((GenMethod_1)func_80387100, (s32)this->marker);
}
}
marker_setCollisionScripts(this->marker, NULL, NULL, func_80387168);
@ -369,6 +369,6 @@ void func_803876D0(Actor *this){
|| (this->state == 7 && actor_animationIsAt(this, 0.468f))
){
func_8034A1B4(this->marker->unk44, 5, &this->local);
__spawnqueue_add_1((GenMethod_1)func_803873C8, (s32)this->marker); //spawn orange
__spawnQueue_add_1((GenMethod_1)func_803873C8, (s32)this->marker); //spawn orange
}
}

View File

@ -92,10 +92,10 @@ void chhut_update(Actor *this){
func_8030E484(SFX_5B_HEAVY_STUFF_FALLING);
func_80328A84(this, 1);
actor_playAnimationOnce(this);
__spawnqueue_add_1((GenMethod_1)func_803869EC, (s32)this->marker);
__spawnQueue_add_1((GenMethod_1)func_803869EC, (s32)this->marker);
func_802C8F70(this->yaw);
if(D_8037DCB0 < 5){
func_802C3F04(func_802C4218, D_803898D8[D_8037DCB0], *(s32*)(&sp3C[0]),*(s32*)(&sp3C[1]),*(s32*)(&sp3C[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4218, D_803898D8[D_8037DCB0], *(s32*)(&sp3C[0]),*(s32*)(&sp3C[1]),*(s32*)(&sp3C[2]));
}
else{
jiggySpawn(JIGGY_5_MM_HUTS, sp3C);

View File

@ -48,7 +48,7 @@ Actor* func_80389014(ActorMarker *this, Gfx **dl, Mtx **mPtr, Vtx **arg2){
Actor * actorPtr;
ActorLocal_Juju_2 *jujuPtr;
actorPtr = func_80325300(this, sp34);
actorPtr = marker_getActorAndRotation(this, sp34);
jujuPtr = (ActorLocal_Juju_2 *)&actorPtr->local;
if(jujuPtr->unk0 != 2){
modelRender_setDepthMode(MODEL_RENDER_DEPTH_FULL);
@ -92,7 +92,7 @@ void func_803891E8(s32 x, s32 y, s32 z, s32 yaw){
}
void func_80389244(s32 x, s32 y, s32 z, s32 yaw){
func_802C3F04(func_803891E8, x, y, z, yaw);
__spawnQueue_add_4((GenMethod_4)func_803891E8, x, y, z, yaw);
func_802BB3DC(0, 10.0f, 0.8f);
gcpausemenu_80314AC8(1);
}

View File

@ -59,7 +59,7 @@ void func_80388BEC(NodeProp *arg0, ActorMarker *arg1){
sp20[0] = (f32)arg0->x;
sp20[1] = (f32)arg0->y;
sp20[2] = (f32)arg0->z;
sp30 = func_80326D68(sp20, 0x11, -1, &sp34);
sp30 = actorArray_findClosestActorFromActorId(sp20, 0x11, -1, &sp34);
if( sp30 != NULL
&& !( sp34 > 500.0f )
&& (sp30->state ==3)
@ -71,7 +71,7 @@ void func_80388BEC(NodeProp *arg0, ActorMarker *arg1){
((ActorLocal_JujuHitbox *)&sp30->local)->unk4++;
func_803892A8(((ActorLocal_JujuHitbox *)&sp30->local)->unk8);
func_80353580(arg1);
func_802C3F04((GenMethod_4)func_802C4140, 0x58, *(s32 *)&sp20[0], *(s32 *)&sp20[1], *(s32 *)&sp20[2]);
__spawnQueue_add_4((GenMethod_4)func_802C4140, 0x58, *(s32 *)&sp20[0], *(s32 *)&sp20[1], *(s32 *)&sp20[2]);
}
}
}
@ -123,7 +123,7 @@ void func_80388E20(Actor *this){
}
if(!this->unk16C_4){
this->unk16C_4 = 1;
func_802C3D3C(func_80388DFC,this->marker, jujuCtlPtr->unk4);
__spawnQueue_add_2((GenMethod_2)func_80388DFC,this->marker, jujuCtlPtr->unk4);
func_80388D14(this);
}else{
if( func_80329530(this, 0xfa)

View File

@ -28,8 +28,8 @@ void MM_func_803863F0(s32 x, s32 y, s32 z){
}
void func_80386444(ActorMarker *arg0){
f32 sp54;
Actor *actor;
f32 orange_pad_distance;
Actor *orange_pad;
f32 sp44[3];
ParticleEmitter *s0;
s32 temp_a0;
@ -37,27 +37,30 @@ void func_80386444(ActorMarker *arg0){
sp44[0] = arg0->propPtr->x;
sp44[1] = arg0->propPtr->y;
sp44[2] = arg0->propPtr->z;
actor = func_80326D68(sp44, 0x57, 1, &sp54);
orange_pad = actorArray_findClosestActorFromActorId(sp44, ACTOR_57_ORANGE_PAD, 1, &orange_pad_distance);
if(actor && !(500.0f < sp54)){
actor->state = 1;
if(func_80326D68(sp44, 0x57, 1, &sp54)){
if(orange_pad && !(500.0f < orange_pad_distance)){
orange_pad->state = 1;
if(actorArray_findClosestActorFromActorId(sp44, ACTOR_57_ORANGE_PAD, 1, &orange_pad_distance)){
func_8025A6EC(COMUSIC_2B_DING_B, 22000);
}else{
temp_a0 = (actor->unk78_13 == 0x106) ? 0x10 : (actor->unk78_13 == 0x76) ? 0xf : 0xe;
temp_a0 = (orange_pad->unk78_13 == 0x106) ? 0x10
: (orange_pad->unk78_13 == 0x76) ? 0xf
: 0xe;
func_802BAFE4(temp_a0);
sp44[1] += 50.0f;
timedFunc_set_3(0.6f, (TFQM3) MM_func_803863F0, (s32)sp44[0], (s32)sp44[1], (s32)sp44[2]);
timedFunc_set_3(0.6f, (GenMethod_3) MM_func_803863F0, (s32)sp44[0], (s32)sp44[1], (s32)sp44[2]);
func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 0x7FFF);
if(!jiggyscore_isCollected(JIGGY_8_MM_ORANGE_PADS)){
func_80311480(0xB3B, 4, NULL, NULL, NULL, NULL);
}
}// L803865D8
s0 = partEmitList_pushNew(0x1e);
particleEmitter_setPosition(s0, actor->position);
//emmit sparkles
s0 = partEmitList_pushNew(30);
particleEmitter_setPosition(s0, orange_pad->position);
particleEmitter_setModel(s0, 0x89f);
func_802EFB70(s0, 0.09f, 0.19f);
func_802EFB84(s0, 0.0f, 0.0f);
@ -81,7 +84,7 @@ void func_80386444(ActorMarker *arg0){
func_802EF9F8(s0, 0.01f);
func_802EFA18(s0, 3);
func_802EFA20(s0, 1.0f, 1.3f);
particleEmitter_emitN(s0, 0x1e);
particleEmitter_emitN(s0, 30);
}
}
@ -102,7 +105,7 @@ void func_80386768(Actor * this){
}//L803867B0
if(!this->unk16C_4){
this->unk100 = func_80326D68(this->position, 8,-1, &sp34)->marker;
this->unk100 = actorArray_findClosestActorFromActorId(this->position, 8,-1, &sp34)->marker;
this->unk16C_4 = 1;
}//L803867E0

View File

@ -152,7 +152,7 @@ void chmotzhand_update(Actor *this){
func_80387410(sp30);
}
else{
func_80389BCC(*local->pattern_ptr, sp30);
organMinigame_getKeyPosition(*local->pattern_ptr, sp30);
sp30[0] += local->unkC[0];
sp30[1] += local->unkC[1];
sp30[2] += local->unkC[2];

View File

@ -120,7 +120,7 @@ void chnapper_update(Actor *this){
}//L80386CBC
if(this->state == 0){
jiggy = func_80326EEC(ACTOR_46_JIGGY);
jiggy = actorArray_findActorFromActorId(ACTOR_46_JIGGY);
if(jiggy){
local->jiggy_marker = jiggy->marker;
this->position_x = jiggy->position_x;\
@ -222,4 +222,4 @@ void chnapper_update(Actor *this){
if(0.99 <= this->unk48)
marker_despawn(this->marker);
}
}
}

View File

@ -126,7 +126,7 @@ void func_80387DF8(f32 position[3], s32 count, enum asset_e sprite_id) {
ParticleEmitter *pCtrl;
pCtrl = partEmitList_pushNew(count);
func_802EFFA8(pCtrl, &D_8038BAF4);
func_802EFFA8(pCtrl, D_8038BAF4);
particleEmitter_setSprite(pCtrl, sprite_id);
particleEmitter_setPosition(pCtrl, position);
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_8038BB28);
@ -184,7 +184,7 @@ void func_80388028(Actor *this){
this->unk16C_4 = TRUE;
this->unk16C_0 = TRUE;
marker_setCollisionScripts(this->marker, NULL, MMM_func_80387CF4, func_80387D1C);
__spawnqueue_add_1(func_80387D48, this->marker);
__spawnQueue_add_1((GenMethod_1)func_80387D48, reinterpret_cast(s32, this->marker));
func_80387B14(this, (this->state < 5) ? 1 : 6);
}//L803880B4

View File

@ -15,7 +15,7 @@ typedef struct {
u8 unk1;
} Struct_MMM_3420_1;
void func_80389A0C(s32 arg0);
void organMinigame_setState(s32 arg0);
/* .data */
Struct_MMM_3420_0 D_8038BF20[] = {
@ -136,28 +136,28 @@ f32 D_8038C1E0[3] = {0.0f, 3250.0f, -3200.0f}; //jiggy spawn position
/* .bss */
extern struct {
s32 unk0;
ActorMarker *unk4; //motzhand_marker
ActorMarker *motzhand_marker;
Struct_MMM_3420_0 *unk8;
u8 unkC; //state
u8 unkD; //pattern id
u8 state;
u8 pattern;
//u8 padE[2];
u8 *unk10;
}D_8038C4F0;
/* .code */
void MMM_func_80389810(ActorMarker *caller, enum asset_e text_id, s32 arg2) {
switch (D_8038C4F0.unkC) {
switch (D_8038C4F0.state) {
case 2:
func_80389A0C(3);
organMinigame_setState(3);
return;
case 4:
func_80389A0C(1);
organMinigame_setState(1);
return;
case 5:
func_80389A0C(3);
organMinigame_setState(3);
return;
case 6:
func_80389A0C(7);
organMinigame_setState(7);
return;
}
}
@ -186,15 +186,15 @@ void func_80389910() {
void func_803899BC(void){
func_80324E38(0.0f, 3);
timedFunc_set_2(0.0f, (TFQM2)func_8025A6EC, COMUSIC_38_MOTZAND_BEATEN, 0x7fff);
timedFunc_set_2(0.0f, (GenMethod_2)func_8025A6EC, COMUSIC_38_MOTZAND_BEATEN, 0x7fff);
timedFunc_set_0(2.25f, func_80389910);
}
void func_80389A0C(s32 next_state){
void organMinigame_setState(s32 next_state){
func_8028F8F8(1, FALSE);
if(next_state == 2){
if(D_8038C4F0.unkD == 0){
D_8038C4F0.unkD = 1;
if(D_8038C4F0.pattern == 0){
D_8038C4F0.pattern = 1;
func_80311480(0xad3, 4, NULL, NULL, MMM_func_80389810, NULL);
}
else{//L80389A84
@ -204,34 +204,34 @@ void func_80389A0C(s32 next_state){
if(next_state == 3){
D_8038C4F0.unk0 = 0;
if(D_8038C4F0.unkD == 1){
if(D_8038C4F0.pattern == 1){
D_8038C4F0.unk10 = D_8038C1CC;
}
else{
D_8038C4F0.unk10 = D_8038C1D4;
}
func_8028F8F8(1, TRUE);
func_803876C8(D_8038C4F0.unk4, D_8038C4F0.unkD);
func_803876C8(D_8038C4F0.motzhand_marker, D_8038C4F0.pattern);
}//L80389AF4
if(next_state == 4){
func_80311480(0xadd, 4, NULL, NULL, MMM_func_80389810, NULL);
func_80387720(D_8038C4F0.unk4);
func_80387720(D_8038C4F0.motzhand_marker);
}
if(next_state == 5){
D_8038C4F0.unkD++;
D_8038C4F0.pattern++;
func_80311480(0xad4, 4, NULL, NULL, MMM_func_80389810, NULL);
func_80387720(D_8038C4F0.unk4);
func_80387720(D_8038C4F0.motzhand_marker);
}
if(next_state == 6){
MMM_func_803898C8();
timedFunc_set_0(1.25f, func_803899BC);
func_80387654(D_8038C4F0.unk4);
func_80387654(D_8038C4F0.motzhand_marker);
}
D_8038C4F0.unkC = next_state;
D_8038C4F0.state = next_state;
}
s32 func_80389BBC(void){
@ -239,7 +239,7 @@ s32 func_80389BBC(void){
}
//organCtrl_getKeyPosition
void func_80389BCC(s32 key_indx, f32 position[3]) {
void organMinigame_getKeyPosition(s32 key_indx, f32 position[3]) {
Struct_MMM_3420_1 *iPtr;
s32 is_black_key;
@ -271,16 +271,16 @@ void MMM_func_80389CD8() {}
void func_80389CE0() {}
int func_80389CE8(s32 arg0, s32 arg1, s32 arg2){
if(D_8038C4F0.unkC == 3){
if(D_8038C4F0.state == 3){
if(*D_8038C4F0.unk10 == arg2){
D_8038C4F0.unk0--;
D_8038C4F0.unk10++;
if(*D_8038C4F0.unk10 == 0){
if(D_8038C4F0.unkD == 1){
func_80389A0C(5);
if(D_8038C4F0.pattern == 1){
organMinigame_setState(5);
}
else{
func_80389A0C(6);
organMinigame_setState(6);
}
}
return 1;
@ -307,10 +307,10 @@ void func_80389DF4(s32 arg0, s32 arg1) {
D_8038C4F0.unk8 = &D_8038BF20;
func_80250170(0, 0x6A, 0);
D_8038C4F0.unkC = 0;
D_8038C4F0.state = 0;
if ((map_get() == MAP_1C_MMM_CHURCH) && (arg1 == 2)) {
D_8038C4F0.unk4 = NULL;
D_8038C4F0.unkD = 0;
D_8038C4F0.motzhand_marker = NULL;
D_8038C4F0.pattern = 0;
key_position[0] = -1345.0f;
key_position[1] = 1150.0f;
key_position[2] = -2300.0f;
@ -329,24 +329,24 @@ void func_80389DF4(s32 arg0, s32 arg1) {
}
}
if (jiggyscore_isSpawned(JIGGY_60_MMM_MOTZHAND)) {
func_80389A0C(7);
organMinigame_setState(7);
return;
}
func_80389A0C(1);
organMinigame_setState(1);
}
}
void func_80389FC0(void){
void organMinigame_update(void){
UNK_TYPE(u32) sp4C;
f32 sp48;
f32 motzhand_dist;
Actor *motzhand;
f32 sp38[3];
f32 plyr_pos[3];
Actor *motzhand_2;
if(D_8038C4F0.unkC == 0) return;
if(D_8038C4F0.state == 0) return;
if(func_802501A0(0, 0x6A, &sp4C)){
func_80250170(0, 0x6A, 0);
@ -356,25 +356,25 @@ void func_80389FC0(void){
}
}//L8038A02C
if(D_8038C4F0.unkC == 1 && D_8038C4F0.unk4 == NULL){
if(D_8038C4F0.state == 1 && D_8038C4F0.motzhand_marker == NULL){
sp38[0] = sp38[1] = sp38[2] = 0.0f;
motzhand = func_80326D68(sp38, ACTOR_3A_MOTZHAND, -1, &sp48);
D_8038C4F0.unk4 = motzhand->marker;
motzhand = actorArray_findClosestActorFromActorId(sp38, ACTOR_3A_MOTZHAND, -1, &motzhand_dist);
D_8038C4F0.motzhand_marker = motzhand->marker;
}//L8038A078
if(D_8038C4F0.unkC == 1 || D_8038C4F0.unkC == 3){
if(func_8038769C(D_8038C4F0.unk4)){
if(D_8038C4F0.state == 1 || D_8038C4F0.state == 3){
if(func_8038769C(D_8038C4F0.motzhand_marker)){
player_getPosition(plyr_pos);
motzhand_2 = marker_getActor(D_8038C4F0.unk4);
motzhand_2 = marker_getActor(D_8038C4F0.motzhand_marker);
if( ml_vec3f_distance(motzhand_2->position, plyr_pos) < 400.0f
&& motzhand_2->position_y - 50.0f <= plyr_pos[1]
){
func_80389A0C(2);
organMinigame_setState(2);
}
}
}//L8038A104
if(D_8038C4F0.unkC == 3 && D_8038C4F0.unk0 >= 3){
func_80389A0C(4);
if(D_8038C4F0.state == 3 && D_8038C4F0.unk0 >= 3){
organMinigame_setState(4);
}
}

View File

@ -82,7 +82,7 @@ void MMM_func_8038ADF0(Struct_MMM_47D0_0 *arg0, Struct68s *arg1) {
func_8030E2C4(sp3F);
func_8035179C(arg1, sp28);
sp38 = 500.0f;
jiggy = func_80326D68(sp28, ACTOR_46_JIGGY, -1, &sp38);
jiggy = actorArray_findClosestActorFromActorId(sp28, ACTOR_46_JIGGY, -1, &sp38);
if (jiggy != NULL) {
arg0->unk0 = jiggy->marker;
} else {

View File

@ -91,4 +91,4 @@ bool MMM_func_80387340(ActorMarker *marker){
}
func_803871D4(sp1C);
return TRUE;
}
}

View File

@ -3,4 +3,4 @@
u32 D_8038C300 = 0x00146061;
u32 D_8038C304 = 0xEC79D7B4;
u32 D_8038C308 = 0x0001B98D;
u32 D_8038C30C = 0x0;
u32 D_8038C30C = 0x0;

View File

@ -94,7 +94,7 @@ void func_803865D0(ActorMarker *marker){
ActorLocal_RBB_0 * local = (ActorLocal_RBB_0 *) &actor->local;
RBB_func_803863F0(actor, 1);
timed_setCameraToNode(0.0f, D_80390074[local->unk4].unk0);
timedFunc_set_2(0.75*D_80390074[local->unk4].unk4, (TFQM2) func_803865A4, actor->marker, 4);
timedFunc_set_2(0.75*D_80390074[local->unk4].unk4, (GenMethod_2) func_803865A4, actor->marker, 4);
func_80324E88(0.75*D_80390074[local->unk4].unk4);
func_80324E38(0.75*D_80390074[local->unk4].unk4, 0);
timed_playSfx(D_80390074[local->unk4].unk4, SFX_7F_HEAVYDOOR_SLAM, 0.8f, 0x7fd0);
@ -113,7 +113,7 @@ void func_803866F4(Actor *this, s32 arg1){
local->unk8++;
func_8025A6EC(COMUSIC_2B_DING_B, 28000);
func_80324E38(0.0f, 3);
timedFunc_set_2(0.5f, (TFQM2) func_8025A6EC, COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 28000);
timedFunc_set_2(0.5f, (GenMethod_2) func_8025A6EC, COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 28000);
timedFunc_set_1(1.0f, (GenMethod_1) func_803865D0, this->marker);
}//L803867D4
if(arg1 == 4){
@ -166,4 +166,4 @@ void func_803868F0(Actor *this){
}
}
}
}

View File

@ -187,15 +187,15 @@ void func_80387F88(ActorMarker *marker){
timed_playSfx(3.0f, SFX_1A_BIG_THINGS_FALL_OVER, 0.6f, 22000);
func_80324E88(4.0f);
func_80324E38(4.0f, 0);
timedFunc_set_2(4.0f, (TFQM2) RBB_func_80387F18, (s32) actor->marker, 3);
timedFunc_set_2(4.0f, (GenMethod_2) RBB_func_80387F18, (s32) actor->marker, 3);
}
void func_80388154(ActorMarker *marker){
Actor *actor = marker_getActor(marker);
func_803879F0();
timedFunc_set_0(0.0f, (TFQM0) RBB_func_80387F44);
timedFunc_set_0(0.0f, (GenMethod_0) RBB_func_80387F44);
timed_playSfx(0.0f, SFX_7F_HEAVYDOOR_SLAM, 1.0f, 0x7fc6);
timedFunc_set_2(1.2f, (TFQM2) func_80387B8C, 0x19f, 0);
timedFunc_set_2(1.2f, (GenMethod_2) func_80387B8C, 0x19f, 0);
timed_setCameraToNode(1.2f, 8);
timedFunc_set_1(1.5f, (GenMethod_1) func_80387F88, (s32) actor->marker);
}
@ -204,8 +204,8 @@ void func_803881E8(Actor *this, s32 arg1){
this->state = arg1;
if(this->state == 2){
RBB_func_80387960(0.05f);
timedFunc_set_2(0.05f, (TFQM2)func_80387BEC, 0x19f, 0x1f4);
timedFunc_set_2(0.1f, (TFQM2)func_8025A6EC, COMUSIC_2B_DING_B, 28000);
timedFunc_set_2(0.05f, (GenMethod_2)func_80387BEC, 0x19f, 0x1f4);
timedFunc_set_2(0.1f, (GenMethod_2)func_8025A6EC, COMUSIC_2B_DING_B, 28000);
func_80324E38(0.2f, 3);
timed_setCameraToNode(1.1f, 7);
timedFunc_set_1(1.6f, (GenMethod_1)func_80388154, (s32)this->marker);
@ -233,4 +233,4 @@ void RBB_func_803882F4(Actor *this){
func_803881E8(this, 1);
}
}
}
}

View File

@ -93,11 +93,11 @@ void func_80389C78(Actor *this){
if(levelSpecificFlags_get(local->unk8 ? 4 : 3)){
set_camera_to_node(9);
func_80324E38(0.0f, 3);
timedFunc_set_2(0.1f, (TFQM2)levelSpecificFlags_set, local->unk8 ? 0x28 : 0x27, 1);
timedFunc_set_2(0.1f, (GenMethod_2)levelSpecificFlags_set, local->unk8 ? 0x28 : 0x27, 1);
func_80324E88(4.5f);
func_80324E38(4.5f, 0);
timedFunc_set_2(4.5f, (TFQM2)levelSpecificFlags_set, local->unk8 ? 0x4 : 0x3, 0);
timedFunc_set_3(4.5f, (TFQM3)func_802E4078, MAP_34_RBB_ENGINE_ROOM, !local->unk8 ? 3 : 2, 0);
timedFunc_set_2(4.5f, (GenMethod_2)levelSpecificFlags_set, local->unk8 ? 0x4 : 0x3, 0);
timedFunc_set_3(4.5f, (GenMethod_3)func_802E4078, MAP_34_RBB_ENGINE_ROOM, !local->unk8 ? 3 : 2, 0);
func_803228D8();
}
}//L80389EA8
@ -126,4 +126,4 @@ void func_80389C78(Actor *this){
local->unkC = MAX(local->unk4, local->unkC);
}
}//L8038A08C
}
}

View File

@ -49,7 +49,7 @@ void RBB_func_8038A0A0(Actor *this, s32 arg1){
levelSpecificFlags_set(local->unk0->unk8, 1);
func_803228D8();
timedFunc_set_1(1.1f, (GenMethod_1)func_8028F9DC, 2);
timedFunc_set_3(1.1f, (TFQM3)func_802E4078, MAP_31_RBB_RUSTY_BUCKET_BAY, 0, 0);
timedFunc_set_3(1.1f, (GenMethod_3)func_802E4078, MAP_31_RBB_RUSTY_BUCKET_BAY, 0, 0);
}else{
levelSpecificFlags_set(local->unk0->unkA, 1);
}

View File

@ -74,7 +74,7 @@ void func_8038AC18(Actor *this, s32 new_state){
mapSpecificFlags_set(local->unk4->unk10, TRUE);
this->position_y -= 30.0f;
local->unk8 = 1.0f;
other = func_80326EEC(0x1c5);
other = actorArray_findActorFromActorId(0x1c5);
if(other){
local->unk0 = func_8038B56C(other, this->modelCacheIndex - 0x1be, this);
}

View File

@ -86,7 +86,7 @@ void RBB_func_8038B0B8(Actor *this, s32 arg1){
-5.0f, -5.0f, 0.0f,
5.0f, 5.0f, 0.0f
);
particleEmitter_setPosition(other, &local->unk4);
particleEmitter_setPosition(other, local->unk4);
particleEmitter_setParticleVelocityRange(other,
-400.0f, 0.0f, -30.0f,
-800.0f, 0.0f, 30.0f

View File

@ -23,7 +23,7 @@ void func_8038B6E0(Actor *this, s32 arg1){
levelSpecificFlags_set(0x30, TRUE);
func_803204E4(0xe, 1);
timedFunc_set_0(1.0f, func_803228D8);
timedFunc_set_3(1.0f, (TFQM3)func_802E4078, MAP_31_RBB_RUSTY_BUCKET_BAY, 0, 0);
timedFunc_set_3(1.0f, (GenMethod_3)func_802E4078, MAP_31_RBB_RUSTY_BUCKET_BAY, 0, 0);
}
}
this->state = arg1;
@ -44,4 +44,4 @@ void func_8038B7E8(Actor *this){
else
func_8038B6E0(this, 1);
}
}
}

View File

@ -41,9 +41,9 @@ void func_8038C0FC(Actor *this, s32 new_state){
set_camera_to_node(0xC);
func_80324E38(0.0f, 3);
timedFunc_set_0(1.0f, func_8038C000);
timedFunc_set_2(1.0f, (TFQM2)mapSpecificFlags_set, 8, TRUE);
timedFunc_set_2(1.0f, (GenMethod_2)mapSpecificFlags_set, 8, TRUE);
timed_playSfx(2.1f, SFX_3F6_UNKNOWN, 0.6f, 0x7fbc);
timedFunc_set_2(2.7f, (TFQM2)mapSpecificFlags_set, 4, TRUE);
timedFunc_set_2(2.7f, (GenMethod_2)mapSpecificFlags_set, 4, TRUE);
timedFunc_set_0(3.0f, func_8038C058);
func_80324DBC(3.0f, 0xb9C, 7, NULL, this->marker, func_8038C0A8, NULL);
}//L8038C1D8
@ -66,6 +66,6 @@ void func_8038C204(Actor *this){
func_80324E88(0.0f);
func_80324E38(0.0f, 0);
timedFunc_set_0(0.0f, func_803228D8);
timedFunc_set_3(0.0f, (TFQM3)func_802E4078, MAP_8B_RBB_ANCHOR_ROOM, 2, 0);
timedFunc_set_3(0.0f, (GenMethod_3)func_802E4078, MAP_8B_RBB_ANCHOR_ROOM, 2, 0);
}//L8038C2E4
}
}

View File

@ -16,4 +16,4 @@ void func_8038C300(Actor *this){
this->unk16C_4 = 1;
func_80335924(this->unk148, 0x140, 0.0f, 1.0f);
}
}
}

View File

@ -105,7 +105,7 @@ void func_8038C39C(Actor *this){
func_802EFA5C(other, 0.0f, 0.1f);
particleEmitter_setStartingFrameRange(other, 0, 7);
func_802EFA70(other, 4);
particleEmitter_setPosition(other, &this->position);
particleEmitter_setPosition(other, this->position);
func_802EFB70(other, local->unk0->unk4*1, local->unk0->unk4*3.0f);
func_802EFB84(other, 3.0f*local->unk0->unk4, local->unk0->unk4*7.0f);
particleEmitter_setParticleSpawnPositionRange(other,
@ -127,7 +127,7 @@ void RBB_func_8038C538(Actor *this){
func_802EFA5C(other, 0.1f, 0.3f);
func_802EFA70(other, 4);
particleEmitter_setStartingFrameRange(other, 0, 7);
particleEmitter_setPosition(other, &this->position);
particleEmitter_setPosition(other, this->position);
func_802EFB70(other, local->unk0->unk4*1, local->unk0->unk4*6.0f);
func_802EFB84(other, 0.5*local->unk0->unk4, local->unk0->unk4*3.0f);
particleEmitter_setParticleSpawnPositionRange(other,
@ -156,7 +156,7 @@ void RBB_func_8038C70C(Actor *this){
local->unk0->unk4 * -300.0f, local->unk0->unk4 * 100.0f, local->unk0->unk4 * -300.0f,
local->unk0->unk4 * 300.0f, local->unk0->unk4 * 200.0f, local->unk0->unk4 * 300.0f
);
particleEmitter_setPosition(other, &this->position);
particleEmitter_setPosition(other, this->position);
func_802EFB70(other, local->unk0->unk4*0.3, local->unk0->unk4*0.8);
func_802EFE24(other,
-600.0f, -600.0f, -600.0f,
@ -182,7 +182,7 @@ void func_8038C8A8(Actor * this){
func_802EFA5C(other, 0.0, 0.5f);
func_802EFA70(other, 4);
particleEmitter_setStartingFrameRange(other, 0, 7);
particleEmitter_setPosition(other, &sp24);
particleEmitter_setPosition(other, sp24);
func_802EFB70(other, local->unk0->unk4*1, local->unk0->unk4*3.0f);
func_802EFB84(other, local->unk0->unk4*3.0f, local->unk0->unk4*6.0f);
particleEmitter_setPositionVelocityAndAccelerationRanges(other, &D_80390CA8);
@ -191,14 +191,14 @@ void func_8038C8A8(Actor * this){
particleEmitter_emitN(other, 5);
}
void func_8038C9F0(s32 arg0, s32 arg1, s32 arg2){
Actor *actor = func_80326EEC(0x46);
if(actor)
marker_despawn(actor->marker);
void chbossboombox_respawnJiggy(s32 position_x, s32 position_y, s32 position_z){
Actor *jiggy = actorArray_findActorFromActorId(ACTOR_46_JIGGY);
if(jiggy)
marker_despawn(jiggy->marker);
D_80391288[0] = (f32)arg0;
D_80391288[1] = (f32)(arg1 + 0x28);
D_80391288[2] = (f32)arg2;
D_80391288[0] = (f32)position_x;
D_80391288[1] = (f32)(position_y + 0x28);
D_80391288[2] = (f32)position_z;
jiggySpawn(JIGGY_56_RBB_BOSS_BOOM_BOX, &D_80391288);
}
@ -230,13 +230,13 @@ void func_8038CB68(ActorMarker *marker, s32 arg1, s32 arg2){
Actor *actor = marker_getActor(marker);
func_80324E88(0.0f);
func_80324E38(0.0f, 0);
timedFunc_set_2(0.0f, (TFQM2)RBB_func_8038C370, actor->marker, 3);
timedFunc_set_2(0.0f, (GenMethod_2)RBB_func_8038C370, actor->marker, 3);
}
void func_8038CBC0(void){
Actor * actor = func_80326EEC(0x46);
if(actor)
func_802C8090(actor);
void chbossboombox_hideJiggy(void){
Actor * jiggy = actorArray_findActorFromActorId(ACTOR_46_JIGGY);
if(jiggy)
chjiggy_hide(jiggy);
}
int RBB_func_8038CBF0(Actor *this){
@ -280,7 +280,7 @@ void RBB_func_8038CC9C(Actor *this, s32 new_state){
sp80[1] = sp8C[1] - this->position_y;
sp80[2] = sp8C[2] - this->position_z;
if(this->state == 2){
func_8038CBC0();
chbossboombox_hideJiggy();
}
if(this->state == 7){
@ -320,10 +320,10 @@ void RBB_func_8038CC9C(Actor *this, s32 new_state){
item_set(ITEM_0_HOURGLASS_TIMER, 0x1067);
func_80324E88(2.4f);
func_80324E38(2.4f, 0);
timedFunc_set_2(2.4f, (TFQM2)RBB_func_8038C370, (s32)this->marker, 3);
timedFunc_set_2(2.4f, (GenMethod_2)RBB_func_8038C370, (s32)this->marker, 3);
}
else{//L8038CEFC
timedFunc_set_3(2.4f, (TFQM3)comusic_8025AB44, COMUSIC_62_RBB_BOOMBOX, 0x1f40, 0x12C);
timedFunc_set_3(2.4f, (GenMethod_3)comusic_8025AB44, COMUSIC_62_RBB_BOOMBOX, 0x1f40, 0x12C);
func_80324DBC(2.4f, 0xb9e, 4, NULL, this->marker, func_8038CB34, func_8038CB68);
}
}//L8038CF60
@ -368,7 +368,7 @@ void RBB_func_8038CC9C(Actor *this, s32 new_state){
func_803204E4(5, 1);
}
else{//L8038D220
timedFunc_set_3(0.0f, (TFQM3)func_8038C9F0, (s32)this->position_x, (s32)this->position_y, (s32)this->position_z);
timedFunc_set_3(0.0f, (GenMethod_3)chbossboombox_respawnJiggy, (s32)this->position_x, (s32)this->position_y, (s32)this->position_z);
func_80311480(0xb9f, 4, 0, 0, 0, 0);
}
}//L8038D278
@ -377,12 +377,12 @@ void RBB_func_8038CC9C(Actor *this, s32 new_state){
sp68[0] = this->position_x + 200.0f*local->unk0->unk4;
sp68[1] = this->position_y + 80.0f*local->unk0->unk4;
sp68[2] = this->position_z;
func_802C3F04(func_802C4140, local->unk0->unk0 + 1, reinterpret_cast(s32, sp68[0]), reinterpret_cast(s32, sp68[1]), reinterpret_cast(s32, sp68[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4140, local->unk0->unk0 + 1, reinterpret_cast(s32, sp68[0]), reinterpret_cast(s32, sp68[1]), reinterpret_cast(s32, sp68[2]));
sp68[0] = this->position_x - 200.0f*local->unk0->unk4;
sp68[1] = this->position_y + 80.0f*local->unk0->unk4;
sp68[2] = this->position_z;
func_802C3F04(func_802C4140, local->unk0->unk0 + 1, reinterpret_cast(s32, sp68[0]), reinterpret_cast(s32, sp68[1]), reinterpret_cast(s32, sp68[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4140, local->unk0->unk0 + 1, reinterpret_cast(s32, sp68[0]), reinterpret_cast(s32, sp68[1]), reinterpret_cast(s32, sp68[2]));
}
}//L8038D378
@ -452,7 +452,7 @@ void func_8038D608(ActorMarker *marker, ActorMarker *other){
Actor *func_8038D638(ActorMarker *marker, Gfx **gdl, Mtx ** mptr, s32 arg3){
f32 sp3C[3];
Actor *actor = func_80325300(marker, &sp3C);
Actor *actor = marker_getActorAndRotation(marker, &sp3C);
ActorLocal_RBB_5F80 *local = (ActorLocal_RBB_5F80 *) &actor->local;
func_8033A45C(1, local->unk0->unkD);
if(local->unk0->unkD == 1){
@ -529,10 +529,10 @@ void func_8038D8BC(Actor *this){
marker_despawn(this->marker);
if(func_803203FC(2))
func_8038CBC0();
chbossboombox_hideJiggy();
if(func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)){
func_8038CBC0();
chbossboombox_hideJiggy();
func_80335924(this->unk148, ASSET_146_ANIM_BOSS_BOOMBOX_APPEAR, 0.0f, 2.4f);
func_80335A8C(this->unk148, 2);
this->state = 2;

View File

@ -24,8 +24,8 @@ void func_8038DE68(Actor *this){
if(jiggyscore_isSpawned(JIGGY_56_RBB_BOSS_BOOM_BOX) && !func_803203FC(2)){
marker_despawn(this->marker);
}else{
func_802C3F04(func_802C4140, 0x281, reinterpret_cast(s32,this->position_x), reinterpret_cast(s32,this->position_y), reinterpret_cast(s32,this->position_z));
__spawnQueue_add_4((GenMethod_4)func_802C4140, 0x281, reinterpret_cast(s32,this->position_x), reinterpret_cast(s32,this->position_y), reinterpret_cast(s32,this->position_z));
func_8038DE50(this, 1);
}
}//L8038DEF4
}
}

View File

@ -62,7 +62,7 @@ void func_8038DF6C(Actor* this){
if(++local->unk20 == 2){
for(i = 0x5e; i < 0x63; i++){
other = func_80326D68(this->position, i, -1, &sp58);
other = actorArray_findClosestActorFromActorId(this->position, i, -1, &sp58);
if(sp58 < 300.0f){
local->unk4 = other->marker;
other->position_x = this->position_x;

View File

@ -75,7 +75,7 @@ void func_8038E998(Actor *this){
particleEmitter_setSprite(other, ASSET_70E_SPRITE_SMOKE_2);
func_802EFA5C(other, 0.0f, 0.1f);
particleEmitter_setStartingFrameRange(other, 0, 7);
particleEmitter_setPosition(other, &this->position);
particleEmitter_setPosition(other, this->position);
func_802EFB70(other, 0.25f, 0.75f);
func_802EFB84(other, 0.75f, 1.75f);
particleEmitter_setParticleSpawnPositionRange(other, -50.0f, 25.0f, -50.0f, 50.0f, 25.0f, 50.0f);
@ -94,7 +94,7 @@ void func_8038EAB4(Actor *this){
particleEmitter_setStartingFrameRange(other, 0, 0);
particleEmitter_setParticleFramerateRange(other, 4.0f, 4.0f);
particleEmitter_setParticleSpawnPositionRange(other, 0.0f, 200.0f, 0.0f, 0.0f, 200.0f, 0.0f);
particleEmitter_setPosition(other, &this->position);
particleEmitter_setPosition(other, this->position);
func_802EFB70(other, 3.0f, 3.0f);
func_802EFB84(other, 8.0f, 8.0f);
func_802EFEC0(other, 0.5f, 0.5f);
@ -108,7 +108,7 @@ void func_8038EC14(Actor *this){
particleEmitter_setSprite(other, ASSET_70E_SPRITE_SMOKE_2);
func_802EFA5C(other, 0.05f, 0.1f);
particleEmitter_setStartingFrameRange(other, 0, 7);
particleEmitter_setPosition(other, &this->position);
particleEmitter_setPosition(other, this->position);
func_802EFB70(other, 1.0f, 1.5f);
func_802EFB84(other, 2.0f, 3.0f);
particleEmitter_setParticleSpawnPositionRange(other, -75.0f, 25.0f, -75.0f, 75.0f, 75.0f, 75.0f);
@ -124,7 +124,7 @@ void func_8038ED3C(Actor * actor, s32 arg1){
func_802EF9F8(other, 0.6f);
func_802EFA18(other, 3);
particleEmitter_setModel(other, arg1);
particleEmitter_setPosition(other, &actor->position);
particleEmitter_setPosition(other, actor->position);
func_802EFB70(other, 0.05f, 0.4f);
func_802EFE24(other, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
particleEmitter_setSpawnIntervalRange(other, 0.0f, 0.01f);

View File

@ -26,7 +26,7 @@ void RBB_func_8038FA60(ActorMarker *marker){
void func_8038FA9C(Actor *this, s32 arg1){
if(arg1 == 3){
func_80324E38(0.0f, 3);
timedFunc_set_2(1.0f, (TFQM2)func_8025A6EC, COMUSIC_2B_DING_B, 28000);
timedFunc_set_2(1.0f, (GenMethod_2)func_8025A6EC, COMUSIC_2B_DING_B, 28000);
timed_setCameraToNode(1.8f, 1);
timedFunc_set_1(2.0f, (GenMethod_1) RBB_func_8038FA60, (s32)this->marker);
func_80324E88(5.0f);

View File

@ -50,7 +50,7 @@ void func_8038FC48(Actor *this){
}
else{//L8038FD34
if(local->unk8 == NULL)
local->unk8 = func_80326EEC(*local->unk4)->marker;
local->unk8 = actorArray_findActorFromActorId(*local->unk4)->marker;
sp20 = func_8038A6B8(local->unk8);
tmp_f2 = 1.5* sp20 + 0.5;
func_802F9DB8(local->unk0, tmp_f2, tmp_f2, 0.0f);

View File

@ -65,4 +65,4 @@ void func_8038FF70(void){
if(D_803912C8 == 3)
func_8038FDE0(0);
}
}

View File

@ -64,7 +64,7 @@ void func_8038718C(ActorMarker *marker){
timed_playSfx(4.0f, SFX_7F_HEAVYDOOR_SLAM, 1.0f, 19000);\
func_80324E88(5.0f);
func_80324E38(5.0f, 0);
timedFunc_set_2(5.0f, (TFQM2) func_80387090, (s32) marker, 3);
timedFunc_set_2(5.0f, (GenMethod_2) func_80387090, (s32) marker, 3);
}
void func_80387308(ActorMarker *marker){
@ -86,9 +86,9 @@ void func_80387308(ActorMarker *marker){
timed_playSfx(0.5f, SFX_7F_HEAVYDOOR_SLAM, 0.8f, 19000);
timed_playSfx(0.5f, SFX_7F_HEAVYDOOR_SLAM, 0.9f, 19000);
timed_playSfx(0.5f, SFX_7F_HEAVYDOOR_SLAM, 1.0f, 19000);
timedFunc_set_2(0.5f, (TFQM2) func_80387090, (s32) actor->marker, 1);
timedFunc_set_2(0.5f, (GenMethod_2) func_80387090, (s32) actor->marker, 1);
timedFunc_set_2(1.5f, (TFQM2) func_803870BC, 0x19d, 0x1f4);
timedFunc_set_2(1.5f, (GenMethod_2) func_803870BC, 0x19d, 0x1f4);
func_80324E88(1.5f);
func_80324E38(1.5f, 0);

View File

@ -43,7 +43,7 @@ s32 SM_func_803871FC(Actor *this, s32 arg1){
s32 tmp_v0;
sp1C = (arg1 == 1)? ACTOR_166_TOPPER_A : (tmp_v0 = (arg1 == 2)? ACTOR_165_BAWL_A : ACTOR_164_COLLYWOBBLE_A);
func_802C3D3C(__chAttackTutorial_spawnEnemy, this->marker, sp1C);
__spawnQueue_add_2(__chAttackTutorial_spawnEnemy, this->marker, sp1C);
}
@ -113,7 +113,7 @@ void chAttackTutorial_update(Actor *this){
if(!this->initialized){
//find closest tutorial bottles
bottles = func_80326D68(this->position, ACTOR_12B_TUTORIAL_BOTTLES, -1, &sp2C);
bottles = actorArray_findClosestActorFromActorId(this->position, ACTOR_12B_TUTORIAL_BOTTLES, -1, &sp2C);
if(bottles != NULL){
this->unk1C_x = bottles->position_x;
this->unk1C_y = bottles->position_y;

View File

@ -203,7 +203,7 @@ void func_80387C28(Actor * this){
if(this->unk38_31){
this->position_y += 100.0f;
func_802CA1CC(HONEYCOMB_17_SM_COLIWOBBLE);
func_802C3F04((GenMethod_4)func_802C4218, 0x1f, reinterpret_cast(s32, this->position_x), reinterpret_cast(s32, this->position_y), reinterpret_cast(s32, this->position_z));
__spawnQueue_add_4((GenMethod_4)func_802C4218, 0x1f, reinterpret_cast(s32, this->position_x), reinterpret_cast(s32, this->position_y), reinterpret_cast(s32, this->position_z));
}//L80387D64
func_803252D0(1.5f, 7);
actor_collisionOff(this);

View File

@ -407,7 +407,7 @@ void func_803899B0(Actor * this){
}//L80389B20
if(!this->unk16C_4){
__spawnqueue_add_1((GenMethod_1)func_80389948, reinterpret_cast(s32, this->marker));
__spawnQueue_add_1((GenMethod_1)func_80389948, reinterpret_cast(s32, this->marker));
this->unk16C_4 = 1;
}//L80389B4C

View File

@ -63,7 +63,7 @@ void SM_func_8038A5D8(Actor *this){
s32 temp_a0;
if(!this->initialized){
temp_v0 = func_80326D68(this->position, ACTOR_12B_TUTORIAL_BOTTLES, -1, &sp40);
temp_v0 = actorArray_findClosestActorFromActorId(this->position, ACTOR_12B_TUTORIAL_BOTTLES, -1, &sp40);
if(temp_v0){
this->unk1C_x = temp_v0->position_x;
this->unk1C_y = temp_v0->position_y;

View File

@ -113,7 +113,7 @@ void SM_func_80386D68(Actor *this){
if(this->unk100 && func_803870E8(this->unk100)){
func_802CA1CC(HONEYCOMB_18_SM_QUARRIES);
func_802C3F04((GenMethod_4)func_802C4218, 0x1F, reinterpret_cast(s32, this->position[0]), reinterpret_cast(s32, this->position[1]), reinterpret_cast(s32, this->position[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4218, 0x1F, reinterpret_cast(s32, this->position[0]), reinterpret_cast(s32, this->position[1]), reinterpret_cast(s32, this->position[2]));
}
marker_despawn(this->marker);
}
@ -139,7 +139,7 @@ void SM_func_80386EF4(Actor *this) {
if ((this->state) == 1) {
temp_t3 = this->unk38_31++ ^ 2;
if ((temp_t3) == 0) {
other = func_80326EEC(0x16E);
other = actorArray_findActorFromActorId(0x16E);
if (other != NULL) {
this->unk100 = other->marker;
} else {

View File

@ -24,7 +24,7 @@ void SM_func_80386FE0(Actor *this){
switch(this->state){
case 1://L80387064
if(this->unk38_31++ == 2){
this->unk10_12 = func_80326F58(0x16f);
this->unk10_12 = actorArray_actorCount(ACTOR_16F_QUARRIE);
func_80328A84(this, 2);
}
break;

View File

@ -22,7 +22,7 @@ ActorInfo gChTreasureInfo = {
/* .code */
void __chtreasure_die(ActorMarker *marker, ActorMarker *otherMarker){
Actor *this = marker_getActor(marker);
func_802C3F04((GenMethod_4) func_802C4140, 0x4C, reinterpret_cast(s32, this->position[0]), reinterpret_cast(s32, this->position[1]), reinterpret_cast(s32, this->position[2]));
__spawnQueue_add_4((GenMethod_4) func_802C4140, 0x4C, reinterpret_cast(s32, this->position[0]), reinterpret_cast(s32, this->position[1]), reinterpret_cast(s32, this->position[2]));
func_802EE278(this, 3, 0xf, 0x3C, 0.2f, 1.2f);
func_803115C4(0xA19);
jiggySpawn(JIGGY_11_TTC_RED_X, this->position);

View File

@ -50,8 +50,8 @@ bool TTC_func_803864B0(Actor *this, f32 arg1) {
f32 sp3C[3];
s32 sp38;
sp50 = func_80326D68(this->position, 0x52, -1, &sp5C);
sp4C = func_80326D68(this->position, 0x129, -1, &sp58);
sp50 = actorArray_findClosestActorFromActorId(this->position, 0x52, -1, &sp5C);
sp4C = actorArray_findClosestActorFromActorId(this->position, 0x129, -1, &sp58);
sp38 = 0;
if( (sp58 < sp5C)
&& (sp58 < 16000.0f)
@ -241,7 +241,7 @@ void func_80386EDC(s32 this, enum item_e item_id){
player_getPosition(sp24);
func_802C8F70(randf2(0.0f, 359.0f));
func_802C3F04(func_802C4218, this, reinterpret_cast(s32, sp24[0]), reinterpret_cast(s32, sp24[1]), reinterpret_cast(s32, sp24[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4218, this, reinterpret_cast(s32, sp24[0]), reinterpret_cast(s32, sp24[1]), reinterpret_cast(s32, sp24[2]));
item_dec(item_id);
}

View File

@ -69,7 +69,7 @@ void func_80387574(ActorMarker *caller, enum asset_e text_id, s32 arg1){
if(func_80304E24(0x14b, sp24)){
jiggySpawn(JIGGY_14_TTC_BLUBBER, sp24);
func_802C3F04((GenMethod_4)func_802C4140, ACTOR_4C_STEAM, reinterpret_cast(s32, sp24[0]), reinterpret_cast(s32, sp24[1]), reinterpret_cast(s32, sp24[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4140, ACTOR_4C_STEAM, reinterpret_cast(s32, sp24[0]), reinterpret_cast(s32, sp24[1]), reinterpret_cast(s32, sp24[2]));
}
}

View File

@ -341,6 +341,6 @@ bool func_80388A44(s16 arg0[3]){
sp1C[1] = (f32) arg0[1];
sp1C[2] = (f32) arg0[2];
nipper = func_80326D68(sp1C, ACTOR_117_NIPPER, -1, NULL);
nipper = actorArray_findClosestActorFromActorId(sp1C, ACTOR_117_NIPPER, -1, NULL);
return nipper->state == 7;
}

View File

@ -135,7 +135,7 @@ void func_80388D04(s32 arg0){
void func_80388D34(Actor *this){
TTC_func_80388C78(this);
if(!this->unk16C_4){
__spawnqueue_add_1((GenMethod_1)func_80388D04, (s32)this->marker);
__spawnQueue_add_1((GenMethod_1)func_80388D04, (s32)this->marker);
this->unk16C_4 = TRUE;
}
}

View File

@ -94,7 +94,7 @@ void func_80389288(ActorMarker *caller, enum asset_e text_id, s32 arg2){
timedFunc_set_0(1.0f, func_80388F88);
func_80324E38(2.5f, 0);
timedFunc_set_1(2.5f, func_8028F9DC, 2);
timedFunc_set_3(2.5f, (TFQM3)func_802E4078, MAP_A_TTC_SANDCASTLE, 0, 0);
timedFunc_set_3(2.5f, (GenMethod_3)func_802E4078, MAP_A_TTC_SANDCASTLE, 0, 0);
func_803228D8();
}

View File

@ -123,8 +123,8 @@ void func_80389B38(s32 arg0){
}
D_8037DCB4++;
func_802C3BF8(func_80389A9C);
func_802C3BF8(func_80389A1C);
__spawnQueue_add_0(func_80389A9C);
__spawnQueue_add_0(func_80389A1C);
}
}
@ -157,7 +157,7 @@ void func_80389CC4(s16 arg0[3], s32 arg1){
D_8038D708[1] = (f32)arg0[1];
D_8038D708[2] = (f32)arg0[2];
D_8038D708[1] = func_80309724(D_8038D708);
func_802C3F04((GenMethod_4)func_802C4140, 0xF4, reinterpret_cast(s32, D_8038D708[0]), reinterpret_cast(s32, D_8038D708[1]), reinterpret_cast(s32, D_8038D708[2]));
__spawnQueue_add_4((GenMethod_4)func_802C4140, 0xF4, reinterpret_cast(s32, D_8038D708[0]), reinterpret_cast(s32, D_8038D708[1]), reinterpret_cast(s32, D_8038D708[2]));
D_8038D700 = partEmitList_pushNew(3);
func_802EFFA8(D_8038D700, D_8038C91C);
particleEmitter_setSprite(D_8038D700, ASSET_700_SPRITE_DUST);
@ -168,7 +168,7 @@ void func_80389CC4(s16 arg0[3], s32 arg1){
particleEmitter_emitN(D_8038D700, 5);
D_8038D708[2] += 300.0f;
gcpausemenu_80314AC8(0);
timedFunc_set_2(0.1f, (TFQM2) func_8028F45C, 9, (s32)&D_8038D708);
timedFunc_set_2(0.1f, (GenMethod_2) func_8028F45C, 9, (s32)&D_8038D708);
timedFunc_set_1(0.1f, (GenMethod_1) gcpausemenu_80314AC8, 1);
func_80311480(ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED, 4, NULL, NULL, NULL, NULL);
D_8037DCB4++;
@ -219,7 +219,7 @@ Actor *func_8038A0D0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
f32 sp38;
Actor *actor;
actor = func_80325300(marker, sp4C);
actor = marker_getActorAndRotation(marker, sp4C);
switch(marker->modelId){
case ASSET_3E9_MODEL_RED_ARROW://L8038A12C
sp3C = 1.0f;

View File

@ -408,7 +408,7 @@ void func_8038B094(void){
func_80324E88(2.0f);
func_80324E38(2.0f, 0);
func_803228D8();
timedFunc_set_3(2.0f, (TFQM3) func_802E4078, MAP_7_TTC_TREASURE_TROVE_COVE, 1, 0);
timedFunc_set_3(2.0f, (GenMethod_3) func_802E4078, MAP_7_TTC_TREASURE_TROVE_COVE, 1, 0);
}
else if(levelSpecificFlags_get(2) || func_803203FC(2)){
func_8034E71C(sp2C, -500, 0.0f);

View File

@ -156,10 +156,10 @@ void func_8023DD0C(void){
case 3:
func_80255524();
func_80255ACC();
func_802C3A18();
spawnQueue_func_802C3A18();
if(func_802E4424())
func_802E3F8C(0);
func_802C3A38();
spawnQueue_flush();
break;
}//L8023DE34

View File

@ -149,10 +149,10 @@ void func_80250E6C(f32 arg0, f32 arg1){
void func_80250E94(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5){
if(D_802823AC){
timedFunc_set_3(0.0f, (TFQM3) func_80250BA4, 0, (s32) (arg0 * 524288.0f), (s32) (arg2*524288.0f));
timedFunc_set_3(arg2, (TFQM3) func_80250BA4, (s32) (arg0 * 524288.0f), (s32) (arg1 * 524288.0f), (s32) (arg3*524288.0f));
timedFunc_set_3(arg2 + arg3, (TFQM3) func_80250BA4, (s32) (arg1 * 524288.0f), (s32) (arg1 * 524288.0f), (s32) (arg4*524288.0f));
timedFunc_set_3(arg2 + arg3 + arg4, (TFQM3) func_80250BA4, (s32) (arg1 * 524288.0f), 0, (s32) (arg5*524288.0f));
timedFunc_set_3(0.0f, (GenMethod_3) func_80250BA4, 0, (s32) (arg0 * 524288.0f), (s32) (arg2*524288.0f));
timedFunc_set_3(arg2, (GenMethod_3) func_80250BA4, (s32) (arg0 * 524288.0f), (s32) (arg1 * 524288.0f), (s32) (arg3*524288.0f));
timedFunc_set_3(arg2 + arg3, (GenMethod_3) func_80250BA4, (s32) (arg1 * 524288.0f), (s32) (arg1 * 524288.0f), (s32) (arg4*524288.0f));
timedFunc_set_3(arg2 + arg3 + arg4, (GenMethod_3) func_80250BA4, (s32) (arg1 * 524288.0f), 0, (s32) (arg5*524288.0f));
}
}

View File

@ -1508,4 +1508,4 @@ void func_8025982C(f32 dst[3], f32 arg1[3], f32 arg2[3], f32 arg3){
for(i=0; i< 3; i++){
dst[i] = arg1[i] + (arg2[i]-arg1[i])*arg3;
}
}
}

Some files were not shown because too many files have changed in this diff Show More