I got an error (target nil value) when I was killed by several monsters. Only one of them actually kills you but the others may still call EndAttack()
The fix is simple, after the second line of
function Script:EndAttack()
if self.mode=="attack" then
-- add these 4 lines
if self.target==nil then
self:SetMode("idle")
return
end
-- the script then continues with
if self.target.health<=0 then