Skip to content
Snippets Groups Projects
Commit 2205448e authored by dg's avatar dg
Browse files

briagh lair

git-svn-id: http://svn.net-core.org/repos/t-engine4@1268 51575b47-30f0-44d4-a5cc-537603b46e54
parent bdf60e04
No related branches found
No related tags found
No related merge requests found
......@@ -21,11 +21,16 @@ newChat{ id="welcome",
text = [[#LIGHT_GREEN#*A slot in the door opens and a pair of wild eyes peer out.*#WHITE#
What do you want, @playerdescriptor.race@?]],
answers = {
{"Paladin Aeryn told me that you could help me. I need to get to Middle Earth.", jump="help"},
{"Paladin Aeryn told me that you could help me. I need to get to Middle Earth.", jump="help", cond=function(npc, player) return not player:hasQuest("west-portal") end},
{"I found the Blood-Runed Athame, but there was no Resonating Diamond.", jump="athame", cond=function(npc, player) return player:hasQuest("west-portal") and player:hasQuest("west-portal"):isCompleted("athame") end},
{"Sorry, I have to go!"},
}
}
-----------------------------------------------------------------
-- Give quest
-----------------------------------------------------------------
newChat{ id="help",
text = [[Pfaugh! Her goal in life is to waste my time! Middle Earth? Why not Narnia or Chicago? Just as easy to send you someplace entirely fictional as Middle Earth. Go away.
#LIGHT_GREEN#*Slot slams shut.*#WHITE#]],
......@@ -70,4 +75,39 @@ newChat{ id="quest",
}
}
-----------------------------------------------------------------
-- Return athame
-----------------------------------------------------------------
newChat{ id="athame",
text = [[Of course there was no Resonating Diamond. What makes you think Briagh would let one loose for even a second?]],
answers = {
{"Briagh?", jump="athame2"},
}
}
newChat{ id="athame2",
text = [[Briagh the Great Sand Wyrm. Where do you think Resonating Diamonds come from? They're just regular diamonds until they get stuck between Briagh's scales for a few centuries and get infused with his life rhythms. He sleeps on a hoard of precious gems and metals, you see.]],
answers = {
{"Where might I find Briagh's lair??", jump="athame3"},
}
}
newChat{ id="athame3",
text = [[Well south of the Sunwall. I'll mark it for you on your map.]],
answers = {
{"I'll be back with a Resonating Diamond.", action=function(npc, player) player:hasQuest("west-portal"):wyrm_lair(player) end},
}
}
-----------------------------------------------------------------
-- Return gem
-----------------------------------------------------------------
newChat{ id="help",
text = [[Pfaugh! Her goal in life is to waste my time! Middle Earth? Why not Narnia or Chicago? Just as easy to send you someplace entirely fictional as Middle Earth. Go away.
#LIGHT_GREEN#*Slot slams shut.*#WHITE#]],
answers = {
{"I got here from Middle Earth, didn't I? I have this magic Orb I looted from a dead orc, see, and...", jump="offer"},
}
}
return "welcome"
......@@ -66,6 +66,18 @@ newEntity{
end,
}
newEntity{
define_as = "SANDWALL_STABLE",
name = "sandwall", image = "terrain/sandwall.png",
display = '#', color={r=203,g=189,b=72}, back_color={r=93,g=79,b=22},
always_remember = true,
can_pass = {pass_wall=1},
does_block_move = true,
block_sight = true,
air_level = -10,
dig = "SAND",
}
newEntity{
define_as = "PALMTREE",
name = "tree", image = "terrain/sand.png",
......
......@@ -56,6 +56,21 @@ on_grant = function(self, who)
game.logPlayer(game.player, "Zemekkys points the location of Vor Armoury on your map.")
end
wyrm_lair = function(self, who)
-- Reveal entrances
local g = mod.class.Grid.new{
show_tooltip=true,
name="Entrance into the sandpit of Briagh",
display='>', color=colors.YELLOW,
notice = true,
change_level=1, change_zone="briagh-lair"
}
g:resolve() g:resolve(nil, true)
game.zone:addEntity(game.memory_levels["wilderness-arda-fareast-1"], g, "terrain", 67, 49)
game.logPlayer(game.player, "Zemekkys points the location of Briagh lair on your map.")
end
on_status_change = function(self, who, status, sub)
if sub then
-- if self:isCompleted() then
......
-- ToME - Tales of Middle-Earth
-- Copyright (C) 2009, 2010 Nicolas Casalini
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
--
-- Nicolas Casalini "DarkGod"
-- darkgod@te4.org
load("/data/general/grids/basic.lua")
load("/data/general/grids/sand.lua")
-- ToME - Tales of Middle-Earth
-- Copyright (C) 2009, 2010 Nicolas Casalini
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
--
-- Nicolas Casalini "DarkGod"
-- darkgod@te4.org
load("/data/general/npcs/spider.lua", rarity(0))
load("/data/general/npcs/all.lua", rarity(4, 35))
local Talents = require("engine.interface.ActorTalents")
newEntity{ define_as = "BRIAGH",
type = "dragon", subtype = "sand", unique = true,
name = "Briagh, Great Sand Wyrm",
display = "D", color=colors.VIOLET,
desc = [[A towering sand-drake stands before you. This wingless worm is mighty and could easily crush you.]],
level_range = {35, nil}, exp_worth = 2,
max_life = 350, life_rating = 29, fixed_rating = true,
max_mana = 900, mana_regen=100,
equilibrium_regen = -50,
infravision = 20,
stats = { str=25, dex=10, cun=8, mag=80, wil=20, con=20 },
move_others=true,
instakill_immune = 1,
blind_immune = 1,
no_breath = 1,
rank = 4,
size_category = 5,
combat = { dam=140, atk=130, apr=25, dammod={str=1.1} },
resists = { [DamageType.DARKNESS] = 70 },
can_pass = {pass_wall=20},
move_project = {[DamageType.DIG]=1},
body = { INVEN = 10, BODY=1 },
resolvers.drops{chance=100, nb=1, {defined="RESONATING_DIAMOND"}, },
resolvers.drops{chance=100, nb=10, {type="gem"} },
resolvers.talents{
[Talents.T_PROBABILITY_TRAVEL]=10,
[Talents.T_SUMMON]=1,
[Talents.T_SAND_BREATH]=8,
[Talents.T_STUN]=5,
[Talents.T_KNOCKBACK]=5,
},
resolvers.sustains_at_birth(),
summon = {
{type="vermin", subtype="sandworm", number=8, hasxp=false},
},
autolevel = "warrior",
ai = "dumb_talented_simple", ai_state = { ai_target="target_player_radius", sense_radius=400, talent_in=1, },
}
-- ToME - Tales of Middle-Earth
-- Copyright (C) 2009, 2010 Nicolas Casalini
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
--
-- Nicolas Casalini "DarkGod"
-- darkgod@te4.org
load("/data/general/objects/objects.lua")
newEntity{ base = "BASE_GEM",
define_as = "RESONATING_DIAMOND",
name = "Resonating Diamond", color=colors.VIOLET, unique=true,
cost = 500,
on_pickup = function(self, who)
if who == game.player then
who:setQuestStatus("west-portal", engine.Quest.COMPLETED, "gem")
return true
end
end,
}
-- ToME - Tales of Middle-Earth
-- Copyright (C) 2009, 2010 Nicolas Casalini
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
--
-- Nicolas Casalini "DarkGod"
-- darkgod@te4.org
load("/data/general/traps/water.lua")
-- ToME - Tales of Middle-Earth
-- Copyright (C) 2009, 2010 Nicolas Casalini
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
--
-- Nicolas Casalini "DarkGod"
-- darkgod@te4.org
return {
name = "Briagh's Lair",
level_range = {35, 50},
level_scheme = "player",
max_level = 1,
decay = {300, 800},
actor_adjust_level = function(zone, level, e) return zone.base_level + e:getRankLevelAdjust() + level.level-1 + rng.range(-1,2) end,
width = 140, height = 140,
-- all_remembered = true,
-- all_lited = true,
persistant = "zone",
generator = {
map = {
class = "engine.generator.map.Cavern",
zoom = 16,
min_floor = 1200,
floor = "SAND",
wall = "SANDWALL_STABLE",
up = "UP",
down = "DOWN",
door = "SAND",
},
actor = {
class = "engine.generator.actor.Random",
nb_npc = {120, 140},
guardian = "BRIAGH",
},
object = {
class = "engine.generator.object.Random",
nb_object = {6, 9},
},
trap = {
class = "engine.generator.trap.Random",
nb_object = {0, 0},
},
},
levels =
{
[1] = {
generator = { map = {
up = "UP_WILDERNESS_FAR_EAST",
}, },
},
},
}
......@@ -26,8 +26,8 @@ return {
actor_adjust_level = function(zone, level, e) return zone.base_level + e:getRankLevelAdjust() + level.level-1 + rng.range(-1,2) end,
width = 30, height = 30,
persistant = "zone",
all_remembered = true,
all_lited = true,
-- all_remembered = true,
-- all_lited = true,
ambiant_music = "Breaking the siege.ogg",
generator = {
map = {
......
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