From 55641976df6c0fc2d07a4fca34284cb4b5409c90 Mon Sep 17 00:00:00 2001 From: dg <dg@51575b47-30f0-44d4-a5cc-537603b46e54> Date: Wed, 11 Aug 2010 23:07:49 +0000 Subject: [PATCH] ncier water floor git-svn-id: http://svn.net-core.org/repos/t-engine4@1013 51575b47-30f0-44d4-a5cc-537603b46e54 --- game/modules/tome/class/Game.lua | 2 +- game/modules/tome/class/Grid.lua | 40 ++++++- .../modules/tome/data/general/grids/water.lua | 9 ++ ...t_orihalcum.png => trident_orichalcum.png} | Bin game/modules/tome/data/gfx/terrain/shell1.png | Bin 0 -> 3392 bytes game/modules/tome/data/gfx/terrain/shell2.png | Bin 0 -> 3261 bytes game/modules/tome/data/gfx/terrain/shell3.png | Bin 0 -> 3644 bytes game/modules/tome/data/gfx/terrain/shell4.png | Bin 0 -> 2927 bytes game/modules/tome/data/gfx/terrain/shell5.png | Bin 0 -> 2927 bytes game/modules/tome/data/gfx/terrain/shell6.png | Bin 0 -> 4173 bytes .../modules/tome/data/gfx/terrain/shell6e.png | Bin 0 -> 2892 bytes .../tome/data/gfx/terrain/water_wall1.png | Bin 0 -> 3658 bytes .../tome/data/zones/caverns-osse/zone.lua | 2 +- .../tome/data/zones/gorbat-pride/grids.lua | 22 ++++ .../tome/data/zones/gorbat-pride/npcs.lua | 83 +++++++++++++++ .../tome/data/zones/gorbat-pride/objects.lua | 98 ++++++++++++++++++ .../tome/data/zones/gorbat-pride/zone.lua | 66 ++++++++++++ 17 files changed, 319 insertions(+), 3 deletions(-) rename game/modules/tome/data/gfx/object/{trident_orihalcum.png => trident_orichalcum.png} (100%) create mode 100644 game/modules/tome/data/gfx/terrain/shell1.png create mode 100644 game/modules/tome/data/gfx/terrain/shell2.png create mode 100644 game/modules/tome/data/gfx/terrain/shell3.png create mode 100644 game/modules/tome/data/gfx/terrain/shell4.png create mode 100644 game/modules/tome/data/gfx/terrain/shell5.png create mode 100644 game/modules/tome/data/gfx/terrain/shell6.png create mode 100644 game/modules/tome/data/gfx/terrain/shell6e.png create mode 100644 game/modules/tome/data/gfx/terrain/water_wall1.png create mode 100644 game/modules/tome/data/zones/gorbat-pride/grids.lua create mode 100644 game/modules/tome/data/zones/gorbat-pride/npcs.lua create mode 100644 game/modules/tome/data/zones/gorbat-pride/objects.lua create mode 100644 game/modules/tome/data/zones/gorbat-pride/zone.lua diff --git a/game/modules/tome/class/Game.lua b/game/modules/tome/class/Game.lua index 193c9b1d72..0a2ac1766a 100644 --- a/game/modules/tome/class/Game.lua +++ b/game/modules/tome/class/Game.lua @@ -475,7 +475,7 @@ function _M:setupCommands() self.player.esp.all = 1 self.player.esp.range = 50 self.player.inc_damage.all = 100000 - self:changeLevel(2, "rak-shor-pride") + self:changeLevel(2, "caverns-osse") -- self:changeLevel(1, "town-gates-of-morning") -- self:changeLevel(1, "wilderness-arda-fareast") -- game.memory_levels["wilderness-arda-fareast-1"] = game.level diff --git a/game/modules/tome/class/Grid.lua b/game/modules/tome/class/Grid.lua index a9a2091e5c..26b3549566 100644 --- a/game/modules/tome/class/Grid.lua +++ b/game/modules/tome/class/Grid.lua @@ -76,7 +76,6 @@ function _M:tooltip() end end - --- Generate sub entities to make nice trees function _M:makeTrees(base, max) local function makeTree(nb, z) @@ -105,6 +104,34 @@ function _M:makeTrees(base, max) return tbl end +--- Generate sub entities to make nice shells +function _M:makeShells(base, max) + local function makeShell(nb, z) + local inb = 4 - nb + return engine.Entity.new{ + z = z, + display_scale = rng.float(0.1 + inb / 6, 0.2), + display_x = rng.range(-engine.Map.tile_w / 3 * nb / 3, engine.Map.tile_w / 3 * nb / 3), + display_y = rng.range(-engine.Map.tile_h / 3 * nb / 3, engine.Map.tile_h / 3 * nb / 3), + display_on_seen = true, + display_on_remember = true, + image = (base or "terrain/tree_alpha")..rng.range(1,max or 5)..".png", + } + end + + local v = rng.range(0, 100) + local tbl + if v < 33 then + return nil + elseif v < 66 then + tbl = { makeShell(2, 2), makeShell(2, 3), } + else + tbl = { makeShell(1, 2), } + end + table.sort(tbl, function(a,b) return a.display_y < b.display_y end) + return tbl +end + --- Generate sub entities to make translucent water function _M:makeWater(z) return { engine.Entity.new{ @@ -115,3 +142,14 @@ function _M:makeWater(z) display_on_remember = true, } } end + +--- Merge sub entities +function _M:mergeSubEntities(...) + local tbl = {} + for i, t in ipairs{...} do if t then + for j, e in ipairs(t) do + tbl[#tbl+1] = e + end + end end + return tbl +end diff --git a/game/modules/tome/data/general/grids/water.lua b/game/modules/tome/data/general/grids/water.lua index 5f6aa52988..025327d297 100644 --- a/game/modules/tome/data/general/grids/water.lua +++ b/game/modules/tome/data/general/grids/water.lua @@ -28,6 +28,15 @@ newEntity{ add_displays = class:makeWater(true), air_level = -5, air_condition="water", } +for i = 2, 20 do +newEntity{ + define_as = "WATER_FLOOR"..i, + name = "underwater", image = "terrain/water_floor.png", + display = '.', color=colors.LIGHT_BLUE, back_color=colors.DARK_BLUE, + add_displays = class:mergeSubEntities(class:makeWater(true), class:makeShells("terrain/shell")), + air_level = -5, air_condition="water", +} +end newEntity{ define_as = "WATER_WALL", diff --git a/game/modules/tome/data/gfx/object/trident_orihalcum.png b/game/modules/tome/data/gfx/object/trident_orichalcum.png similarity index 100% rename from game/modules/tome/data/gfx/object/trident_orihalcum.png rename to game/modules/tome/data/gfx/object/trident_orichalcum.png diff --git a/game/modules/tome/data/gfx/terrain/shell1.png b/game/modules/tome/data/gfx/terrain/shell1.png new file mode 100644 index 0000000000000000000000000000000000000000..2cba11422766d324540fef91dbc43509bacd22cc GIT binary patch literal 3392 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 W`2igC#)1?80000<MNUMnLSTY2w@W(! literal 0 HcmV?d00001 diff --git a/game/modules/tome/data/gfx/terrain/shell2.png b/game/modules/tome/data/gfx/terrain/shell2.png new file mode 100644 index 0000000000000000000000000000000000000000..194dbaa382cc9f0717f30b374852419e728803a4 GIT binary patch literal 3261 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 literal 0 HcmV?d00001 diff --git a/game/modules/tome/data/gfx/terrain/shell3.png b/game/modules/tome/data/gfx/terrain/shell3.png new file mode 100644 index 0000000000000000000000000000000000000000..3e92573e0a31cefd5ed1187106dbd11842c84628 GIT binary patch literal 3644 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 O0000<MNUMnLSTZ*Ezr*Z literal 0 HcmV?d00001 diff --git a/game/modules/tome/data/gfx/terrain/shell4.png b/game/modules/tome/data/gfx/terrain/shell4.png new file mode 100644 index 0000000000000000000000000000000000000000..4295400d7777d9242ff1abd3bf8e38e5c0d35bb9 GIT binary patch literal 2927 zcmV-#3y}1QP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800009a7bBm000ie z000ie0hKEb8vp<bPiaF#P*7-ZbZ>KLZ*U+<Lqi~Na&Km7Y-Iodc-oy)XH-+^7Crag z^g>IBfRsybQWXdwQbLP>6p<z>Aqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uh<iVD~V z<RPMtgQJLw%KPDaqifc@_vX$1wbwr9tn;0-&j-K=43<bUQ8j=JsX`tR;Dg7+#^K~H zK!FM*Z~zbpvt%K2{UZSY_<lS*D<Z%Lz5oGu(+dayz)hRLFdT>f59&ghTmgWD0l;*T zI7<kC6aYYajzXpYKt=(8otP$50H6c_V9R4-;{Z@C0AMG7=F<Rxo%or10RUT+Ar%3j zkpLhQWr#!oXgdI`&sK^>09Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-<?i z0%4j!F2Z@488U%158(66005wo6%pWr^Zj_v4zAA5HjcIqUoGmt2LB>rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_<lS*MWK+n+1cgf z<k(8YLR(?VSAG6x!e78w{cQPuJpA|d;J)G{fihizM+Erb!p!tcr5w+a34~(Y=8s4G zw+sLL9n&JjNn*KJDiq^U5^;`1nvC-@r6P$!k}1U{(*I=Q-z@tBKHoI}uxdU5dyy@u zU1J0GOD7Ombim^G008p4Z^6_k2m^p<gW=D2|L;HjN1!DDfM!XOaR2~bL?kX$%CkSm z2mk;?pn)o|K^yeJ7%adB9Ki+L!3+FgHiSYX#KJ-lLJDMn9CBbOtb#%)hRv`YDqt_v zKpix|QD}yfa1JiQRk#j4a1Z)n2%f<xynzV>LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_Ifq<Ex{*7`05XF7hP+2Hl!3BQJ=6@fL%FCo z8iYoo3(#bAF`ADSpqtQgv>H8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ<AYmRsNLWl*PS{AOARHt#5!wki2?K;t z!Y3k=s7tgax)J%r7-BLphge7~Bi0g+6E6^Zh(p9TBoc{3GAFr^0!gu?RMHaCM$&Fl zBk3%un>0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 z<uv66WtcKSRim0x-Ke2d5jBrmLam{;Qm;{ms1r1GnmNsb7D-E`t)i9F8fX`2_i3-_ zbh;7Ul^#x)&{xvS=|||7=mYe33=M`AgU5(xC>fg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vF<Q0r40Q)j6=sE4X&sBct1q<&fbi3VB2Ov6t@q*0);U*o*SAPZv|vv@2aYYnT0 zb%8a+Cb7-ge0D0knEf5Qi#@8Tp*ce{N;6lpQuCB%KL_KOarm5cP6_8Ir<e17iry6O zDdH&`rZh~sF=bq9s+O0QSgS~@QL9Jmy*94xr=6y~MY~!1fet~(N+(<=M`w@D1)b+p z*;C!83a1uLJv#NSE~;y#8=<>IcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a<fJbF^|4I#xQ~n$Dc= zKYhjYmgz5NSkDm8*fZm{6U!;YX`NG>(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-k<Mujg;0Lz*3buG=3$G&ehepthlN*$KaOySSQ^nWmo<0M+(UEUMEXRQ zMBbZcF;6+KElM>iKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BK<z=<L*0kfKU@CX*zeqbYQT4(^U>T#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot<a{81DF0~rvGr5Xr~8u`lav1h z1DNytV>2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0001*Nkl<Zc-mt8|NlS3KmsO)0S2QE7<Is?16U~0+?DJ%RaKhrlY*kqTMmB32bw{J zYv|^HY2}$!!t6iU7+$}wc>ntcgQ(j7a=M1Vzi;mZ85o%Vaq)06Fi9!obFuS&A;%m> zN{ZrH@!r!VMJ1mLvNJH)w9aXwy8}kE;iv;f9Wd&EQ3s4VVAKJl4j6U7uy6nX00960 Z0|3pDB=u?}%WVJv002ovPDHLkV1k{!a;E?Q literal 0 HcmV?d00001 diff --git a/game/modules/tome/data/gfx/terrain/shell5.png b/game/modules/tome/data/gfx/terrain/shell5.png new file mode 100644 index 0000000000000000000000000000000000000000..4295400d7777d9242ff1abd3bf8e38e5c0d35bb9 GIT binary patch literal 2927 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 Z0|3pDB=u?}%WVJv002ovPDHLkV1k{!a;E?Q literal 0 HcmV?d00001 diff --git a/game/modules/tome/data/gfx/terrain/shell6.png b/game/modules/tome/data/gfx/terrain/shell6.png new file mode 100644 index 0000000000000000000000000000000000000000..c1788877f819fe9af00e07a165885facc58a0485 GIT binary patch literal 4173 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 XGe6O)E4OH300000NkvXXu0mjf{+jnW literal 0 HcmV?d00001 diff --git a/game/modules/tome/data/gfx/terrain/shell6e.png b/game/modules/tome/data/gfx/terrain/shell6e.png new file mode 100644 index 0000000000000000000000000000000000000000..0bcaf47ebcf7117a61fa3124d1a079e1d1febcbd GIT binary patch literal 2892 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 literal 0 HcmV?d00001 diff --git a/game/modules/tome/data/gfx/terrain/water_wall1.png b/game/modules/tome/data/gfx/terrain/water_wall1.png new file mode 100644 index 0000000000000000000000000000000000000000..834863e133ea39daeadef228da2eae0a05db084c GIT binary patch literal 3658 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 literal 0 HcmV?d00001 diff --git a/game/modules/tome/data/zones/caverns-osse/zone.lua b/game/modules/tome/data/zones/caverns-osse/zone.lua index b965befde3..8d096d90e1 100644 --- a/game/modules/tome/data/zones/caverns-osse/zone.lua +++ b/game/modules/tome/data/zones/caverns-osse/zone.lua @@ -37,7 +37,7 @@ return { class = "engine.generator.map.Cavern", zoom = 16, min_floor = 1200, - floor = "WATER_FLOOR", + floor = {"WATER_FLOOR","WATER_FLOOR2","WATER_FLOOR3","WATER_FLOOR4","WATER_FLOOR5","WATER_FLOOR6","WATER_FLOOR7","WATER_FLOOR8","WATER_FLOOR9","WATER_FLOOR10","WATER_FLOOR11","WATER_FLOOR12","WATER_FLOOR13","WATER_FLOOR14","WATER_FLOOR15","WATER_FLOOR16","WATER_FLOOR17","WATER_FLOOR18","WATER_FLOOR19","WATER_FLOOR20",}, wall = "WATER_WALL", up = "UP", down = "DOWN", diff --git a/game/modules/tome/data/zones/gorbat-pride/grids.lua b/game/modules/tome/data/zones/gorbat-pride/grids.lua new file mode 100644 index 0000000000..17d13d0604 --- /dev/null +++ b/game/modules/tome/data/zones/gorbat-pride/grids.lua @@ -0,0 +1,22 @@ +-- 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/forest.lua") +load("/data/general/grids/water.lua") diff --git a/game/modules/tome/data/zones/gorbat-pride/npcs.lua b/game/modules/tome/data/zones/gorbat-pride/npcs.lua new file mode 100644 index 0000000000..a1b24baa29 --- /dev/null +++ b/game/modules/tome/data/zones/gorbat-pride/npcs.lua @@ -0,0 +1,83 @@ +-- 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/orc.lua", rarity(3)) +load("/data/general/npcs/orc-vor.lua", rarity(0)) + +load("/data/general/npcs/all.lua", rarity(4, 35)) + +local Talents = require("engine.interface.ActorTalents") + +newEntity{ base="BASE_NPC_ORC_VOR", define_as = "VOR", + name = "Vor, Grand Geomancer of the Pride", color=colors.VIOLET, unique = true, + desc = [[An old orc, wearing multi-colored robes. Ice shards fly around him, leaving a trail of fire and lightning bursts.]], + level_range = {40, 50}, exp_worth = 2, + rank = 5, + max_life = 250, life_rating = 19, fixed_rating = true, + infravision = 20, + stats = { str=12, dex=10, cun=12, mag=21, con=14 }, + move_others=true, + + combat_armor = 10, combat_def = 10, + + open_door = true, + + autolevel = "caster", + ai = "dumb_talented_simple", ai_state = { talent_in=1, ai_move="move_astar", }, + + body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1, HEAD=1 }, + + resolvers.equip{ + {type="weapon", subtype="staff", ego_change=100, autoreq=true}, + {type="armor", subtype="cloth", ego_change=100, autoreq=true}, + {type="armor", subtype="head", defined="CROWN_ELEMENTS", autoreq=true}, + }, + resolvers.drops{chance=100, nb=1, {defined="ORB_ELEMENTS"} }, + resolvers.drops{chance=100, nb=5, {ego_chance=100} }, + + resolvers.talents{ + [Talents.T_FLAME]=5, + [Talents.T_FLAMESHOCK]=5, + [Talents.T_FIREFLASH]=5, + [Talents.T_INFERNO]=5, + [Talents.T_BLASTWAVE]=5, + [Talents.T_DANCING_FIRES]=5, + [Talents.T_COMBUST]=5, + + [Talents.T_FREEZE]=5, + [Talents.T_ICE_STORM]=5, + [Talents.T_TIDAL_WAVE]=5, + [Talents.T_ICE_SHARDS]=5, + [Talents.T_FROZEN_GROUND]=5, + + [Talents.T_LIGHTNING]=5, + [Talents.T_CHAIN_LIGHTNING]=5, + + [Talents.T_SPELL_SHAPING]=5, + [Talents.T_ESSENCE_OF_SPEED]=1, + }, + resolvers.sustains_at_birth(), + + on_die = function(self, who) + game.player:resolveSource():setQuestStatus("orc-pride", engine.Quest.COMPLETED, "vor") + if not game.player:hasQuest("pre-mount-doom") then + game.player:grantQuest("pre-mount-doom") + end + end, +} diff --git a/game/modules/tome/data/zones/gorbat-pride/objects.lua b/game/modules/tome/data/zones/gorbat-pride/objects.lua new file mode 100644 index 0000000000..329ad261d6 --- /dev/null +++ b/game/modules/tome/data/zones/gorbat-pride/objects.lua @@ -0,0 +1,98 @@ +-- 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") + +local Stats = require"engine.interface.ActorStats" + + +newEntity{ base = "BASE_LEATHER_CAP", + define_as = "CROWN_ELEMENTS", rarity=false, + name = "Crown of the Elements", unique=true, + unided_name = "jeweled crown", color=colors.DARK_GREY, + desc = [[Jeweled crown]], + cost = 500, + material_level = 5, + wielder = { + inc_stats = { [Stats.STAT_CON] = 5, [Stats.STAT_WIL] = 3, }, + resists={ + [DamageType.FIRE] = 15, + [DamageType.COLD] = 15, + [DamageType.ACID] = 15, + [DamageType.LIGHTNING] = 15, + }, + melee_project={ + [DamageType.FIRE] = 10, + [DamageType.COLD] = 10, + [DamageType.ACID] = 10, + [DamageType.LIGHTNING] = 10, + }, + see_invisible = 15, + combat_armor = 5, + fatigue = 5, + }, +} + +-- Artifact, randomly dropped in Vor Pride, and only there +newEntity{ base = "BASE_SCROLL", subtype="tome", + name = "Tome of Wildfire", unided_name = "burning book", unique=true, + color = colors.VIOLET, + level_range = {35, 45}, + rarity = 200, + cost = 100, + + use_simple = { name="learn the ancient secrets", use = function(self, who) + if not who:knowTalent(who.T_FLAME) then + who:learnTalent(who.T_FLAME, true, 3) + game.logPlayer(who, "#00FFFF#You read the tome and learn about ancient forgotten fire magic!") + else + who.talents_types_mastery["spell/fire"] = (who.talents_types_mastery["spell/fire"] or 1) + 0.1 + who.talents_types_mastery["spell/wildfire"] = (who.talents_types_mastery["spell/wildfire"] or 1) + 0.1 + game.logPlayer(who, "#00FFFF#You read the tome and perfect your mastery of fire magic!") + end + + game:setAllowedBuild("mage_pyromancer", true) + + return "destroy", true + end} +} + +-- Artifact, randomly dropped in Vor Pride, and only there +newEntity{ base = "BASE_SCROLL", subtype="tome", + name = "Tome of Uttercold", unided_name = "frozen book", unique=true, + color = colors.VIOLET, + level_range = {35, 45}, + rarity = 200, + cost = 100, + + use_simple = { name="learn the ancient secrets", use = function(self, who) + if not who:knowTalent(who.T_ICE_STORM) then + who:learnTalent(who.T_ICE_STORM, true, 3) + game.logPlayer(who, "#00FFFF#You read the tome and learn about ancient forgotten ice magic!") + else + who.talents_types_mastery["spell/water"] = (who.talents_types_mastery["spell/water"] or 1) + 0.1 + who.talents_types_mastery["spell/ice"] = (who.talents_types_mastery["spell/ice"] or 1) + 0.1 + game.logPlayer(who, "#00FFFF#You read the tome and perfect your mastery of ice magic!") + end + + game:setAllowedBuild("mage_cryomancer", true) + + return "destroy", true + end} +} diff --git a/game/modules/tome/data/zones/gorbat-pride/zone.lua b/game/modules/tome/data/zones/gorbat-pride/zone.lua new file mode 100644 index 0000000000..fc9c9eca2d --- /dev/null +++ b/game/modules/tome/data/zones/gorbat-pride/zone.lua @@ -0,0 +1,66 @@ +-- 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 = "Gorbat Pride", + level_range = {35, 40}, + level_scheme = "player", + max_level = 5, + 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 = 50, height = 50, + persistent = "zone", +-- all_remembered = true, + all_lited = true, + ambiant_music = "Breaking the siege.ogg", + generator = { + map = { + class = "engine.generator.map.Town", + building_chance = 70, + max_building_w = 8, max_building_h = 8, + edge_entrances = {6,4}, + floor = "FLOOR", + external_floor = "FLOOR", + wall = "WALL", + up = "UP", + down = "DOWN", + door = "DOOR", + }, + actor = { + class = "engine.generator.actor.Random", + nb_npc = {20, 30}, + guardian = "GORBAT", + }, + object = { + class = "engine.generator.object.Random", + nb_object = {3, 6}, + }, + }, + post_process = function(level) + for uid, e in pairs(level.entities) do e.faction="orc-pride" end + end, + levels = + { + [1] = { + generator = { map = { + up = "UP_WILDERNESS_FAR_EAST", + }, }, + }, + }, +} -- GitLab