Decompile chrCalculatePushPos

This commit is contained in:
Ryan Dwyer 2021-04-26 22:25:39 +10:00
parent 39658b3354
commit 11a5a5c935
4 changed files with 290 additions and 1509 deletions

View File

@ -1064,7 +1064,7 @@ glabel bwalkCalculateNewPositionWithPush
/* f0c4574: c4460010 */ lwc1 $f6,0x10($v0)
/* f0c4578: 46005102 */ mul.s $f4,$f10,$f0
/* f0c457c: 46062200 */ add.s $f8,$f4,$f6
/* f0c4580: 0fc079fd */ jal func0f01e7f4
/* f0c4580: 0fc079fd */ jal chrCalculatePushPos
/* f0c4584: e7a80070 */ swc1 $f8,0x70($sp)
/* f0c4588: 8fa400a0 */ lw $a0,0xa0($sp)
/* f0c458c: c7aa0068 */ lwc1 $f10,0x68($sp)
@ -1407,7 +1407,7 @@ glabel bwalkCalculateNewPositionWithPush
/* f0c4574: c4460010 */ lwc1 $f6,0x10($v0)
/* f0c4578: 46005102 */ mul.s $f4,$f10,$f0
/* f0c457c: 46062200 */ add.s $f8,$f4,$f6
/* f0c4580: 0fc079fd */ jal func0f01e7f4
/* f0c4580: 0fc079fd */ jal chrCalculatePushPos
/* f0c4584: e7a80070 */ swc1 $f8,0x70($sp)
/* f0c4588: 8fa400a0 */ lw $a0,0xa0($sp)
/* f0c458c: c7aa0068 */ lwc1 $f10,0x68($sp)
@ -1616,7 +1616,7 @@ glabel bwalkCalculateNewPositionWithPush
// newpos.y = obstacle->pos.y;
// newpos.z = obstacle->pos.z + chr->pushspeed[1] * g_Vars.lvupdate240f;
//
// func0f01e7f4(chr, &newpos, newrooms, 0);
// chrCalculatePushPos(chr, &newpos, newrooms, false);
//
// obstacle->pos.x = newpos.x;
// obstacle->pos.y = newpos.y;

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@
void func0f01e250(void);
void chrSetChrnum(struct chrdata *chr, s16 chrnum);
void chrDeregister(s32 chrnum);
void func0f01e7f4(struct chrdata *chr, struct coord *pos, s16 *rooms, s32 arg3);
void chrCalculatePushPos(struct chrdata *chr, struct coord *pos, s16 *rooms, bool arg3);
bool func0f01f264(struct chrdata *chr, struct coord *pos, s16 *room, f32 arg3, bool arg4);
void func0f01f378(void);
s32 getNumFreeChrSlots(void);

View File

@ -69,7 +69,7 @@ u32 func0002a4d0(void);
s32 func0002a564(struct coord *pos, s16 *rooms, f32 *arg2, u32 arg3, struct coord *arg4, bool *arg5);
u32 func0002a5e4(void);
s32 cdTestVolume(struct coord *pos, f32 width, s16 *rooms, s32 types, s32 arg4, f32 ymax, f32 ymin);
u32 func0002a6fc(void);
s32 func0002a6fc(struct coord *pos, struct coord *pos2, f32 width, s16 *rooms, s32 types, bool arg5, f32 arg6, f32 arg7);
s32 cdTestAToB1(struct coord *origpos, struct coord *dstpos, f32 width, s16 *dstrooms, s32 types, s32 arg5, f32 ymax, f32 ymin);
u32 func0002aac0(void);
u32 func0002ab98(void);
@ -87,7 +87,7 @@ bool func0002d6ac(struct coord *pos, s16 *rooms, struct coord *targetpos, u32 ar
s32 cdTestAToB2(struct coord *pos, s16 *rooms, struct coord *coord2, s16 *rooms2, u32 types, s32 arg5, f32 arg6, f32 arg7);
bool func0002d7c0(struct coord *pos, s16 *rooms, struct coord *arg2, u32 arg3, u32 arg4, f32 arg5, f32 arg6);
u32 func0002d840(void);
u32 func0002d8b8(void);
s32 func0002d8b8(struct coord *pos, s16 *rooms, struct coord *pos2, s16 *rooms2, s32 types, bool arg5, f32 arg6, f32 arg7);
s32 cdTestAToB3(struct coord *arg0, s16 *arg1, struct coord *arg2, s16 *arg3, f32 arg4, s32 types, s32 arg6, f32 ymax, f32 ymin);
u32 func0002da50(void);
u32 func0002dac8(void);