From 2257e6b63d877f6f02c466cbb7dc621752f7888a Mon Sep 17 00:00:00 2001 From: CreateSource Date: Sat, 24 Feb 2024 20:10:37 -0500 Subject: [PATCH] small player update --- include/game/board/player.h | 2 +- src/game/board/player.c | 27 ++++++++++++++++++++++++++- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/include/game/board/player.h b/include/game/board/player.h index 6e4d7678..4d75f4e4 100644 --- a/include/game/board/player.h +++ b/include/game/board/player.h @@ -149,7 +149,7 @@ void BoardDiceDigit2DShowSet(s32); s32 DoSparkSpace(s32, s16*); s32 MegaPlayerPassFunc(s32, s16); s32 BoardPlayerMotBlendCheck(s32); -void BoardPlayerMoveAwayStartCurr(s16, s32); +void BoardPlayerMoveAwayStartCurr(s32, s32); void BoardBowserSuitMotionSetWalk(void); s16 BoardBowserSuitModelGet(void); void UpdateDiceDigit2D(omObjData*); diff --git a/src/game/board/player.c b/src/game/board/player.c index 15b17ece..1ffdb54c 100644 --- a/src/game/board/player.c +++ b/src/game/board/player.c @@ -2139,7 +2139,7 @@ s32 BoardPlayerAutoSizeGet(s32 arg0) { } u32 BoardPlayerMoveAwayIsDone(void) { - if (!moveAwayObj) { + if (moveAwayObj) { return 0; } return 1; @@ -2190,6 +2190,31 @@ void BoardPlayerMoveAwayStart(s32 arg0, s32 arg1, s32 arg2) { } } +void BoardPlayerMoveAwayStartCurr(s32 arg0, s32 arg1) { + BoardPlayerMoveAwayStart(GWSystem.player_curr, arg0, arg1); +} + +static void MoveAwayObjFunc(omObjData* arg0) { + s32 var_r31; + bitcopy3* temp_r30; + + temp_r30 = (bitcopy3*) arg0->work; + if ((temp_r30->field00_bit0 != 0) || (BoardIsKill() != 0)) { + moveAwayObj = 0; + omDelObjEx(HuPrcCurrentGet(), arg0); + return; + } + + for (var_r31 = 0; var_r31 < 4; var_r31++) { + if (moveAwayPlayer[var_r31] != -1) { + if (GWPlayer[moveAwayPlayer[var_r31]].moving != 0) return; + BoardPlayerMotBlendSet(moveAwayPlayer[var_r31], 0, 15); + moveAwayPlayer[var_r31] = -1; + } + } + temp_r30->field00_bit0 = 1; +} + // ... void BoardPlayerCopyMat(s32 arg0) {