a couple more kmrs

This commit is contained in:
Ethan Roseman 2020-11-02 16:04:59 -05:00
parent 285396f142
commit 087b30ab35
4 changed files with 26 additions and 30 deletions

View File

@ -1,28 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80240EC0_8DAFC0
/* 8DAFC0 80240EC0 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 8DAFC4 80240EC4 AFB00010 */ sw $s0, 0x10($sp)
/* 8DAFC8 80240EC8 0080802D */ daddu $s0, $a0, $zero
/* 8DAFCC 80240ECC AFBF0014 */ sw $ra, 0x14($sp)
/* 8DAFD0 80240ED0 0C04417A */ jal get_entity_by_index
/* 8DAFD4 80240ED4 8E0400AC */ lw $a0, 0xac($s0)
/* 8DAFD8 80240ED8 0040182D */ daddu $v1, $v0, $zero
/* 8DAFDC 80240EDC C6000084 */ lwc1 $f0, 0x84($s0)
/* 8DAFE0 80240EE0 46800020 */ cvt.s.w $f0, $f0
/* 8DAFE4 80240EE4 E4600048 */ swc1 $f0, 0x48($v1)
/* 8DAFE8 80240EE8 C6000088 */ lwc1 $f0, 0x88($s0)
/* 8DAFEC 80240EEC 46800020 */ cvt.s.w $f0, $f0
/* 8DAFF0 80240EF0 E460004C */ swc1 $f0, 0x4c($v1)
/* 8DAFF4 80240EF4 C600008C */ lwc1 $f0, 0x8c($s0)
/* 8DAFF8 80240EF8 46800020 */ cvt.s.w $f0, $f0
/* 8DAFFC 80240EFC E4600050 */ swc1 $f0, 0x50($v1)
/* 8DB000 80240F00 8FBF0014 */ lw $ra, 0x14($sp)
/* 8DB004 80240F04 8FB00010 */ lw $s0, 0x10($sp)
/* 8DB008 80240F08 24020002 */ addiu $v0, $zero, 2
/* 8DB00C 80240F0C 03E00008 */ jr $ra
/* 8DB010 80240F10 27BD0018 */ addiu $sp, $sp, 0x18
/* 8DB014 80240F14 00000000 */ nop
/* 8DB018 80240F18 00000000 */ nop
/* 8DB01C 80240F1C 00000000 */ nop

View File

@ -271,7 +271,8 @@ typedef struct Entity {
/* 0x07 */ char unk_08[4];
/* 0x0B */ u8 alpha; /* reported by rain */
/* 0x0C */ s16 aabb[3];
/* 0x12 */ char unk_12[4];
/* 0x12 */ char unk_12[2];
/* 0x14 */ s16 unk_14;
/* 0x16 */ s16 shadowIndex;
/* 0x18 */ char unk_18[16];
/* 0x28 */ Bytecode* boundScript;

View File

@ -8,7 +8,22 @@ INCLUDE_ASM(s32, "world/area_kmr/kmr_10/8D84D0", func_80240000_8D84D0);
#include "world/common/CheckItemFlags40.inc.c"
#ifdef NON_MATCHING
ApiStatus func_802402BC_8D878C(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Entity *entity = get_entity_by_index(get_variable(script, *args++));
s32 something = 0x1E4;
if (entity == NULL) {
return ApiStatus_BLOCK;
}
play_model_animation(entity->unk_14, 0x1E4);
return ApiStatus_DONE2;
}
#else
INCLUDE_ASM(s32, "world/area_kmr/kmr_10/8D84D0", func_802402BC_8D878C);
#endif
ApiStatus func_80240304_8D87D4(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;

View File

@ -1,3 +1,11 @@
#include "kmr_11.h"
INCLUDE_ASM(s32, "world/area_kmr/kmr_11/8DAFC0", func_80240EC0_8DAFC0);
ApiStatus func_80240EC0_8DAFC0(ScriptInstance* script, s32 isInitialCall) {
Entity* entity = get_entity_by_index(script->varTable[10]);
entity->position.x = script->varTable[0];
entity->position.y = script->varTable[1];
entity->position.z = script->varTable[2];
return ApiStatus_DONE2;
}