From fb0c6af8f4dde969a3c31c0073a5744c3534d4a7 Mon Sep 17 00:00:00 2001 From: dg <dg@51575b47-30f0-44d4-a5cc-537603b46e54> Date: Mon, 7 Mar 2011 14:51:10 +0000 Subject: [PATCH] fix git-svn-id: http://svn.net-core.org/repos/t-engine4@2961 51575b47-30f0-44d4-a5cc-537603b46e54 --- game/modules/tome/class/GameState.lua | 7 +++++-- game/modules/tome/data/birth/classes/afflicted.lua | 8 ++++---- game/modules/tome/data/birth/classes/archer.lua | 4 ++-- .../tome/data/birth/classes/chronomancer.lua | 12 ++++++------ game/modules/tome/data/birth/classes/corrupted.lua | 10 +++++----- game/modules/tome/data/birth/classes/divine.lua | 10 +++++----- game/modules/tome/data/birth/classes/mage.lua | 8 ++++---- game/modules/tome/data/birth/classes/psionic.lua | 4 ++-- game/modules/tome/data/birth/classes/rogue.lua | 6 +++--- game/modules/tome/data/birth/classes/tutorial.lua | 4 ++-- game/modules/tome/data/birth/classes/warrior.lua | 14 +++++++------- game/modules/tome/data/birth/classes/wilder.lua | 6 +++--- game/modules/tome/data/birth/descriptors.lua | 2 +- game/modules/tome/data/birth/worlds.lua | 2 +- 14 files changed, 50 insertions(+), 47 deletions(-) diff --git a/game/modules/tome/class/GameState.lua b/game/modules/tome/class/GameState.lua index 77b69a1766..3b843b5d61 100644 --- a/game/modules/tome/class/GameState.lua +++ b/game/modules/tome/class/GameState.lua @@ -758,7 +758,7 @@ local default_drops = function(zone, level, what) if zone.default_drops then return zone.default_drops end local lev = util.bound(math.ceil(zone:level_adjust_level(level, "object") / 10), 1, 5) print("[TOME ENTITY FILTER] making default loot table for", what, lev) - return drop_tables[what][lev] + return table.clone(drop_tables[what][lev]) end function _M:defaultEntityFilter(zone, level, type) @@ -773,12 +773,15 @@ end function _M:entityFilterAlter(zone, level, type, filter) if type ~= "object" then return end - if not filter.tome and not filter.special and not filter.unique and not filter.ego_chance and not filter.ego_filter and not filter.no_tome_drops then filter.tome = default_drops(zone, level, filter.tome_drops or "normal") end + if not filter.tome and not filter.defined and not filter.special and not filter.unique and not filter.ego_chance and not filter.ego_filter and not filter.no_tome_drops then filter.tome = default_drops(zone, level, filter.tome_drops or "normal") end if filter.tome then local t = (filter.tome == true) and default_drops(zone, level, "normal") or filter.tome filter.tome = nil + -- If we request a specific type/subtype, we dont waht categories that could make that not happen + if filter.type or filter.subtype or filter.name then t.money = 0 end + local u = t.uniques or 0 local dg = u + (t.double_greater or 0) local ge = dg + (t.greater_normal or 0) diff --git a/game/modules/tome/data/birth/classes/afflicted.lua b/game/modules/tome/data/birth/classes/afflicted.lua index c315171c95..aaaa44c1e2 100644 --- a/game/modules/tome/data/birth/classes/afflicted.lua +++ b/game/modules/tome/data/birth/classes/afflicted.lua @@ -70,8 +70,8 @@ newBirthDescriptor{ copy = { max_life = 110, resolvers.equip{ id=true, - {type="weapon", subtype="battleaxe", name="iron battleaxe", autoreq=true}, - {type="armor", subtype="light", name="rough leather armour", autoreq=true} + {type="weapon", subtype="battleaxe", name="iron battleaxe", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="light", name="rough leather armour", autoreq=true, ego_chance=-1000} }, }, copy_add = { @@ -112,8 +112,8 @@ newBirthDescriptor{ copy = { max_life = 90, resolvers.equip{ id=true, - {type="weapon", subtype="staff", name="elm staff", autoreq=true}, - {type="armor", subtype="cloth", name="linen robe", autoreq=true}, + {type="weapon", subtype="staff", name="elm staff", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="cloth", name="linen robe", autoreq=true, ego_chance=-1000}, }, }, copy_add = { diff --git a/game/modules/tome/data/birth/classes/archer.lua b/game/modules/tome/data/birth/classes/archer.lua index 9c4fab435e..fc99149b6d 100644 --- a/game/modules/tome/data/birth/classes/archer.lua +++ b/game/modules/tome/data/birth/classes/archer.lua @@ -70,7 +70,7 @@ newBirthDescriptor{ }, copy = { resolvers.equip{ id=true, - {type="weapon", subtype="longbow", name="elm longbow", autoreq=true}, + {type="weapon", subtype="longbow", name="elm longbow", autoreq=true, ego_chance=-1000}, }, resolvers.generic(function(e) e.auto_shoot_talent = e.T_SHOOT @@ -111,7 +111,7 @@ newBirthDescriptor{ }, copy = { equipment = resolvers.equip{ id=true, - {type="weapon", subtype="sling", name="rough leather sling", autoreq=true}, + {type="weapon", subtype="sling", name="rough leather sling", autoreq=true, ego_chance=-1000}, }, }, } diff --git a/game/modules/tome/data/birth/classes/chronomancer.lua b/game/modules/tome/data/birth/classes/chronomancer.lua index 458a3ac2ee..b7cf06649f 100644 --- a/game/modules/tome/data/birth/classes/chronomancer.lua +++ b/game/modules/tome/data/birth/classes/chronomancer.lua @@ -73,8 +73,8 @@ newBirthDescriptor{ copy = { max_life = 90, resolvers.equip{ id=true, - {type="weapon", subtype="staff", name="elm staff", autoreq=true}, - {type="armor", subtype="cloth", name="linen robe", autoreq=true}, + {type="weapon", subtype="staff", name="elm staff", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="cloth", name="linen robe", autoreq=true, ego_chance=-1000}, }, }, copy_add = { @@ -121,12 +121,12 @@ newBirthDescriptor{ copy = { max_life = 100, resolvers.equip{ id=true, - {type="weapon", subtype="longsword", name="iron longsword", autoreq=true}, - {type="weapon", subtype="dagger", name="iron dagger", autoreq=true}, - {type="armor", subtype="light", name="rough leather armour", autoreq=true}, + {type="weapon", subtype="longsword", name="iron longsword", autoreq=true, ego_chance=-1000}, + {type="weapon", subtype="dagger", name="iron dagger", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="light", name="rough leather armour", autoreq=true, ego_chance=-1000}, }, resolvers.inventory{ id=true, inven="QS_MAINHAND", - {type="weapon", subtype="longbow", name="elm longbow", autoreq=true}, + {type="weapon", subtype="longbow", name="elm longbow", autoreq=true, ego_chance=-1000}, }, }, } diff --git a/game/modules/tome/data/birth/classes/corrupted.lua b/game/modules/tome/data/birth/classes/corrupted.lua index dfc2dc82d3..f67eb8d111 100644 --- a/game/modules/tome/data/birth/classes/corrupted.lua +++ b/game/modules/tome/data/birth/classes/corrupted.lua @@ -68,9 +68,9 @@ newBirthDescriptor{ }, copy = { resolvers.equip{ id=true, - {type="weapon", subtype="waraxe", name="iron waraxe", autoreq=true}, - {type="weapon", subtype="waraxe", name="iron waraxe", autoreq=true}, - {type="armor", subtype="heavy", name="iron mail armour", autoreq=true} + {type="weapon", subtype="waraxe", name="iron waraxe", autoreq=true, ego_chance=-1000}, + {type="weapon", subtype="waraxe", name="iron waraxe", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="heavy", name="iron mail armour", autoreq=true, ego_chance=-1000} }, }, copy_add = { @@ -111,8 +111,8 @@ newBirthDescriptor{ }, copy = { resolvers.equip{ id=true, - {type="weapon", subtype="staff", name="elm staff", autoreq=true}, - {type="armor", subtype="cloth", name="linen robe", autoreq=true} + {type="weapon", subtype="staff", name="elm staff", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="cloth", name="linen robe", autoreq=true, ego_chance=-1000} }, }, } diff --git a/game/modules/tome/data/birth/classes/divine.lua b/game/modules/tome/data/birth/classes/divine.lua index 91592ddb58..0ec548742c 100644 --- a/game/modules/tome/data/birth/classes/divine.lua +++ b/game/modules/tome/data/birth/classes/divine.lua @@ -74,9 +74,9 @@ newBirthDescriptor{ copy = { max_life = 110, resolvers.equip{ id=true, - {type="weapon", subtype="mace", name="iron mace", autoreq=true}, - {type="armor", subtype="shield", name="iron shield", autoreq=true}, - {type="armor", subtype="heavy", name="iron mail armour", autoreq=true}, + {type="weapon", subtype="mace", name="iron mace", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="shield", name="iron shield", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="heavy", name="iron mail armour", autoreq=true, ego_chance=-1000}, }, }, copy_add = { @@ -119,8 +119,8 @@ newBirthDescriptor{ copy = { max_life = 90, resolvers.equip{ id=true, - {type="weapon", subtype="staff", name="elm staff", autoreq=true}, - {type="armor", subtype="cloth", name="linen robe", autoreq=true} + {type="weapon", subtype="staff", name="elm staff", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="cloth", name="linen robe", autoreq=true, ego_chance=-1000} }, }, } diff --git a/game/modules/tome/data/birth/classes/mage.lua b/game/modules/tome/data/birth/classes/mage.lua index 6f6978ed0f..232d1fa4f9 100644 --- a/game/modules/tome/data/birth/classes/mage.lua +++ b/game/modules/tome/data/birth/classes/mage.lua @@ -79,8 +79,8 @@ newBirthDescriptor{ faction = "angolwen", max_life = 90, resolvers.equip{ id=true, - {type="weapon", subtype="staff", name="elm staff", autoreq=true}, - {type="armor", subtype="cloth", name="linen robe", autoreq=true}, + {type="weapon", subtype="staff", name="elm staff", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="cloth", name="linen robe", autoreq=true, ego_chance=-1000}, }, resolvers.generic(function(self) if profile.mod.allow_build.mage_pyromancer then self:learnTalentType("spell/wildfire", false) self:setTalentTypeMastery("spell/wildfire", 1.3) end @@ -129,8 +129,8 @@ newBirthDescriptor{ copy = { max_life = 90, resolvers.equip{ id=true, - {type="weapon", subtype="staff", name="elm staff", autoreq=true}, - {type="armor", subtype="cloth", name="linen robe", autoreq=true} + {type="weapon", subtype="staff", name="elm staff", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="cloth", name="linen robe", autoreq=true, ego_chance=-1000} }, resolvers.inventory{ id=true, {type="gem",}, diff --git a/game/modules/tome/data/birth/classes/psionic.lua b/game/modules/tome/data/birth/classes/psionic.lua index 64aa5f396b..93c3d153ce 100644 --- a/game/modules/tome/data/birth/classes/psionic.lua +++ b/game/modules/tome/data/birth/classes/psionic.lua @@ -73,8 +73,8 @@ newBirthDescriptor{ copy = { max_life = 110, resolvers.equip{ id=true, - {type="armor", subtype="cloth", name="linen robe", autoreq=true}, - {type="weapon", subtype="greatsword", name="iron greatsword", autoreq=true}, + {type="armor", subtype="cloth", name="linen robe", autoreq=true, ego_chance=-1000}, + {type="weapon", subtype="greatsword", name="iron greatsword", autoreq=true, ego_chance=-1000}, }, resolvers.generic(function(self) -- Make and wield some alchemist gems diff --git a/game/modules/tome/data/birth/classes/rogue.lua b/game/modules/tome/data/birth/classes/rogue.lua index 2e4344a03f..ac4382d1b4 100644 --- a/game/modules/tome/data/birth/classes/rogue.lua +++ b/game/modules/tome/data/birth/classes/rogue.lua @@ -35,9 +35,9 @@ newBirthDescriptor{ copy = { max_life = 100, equipment = resolvers.equip{ id=true, - {type="weapon", subtype="dagger", name="iron dagger", autoreq=true}, - {type="weapon", subtype="dagger", name="iron dagger", autoreq=true}, - {type="armor", subtype="light", name="rough leather armour", autoreq=true} + {type="weapon", subtype="dagger", name="iron dagger", autoreq=true, ego_chance=-1000}, + {type="weapon", subtype="dagger", name="iron dagger", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="light", name="rough leather armour", autoreq=true, ego_chance=-1000} }, }, } diff --git a/game/modules/tome/data/birth/classes/tutorial.lua b/game/modules/tome/data/birth/classes/tutorial.lua index 8a9f95138c..e0b89c330f 100644 --- a/game/modules/tome/data/birth/classes/tutorial.lua +++ b/game/modules/tome/data/birth/classes/tutorial.lua @@ -62,8 +62,8 @@ newBirthDescriptor{ copy = { unused_stats = 0, unused_talents = 0, unused_generics = 0, unused_talents_types = 0, resolvers.equip{ id=true, - {type="weapon", subtype="longsword", name="iron longsword", autoreq=true}, - {type="armor", subtype="shield", name="iron shield", autoreq=true}, + {type="weapon", subtype="longsword", name="iron longsword", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="shield", name="iron shield", autoreq=true, ego_chance=-1000}, }, }, } diff --git a/game/modules/tome/data/birth/classes/warrior.lua b/game/modules/tome/data/birth/classes/warrior.lua index 56adcd340e..675f245b2f 100644 --- a/game/modules/tome/data/birth/classes/warrior.lua +++ b/game/modules/tome/data/birth/classes/warrior.lua @@ -73,9 +73,9 @@ newBirthDescriptor{ }, copy = { resolvers.equip{ id=true, - {type="weapon", subtype="longsword", name="iron longsword", autoreq=true}, - {type="armor", subtype="shield", name="iron shield", autoreq=true}, - {type="armor", subtype="heavy", name="iron mail armour", autoreq=true} + {type="weapon", subtype="longsword", name="iron longsword", autoreq=true, ego_chance=-1000, ego_chance=-1000}, + {type="armor", subtype="shield", name="iron shield", autoreq=true, ego_chance=-1000, ego_chance=-1000}, + {type="armor", subtype="heavy", name="iron mail armour", autoreq=true, ego_chance=-1000, ego_chance=-1000} }, }, copy_add = { @@ -118,8 +118,8 @@ newBirthDescriptor{ }, copy = { resolvers.equip{ id=true, - {type="weapon", subtype="greatsword", name="iron greatsword", autoreq=true}, - {type="armor", subtype="heavy", name="iron mail armour", autoreq=true}, + {type="weapon", subtype="greatsword", name="iron greatsword", autoreq=true, ego_chance=-1000, ego_chance=-1000}, + {type="armor", subtype="heavy", name="iron mail armour", autoreq=true, ego_chance=-1000, ego_chance=-1000}, }, }, copy_add = { @@ -165,8 +165,8 @@ newBirthDescriptor{ max_life = 100, talent_cd_reduction={[ActorTalents.T_FLAME]=-3, [ActorTalents.T_LIGHTNING]=-3, }, resolvers.equip{ id=true, - {type="weapon", subtype="greatsword", name="iron greatsword", autoreq=true}, - {type="armor", subtype="light", name="rough leather armour", autoreq=true}, + {type="weapon", subtype="greatsword", name="iron greatsword", autoreq=true, ego_chance=-1000, ego_chance=-1000}, + {type="armor", subtype="light", name="rough leather armour", autoreq=true, ego_chance=-1000, ego_chance=-1000}, }, resolvers.inscription("RUNE:_MANASURGE", {cooldown=25, dur=10, mana=620}), }, diff --git a/game/modules/tome/data/birth/classes/wilder.lua b/game/modules/tome/data/birth/classes/wilder.lua index f28a98a35c..f76b873369 100644 --- a/game/modules/tome/data/birth/classes/wilder.lua +++ b/game/modules/tome/data/birth/classes/wilder.lua @@ -69,7 +69,7 @@ newBirthDescriptor{ copy = { max_life = 90, resolvers.equip{ id=true, - {type="armor", subtype="light", name="rough leather armour", autoreq=true} + {type="armor", subtype="light", name="rough leather armour", autoreq=true, ego_chance=-1000} }, }, } @@ -108,8 +108,8 @@ newBirthDescriptor{ copy = { max_life = 110, resolvers.equip{ id=true, - {type="weapon", subtype="battleaxe", name="iron battleaxe", autoreq=true}, - {type="armor", subtype="light", name="rough leather armour", autoreq=true} + {type="weapon", subtype="battleaxe", name="iron battleaxe", autoreq=true, ego_chance=-1000}, + {type="armor", subtype="light", name="rough leather armour", autoreq=true, ego_chance=-1000} }, }, copy_add = { diff --git a/game/modules/tome/data/birth/descriptors.lua b/game/modules/tome/data/birth/descriptors.lua index c39acfd5cd..accd1a87cb 100644 --- a/game/modules/tome/data/birth/descriptors.lua +++ b/game/modules/tome/data/birth/descriptors.lua @@ -78,7 +78,7 @@ newBirthDescriptor{ max_level = 50, money = 10, resolvers.equip{ id=true, - {type="lite", subtype="lite", name="brass lantern"}, + {type="lite", subtype="lite", name="brass lantern", ego_chance=-1000}, }, make_tile = function(e) if not e.image then diff --git a/game/modules/tome/data/birth/worlds.lua b/game/modules/tome/data/birth/worlds.lua index 4be7d78fea..1cb25bb3c6 100644 --- a/game/modules/tome/data/birth/worlds.lua +++ b/game/modules/tome/data/birth/worlds.lua @@ -119,7 +119,7 @@ newBirthDescriptor{ copy = { -- Give the orb of knowledge resolvers.inventory{ id=true, {defined="ORB_KNOWLEDGE"}}, - resolvers.equip{ id=true, {name="iron pickaxe"}}, + resolvers.equip{ id=true, {name="iron pickaxe", ego_chance=-1000}}, resolvers.generic(function(e) e.hotkey[12] = {"inventory", "Orb of Knowledge"} end), -- Override normal stuff before_starting_zone = function(self) -- GitLab