From 2da492d203e4c459a506cecde2620a2e20ff38ee Mon Sep 17 00:00:00 2001 From: obligaron Date: Tue, 5 Dec 2023 19:24:15 +0100 Subject: [PATCH] Change some functions to Player reference --- Source/controls/plrctrls.cpp | 14 ++++++-------- Source/inv.cpp | 2 +- Source/items.cpp | 3 +-- Source/items.h | 2 +- Source/qol/stash.cpp | 2 +- 5 files changed, 10 insertions(+), 13 deletions(-) diff --git a/Source/controls/plrctrls.cpp b/Source/controls/plrctrls.cpp index 8f045cf55..3d2e03201 100644 --- a/Source/controls/plrctrls.cpp +++ b/Source/controls/plrctrls.cpp @@ -1274,13 +1274,11 @@ bool IsPathBlocked(Point position, Direction dir) return !PosOkPlayer(myPlayer, leftStep) && !PosOkPlayer(myPlayer, rightStep); } -void WalkInDir(size_t playerId, AxisDirection dir) +void WalkInDir(Player &player, AxisDirection dir) { - Player &player = Players[playerId]; - if (dir.x == AxisDirectionX_NONE && dir.y == AxisDirectionY_NONE) { if (ControlMode != ControlTypes::KeyboardAndMouse && player.walkpath[0] != WALK_NONE && player.destAction == ACTION_NONE) - NetSendCmdLoc(playerId, true, CMD_WALKXY, player.position.future); // Stop walking + NetSendCmdLoc(player.getId(), true, CMD_WALKXY, player.position.future); // Stop walking return; } @@ -1302,7 +1300,7 @@ void WalkInDir(size_t playerId, AxisDirection dir) return; // Don't start backtrack around obstacles } - NetSendCmdLoc(playerId, true, CMD_WALKXY, delta); + NetSendCmdLoc(player.getId(), true, CMD_WALKXY, delta); } void QuestLogMove(AxisDirection moveDir) @@ -1360,13 +1358,13 @@ void ProcessLeftStickOrDPadGameUI() handler(GetLeftStickOrDpadDirection(false)); } -void Movement(size_t playerId) +void Movement(Player &player) { if (PadMenuNavigatorActive || PadHotspellMenuActive || InGameMenu()) return; if (GetLeftStickOrDPadGameUIHandler() == nullptr) { - WalkInDir(playerId, GetMoveDirection()); + WalkInDir(player, GetMoveDirection()); } } @@ -1779,7 +1777,7 @@ void plrctrls_every_frame() void plrctrls_after_game_logic() { - Movement(MyPlayerId); + Movement(*MyPlayer); } void UseBeltItem(int type) diff --git a/Source/inv.cpp b/Source/inv.cpp index e0b20be9c..5310670ea 100644 --- a/Source/inv.cpp +++ b/Source/inv.cpp @@ -2067,7 +2067,7 @@ bool UseInvItem(int cii) else if (&player == MyPlayer) PlaySFX(ItemInvSnds[idata]); - UseItem(player.getId(), item->_iMiscId, item->_iSpell, cii); + UseItem(player, item->_iMiscId, item->_iSpell, cii); if (speedlist) { if (player.SpdList[c]._iMiscId == IMISC_NOTE) { diff --git a/Source/items.cpp b/Source/items.cpp index abe985202..f136bff40 100644 --- a/Source/items.cpp +++ b/Source/items.cpp @@ -3981,9 +3981,8 @@ void PrintItemDur(const Item &item) PrintItemInfo(item); } -void UseItem(size_t pnum, item_misc_id mid, SpellID spellID, int spellFrom) +void UseItem(Player &player, item_misc_id mid, SpellID spellID, int spellFrom) { - Player &player = Players[pnum]; std::optional prepareSpellID; switch (mid) { diff --git a/Source/items.h b/Source/items.h index 4a0f65728..f5b49c508 100644 --- a/Source/items.h +++ b/Source/items.h @@ -539,7 +539,7 @@ bool DoOil(Player &player, int cii); void DrawUniqueInfo(const Surface &out); void PrintItemDetails(const Item &item); void PrintItemDur(const Item &item); -void UseItem(size_t pnum, item_misc_id Mid, SpellID spellID, int spellFrom); +void UseItem(Player &player, item_misc_id Mid, SpellID spellID, int spellFrom); bool UseItemOpensHive(const Item &item, Point position); bool UseItemOpensGrave(const Item &item, Point position); void SpawnSmith(int lvl); diff --git a/Source/qol/stash.cpp b/Source/qol/stash.cpp index 2bde7e72a..ab573d586 100644 --- a/Source/qol/stash.cpp +++ b/Source/qol/stash.cpp @@ -501,7 +501,7 @@ bool UseStashItem(uint16_t c) else PlaySFX(ItemInvSnds[ItemCAnimTbl[item->_iCurs]]); - UseItem(MyPlayerId, item->_iMiscId, item->_iSpell, -1); + UseItem(*MyPlayer, item->_iMiscId, item->_iSpell, -1); if (Stash.stashList[c]._iMiscId == IMISC_MAPOFDOOM) return true;