diff --git a/game/modules/tome/data/general/encounters/maj-eyal.lua b/game/modules/tome/data/general/encounters/maj-eyal.lua index 4fe7f1b9a7de404adf099d53ee6dd332c26f8836..fe12345717113efc3ab2b0d94dcccaf31a41bbd4 100644 --- a/game/modules/tome/data/general/encounters/maj-eyal.lua +++ b/game/modules/tome/data/general/encounters/maj-eyal.lua @@ -92,8 +92,10 @@ newEntity{ }, post_process = function(level) for uid, e in pairs(level.entities) do - if e.faction ~= "allied-kingdoms" then e.faction="assassin-lair" end - if not e.can_talk then e.can_talk = "assassin-lord-thieves" end + if e.faction ~= "allied-kingdoms" then + e.faction="assassin-lair" + e.cant_be_moved = true + end end end, }, }, diff --git a/game/modules/tome/data/general/traps/alarm.lua b/game/modules/tome/data/general/traps/alarm.lua index 96aae123e986eae72b8688c1d5e7403a55ac87a0..6c2bdcb84463c8269183fb00ed342fea65be4bdb 100644 --- a/game/modules/tome/data/general/traps/alarm.lua +++ b/game/modules/tome/data/general/traps/alarm.lua @@ -33,12 +33,12 @@ newEntity{ base = "TRAP_ALARM", for i = x - 20, x + 20 do for j = y - 20, y + 20 do if game.level.map:isBound(i, j) then local actor = game.level.map(i, j, game.level.map.ACTOR) if actor and not actor.player then - if who:reactionToward(actor) >= 0 then + if who:reactionToward(actor) > 0 then local tx, ty, a = who:getTarget() if a then actor:setTarget(a) end - else + elseif who:reactionToward(actor) < 0 then actor:setTarget(who) end end diff --git a/game/modules/tome/data/maps/quests/lost-merchant.lua b/game/modules/tome/data/maps/quests/lost-merchant.lua index 367ba5525eb22b2db7ec84f84a9ac21ed0c013a6..454c36c4e39876bef9bb5732b097d0b39e49f6b5 100644 --- a/game/modules/tome/data/maps/quests/lost-merchant.lua +++ b/game/modules/tome/data/maps/quests/lost-merchant.lua @@ -29,6 +29,7 @@ defineTile('P', "FLOOR", nil, mod.class.NPC.new{ display = "p", color=colors.VIOLET, name = "Assassin Lord", body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 }, + cant_be_moved = true, resolvers.drops{chance=20, nb=1, {} }, resolvers.equip{ @@ -76,6 +77,7 @@ defineTile('@', "FLOOR", nil, mod.class.NPC.new{ faction = "allied-kingdoms", can_talk = "lost-merchant", is_merchant = true, + cant_be_moved = true, }) startx = 2 diff --git a/game/modules/tome/data/talents/gifts/storm-drake.lua b/game/modules/tome/data/talents/gifts/storm-drake.lua index 06cb07c6fe53ecc30602c9d70bb501ab22cb5afc..0b3942cb87201f029ceb34b3411e7e348149c2c9 100644 --- a/game/modules/tome/data/talents/gifts/storm-drake.lua +++ b/game/modules/tome/data/talents/gifts/storm-drake.lua @@ -37,6 +37,7 @@ newTalent{ end, info = function(self, t) return ([[You transform into pure lightning, moving %d%% faster for %d turns. + Also provides 30%% physical damage resistance and 100%% lightning resistance. Any actions other than moving will stop this effect.]]):format(400 + self:getTalentLevel(t) * 70, math.ceil(6 + self:getTalentLevel(t) * 1.2)) end, } diff --git a/game/modules/tome/data/talents/techniques/2hweapon.lua b/game/modules/tome/data/talents/techniques/2hweapon.lua index b5ca4da7c70894fe6db1aaf2837400b466e0b41d..83cc69ebbc2fc61842fd179532fe65237fb7973e 100644 --- a/game/modules/tome/data/talents/techniques/2hweapon.lua +++ b/game/modules/tome/data/talents/techniques/2hweapon.lua @@ -83,10 +83,11 @@ newTalent{ return true end, info = function(self, t) - return ([[Enters an aggressive battle stance, increasing attack by %d and damage by %d at the cost of %d defense and %d armor. + return ([[Enters an aggressive battle stance, increasing attack by %d and damage by %d at the cost of -10 defense and -10 armor. While berserking you are naerly unstoppable, granting %d%% stun and pinning resistance.]]): format( - 5 + self:getDex(7) * self:getTalentLevel(t), 5 + self:getStr(7) * self:getTalentLevel(t), -5 - 2 * (self:getTalentLevelRaw(t)-1), -5 - 2 * (self:getTalentLevelRaw(t)-1), + 5 + self:getDex(7) * self:getTalentLevel(t), + 5 + self:getStr(7) * self:getTalentLevel(t), 0.1 * self:getTalentLevel(t) ) end,