From dab0517f21e1a996b5481bfb52ee65a90658d803 Mon Sep 17 00:00:00 2001 From: Cesar Canassa Date: Mon, 4 Jul 2022 19:20:25 +0200 Subject: [PATCH] :recycle: Refactor ActivateSpawn to receive a Monster reference (#4889) --- Source/monster.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Source/monster.cpp b/Source/monster.cpp index 84f8c0834..3ab5950af 100644 --- a/Source/monster.cpp +++ b/Source/monster.cpp @@ -3294,10 +3294,9 @@ string_view GetMonsterTypeText(const MonsterData &monsterData) app_fatal(fmt::format("Unknown mMonstClass {}", static_cast(monsterData.mMonstClass))); } -void ActivateSpawn(int monsterId, Point position, Direction dir) +void ActivateSpawn(Monster &monster, Point position, Direction dir) { - auto &monster = Monsters[monsterId]; - dMonster[position.x][position.y] = monsterId + 1; + dMonster[position.x][position.y] = monster.getId() + 1; monster.position.tile = position; monster.position.future = position; monster.position.old = position; @@ -4718,9 +4717,11 @@ bool SpawnSkeleton(int ii, Point position) if (ii == -1) return false; + Monster &monster = Monsters[ii]; + if (IsTileAvailable(position)) { Direction dir = GetDirection(position, position); // TODO useless calculation - ActivateSpawn(ii, position, dir); + ActivateSpawn(monster, position, dir); return true; } @@ -4760,7 +4761,7 @@ bool SpawnSkeleton(int ii, Point position) Point spawn = position + Displacement { x2 - 1, y2 - 1 }; Direction dir = GetDirection(spawn, position); - ActivateSpawn(ii, spawn, dir); + ActivateSpawn(monster, spawn, dir); return true; }