summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-09-16 18:24:58 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2017-09-16 18:24:58 -0400
commitedd5c81a8ee249625dbd015c80e0e0442776bde9 (patch)
tree9a0d06b043f6d1549af5ff3433fe1acf9e964627
parent589c34e30aa30236b13b7f6621808aca581675c3 (diff)
sub_8092AF8
-rwxr-xr-xasm/field_map_obj.s34
-rwxr-xr-xsrc/field_map_obj.c21
2 files changed, 21 insertions, 34 deletions
diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s
index 1c4b5a145..9a8294ab2 100755
--- a/asm/field_map_obj.s
+++ b/asm/field_map_obj.s
@@ -5,40 +5,6 @@
.text
- thumb_func_start sub_8092AF8
-sub_8092AF8: @ 8092AF8
- push {lr}
- lsls r1, 16
- lsrs r1, 16
- lsls r3, 16
- lsrs r3, 16
- lsls r0, 16
- asrs r0, 16
- lsls r2, 16
- asrs r2, 16
- cmp r0, r2
- ble _08092B12
- movs r0, 0x3
- b _08092B28
-_08092B12:
- cmp r0, r2
- bge _08092B1A
- movs r0, 0x4
- b _08092B28
-_08092B1A:
- lsls r1, 16
- lsls r0, r3, 16
- cmp r1, r0
- bgt _08092B26
- movs r0, 0x1
- b _08092B28
-_08092B26:
- movs r0, 0x2
-_08092B28:
- pop {r1}
- bx r1
- thumb_func_end sub_8092AF8
-
thumb_func_start npc_set_running_behaviour_etc
npc_set_running_behaviour_etc: @ 8092B2C
push {r4,lr}
diff --git a/src/field_map_obj.c b/src/field_map_obj.c
index f47639a9e..2987c09ee 100755
--- a/src/field_map_obj.c
+++ b/src/field_map_obj.c
@@ -3539,6 +3539,8 @@ dirn2anim(sub_8092A1C, gUnknown_0850DB38)
dirn2anim(sub_8092A2C, gUnknown_0850DB41)
dirn2anim(get_run_image_anim_num, gUnknown_0850DB4A)
+// file boundary?
+
struct UnkStruct_085094AC {
const union AnimCmd *const *anims;
u8 animPos[4];
@@ -3605,6 +3607,25 @@ void obj_npc_animation_step(struct MapObject *mapObject, struct Sprite *sprite,
}
}
+// file boundary?
+
+u8 sub_8092AF8(s16 x1, s16 y1, s16 x2, s16 y2)
+{
+ if (x1 > x2)
+ {
+ return DIR_WEST;
+ }
+ if (x1 < x2)
+ {
+ return DIR_EAST;
+ }
+ if (y1 > y2)
+ {
+ return DIR_NORTH;
+ }
+ return DIR_SOUTH;
+}
+
asm(".section .text.get_face_direction_anim_id");
void FieldObjectClearAnimIfSpecialAnimActive(struct MapObject *);