diff --git a/game/modules/tome/class/GameState.lua b/game/modules/tome/class/GameState.lua index 1e6283390c83bee027173dd01ec78a76ccf12562..fa7613824f91ed4a8eef295ca716bee70956032d 100644 --- a/game/modules/tome/class/GameState.lua +++ b/game/modules/tome/class/GameState.lua @@ -1050,7 +1050,7 @@ local random_zone_layouts = { ["'"] = data:getDoor(), } end }, -- Building - { name="building", rarity=1, gen=function(data) + { name="building", rarity=4, gen=function(data) return { class = "engine.generator.map.Building", lite_room_chance = rng.range(0, 100), @@ -1062,6 +1062,20 @@ local random_zone_layouts = { down = data:getDown(), door = data:getDoor(), } end }, + -- "Octopus" + { name="octopus", rarity=6, gen=function(data) + return { + class = "engine.generator.map.Octopus", + main_radius = {0.3, 0.4}, + arms_radius = {0.1, 0.2}, + arms_range = {0.7, 0.8}, + nb_rooms = {5, 9}, + ['.'] = data:getFloor(), + ['#'] = data:getWall(), + up = data:getUp(), + down = data:getDown(), + door = data:getDoor(), + } end }, } local random_zone_themes = { diff --git a/game/modules/tome/data/general/objects/egos/weapon.lua b/game/modules/tome/data/general/objects/egos/weapon.lua index 15b08171ddd14b48fb1a68b57f1efb39cc538cd0..912d5bb47e926265197da2bfe1ab86e10987cede 100644 --- a/game/modules/tome/data/general/objects/egos/weapon.lua +++ b/game/modules/tome/data/general/objects/egos/weapon.lua @@ -139,7 +139,6 @@ newEntity{ if eff == "stun" then target:setEffect(target.EFF_STUNNED, 3, {}) elseif eff == "blind" then target:setEffect(target.EFF_BLINDED, 3, {}) elseif eff == "pin" then target:setEffect(target.EFF_PINNED, 3, {}) - elseif eff == "stone" then target:setEffect(target.EFF_STONED, 3, {}) elseif eff == "confusion" then target:setEffect(target.EFF_CONFUSED, 3, {power=60}) elseif eff == "silence" then target:setEffect(target.EFF_SILENCED, 3, {}) elseif eff == "knockback" then target:knockback(who.x, who.y, 3) diff --git a/game/modules/tome/data/talents/spells/stone-alchemy.lua b/game/modules/tome/data/talents/spells/stone-alchemy.lua index 0d8c74e5b9dd18231ec0b9a5d0291886d59268e4..d8e5c6728eaaeadc6fabaea11d31fec2d1a2ad5c 100644 --- a/game/modules/tome/data/talents/spells/stone-alchemy.lua +++ b/game/modules/tome/data/talents/spells/stone-alchemy.lua @@ -181,7 +181,7 @@ newTalent{ local target = game.level.map(tx, ty, Map.ACTOR) if not target then return end - if target:checkHit(self:combatSpellpower(), target:combatSpellResist(), 0, 95, 10) and target:canBe("stone") and target:canBe("instakill") then + if target:checkHit(self:combatSpellpower(), target:combatSpellResist(), 0, 95, 10) and target:canBe("stun") and target:canBe("instakill") then target:setEffect(target.EFF_STONED, t.getDuration(self, t), {}) game.level.map:particleEmitter(tx, ty, 1, "archery") end