Commit b944de8d733afacfeb7bb60cf0af04a70dfa886c

Authored by Recaiden
1 parent 0c1377a2

Recall Minions will only place them in walls if they can pass_wall i.e. Dreads

... ... @@ -125,10 +125,12 @@ newTalent{
125 125 local stats = necroArmyStats(self)
126 126 if stats.nb == 0 then return end
127 127
128   - local spots, spots_hostile = {}, {}
  128 + local spots, spots_hostile, spots_wall = {}, {}, {}
129 129 self:projectApply({type="ball", radius=1}, self.x, self.y, Map.TERRAIN, function(_, x, y)
130 130 local target = game.level.map(x, y, Map.ACTOR)
  131 + local terrain = game.level.map(x, y, Map.TERRAIN)
131 132 if target and self:reactionToward(target) < 0 then spots_hostile[#spots_hostile+1] = {x=x, y=y, foe=target}
  133 + elseif not target and terrain and terrain.does_block_move then spots_wall[#spots_wall+1] = {x=x, y=y}
132 134 elseif not target then spots[#spots+1] = {x=x, y=y}
133 135 end
134 136 end)
... ... @@ -137,6 +139,7 @@ newTalent{
137 139 local m = rng.tableRemove(stats.list)
138 140 if not m then break end
139 141 local spot = rng.tableRemove(spots_hostile)
  142 + if not spot and m.can_pass and m.can_pass.pass_wall then spot = rng.tableRemove(spots_wall) end
140 143 if not spot then spot = rng.tableRemove(spots) end
141 144 if not spot then break end
142 145
... ...