animation struct documentation
This commit is contained in:
@@ -10,7 +10,7 @@ void func_8038FCB0(Actor *);
|
||||
|
||||
/* .data */
|
||||
ActorInfo D_80390D70 = {MARKER_DC_BIG_ALLIGATOR, ACTOR_F6_BIG_ALLIGATOR, ASSET_397_MODEL_BIG_ALLIGATOR, 0x01, NULL,
|
||||
func_8038FCB0, func_80326224, func_80325888,
|
||||
func_8038FCB0, func_80326224, actor_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -20,12 +20,12 @@ typedef struct ch_bgs_2270_s{
|
||||
} ActorLocal_BGS_2270;
|
||||
|
||||
void func_80389080(Actor *this);
|
||||
Actor *func_80325888(ActorMarker *, Gfx **, Mtx **, Vtx **);
|
||||
Actor *actor_draw(ActorMarker *, Gfx **, Mtx **, Vtx **);
|
||||
|
||||
ActorInfo D_80390830 = {
|
||||
MARKER_19A_TIPTUP, ACTOR_27A_TIPTUP, ASSET_3F8_MODEL_TIPTUP,
|
||||
0, NULL,
|
||||
func_80389080, NULL, func_80325888,
|
||||
func_80389080, NULL, actor_draw,
|
||||
0, 0, 2.5f, 0
|
||||
};
|
||||
s16 D_80390854[] = {0, 0xC78, 0xC7A, 0xC7C}; //see again texts
|
||||
@@ -136,11 +136,11 @@ void BGS_func_803888E4(Actor *this, s32 arg1){
|
||||
this->state = arg1;
|
||||
unqPtr->unkC = 0.0f;
|
||||
if(this->state == 1){
|
||||
func_80335924(this->unk148, ASSET_12B_ANIM_TIPTUP_IDLE, 1.0f, 9.0f);
|
||||
skeletalAnim_set(this->unk148, ASSET_12B_ANIM_TIPTUP_IDLE, 1.0f, 9.0f);
|
||||
unqPtr->unkC = randf2(5.0f, 15.0f);
|
||||
}
|
||||
if(this->state == 2){
|
||||
func_80335924(this->unk148, ASSET_12B_ANIM_TIPTUP_IDLE, 1.0f, 9.0f);
|
||||
skeletalAnim_set(this->unk148, ASSET_12B_ANIM_TIPTUP_IDLE, 1.0f, 9.0f);
|
||||
unqPtr->unkC = randf2(5.0f, 15.0f);
|
||||
if(!this->unk138_24){
|
||||
this->unk138_24 = 1;
|
||||
@@ -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, (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);
|
||||
timedFunc_set_2(tmpf, (GenFunction_2) func_803886B4, reinterpret_cast(s32, this->marker), rand2);
|
||||
timedFunc_set_2(tmpf + 0.1, (GenFunction_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, (GenMethod_1)func_803886F4, reinterpret_cast(s32, this->marker));
|
||||
timedFunc_set_1(sp54, (GenFunction_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, (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);
|
||||
timedFunc_set_2(tmpf, (GenFunction_2)func_803886B4, reinterpret_cast(s32, this->marker), s1->unk0);
|
||||
timedFunc_set_2(tmpf + 0.1, (GenFunction_2)func_803886B4, reinterpret_cast(s32, this->marker), 0);
|
||||
}
|
||||
timed_exitStaticCamera(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, (GenMethod_1)func_80388848, reinterpret_cast(s32, thisActor->marker));
|
||||
timedFunc_set_1(0.5f, (GenFunction_1)func_80388848, reinterpret_cast(s32, thisActor->marker));
|
||||
}
|
||||
else{
|
||||
func_8028F55C(1, thisActor->marker);
|
||||
@@ -302,12 +302,12 @@ void func_80389080(Actor *this){
|
||||
}
|
||||
else{
|
||||
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);
|
||||
if(skeletalAnim_getAnimId(this->unk148) == ASSET_12C_ANIM_TIPTUP_TAPPING && skeletalAnim_getLoopCount(this->unk148) > 0){
|
||||
skeletalAnim_set(this->unk148, ASSET_12B_ANIM_TIPTUP_IDLE, 1.0f, 9.0f);
|
||||
unqPtr->unkC = randf2(5.0f, 15.0f);
|
||||
}
|
||||
if(ml_timer_update(&unqPtr->unkC, sp3C)){
|
||||
func_80335924(this->unk148, ASSET_12C_ANIM_TIPTUP_TAPPING, 1.0f, 4.0f);
|
||||
skeletalAnim_set(this->unk148, ASSET_12C_ANIM_TIPTUP_TAPPING, 1.0f, 4.0f);
|
||||
}
|
||||
func_80258A4C(this->position, this->yaw - 90.0f, player_position, &sp38, &sp34, &sp30);
|
||||
this->yaw = this->yaw + 5.0f*sp30;
|
||||
|
@@ -18,15 +18,15 @@ ActorAnimationInfo D_80390B90[] = {
|
||||
{ASSET_D5_ANIM_SWITCH_UP, 0.5f},
|
||||
{ASSET_D5_ANIM_SWITCH_UP, 1e+8f}
|
||||
};
|
||||
ActorInfo D_80390BD8 = {MARKER_F5_BGS_ELEVATED_WALKWAY_SWITCH, ACTOR_14E_BGS_ELEVATED_WALKWAY_SWITCH, ASSET_3F5_BGS_JIGGY_SWITCH, 1, D_80390B90, func_8038EEA4, func_80326224, func_80325888, 0, 0, 0.0f, 0};
|
||||
ActorInfo D_80390BFC = {MARKER_FD_BGS_MAZE_SWITCH, ACTOR_1FB_BGS_MAZE_SWITCH, ASSET_3F5_BGS_JIGGY_SWITCH, 1, D_80390B90, func_8038F06C, func_80326224, func_80325888, 0, 0, 0.0f, 0};
|
||||
ActorInfo D_80390BD8 = {MARKER_F5_BGS_ELEVATED_WALKWAY_SWITCH, ACTOR_14E_BGS_ELEVATED_WALKWAY_SWITCH, ASSET_3F5_BGS_JIGGY_SWITCH, 1, D_80390B90, func_8038EEA4, func_80326224, actor_draw, 0, 0, 0.0f, 0};
|
||||
ActorInfo D_80390BFC = {MARKER_FD_BGS_MAZE_SWITCH, ACTOR_1FB_BGS_MAZE_SWITCH, ASSET_3F5_BGS_JIGGY_SWITCH, 1, D_80390B90, func_8038F06C, func_80326224, actor_draw, 0, 0, 0.0f, 0};
|
||||
|
||||
void func_8038EE50(void){
|
||||
f32 sp24[3];
|
||||
|
||||
if(nodeProp_findPositionFromActorId(0x14d, sp24)){
|
||||
jiggySpawn(JIGGY_20_BGS_ELEVATED_WALKWAY, sp24);
|
||||
__spawnQueue_add_4((GenMethod_4)func_802C4140, ACTOR_4C_STEAM,
|
||||
__spawnQueue_add_4((GenFunction_4)func_802C4140, ACTOR_4C_STEAM,
|
||||
reinterpret_cast(s32, sp24[0]),
|
||||
reinterpret_cast(s32, sp24[1]),
|
||||
reinterpret_cast(s32, sp24[2])
|
||||
@@ -69,7 +69,7 @@ void func_8038F018(void){
|
||||
|
||||
if(nodeProp_findPositionFromActorId(0x1fc, sp24)){
|
||||
jiggySpawn(JIGGY_25_BGS_MAZE, sp24);
|
||||
__spawnQueue_add_4((GenMethod_4)func_802C4140, ACTOR_4C_STEAM,
|
||||
__spawnQueue_add_4((GenFunction_4)func_802C4140, ACTOR_4C_STEAM,
|
||||
reinterpret_cast(s32, sp24[0]),
|
||||
reinterpret_cast(s32, sp24[1]),
|
||||
reinterpret_cast(s32, sp24[2])
|
||||
|
@@ -74,7 +74,7 @@ void func_80387E00(s32 arg0){
|
||||
Actor * this = marker_getActor(marker);
|
||||
|
||||
func_803262E4(this);
|
||||
__spawnQueue_add_2((GenMethod_2)func_80387D18, reinterpret_cast(s32, marker), 0x1E);
|
||||
__spawnQueue_add_2((GenFunction_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, (GenMethod_1)func_80387E00, reinterpret_cast(s32, bgs_D_803907B8[this->unkF4_8]));
|
||||
timedFunc_set_1(1.1f, (GenFunction_1)func_80387E00, reinterpret_cast(s32, bgs_D_803907B8[this->unkF4_8]));
|
||||
timed_setStaticCameraToNode(0.8f, 9);
|
||||
func_80324DBC(3.4f, 0xC87, 0xE, NULL, NULL, func_80387E68, NULL);
|
||||
__spawnQueue_add_2((GenMethod_2) func_80387D18, reinterpret_cast(s32, this->marker), 0x46);
|
||||
__spawnQueue_add_2((GenFunction_2) func_80387D18, reinterpret_cast(s32, this->marker), 0x46);
|
||||
}
|
||||
else{
|
||||
timed_exitStaticCamera(0.0f);
|
||||
@@ -152,18 +152,18 @@ void func_80387FD4(Actor *this){
|
||||
func_80324D2C(4.5f, COMUSIC_43_ENTER_LEVEL_GLITTER);
|
||||
func_80328B8C(this, 5, 0.79f, 1);
|
||||
if (this->unkF4_8 == 5) {
|
||||
timedFunc_set_1(0.9f, (GenMethod_1) func_80387E40, (s32) this->marker);
|
||||
timedFunc_set_1(0.9f, (GenFunction_1) func_80387E40, (s32) this->marker);
|
||||
} else {
|
||||
func_80326310(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, reinterpret_cast(s32, bgs_D_803907B8[this->unkF4_8]));
|
||||
timedFunc_set_1(1.1f, (GenFunction_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);
|
||||
timedFunc_set_1(0.8f, (GenFunction_1)func_80387D90, (s32) this->marker);
|
||||
}
|
||||
__spawnQueue_add_2((GenMethod_2)func_80387D18, reinterpret_cast(s32, this->marker), 0x46);
|
||||
__spawnQueue_add_2((GenFunction_2)func_80387D18, reinterpret_cast(s32, this->marker), 0x46);
|
||||
}
|
||||
}
|
||||
}//L80388348
|
||||
@@ -228,5 +228,5 @@ Actor *func_8038860C(ActorMarker *this, Gfx** gdl, Mtx ** mptr, Vtx **vtx){
|
||||
Actor *thisActor;
|
||||
thisActor = marker_getActor(this);
|
||||
func_8033A45C(1, thisActor->unkF4_8);
|
||||
return func_80325888(this, gdl, mptr, vtx);
|
||||
return actor_draw(this, gdl, mptr, vtx);
|
||||
}
|
||||
|
@@ -47,8 +47,8 @@ bool BGS_func_803863F0(Actor *this, f32 arg1[3], s32 arg2){
|
||||
local->unk8[2] = arg1[2];
|
||||
|
||||
local->unk8[1] = func_80309724(arg1);
|
||||
func_80335924(this->unk148, 0xdb, 0.2f,(arg2) ? randf2(0.7f, 0.8f) : randf2(0.75f, 0.85f));
|
||||
func_80335A8C(this->unk148, 2);
|
||||
skeletalAnim_set(this->unk148, 0xdb, 0.2f,(arg2) ? randf2(0.7f, 0.8f) : randf2(0.75f, 0.85f));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||
func_80324D54(0.2f, 0x3f2, randf2(0.7f, 1.3f), randi2(0x61A8, 0x6978), this->position, 500.0f, 2500.0f);
|
||||
return TRUE;
|
||||
}
|
||||
@@ -181,9 +181,9 @@ void func_80386AEC(Actor *this, s32 next_state) {
|
||||
local->unk24 = 0.0f;
|
||||
|
||||
if (next_state == 1) {
|
||||
func_80335924(this->unk148, ASSET_FA_ANIM_FLIBBIT_IDLE, 0.2f, randf2(1.0f, 2.0f));
|
||||
func_80335A74(this->unk148, randf2(0.0f, 0.9f));
|
||||
func_80335A8C(this->unk148, 1);
|
||||
skeletalAnim_set(this->unk148, ASSET_FA_ANIM_FLIBBIT_IDLE, 0.2f, randf2(1.0f, 2.0f));
|
||||
skeletalAnim_setProgress(this->unk148, randf2(0.0f, 0.9f));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_1_LOOP);
|
||||
this->position[0] = (f32) local->unkE[0];
|
||||
this->position[1] = (f32) local->unkE[1];
|
||||
this->position[2] = (f32) local->unkE[2];
|
||||
@@ -201,38 +201,38 @@ void func_80386AEC(Actor *this, s32 next_state) {
|
||||
}
|
||||
|
||||
if (next_state == 3) {
|
||||
func_80335924(this->unk148, ASSET_FB_ANIM_FLIBBIT_TURN, 0.2f, 1.0f);
|
||||
func_80335A74(this->unk148, randf2(0.0f, 1.0f));
|
||||
func_80335A8C(this->unk148, 1);
|
||||
skeletalAnim_set(this->unk148, ASSET_FB_ANIM_FLIBBIT_TURN, 0.2f, 1.0f);
|
||||
skeletalAnim_setProgress(this->unk148, randf2(0.0f, 1.0f));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_1_LOOP);
|
||||
local->unk24 = randf2(1.0f, 3.0f);
|
||||
}
|
||||
|
||||
if (next_state == 4) {
|
||||
func_80335924(this->unk148, ASSET_FA_ANIM_FLIBBIT_IDLE, 0.2f, randf2(1.0f, 2.0f));
|
||||
func_80335A74(this->unk148, randf2(0.0f, 0.9f));
|
||||
func_80335A8C(this->unk148, 1);
|
||||
skeletalAnim_set(this->unk148, ASSET_FA_ANIM_FLIBBIT_IDLE, 0.2f, randf2(1.0f, 2.0f));
|
||||
skeletalAnim_setProgress(this->unk148, randf2(0.0f, 0.9f));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_1_LOOP);
|
||||
this->position[1] = func_80309724(this->position);
|
||||
local->unk18 = 1.0f;
|
||||
}
|
||||
|
||||
if (next_state == 5) {
|
||||
FUNC_8030E8B4(SFX_8E_GRUNTLING_DAMAGE, 1.5f, 32200, this->position, 500, 2500);
|
||||
func_80335924(this->unk148, ASSET_288_ANIM_FLIBBIT_OW, 0.1f, 0.65f);
|
||||
func_80335A8C(this->unk148, 2);
|
||||
skeletalAnim_set(this->unk148, ASSET_288_ANIM_FLIBBIT_OW, 0.1f, 0.65f);
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||
this->position[1] = func_80309724(this->position);
|
||||
local->unk18 = 1.0f;
|
||||
}
|
||||
|
||||
if (next_state == 6) {
|
||||
func_80335924(this->unk148, ASSET_112_ANIM_FLIBBIT_DIE, 0.2f, 0.4f);
|
||||
skeletalAnim_set(this->unk148, ASSET_112_ANIM_FLIBBIT_DIE, 0.2f, 0.4f);
|
||||
FUNC_8030E8B4(SFX_115_BUZZBOMB_DEATH, 1.0f, 32200, this->position, 500, 2500);
|
||||
this->marker->collidable = FALSE;
|
||||
this->unk10_1 = FALSE;
|
||||
local->unk14 = 1000.0f;
|
||||
}
|
||||
if (next_state == 7) {
|
||||
func_80335924(this->unk148, ASSET_113_ANIM_FLIBBIT_DEAD, 0.2f, 1.0f);
|
||||
func_80335A8C(this->unk148, 2);
|
||||
skeletalAnim_set(this->unk148, ASSET_113_ANIM_FLIBBIT_DEAD, 0.2f, 1.0f);
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||
FUNC_8030E8B4(SFX_2F_ORANGE_SPLAT, 0.8f, 32200, this->position, 500, 2500);
|
||||
}
|
||||
if (next_state == 8) {
|
||||
@@ -275,7 +275,7 @@ Actor *chflibbit_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
local = (ActorLocal_Flibbit *)&this->local;
|
||||
if (local->unk0){
|
||||
if(((this->state == 1)) || (this->state == 3)) {
|
||||
temp_a0 = func_803356A0(this->unk148);
|
||||
temp_a0 = skeletalAnim_getBoneTransformList(this->unk148);
|
||||
for(i = 0; i < 2; i++){
|
||||
|
||||
if (0.1 <= local->unk1C[i]) {
|
||||
@@ -290,11 +290,11 @@ Actor *chflibbit_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
sp7C[2] = 1.0f;
|
||||
sp7C[1] = (f32) (((f64) phi_f2 * 0.99) + 0.01);
|
||||
|
||||
func_8033A928(temp_a0, (i != 0)?0x2D :0x2E, sp7C);
|
||||
boneTransformList_setBoneScale(temp_a0, (i != 0)?0x2D :0x2E, sp7C);
|
||||
}
|
||||
}
|
||||
}
|
||||
func_80325888(marker, gfx, mtx, vtx);
|
||||
actor_draw(marker, gfx, mtx, vtx);
|
||||
local->unk0 = marker->unk14_21;
|
||||
|
||||
return this;
|
||||
@@ -309,8 +309,8 @@ void chflibbit_update(Actor *this){
|
||||
f32 spA0;
|
||||
f32 sp9C;
|
||||
f32 sp98;
|
||||
f32 sp94;
|
||||
f32 sp90;
|
||||
f32 skel_anim_prev_prog;
|
||||
f32 skel_anim_progress;
|
||||
f32 sp84[3];
|
||||
f32 temp_f12;
|
||||
f32 sp7C;
|
||||
@@ -367,11 +367,11 @@ void chflibbit_update(Actor *this){
|
||||
}//L803873D0
|
||||
|
||||
if(this->state == 2){
|
||||
func_8033568C(this->unk148, &sp94, &sp90);
|
||||
if(sp94 < 0.8 && 0.8 <= sp90){
|
||||
skeletalAnim_getProgressRange(this->unk148, &skel_anim_prev_prog, &skel_anim_progress);
|
||||
if(skel_anim_prev_prog < 0.8 && 0.8 <= skel_anim_progress){
|
||||
func_8030E878(SFX_8_BANJO_LANDING_04, randf2(0.8f, 0.9f), randi2(25000, 27000), this->position, 100.0f, 1500.0f);
|
||||
}//L8038747C
|
||||
if(func_80335794(this->unk148) > 0){
|
||||
if(skeletalAnim_getLoopCount(this->unk148) > 0){
|
||||
sp84[0] = (f32)local->unkE[0];
|
||||
sp84[1] = (f32)local->unkE[1];
|
||||
sp84[2] = (f32)local->unkE[2];
|
||||
@@ -384,17 +384,17 @@ void chflibbit_update(Actor *this){
|
||||
}
|
||||
}
|
||||
else{//L80387514
|
||||
if(0.2 <= sp90 && sp90 <= 0.8){
|
||||
temp_f12 = ((sp90 - 0.2) / 0.60000000000000009);
|
||||
if(0.2 <= skel_anim_progress && skel_anim_progress <= 0.8){
|
||||
temp_f12 = ((skel_anim_progress - 0.2) / 0.60000000000000009);
|
||||
this->position_x = local->unk2[0] + (local->unk8[0] - local->unk2[0])*temp_f12;
|
||||
this->position_y = local->unk2[1] + (local->unk8[1] - local->unk2[1])*temp_f12;
|
||||
this->position_z = local->unk2[2] + (local->unk8[2] - local->unk2[2])*temp_f12;
|
||||
if(local->unk1){
|
||||
if(sp90 <= 0.5){
|
||||
phi_f2 = ((sp90 - 0.2)/0.3) * 70.0;
|
||||
if(skel_anim_progress <= 0.5){
|
||||
phi_f2 = ((skel_anim_progress - 0.2)/0.3) * 70.0;
|
||||
}
|
||||
else{
|
||||
phi_f2 = (1.0 - (sp90 - 0.5)/ 0.30000000000000004) *70.0;
|
||||
phi_f2 = (1.0 - (skel_anim_progress - 0.5)/ 0.30000000000000004) *70.0;
|
||||
}
|
||||
this->position_y += phi_f2;
|
||||
}//L80387684
|
||||
@@ -446,7 +446,7 @@ void chflibbit_update(Actor *this){
|
||||
}
|
||||
|
||||
if(this->state == 7){
|
||||
if(func_80335794(this->unk148) > 0)
|
||||
if(skeletalAnim_getLoopCount(this->unk148) > 0)
|
||||
func_80386AEC(this, 8);
|
||||
}
|
||||
}
|
||||
|
@@ -35,7 +35,7 @@ Actor *func_8038FD10(ActorMarker *this, Gfx** gdl, Mtx** mtx, Vtx **vtx){
|
||||
|
||||
thisActor = marker_getActor(this);
|
||||
if((thisActor->unk1C_x != 0.0f) && (0x80 < thisActor->alpha_124_19)){
|
||||
thisActor = func_80325888(this, gdl, mtx, vtx);
|
||||
thisActor = actor_draw(this, gdl, mtx, vtx);
|
||||
}
|
||||
return thisActor;
|
||||
}
|
||||
|
@@ -5,11 +5,9 @@
|
||||
#include "prop.h"
|
||||
#include "core2/modelRender.h"
|
||||
|
||||
void func_80335A24(void *, u32, f32, f32);
|
||||
Actor *chvile_draw(ActorMarker*, Gfx **, Mtx **, Vtx **);
|
||||
void chvile_update(Actor *);
|
||||
void func_8038BB40(ActorMarker *);
|
||||
extern void func_80335A80(void *, f32);
|
||||
extern bool func_80320C94(f32[3], f32[3], f32, f32[3], s32, u32);
|
||||
|
||||
extern bool chvilegame_find_closest_piece(ActorMarker *, f32[3], f32, f32[3]);
|
||||
@@ -97,19 +95,19 @@ void BGS_func_8038BBA0(Actor *this, s32 arg1){
|
||||
if(arg1 == 101){
|
||||
local->unk24 = 0.0f;
|
||||
local->unk28[0] = local->unk28[1] = local->unk28[2] = 0.0f;
|
||||
func_80335924(this->unk148, 0xe1, 0.10000000149f, 1.0f); //0xe1 = croc_idle
|
||||
skeletalAnim_set(this->unk148, 0xe1, 0.10000000149f, 1.0f); //0xe1 = croc_idle
|
||||
}
|
||||
if(arg1 == 102){
|
||||
if(local->unk24 < 100.0f){
|
||||
local->unk24 = 100.0f;
|
||||
};
|
||||
func_80335A24(this->unk148, 0xe0, 0.1f, 0.5f); //0xe1 = croc_walk
|
||||
skeletalAnim_swap(this->unk148, 0xe0, 0.1f, 0.5f); //0xe1 = croc_walk
|
||||
}
|
||||
if(arg1 == 103){
|
||||
func_80335A24(this->unk148, 0x124, 0.1f, 0.5f); //0x124 = croc_munch
|
||||
skeletalAnim_swap(this->unk148, 0x124, 0.1f, 0.5f); //0x124 = croc_munch
|
||||
if(this->state == 4){
|
||||
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));
|
||||
timedFunc_set_1(0.31f, (GenFunction_1)func_8038BB40, reinterpret_cast(s32, this->marker));
|
||||
}
|
||||
else{
|
||||
timed_playSfx(0.31f, SFX_4C_LIP_SMACK, 0.90f, 25000);
|
||||
@@ -179,7 +177,7 @@ void func_8038BDD4(Actor *this) {
|
||||
local->unk24 = (local->unk24 < 10.0f) ? 10.0f
|
||||
: (local->unk10 < local->unk24) ? local->unk10
|
||||
: local->unk24;
|
||||
func_80335A80(this->unk148, (200.0f / local->unk24) * 0.5);
|
||||
skeletalAnim_setDuration(this->unk148, (200.0f / local->unk24) * 0.5);
|
||||
local->unk28[1] = sp50 * 200.0f;
|
||||
temp_f0_3 = func_80309724(this->position);
|
||||
if (temp_f0_3 > 125.0f) {
|
||||
@@ -231,7 +229,7 @@ Actor *chvile_draw(ActorMarker *marker, Gfx **gfx, Mtx** mtx, Vtx **vtx){
|
||||
f32 position[3];
|
||||
|
||||
|
||||
this = func_80325888(marker, gfx, mtx, vtx);
|
||||
this = actor_draw(marker, gfx, mtx, vtx);
|
||||
local = (ActorLocal_MrVile *)&this->local;
|
||||
if (
|
||||
(local->unkC == 104) &&
|
||||
@@ -401,11 +399,11 @@ void chvile_update(Actor *this) {
|
||||
} else {
|
||||
BGS_func_8038BBA0(this, 102);
|
||||
}
|
||||
} else if (func_80335794(this->unk148) >= 3) {
|
||||
} else if (skeletalAnim_getLoopCount(this->unk148) >= 3) {
|
||||
BGS_func_8038BBA0(this, 102);
|
||||
}
|
||||
}
|
||||
if ((local->unkC == 104) && (func_80335794(this->unk148) >= 3)) {
|
||||
if ((local->unkC == 104) && (skeletalAnim_getLoopCount(this->unk148) >= 3)) {
|
||||
BGS_func_8038BBA0(this, 102);
|
||||
}
|
||||
}
|
||||
@@ -416,7 +414,7 @@ void chvile_update(Actor *this) {
|
||||
if ((local->unkC == 102) && (ml_distance_vec3f(this->position, local->target_position) < 200.0f)) {
|
||||
BGS_func_8038BBA0(this, 103);
|
||||
}
|
||||
if ((local->unkC == 103) && (func_80335794(this->unk148) >= 2)) {
|
||||
if ((local->unkC == 103) && (skeletalAnim_getLoopCount(this->unk148) >= 2)) {
|
||||
func_8038C0C8(this, 1);
|
||||
}
|
||||
}
|
||||
|
@@ -54,7 +54,7 @@ Actor *chmudhut_draw(ActorMarker *this, Gfx** gdl, Mtx** mtx, Vtx **vtx){
|
||||
if(thisActor->state == 3)
|
||||
return thisActor;
|
||||
|
||||
return func_80325888(this, gdl, mtx, vtx);
|
||||
return actor_draw(this, gdl, mtx, vtx);
|
||||
}
|
||||
|
||||
void func_8038EB4C(ActorMarker *this){
|
||||
@@ -103,9 +103,9 @@ void chmudhut_update(Actor *this){
|
||||
if(tmp == 5){
|
||||
func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 28000);
|
||||
}
|
||||
__spawnQueue_add_1((GenMethod_1)func_8038EB4C, reinterpret_cast(s32, this->marker));
|
||||
__spawnQueue_add_1((GenFunction_1)func_8038EB4C, reinterpret_cast(s32, this->marker));
|
||||
if(tmp < 5){
|
||||
__spawnQueue_add_4((GenMethod_4)func_802C4218, D_80390B50[tmp],
|
||||
__spawnQueue_add_4((GenFunction_4)func_802C4218, D_80390B50[tmp],
|
||||
reinterpret_cast(s32, diffPos[0]),
|
||||
reinterpret_cast(s32, diffPos[1]),
|
||||
reinterpret_cast(s32, diffPos[2])
|
||||
|
@@ -74,7 +74,7 @@ Actor *chpinkegg_draw(ActorMarker *this, Gfx ** gdl, Mtx** mptr, Vtx **arg3){
|
||||
t7 = marker_getActor(this)->state == 3;
|
||||
func_8033A45C(1, NOT(sp18 = t7));
|
||||
func_8033A45C(2, sp18);
|
||||
return func_80325888(this, gdl, mptr, arg3);
|
||||
return actor_draw(this, gdl, mptr, arg3);
|
||||
}
|
||||
|
||||
|
||||
|
@@ -9,7 +9,7 @@ void timed_exitStaticCamera(f32);
|
||||
void timedFunc_set_2(f32, void(*)(s32, s32), s32, s32);
|
||||
|
||||
void func_8028E668(f32[3], f32, f32, f32);
|
||||
extern void __spawnQueue_add_3(GenMethod_3, s32, s32, s32);
|
||||
extern void __spawnQueue_add_3(GenFunction_3, s32, s32, s32);
|
||||
|
||||
void func_8038F6A4(Actor *);
|
||||
|
||||
@@ -29,7 +29,7 @@ ActorAnimationInfo BGS_D_80390C20[] = {
|
||||
};
|
||||
|
||||
ActorInfo D_80390C40 = {MARKER_6C_TANKTUP, ACTOR_E8_TANKTUP, ASSET_3EE_TANKTUP, 0x01, BGS_D_80390C20,
|
||||
func_8038F6A4, func_80326224, func_80325888,
|
||||
func_8038F6A4, func_80326224, actor_draw,
|
||||
0, 0x80, 0.0f, 0
|
||||
};
|
||||
|
||||
@@ -124,7 +124,7 @@ void func_8038F6A4(Actor *this)
|
||||
{
|
||||
if (local->unk0[sp44] == 0)
|
||||
{
|
||||
__spawnQueue_add_3((GenMethod_3)func_8038F470, *((s32 *) (&this->marker)), local->unk0[sp44], sp44);
|
||||
__spawnQueue_add_3((GenFunction_3)func_8038F470, *((s32 *) (&this->marker)), local->unk0[sp44], sp44);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -61,8 +61,8 @@ s32 func_8038D2F4(Actor *this, f32 *arg1, bool arg2) {
|
||||
local->unkA[1] = (s16) arg1[1];
|
||||
local->unkA[2] = (s16) arg1[2];
|
||||
local->unkA[1] = (s16) (s32) func_80309724(arg1);
|
||||
func_80335924(this->unk148, ASSET_DB_ANIM_FLIBBIT_HOP, 0.2f, (arg2) ? randf2(0.7f, 0.8f) : randf2(0.7f, 0.8f));
|
||||
func_80335A8C(this->unk148, 2);
|
||||
skeletalAnim_set(this->unk148, ASSET_DB_ANIM_FLIBBIT_HOP, 0.2f, (arg2) ? randf2(0.7f, 0.8f) : randf2(0.7f, 0.8f));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||
func_80324D54(0.2f, SFX_3F2_UNKNOWN, randf2(0.7f, 1.3f), randi2(25000, 27000), this->position, 500.0f, 2500.0f);
|
||||
return TRUE;
|
||||
}
|
||||
@@ -204,9 +204,9 @@ void func_8038D9D0(Actor *this, s32 next_state) {
|
||||
local->unk1C = 0.5f;
|
||||
}
|
||||
if (next_state == 3) {
|
||||
func_80335924(this->unk148, ASSET_FA_ANIM_FLIBBIT_IDLE, 0.2f, randf2(1.0f, 2.0f));
|
||||
func_80335A74(this->unk148, randf2(0.0f, 0.9));
|
||||
func_80335A8C(this->unk148, 1);
|
||||
skeletalAnim_set(this->unk148, ASSET_FA_ANIM_FLIBBIT_IDLE, 0.2f, randf2(1.0f, 2.0f));
|
||||
skeletalAnim_setProgress(this->unk148, randf2(0.0f, 0.9));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_1_LOOP);
|
||||
actor_collisionOn(this);
|
||||
this->position[0] = (f32) local->unk10[0];
|
||||
this->position[1] = (f32) local->unk10[1];
|
||||
@@ -226,27 +226,27 @@ void func_8038D9D0(Actor *this, s32 next_state) {
|
||||
}
|
||||
}
|
||||
if (next_state == 6) {
|
||||
func_80335924(this->unk148, ASSET_FB_ANIM_FLIBBIT_TURN, 0.2f, 1.0f);
|
||||
func_80335A74(this->unk148, randf2(0.0f, 1.0f));
|
||||
func_80335A8C(this->unk148, 1);
|
||||
skeletalAnim_set(this->unk148, ASSET_FB_ANIM_FLIBBIT_TURN, 0.2f, 1.0f);
|
||||
skeletalAnim_setProgress(this->unk148, randf2(0.0f, 1.0f));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_1_LOOP);
|
||||
local->unk28 = randf2(1.0f, 3.0f);
|
||||
}
|
||||
if (next_state == 7) {
|
||||
func_80335924(this->unk148, ASSET_FA_ANIM_FLIBBIT_IDLE, 0.2f, randf2(1.0f, 2.0f));
|
||||
func_80335A74(this->unk148, randf2(0.0f, 0.9));
|
||||
func_80335A8C(this->unk148, 1);
|
||||
skeletalAnim_set(this->unk148, ASSET_FA_ANIM_FLIBBIT_IDLE, 0.2f, randf2(1.0f, 2.0f));
|
||||
skeletalAnim_setProgress(this->unk148, randf2(0.0f, 0.9));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_1_LOOP);
|
||||
this->position[1] = func_80309724(this->position);
|
||||
local->unk1C = 1.0f;
|
||||
}
|
||||
if (next_state == 8) {
|
||||
FUNC_8030E8B4(SFX_8E_GRUNTLING_DAMAGE, 1.5f, 32200, this->position, 500, 2500);
|
||||
func_80335924(this->unk148, ASSET_288_ANIM_FLIBBIT_OW, 0.1f, 0.65f);
|
||||
func_80335A8C(this->unk148, 2);
|
||||
skeletalAnim_set(this->unk148, ASSET_288_ANIM_FLIBBIT_OW, 0.1f, 0.65f);
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||
this->position[1] = func_80309724(this->position);
|
||||
local->unk1C = 1.0f;
|
||||
}
|
||||
if (next_state == 9) {
|
||||
func_80335924(this->unk148, ASSET_112_ANIM_FLIBBIT_DIE, 0.2f, 0.4f);
|
||||
skeletalAnim_set(this->unk148, ASSET_112_ANIM_FLIBBIT_DIE, 0.2f, 0.4f);
|
||||
FUNC_8030E8B4(SFX_115_BUZZBOMB_DEATH, 1.0f, 32200, this->position, 500, 2500);
|
||||
this->marker->collidable = FALSE;
|
||||
this->unk10_1 = FALSE;
|
||||
@@ -254,8 +254,8 @@ void func_8038D9D0(Actor *this, s32 next_state) {
|
||||
local->unk18 = 1000.0f;
|
||||
}
|
||||
if (next_state == 0xA) {
|
||||
func_80335924(this->unk148, ASSET_113_ANIM_FLIBBIT_DEAD, 0.2f, 1.0f);
|
||||
func_80335A8C(this->unk148, 2);
|
||||
skeletalAnim_set(this->unk148, ASSET_113_ANIM_FLIBBIT_DEAD, 0.2f, 1.0f);
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||
FUNC_8030E8B4(SFX_2F_ORANGE_SPLAT, 0.8f, 32200, this->position, 500, 2500);
|
||||
}
|
||||
if (next_state == 0xB) {
|
||||
@@ -305,7 +305,7 @@ Actor *func_8038DE5C(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
||||
return this;
|
||||
}
|
||||
if (local->unk0 && ((this->state == 3) || (this->state == 6))) {
|
||||
temp_a0_2 = func_803356A0(this->unk148);
|
||||
temp_a0_2 = skeletalAnim_getBoneTransformList(this->unk148);
|
||||
for(var_s0 = 0; var_s0 < 2; var_s0++){
|
||||
if (0.1 <= local->unk20[var_s0]) {
|
||||
var_f2 = (f32) ((local->unk20[var_s0] - 0.1) / 0.1);
|
||||
@@ -317,10 +317,10 @@ Actor *func_8038DE5C(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
||||
sp7C[0] = 1.0f;
|
||||
sp7C[1] = var_f2 * 0.99 + 0.01;
|
||||
sp7C[2] = 1.0f;
|
||||
func_8033A928(temp_a0_2, (var_s0 != 0) ? 0x2D : 0x2E, sp7C);
|
||||
boneTransformList_setBoneScale(temp_a0_2, (var_s0 != 0) ? 0x2D : 0x2E, sp7C);
|
||||
};
|
||||
}
|
||||
func_80325888(marker, gfx, mtx, vtx);
|
||||
actor_draw(marker, gfx, mtx, vtx);
|
||||
local->unk0 = marker->unk14_21;
|
||||
return this;
|
||||
}
|
||||
@@ -415,11 +415,11 @@ void BGS_func_8038E034(Actor *this) {
|
||||
}
|
||||
|
||||
if (this->state == 5) {
|
||||
func_8033568C(this->unk148, &sp8C, &sp88);
|
||||
skeletalAnim_getProgressRange(this->unk148, &sp8C, &sp88);
|
||||
if (sp8C < 0.8 && 0.8 <= sp88) {
|
||||
func_8030E878(SFX_8_BANJO_LANDING_04, randf2(0.8f, 0.9f), randi2(0x61A8, 0x6978), this->position, 100.0f, 1500.0f);
|
||||
}
|
||||
if (func_80335794(this->unk148) > 0) {
|
||||
if (skeletalAnim_getLoopCount(this->unk148) > 0) {
|
||||
sp7C[0] = (f32) local->unk10[0];
|
||||
sp7C[1] = (f32) local->unk10[1];
|
||||
sp7C[2] = (f32) local->unk10[2];
|
||||
@@ -489,7 +489,7 @@ void BGS_func_8038E034(Actor *this) {
|
||||
}
|
||||
|
||||
if(this->state == 10){
|
||||
if(func_80335794(this->unk148) > 0){
|
||||
if(skeletalAnim_getLoopCount(this->unk148) > 0){
|
||||
func_8038D9D0(this, 11);
|
||||
}
|
||||
}
|
||||
|
@@ -3,8 +3,8 @@
|
||||
#include "variables.h"
|
||||
|
||||
#include "prop.h"
|
||||
extern void func_803253A0(Actor *);
|
||||
extern void func_80325794(ActorMarker *);
|
||||
extern void actor_predrawMethod(Actor *);
|
||||
extern void actor_postdrawMethod(ActorMarker *);
|
||||
extern f32 randf (void);
|
||||
extern BKModelBin *chvilegame_get_grumblie_model(ActorMarker *marker);
|
||||
|
||||
@@ -63,13 +63,13 @@ void chyumblie_set_state(Actor* this, enum chyumblie_state_e next_state){
|
||||
this->yaw = randf2(0.0f, 360.0f);
|
||||
s0->unk4 = func_8038B160(this);
|
||||
chvilegame_new_piece(s0->game_marker, this->marker, this->position, s0->unk4);
|
||||
func_80335924(this->unk148, (s0->unk4)? ASSET_128_ANIM_GRUMBLIE_APPEAR : ASSET_125_ANIM_YUMBLIE_APPEAR, 0.0f, 1.5f);
|
||||
func_80335A8C(this->unk148, 2);
|
||||
skeletalAnim_set(this->unk148, (s0->unk4)? ASSET_128_ANIM_GRUMBLIE_APPEAR : ASSET_125_ANIM_YUMBLIE_APPEAR, 0.0f, 1.5f);
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||
}
|
||||
if(next_state == 3){
|
||||
s0->unk8 = randf2(5.0f, 10.0f);
|
||||
func_80335924(this->unk148, (s0->unk4)? ASSET_12A_ANIM_GRUMBLIE_IDLE : ASSET_127_ANIM_YUMBLIE_IDLE, 0.1f, randf2(0.5f, 1.0f));
|
||||
func_80335A8C(this->unk148, 1);
|
||||
skeletalAnim_set(this->unk148, (s0->unk4)? ASSET_12A_ANIM_GRUMBLIE_IDLE : ASSET_127_ANIM_YUMBLIE_IDLE, 0.1f, randf2(0.5f, 1.0f));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_1_LOOP);
|
||||
if(s0->unk4){
|
||||
func_8030E6A4(SFX_C4_TWINKLY_MUNCHER_GRR,randf2(1.0f, 1.2), 30000);
|
||||
}else{
|
||||
@@ -79,8 +79,8 @@ void chyumblie_set_state(Actor* this, enum chyumblie_state_e next_state){
|
||||
|
||||
if(next_state == 4){
|
||||
chvilegame_remove_piece(s0->game_marker, this->marker);
|
||||
func_80335924(this->unk148, (s0->unk4)? ASSET_129_ANIM_GRUMBLIE_HIDE : ASSET_126_ANIM_YUMBLIE_HIDE, 0.1f, 0.5f);
|
||||
func_80335A8C(this->unk148, 2);
|
||||
skeletalAnim_set(this->unk148, (s0->unk4)? ASSET_129_ANIM_GRUMBLIE_HIDE : ASSET_126_ANIM_YUMBLIE_HIDE, 0.1f, 0.5f);
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||
}
|
||||
if(next_state == 5){
|
||||
s0->unk8 = randf2(10.0f, 20.0f);
|
||||
@@ -110,8 +110,8 @@ Actor *chyumblie_draw(ActorMarker *this, Gfx **gfx, Mtx** mtx, Vtx **vtx){
|
||||
return thisActor;
|
||||
}
|
||||
|
||||
modelRender_preDraw((GenMethod_1) func_803253A0, (s32)thisActor);
|
||||
modelRender_postDraw((GenMethod_1) func_80325794, (s32)this);
|
||||
modelRender_preDraw((GenFunction_1) actor_predrawMethod, (s32)thisActor);
|
||||
modelRender_postDraw((GenFunction_1) actor_postdrawMethod, (s32)this);
|
||||
sp44[0] = thisActor->position_x;
|
||||
sp44[1] = thisActor->position_y + sp40->unk0*75.0f;
|
||||
sp44[2] = thisActor->position_z;
|
||||
@@ -160,7 +160,7 @@ void chyumblie_update(Actor *this){
|
||||
if(s0->game_marker == NULL){
|
||||
s0->game_marker = actorArray_findClosestActorFromActorId(this->position, ACTOR_138_VILE_GAME_CTRL, -1, &sp48)->marker;
|
||||
}
|
||||
sp50 = func_80335684(this->unk148);
|
||||
sp50 = skeletalAnim_getProgress(this->unk148);
|
||||
if(this->state == YUMBLIE_STATE_1_UNDER_GROUND){
|
||||
if(ml_timer_update(&s0->unk8, sp4C)){
|
||||
if(mapSpecificFlags_get(6) && (12 > chvilegame_get_piece_count(s0->game_marker))){
|
||||
@@ -187,7 +187,7 @@ void chyumblie_update(Actor *this){
|
||||
func_8030E878(SFX_C5_TWINKLY_POP, randf2(1.0f, 1.2f), 30000, this->position, 500.0f, 3000.0f);
|
||||
}
|
||||
|
||||
if( 0 < func_80335794(this->unk148)){
|
||||
if( 0 < skeletalAnim_getLoopCount(this->unk148)){
|
||||
s0->unk0 = 1.0f;
|
||||
chyumblie_set_state(this,YUMBLIE_STATE_3_ABOVE_GROUND);
|
||||
}
|
||||
|
Reference in New Issue
Block a user