Skip to content
Snippets Groups Projects
Commit 5fcb80f2 authored by dg's avatar dg
Browse files

thieves, minotaur

fixes


git-svn-id: http://svn.net-core.org/repos/t-engine4@321 51575b47-30f0-44d4-a5cc-537603b46e54
parent e291f80e
No related branches found
No related tags found
No related merge requests found
......@@ -24,5 +24,12 @@ newAI("sandworm_tunneler", function(self)
self:project({type="hit"}, lx, ly, DamageType.DIG, 1)
end
self:move(lx, ly)
-- if we could not move, find a new spot
if self.x ~= lx or self.y ~= ly then
local s = rng.table(game.level.spots)
self.ai_state.spot_x = s.x
self.ai_state.spot_y = s.y
end
end
end)
-- last updated: 11:56 AM 2/5/2010
local Talents = require("engine.interface.ActorTalents")
newEntity{
define_as = "BASE_NPC_MINOTAUR",
type = "giant", subtype = "minotaur",
display = "H", color=colors.WHITE,
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 },
drops = resolvers.drops{chance=20, nb=1, {} },
max_stamina = 100,
life_rating = 13,
max_life = resolvers.rngavg(100,120),
autolevel = "warrior",
ai = "dumb_talented_simple", ai_state = { talent_in=5, },
energy = { mod=1.2 },
stats = { str=15, dex=12, mag=6, cun=12, con=15 },
tmasteries = resolvers.tmasteries{ ["technique/2hweapon-offense"]=0.3, ["technique/2hweapon-cripple"]=0.3, ["technique/combat-training"]=0.3, },
}
newEntity{ base = "BASE_NPC_MINOTAUR",
name = "minotaur", color=colors.UMBER,
desc = [[It is a cross between a human and a bull.]],
equipment = resolvers.equip{ {type="weapon", subtype="greataxe"}, },
level_range = {10, 50}, exp_worth = 1,
rarity = 9,
combat_armor = 13, combat_def = 8,
talents = resolvers.talents{ [Talents.T_WARSHOUT]=3, [Talents.T_STUNNING_BLOW]=3, [Talents.T_SUNDER_ARMOUR]=2, [Talents.T_SUNDER_ARMS]=2, },
}
newEntity{ base = "BASE_NPC_MINOTAUR",
name = "maulotaur", color=colors.SLATE,
desc = [[It is a belligerent minotaur with a destructive magical arsenal, armed with a hammer.]],
level_range = {20, 50}, exp_worth = 1,
rarity = 15,
combat_armor = 15, combat_def = 7,
equipment = resolvers.equip{ {type="weapon", subtype="maul"} },
autolevel = "caster",
resists = { [DamageType.FIRE] = 100 },
max_mana = 100,
talents = resolvers.talents{ [Talents.T_MANA_POOL]=1, [Talents.T_FLAME]=3, [Talents.T_FIREFLASH]=2 },
}
-- last updated: 9:25 AM 2/5/2010
local Talents = require("engine.interface.ActorTalents")
newEntity{
define_as = "BASE_NPC_THIEF",
type = "humanoid", subtype = "human",
display = "p", color=colors.BLUE,
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 },
drops = resolvers.drops{chance=20, nb=1, {} },
equipment = resolvers.equip{ {type="weapon", subtype="dagger"}, {type="weapon", subtype="dagger"}, {type="armor", subtype="light"} },
max_stamina = 100,
autolevel = "rogue",
ai = "dumb_talented_simple", ai_state = { talent_in=5, },
energy = { mod=1 },
stats = { str=8, dex=15, mag=6, cun=15, con=7 },
tmasteries = resolvers.tmasteries{ ["technique/other"]=0.3, ["cunning/stealth"]=0.3, ["cunning/dirty"]=0.3, ["technique/dualweapon-training"]=0.3 },
talents = resolvers.talents{ [Talents.T_LETHALITY]=1, },
}
newEntity{ base = "BASE_NPC_THIEF",
name = "cutpurse", color_r=0, color_g=0, color_b=resolvers.rngrange(235, 255),
desc = [[The lowest of the thieves, they are just learning the tricks of the trade.]],
level_range = {1, 50}, exp_worth = 1,
rarity = 5,
combat_armor = 1, combat_def = 5,
max_life = resolvers.rngavg(60,80),
talents = resolvers.talents{ [Talents.T_STEAL]=1, },
}
newEntity{ base = "BASE_NPC_THIEF",
name = "rogue", color_r=0, color_g=0, color_b=resolvers.rngrange(215, 235),
desc = [[Stronger than a cutpurse, this thief has been promoted.]],
level_range = {2, 50}, exp_worth = 1,
rarity = 5,
combat_armor = 2, combat_def = 5,
talents = resolvers.talents{ [Talents.T_STEALTH]=1, [Talents.T_STEAL]=1, },
max_life = resolvers.rngavg(70,90),
}
newEntity{ base = "BASE_NPC_THIEF",
name = "thief", color_r=0, color_g=0, color_b=resolvers.rngrange(195, 215),
desc = [[He eyes you and your belongings, then suddenly vanishes... strange, why is your pack lighter?]],
level_range = {3, 50}, exp_worth = 1,
rarity = 5,
combat_armor = 3, combat_def = 5,
talents = resolvers.talents{ [Talents.T_STEALTH]=2, [Talents.T_STEAL]=2, },
max_life = resolvers.rngavg(70,90),
}
newEntity{ base = "BASE_NPC_THIEF",
name = "bandit", color_r=0, color_g=0, color_b=resolvers.rngrange(175, 195),
desc = [[These ruffians often employ brute force over thievery but they are capable of stealing as well.]],
level_range = {5, 50}, exp_worth = 1,
rarity = 7,
combat_armor = 4, combat_def = 6,
talents = resolvers.talents{ [Talents.T_STEAL]=1, [Talents.T_STEALTH]=3, [Talents.T_LETHALITY]=2, },
max_life = resolvers.rngavg(80,100),
}
newEntity{ base = "BASE_NPC_THIEF",
name = "bandit lord", color_r=resolvers.rngrange(75, 85), color_g=0, color_b=resolvers.rngrange(235, 255),
desc = [[He is the leader of a gang of bandits, watch out for his men.]],
level_range = {8, 50}, exp_worth = 1,
rarity = 12,
combat_armor = 5, combat_def = 7,
max_life = resolvers.rngavg(90,100),
combat = { dam=resolvers.rngavg(6,7), atk=10, apr=4},
summon = {
{type="human", subtype="thief", name="bandit", number=1, hasxp=true},
{type="human", subtype="thief", name="bandit", number=1, hasxp=false},
{type="human", subtype="thief", name="thief", number=1, hasxp=true},
{type="human", subtype="thief", name="rogue", number=2, hasxp=true},
},
talents = resolvers.talents{ [Talents.T_STEAL]=2, [Talents.T_STEALTH]=3, [Talents.T_SUMMON]=1, [Talents.T_LETHALITY]=3, },
}
newEntity{ base = "BASE_NPC_THIEF",
name = "assassin", color_r=resolvers.rngrange(0, 10), color_g=resolvers.rngrange(0, 10), color_b=resolvers.rngrange(0, 10),
desc = [[Before you looms a pair of eyes... A glint of steel... death.]],
level_range = {12, 50}, exp_worth = 1,
rarity = 12,
combat_armor = 3, combat_def = 10,
talents = resolvers.talents{ [Talents.T_STEALTH]=3, [Talents.T_PRECISION]=3, [Talents.T_DUAL_WEAPON_TRAINING]=2, [Talents.T_DUAL_WEAPON_DEFENSE]=2, [Talents.T_DUAL_STRIKE]=1, [Talents.T_SWEEP]=1, [Talents.T_SHADOWSTRIKE]=2, [Talents.T_LETHALITY]=5, },
max_life = resolvers.rngavg(70,90),
}
......@@ -260,8 +260,6 @@ newTalent{
self:removeTemporaryValue("combat_def", p.def)
self:removeTemporaryValue("max_life", p.max_life)
self:removeTemporaryValue("never_move", p.nomove)
if p.stun then self:removeTemporaryValue("stun_immune", p.stun) end
if p.knock then self:removeTemporaryValue("knockback_immune", p.knock) end
return true
end,
info = function(self, t)
......
......@@ -4,6 +4,9 @@ load("/data/general/npcs/canine.lua")
load("/data/general/npcs/snake.lua")
load("/data/general/npcs/ooze.lua")
load("/data/general/npcs/jelly.lua")
load("/data/general/npcs/ant.lua")
load("/data/general/npcs/thieve.lua")
load("/data/general/npcs/minotaur.lua")
local Talents = require("engine.interface.ActorTalents")
......
......@@ -4,6 +4,7 @@ load("/data/general/npcs/canine.lua")
load("/data/general/npcs/snake.lua")
load("/data/general/npcs/swarm.lua")
load("/data/general/npcs/plant.lua")
load("/data/general/npcs/ant.lua")
local Talents = require("engine.interface.ActorTalents")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment