diff --git a/modules/game_battle/battle.lua b/modules/game_battle/battle.lua index 7d43d24f..a730e825 100644 --- a/modules/game_battle/battle.lua +++ b/modules/game_battle/battle.lua @@ -270,7 +270,10 @@ function Battle.removeCreature(creature) if lastBattleButtonSwitched == battleButtonsByCreaturesList[creatureId] then lastBattleButtonSwitched = nil end - + + if battleButtonsByCreaturesList[creatureId].isTarget then + g_game.cancelAttack() + end battleButtonsByCreaturesList[creatureId].creature:hideStaticSquare() battleButtonsByCreaturesList[creatureId]:destroy() battleButtonsByCreaturesList[creatureId] = nil diff --git a/modules/game_healthbar/healthbar.lua b/modules/game_healthbar/healthbar.lua index 9fb144fc..d9fe619a 100644 --- a/modules/game_healthbar/healthbar.lua +++ b/modules/game_healthbar/healthbar.lua @@ -91,9 +91,12 @@ end function HealthBar.onStatesChange(localPlayer, now, old) local bitsChanged = bit32.bxor(now, old) + print("HealthBar.onStatesChange 1 " .. bitsChanged) for i = 1, 32 do - if i > bitsChanged then break end - local bitChanged = bit32.band(bitsChanged, math.pow(2, i)) + local pow = math.pow(2, i-1) + if pow > bitsChanged then break end + local bitChanged = bit32.band(bitsChanged, pow) + print("HealthBar.onStatesChange 2 " .. bitChanged .. " " .. bitsChanged .. " " .. pow) if bitChanged ~= 0 then HealthBar.toggleIcon(bitChanged) end