diff --git a/gm/items/id_99_lockpicks.lua b/gm/items/id_99_lockpicks.lua index 96661adf1..f4b59df02 100644 --- a/gm/items/id_99_lockpicks.lua +++ b/gm/items/id_99_lockpicks.lua @@ -153,7 +153,8 @@ M.skillNames = { Character.bloomweave, Character.wildweave, Character.stoneweave, - Character.witherweave + Character.witherweave, + Character.natureResistance } local attributeNames={ "agility", diff --git a/item/id_372_poisonfield.lua b/item/id_372_poisonfield.lua index 9c1eee145..6987fab13 100644 --- a/item/id_372_poisonfield.lua +++ b/item/id_372_poisonfield.lua @@ -19,6 +19,7 @@ with this program. If not, see . local common = require("base.common") local character = require("base.character") local shared = require("magic.nature.shared") +local traps = require("magic.arcane.traps") local M = {} @@ -86,6 +87,11 @@ function M.CharacterOnField(user) end end + if fieldItem:getData("spell") ~= "" then --It is an earth spell trap from arcane magic and not a poison cloud + traps.triggerEarthTrap(fieldItem, user) + return + end + -- dont harm dead chars anymore if character.GetHP(user) == 0 then return diff --git a/lte/damagefield_poisoncloud.lua b/lte/damagefield_poisoncloud.lua index ac379bf4d..7a31c97dd 100644 --- a/lte/damagefield_poisoncloud.lua +++ b/lte/damagefield_poisoncloud.lua @@ -24,10 +24,10 @@ local M = {} function M.addPoison(user, quality, penetration) + penetration = penetration/100 -- We deal with it in decimals but to store it as a value before it had to be a whole integer local cloakGemBonus = magic.getGemBonusCloak(user)/100 local resistance = shared.getNatureResistance(user) - local damageLow = 100 + 40 * (quality) --Anywhere between 140 and 500 local damageHigh = 100 + 80 * (quality) -- between 180 and 900 local damageDealt = math.random(math.min(damageLow, damageHigh), math.max(damageLow, damageHigh))