diff --git a/lib/character/behaviors/spellcaster.lua b/lib/character/behaviors/spellcaster.lua index c6cd9af..37c128b 100644 --- a/lib/character/behaviors/spellcaster.lua +++ b/lib/character/behaviors/spellcaster.lua @@ -24,6 +24,10 @@ function behavior:endCast() end function behavior:update(dt) + if Tree.level.selector:deselected() then + self.state = "idle" + self.cast = nil + end if self.cast and self.state == "casting" then self.cast:update(self.owner, dt) end end diff --git a/lib/level/turn_order.lua b/lib/level/turn_order.lua index 6ea46ba..f47db4b 100644 --- a/lib/level/turn_order.lua +++ b/lib/level/turn_order.lua @@ -30,7 +30,7 @@ end --- --- Если в очереди на ход больше никого нет, заканчиваем раунд function turnOrder:next() - Tree.level.selector.id = nil + Tree.level.selector:select(nil) self.actedQueue:insert(self.current) local next = self.pendingQueue:peek() if not next then return self:endRound() end