diff --git a/src/game/game_0b63b0.c b/src/game/game_0b63b0.c index cc97d89db..f6fa3e518 100644 --- a/src/game/game_0b63b0.c +++ b/src/game/game_0b63b0.c @@ -2202,7 +2202,7 @@ glabel func0f0b7c60 /* f0b7f04: 00000000 */ nop /* f0b7f08: 8fb9003c */ lw $t9,0x3c($sp) /* f0b7f0c: 8e040020 */ lw $a0,0x20($s0) -/* f0b7f10: 0c007764 */ jal func0001dd90 +/* f0b7f10: 0c007764 */ jal modelCopyAnimData /* f0b7f14: 8f250020 */ lw $a1,0x20($t9) /* f0b7f18: 8fa4003c */ lw $a0,0x3c($sp) /* f0b7f1c: 0fc0ba68 */ jal func0f02e9a0 diff --git a/src/include/lib/lib_1a500.h b/src/include/lib/lib_1a500.h index 9a251ae7d..1ed04be12 100644 --- a/src/include/lib/lib_1a500.h +++ b/src/include/lib/lib_1a500.h @@ -63,7 +63,7 @@ void func0001d62c(struct model *model, s16 animnum, s32 flip, f32 fstartframe, f bool modelIsAnimMerging(struct model *model); void func0001dbfc(struct model *model, s16 animnum, u32 arg2, f32 arg3, f32 arg4, f32 arg5, bool merge); void modelSetAnimation(struct model *model, s16 animnum, s32 flip, f32 fstartframe, f32 arg4, f32 arg5); -u32 func0001dd90(void); +void modelCopyAnimData(struct model *src, struct model *dst); void modelSetAnimLooping(struct model *model, f32 loopframe, f32 loopmerge); void modelSetAnimEndFrame(struct model *model, f32 endframe); void modelSetAnimFlipFunction(struct model *model, void *callback); diff --git a/src/lib/lib_1a500.c b/src/lib/lib_1a500.c index fe8a7e71c..96cd07cfe 100644 --- a/src/lib/lib_1a500.c +++ b/src/lib/lib_1a500.c @@ -3938,34 +3938,12 @@ void modelSetAnimation(struct model *model, s16 animnum, s32 flip, f32 startfram } } -GLOBAL_ASM( -glabel func0001dd90 -/* 1dd90: 8c820020 */ lw $v0,0x20($a0) -/* 1dd94: 10400013 */ beqz $v0,.L0001dde4 -/* 1dd98: 00000000 */ nop -/* 1dd9c: 8ca30020 */ lw $v1,0x20($a1) -/* 1dda0: 0040c825 */ or $t9,$v0,$zero -/* 1dda4: 24580084 */ addiu $t8,$v0,0x84 -/* 1dda8: 1060000e */ beqz $v1,.L0001dde4 -/* 1ddac: 00604025 */ or $t0,$v1,$zero -.L0001ddb0: -/* 1ddb0: 8f210000 */ lw $at,0x0($t9) -/* 1ddb4: 2739000c */ addiu $t9,$t9,0xc -/* 1ddb8: 2508000c */ addiu $t0,$t0,0xc -/* 1ddbc: ad01fff4 */ sw $at,-0xc($t0) -/* 1ddc0: 8f21fff8 */ lw $at,-0x8($t9) -/* 1ddc4: ad01fff8 */ sw $at,-0x8($t0) -/* 1ddc8: 8f21fffc */ lw $at,-0x4($t9) -/* 1ddcc: 1738fff8 */ bne $t9,$t8,.L0001ddb0 -/* 1ddd0: ad01fffc */ sw $at,-0x4($t0) -/* 1ddd4: 8f210000 */ lw $at,0x0($t9) -/* 1ddd8: ad010000 */ sw $at,0x0($t0) -/* 1dddc: 8f380004 */ lw $t8,0x4($t9) -/* 1dde0: ad180004 */ sw $t8,0x4($t0) -.L0001dde4: -/* 1dde4: 03e00008 */ jr $ra -/* 1dde8: 00000000 */ nop -); +void modelCopyAnimData(struct model *src, struct model *dst) +{ + if (src->anim && dst->anim) { + *dst->anim = *src->anim; + } +} void modelSetAnimLooping(struct model *model, f32 loopframe, f32 loopmerge) {