Yet another chunk of highly similar functions
This commit is contained in:
parent
6439551e1a
commit
501baffc48
2 changed files with 25 additions and 305 deletions
|
@ -5,311 +5,6 @@
|
|||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_8093DC4
|
||||
sub_8093DC4: @ 8093DC4
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
movs r2, 0x7
|
||||
movs r3, 0
|
||||
bl do_go_anim
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl sub_8093DE4
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093DC4
|
||||
|
||||
thumb_func_start sub_8093DE4
|
||||
@ bool8 sub_8093DE4(struct npc_state *fieldObject, struct obj *object)
|
||||
sub_8093DE4: @ 8093DE4
|
||||
push {r4,lr}
|
||||
adds r4, r1, 0
|
||||
bl npc_obj_ministep_stop_on_arrival
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08093DF6
|
||||
movs r0, 0
|
||||
b _08093DFC
|
||||
_08093DF6:
|
||||
movs r0, 0x2
|
||||
strh r0, [r4, 0x32]
|
||||
movs r0, 0x1
|
||||
_08093DFC:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093DE4
|
||||
|
||||
thumb_func_start sub_8093E04
|
||||
sub_8093E04: @ 8093E04
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
movs r2, 0x8
|
||||
movs r3, 0
|
||||
bl do_go_anim
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl sub_8093E24
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093E04
|
||||
|
||||
thumb_func_start sub_8093E24
|
||||
sub_8093E24: @ 8093E24
|
||||
push {r4,lr}
|
||||
adds r4, r1, 0
|
||||
bl npc_obj_ministep_stop_on_arrival
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08093E36
|
||||
movs r0, 0
|
||||
b _08093E3C
|
||||
_08093E36:
|
||||
movs r0, 0x2
|
||||
strh r0, [r4, 0x32]
|
||||
movs r0, 0x1
|
||||
_08093E3C:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093E24
|
||||
|
||||
thumb_func_start sub_8093E44
|
||||
sub_8093E44: @ 8093E44
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
movs r2, 0x5
|
||||
movs r3, 0
|
||||
bl do_go_anim
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl sub_8093E64
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093E44
|
||||
|
||||
thumb_func_start sub_8093E64
|
||||
sub_8093E64: @ 8093E64
|
||||
push {r4,lr}
|
||||
adds r4, r1, 0
|
||||
bl npc_obj_ministep_stop_on_arrival
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08093E76
|
||||
movs r0, 0
|
||||
b _08093E7C
|
||||
_08093E76:
|
||||
movs r0, 0x2
|
||||
strh r0, [r4, 0x32]
|
||||
movs r0, 0x1
|
||||
_08093E7C:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093E64
|
||||
|
||||
thumb_func_start sub_8093E84
|
||||
sub_8093E84: @ 8093E84
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
movs r2, 0x6
|
||||
movs r3, 0
|
||||
bl do_go_anim
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl sub_8093EA4
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093E84
|
||||
|
||||
thumb_func_start sub_8093EA4
|
||||
sub_8093EA4: @ 8093EA4
|
||||
push {r4,lr}
|
||||
adds r4, r1, 0
|
||||
bl npc_obj_ministep_stop_on_arrival
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08093EB6
|
||||
movs r0, 0
|
||||
b _08093EBC
|
||||
_08093EB6:
|
||||
movs r0, 0x2
|
||||
strh r0, [r4, 0x32]
|
||||
movs r0, 0x1
|
||||
_08093EBC:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093EA4
|
||||
|
||||
thumb_func_start sub_8093EC4
|
||||
sub_8093EC4: @ 8093EC4
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
movs r2, 0x1
|
||||
movs r3, 0
|
||||
bl do_go_anim
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl sub_8093EE4
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093EC4
|
||||
|
||||
thumb_func_start sub_8093EE4
|
||||
sub_8093EE4: @ 8093EE4
|
||||
push {r4,lr}
|
||||
adds r4, r1, 0
|
||||
bl npc_obj_ministep_stop_on_arrival
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08093EF6
|
||||
movs r0, 0
|
||||
b _08093EFC
|
||||
_08093EF6:
|
||||
movs r0, 0x2
|
||||
strh r0, [r4, 0x32]
|
||||
movs r0, 0x1
|
||||
_08093EFC:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093EE4
|
||||
|
||||
thumb_func_start sub_8093F04
|
||||
sub_8093F04: @ 8093F04
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
movs r2, 0x2
|
||||
movs r3, 0
|
||||
bl do_go_anim
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl sub_8093F24
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093F04
|
||||
|
||||
thumb_func_start sub_8093F24
|
||||
sub_8093F24: @ 8093F24
|
||||
push {r4,lr}
|
||||
adds r4, r1, 0
|
||||
bl npc_obj_ministep_stop_on_arrival
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08093F36
|
||||
movs r0, 0
|
||||
b _08093F3C
|
||||
_08093F36:
|
||||
movs r0, 0x2
|
||||
strh r0, [r4, 0x32]
|
||||
movs r0, 0x1
|
||||
_08093F3C:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093F24
|
||||
|
||||
thumb_func_start sub_8093F44
|
||||
sub_8093F44: @ 8093F44
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
movs r2, 0x3
|
||||
movs r3, 0
|
||||
bl do_go_anim
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl sub_8093F64
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093F44
|
||||
|
||||
thumb_func_start sub_8093F64
|
||||
sub_8093F64: @ 8093F64
|
||||
push {r4,lr}
|
||||
adds r4, r1, 0
|
||||
bl npc_obj_ministep_stop_on_arrival
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08093F76
|
||||
movs r0, 0
|
||||
b _08093F7C
|
||||
_08093F76:
|
||||
movs r0, 0x2
|
||||
strh r0, [r4, 0x32]
|
||||
movs r0, 0x1
|
||||
_08093F7C:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093F64
|
||||
|
||||
thumb_func_start sub_8093F84
|
||||
sub_8093F84: @ 8093F84
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
movs r2, 0x4
|
||||
movs r3, 0
|
||||
bl do_go_anim
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl sub_8093FA4
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093F84
|
||||
|
||||
thumb_func_start sub_8093FA4
|
||||
sub_8093FA4: @ 8093FA4
|
||||
push {r4,lr}
|
||||
adds r4, r1, 0
|
||||
bl npc_obj_ministep_stop_on_arrival
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08093FB6
|
||||
movs r0, 0
|
||||
b _08093FBC
|
||||
_08093FB6:
|
||||
movs r0, 0x2
|
||||
strh r0, [r4, 0x32]
|
||||
movs r0, 0x1
|
||||
_08093FBC:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8093FA4
|
||||
|
||||
thumb_func_start sub_8093FC4
|
||||
sub_8093FC4: @ 8093FC4
|
||||
push {r4-r7,lr}
|
||||
|
|
|
@ -4246,6 +4246,23 @@ static bool8 name##_2(struct MapObject *mapObject, struct Sprite *sprite)\
|
|||
return FALSE;\
|
||||
}
|
||||
|
||||
#define npc_obj_ministep_stop_on_arrival_macro(name, dirn, speed) \
|
||||
static bool8 name##_2(struct MapObject *, struct Sprite *);\
|
||||
bool8 name(struct MapObject *mapObject, struct Sprite *sprite)\
|
||||
{\
|
||||
do_go_anim(mapObject, sprite, dirn, speed);\
|
||||
return name##_2(mapObject, sprite);\
|
||||
}\
|
||||
static bool8 name##_2(struct MapObject *mapObject, struct Sprite *sprite)\
|
||||
{\
|
||||
if (npc_obj_ministep_stop_on_arrival(mapObject, sprite))\
|
||||
{\
|
||||
sprite->data2 = 2;\
|
||||
return TRUE;\
|
||||
}\
|
||||
return FALSE;\
|
||||
}
|
||||
|
||||
an_walk_any_2_macro(sub_8093BC4, 7)
|
||||
an_walk_any_2_macro(sub_8093C04, 8)
|
||||
an_walk_any_2_macro(sub_8093C44, 5)
|
||||
|
@ -4254,4 +4271,12 @@ an_walk_any_2_macro(sub_8093CC4, 1)
|
|||
an_walk_any_2_macro(sub_8093D04, 2)
|
||||
an_walk_any_2_macro(sub_8093D44, 3)
|
||||
an_walk_any_2_macro(sub_8093D84, 4)
|
||||
npc_obj_ministep_stop_on_arrival_macro(sub_8093DC4, 7, 0)
|
||||
npc_obj_ministep_stop_on_arrival_macro(sub_8093E04, 8, 0)
|
||||
npc_obj_ministep_stop_on_arrival_macro(sub_8093E44, 5, 0)
|
||||
npc_obj_ministep_stop_on_arrival_macro(sub_8093E84, 6, 0)
|
||||
npc_obj_ministep_stop_on_arrival_macro(sub_8093EC4, 1, 0)
|
||||
npc_obj_ministep_stop_on_arrival_macro(sub_8093F04, 2, 0)
|
||||
npc_obj_ministep_stop_on_arrival_macro(sub_8093F44, 3, 0)
|
||||
npc_obj_ministep_stop_on_arrival_macro(sub_8093F84, 4, 0)
|
||||
|
||||
|
|
Loading…
Reference in a new issue