summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-09-16 23:20:44 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2017-09-16 23:20:44 -0400
commit8e03a0199c3226ae5426319c0e820e3337840fb8 (patch)
treeaad4bc13b676f744fb4a750160758ee6b3649419
parent4ef7127561e4f2f60e2cfa6351b97143f08f6acb (diff)
an_look_any simple
-rwxr-xr-xasm/field_map_obj.s74
-rwxr-xr-xsrc/field_map_obj.c36
2 files changed, 36 insertions, 74 deletions
diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s
index 2d2c39ced..61d3ba152 100755
--- a/asm/field_map_obj.s
+++ b/asm/field_map_obj.s
@@ -5,80 +5,6 @@
.text
- thumb_func_start an_look_any
-@ void an_look_any(struct npc_state *fieldObject, struct obj *object, u8 direction)
-an_look_any: @ 809390C
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r1, r2, 24
- lsrs r1, 24
- bl FieldObjectSetDirection
- adds r0, r4, 0
- bl npc_coords_shift_still
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
- bl get_go_image_anim_num
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r4, 0
- adds r1, r5, 0
- bl obj_npc_animation_step
- adds r2, r5, 0
- adds r2, 0x2C
- ldrb r0, [r2]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2]
- movs r0, 0x1
- strh r0, [r5, 0x32]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end an_look_any
-
- thumb_func_start sub_8093950
-sub_8093950: @ 8093950
- push {lr}
- movs r2, 0x1
- bl an_look_any
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end sub_8093950
-
- thumb_func_start sub_8093960
-sub_8093960: @ 8093960
- push {lr}
- movs r2, 0x2
- bl an_look_any
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end sub_8093960
-
- thumb_func_start sub_8093970
-sub_8093970: @ 8093970
- push {lr}
- movs r2, 0x3
- bl an_look_any
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end sub_8093970
-
- thumb_func_start sub_8093980
-sub_8093980: @ 8093980
- push {lr}
- movs r2, 0x4
- bl an_look_any
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end sub_8093980
-
thumb_func_start npc_apply_direction
@ void npc_apply_direction(struct npc_state *fieldObject, struct obj *object, u8 direction, u8 speed)
npc_apply_direction: @ 8093990
diff --git a/src/field_map_obj.c b/src/field_map_obj.c
index 0629fd983..80f628bb5 100755
--- a/src/field_map_obj.c
+++ b/src/field_map_obj.c
@@ -1769,6 +1769,7 @@ u16 npc_paltag_by_palslot(u8 palSlot)
}
// Map Object Step Callbacks
+// file boundary?
null_object_step(NoMovement1, FALSE)
@@ -4118,3 +4119,38 @@ void FieldObjectSetRegularAnim(struct MapObject *mapObject, struct Sprite *sprit
mapObject->mapobj_unk_1C = animId;
sprite->data2 = 0;
}
+
+// file boundary?
+
+void an_look_any(struct MapObject *mapObject, struct Sprite *sprite, u8 direction)
+{
+ FieldObjectSetDirection(mapObject, direction);
+ npc_coords_shift_still(mapObject);
+ obj_npc_animation_step(mapObject, sprite, get_go_image_anim_num(mapObject->mapobj_unk_18));
+ sprite->animPaused = TRUE;
+ sprite->data2 = 1;
+}
+
+bool8 sub_8093950(struct MapObject *mapObject, struct Sprite *sprite)
+{
+ an_look_any(mapObject, sprite, DIR_SOUTH);
+ return TRUE;
+}
+
+bool8 sub_8093960(struct MapObject *mapObject, struct Sprite *sprite)
+{
+ an_look_any(mapObject, sprite, DIR_NORTH);
+ return TRUE;
+}
+
+bool8 sub_8093970(struct MapObject *mapObject, struct Sprite *sprite)
+{
+ an_look_any(mapObject, sprite, DIR_WEST);
+ return TRUE;
+}
+
+bool8 sub_8093980(struct MapObject *mapObject, struct Sprite *sprite)
+{
+ an_look_any(mapObject, sprite, DIR_EAST);
+ return TRUE;
+}