From 488afdc60f139c5f77f1e7e8c910ea189b6e087b Mon Sep 17 00:00:00 2001 From: mc_cameri Date: Fri, 10 Dec 2004 20:30:52 +0000 Subject: git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@538 54d463be-8e91-2dee-dedb-b68131a5f0ec --- npc/other/mc_cameri/warper.txt | 529 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 529 insertions(+) create mode 100644 npc/other/mc_cameri/warper.txt (limited to 'npc/other/mc_cameri/warper.txt') diff --git a/npc/other/mc_cameri/warper.txt b/npc/other/mc_cameri/warper.txt new file mode 100644 index 000000000..fd1f400d8 --- /dev/null +++ b/npc/other/mc_cameri/warper.txt @@ -0,0 +1,529 @@ +//===== eAthena Script ======================================= +//= Warp NPC +//===== By: ================================================== +//= MC Cameri +//===== Current Version: ===================================== +//= 1.0 +//===== Compatible With: ===================================== +//= Any eAthena Version with duplicate; RO Ep6+ +//===== Description: ========================================= +//= Warp NPC with warp to almost everywhere that show how +//= many people are on each map +//===== Additional Comments: ================================= +//= Most of the code here has been taken from warper2.txt in +//= the folder /npc/other/. +//= Credits given to Someone(that's his nickname). +//============================================================ + +- script Warp NPC::warpra 115,{ +// colors + set @red$,"^FF0000"; + set @reset$,"^000000"; + +// towns + set @alberta,getmapusers("alberta.gat"); + set @aldebaran,getmapusers("aldebaran.gat"); + set @amatsu,getmapusers("amatsu.gat"); + set @comodo,getmapusers("comodo.gat"); + set @gonryun,getmapusers("gonryun.gat"); + set @geffen,getmapusers("geffen.gat"); + set @izlude,getmapusers("izlude.gat"); + set @lutie,getmapusers("xmas.gat"); + set @morroc,getmapusers("morocc.gat"); + set @niflheim,getmapusers("niflheim.gat"); + set @payon,getmapusers("payon.gat"); + set @prontera,getmapusers("prontera.gat"); + set @yuno,getmapusers("yuno.gat"); + set @umbala,getmapusers("umbala.gat"); + set @valkyrie,getmapusers("valkyrie.gat"); + set @louyang,getmapusers("louyang.gat"); + set @towns, @alberta + @aldebaran + @amatsu + @comodo + @gonryun + @geffen + @izlude + @lutie + @morroc + @niflheim + @payon + @prontera + @yuno + @umbala + @valkyrie + @louyang; +// dungeons + set @danthell1,getmapusers("anthell01.gat"); + set @danthell2,getmapusers("anthell02.gat"); + set @anthell, @danthell1 + @danthell2; + + set @dbeach1,getmapusers("beach_dun.gat"); + set @dbeach2,getmapusers("beach_dun2.gat"); + set @dbeach3,getmapusers("beach_dun3.gat"); + set @beach, @dbeach1 + @dbeach2 + @dbeach3; + + set @dbyalan1,getmapusers("iz_dun00.gat"); + set @dbyalan2,getmapusers("iz_dun01.gat"); + set @dbyalan3,getmapusers("iz_dun02.gat"); + set @dbyalan4,getmapusers("iz_dun03.gat"); + set @dbyalan5,getmapusers("iz_dun04.gat"); + set @dbyalan, @dbyalan1 + @dbyalan2 + @dbyalan3 + @dbyalan4 + @dbyalan5; + + set @dalde1,getmapusers("alde_dun01.gat"); + set @dalde2,getmapusers("alde_dun02.gat"); + set @dalde3,getmapusers("alde_dun03.gat"); + set @dalde4,getmapusers("alde_dun04.gat"); + set @dclock1,getmapusers("c_tower1.gat"); + set @dclock2,getmapusers("c_tower2.gat"); + set @dclock3,getmapusers("c_tower3.gat"); + set @dclock4,getmapusers("c_tower4.gat"); + set @clock, @alde1 + @alde2 + @alde3 + @alde4 + @dclock1 + @dclock2 + @dclock3 + @dclock4; + + set @dcoal1,getmapusers("mjo_dun01.gat"); + set @dcoal2,getmapusers("mjo_dun02.gat"); + set @dcoal3,getmapusers("mjo_dun03.gat"); + set @coal, @dcoal1 + @dcoal2 + @dcoal3; + + set @dculvert1,getmapusers("prt_sewb1.gat"); + set @dculvert2,getmapusers("prt_sewb2.gat"); + set @dculvert3,getmapusers("prt_sewb3.gat"); + set @dculvert4,getmapusers("prt_sewb4.gat"); + set @culvert, @dculvert1 + @dculvert2 + @dculvert3 + @dculvert4; + + set @dgeffen1,getmapusers("gef_dun00.gat"); + set @dgeffen2,getmapusers("gef_dun01.gat"); + set @dgeffen3,getmapusers("gef_dun02.gat"); + set @dgeffen4,getmapusers("gef_dun03.gat"); + set @geffen, @dgeffen1 + @dgeffen2 + @dgeffen3 + @dgeffen4; + + set @dglastent,getmapusers("glast_01.gat"); + set @dglastcast1,getmapusers("gl_cas01.gat"); + set @dglastcast2,getmapusers("gl_cas02.gat"); + set @dglastchiv1,getmapusers("gl_knt01.gat"); + set @dglastchiv2,getmapusers("gl_knt02.gat"); + set @dglastyard,getmapusers("gl_chyard.gat"); + set @dglastcul1,getmapusers("gl_sew01.gat"); + set @dglastcul2,getmapusers("gl_sew02.gat"); + set @dglastcul3,getmapusers("gl_sew03.gat"); + set @dglastcul4,getmapusers("gl_sew04.gat"); + set @dglastchur,getmapusers("gl_church.gat"); + set @dglaststep,getmapusers("gl_step.gat"); + set @dglastcave1,getmapusers("gl_dun01.gat"); + set @dglastcave2,getmapusers("gl_dun02.gat"); + set @dglastpris1,getmapusers("gl_prison.gat"); + set @dglastpris2,getmapusers("gl_prison1.gat"); + set @glast, @dglastent + @dglastcast1 + @dglastcast2 + @dglastchiv1 + @dglastchiv2 + + @dglastyard + @dglastcul1 + @dglastcul2 + @dglastcul3 + @dglastcul4 + @dglastchur + + @dglaststep + @dglastcave1 + @dglastcave2 + @dglastpris1 + @dglastpris2; + + set @dhidden1,getmapusers("prt_maze01.gat"); + set @dhidden2,getmapusers("prt_maze02.gat"); + set @dhidden3,getmapusers("prt_maze03.gat"); + set @hidden, @dhidden1 + @dhidden2 + @dhidden3; + + set @dmagma1,getmapusers("mag_dun01.gat"); + set @dmagma2,getmapusers("mag_dun02.gat"); + set @magma, @dmagma1 + @dmagma2; + + set @dorc1,getmapusers("orcsdun01.gat"); + set @dorc2,getmapusers("orcsdun02.gat"); + set @orc, @dorc1 + @dorc2; + + set @dpayon1,getmapusers("pay_dun00.gat"); + set @dpayon2,getmapusers("pay_dun01.gat"); + set @dpayon3,getmapusers("pay_dun02.gat"); + set @dpayon4,getmapusers("pay_dun03.gat"); + set @dpayon5,getmapusers("pay_dun04.gat"); + set @payond, @dpayon1 + @dpayon2 + @dpayon3 + @dpayon4 + @dpayon5; + + set @dpyramids1,getmapusers("moc_pryd01.gat"); + set @dpyramids2,getmapusers("moc_pryd02.gat"); + set @dpyramids3,getmapusers("moc_pryd03.gat"); + set @dpyramids4,getmapusers("moc_pryd04.gat"); + set @dpyramidsb1,getmapusers("moc_pryd05.gat"); + set @dpyramidsb2,getmapusers("moc_pryd06.gat"); + set @pyramids, @dpyramids1 + @dpyramids2 + @dpyramids3 + @dpyramids4 + @dpyramidsb1 + @dpyramidsb2; + + set @dsphinx1,getmapusers("in_sphinx1.gat"); + set @dsphinx2,getmapusers("in_sphinx2.gat"); + set @dsphinx3,getmapusers("in_sphinx3.gat"); + set @dsphinx4,getmapusers("in_sphinx4.gat"); + set @dsphinx5,getmapusers("in_sphinx5.gat"); + set @sphinx, @dsphinx1 + @dsphinx2 + @dsphinx3 + @dsphinx4 + @dsphinx5; + + set @dsunken1,getmapusers("treasure01.gat"); + set @dsunken2,getmapusers("treasure02.gat"); + set @sunken, @dsunken1 + @dsunken2; + + set @dtoy1,getmapusers("xmas_dun01.gat"); + set @dtoy2,getmapusers("xmas_dun02.gat"); + set @toy, @dtoy1 + @dtoy2; + + set @dturtleent,getmapusers("tur_dun01.gat"); + set @dturtle1,getmapusers("tur_dun02.gat"); + set @dturtle2,getmapusers("tur_dun03.gat"); + set @dturtle3,getmapusers("tur_dun04.gat"); + set @turtle, @dturtleent + @dturtle1 + @dturtle2 + @dturtle3; + + set @dama1,getmapusers("ama_dun01.gat"); + set @dama2,getmapusers("ama_dun02.gat"); + set @dama3,getmapusers("ama_dun03.gat"); + set @ama, @dama1 + @dama2 + @dama2; + + set @dgon1,getmapusers("gon_dun01.gat"); + set @dgon2,getmapusers("gon_dun02.gat"); + set @dgon3,getmapusers("gon_dun03.gat"); + set @gon, @dgon1 + @dgon2 + @dgon3; + + set @dgefenia1,getmapusers("gefenia01.gat"); + set @dgefenia2,getmapusers("gefenia02.gat"); + set @dgefenia3,getmapusers("gefenia03.gat"); + set @dgefenia4,getmapusers("gefenia04.gat"); + set @gefenia, @dgefenia1 + @dgefenia2 + @dgefenia3 + @dgefenia4; + + set @dungeons, @danthell1 + @danthell2 + @dbeach1 + @dbeach2 + @dbeach3 + + @dbyalan1 + @dbyalan2 + @dbyalan3 + @dbyalan4 + @dbyalan5 + @dalde1 + + @dalde2 + @dalde3 + @dalde4 + @dclock1 + @dclock2 + @dclock3 + @dclock4 + + @dcoal1 + @dcoal2 + @dcoal3 + @dculvert1 + @dculvert2 + @dculvert3 + + @dculvert4 + @dgeffen1 + @dgeffen2 + @dgeffen3 + @dgeffen4 + @dglastent + + @dglastcast1 + @dglastcast2 + @dglastchiv1 + @dglastchiv2 + @dglastyard + + @dglastcul1 + @dglastcul2 + @dglastcul3 + @dglastcul4 + @dglastchur + + @dglaststep + @dglastcave1 + @dglastcave2 + @dglastpris1 + @dglastpris2 + + @dhidden1 + @dhidden2 + @dhidden3 + @dmagma1 + @dmagma2 + @dorc1 + + @dorc2 + @dpayon1 + @dpayon2 + @dpayon3 + @dpayon4 + @dpayon5 + + @dpyramids1 + @dpyramids2 + @dpyramids3 + @dpyramids4 + @dpyramidsb1 + + @dpyramidsb2 + @dsphinx1 + @dsphinx2 + @dsphinx3 + @dsphinx4 + + @dsphinx5 + @dsunken1 + @dsunken2 + @dtoy1 + @dtoy2 + @dturtleent + + @dturtle1 + @dturtle2 + @dturtle3 + @dama1 + @dama2 + @dama3 + @dgon1 + + @dgon2 + @dgon3 + @dgefenia1 + @dgefenia2 + @dgefenia3 + @dgefenia4; + + mes "[Warp NPC]"; + mes "Hello, I can warp you to any Town and Dungeon! Were do you want to go?"; + next; + menu "Towns [" + @red$ + @towns + @reset$ + "]",town,"Dungeons [" + @red$ + @dungeons + @reset$ +"]",dungeon; +town: + menu "Alberta [" + @red$ + @alberta + @reset$ + "]",walberta, + "Aldebaran [" + @red$ + @aldebaran + @reset$ + "]",waldebaran, + "Amatsu [" + @red$ + @amatsu + @reset$ + "]",wamatsu, + "Comodo [" + @red$ + @comodo + @reset$ + "]",wcomodo, + "Gonryun [" + @red$ + @gonryun + @reset$ + "]",wgonryun, + "Geffen [" + @red$ + @geffen + @reset$ + "]",wgeffen, + "Izlude [" + @red$ + @izlude + @reset$ + "]",wizlude, + "Lutie [" + @red$ + @lutie + @reset$ + "]",wxmas, + "Morroc [" + @red$ + @morroc + @reset$ + "]",wmorroc, + "Niflheim [" + @red$ + @niflheim + @reset$ + "]",wniflheim, + "Payon [" + @red$ + @payon + @reset$ + "]",wpayon, + "Prontera [" + @red$ + @prontera + @reset$ + "]",wprontera, + "Yuno [" + @red$ + @yuno + @reset$ + "]",wyuno, + "Umbala [" + @red$ + @umbala + @reset$ + "]",wumbala, + "Valkyrie [" + @red$ + @valkyrie + @reset$ + "]",wvalk, + "Louyang [" + @red$ + @louyang + @reset$ + "]",wlouyang; +dungeon: + menu "Amatsu Dungeon [" + @red$ + @ama + @reset$ + "]",ama, + "Gonryun Dungeon [" + @red$ + @gon + @reset$ + "]",gon, + "Anthell [" + @red$ + @anthell + @reset$ + "]",ant, + "Beach Dungeon [" + @red$ + @beach + @reset$ + "]",beach, + "Byalan Dungeon [" + @red$ + @byalan + @reset$ + "]",byalan, + "Clock Tower [" + @red$ + @clock + @reset$ + "]",clock, + "Coal Mines [" + @red$ + @coal + @reset$ + "]",coal, + "Culvert [" + @red$ + @culvert + @reset$ + "]",culvert, + "Geffen Dungeon [" + @red$ + @geffen + @reset$ + "]",geffen, + "Glast Heim [" + @red$ + @glast + @reset$ + "]",glast, + "Hidden Dungeon [" + @red$ + @hidden + @reset$ + "]",hidden, + "Magma Dungeon [" + @red$ + @magma + @reset$ + "]",magma, + "Orc Dungeon [" + @red$ + @orc + @reset$ + "]",orc, + "Payon Dungeon [" + @red$ + @payond + @reset$ + "]",payon, + "Pyramids [" + @red$ + @pyramids + @reset$ + "]",pyramids, + "Sphinx [" + @red$ + @sphinx + @reset$ + "]",sphinx, + "Sunken Ship [" + @red$ + @sunken + @reset$ + "]",sunken, + "Toy Factory [" + @red$ + @toy + @reset$ + "]",toy, + "Turtle Dungeon [" + @red$ + @tutrle + @reset$ + "]",turtle, + "Gefenia [" + @red$ + @gefenia + @reset$ + "]",gefenia; +ant: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @danthell1 + @reset$ + "]",danthell1, + "Level 2 [" + @red$ + @danthell2 + @reset$ + "]",danthell2; +beach: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dbeach1 + @reset$ + "]",dbeach1, + "Level 2 [" + @red$ + @dbeach2 + @reset$ + "]",dbeach2, + "Level 3 [" + @red$ + @dbeach3 + @reset$ + "]",dbeach3; +byalan: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dbyalan1 + @reset$ + "]",dbyalan1, + "Level 2 [" + @red$ + @dbyalan2 + @reset$ + "]",dbyalan2, + "Level 3 [" + @red$ + @dbyalan3 + @reset$ + "]",dbyalan3, + "Level 4 [" + @red$ + @dbyalan4 + @reset$ + "]",dbyalan4, + "Level 5 [" + @red$ + @dbyalan5 + @reset$ + "]",dbyalan5; +clock: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dclock1 + @reset$ + "]",dclock1, + "Level 2 [" + @red$ + @dclock2 + @reset$ + "]",dclock2, + "Level 3 [" + @red$ + @dclock3 + @reset$ + "]",dclock3, + "Level 4 [" + @red$ + @dclock4 + @reset$ + "]",dclock4, + "Basement 1 [" + @red$ + @dalde1 + @reset$ + "]",dalde1, + "Basement 2 [" + @red$ + @dalde2 + @reset$ + "]",dalde2, + "Basement 3 [" + @red$ + @dalde3 + @reset$ + "]",dalde3, + "Basement 4 [" + @red$ + @dalde4 + @reset$ + "]",dalde4; +coal: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dcoal1 + @reset$ + "]",dcoal1, + "Level 2 [" + @red$ + @dcoal2 + @reset$ + "]",dcoal2, + "Level 3 [" + @red$ + @dcoal3 + @reset$ + "]",dcoal3; +culvert: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dculvert1 + @reset$ + "]",dculvert1, + "Level 2 [" + @red$ + @dculvert2 + @reset$ + "]",dculvert2, + "Level 3 [" + @red$ + @dculvert3 + @reset$ + "]",dculvert3, + "Level 4 [" + @red$ + @dculvert4 + @reset$ + "]",dculvert4; +geffen: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dgeffen1 + @reset$ + "]",dgeffen1, + "Level 2 [" + @red$ + @dgeffen2 + @reset$ + "]",dgeffen2, + "Level 3 [" + @red$ + @dgeffen3 + @reset$ + "]",dgeffen3, + "Level 4 [" + @red$ + @dgeffen4 + @reset$ + "]",dgeffen4; +glast: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Entrance [" + @red$ + @dglastent + @reset$ + "]",dglastent, + "Castle 1 [" + @red$ + @dglastcast1 + @reset$ + "]",dglastcast1, + "Castle 2 [" + @red$ + @dglastcast2 + @reset$ + "]",dglastcast2, + "Chivalry 1 [" + @red$ + @dglastchiv1 + @reset$ + "]",dglastchiv1, + "Chivalry 2 [" + @red$ + @dglastchiv2 + @reset$ + "]",dglastchiv2, + "Churchyard [" + @red$ + @dglastyard + @reset$ + "]",dglastyard, + "Culvert 1 [" + @red$ + @dglastcul1 + @reset$ + "]",dglastcul1, + "Culvert 2 [" + @red$ + @dglastcul1 + @reset$ + "]",dglastcul1, + "Culvert 3 [" + @red$ + @dglastcul3 + @reset$ + "]",dglastcul3, + "Culvert 4 [" + @red$ + @dglastcul4 + @reset$ + "]",dglastcul4, + "St.Abbey [" + @red$ + @dglastchur + @reset$ + "]",dglastchur, + "Staircase Dungeon [" + @red$ + @dglaststep + @reset$ + "]",dglaststep, + "Underground Cave 1 [" + @red$ + @dglastcave1 + @reset$ + "]",dglastcave1, + "Underground Cave 2 [" + @red$ + @dglastcave2 + @reset$ + "]",dglastcave2, + "Underground Prison 1 [" + @red$ + @dglastpris1 + @reset$ + "]",dglastpris1, + "Underground Prison 2 [" + @red$ + @dglastpris2 + @reset$ + "]",dglastpris2; +hidden: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dhidden1 + @reset$ + "]",dhidden1, + "Level 2 [" + @red$ + @dhidden2 + @reset$ + "]",dhidden2, + "Level 3 [" + @red$ + @dhidden3 + @reset$ + "]",dhidden3; +magma: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dmagma1 + @reset$ + "]",dmagma1, + "Level 2 [" + @red$ + @dmagma2 + @reset$ + "]",dmagma2; +orc: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dorc1 + @reset$ + "]",dorc1, + "Level 2 [" + @red$ + @dorc2 + @reset$ + "]",dorc2; +payon: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dpayon1 + @reset$ + "]",dpayon1, + "Level 2 [" + @red$ + @dpayon2 + @reset$ + "]",dpayon2, + "Level 3 [" + @red$ + @dpayon3 + @reset$ + "]",dpayon3, + "Level 4 [" + @red$ + @dpayon4 + @reset$ + "]",dpayon4, + "Level 5 [" + @red$ + @dpayon5 + @reset$ + "]",dpayon5; +pyramids: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dpyramids1 + @reset$ + "]",dpyramids1, + "Level 2 [" + @red$ + @dpyramids2 + @reset$ + "]",dpyramids2, + "Level 3 [" + @red$ + @dpyramids3 + @reset$ + "]",dpyramids3, + "Level 4 [" + @red$ + @dpyramids4 + @reset$ + "]",dpyramids4, + "Basement 1 [" + @red$ + @dpyramidsb1 + @reset$ + "]",dpyramidsb1, + "Basement 2 [" + @red$ + @dpyramidsb2 + @reset$ + "]",dpyramidsb2; +sphinx: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dsphinx1 + @reset$ + "]",dsphinx1, + "Level 2 [" + @red$ + @dsphinx2 + @reset$ + "]",dsphinx2, + "Level 3 [" + @red$ + @dsphinx3 + @reset$ + "]",dsphinx3, + "Level 4 [" + @red$ + @dsphinx4 + @reset$ + "]",dsphinx4, + "Level 5 [" + @red$ + @dsphinx5 + @reset$ + "]",dsphinx5; +sunken: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dsunken1 + @reset$ + "]",dsunken1, + "Level 2 [" + @red$ + @dsunken2 + @reset$ + "]",dsunken2; +toy: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dtoy1 + @reset$ + "]",dtoy1, + "Level 2 [" + @red$ + @dtoy2 + @reset$ + "]",dtoy2; +turtle: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Entrance [" + @red$ + @dturtleent + @reset$ + "]",dturtleent, + "Level 1 [" + @red$ + @dturtle1 + @reset$ + "]",dturtle1, + "Level 2 [" + @red$ + @dturtle2 + @reset$ + "]",dturtle2, + "Level 3 [" + @red$ + @dturtle3 + @reset$ + "]",dturtle3; +ama: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dama1 + @reset$ + "]",dama1, + "Level 2 [" + @red$ + @dama2 + @reset$ + "]",dama2, + "Level 3 [" + @red$ + @dama3 + @reset$ + "]",dama3; +gon: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dgon1 + @reset$ + "]",dgon1, + "Level 2 [" + @red$ + @dgon2 + @reset$ + "]",dgon2, + "Level 3 [" + @red$ + @dgon3 + @reset$ + "]",dgon3; +gefenia: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + @dgefenia1 + @reset$ + "]",dgefenia1, + "Level 2 [" + @red$ + @dgefenia2 + @reset$ + "]",dgefenia2, + "Level 3 [" + @red$ + @dgefenia3 + @reset$ + "]",dgefenia3, + "Level 4 [" + @red$ + @dgefenia4 + @reset$ + "]",dgefenia4; + +//----------------Towns----------------\\ + +walberta: warp "alberta.gat",192,147; close; +waldebaran: warp "aldebaran.gat",140,131; close; +wamatsu: warp "amatsu.gat",198,84; close; +wcomodo: warp "comodo.gat",209,143; close; +wgonryun: warp "gonryun.gat",160,121; close; +wgeffen: warp "geffen.gat",119,59; close; +wizlude: warp "izlude.gat",128,114; close; +wxmas: warp "xmas.gat",147,134; close; +wmorroc: warp "morocc.gat",156,93; close; +wniflheim: warp "niflheim.gat",85,154; close; +wpayon: warp "payon.gat",152,75; close; +wprontera: warp "prontera.gat",156,191; close; +wyuno: warp "yuno.gat",157,51; close; +wumbala: warp "umbala.gat",145,155; close; +wlouyang: warp "louyang.gat",210,108; close; +wvalk: warp "valkyrie",48,8; close; + +//----------------Dungeons----------------\\ + +danthell1: warp "anthell01.gat",35,262; close; +danthell2: warp "anthell02.gat",168,170; close; +dbeach1: warp "beach_dun.gat",266,67; close; +dbeach2: warp "beach_dun2.gat",255,244; close; +dbeach3: warp "beach_dun3.gat",23,260; close; +dbyalan1: warp "iz_dun00.gat",168,168; close; +dbyalan2: warp "iz_dun01.gat",253,252; close; +dbyalan3: warp "iz_dun02.gat",236,204; close; +dbyalan4: warp "iz_dun03.gat",32,63; close; +dbyalan5: warp "iz_dun04.gat",26,27; close; +dalde1: warp "alde_dun01.gat",297,25; close; +dalde2: warp "alde_dun02.gat",127,169; close; +dalde3: warp "alde_dun03.gat",277,178; close; +dalde4: warp "alde_dun04.gat",268,74; close; +dclock1: warp "c_tower1.gat",199,159; close; +dclock2: warp "c_tower2.gat",148,283; close; +dclock3: warp "c_tower3.gat",65,147; close; +dclock4: warp "c_tower4.gat",56,155; close; +dcoal1: warp "mjo_dun01.gat",52,17; close; +dcoal2: warp "mjo_dun02.gat",381,343; close; +dcoal3: warp "mjo_dun03.gat",302,262; close; +dculvert1: warp "prt_sewb1.gat",131,247; close; +dculvert2: warp "prt_sewb2.gat",19,19; close; +dculvert3: warp "prt_sewb3.gat",180,169; close; +dculvert4: warp "prt_sewb4.gat",100,92; close; +dgeffen1: warp "gef_dun00.gat",104,99; close; +dgeffen2: warp "gef_dun01.gat",115,236; close; +dgeffen3: warp "gef_dun02.gat",106,132; close; +dgeffen4: warp "gef_dun03.gat",203,200; close; +dglastent: warp "glast_01.gat",375,304; close; +dglastcast1: warp "gl_cas01.gat",199,29; close; +dglastcast2: warp "gl_cas02.gat",104,25; close; +dglastchiv1: warp "gl_knt01.gat",150,15; close; +dglastchiv2: warp "gl_knt02.gat",157,287; close; +dglastyard: warp "gl_chyard.gat",147,15; close; +dglastcul1: warp "gl_sew01.gat",258,255; close; +dglastcul2: warp "gl_sew02.gat",108,291; close; +dglastcul3: warp "gl_sew03.gat",171,283; close; +dglastcul4: warp "gl_sew04.gat",68,277; close; +dglastchur: warp "gl_church.gat",156,7; close; +dglaststep: warp "gl_step.gat",12,7; close; +dglastcave1: warp "gl_dun01.gat",133,271; close; +dglastcave2: warp "gl_dun02.gat",224,274; close; +dglastpris1: warp "gl_prison.gat",14,70; close; +dglastpris2: warp "gl_prison1.gat",150,14; close; +dhidden1: warp "prt_maze01.gat",176,7; close; +dhidden2: warp "prt_maze02.gat",94,9; close; +dhidden3: warp "prt_maze03.gat",23,8; close; +dmagma1: warp "mag_dun01.gat",126,68; close; +dmagma2: warp "mag_dun02.gat",47,30; close; +dorc1: warp "orcsdun01.gat",32,170; close; +dorc2: warp "orcsdun02.gat",21,185; close; +dpayon1: warp "pay_dun00.gat",21,183; close; +dpayon2: warp "pay_dun01.gat",19,33; close; +dpayon3: warp "pay_dun02.gat",19,63; close; +dpayon4: warp "pay_dun03.gat",155,159; close; +dpayon5: warp "pay_dun04.gat",201,204; close; +dpyramids1: warp "moc_pryd01.gat",192,9; close; +dpyramids2: warp "moc_pryd02.gat",10,192; close; +dpyramids3: warp "moc_pryd03.gat",100,92; close; +dpyramids4: warp "moc_pryd04.gat",181,11; close; +dpyramidsb1: warp "moc_pryd05.gat",94,96; close; +dpyramidsb2: warp "moc_pryd06.gat",192,8; close; +dsphinx1: warp "in_sphinx1.gat",288,9; close; +dsphinx2: warp "in_sphinx2.gat",149,81; close; +dsphinx3: warp "in_sphinx3.gat",210,54; close; +dsphinx4: warp "in_sphinx4.gat",10,222; close; +dsphinx5: warp "in_sphinx5.gat",100,99; close; +dsunken1: warp "treasure01.gat",69,24; close; +dsunken2: warp "treasure02.gat",102,27; close; +dtoy1: warp "xmas_dun01.gat",205,15; close; +dtoy2: warp "xmas_dun02.gat",129,133; close; +dturtleent: warp "tur_dun01.gat",154,49; close; +dturtle1: warp "tur_dun02.gat",148,261; close; +dturtle2: warp "tur_dun03.gat",132,189; close; +dturtle3: warp "tur_dun04.gat",100,192; close; +dama1: warp "ama_dun01.gat",228,11; close; +dama2: warp "ama_dun02.gat",34,41; close; +dama3: warp "ama_dun03.gat",119,14; close; +dgon1: warp "gon_dun01.gat",153,53; close; +dgon2: warp "gon_dun02.gat",28,113; close; +dgon3: warp "gon_dun03.gat",68,16; close; +dgefenia1: warp "gefenia01.gat",40,103; close; +dgefenia2: warp "gefenia02.gat",203,34; close; +dgefenia3: warp "gefenia03.gat",266,168; close; +dgefenia4: warp "gefenia04.gat",130,272; close; +} +alberta.gat,31,240,4 duplicate(warpra) Warp NPC 115 +aldebaran.gat,145,118,4 duplicate(warpra) Warp NPC 115 +amatsu.gat,194,83,1 duplicate(warpra) Warp NPC 115 +comodo.gat,194,158,4 duplicate(warpra) Warp NPC 115 +geffen.gat,115,66,4 duplicate(warpra) Warp NPC 115 +izlude.gat,131,116,4 duplicate(warpra) Warp NPC 115 +xmas.gat,150,136,4 duplicate(warpra) Warp NPC 115 +morocc.gat,156,99,4 duplicate(warpra) Warp NPC 115 +payon.gat,182,110,4 duplicate(warpra) Warp NPC 115 +prontera.gat,153,183,4 duplicate(warpra) Warp NPC 115 +yuno.gat,137,162,4 duplicate(warpra) Warp NPC 115 +moc_fild04.gat,207,331,4 duplicate(warpra) Warp NPC 115 +izlu2dun.gat,104,82,4 duplicate(warpra) Warp NPC 115 +mjolnir_02.gat,85,363,4 duplicate(warpra) Warp NPC 115 +prt_fild05.gat,273,215,4 duplicate(warpra) Warp NPC 115 +glast_01.gat,370,308,4 duplicate(warpra) Warp NPC 115 +yuno_fild03.gat,37,135,4 duplicate(warpra) Warp NPC 115 +gef_fild10.gat,71,339,4 duplicate(warpra) Warp NPC 115 +pay_arche.gat,39,135,4 duplicate(warpra) Warp NPC 115 +moc_ruins.gat,64,166,4 duplicate(warpra) Warp NPC 115 +moc_fild19.gat,106,97,4 duplicate(warpra) Warp NPC 115 +alb2trea.gat,73,101,4 duplicate(warpra) Warp NPC 115 +tur_dun01.gat,148,239,4 duplicate(warpra) Warp NPC 115 +gonryun.gat,151,130,4 duplicate(warpra) Warp NPC 115 +louyang.gat,210,106,4 duplicate(warpra) Warp NPC 115 +umbala.gat,132,130,4 duplicate(warpra) Warp NPC 115 +valkyrie.gat,48,35,8 duplicate(warpra) Warp NPC 115 -- cgit v1.2.3-70-g09d2 From c3ffff35f46705eb0866c754123c3b2abd27b376 Mon Sep 17 00:00:00 2001 From: mc_cameri Date: Sat, 11 Dec 2004 13:28:04 +0000 Subject: git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@547 54d463be-8e91-2dee-dedb-b68131a5f0ec --- npc/Changelog.txt | 4 +- npc/other/mc_cameri/warper.txt | 394 ++++++++++++++--------------------------- 2 files changed, 134 insertions(+), 264 deletions(-) (limited to 'npc/other/mc_cameri/warper.txt') diff --git a/npc/Changelog.txt b/npc/Changelog.txt index 81141f6ea..e9dda74d0 100644 --- a/npc/Changelog.txt +++ b/npc/Changelog.txt @@ -22,7 +22,7 @@ Shadowlady MC Cameri * Bank NPC - Now 100% done for new payon - * Warper NPC - 100% + * Warper NPC - 100%, fixed memory consumption problem * Heal NPC - 100% Other Ppl @@ -32,6 +32,8 @@ Other Ppl Date Added ====== +12/11 * Fixed memory consumption in npc/other/mc_cameri/warper.txt [MC Cameri] + 12/10 * Added npc/other/mc_cameri/warper.txt, a warp npc just like warper2.txt that shows how many people are on each map. [MC Cameri] * Newgearquests (14 files of 16) fixed possible exploits, added a missing close; diff --git a/npc/other/mc_cameri/warper.txt b/npc/other/mc_cameri/warper.txt index fd1f400d8..56b68b715 100644 --- a/npc/other/mc_cameri/warper.txt +++ b/npc/other/mc_cameri/warper.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= MC Cameri //===== Current Version: ===================================== -//= 1.0 +//= 2.0 //===== Compatible With: ===================================== //= Any eAthena Version with duplicate; RO Ep6+ //===== Description: ========================================= @@ -13,6 +13,9 @@ //= Most of the code here has been taken from warper2.txt in //= the folder /npc/other/. //= Credits given to Someone(that's his nickname). +//= 2.0 Increased performance by removing variables. +//= -Fixed the memory problem. +//= 1.0 First Version, consumed a lot of memory, about 2MB. //============================================================ - script Warp NPC::warpra 115,{ @@ -21,189 +24,54 @@ set @reset$,"^000000"; // towns - set @alberta,getmapusers("alberta.gat"); - set @aldebaran,getmapusers("aldebaran.gat"); - set @amatsu,getmapusers("amatsu.gat"); - set @comodo,getmapusers("comodo.gat"); - set @gonryun,getmapusers("gonryun.gat"); - set @geffen,getmapusers("geffen.gat"); - set @izlude,getmapusers("izlude.gat"); - set @lutie,getmapusers("xmas.gat"); - set @morroc,getmapusers("morocc.gat"); - set @niflheim,getmapusers("niflheim.gat"); - set @payon,getmapusers("payon.gat"); - set @prontera,getmapusers("prontera.gat"); - set @yuno,getmapusers("yuno.gat"); - set @umbala,getmapusers("umbala.gat"); - set @valkyrie,getmapusers("valkyrie.gat"); - set @louyang,getmapusers("louyang.gat"); - set @towns, @alberta + @aldebaran + @amatsu + @comodo + @gonryun + @geffen + @izlude + @lutie + @morroc + @niflheim + @payon + @prontera + @yuno + @umbala + @valkyrie + @louyang; + set @towns, getmapusers("alberta.gat") + getmapusers("aldebaran.gat") + getmapusers("amatsu.gat") + getmapusers("comodo.gat") + getmapusers("gonryun.gat") + getmapusers("geffen.gat") + getmapusers("izlude.gat") + getmapusers("xmas.gat") + getmapusers("morocc.gat") + getmapusers("niflheim.gat") + getmapusers("payon.gat") + getmapusers("prontera.gat") + getmapusers("yuno.gat") + getmapusers("umbala.gat") + getmapusers("valkyrie.gat") + getmapusers("louyang.gat"); // dungeons - set @danthell1,getmapusers("anthell01.gat"); - set @danthell2,getmapusers("anthell02.gat"); - set @anthell, @danthell1 + @danthell2; - - set @dbeach1,getmapusers("beach_dun.gat"); - set @dbeach2,getmapusers("beach_dun2.gat"); - set @dbeach3,getmapusers("beach_dun3.gat"); - set @beach, @dbeach1 + @dbeach2 + @dbeach3; - - set @dbyalan1,getmapusers("iz_dun00.gat"); - set @dbyalan2,getmapusers("iz_dun01.gat"); - set @dbyalan3,getmapusers("iz_dun02.gat"); - set @dbyalan4,getmapusers("iz_dun03.gat"); - set @dbyalan5,getmapusers("iz_dun04.gat"); - set @dbyalan, @dbyalan1 + @dbyalan2 + @dbyalan3 + @dbyalan4 + @dbyalan5; - - set @dalde1,getmapusers("alde_dun01.gat"); - set @dalde2,getmapusers("alde_dun02.gat"); - set @dalde3,getmapusers("alde_dun03.gat"); - set @dalde4,getmapusers("alde_dun04.gat"); - set @dclock1,getmapusers("c_tower1.gat"); - set @dclock2,getmapusers("c_tower2.gat"); - set @dclock3,getmapusers("c_tower3.gat"); - set @dclock4,getmapusers("c_tower4.gat"); - set @clock, @alde1 + @alde2 + @alde3 + @alde4 + @dclock1 + @dclock2 + @dclock3 + @dclock4; - - set @dcoal1,getmapusers("mjo_dun01.gat"); - set @dcoal2,getmapusers("mjo_dun02.gat"); - set @dcoal3,getmapusers("mjo_dun03.gat"); - set @coal, @dcoal1 + @dcoal2 + @dcoal3; - - set @dculvert1,getmapusers("prt_sewb1.gat"); - set @dculvert2,getmapusers("prt_sewb2.gat"); - set @dculvert3,getmapusers("prt_sewb3.gat"); - set @dculvert4,getmapusers("prt_sewb4.gat"); - set @culvert, @dculvert1 + @dculvert2 + @dculvert3 + @dculvert4; - - set @dgeffen1,getmapusers("gef_dun00.gat"); - set @dgeffen2,getmapusers("gef_dun01.gat"); - set @dgeffen3,getmapusers("gef_dun02.gat"); - set @dgeffen4,getmapusers("gef_dun03.gat"); - set @geffen, @dgeffen1 + @dgeffen2 + @dgeffen3 + @dgeffen4; - - set @dglastent,getmapusers("glast_01.gat"); - set @dglastcast1,getmapusers("gl_cas01.gat"); - set @dglastcast2,getmapusers("gl_cas02.gat"); - set @dglastchiv1,getmapusers("gl_knt01.gat"); - set @dglastchiv2,getmapusers("gl_knt02.gat"); - set @dglastyard,getmapusers("gl_chyard.gat"); - set @dglastcul1,getmapusers("gl_sew01.gat"); - set @dglastcul2,getmapusers("gl_sew02.gat"); - set @dglastcul3,getmapusers("gl_sew03.gat"); - set @dglastcul4,getmapusers("gl_sew04.gat"); - set @dglastchur,getmapusers("gl_church.gat"); - set @dglaststep,getmapusers("gl_step.gat"); - set @dglastcave1,getmapusers("gl_dun01.gat"); - set @dglastcave2,getmapusers("gl_dun02.gat"); - set @dglastpris1,getmapusers("gl_prison.gat"); - set @dglastpris2,getmapusers("gl_prison1.gat"); - set @glast, @dglastent + @dglastcast1 + @dglastcast2 + @dglastchiv1 + @dglastchiv2 - + @dglastyard + @dglastcul1 + @dglastcul2 + @dglastcul3 + @dglastcul4 + @dglastchur - + @dglaststep + @dglastcave1 + @dglastcave2 + @dglastpris1 + @dglastpris2; - - set @dhidden1,getmapusers("prt_maze01.gat"); - set @dhidden2,getmapusers("prt_maze02.gat"); - set @dhidden3,getmapusers("prt_maze03.gat"); - set @hidden, @dhidden1 + @dhidden2 + @dhidden3; - - set @dmagma1,getmapusers("mag_dun01.gat"); - set @dmagma2,getmapusers("mag_dun02.gat"); - set @magma, @dmagma1 + @dmagma2; - - set @dorc1,getmapusers("orcsdun01.gat"); - set @dorc2,getmapusers("orcsdun02.gat"); - set @orc, @dorc1 + @dorc2; - - set @dpayon1,getmapusers("pay_dun00.gat"); - set @dpayon2,getmapusers("pay_dun01.gat"); - set @dpayon3,getmapusers("pay_dun02.gat"); - set @dpayon4,getmapusers("pay_dun03.gat"); - set @dpayon5,getmapusers("pay_dun04.gat"); - set @payond, @dpayon1 + @dpayon2 + @dpayon3 + @dpayon4 + @dpayon5; - - set @dpyramids1,getmapusers("moc_pryd01.gat"); - set @dpyramids2,getmapusers("moc_pryd02.gat"); - set @dpyramids3,getmapusers("moc_pryd03.gat"); - set @dpyramids4,getmapusers("moc_pryd04.gat"); - set @dpyramidsb1,getmapusers("moc_pryd05.gat"); - set @dpyramidsb2,getmapusers("moc_pryd06.gat"); - set @pyramids, @dpyramids1 + @dpyramids2 + @dpyramids3 + @dpyramids4 + @dpyramidsb1 + @dpyramidsb2; - - set @dsphinx1,getmapusers("in_sphinx1.gat"); - set @dsphinx2,getmapusers("in_sphinx2.gat"); - set @dsphinx3,getmapusers("in_sphinx3.gat"); - set @dsphinx4,getmapusers("in_sphinx4.gat"); - set @dsphinx5,getmapusers("in_sphinx5.gat"); - set @sphinx, @dsphinx1 + @dsphinx2 + @dsphinx3 + @dsphinx4 + @dsphinx5; - - set @dsunken1,getmapusers("treasure01.gat"); - set @dsunken2,getmapusers("treasure02.gat"); - set @sunken, @dsunken1 + @dsunken2; - - set @dtoy1,getmapusers("xmas_dun01.gat"); - set @dtoy2,getmapusers("xmas_dun02.gat"); - set @toy, @dtoy1 + @dtoy2; - - set @dturtleent,getmapusers("tur_dun01.gat"); - set @dturtle1,getmapusers("tur_dun02.gat"); - set @dturtle2,getmapusers("tur_dun03.gat"); - set @dturtle3,getmapusers("tur_dun04.gat"); - set @turtle, @dturtleent + @dturtle1 + @dturtle2 + @dturtle3; - - set @dama1,getmapusers("ama_dun01.gat"); - set @dama2,getmapusers("ama_dun02.gat"); - set @dama3,getmapusers("ama_dun03.gat"); - set @ama, @dama1 + @dama2 + @dama2; - - set @dgon1,getmapusers("gon_dun01.gat"); - set @dgon2,getmapusers("gon_dun02.gat"); - set @dgon3,getmapusers("gon_dun03.gat"); - set @gon, @dgon1 + @dgon2 + @dgon3; - - set @dgefenia1,getmapusers("gefenia01.gat"); - set @dgefenia2,getmapusers("gefenia02.gat"); - set @dgefenia3,getmapusers("gefenia03.gat"); - set @dgefenia4,getmapusers("gefenia04.gat"); - set @gefenia, @dgefenia1 + @dgefenia2 + @dgefenia3 + @dgefenia4; - - set @dungeons, @danthell1 + @danthell2 + @dbeach1 + @dbeach2 + @dbeach3 - + @dbyalan1 + @dbyalan2 + @dbyalan3 + @dbyalan4 + @dbyalan5 + @dalde1 - + @dalde2 + @dalde3 + @dalde4 + @dclock1 + @dclock2 + @dclock3 + @dclock4 - + @dcoal1 + @dcoal2 + @dcoal3 + @dculvert1 + @dculvert2 + @dculvert3 - + @dculvert4 + @dgeffen1 + @dgeffen2 + @dgeffen3 + @dgeffen4 + @dglastent - + @dglastcast1 + @dglastcast2 + @dglastchiv1 + @dglastchiv2 + @dglastyard - + @dglastcul1 + @dglastcul2 + @dglastcul3 + @dglastcul4 + @dglastchur - + @dglaststep + @dglastcave1 + @dglastcave2 + @dglastpris1 + @dglastpris2 - + @dhidden1 + @dhidden2 + @dhidden3 + @dmagma1 + @dmagma2 + @dorc1 - + @dorc2 + @dpayon1 + @dpayon2 + @dpayon3 + @dpayon4 + @dpayon5 - + @dpyramids1 + @dpyramids2 + @dpyramids3 + @dpyramids4 + @dpyramidsb1 - + @dpyramidsb2 + @dsphinx1 + @dsphinx2 + @dsphinx3 + @dsphinx4 - + @dsphinx5 + @dsunken1 + @dsunken2 + @dtoy1 + @dtoy2 + @dturtleent - + @dturtle1 + @dturtle2 + @dturtle3 + @dama1 + @dama2 + @dama3 + @dgon1 - + @dgon2 + @dgon3 + @dgefenia1 + @dgefenia2 + @dgefenia3 + @dgefenia4; + set @anthell, getmapusers("anthell01.gat") + getmapusers("anthell02.gat"); + set @beach, getmapusers("beach_dun.gat") + getmapusers("beach_dun2.gat") + getmapusers("beach_dun3.gat"); + set @byalan, getmapusers("iz_dun00.gat") + getmapusers("iz_dun01.gat") + getmapusers("iz_dun02.gat") + getmapusers("iz_dun03.gat") + getmapusers("iz_dun04.gat"); + set @clock, getmapusers("alde_dun01.gat") + getmapusers("alde_dun02.gat") + getmapusers("alde_dun03.gat") + getmapusers("alde_dun04.gat") + getmapusers("c_tower1.gat") + getmapusers("c_tower2.gat") + getmapusers("c_tower3.gat") + getmapusers("c_tower4.gat"); + set @coal, getmapusers("mjo_dun01.gat") + getmapusers("mjo_dun02.gat") + getmapusers("mjo_dun03.gat"); + set @culvert, getmapusers("prt_sewb1.gat") + getmapusers("prt_sewb2.gat") + getmapusers("prt_sewb3.gat") + getmapusers("prt_sewb4.gat"); + set @geffen, getmapusers("gef_dun00.gat") + getmapusers("gef_dun01.gat") + getmapusers("gef_dun02.gat") + getmapusers("gef_dun03.gat"); + set @glast, getmapusers("glast_01.gat") + getmapusers("gl_cas01.gat") + getmapusers("gl_cas02.gat") + getmapusers("gl_knt01.gat") + getmapusers("gl_knt02.gat") + + getmapusers("gl_chyard.gat") + getmapusers("gl_sew01.gat") + getmapusers("gl_sew02.gat") + getmapusers("gl_sew03.gat") + getmapusers("gl_sew04.gat") + getmapusers("gl_church.gat") + + getmapusers("gl_step.gat") + getmapusers("gl_dun01.gat") + getmapusers("gl_dun02.gat") + getmapusers("gl_prison.gat") + getmapusers("gl_prison1.gat"); + set @hidden, getmapusers("prt_maze01.gat") + getmapusers("prt_maze02.gat") + getmapusers("prt_maze03.gat"); + set @magma, getmapusers("mag_dun01.gat") + getmapusers("mag_dun02.gat"); + set @orc, getmapusers("orcsdun01.gat") + getmapusers("orcsdun02.gat"); + set @payond, getmapusers("pay_dun00.gat") + getmapusers("pay_dun01.gat") + getmapusers("pay_dun02.gat") + getmapusers("pay_dun03.gat") + getmapusers("pay_dun04.gat"); + set @pyramids, getmapusers("moc_pryd01.gat") + getmapusers("moc_pryd02.gat") + getmapusers("moc_pryd03.gat") + getmapusers("moc_pryd04.gat") + getmapusers("moc_pryd05.gat") + getmapusers("moc_pryd06.gat"); + set @sphinx, getmapusers("in_sphinx1.gat") + getmapusers("in_sphinx2.gat") + getmapusers("in_sphinx3.gat") + getmapusers("in_sphinx4.gat") + getmapusers("in_sphinx5.gat"); + set @sunken, getmapusers("treasure01.gat") + getmapusers("treasure02.gat"); + set @toy, getmapusers("xmas_dun01.gat") + getmapusers("xmas_dun02.gat"); + set @turtle, getmapusers("tur_dun01.gat") + getmapusers("tur_dun02.gat") + getmapusers("tur_dun03.gat") + getmapusers("tur_dun04.gat"); + set @ama, getmapusers("ama_dun01.gat") + getmapusers("ama_dun02.gat") + getmapusers("ama_dun02.gat"); + set @gon, getmapusers("gon_dun01.gat") + getmapusers("gon_dun02.gat") + getmapusers("gon_dun03.gat"); + set @gefenia, getmapusers("gefenia01.gat") + getmapusers("gefenia02.gat") + getmapusers("gefenia03.gat") + getmapusers("gefenia04.gat"); + set @dungeons, @anthell + @beach + @dbyalan + @clock + @coal + @culvert + @geffen + @glast + @hidden + + @magma + @orc + @payond + @pyramids + @sphinx + @sunken + @toy + @turtle + @ama + @gon + @gefenia; mes "[Warp NPC]"; mes "Hello, I can warp you to any Town and Dungeon! Were do you want to go?"; next; menu "Towns [" + @red$ + @towns + @reset$ + "]",town,"Dungeons [" + @red$ + @dungeons + @reset$ +"]",dungeon; town: - menu "Alberta [" + @red$ + @alberta + @reset$ + "]",walberta, - "Aldebaran [" + @red$ + @aldebaran + @reset$ + "]",waldebaran, - "Amatsu [" + @red$ + @amatsu + @reset$ + "]",wamatsu, - "Comodo [" + @red$ + @comodo + @reset$ + "]",wcomodo, - "Gonryun [" + @red$ + @gonryun + @reset$ + "]",wgonryun, - "Geffen [" + @red$ + @geffen + @reset$ + "]",wgeffen, - "Izlude [" + @red$ + @izlude + @reset$ + "]",wizlude, - "Lutie [" + @red$ + @lutie + @reset$ + "]",wxmas, - "Morroc [" + @red$ + @morroc + @reset$ + "]",wmorroc, - "Niflheim [" + @red$ + @niflheim + @reset$ + "]",wniflheim, - "Payon [" + @red$ + @payon + @reset$ + "]",wpayon, - "Prontera [" + @red$ + @prontera + @reset$ + "]",wprontera, - "Yuno [" + @red$ + @yuno + @reset$ + "]",wyuno, - "Umbala [" + @red$ + @umbala + @reset$ + "]",wumbala, - "Valkyrie [" + @red$ + @valkyrie + @reset$ + "]",wvalk, - "Louyang [" + @red$ + @louyang + @reset$ + "]",wlouyang; + menu "Alberta [" + @red$ + getmapusers("alberta.gat") + @reset$ + "]",walberta, + "Aldebaran [" + @red$ + getmapusers("aldebaran.gat") + @reset$ + "]",waldebaran, + "Amatsu [" + @red$ + getmapusers("amatsu.gat") + @reset$ + "]",wamatsu, + "Comodo [" + @red$ + getmapusers("comodo.gat") + @reset$ + "]",wcomodo, + "Gonryun [" + @red$ + getmapusers("gonryun.gat") + @reset$ + "]",wgonryun, + "Geffen [" + @red$ + getmapusers("geffen.gat") + @reset$ + "]",wgeffen, + "Izlude [" + @red$ + getmapusers("izlude.gat") + @reset$ + "]",wizlude, + "Lutie [" + @red$ + getmapusers("xmas.gat") + @reset$ + "]",wxmas, + "Morroc [" + @red$ + getmapusers("morocc.gat") + @reset$ + "]",wmorroc, + "Niflheim [" + @red$ + getmapusers("niflheim.gat") + @reset$ + "]",wniflheim, + "Payon [" + @red$ + getmapusers("payon.gat") + @reset$ + "]",wpayon, + "Prontera [" + @red$ + getmapusers("prontera.gat") + @reset$ + "]",wprontera, + "Yuno [" + @red$ + getmapusers("yuno.gat") + @reset$ + "]",wyuno, + "Umbala [" + @red$ + getmapusers("umbala.gat") + @reset$ + "]",wumbala, + "Valkyrie [" + @red$ + getmapusers("valkyrie.gat") + @reset$ + "]",wvalk, + "Louyang [" + @red$ + getmapusers("louyang.gat") + @reset$ + "]",wlouyang; dungeon: menu "Amatsu Dungeon [" + @red$ + @ama + @reset$ + "]",ama, "Gonryun Dungeon [" + @red$ + @gon + @reset$ + "]",gon, @@ -229,168 +97,168 @@ ant: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @danthell1 + @reset$ + "]",danthell1, - "Level 2 [" + @red$ + @danthell2 + @reset$ + "]",danthell2; + menu "Level 1 [" + @red$ + getmapusers("anthell01.gat")+ @reset$ + "]",danthell1, + "Level 2 [" + @red$ + getmapusers("anthell02.gat")+ @reset$ + "]",danthell2; beach: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dbeach1 + @reset$ + "]",dbeach1, - "Level 2 [" + @red$ + @dbeach2 + @reset$ + "]",dbeach2, - "Level 3 [" + @red$ + @dbeach3 + @reset$ + "]",dbeach3; + menu "Level 1 [" + @red$ + getmapusers("beach_dun.gat") + @reset$ + "]",dbeach1, + "Level 2 [" + @red$ + getmapusers("beach_dun2.gat") + @reset$ + "]",dbeach2, + "Level 3 [" + @red$ + getmapusers("beach_dun3.gat") + @reset$ + "]",dbeach3; byalan: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dbyalan1 + @reset$ + "]",dbyalan1, - "Level 2 [" + @red$ + @dbyalan2 + @reset$ + "]",dbyalan2, - "Level 3 [" + @red$ + @dbyalan3 + @reset$ + "]",dbyalan3, - "Level 4 [" + @red$ + @dbyalan4 + @reset$ + "]",dbyalan4, - "Level 5 [" + @red$ + @dbyalan5 + @reset$ + "]",dbyalan5; + menu "Level 1 [" + @red$ + getmapusers("iz_dun00.gat") + @reset$ + "]",dbyalan1, + "Level 2 [" + @red$ + getmapusers("iz_dun01.gat") + @reset$ + "]",dbyalan2, + "Level 3 [" + @red$ + getmapusers("iz_dun02.gat") + @reset$ + "]",dbyalan3, + "Level 4 [" + @red$ + getmapusers("iz_dun03.gat") + @reset$ + "]",dbyalan4, + "Level 5 [" + @red$ + getmapusers("iz_dun04.gat") + @reset$ + "]",dbyalan5; clock: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dclock1 + @reset$ + "]",dclock1, - "Level 2 [" + @red$ + @dclock2 + @reset$ + "]",dclock2, - "Level 3 [" + @red$ + @dclock3 + @reset$ + "]",dclock3, - "Level 4 [" + @red$ + @dclock4 + @reset$ + "]",dclock4, - "Basement 1 [" + @red$ + @dalde1 + @reset$ + "]",dalde1, - "Basement 2 [" + @red$ + @dalde2 + @reset$ + "]",dalde2, - "Basement 3 [" + @red$ + @dalde3 + @reset$ + "]",dalde3, - "Basement 4 [" + @red$ + @dalde4 + @reset$ + "]",dalde4; + menu "Level 1 [" + @red$ + getmapusers("c_tower1.gat") + @reset$ + "]",dclock1, + "Level 2 [" + @red$ + getmapusers("c_tower2.gat") + @reset$ + "]",dclock2, + "Level 3 [" + @red$ + getmapusers("c_tower3.gat") + @reset$ + "]",dclock3, + "Level 4 [" + @red$ + getmapusers("c_tower4.gat") + @reset$ + "]",dclock4, + "Basement 1 [" + @red$ + getmapusers("alde_dun01.gat") + @reset$ + "]",dalde1, + "Basement 2 [" + @red$ + getmapusers("alde_dun02.gat") + @reset$ + "]",dalde2, + "Basement 3 [" + @red$ + getmapusers("alde_dun03.gat") + @reset$ + "]",dalde3, + "Basement 4 [" + @red$ + getmapusers("alde_dun04.gat") + @reset$ + "]",dalde4; coal: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dcoal1 + @reset$ + "]",dcoal1, - "Level 2 [" + @red$ + @dcoal2 + @reset$ + "]",dcoal2, - "Level 3 [" + @red$ + @dcoal3 + @reset$ + "]",dcoal3; + menu "Level 1 [" + @red$ + getmapusers("mjo_dun01.gat") + @reset$ + "]",dcoal1, + "Level 2 [" + @red$ + getmapusers("mjo_dun02.gat") + @reset$ + "]",dcoal2, + "Level 3 [" + @red$ + getmapusers("mjo_dun03.gat") + @reset$ + "]",dcoal3; culvert: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dculvert1 + @reset$ + "]",dculvert1, - "Level 2 [" + @red$ + @dculvert2 + @reset$ + "]",dculvert2, - "Level 3 [" + @red$ + @dculvert3 + @reset$ + "]",dculvert3, - "Level 4 [" + @red$ + @dculvert4 + @reset$ + "]",dculvert4; + menu "Level 1 [" + @red$ + getmapusers("prt_sewb1.gat") + @reset$ + "]",dculvert1, + "Level 2 [" + @red$ + getmapusers("prt_sewb2.gat") + @reset$ + "]",dculvert2, + "Level 3 [" + @red$ + getmapusers("prt_sewb3.gat") + @reset$ + "]",dculvert3, + "Level 4 [" + @red$ + getmapusers("prt_sewb4.gat") + @reset$ + "]",dculvert4; geffen: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dgeffen1 + @reset$ + "]",dgeffen1, - "Level 2 [" + @red$ + @dgeffen2 + @reset$ + "]",dgeffen2, - "Level 3 [" + @red$ + @dgeffen3 + @reset$ + "]",dgeffen3, - "Level 4 [" + @red$ + @dgeffen4 + @reset$ + "]",dgeffen4; + menu "Level 1 [" + @red$ + getmapusers("gef_dun00.gat") + @reset$ + "]",dgeffen1, + "Level 2 [" + @red$ + getmapusers("gef_dun01.gat") + @reset$ + "]",dgeffen2, + "Level 3 [" + @red$ + getmapusers("gef_dun02.gat") + @reset$ + "]",dgeffen3, + "Level 4 [" + @red$ + getmapusers("gef_dun03.gat") + @reset$ + "]",dgeffen4; glast: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Entrance [" + @red$ + @dglastent + @reset$ + "]",dglastent, - "Castle 1 [" + @red$ + @dglastcast1 + @reset$ + "]",dglastcast1, - "Castle 2 [" + @red$ + @dglastcast2 + @reset$ + "]",dglastcast2, - "Chivalry 1 [" + @red$ + @dglastchiv1 + @reset$ + "]",dglastchiv1, - "Chivalry 2 [" + @red$ + @dglastchiv2 + @reset$ + "]",dglastchiv2, - "Churchyard [" + @red$ + @dglastyard + @reset$ + "]",dglastyard, - "Culvert 1 [" + @red$ + @dglastcul1 + @reset$ + "]",dglastcul1, - "Culvert 2 [" + @red$ + @dglastcul1 + @reset$ + "]",dglastcul1, - "Culvert 3 [" + @red$ + @dglastcul3 + @reset$ + "]",dglastcul3, - "Culvert 4 [" + @red$ + @dglastcul4 + @reset$ + "]",dglastcul4, - "St.Abbey [" + @red$ + @dglastchur + @reset$ + "]",dglastchur, - "Staircase Dungeon [" + @red$ + @dglaststep + @reset$ + "]",dglaststep, - "Underground Cave 1 [" + @red$ + @dglastcave1 + @reset$ + "]",dglastcave1, - "Underground Cave 2 [" + @red$ + @dglastcave2 + @reset$ + "]",dglastcave2, - "Underground Prison 1 [" + @red$ + @dglastpris1 + @reset$ + "]",dglastpris1, - "Underground Prison 2 [" + @red$ + @dglastpris2 + @reset$ + "]",dglastpris2; + menu "Entrance [" + @red$ + getmapusers("glast_01.gat") + @reset$ + "]",dglastent, + "Castle 1 [" + @red$ + getmapusers("gl_cas01.gat") + @reset$ + "]",dglastcast1, + "Castle 2 [" + @red$ + getmapusers("gl_cas02.gat") + @reset$ + "]",dglastcast2, + "Chivalry 1 [" + @red$ + getmapusers("gl_knt01.gat") + @reset$ + "]",dglastchiv1, + "Chivalry 2 [" + @red$ + getmapusers("gl_knt02.gat") + @reset$ + "]",dglastchiv2, + "Churchyard [" + @red$ + getmapusers("gl_chyard.gat") + @reset$ + "]",dglastyard, + "Culvert 1 [" + @red$ + getmapusers("gl_sew01.gat") + @reset$ + "]",dglastcul1, + "Culvert 2 [" + @red$ + getmapusers("gl_sew02.gat") + @reset$ + "]",dglastcul1, + "Culvert 3 [" + @red$ + getmapusers("gl_sew03.gat") + @reset$ + "]",dglastcul3, + "Culvert 4 [" + @red$ + getmapusers("gl_sew04.gat") + @reset$ + "]",dglastcul4, + "St.Abbey [" + @red$ + getmapusers("gl_church.gat") + @reset$ + "]",dglastchur, + "Staircase Dungeon [" + @red$ + getmapusers("gl_step.gat") + @reset$ + "]",dglaststep, + "Underground Cave 1 [" + @red$ + getmapusers("gl_dun01.gat") + @reset$ + "]",dglastcave1, + "Underground Cave 2 [" + @red$ + getmapusers("gl_dun02.gat") + @reset$ + "]",dglastcave2, + "Underground Prison 1 [" + @red$ + getmapusers("gl_prison.gat") + @reset$ + "]",dglastpris1, + "Underground Prison 2 [" + @red$ + getmapusers("gl_prison1.gat") + @reset$ + "]",dglastpris2; hidden: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dhidden1 + @reset$ + "]",dhidden1, - "Level 2 [" + @red$ + @dhidden2 + @reset$ + "]",dhidden2, - "Level 3 [" + @red$ + @dhidden3 + @reset$ + "]",dhidden3; + menu "Level 1 [" + @red$ + getmapusers("prt_maze01.gat") + @reset$ + "]",dhidden1, + "Level 2 [" + @red$ + getmapusers("prt_maze02.gat") + @reset$ + "]",dhidden2, + "Level 3 [" + @red$ + getmapusers("prt_maze03.gat") + @reset$ + "]",dhidden3; magma: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dmagma1 + @reset$ + "]",dmagma1, - "Level 2 [" + @red$ + @dmagma2 + @reset$ + "]",dmagma2; + menu "Level 1 [" + @red$ + getmapusers("mag_dun01.gat") + @reset$ + "]",dmagma1, + "Level 2 [" + @red$ + getmapusers("mag_dun02.gat") + @reset$ + "]",dmagma2; orc: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dorc1 + @reset$ + "]",dorc1, - "Level 2 [" + @red$ + @dorc2 + @reset$ + "]",dorc2; + menu "Level 1 [" + @red$ + getmapusers("orcsdun01.gat") + @reset$ + "]",dorc1, + "Level 2 [" + @red$ + getmapusers("orcsdun02.gat") + @reset$ + "]",dorc2; payon: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dpayon1 + @reset$ + "]",dpayon1, - "Level 2 [" + @red$ + @dpayon2 + @reset$ + "]",dpayon2, - "Level 3 [" + @red$ + @dpayon3 + @reset$ + "]",dpayon3, - "Level 4 [" + @red$ + @dpayon4 + @reset$ + "]",dpayon4, - "Level 5 [" + @red$ + @dpayon5 + @reset$ + "]",dpayon5; + menu "Level 1 [" + @red$ + getmapusers("pay_dun00.gat") + @reset$ + "]",dpayon1, + "Level 2 [" + @red$ + getmapusers("pay_dun01.gat") + @reset$ + "]",dpayon2, + "Level 3 [" + @red$ + getmapusers("pay_dun02.gat") + @reset$ + "]",dpayon3, + "Level 4 [" + @red$ + getmapusers("pay_dun03.gat") + @reset$ + "]",dpayon4, + "Level 5 [" + @red$ + getmapusers("pay_dun04.gat") + @reset$ + "]",dpayon5; pyramids: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dpyramids1 + @reset$ + "]",dpyramids1, - "Level 2 [" + @red$ + @dpyramids2 + @reset$ + "]",dpyramids2, - "Level 3 [" + @red$ + @dpyramids3 + @reset$ + "]",dpyramids3, - "Level 4 [" + @red$ + @dpyramids4 + @reset$ + "]",dpyramids4, - "Basement 1 [" + @red$ + @dpyramidsb1 + @reset$ + "]",dpyramidsb1, - "Basement 2 [" + @red$ + @dpyramidsb2 + @reset$ + "]",dpyramidsb2; + menu "Level 1 [" + @red$ + getmapusers("moc_pryd01.gat") + @reset$ + "]",dpyramids1, + "Level 2 [" + @red$ + getmapusers("moc_pryd02.gat") + @reset$ + "]",dpyramids2, + "Level 3 [" + @red$ + getmapusers("moc_pryd03.gat") + @reset$ + "]",dpyramids3, + "Level 4 [" + @red$ + getmapusers("moc_pryd04.gat") + @reset$ + "]",dpyramids4, + "Basement 1 [" + @red$ + getmapusers("moc_pryd05.gat") + @reset$ + "]",dpyramidsb1, + "Basement 2 [" + @red$ + getmapusers("moc_pryd06.gat") + @reset$ + "]",dpyramidsb2; sphinx: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dsphinx1 + @reset$ + "]",dsphinx1, - "Level 2 [" + @red$ + @dsphinx2 + @reset$ + "]",dsphinx2, - "Level 3 [" + @red$ + @dsphinx3 + @reset$ + "]",dsphinx3, - "Level 4 [" + @red$ + @dsphinx4 + @reset$ + "]",dsphinx4, - "Level 5 [" + @red$ + @dsphinx5 + @reset$ + "]",dsphinx5; + menu "Level 1 [" + @red$ + getmapusers("in_sphinx1.gat") + @reset$ + "]",dsphinx1, + "Level 2 [" + @red$ + getmapusers("in_sphinx2.gat") + @reset$ + "]",dsphinx2, + "Level 3 [" + @red$ + getmapusers("in_sphinx3.gat") + @reset$ + "]",dsphinx3, + "Level 4 [" + @red$ + getmapusers("in_sphinx4.gat") + @reset$ + "]",dsphinx4, + "Level 5 [" + @red$ + getmapusers("in_sphinx5.gat") + @reset$ + "]",dsphinx5; sunken: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dsunken1 + @reset$ + "]",dsunken1, - "Level 2 [" + @red$ + @dsunken2 + @reset$ + "]",dsunken2; + menu "Level 1 [" + @red$ + getmapusers("treasure01.gat") + @reset$ + "]",dsunken1, + "Level 2 [" + @red$ + getmapusers("treasure02.gat") + @reset$ + "]",dsunken2; toy: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dtoy1 + @reset$ + "]",dtoy1, - "Level 2 [" + @red$ + @dtoy2 + @reset$ + "]",dtoy2; + menu "Level 1 [" + @red$ + getmapusers("xmas_dun01.gat") + @reset$ + "]",dtoy1, + "Level 2 [" + @red$ + getmapusers("xmas_dun02.gat") + @reset$ + "]",dtoy2; turtle: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Entrance [" + @red$ + @dturtleent + @reset$ + "]",dturtleent, - "Level 1 [" + @red$ + @dturtle1 + @reset$ + "]",dturtle1, - "Level 2 [" + @red$ + @dturtle2 + @reset$ + "]",dturtle2, - "Level 3 [" + @red$ + @dturtle3 + @reset$ + "]",dturtle3; + menu "Entrance [" + @red$ + getmapusers("tur_dun01.gat") + @reset$ + "]",dturtleent, + "Level 1 [" + @red$ + getmapusers("tur_dun02.gat") + @reset$ + "]",dturtle1, + "Level 2 [" + @red$ + getmapusers("tur_dun03.gat") + @reset$ + "]",dturtle2, + "Level 3 [" + @red$ + getmapusers("tur_dun04.gat") + @reset$ + "]",dturtle3; ama: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dama1 + @reset$ + "]",dama1, - "Level 2 [" + @red$ + @dama2 + @reset$ + "]",dama2, - "Level 3 [" + @red$ + @dama3 + @reset$ + "]",dama3; + menu "Level 1 [" + @red$ + getmapusers("ama_dun01.gat") + @reset$ + "]",dama1, + "Level 2 [" + @red$ + getmapusers("ama_dun02.gat") + @reset$ + "]",dama2, + "Level 3 [" + @red$ + getmapusers("ama_dun03.gat") + @reset$ + "]",dama3; gon: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dgon1 + @reset$ + "]",dgon1, - "Level 2 [" + @red$ + @dgon2 + @reset$ + "]",dgon2, - "Level 3 [" + @red$ + @dgon3 + @reset$ + "]",dgon3; + menu "Level 1 [" + @red$ + getmapusers("gon_dun01.gat") + @reset$ + "]",dgon1, + "Level 2 [" + @red$ + getmapusers("gon_dun02.gat") + @reset$ + "]",dgon2, + "Level 3 [" + @red$ + getmapusers("gon_dun03.gat") + @reset$ + "]",dgon3; gefenia: mes "[Warp NPC]"; mes "Please select a Level. Beware that you will be warped directly into the dungeon."; next; - menu "Level 1 [" + @red$ + @dgefenia1 + @reset$ + "]",dgefenia1, - "Level 2 [" + @red$ + @dgefenia2 + @reset$ + "]",dgefenia2, - "Level 3 [" + @red$ + @dgefenia3 + @reset$ + "]",dgefenia3, - "Level 4 [" + @red$ + @dgefenia4 + @reset$ + "]",dgefenia4; + menu "Level 1 [" + @red$ + getmapusers("gefenia01.gat") + @reset$ + "]",dgefenia1, + "Level 2 [" + @red$ + getmapusers("gefenia02.gat") + @reset$ + "]",dgefenia2, + "Level 3 [" + @red$ + getmapusers("gefenia03.gat") + @reset$ + "]",dgefenia3, + "Level 4 [" + @red$ + getmapusers("gefenia04.gat") + @reset$ + "]",dgefenia4; //----------------Towns----------------\\ -- cgit v1.2.3-70-g09d2 From 61ec51abb422c4813347d5f2297e877f3a5ac22b Mon Sep 17 00:00:00 2001 From: mc_cameri Date: Mon, 13 Dec 2004 10:51:29 +0000 Subject: git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@552 54d463be-8e91-2dee-dedb-b68131a5f0ec --- Changelog.txt | 3 ++- npc/Changelog.txt | 2 ++ npc/other/mc_cameri/warper.txt | 53 +++++++++++++++++++++++++++++------------- src/common/grfio.c | 4 +++- src/map/itemdb.c | 14 +++++++---- src/map/map.c | 16 ++++++++----- src/map/mob.c | 13 +++++++---- src/map/npc.c | 7 ++++-- src/map/pc.c | 25 +++++++++++++------- src/map/pet.c | 4 +++- src/map/skill.c | 18 +++++++++----- 11 files changed, 109 insertions(+), 50 deletions(-) (limited to 'npc/other/mc_cameri/warper.txt') diff --git a/Changelog.txt b/Changelog.txt index 266e21241..bde53d75a 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,10 +1,11 @@ Date Added 12/13 + * Replaced many printf's in map-server with _ShowMessage(). * Skill timers for skills with id's higher then 450 were corrupting memory [MouseJstr] * Increased max skills to 650 from 450 fixing MANY crashes [MouseJstr] * Creating Guild events were reading beyond supplied guild names , - causing crashes [MouseJstr + causing crashes [MouseJstr] * trades were derefing -2 into the inventory table sometimes [MouseJstr] * Not having a arrow in your inventory but having a bow could cause it to set sd->status.inventory[-1].equip=32768 diff --git a/npc/Changelog.txt b/npc/Changelog.txt index e9dda74d0..674aa44fa 100644 --- a/npc/Changelog.txt +++ b/npc/Changelog.txt @@ -32,6 +32,8 @@ Other Ppl Date Added ====== +12/12 * Added Town Inn's counting in my npc/other/mc_cameri/warper.txt [MC Cameri] + 12/11 * Fixed memory consumption in npc/other/mc_cameri/warper.txt [MC Cameri] 12/10 diff --git a/npc/other/mc_cameri/warper.txt b/npc/other/mc_cameri/warper.txt index 56b68b715..5f5723cab 100644 --- a/npc/other/mc_cameri/warper.txt +++ b/npc/other/mc_cameri/warper.txt @@ -24,7 +24,22 @@ set @reset$,"^000000"; // towns - set @towns, getmapusers("alberta.gat") + getmapusers("aldebaran.gat") + getmapusers("amatsu.gat") + getmapusers("comodo.gat") + getmapusers("gonryun.gat") + getmapusers("geffen.gat") + getmapusers("izlude.gat") + getmapusers("xmas.gat") + getmapusers("morocc.gat") + getmapusers("niflheim.gat") + getmapusers("payon.gat") + getmapusers("prontera.gat") + getmapusers("yuno.gat") + getmapusers("umbala.gat") + getmapusers("valkyrie.gat") + getmapusers("louyang.gat"); + set @towns, getmapusers("alberta.gat") + getmapusers("aldebaran.gat") + + getmapusers("amatsu.gat") + getmapusers("comodo.gat") + getmapusers("gonryun.gat") + + getmapusers("geffen.gat") + getmapusers("izlude.gat") + getmapusers("xmas.gat") + + getmapusers("morocc.gat") + getmapusers("niflheim.gat") + getmapusers("payon.gat") + + getmapusers("prontera.gat") + getmapusers("yuno.gat") + getmapusers("umbala.gat") + + getmapusers("valkyrie.gat") + getmapusers("louyang.gat"); +// town inns + set @towns, @towns + getmapusers("alberta_in.gat") + getmapusers("aldeba_in.gat") + + getmapusers("geffen_in.gat") + getmapusers("izlude_in.gat") + getmapusers("morocc_in.gat") + + getmapusers("prt_in.gat") + getmapusers("xmas_in.gat") + getmapusers("cmd_in01.gat") + + getmapusers("cmd_in02.gat") + getmapusers("yuno_in01.gat") + getmapusers("yuno_in02.gat") + + getmapusers("yuno_in03.gat") + getmapusers("yuno_in04.gat") + getmapusers("yuno_in05.gat") + + getmapusers("ama_in01.gat") + getmapusers("ama_in02.gat") + getmapusers("gon_in.gat") + + getmapusers("um_in.gat") + getmapusers("nif_in.gat") + getmapusers("lou_in01.gat") + + getmapusers("lou_in02.gat") + getmapusers("payon_in01.gat") + getmapusers("payon_in02.gat") + + getmapusers("payon_in03.gat"); // dungeons set @anthell, getmapusers("anthell01.gat") + getmapusers("anthell02.gat"); set @beach, getmapusers("beach_dun.gat") + getmapusers("beach_dun2.gat") + getmapusers("beach_dun3.gat"); @@ -56,22 +71,28 @@ next; menu "Towns [" + @red$ + @towns + @reset$ + "]",town,"Dungeons [" + @red$ + @dungeons + @reset$ +"]",dungeon; town: - menu "Alberta [" + @red$ + getmapusers("alberta.gat") + @reset$ + "]",walberta, - "Aldebaran [" + @red$ + getmapusers("aldebaran.gat") + @reset$ + "]",waldebaran, - "Amatsu [" + @red$ + getmapusers("amatsu.gat") + @reset$ + "]",wamatsu, - "Comodo [" + @red$ + getmapusers("comodo.gat") + @reset$ + "]",wcomodo, - "Gonryun [" + @red$ + getmapusers("gonryun.gat") + @reset$ + "]",wgonryun, - "Geffen [" + @red$ + getmapusers("geffen.gat") + @reset$ + "]",wgeffen, - "Izlude [" + @red$ + getmapusers("izlude.gat") + @reset$ + "]",wizlude, - "Lutie [" + @red$ + getmapusers("xmas.gat") + @reset$ + "]",wxmas, - "Morroc [" + @red$ + getmapusers("morocc.gat") + @reset$ + "]",wmorroc, - "Niflheim [" + @red$ + getmapusers("niflheim.gat") + @reset$ + "]",wniflheim, - "Payon [" + @red$ + getmapusers("payon.gat") + @reset$ + "]",wpayon, - "Prontera [" + @red$ + getmapusers("prontera.gat") + @reset$ + "]",wprontera, - "Yuno [" + @red$ + getmapusers("yuno.gat") + @reset$ + "]",wyuno, - "Umbala [" + @red$ + getmapusers("umbala.gat") + @reset$ + "]",wumbala, +// + getmapusers("prt_in.gat") + getmapusers("xmas_in.gat") + getmapusers("cmd_in01.gat") +// + getmapusers("cmd_in02.gat") + getmapusers("yuno_in01.gat") + getmapusers("yuno_in02.gat") +// + getmapusers("yuno_in03.gat") + getmapusers("yuno_in04.gat") + getmapusers("yuno_in05.gat") +// + getmapusers("ama_in01.gat") + getmapusers("ama_in02.gat") + getmapusers("gon_in.gat") +// + getmapusers("um_in.gat") + getmapusers("nif_in.gat") + getmapusers("lou_in01.gat") +// + getmapusers("lou_in02.gat"); + menu "Alberta [" + @red$ + (getmapusers("alberta.gat")+getmapusers("alberta_in.gat")) + @reset$ + "]",walberta, + "Aldebaran [" + @red$ + (getmapusers("aldebaran.gat")+ getmapusers("aldeba_in.gat")) + @reset$ + "]",waldebaran, + "Amatsu [" + @red$ + (getmapusers("amatsu.gat")+getmapusers("ama_in02.gat")) + @reset$ + "]",wamatsu, + "Comodo [" + @red$ + (getmapusers("comodo.gat")+getmapusers("cmd_in01.gat")+getmapusers("cmd_in02.gat")) + @reset$ + "]",wcomodo, + "Gonryun [" + @red$ + (getmapusers("gonryun.gat")+getmapusers("gon_in.gat")) + @reset$ + "]",wgonryun, + "Geffen [" + @red$ + (getmapusers("geffen.gat")+getmapusers("geffen_in.gat")) + @reset$ + "]",wgeffen, + "Izlude [" + @red$ + (getmapusers("izlude.gat")+getmapusers("izlude_in.gat")) + @reset$ + "]",wizlude, + "Lutie [" + @red$ + (getmapusers("xmas.gat")+getmapusers("xmas_in.gat")) + @reset$ + "]",wxmas, + "Morroc [" + @red$ + (getmapusers("morocc.gat")+getmapusers("morocc_in.gat")) + @reset$ + "]",wmorroc, + "Niflheim [" + @red$ + (getmapusers("niflheim.gat")+getmapusers("nif_in.gat")) + @reset$ + "]",wniflheim, + "Payon [" + @red$ + (getmapusers("payon.gat")+getmapusers("payon_in01.gat")+getmapusers("payon_in02.gat")+getmapusers("payon_in03.gat")) + @reset$ + "]",wpayon, + "Prontera [" + @red$ + (getmapusers("prontera.gat")+getmapusers("prt_in.gat")) + @reset$ + "]",wprontera, + "Yuno [" + @red$ + (getmapusers("yuno.gat")+getmapusers("yuno_in01.gat")+getmapusers("yuno_in02.gat")+getmapusers("yuno_in03.gat")+getmapusers("yuno_in04.gat")+getmapusers("yuno_in05.gat")) + @reset$ + "]",wyuno, + "Umbala [" + @red$ + (getmapusers("umbala.gat")+getmapusers("um_in.gat")) + @reset$ + "]",wumbala, "Valkyrie [" + @red$ + getmapusers("valkyrie.gat") + @reset$ + "]",wvalk, - "Louyang [" + @red$ + getmapusers("louyang.gat") + @reset$ + "]",wlouyang; + "Louyang [" + @red$ + (getmapusers("louyang.gat")+getmapusers("lou_in01.gat")+getmapusers("lou_in02.gat")) + @reset$ + "]",wlouyang; dungeon: menu "Amatsu Dungeon [" + @red$ + @ama + @reset$ + "]",ama, "Gonryun Dungeon [" + @red$ + @gon + @reset$ + "]",gon, diff --git a/src/common/grfio.c b/src/common/grfio.c index ff01b6e76..2ba701632 100644 --- a/src/common/grfio.c +++ b/src/common/grfio.c @@ -30,6 +30,7 @@ #include "utils.h" #include "grfio.h" #include "mmo.h" +#include "showmsg.h" #ifdef MEMWATCH #include "memwatch.h" @@ -923,7 +924,8 @@ void grfio_init(char *fname) } fclose(data_conf); - printf("read %s done\n",fname); + sprintf(tmp_output,"Done reading GRF File: '\033[1;29m%s\033[0;0m'.\n",fname); + ShowStatus(tmp_output); } // end of reading grf-files.txt hashinit(); // hash table initialization diff --git a/src/map/itemdb.c b/src/map/itemdb.c index a225cff83..cd915b92e 100644 --- a/src/map/itemdb.c +++ b/src/map/itemdb.c @@ -12,6 +12,7 @@ #include "itemdb.h" #include "script.h" #include "pc.h" +#include "showmsg.h" #ifdef MEMWATCH #include "memwatch.h" @@ -383,7 +384,8 @@ static int itemdb_readdb(void) id->equip_script = parse_script(p,lines); } fclose(fp); - printf("read %s done (count=%d)\n",filename[i],ln); + sprintf(tmp_output,"Done reading '\033[1;29m%d\033[0;0m' entries in '\033[1;29m%s\033[0;0m'.\n",ln,filename[i]); + ShowStatus(tmp_output); } return 0; } @@ -458,7 +460,8 @@ static int itemdb_read_randomitem() ln++; } fclose(fp); - printf("read %s done (count=%d)\n",fn,*pc); + sprintf(tmp_output,"Done reading '\033[1;29m%d\033[0;0m' entries in '\033[1;29m%s\033[0;0m'.\n",*pc,fn); + ShowStatus(tmp_output); } return 0; @@ -507,7 +510,8 @@ static int itemdb_read_itemavail(void) ln++; } fclose(fp); - printf("read db/item_avail.txt done (count=%d)\n",ln); + sprintf(tmp_output,"Done reading '\033[1;29m%d\033[0;0m' entries in '\033[1;29m%s\033[0;0m'.\n",ln,"db/item_avail.txt"); + ShowStatus(tmp_output); return 0; } @@ -774,8 +778,8 @@ static int itemdb_read_sqldb(void) { printf("Database server error (retrieving rows from %s): %s\n", item_db_db, mysql_error(&mmysql_handle)); } - - printf("read %s done (count = %lu)\n", item_db_db, (unsigned long) mysql_num_rows(sql_res)); + sprintf(tmp_output,"Done reading '\033[1;29m%lu\033[0;0m' entries in '\033[1;29m%s\033[0;0m'.\n",(unsigned long) mysql_num_rows(sql_res),item_db_db); + ShowStatus(tmp_output); } else { diff --git a/src/map/map.c b/src/map/map.c index 502230033..282d2795b 100644 --- a/src/map/map.c +++ b/src/map/map.c @@ -1208,7 +1208,9 @@ void map_removenpc(void) { } } } - printf("%d NPCs removed.\n",n); + + sprintf(tmp_output,"Successfully removed and freed from memory '\033[1;29m%d\033[0;0m' NPCs.\n",n); + ShowStatus(tmp_output); } /*========================================== @@ -2181,16 +2183,14 @@ static int cleanup_sub(struct block_list *bl, va_list ap) { */ void do_final(void) { int map_id, i; - + ShowStatus("Terminating.\n"); for (map_id = 0; map_id < map_num;map_id++) { if(map[map_id].m) map_foreachinarea(cleanup_sub, map_id, 0, 0, map[map_id].xs, map[map_id].ys, 0, 0); } - #ifndef TXT_ONLY chrif_char_reset_offline(); #endif - for (i = 0; i < fd_max; i++) delete_session(i); @@ -2209,14 +2209,16 @@ void do_final(void) { if(map[i].block_count) free(map[i].block_count); if(map[i].block_mob_count) free(map[i].block_mob_count); } + do_final_script(); do_final_itemdb(); do_final_storage(); - do_final_guild(); + do_final_guild(); #ifndef TXT_ONLY map_sql_close(); #endif /* not TXT_ONLY */ + ShowStatus("Successfully terminated."); } void map_helpscreen(int flag) { @@ -2418,7 +2420,9 @@ int do_init(int argc, char *argv[]) { if (imalive_on) add_timer_interval(gettick()+10, imalive_timer,0,0,imalive_time*1000); - printf("The map-server is \033[1;32mready\033[0m (Server is listening on the port %d).\n\n", map_port); + sprintf(tmp_output,"Server is '\033[1;32mready\033[0m' and listening on port '\033[1;29m%d\033[0;0m'.\n\n", map_port); + ShowStatus(tmp_output); + ticks = gettick(); diff --git a/src/map/mob.c b/src/map/mob.c index e802e9228..0c9bbc734 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -21,6 +21,7 @@ #include "party.h" #include "npc.h" #include "log.h" +#include "showmsg.h" #ifdef MEMWATCH #include "memwatch.h" @@ -3889,7 +3890,8 @@ static int mob_readdb(void) mob_db[class].clothes_color=0; //Add for player monster dye - Valaris } fclose(fp); - printf("read %s done\n",filename[i]); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n",filename[i]); + ShowStatus(tmp_output); } return 0; } @@ -4001,7 +4003,8 @@ static int mob_read_randommonster(void) mob_db[class].summonper[i]=per; } fclose(fp); - printf("read %s done\n",mobfile[i]); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n",mobfile[i]); + ShowStatus(tmp_output); } return 0; } @@ -4153,7 +4156,8 @@ static int mob_readskilldb(void) mob_db[mob_id].maxskill=i+1; } fclose(fp); - printf("read %s done\n",filename[x]); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n",filename[x]); + ShowStatus(tmp_output); } return 0; } @@ -4308,7 +4312,8 @@ static int mob_read_sqldb(void) mob_db[class].head_buttom=0; } mysql_free_result(sql_res); - printf("read %s done (count=%d)\n",mob_db_db,ln); + sprintf(tmp_output,"Done reading '\033[1;29m%lu\033[0;0m' entries in '\033[1;29m%s\033[0;0m'.\n",ln,mob_db_db); + ShowStatus(tmp_output); } return 0; } diff --git a/src/map/npc.c b/src/map/npc.c index e71fb050b..294058f64 100644 --- a/src/map/npc.c +++ b/src/map/npc.c @@ -21,6 +21,7 @@ #include "pet.h" #include "battle.h" #include "skill.h" +#include "showmsg.h" #ifdef MEMWATCH #include "memwatch.h" @@ -433,8 +434,10 @@ int npc_event_do_clock(int tid,unsigned int tick,int id,int data) */ int npc_event_do_oninit(void) { - int c = npc_event_doall("OnInit"); - printf("npc: OnInit Event done. (%d npc)\n",c); +// int c = npc_event_doall("OnInit"); + sprintf(tmp_output,"Event '\033[1;29mOnInit\033[0;0m' executed with '\033[1" + ";29m%d\033[0;0m' NPCs.\n",npc_event_doall("OnInit")); + ShowStatus(tmp_output); add_timer_interval(gettick()+100, npc_event_do_clock,0,0,1000); diff --git a/src/map/pc.c b/src/map/pc.c index 6b4e4d7a6..7f6b2cb1f 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -7706,7 +7706,8 @@ int pc_readdb(void) break; } fclose(fp); - printf("read db/exp.txt done\n"); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n","db/exp.txt"); + ShowStatus(tmp_output); // JOB•â³?’l‚P fp=fopen("db/job_db1.txt","r"); @@ -7740,7 +7741,8 @@ int pc_readdb(void) break; } fclose(fp); - printf("read db/job_db1.txt done\n"); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n","db/job_db1.txt"); + ShowStatus(tmp_output); // JOBƒ{?ƒiƒX fp=fopen("db/job_db2.txt","r"); @@ -7768,7 +7770,8 @@ int pc_readdb(void) break; } fclose(fp); - printf("read db/job_db2.txt done\n"); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n","db/job_db2.txt"); + ShowStatus(tmp_output); // JOBƒ{?ƒiƒX2 ?¶E—p fp=fopen("db/job_db2-2.txt","r"); @@ -7833,7 +7836,8 @@ int pc_readdb(void) } } fclose(fp); - printf("read db/skill_tree.txt done\n"); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n","db/skill_tree.txt"); + ShowStatus(tmp_output); // ?«C³ƒe?ƒuƒ‹ for(i=0;i<4;i++) @@ -7879,7 +7883,8 @@ int pc_readdb(void) } } fclose(fp); - printf("read db/attr_fix.txt done\n"); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n","db/attr_fix.txt"); + ShowStatus(tmp_output); // ƒTƒCƒY•â³ƒe?ƒuƒ‹ for(i=0;i<3;i++) @@ -7908,7 +7913,8 @@ int pc_readdb(void) i++; } fclose(fp); - printf("read db/size_fix.txt done\n"); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n","db/size_fix.txt"); + ShowStatus(tmp_output); // ¸?ƒf?ƒ^ƒe?ƒuƒ‹ for(i=0;i<5;i++){ @@ -7944,7 +7950,8 @@ int pc_readdb(void) i++; } fclose(fp); //Lupus. close this file!!! - printf("read db/refine_db.txt done\n"); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n","db/refine_db.txt"); + ShowStatus(tmp_output); return 0; } @@ -7985,7 +7992,9 @@ static void pc_statpointdb(void) buf_stat = (char *) malloc (end + 1); l = fread(buf_stat,1,end,stp); fclose(stp); - printf("read db/statpoint.txt done (size=%d)\n",l); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n","db/statpoint.txt"); + ShowStatus(tmp_output); +// printf("read db/statpoint.txt done (size=%d)\n",l); for(i=0;i<255;i++) { j=0; diff --git a/src/map/pet.c b/src/map/pet.c index 6026b1ebf..878c0aea5 100644 --- a/src/map/pet.c +++ b/src/map/pet.c @@ -20,6 +20,7 @@ #include "npc.h" #include "script.h" #include "skill.h" +#include "showmsg.h" #ifdef MEMWATCH #include "memwatch.h" @@ -1622,7 +1623,8 @@ int read_petdb() j++; } fclose(fp); - printf("read %s done (count=%d)\n",filename[i],j); + sprintf(tmp_output,"Done reading '\033[1;29m%d\033[0;0m' pets in '\033[1;29m%s\033[0;0m'.\n",j,filename[i]); + ShowStatus(tmp_output); } return 0; } diff --git a/src/map/skill.c b/src/map/skill.c index fbff7e339..83382ef70 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -11668,7 +11668,8 @@ int skill_readdb(void) skill_db[i].upkeep_time2[k]=(split2[k])? atoi(split2[k]):atoi(split2[0]); } fclose(fp); - printf("read db/skill_cast_db.txt done\n"); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n","db/skill_cast_db.txt"); + ShowStatus(tmp_output); /* »‘¢ŒnƒXƒLƒ‹ƒf?ƒ^ƒx?ƒX */ memset(skill_produce_db,0,sizeof(skill_produce_db)); @@ -11711,7 +11712,8 @@ int skill_readdb(void) break; } fclose(fp); - printf("read %s done (count=%d)\n",filename[m],k); + sprintf(tmp_output,"Done reading '\033[1;29m%d\033[0;0m' entries in '\033[1;29m%s\033[0;0m'.\n",k,filename[m]); + ShowStatus(tmp_output); } memset(skill_arrow_db,0,sizeof(skill_arrow_db)); @@ -11749,7 +11751,8 @@ int skill_readdb(void) break; } fclose(fp); - printf("read db/create_arrow_db.txt done (count=%d)\n",k); + sprintf(tmp_output,"Done reading '\033[1;29m%d\033[0;0m' entries in '\033[1;29m%s\033[0;0m'.\n",k,"db/create_arrow_db.txt"); + ShowStatus(tmp_output); memset(skill_abra_db,0,sizeof(skill_abra_db)); fp=fopen("db/abra_db.txt","r"); @@ -11782,7 +11785,8 @@ int skill_readdb(void) break; } fclose(fp); - printf("read db/abra_db.txt done (count=%d)\n",k); + sprintf(tmp_output,"Done reading '\033[1;29m%d\033[0;0m' entries in '\033[1;29m%s\033[0;0m'.\n",k,"db/abra_db.txt"); + ShowStatus(tmp_output); fp=fopen("db/skill_castnodex_db.txt","r"); if(fp==NULL){ @@ -11816,7 +11820,8 @@ int skill_readdb(void) skill_db[i].castnodex[k]=(split2[k])? atoi(split2[k]):atoi(split2[0]); } fclose(fp); - printf("read db/skill_castnodex_db.txt done\n"); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n","db/skill_castnodex_db.txt"); + ShowStatus(tmp_output); fp=fopen("db/skill_nocast_db.txt","r"); if(fp==NULL){ @@ -11845,7 +11850,8 @@ int skill_readdb(void) k++; } fclose(fp); - printf("read db/skill_nocast_db done\n"); + sprintf(tmp_output,"Done reading '\033[1;29m%s\033[0;0m'.\n","db/skill_nocast_db"); + ShowStatus(tmp_output); return 0; } -- cgit v1.2.3-70-g09d2 From 6a0dea414c0cad5c7f1df421e39df7733a2e58a8 Mon Sep 17 00:00:00 2001 From: amber Date: Thu, 23 Dec 2004 17:05:45 +0000 Subject: Property update git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@755 54d463be-8e91-2dee-dedb-b68131a5f0ec --- Changelog.txt | 2 + Dev/Ideas_Suggestions.txt | 136 +- SVN-SUPPORT | 72 +- conf-tmpl/maps_athena.conf | 1194 +++++++++--------- npc/jobs/2-2/alchemist.txt | 2144 ++++++++++++++++---------------- npc/merchants/scrolls_arrows.txt | 68 +- npc/npcs_athena.conf | 1076 ++++++++-------- npc/other/mc_cameri/jobchanger.txt | 34 +- npc/other/mc_cameri/warper.txt | 836 ++++++------- npc/quests/custom/event_6_new_hats.txt | 732 +++++------ src/common/strlib.c | 158 +-- src/common/strlib.h | 20 +- src/map/atcommand.c | 2 + 13 files changed, 3239 insertions(+), 3235 deletions(-) (limited to 'npc/other/mc_cameri/warper.txt') diff --git a/Changelog.txt b/Changelog.txt index 6bc8be064..ac9165942 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,5 +1,7 @@ Date Added 12/23 + * Corrected the file types of several files in the SVN tree to + fix the newline issues [MouseJstr] * Updated mapflags (added missing payon_in03,ayo_in01,ayo_in02, que_god01, que_god02) [Lupus] * Updated Sacrifice : it's now self-activating, and lasts for 5 attacks [celest] * Fixed compile errors in party.c [celest] diff --git a/Dev/Ideas_Suggestions.txt b/Dev/Ideas_Suggestions.txt index 3522e76db..e6c7042b5 100644 --- a/Dev/Ideas_Suggestions.txt +++ b/Dev/Ideas_Suggestions.txt @@ -1,68 +1,68 @@ -//Any ideas or suggestions you guys have, put them here. -//These don't have to be put into the source, but maybe if -//you would like something down... someone might do it? lol - ----- -I (Ajarn) have loads of ideas. I might as well put them here. If no one does them it's fine, because I plan on doing them eventually if no one else does. - -1) Better jail system. You know how the ban system has a time column, - so you can set a certain amount of ban time? I think jailing should - have this to. This way you can unjail the character when they are - online or not, and jail them if they are on or not, etc. This will - also lock their char to the jail until the state of that column is - changed. One the time hits that they can come out (every min run a - timer maybe?) they are unjailed if online, and if they are offline, - the next time they log on it will check that column and unjail them - then. - - -2) Addition to ban system. Ban works on a state system and I think ti - should have another state. Instead of fully banning someone you - should have the option of banning them from creating new chars - before a full ban. This way you can jail their chars, and ban - creation of new chars. Then they have to sit in the jail and talk - it out with a GM. Gets problems solved easier. - - -3) Better gm level system. Basicly a gm command has group numbers - after it (monster:1,5,99) and those gm levels can use it. This way - you can have a much more flexible system. But when I think about - it... it takes a lot of checking to do it that way, and in the long - run, it would be a lot more flexible and easier to have account - names after each gm command. I'm not sure which one I like, or - which one should be used, but the "level" system is kind of hard to - do when you want to have sistem levels. Like, some have group A - commands, and some have group B commands, having nothing to do with - group A. There is no way to do that with the current system. - - nsstrunks: The group numbers is kinda pointless, since - currently if you set it to a higher number, everyone above - that will have access. - -4) Private Message SPY! (@pmspy ) What it does is you see - everything that that person private messages to another, and - anything another pms to them. I'm not sure if it can be already - done, but this would stack with @guildspy and @partyspy. So, you - you know thier party, and guild and you do all three spies, and you - follow them around you can hear everything they are saying. - -5) Probably a stupid idea, but @localspy. It basicly spies on all the - text that they can hear localy and sends it to you like "ajarn can - hear: ....." and "ajarn says: ..." This way you can do #4 to a - person, and then this, without following them, and get the same - effect. - -6) We need another file for item_db.txt to keep there your custom items - We already have the same thing is for mobs (mob_db2.txt) - Why don't we use it? - - - -How to implement those ideas: - -[Lupus] -1) You can make a script. Put OnTouch Area in the jail... when a banned person gets into jails, you set a global VAR. - Then use PCLoginEvent.txt to check TIME/DATE and free that poor person when it's OK. - So it's pretty easy to make with scripting. And even more... some private servers already have such scripts - and even make the prisoners gather some mushrums and stuff, to get them off the jail faster - PLUS: you should count time only when the player is in PRISON. Don't count when he's off-line 8) +//Any ideas or suggestions you guys have, put them here. +//These don't have to be put into the source, but maybe if +//you would like something down... someone might do it? lol + +---- +I (Ajarn) have loads of ideas. I might as well put them here. If no one does them it's fine, because I plan on doing them eventually if no one else does. + +1) Better jail system. You know how the ban system has a time column, + so you can set a certain amount of ban time? I think jailing should + have this to. This way you can unjail the character when they are + online or not, and jail them if they are on or not, etc. This will + also lock their char to the jail until the state of that column is + changed. One the time hits that they can come out (every min run a + timer maybe?) they are unjailed if online, and if they are offline, + the next time they log on it will check that column and unjail them + then. + + +2) Addition to ban system. Ban works on a state system and I think ti + should have another state. Instead of fully banning someone you + should have the option of banning them from creating new chars + before a full ban. This way you can jail their chars, and ban + creation of new chars. Then they have to sit in the jail and talk + it out with a GM. Gets problems solved easier. + + +3) Better gm level system. Basicly a gm command has group numbers + after it (monster:1,5,99) and those gm levels can use it. This way + you can have a much more flexible system. But when I think about + it... it takes a lot of checking to do it that way, and in the long + run, it would be a lot more flexible and easier to have account + names after each gm command. I'm not sure which one I like, or + which one should be used, but the "level" system is kind of hard to + do when you want to have sistem levels. Like, some have group A + commands, and some have group B commands, having nothing to do with + group A. There is no way to do that with the current system. + + nsstrunks: The group numbers is kinda pointless, since + currently if you set it to a higher number, everyone above + that will have access. + +4) Private Message SPY! (@pmspy ) What it does is you see + everything that that person private messages to another, and + anything another pms to them. I'm not sure if it can be already + done, but this would stack with @guildspy and @partyspy. So, you + you know thier party, and guild and you do all three spies, and you + follow them around you can hear everything they are saying. + +5) Probably a stupid idea, but @localspy. It basicly spies on all the + text that they can hear localy and sends it to you like "ajarn can + hear: ....." and "ajarn says: ..." This way you can do #4 to a + person, and then this, without following them, and get the same + effect. + +6) We need another file for item_db.txt to keep there your custom items + We already have the same thing is for mobs (mob_db2.txt) + Why don't we use it? + + + +How to implement those ideas: + +[Lupus] +1) You can make a script. Put OnTouch Area in the jail... when a banned person gets into jails, you set a global VAR. + Then use PCLoginEvent.txt to check TIME/DATE and free that poor person when it's OK. + So it's pretty easy to make with scripting. And even more... some private servers already have such scripts + and even make the prisoners gather some mushrums and stuff, to get them off the jail faster + PLUS: you should count time only when the player is in PRISON. Don't count when he's off-line 8) diff --git a/SVN-SUPPORT b/SVN-SUPPORT index 94b29d933..ba2b811db 100644 --- a/SVN-SUPPORT +++ b/SVN-SUPPORT @@ -1,36 +1,36 @@ - -If you are reading this, you are one of the lucky fools to be actually -using the active development tree of the eAthena team. This is the -only version that most of the eA dev team will activly support. - -svn can be retrieved via: - - http://subversion.tigris.org/files/documents/15/18114/svn-win32-1.1.1.zip - -once downloaded and placed in your path, you can just do: - -C> svn co http://dev.deltaanime.net:8080/svnroot/eathena/branches/stable - -this will check out a copy of our active stable development tree which -you can then build. Build? figure it out... - -So, my server is crashing and I built it out of the svn stable -branch.. what do I do? - -Each developer has their own feelings on supporting this tree and -how. - -Dev=> MouseJstr (AIM: MouseJstr, Yahoo: MouseJstr, msn: joshs@stormbirds.org): - - If you are running linux and are experiencing crashing/coredumping, - give me ssh access to your machine and I willhappily gdb your - server, debug your cores, and place fixes back into the svn tree to - make the system more stable. - - In some cases, if the problem is very difficult to debug, I may wish - to install a different compiler (in a different location) on your - machine which may require root access - - The cost? Its free.. just work with me to make it better for - everybody... - + +If you are reading this, you are one of the lucky fools to be actually +using the active development tree of the eAthena team. This is the +only version that most of the eA dev team will activly support. + +svn can be retrieved via: + + http://subversion.tigris.org/files/documents/15/18114/svn-win32-1.1.1.zip + +once downloaded and placed in your path, you can just do: + +C> svn co http://dev.deltaanime.net:8080/svnroot/eathena/branches/stable + +this will check out a copy of our active stable development tree which +you can then build. Build? figure it out... + +So, my server is crashing and I built it out of the svn stable +branch.. what do I do? + +Each developer has their own feelings on supporting this tree and +how. + +Dev=> MouseJstr (AIM: MouseJstr, Yahoo: MouseJstr, msn: joshs@stormbirds.org): + + If you are running linux and are experiencing crashing/coredumping, + give me ssh access to your machine and I willhappily gdb your + server, debug your cores, and place fixes back into the svn tree to + make the system more stable. + + In some cases, if the problem is very difficult to debug, I may wish + to install a different compiler (in a different location) on your + machine which may require root access + + The cost? Its free.. just work with me to make it better for + everybody... + diff --git a/conf-tmpl/maps_athena.conf b/conf-tmpl/maps_athena.conf index 0a1a16de0..d94204432 100644 --- a/conf-tmpl/maps_athena.conf +++ b/conf-tmpl/maps_athena.conf @@ -1,598 +1,598 @@ -//------------------------- Maps --------------------------- -map: alb_ship.gat -map: alb2trea.gat -map: alberta.gat -map: alberta_in.gat -map: alde_dun01.gat -map: alde_dun02.gat -map: alde_dun03.gat -map: alde_dun04.gat -map: aldeba_in.gat -map: aldebaran.gat -map: anthell01.gat -map: anthell02.gat -map: arena_room.gat -map: c_tower1.gat -map: c_tower2.gat -map: c_tower3.gat -map: c_tower4.gat -map: force_1-1.gat -map: force_1-2.gat -map: force_1-3.gat -map: force_2-1.gat -map: force_2-2.gat -map: force_2-3.gat -map: force_3-1.gat -map: force_3-2.gat -map: force_3-3.gat -map: gef_dun00.gat -map: gef_dun01.gat -map: gef_dun02.gat -map: gef_dun03.gat -map: gef_fild00.gat -map: gef_fild01.gat -map: gef_fild02.gat -map: gef_fild03.gat -map: gef_fild04.gat -map: gef_fild05.gat -map: gef_fild06.gat -map: gef_fild07.gat -map: gef_fild08.gat -map: gef_fild09.gat -map: gef_fild10.gat -map: gef_fild11.gat -map: gef_tower.gat -map: geffen.gat -map: geffen_in.gat -map: gl_cas01.gat -map: gl_cas02.gat -map: gl_church.gat -map: gl_chyard.gat -map: gl_dun01.gat -map: gl_dun02.gat -map: gl_in01.gat -map: gl_knt01.gat -map: gl_knt02.gat -map: gl_prison.gat -map: gl_prison1.gat -map: gl_sew01.gat -map: gl_sew02.gat -map: gl_sew03.gat -map: gl_sew04.gat -map: gl_step.gat -map: glast_01.gat -map: hunter_1-1.gat -map: hunter_2-1.gat -map: hunter_3-1.gat -map: in_hunter.gat -map: in_moc_16.gat -map: in_orcs01.gat -map: in_sphinx1.gat -map: in_sphinx2.gat -map: in_sphinx3.gat -map: in_sphinx4.gat -map: in_sphinx5.gat -map: iz_dun00.gat -map: iz_dun01.gat -map: iz_dun02.gat -map: iz_dun03.gat -map: iz_dun04.gat -//map: iz_dun05.gat -map: izlu2dun.gat -map: izlude.gat -map: izlude_in.gat -map: job_thief1.gat -map: knight_1-1.gat -map: knight_2-1.gat -map: knight_3-1.gat -map: mjo_dun01.gat -map: mjo_dun02.gat -map: mjo_dun03.gat -map: mjolnir_01.gat -map: mjolnir_02.gat -map: mjolnir_03.gat -map: mjolnir_04.gat -map: mjolnir_05.gat -map: mjolnir_06.gat -map: mjolnir_07.gat -map: mjolnir_08.gat -map: mjolnir_09.gat -map: mjolnir_10.gat -map: mjolnir_11.gat -map: mjolnir_12.gat -map: moc_castle.gat -map: moc_fild01.gat -map: moc_fild02.gat -map: moc_fild03.gat -map: moc_fild04.gat -map: moc_fild05.gat -map: moc_fild06.gat -map: moc_fild07.gat -map: moc_fild08.gat -map: moc_fild09.gat -map: moc_fild10.gat -map: moc_fild11.gat -map: moc_fild12.gat -map: moc_fild13.gat -map: moc_fild14.gat -map: moc_fild15.gat -map: moc_fild16.gat -map: moc_fild17.gat -map: moc_fild18.gat -map: moc_fild19.gat -map: moc_pryd01.gat -map: moc_pryd02.gat -map: moc_pryd03.gat -map: moc_pryd04.gat -map: moc_pryd05.gat -map: moc_pryd06.gat -map: moc_prydb1.gat -map: moc_ruins.gat -map: monk_in.gat -map: morocc.gat -map: morocc_in.gat -map: new_1-1.gat -map: new_1-2.gat -map: new_1-3.gat -map: new_1-4.gat -//map: new_2-1.gat -//map: new_2-2.gat -//map: new_2-3.gat -//map: new_2-4.gat -//map: new_3-1.gat -//map: new_3-2.gat -//map: new_3-3.gat -//map: new_3-4.gat -//map: new_4-1.gat -//map: new_4-2.gat -//map: new_4-3.gat -//map: new_4-4.gat -//map: new_5-1.gat -//map: new_5-2.gat -//map: new_5-3.gat -//map: new_5-4.gat -map: orcsdun01.gat -map: orcsdun02.gat -map: ordeal_1-1.gat -map: ordeal_1-2.gat -//map: ordeal_1-3.gat -//map: ordeal_1-4.gat -map: ordeal_2-1.gat -map: ordeal_2-2.gat -//map: ordeal_2-3.gat -//map: ordeal_2-4.gat -map: ordeal_3-1.gat -map: ordeal_3-2.gat -//map: ordeal_3-3.gat -//map: ordeal_3-4.gat -map: pay_arche.gat -map: pay_dun00.gat -map: pay_dun01.gat -map: pay_dun02.gat -map: pay_dun03.gat -map: pay_dun04.gat -map: pay_fild01.gat -map: pay_fild02.gat -map: pay_fild03.gat -map: pay_fild04.gat -map: pay_fild05.gat -map: pay_fild06.gat -map: pay_fild07.gat -map: pay_fild08.gat -map: pay_fild09.gat -map: pay_fild10.gat -map: pay_fild11.gat -//map: payon.gat //moved down to new maps -//map: payon_in01.gat //moved down to new maps -//map: payon_in02.gat //moved down to new maps -map: priest_1-1.gat -map: priest_2-1.gat -map: priest_3-1.gat -map: prontera.gat -map: prt_are_in.gat -map: prt_are01.gat -//map: prt_arena01.gat -map: prt_castle.gat -map: prt_church.gat -map: prt_fild00.gat -map: prt_fild01.gat -map: prt_fild02.gat -map: prt_fild03.gat -map: prt_fild04.gat -map: prt_fild05.gat -map: prt_fild06.gat -map: prt_fild07.gat -map: prt_fild08.gat -map: prt_fild09.gat -map: prt_fild10.gat -map: prt_fild11.gat -map: prt_in.gat -map: prt_maze01.gat -map: prt_maze02.gat -map: prt_maze03.gat -map: prt_monk.gat -map: prt_sewb1.gat -map: prt_sewb2.gat -map: prt_sewb3.gat -map: prt_sewb4.gat -map: pvp_2vs2.gat -//map: pvp_c_room.gat -map: pvp_n_1-1.gat -map: pvp_n_1-2.gat -map: pvp_n_1-3.gat -map: pvp_n_1-4.gat -map: pvp_n_1-5.gat -map: pvp_n_2-1.gat -map: pvp_n_2-2.gat -map: pvp_n_2-3.gat -map: pvp_n_2-4.gat -map: pvp_n_2-5.gat -map: pvp_n_3-1.gat -map: pvp_n_3-2.gat -map: pvp_n_3-3.gat -map: pvp_n_3-4.gat -map: pvp_n_3-5.gat -map: pvp_n_4-1.gat -map: pvp_n_4-2.gat -map: pvp_n_4-3.gat -map: pvp_n_4-4.gat -map: pvp_n_4-5.gat -map: pvp_n_5-1.gat -map: pvp_n_5-2.gat -map: pvp_n_5-3.gat -map: pvp_n_5-4.gat -map: pvp_n_5-5.gat -map: pvp_n_6-1.gat -map: pvp_n_6-2.gat -map: pvp_n_6-3.gat -map: pvp_n_6-4.gat -map: pvp_n_6-5.gat -map: pvp_n_7-1.gat -map: pvp_n_7-2.gat -map: pvp_n_7-3.gat -map: pvp_n_7-4.gat -map: pvp_n_7-5.gat -map: pvp_n_8-1.gat -map: pvp_n_8-2.gat -map: pvp_n_8-3.gat -map: pvp_n_8-4.gat -map: pvp_n_8-5.gat -map: pvp_n_room.gat -map: pvp_y_1-1.gat -map: pvp_y_1-2.gat -map: pvp_y_1-3.gat -map: pvp_y_1-4.gat -map: pvp_y_1-5.gat -map: pvp_y_2-1.gat -map: pvp_y_2-2.gat -map: pvp_y_2-3.gat -map: pvp_y_2-4.gat -map: pvp_y_2-5.gat -map: pvp_y_3-1.gat -map: pvp_y_3-2.gat -map: pvp_y_3-3.gat -map: pvp_y_3-4.gat -map: pvp_y_3-5.gat -map: pvp_y_4-1.gat -map: pvp_y_4-2.gat -map: pvp_y_4-3.gat -map: pvp_y_4-4.gat -map: pvp_y_4-5.gat -map: pvp_y_5-1.gat -map: pvp_y_5-2.gat -map: pvp_y_5-3.gat -map: pvp_y_5-4.gat -map: pvp_y_5-5.gat -map: pvp_y_6-1.gat -map: pvp_y_6-2.gat -map: pvp_y_6-3.gat -map: pvp_y_6-4.gat -map: pvp_y_6-5.gat -map: pvp_y_7-1.gat -map: pvp_y_7-2.gat -map: pvp_y_7-3.gat -map: pvp_y_7-4.gat -map: pvp_y_7-5.gat -map: pvp_y_8-1.gat -map: pvp_y_8-2.gat -map: pvp_y_8-3.gat -map: pvp_y_8-4.gat -map: pvp_y_8-5.gat -map: pvp_y_room.gat -map: sword_1-1.gat -map: sword_2-1.gat -map: sword_3-1.gat -map: treasure01.gat -map: treasure02.gat -map: wizard_1-1.gat -map: wizard_2-1.gat -map: wizard_3-1.gat -map: xmas.gat -map: xmas_dun01.gat -map: xmas_dun02.gat -map: xmas_fild01.gat -map: xmas_in.gat - -//---Ep3.0 Comodo --- - -map: beach_dun.gat -map: beach_dun2.gat -map: beach_dun3.gat -map: cmd_fild01.gat -map: cmd_fild02.gat -map: cmd_fild03.gat -map: cmd_fild04.gat -map: cmd_fild05.gat -map: cmd_fild06.gat -map: cmd_fild07.gat -map: cmd_fild08.gat -map: cmd_fild09.gat -map: cmd_in01.gat -map: cmd_in02.gat -map: comodo.gat -map: gef_fild12.gat -map: gef_fild13.gat -map: gef_fild14.gat - -//---EP3.1 Quiz Revolution --- - -map: quiz_00.gat -map: quiz_01.gat - -//--- Ep4.0 Turtle Island --- - -map: tur_dun01.gat -map: tur_dun02.gat -map: tur_dun03.gat -map: tur_dun04.gat -map: tur_dun05.gat -map: tur_dun06.gat - -//--- Ep4.1 The War of Emperium --- - -map: alde_gld.gat -map: aldeg_cas01.gat -map: aldeg_cas02.gat -map: aldeg_cas03.gat -map: aldeg_cas04.gat -map: aldeg_cas05.gat -map: gefg_cas01.gat -map: gefg_cas02.gat -map: gefg_cas03.gat -map: gefg_cas04.gat -map: gefg_cas05.gat -map: gld_dun01.gat -map: gld_dun02.gat -map: gld_dun03.gat -map: gld_dun04.gat -//map: guild_room.gat -map: guild_vs1.gat -map: guild_vs2.gat -map: guild_vs3.gat -map: guild_vs4.gat -map: guild_vs5.gat -map: job_hunte.gat -map: job_knt.gat -map: job_prist.gat -map: job_wiz.gat -map: pay_gld.gat -map: payg_cas01.gat -map: payg_cas02.gat -map: payg_cas03.gat -map: payg_cas04.gat -map: payg_cas05.gat -map: prt_gld.gat -map: prtg_cas01.gat -map: prtg_cas02.gat -map: prtg_cas03.gat -map: prtg_cas04.gat -map: prtg_cas05.gat - - -//--- Ep5.0 Yuno --- - -map: alde_alche.gat -map: in_rogue.gat -map: job_cru.gat -map: job_duncer.gat -map: job_monk.gat -map: job_sage.gat -map: mag_dun01.gat -map: mag_dun02.gat -map: monk_test.gat -map: yuno.gat -map: yuno_fild01.gat -map: yuno_fild02.gat -map: yuno_fild03.gat -map: yuno_fild04.gat -map: yuno_in01.gat -map: yuno_in02.gat -map: yuno_in03.gat -map: yuno_in04.gat -map: yuno_in05.gat - -//--- Ep6.0 - Amatsu --- -// Requires: kRO 08-10-03 or newer -// or kRO Sakray 09-09-03 or newer - -map: ama_dun01.gat -map: ama_dun02.gat -map: ama_dun03.gat -map: ama_fild01.gat -map: ama_in01.gat -map: ama_in02.gat -map: ama_test.gat -map: amatsu.gat - -//--- Ep6.1 - Gon Ryun --- - -map: gon_dun01.gat -map: gon_dun02.gat -map: gon_dun03.gat -map: gon_fild01.gat -map: gon_in.gat -map: gon_test.gat -map: gonryun.gat -map: sec_in01.gat -map: sec_in02.gat -map: sec_pri.gat - -//--- Ep6.2 - Umbala --- -// Requires: kRO 01-27-04 or newer -// or kRO Sakray 12-02-03 or newer -// or Akaru's SuperGRF 1.22 or newer -map: umbala.gat -map: um_dun01.gat -map: um_dun02.gat -map: um_fild01.gat -map: um_fild02.gat -map: um_fild03.gat -map: um_fild04.gat -map: um_in.gat - -//--- Ep6.3 - Niflheim --- -// Requires: kRO 02-23-04 or newer -// or kRO Sakray 01-09-04 or newer -// or Akaru's SuperGRF 1.32 or newer -map: niflheim.gat -map: nif_fild01.gat -map: nif_fild02.gat -map: nif_in.gat -map: yggdrasil01.gat - -//--- Ep6.4 - Valkyrie --- -// Requires: kRO ??-??-04 or newer -// or kRO Sakray 02-03-04 or newer -// or Akaru's SuperGRF 1.34 or newer -map: valkyrie.gat - -//--- Ep6.5 - Castle of Dragon (LouYang) --- -// Requires kRO Sakray 03-30 or newer -//(Akaru's SuperGRF required version: 1.52) -map: lou_in01.gat -map: lou_in02.gat -map: lou_dun03.gat -map: lou_dun02.gat -map: lou_dun01.gat -map: lou_fild01.gat -map: louyang.gat - -//--- Ep6.6 - Novice Guild Siege --- -//Requires kRO Sakray 04-07 or newer -//(Akaru's SuperGRF required version: 1.53) -//map: siege_test.gat -map: n_castle.gat -map: nguild_gef.gat -map: nguild_prt.gat -map: nguild_pay.gat -map: nguild_alde.gat - -//--- Ep6.7 - Jawaii --- -//Requires kRO Sakray 06-22 or newer -//(Akaru's SuperGRF required version: 1.63) -map: jawaii.gat -map: jawaii_in.gat - -// --- Ep6.8 - Geffenia --- -// Requires kRO Sakray 07-13 or newer -// (Akaru's SuperGRF required version: 1.64) -map: gefenia01.gat -map: gefenia02.gat -map: gefenia03.gat -map: gefenia04.gat - -// --- Ep6.x - Some Maps --- -//map: new_zone01.gat -//map: new_zone02.gat -//map: new_zone03.gat -//map: new_zone04.gat - -// --- Ep6.9 - New Payon --- -// Requires kRO Sakray 09-03 -// -- dunno -- -map: payon.gat -map: payon_in01.gat -map: payon_in02.gat -map: payon_in03.gat -//same names as old maps except that payon_in03.gat got added - -// --- Ep? - Ayothaya --- -// Requires kRO Sakray 09-21 -// -- 2004-10-19sdata_k.gpf -- -map: ayothaya.gat -map: ayo_in01.gat -map: ayo_in02.gat -map: ayo_fild01.gat -map: ayo_fild02.gat -map: ayo_dun01.gat -map: ayo_dun02.gat - -// --- God item quests maps --- -// -- 2004-10-12sdata_k3.gpf -- -map: que_god01.gat -map: que_god02.gat - -// Ragnarok World Championship 2004 -// Requires: RWC 2004 Client -// or Akaru's SuperGRF 1.64 or newer -//map: rwc01.gat -//map: rwc02.gat -//map: rwc03.gat - -//Christmas & Sakura Special -//Requires Akaru's SuperGRF 1.1 or newer -//map: prontera_x.gat -//map: alberta_x.gat -//map: aldebaran_x.gat -//map: geffen_x.gat -//map: izlude_x.gat -//map: prt_church_x.gat -//map: prontera_s.gat -//map: pay_arche_s.gat - -//Fenced Lutie -//Requires Akaru's SuperGRF 1.23 or newer -//map: xmas_old.gat - -//Maps that were not in the list but exist in Data.grf -//map: ordeal_a00.gat -//map: ordeal_a02.gat - -//Alpha Maps -//Requires adata.grf containing alpha maps and data -//map: fay_vilg00.gat -//map: fay_vilg01.gat -//map: gef_vilg00.gat -//map: gef_vilg01.gat -//map: moc_dugn01.gat -//map: moc_dugn02.gat -//map: moc_fild01.gat -//map: moc_fild02.gat -//map: moc_fild03.gat -//map: moc_fild04.gat -//map: moc_intr00.gat -//map: moc_intr01.gat -//map: moc_intr02.gat -//map: moc_intr04.gat -//map: moc_vilg00.gat -//map: moc_vilg01.gat -//map: moc_vilg02.gat -//map: probemap.gat -//map: probemap02.gat -//map: prt_cstl01.gat -//map: prt_dugn00.gat -//map: prt_dugn01.gat -//map: prt_fild00.gat -//map: prt_fild01.gat -//map: prt_fild03.gat -//map: prt_fild04.gat -//map: prt_fild05.gat -//map: prt_intr01.gat -//map: prt_intr01_a.gat -//map: prt_intr02.gat -//map: prt_vilg00.gat -//map: prt_vilg01.gat -//map: prt_vilg02.gat -//map: tank_test.gat -//map: tank_test2.gat +//------------------------- Maps --------------------------- +map: alb_ship.gat +map: alb2trea.gat +map: alberta.gat +map: alberta_in.gat +map: alde_dun01.gat +map: alde_dun02.gat +map: alde_dun03.gat +map: alde_dun04.gat +map: aldeba_in.gat +map: aldebaran.gat +map: anthell01.gat +map: anthell02.gat +map: arena_room.gat +map: c_tower1.gat +map: c_tower2.gat +map: c_tower3.gat +map: c_tower4.gat +map: force_1-1.gat +map: force_1-2.gat +map: force_1-3.gat +map: force_2-1.gat +map: force_2-2.gat +map: force_2-3.gat +map: force_3-1.gat +map: force_3-2.gat +map: force_3-3.gat +map: gef_dun00.gat +map: gef_dun01.gat +map: gef_dun02.gat +map: gef_dun03.gat +map: gef_fild00.gat +map: gef_fild01.gat +map: gef_fild02.gat +map: gef_fild03.gat +map: gef_fild04.gat +map: gef_fild05.gat +map: gef_fild06.gat +map: gef_fild07.gat +map: gef_fild08.gat +map: gef_fild09.gat +map: gef_fild10.gat +map: gef_fild11.gat +map: gef_tower.gat +map: geffen.gat +map: geffen_in.gat +map: gl_cas01.gat +map: gl_cas02.gat +map: gl_church.gat +map: gl_chyard.gat +map: gl_dun01.gat +map: gl_dun02.gat +map: gl_in01.gat +map: gl_knt01.gat +map: gl_knt02.gat +map: gl_prison.gat +map: gl_prison1.gat +map: gl_sew01.gat +map: gl_sew02.gat +map: gl_sew03.gat +map: gl_sew04.gat +map: gl_step.gat +map: glast_01.gat +map: hunter_1-1.gat +map: hunter_2-1.gat +map: hunter_3-1.gat +map: in_hunter.gat +map: in_moc_16.gat +map: in_orcs01.gat +map: in_sphinx1.gat +map: in_sphinx2.gat +map: in_sphinx3.gat +map: in_sphinx4.gat +map: in_sphinx5.gat +map: iz_dun00.gat +map: iz_dun01.gat +map: iz_dun02.gat +map: iz_dun03.gat +map: iz_dun04.gat +//map: iz_dun05.gat +map: izlu2dun.gat +map: izlude.gat +map: izlude_in.gat +map: job_thief1.gat +map: knight_1-1.gat +map: knight_2-1.gat +map: knight_3-1.gat +map: mjo_dun01.gat +map: mjo_dun02.gat +map: mjo_dun03.gat +map: mjolnir_01.gat +map: mjolnir_02.gat +map: mjolnir_03.gat +map: mjolnir_04.gat +map: mjolnir_05.gat +map: mjolnir_06.gat +map: mjolnir_07.gat +map: mjolnir_08.gat +map: mjolnir_09.gat +map: mjolnir_10.gat +map: mjolnir_11.gat +map: mjolnir_12.gat +map: moc_castle.gat +map: moc_fild01.gat +map: moc_fild02.gat +map: moc_fild03.gat +map: moc_fild04.gat +map: moc_fild05.gat +map: moc_fild06.gat +map: moc_fild07.gat +map: moc_fild08.gat +map: moc_fild09.gat +map: moc_fild10.gat +map: moc_fild11.gat +map: moc_fild12.gat +map: moc_fild13.gat +map: moc_fild14.gat +map: moc_fild15.gat +map: moc_fild16.gat +map: moc_fild17.gat +map: moc_fild18.gat +map: moc_fild19.gat +map: moc_pryd01.gat +map: moc_pryd02.gat +map: moc_pryd03.gat +map: moc_pryd04.gat +map: moc_pryd05.gat +map: moc_pryd06.gat +map: moc_prydb1.gat +map: moc_ruins.gat +map: monk_in.gat +map: morocc.gat +map: morocc_in.gat +map: new_1-1.gat +map: new_1-2.gat +map: new_1-3.gat +map: new_1-4.gat +//map: new_2-1.gat +//map: new_2-2.gat +//map: new_2-3.gat +//map: new_2-4.gat +//map: new_3-1.gat +//map: new_3-2.gat +//map: new_3-3.gat +//map: new_3-4.gat +//map: new_4-1.gat +//map: new_4-2.gat +//map: new_4-3.gat +//map: new_4-4.gat +//map: new_5-1.gat +//map: new_5-2.gat +//map: new_5-3.gat +//map: new_5-4.gat +map: orcsdun01.gat +map: orcsdun02.gat +map: ordeal_1-1.gat +map: ordeal_1-2.gat +//map: ordeal_1-3.gat +//map: ordeal_1-4.gat +map: ordeal_2-1.gat +map: ordeal_2-2.gat +//map: ordeal_2-3.gat +//map: ordeal_2-4.gat +map: ordeal_3-1.gat +map: ordeal_3-2.gat +//map: ordeal_3-3.gat +//map: ordeal_3-4.gat +map: pay_arche.gat +map: pay_dun00.gat +map: pay_dun01.gat +map: pay_dun02.gat +map: pay_dun03.gat +map: pay_dun04.gat +map: pay_fild01.gat +map: pay_fild02.gat +map: pay_fild03.gat +map: pay_fild04.gat +map: pay_fild05.gat +map: pay_fild06.gat +map: pay_fild07.gat +map: pay_fild08.gat +map: pay_fild09.gat +map: pay_fild10.gat +map: pay_fild11.gat +//map: payon.gat //moved down to new maps +//map: payon_in01.gat //moved down to new maps +//map: payon_in02.gat //moved down to new maps +map: priest_1-1.gat +map: priest_2-1.gat +map: priest_3-1.gat +map: prontera.gat +map: prt_are_in.gat +map: prt_are01.gat +//map: prt_arena01.gat +map: prt_castle.gat +map: prt_church.gat +map: prt_fild00.gat +map: prt_fild01.gat +map: prt_fild02.gat +map: prt_fild03.gat +map: prt_fild04.gat +map: prt_fild05.gat +map: prt_fild06.gat +map: prt_fild07.gat +map: prt_fild08.gat +map: prt_fild09.gat +map: prt_fild10.gat +map: prt_fild11.gat +map: prt_in.gat +map: prt_maze01.gat +map: prt_maze02.gat +map: prt_maze03.gat +map: prt_monk.gat +map: prt_sewb1.gat +map: prt_sewb2.gat +map: prt_sewb3.gat +map: prt_sewb4.gat +map: pvp_2vs2.gat +//map: pvp_c_room.gat +map: pvp_n_1-1.gat +map: pvp_n_1-2.gat +map: pvp_n_1-3.gat +map: pvp_n_1-4.gat +map: pvp_n_1-5.gat +map: pvp_n_2-1.gat +map: pvp_n_2-2.gat +map: pvp_n_2-3.gat +map: pvp_n_2-4.gat +map: pvp_n_2-5.gat +map: pvp_n_3-1.gat +map: pvp_n_3-2.gat +map: pvp_n_3-3.gat +map: pvp_n_3-4.gat +map: pvp_n_3-5.gat +map: pvp_n_4-1.gat +map: pvp_n_4-2.gat +map: pvp_n_4-3.gat +map: pvp_n_4-4.gat +map: pvp_n_4-5.gat +map: pvp_n_5-1.gat +map: pvp_n_5-2.gat +map: pvp_n_5-3.gat +map: pvp_n_5-4.gat +map: pvp_n_5-5.gat +map: pvp_n_6-1.gat +map: pvp_n_6-2.gat +map: pvp_n_6-3.gat +map: pvp_n_6-4.gat +map: pvp_n_6-5.gat +map: pvp_n_7-1.gat +map: pvp_n_7-2.gat +map: pvp_n_7-3.gat +map: pvp_n_7-4.gat +map: pvp_n_7-5.gat +map: pvp_n_8-1.gat +map: pvp_n_8-2.gat +map: pvp_n_8-3.gat +map: pvp_n_8-4.gat +map: pvp_n_8-5.gat +map: pvp_n_room.gat +map: pvp_y_1-1.gat +map: pvp_y_1-2.gat +map: pvp_y_1-3.gat +map: pvp_y_1-4.gat +map: pvp_y_1-5.gat +map: pvp_y_2-1.gat +map: pvp_y_2-2.gat +map: pvp_y_2-3.gat +map: pvp_y_2-4.gat +map: pvp_y_2-5.gat +map: pvp_y_3-1.gat +map: pvp_y_3-2.gat +map: pvp_y_3-3.gat +map: pvp_y_3-4.gat +map: pvp_y_3-5.gat +map: pvp_y_4-1.gat +map: pvp_y_4-2.gat +map: pvp_y_4-3.gat +map: pvp_y_4-4.gat +map: pvp_y_4-5.gat +map: pvp_y_5-1.gat +map: pvp_y_5-2.gat +map: pvp_y_5-3.gat +map: pvp_y_5-4.gat +map: pvp_y_5-5.gat +map: pvp_y_6-1.gat +map: pvp_y_6-2.gat +map: pvp_y_6-3.gat +map: pvp_y_6-4.gat +map: pvp_y_6-5.gat +map: pvp_y_7-1.gat +map: pvp_y_7-2.gat +map: pvp_y_7-3.gat +map: pvp_y_7-4.gat +map: pvp_y_7-5.gat +map: pvp_y_8-1.gat +map: pvp_y_8-2.gat +map: pvp_y_8-3.gat +map: pvp_y_8-4.gat +map: pvp_y_8-5.gat +map: pvp_y_room.gat +map: sword_1-1.gat +map: sword_2-1.gat +map: sword_3-1.gat +map: treasure01.gat +map: treasure02.gat +map: wizard_1-1.gat +map: wizard_2-1.gat +map: wizard_3-1.gat +map: xmas.gat +map: xmas_dun01.gat +map: xmas_dun02.gat +map: xmas_fild01.gat +map: xmas_in.gat + +//---Ep3.0 Comodo --- + +map: beach_dun.gat +map: beach_dun2.gat +map: beach_dun3.gat +map: cmd_fild01.gat +map: cmd_fild02.gat +map: cmd_fild03.gat +map: cmd_fild04.gat +map: cmd_fild05.gat +map: cmd_fild06.gat +map: cmd_fild07.gat +map: cmd_fild08.gat +map: cmd_fild09.gat +map: cmd_in01.gat +map: cmd_in02.gat +map: comodo.gat +map: gef_fild12.gat +map: gef_fild13.gat +map: gef_fild14.gat + +//---EP3.1 Quiz Revolution --- + +map: quiz_00.gat +map: quiz_01.gat + +//--- Ep4.0 Turtle Island --- + +map: tur_dun01.gat +map: tur_dun02.gat +map: tur_dun03.gat +map: tur_dun04.gat +map: tur_dun05.gat +map: tur_dun06.gat + +//--- Ep4.1 The War of Emperium --- + +map: alde_gld.gat +map: aldeg_cas01.gat +map: aldeg_cas02.gat +map: aldeg_cas03.gat +map: aldeg_cas04.gat +map: aldeg_cas05.gat +map: gefg_cas01.gat +map: gefg_cas02.gat +map: gefg_cas03.gat +map: gefg_cas04.gat +map: gefg_cas05.gat +map: gld_dun01.gat +map: gld_dun02.gat +map: gld_dun03.gat +map: gld_dun04.gat +//map: guild_room.gat +map: guild_vs1.gat +map: guild_vs2.gat +map: guild_vs3.gat +map: guild_vs4.gat +map: guild_vs5.gat +map: job_hunte.gat +map: job_knt.gat +map: job_prist.gat +map: job_wiz.gat +map: pay_gld.gat +map: payg_cas01.gat +map: payg_cas02.gat +map: payg_cas03.gat +map: payg_cas04.gat +map: payg_cas05.gat +map: prt_gld.gat +map: prtg_cas01.gat +map: prtg_cas02.gat +map: prtg_cas03.gat +map: prtg_cas04.gat +map: prtg_cas05.gat + + +//--- Ep5.0 Yuno --- + +map: alde_alche.gat +map: in_rogue.gat +map: job_cru.gat +map: job_duncer.gat +map: job_monk.gat +map: job_sage.gat +map: mag_dun01.gat +map: mag_dun02.gat +map: monk_test.gat +map: yuno.gat +map: yuno_fild01.gat +map: yuno_fild02.gat +map: yuno_fild03.gat +map: yuno_fild04.gat +map: yuno_in01.gat +map: yuno_in02.gat +map: yuno_in03.gat +map: yuno_in04.gat +map: yuno_in05.gat + +//--- Ep6.0 - Amatsu --- +// Requires: kRO 08-10-03 or newer +// or kRO Sakray 09-09-03 or newer + +map: ama_dun01.gat +map: ama_dun02.gat +map: ama_dun03.gat +map: ama_fild01.gat +map: ama_in01.gat +map: ama_in02.gat +map: ama_test.gat +map: amatsu.gat + +//--- Ep6.1 - Gon Ryun --- + +map: gon_dun01.gat +map: gon_dun02.gat +map: gon_dun03.gat +map: gon_fild01.gat +map: gon_in.gat +map: gon_test.gat +map: gonryun.gat +map: sec_in01.gat +map: sec_in02.gat +map: sec_pri.gat + +//--- Ep6.2 - Umbala --- +// Requires: kRO 01-27-04 or newer +// or kRO Sakray 12-02-03 or newer +// or Akaru's SuperGRF 1.22 or newer +map: umbala.gat +map: um_dun01.gat +map: um_dun02.gat +map: um_fild01.gat +map: um_fild02.gat +map: um_fild03.gat +map: um_fild04.gat +map: um_in.gat + +//--- Ep6.3 - Niflheim --- +// Requires: kRO 02-23-04 or newer +// or kRO Sakray 01-09-04 or newer +// or Akaru's SuperGRF 1.32 or newer +map: niflheim.gat +map: nif_fild01.gat +map: nif_fild02.gat +map: nif_in.gat +map: yggdrasil01.gat + +//--- Ep6.4 - Valkyrie --- +// Requires: kRO ??-??-04 or newer +// or kRO Sakray 02-03-04 or newer +// or Akaru's SuperGRF 1.34 or newer +map: valkyrie.gat + +//--- Ep6.5 - Castle of Dragon (LouYang) --- +// Requires kRO Sakray 03-30 or newer +//(Akaru's SuperGRF required version: 1.52) +map: lou_in01.gat +map: lou_in02.gat +map: lou_dun03.gat +map: lou_dun02.gat +map: lou_dun01.gat +map: lou_fild01.gat +map: louyang.gat + +//--- Ep6.6 - Novice Guild Siege --- +//Requires kRO Sakray 04-07 or newer +//(Akaru's SuperGRF required version: 1.53) +//map: siege_test.gat +map: n_castle.gat +map: nguild_gef.gat +map: nguild_prt.gat +map: nguild_pay.gat +map: nguild_alde.gat + +//--- Ep6.7 - Jawaii --- +//Requires kRO Sakray 06-22 or newer +//(Akaru's SuperGRF required version: 1.63) +map: jawaii.gat +map: jawaii_in.gat + +// --- Ep6.8 - Geffenia --- +// Requires kRO Sakray 07-13 or newer +// (Akaru's SuperGRF required version: 1.64) +map: gefenia01.gat +map: gefenia02.gat +map: gefenia03.gat +map: gefenia04.gat + +// --- Ep6.x - Some Maps --- +//map: new_zone01.gat +//map: new_zone02.gat +//map: new_zone03.gat +//map: new_zone04.gat + +// --- Ep6.9 - New Payon --- +// Requires kRO Sakray 09-03 +// -- dunno -- +map: payon.gat +map: payon_in01.gat +map: payon_in02.gat +map: payon_in03.gat +//same names as old maps except that payon_in03.gat got added + +// --- Ep? - Ayothaya --- +// Requires kRO Sakray 09-21 +// -- 2004-10-19sdata_k.gpf -- +map: ayothaya.gat +map: ayo_in01.gat +map: ayo_in02.gat +map: ayo_fild01.gat +map: ayo_fild02.gat +map: ayo_dun01.gat +map: ayo_dun02.gat + +// --- God item quests maps --- +// -- 2004-10-12sdata_k3.gpf -- +map: que_god01.gat +map: que_god02.gat + +// Ragnarok World Championship 2004 +// Requires: RWC 2004 Client +// or Akaru's SuperGRF 1.64 or newer +//map: rwc01.gat +//map: rwc02.gat +//map: rwc03.gat + +//Christmas & Sakura Special +//Requires Akaru's SuperGRF 1.1 or newer +//map: prontera_x.gat +//map: alberta_x.gat +//map: aldebaran_x.gat +//map: geffen_x.gat +//map: izlude_x.gat +//map: prt_church_x.gat +//map: prontera_s.gat +//map: pay_arche_s.gat + +//Fenced Lutie +//Requires Akaru's SuperGRF 1.23 or newer +//map: xmas_old.gat + +//Maps that were not in the list but exist in Data.grf +//map: ordeal_a00.gat +//map: ordeal_a02.gat + +//Alpha Maps +//Requires adata.grf containing alpha maps and data +//map: fay_vilg00.gat +//map: fay_vilg01.gat +//map: gef_vilg00.gat +//map: gef_vilg01.gat +//map: moc_dugn01.gat +//map: moc_dugn02.gat +//map: moc_fild01.gat +//map: moc_fild02.gat +//map: moc_fild03.gat +//map: moc_fild04.gat +//map: moc_intr00.gat +//map: moc_intr01.gat +//map: moc_intr02.gat +//map: moc_intr04.gat +//map: moc_vilg00.gat +//map: moc_vilg01.gat +//map: moc_vilg02.gat +//map: probemap.gat +//map: probemap02.gat +//map: prt_cstl01.gat +//map: prt_dugn00.gat +//map: prt_dugn01.gat +//map: prt_fild00.gat +//map: prt_fild01.gat +//map: prt_fild03.gat +//map: prt_fild04.gat +//map: prt_fild05.gat +//map: prt_intr01.gat +//map: prt_intr01_a.gat +//map: prt_intr02.gat +//map: prt_vilg00.gat +//map: prt_vilg01.gat +//map: prt_vilg02.gat +//map: tank_test.gat +//map: tank_test2.gat //map: test.gat \ No newline at end of file diff --git a/npc/jobs/2-2/alchemist.txt b/npc/jobs/2-2/alchemist.txt index e1480d0f3..f73b60029 100644 --- a/npc/jobs/2-2/alchemist.txt +++ b/npc/jobs/2-2/alchemist.txt @@ -1,1072 +1,1072 @@ -//===== eAthena Script ======================================= -//= Alchemist Job Quest -//===== By: ================================================== -//= nestor_zulueta (Fusion) -//= converted by Darkchild -//===== Current Version: ===================================== -//= 1.1 -//===== Compatible With: ===================================== -//= eAthena 1.0 + -//===== Description: ========================================= -//= Alchemist job quest based off of official iRO quest. -//===== Additional Comments: ================================= -//= v1.0 Working. -//= npc/quests/counteragent_mixture.txt Also Needed -//= npc/quests/quests_yuno.txt Also Needed [Darkchild] -//= v1.1 Fixed some minor bugs. Optimized some lines. Re-organized the script a bit. -//= Giving Parmry NPC, Hammer and Old Book now waves the 50000 fee. (based of mRO website) -//= Having a joblvl of 50 allows you to skip Raspuchin's test. (based of mRO website) [kobra_k88] -//============================================================ - - -//==================================================================================================// -// Registration and First Test -//==================================================================================================// -alde_alche.gat,27,185,4 script Parmry Gianino 744,{ - mes "[Parmry Gianino]"; - if(Class == 5) goto L_Merc; - if(Class == Job_Alchem) goto L_Alch; -L_Other: - mes "Welcome to the Alchemist Union. Ah, I apologize but I'm busy right now."; - close; -L_Alch: - mes "Hey there fellow Alchemist. How's the business going? Good I hope, well good luck to you."; - close; -L_Merc: - if(ALCH_Q == 1) goto L_Check; - if(ALCH_Q == 2) goto L_Test2; - if(ALCH_Q == 3) goto L_Test3; - if(ALCH_Q == 4) goto L_Test4; - if(ALCH_Q == 5) goto L_Test5; - if(ALCH_Q == 6) goto L_Test6; - if(ALCH_Q == 7) goto L_GoChange; - mes "Welcome to the Alchemist Union."; - mes "How may i help you?"; - next; - menu "I would like to learn about Alchemey",M_Learn, "I want to become an Alchemist.",L_Start, "Nothing.",M_End; - - M_Learn: - mes "[Parmry Gianino]"; - mes "Alchemists study and create new materials using a variety of existing substances."; - mes "They research the atoms of chemicals, and experiment to change the properties of the chemicals."; - next; - mes "[Parmry Gianino]"; - mes "Most people think the final goal is to create gold, but that's not the entire truth."; - mes "They make anything from simple medicines, to new materials."; - next; - mes "[Parmry Gianino]"; - mes "At times, some research the creation of life .... but that's considered god's territory..."; - mes "That field is so complex, everyone simply researhes for now."; - next; - mes "[Parmry Gianino]"; - mes "If you are interested in becoming an Alchemist, I recommend that you gain a lot experience as a Merchant."; - mes "Being a merchant is a great opportunity to learn about materials while you deal with them."; - next; - mes "[Parmry Gianino]"; - mes "Only you can decide for yourself."; - mes "The road to becoming an Alchemist is very challenging."; - mes "You will need to focus on experimenting and researching rather than trade."; - close; - M_End: - mes "[Parmry Gianino]"; - mes "Umm... Please say something if you need anything."; - close; -L_Start: - mes "[Parmry Gianino]"; - if(JobLevel < 40) goto L_LowLvl; - mes "Is that so? My name is Parmry Gianino of the Alchemist Association."; - mes "Nice to meet you."; - next; - mes "[Parmry Gianino]"; - mes "If you join our Union and pass some training you will be officially recognized,"; - mes "as an Alchemist and be able to join our researches."; - next; - mes "[Parmry Gianino]"; - mes "But we dont accept everyone."; - mes "You must have a lot of effort, tenacity, and be able to devote yourself to research."; - next; - mes "[Parmry Gianino]"; - mes "There are a couple of requirements to join the association...."; - mes "but we'll discuss that after you apply."; - next; - mes "[Parmry Gianino]"; - mes "Then, would you like to apply to register?"; - next; - menu "I would like to apply.",M_Apply,"I'll do it later.",-; - - mes "[Parmry Gianino]"; - mes "If you are a talented Merchant,"; - mes "you are always welcome here."; - mes "Come again soon."; - close; - M_Apply: - mes "[Parmry Gianino]"; - mes "Fill out this application form please....."; - next; - mes "(you fill out the form and hand it back)"; - next; - mes "[Parmry Gianino]"; - mes "Very good. In order to join the Alchemist Union you must first pay a ^5533FF50,000^000000 zeny membership fee."; - mes "You will also need to bring us a few items as well."; - next; - mes "[Parmry Gianino]"; - mes "Of course if you bring us an ^5533FFOld Magic Book^000000 and an ^5533FFHammer of Blacksmith^000000..."; - mes "You won't have to pay the fee."; - next; - mes "[Parmry Gianino]"; - mes "Let's see.... you'll need to bring us....^5533FF100 Mini Furnaces^000000."; - mes "Once you have the Mini Furnaces come back and see me."; - next; - mes "[Parmry Gianino]"; - mes "When you come back I will also collect the ^5533FF50,000^000000 zeny fee so don't forget about that either."; - mes "See you soon..."; - set ALCH_Q,1; - close; -L_LowLvl: - mes "You must be at least Job Level 40 to become a Alchemist."; - close; - -L_Check: - mes "Oh, your back already... lets see...."; - next; - mes "[Parmry Gianino]"; - if(countitem(612) < 100) goto L_NoItems; - if(countitem(1005) > 0 && countitem(1006) > 0) goto L_Skip; - if(zeny < 50000) goto L_NoZeny; - set zeny,zeny - 50000; - delitem 612, 100; - mes "You have 50,000 zeny...... You brought 100 mini furnaces.... Great!"; - mes "Now you are ready to learn the basics of being an Alchemist."; - next; - - L_Cont: - mes "[Parmry Gianino]"; - mes "But before that... ^5533FFRaspuchin^000000 wants to see you....."; - mes "Hmm..... I'm not sure what it could be about...."; - next; - mes "[Parmry Gianino]"; - mes "You should go visit him now. Just go down those stairs to my right. His room is in the SouthEastern corner."; - set ALCH_Q,2; - close; - - L_NoZeny: - mes "You still need to pay the ^FF553350,000^000000 zeny membership fee."; - mes "Let me know when you have enough money."; - close; - L_NoItems: - mes "As I mentioned before, you must bring ^FF3355100 Mini Furnaces^000000 to join the union."; - mes "Please come back when you are ready..."; - close; -L_Skip: - mes "Oh, you have an ^5533FFOld Magic Book^000000 and an ^5533FFHammer of Blacksmith^000000........"; - mes "That means you don't have to pay the membership fee."; - next; - mes "[Parmy Gianino]"; - mes "Excellent. Now I'll just take the Book, Hammer, 100 mini furnaces, and you'll be all set to learn the basics of being an Alchemist."; - next; - delitem 1005,1; - delitem 1006,1; - delitem 612, 100; - goto L_Cont; - -L_Test2: - mes "Go visit ^5533FFRaspuchin^000000 now!"; - close; -L_Test3: - mes "Go visit ^5533FFDarwin^000000 now!"; - close; -L_Test4: - mes "Go visit ^5533FFVan Helmont^000000 now!"; - close; -L_Test5: - mes "Go visit ^5533FFNicholas Flamel^000000 now!"; - close; -L_Test6: - mes "Go back to ^5533FFNicholas Flamel^000000 now!"; - mes "He still has one more test for you."; - close; -L_GoChange: - mes "Wow you finished all of the tests? Great now you can visit the Headmaster, ^5533FFVincent Carsciallo^000000."; - mes "He's the one who will change you into an Alchemist."; - close; -} - - -//==================================================================================================// -// 2nd Test: Math test :( -//==================================================================================================// -alde_alche.gat,175,107,4 script Raspuchin Gregory 749,{ - mes "[Raspuchin Gregory]"; - if(class == 5) goto L_Merc; -L_Other: - mes "What is it, kikikiki. Are you curious about what I do...?"; - mes "I'll just especially let you know. You see I... Kekeke.."; - next; - mes "[Raspuchin Gregory]"; - mes "Am researching! Once this potion is complete... you will be able to take over an entire country!!"; - next; - mes "[Raspuchin Gregory]"; - mes "Kikikikikekekekek. It's a secret to the people of Prontera....."; - close; -L_Merc: - if(ALCH_Q == 2) goto L_Start; - if(ALCH_Q == 3) goto L_Done; - mes "Kikikikikekekekeke."; - mes "What is it! You punk."; - next; - mes "[Raspuchin Gregory]"; - mes "A Merchant should go and set up a shop..."; - mes "Why'd you come to a place like this!?"; - mes "Are you looking for something to scab off?"; - next; - mes "[Raspuchin Gregory]"; - mes "Kikiki... Go, leave this place."; - mes "Dont loiter ... Kekeke."; - close; -L_Start: - if(ALCH_Q2 == 1) goto L_ReTest; - if(JobLevel == 50) goto L_Skip; - mes "Keke, another dumb one has stumbled into here."; - mes "Join the Union?"; - next; - mes "[Raspuchin Gregory]"; - mes "I don't like it... I just don't...!"; - mes "Everywhere, all joining and being called Alchemist just for knowing how to mix herbs!!!"; - next; - mes "[Raspuchin Gregory]"; - mes "Kikiki, so for that reason an interview is necessary!"; - mes "I plan on scolding all the incompetent ones and chasing them away!!"; - next; - mes "[Raspuchin Gregory]"; - mes "You look dumb founded. It must be pretty crazy."; - mes "If you were thinking of just changing clothes you thought wrong... Kekeke.."; - next; - mes "[Raspuchin Gregory]"; - mes "Now try solving the problems I give you."; - mes "We'll see how smart you are."; - next; - set @score,0; - - //set of question 1 - q1: - mes "[Raspuchin Gregory]"; - mes "12+23+34+45 =?"; - next; - input @num; - if(@num == 114) set @score,@score+10; - q2: - mes "[Raspuchin Gregory]"; - mes "1000-36-227-348 =?"; - next; - input @num; - if(@num == 389) set @score,@score+10; - q3: - mes "[Raspuchin Gregory]"; - mes "9765/3/5/7 =?"; - next; - input @num; - if(@num == 93) set @score,@score+10; - q4: - mes "[Raspuchin Gregory]"; - mes "(2646/7) + (13*28) =?"; - next; - input @num; - if(@num == 742) set @score,@score+10; - q5: - mes "[Raspuchin Gregory]"; - mes "With a 24% discount"; - mes "How much are 12 Red Potions,"; - mes "5 Fly Wings, and "; - mes "1 Butterfly Wing altogether?"; - next; - input @num; - if(@num == 909) set @score,@score+10; - q6: - mes "[Raspuchin Gregory]"; - mes "What is the total weight of 3 "; - mes "Scimiters,"; - mes "2 Helms and 1 Coat"; - next; - input @num; - if(@num == 450) set @score,@score+10; - q7: - mes "[Raspuchin Gregory]"; - mes "What is the total defense of "; - mes "a Biretta, Mantle, Opera Mask,"; - mes "Ribbon, "; - mes "Muffler, Boots, and Ear Muffs?"; - next; - input @num; - if(@num == 22) set @score,@score+10; - q8: - mes "[Raspuchin Gregory]"; - mes "If you buy 5 Helms with a 24%"; - mes "discount "; - mes "and sell it at 20%, how much do you"; - mes "earn?"; - next; - input @num; - if(@num == 1760) set @score,@score+10; - goto L_Total; - -L_ReTest: - mes "What, you want to take the test again?"; - mes "I thought I told you to leave."; - next; - mes "[Raspuchin Gregory]"; - mes "Well, I'll let you go this one time..."; - mes "I forgive you ... Kekeke."; - mes "Do well this time..."; - next; - mes "[Raspuchin Gregory]"; - mes "Now then, answer the question I ask."; - mes "Let see how smart you are."; - next; - set @score,0; - - //set of question 2 - q11: - mes "[Raspuchin Gregory]"; - mes "13+25+37+48=?"; - next; - input @num; - if(@num == 123) set @score,@score+10; - q12: - mes "[Raspuchin Gregory]"; - mes "1000-58-214-416 =?"; - next; - input @num; - if(@num == 312) set @score,@score+10; - q13: - mes "[Raspuchin Gregory]"; - mes "12*24*3=?"; - next; - input @num; - if(@num == 864) set @score,@score+10; - q14: - mes "[Raspuchin Gregory]"; - mes "10530/3/5/2=?"; - next; - input @num; - if(@num == 351) set @score,@score+10; - q15: - mes "[Raspuchin Gregory]"; - mes "(35*19) - (1792/7) =?"; - next; - input @num; - if(@num == 400) set @score,@score+10; - q16: - mes "[Raspuchin Gregory]"; - mes "(2368/8) + (24*17) = ?"; - next; - input @num; - if(@num == 704) set @score,@score+10; - q17: - mes "[Raspuchin Gregory]"; - mes "(2646/7) + (13*28)=?"; - next; - input @num; - if(@num == 742) set @score,@score+10; - q18: - mes "[Raspuchin Gregory]"; - mes "If buying at a 24% discount,"; - mes "What is the total price of"; - mes "15 Green Potions,"; - mes "6 Magnifiers and 4 Traps?"; - next; - input @num; - if(@num == 934) set @score,@score+10; - q19: - mes "[Raspuchin Gregory]"; - mes "What is the total weight of "; - mes "3 Ring Pommels Saber,"; - mes "4 Caps and 2 Boots?"; - next; - input @num; - if(@num == 550) set @score,@score+10; - q20: - mes "[Raspuchin Gregory]"; - mes "What is the total defense of a "; - mes "Bucler, Coat, Gas Mask, Big"; - mes "Ribbon, Ribbon, Sakkat and"; - mes "Glasses?"; - next; - input @num; - if(@num == 16) set @score,@score+10; - q21: - mes "[Raspuchin Gregory]"; - mes "How much zeny do you make"; - mes "if you buy Tights at a 24%"; - mes "discount"; - mes "and sell it at 20% of the normal"; - mes "price?"; - next; - input @num; - if(@num == 2840) set @score,@score+10; -L_Total: - mes "[Raspuchin Gregory]"; - if(@score < 80) goto L_Failed; - set ALCH_Q,3; - set ALCH_Q2, 0; - mes "Kikiki... I'll let you go."; - mes "Do some good research and be of some help to Raspuchin... Kikiki!"; - next; - mes "[Raspuchin Gregory]"; - mes "Well then go! ^5533FFGo to Darwin^000000."; - mes "He'll teach you how to do the experiments."; - mes "Tell him I sent you."; - next; - mes "[Raspuchin Gregory]"; - mes "Kikikikekeke."; - mes "Dont think this is the end of it!"; - close; - - L_Failed: - set ALCH_Q2,1; - mes "...Kekeke, you idiot,"; - mes "I feel dumb asking you all the question!"; - mes "you got them all wrong!!!"; - next; - mes "[Raspuchin Gregory]"; - mes "How can a person that can't even answer these question think of being an Alchemist!"; - mes "What? did you get any right?"; - next; - mes "[Raspuchin Gregory]"; - mes "Stupid! If you get one wrong everything is wrong for an Alchemist!"; - mes "Go! Leave! Get out of here!"; - close; -L_Done: - mes "What are you doing? Leave already."; - mes "Go to ^5533FFDarwin^000000."; - mes "He'll teach you how to do the experiments."; - mes "Tell him I sent you."; - next; - mes "[Raspuchin Gregory]"; - mes "Kikikikekeke."; - mes "Dont think this is the end of it!"; - close; -L_Skip: - mes "Hmm... you have a pretty high job level..... I'll be nice today and let you pass."; - mes "Next you should go see ^5533FFDarwin^000000."; - mes "He'll teach you how to do the experiments."; - mes "Tell him I sent you."; - set ALCH_Q,3; - set ALCH_Q2, 0; - close; -} - - -//==================================================================================================// -// 3rd Test: Mix some medicine -//==================================================================================================// -alde_alche.gat,13,15,8 script Darwin 750,{ - mes "[Darwin]"; - if(class == 5) goto L_Merc; -L_Other: - mes "more to lose or gain..."; - mes "It's always like that..."; - next; - mes "[Darwin]"; - mes "All I can see through my cursed eyes"; - mes "are illusions from the past,"; - mes "Ahahahaha..."; - next; - mes "[Darwin]"; - mes "There's no such thing as paradise ... is there ?"; - mes "My love Harmona.... Aah...."; - close; - -L_Merc: - if(ALCH_Q == 3) goto L_Start; - if(ALCH_Q == 4) goto L_Done; - goto L_Other; - -L_Start: - if(ALCH_Q2 == 1) goto L_Check; - mes "..........."; - mes "........."; - mes "....Who is it..."; - next; - mes "[Darwin]"; - mes "A wolf? Or a human..."; - mes "You must be looking for something as well."; - next; - mes "[Darwin]"; - mes "If you have something precious, be careful."; - mes "You may lose something else while while going after another..."; - next; - mes "[Darwin]"; - mes ".........."; - next; - mes "[Darwin]"; - mes "... but what brings you here."; - mes "Coming to a place like this."; - next; - menu "I want to learn how to experiment.",M_Exp, "Tell me more about flowers.",M_Flow; - - M_Flow: - mes "[Darwin]"; - mes "......."; - mes "......"; - mes "...think about your precious things..."; - next; - mes "[Darwin]"; - mes ".... There is a flower that I faintly remember...."; - next; - mes "[Darwin]"; - mes "I divulged into researching one thing....."; - mes "for the one I love..."; - next; - mes "[Darwin]"; - mes "Lets just say that it was about the relationship between wolf and flowers..."; - mes "I wont tell you the details."; - next; - mes "[Darwin]"; - mes "But yes ... it was a flower."; - mes "with its shine, it was said to let you see paradise Illusion Flower..."; - next; - mes "[Darwin]"; - mes "I made a homunculus."; - mes "Nobody believe me. that I made life from a flower!!!"; - mes "My research!"; - next; - mes "[Darwin]"; - mes "But now, I have nothing left.."; - mes "It's all over."; - mes "Time has stopped at that moment in my life..."; - next; - mes "[Darwin]"; - mes "Aag... Harmona, in the beautiful fields of flowers,"; - mes "where have you gone...."; - close; - M_Exp: - mes "[Darwin]"; - mes "You want to learn Alchemy..."; - mes "All the knowledge I possess.."; - mes "I made to make my dreams come true..."; - next; - mes "[Darwin]"; - mes "I'll teach you the basics..."; - mes "but you must determine your own wishes."; - next; - mes "[Darwin]"; - mes "So, here are the basics."; - mes "This is how you make simple medicine..."; - mes "Prepare some stuff..."; - next; - mes "[Darwin]"; - mes "^5533FF3 Medicine Bowls"; - mes "3 Empty Bottles"; - mes "1 Red Herb"; - mes "1 Yellow Herb"; - mes "1 White Herb^000000"; - next; - mes "[Darwin]"; - mes "Once you have prepared all the items... come here."; - set ALCH_Q2, 1; - close; - -L_Check: - mes "..........."; - mes "........."; - mes "...Who is it...."; - next; - mes "[Darwin]"; - mes "Ah You're the one that wants to learn Alchemy..."; - mes "So did you prepare everything?"; - next; - if(countitem(7134) < 3 || countitem(713) < 3 || countitem(507) < 1 || countitem(508) < 1 || countitem(509) < 1) goto L_NotEnuf; - delitem 7134,3; - delitem 713,3; - delitem 507,1; - delitem 508,1; - delitem 509,1; - mes "[Darwin]"; - mes "Seems like you have everything ready."; - mes "As i promised, I'll teach you how to make medicine"; - next; - mes "[Darwin]"; - mes "First, prepare the Medicine Bowl then put the Herbs inside like this."; - mes "And you slowly crush them."; - next; - mes "[Darwin]"; - mes "Pour small amounts of clean water and stirr until it become thick, "; - mes "then add some more Herbs."; - next; - mes "[Darwin]"; - mes "That's how you make it if you think you have enough, "; - mes "gently pour it into an empty bottle"; - next; - mes "[Darwin]"; - mes "There you go, its complete."; - mes "This time, do as I showed you."; - mes "It should be easy since its so simple."; - next; - mes "[Darwin]"; - mes "... even though you don't have one?"; - next; - set @score,0; - menu "Prepare the medicine bowl",-, "Wear the medicine bowl on the head",M_0, "Kick the medicine bowl",M_0; - - set @score,@score+10; - M_0: - - menu "Put the sand into the medicine bowl",M_1, "Put the herbs into the medicine bowl",-, "Put the harp into the medicine bowl",M_1; - - set @score,@score+10; - M_1: - - menu "Smash the herbs",-, "Smash the medicine bowl",M_2, "Smash the Tarosia's foots",M_2; - - set @score,@score+10; - M_2: - - menu "Spray the water",M_3, "Drink the water",M_3, "Pour in the water",-; - - set @score,@score+10; - M_3: - - menu "Continue to smash the herbs",-, "Continues to eat the herbs",M_4, "Continues to dance and sing",M_4; - - set @score,@score+10; - M_4: - - menu "Put in the noodles and fried it",M_5, "Put into the Empty Bottle",-, "Raise the medicine bowl and drink it",M_5; - - set @score,@score+10; - M_5: - - mes "[Darwin]"; - if(@score < 60) goto L_Failed; - mes "... Good job. It came out prettywell considering it's your first time..."; - mes "As a souvenier, take these."; - getitem 501,1; - getitem 503,1; - getitem 504,1; - set ALCH_Q,4; - set ALCH_Q2,0; - next; - mes "[Darwin]"; -L_Done: - mes "Go to ^5533FFVan Helmont^000000 in the next room..."; - mes "He'll teach you more details."; - mes "Go learn from him."; - next; - mes "[Darwin]"; - mes "Don't forget..."; - mes "You must protect what is trully precious to you....."; - close; - - L_Failed: - mes "... You messed up all the ingredients."; - mes "... Go bring some more."; - close; -L_NotEnuf: - mes "[Darwin]"; - mes "...You must've forgotten the materials to bring."; - mes "I'll tell you again."; - mes "Dont forget them this time."; - next; - mes "[Darwin]"; - mes "^5533FF3 Medicine Bowls"; - mes "3 Empty Bottles"; - mes "1 Red Herb"; - mes "1 Yellow Herb"; - mes "1 White Herb^000000"; - next; - mes "[Darwin]"; - mes "Come back when you are ready..."; - close; -} - - -//==================================================================================================// -// 4th Test: Learn from Morgenstein -//==================================================================================================// -alde_alche.gat,79,19,4 script Van Helmont 748,{ - mes "[Van Helmont]"; - if(class == 5) goto L_Merc; -L_Other: - mes "Just a little ... yes, a little bit more ...."; - mes "agh, just a little bit more and it would've been done!"; - next; - mes "[Van Helmont]"; - mes "Why, why another failure!!!"; - mes "Nothing was wrong!"; - mes "Why! Why!"; - next; - mes "[Van Helmont]"; - mes "Does that mean I have to get more materials..."; - mes "But I should be able to complete it one day....Heeh..."; - close; -L_Merc: - if(ALCH_Q == 4) goto L_Start; - if(ALCH_Q == 5) goto L_Done; - goto L_Other; -L_Start: - if(ALCH_Q2 == 1) goto L_Check; - mes "Arrrrgh... Why does this formula just stop... What's wrong."; - mes "Theoretically it's all correct..."; - mes "I'm sure it's because there is an error in the formula"; - mes "somewhere..."; - next; - mes "[Van Helmont]"; - mes "That's it, I pour it here and it should stop... but this is the formula that solution doesn't stop flowing."; - mes " How could I make such a stupid mistake... when did I switch these..."; - next; - mes "[Van Helmont]"; - mes "Yes, that's it. I just need to fix this part."; - mes "No need to start over."; - mes "I just have to fix it..."; - mes "....But, wait. wait."; - next; - mes "[Van Helmont]"; - mes "....................."; - next; - mes "[Van Helmont]"; - mes "....Who are you?"; - next; - menu "I want to become an Alchemist.",-,".....",M_Bye; - - mes "[Van Helmont]"; - mes "Oh, I see...."; - mes "Haha you want to learn Alchemy in world like this, what a funny merchant... hmmm."; - next; - mes "[Van Helmont]"; - mes "Well, that's nice, but I have a very urgent experiment I must tend to."; - mes "So don't get in the way."; - next; - menu "Teach me something.",-,"..........",M_Bye; - - mes "[Van Helmont]"; - mes "Argh... didn't I just tell you not to bother me?"; - mes "Why can't you understand when I say something!"; - next; - mes "[Van Helmont]"; - mes "Ok, I'll give you an assignment."; - mes "Go study and come back. Let's see."; - mes "What would be good... Hmm..."; - next; - mes "[Van Helmont]"; - mes "Oh, I got it. Go learn from ^5533FFMorgenstein^000000. Learn how to make a ^009500Counteragent^000000 and ^FF3355Mixture^000000."; - mes "You can find him in ^5533FFGeffen^000000."; - next; - mes "[Van Helmont]"; - mes "You don't need to bring what you made. But just go watch how he makes medicine and stuff."; - mes "Got it?"; - next; - mes "[Van Helmont]"; - mes "Well then, see you later."; - mes "You'd be best off going as soon as you can."; - set ALCH_Q2,1; - close; - M_Bye: - mes "[Van Helmont]"; - mes "If you dont have business here just go away. Ok!!!"; - close; -L_Check: - if(al_morgen != 1) goto L_NotRdy; - mes "Yes, cut the Tentacle.."; - mes "and mix some Sticku Mucus,"; - mes "Jellopy solution in the test tube Darn, where did the Medicine Bowl go..."; - next; - mes "[Van Helmont]"; - mes "Did I use them all.. At a time like this, grrr. I wonder if Nicholas has any left."; - mes "Ganfunnit... what a pain."; - mes "....but, wait. wait."; - next; - mes "[Van Helmont]"; - mes "Ah, you're that merchant from before. So.. did you learn anything?"; - mes "I didn't send you there to play."; - next; - mes "[Van Helmont]"; - mes "Let me ask you a couple of questions. Answer how you heard and learned."; - next; - set @score,0; - - Q_1a: - mes "[Van Helmont]"; - mes "What item is required to form the Counteragent?"; - next; - menu "Feather",-,"Sticky Mucus",-,"Animal Blood",-; - - Q_1b: - mes "[Van Helmont]"; - mes "Which of the following item is not required in forming the Counteragent?"; - next; - menu "Karvodailnirol",-,"Detrimindexta",Q_2a,"Alchol",Q_2a; - - set @score,@score+10; - - Q_2a: - mes "[Van Helmont]"; - mes "What item is required to form the Mixture?"; - next; - menu "Monster's Feed",-,"Lip of Ancient Fish",-,"Rotten Bandage",-; - - Q_2b: - mes "[Van Helmont]"; - mes "Which of the following item is not required in the process of forming the Mixture?"; - next; - menu "Karvodailnirol",L_Result,"Detrimindexta",-,"Alchol",L_Result; - - set @score,@score+10; - -L_Result: - mes "[Van Helmont]"; - if(@score < 20) goto L_Failed; - mes "Hmm, you learned well. Ok, now you know some stuff about medicine?"; - mes "Eh?"; - mes "I know, you must have a lot to say but let me continue with my experiment."; - next; - mes "[Van Helmont]"; - mes "Go out and to the room next to here. ^5533FFNicholas^000000 probably has more to teach you than me."; - set ALCH_Q,5; - set ALCH_Q2,0; - set al_morgen, 0; - close; - - L_Failed: - mes "...Be honest. You don't know,"; - mes "do you? I thought I told you to go learn from Morgenstein..."; - next; - mes "[Van Helmont]"; - mes "Don't even think about coming back before you've learned for sure!"; - mes "Stop bothering me and leave!"; - close; -L_NotRdy: - mes "Didn't I tell you to visit Morgenstein in Geffen!?!"; - mes "He is a wise man! You should go to him!"; - close; -L_Done: - mes "What are you doing? Go out and to the room next to here. ^5533FFNicholas^000000 probably has more to teach you than me."; - mes "I have no more business with you."; - close; - -} - - -//==================================================================================================// -// Test 5 & 6: Word Scramble, Help the Baijin Bros. -//==================================================================================================// -alde_alche.gat,145,19,4 script Nicholas Flamel 57,{ - mes "[Nicholas Flamel]"; - if(class == 5) goto L_Merc; -L_Other: - mes "Lorem ipsum dolor sit amet,"; - mes "consectetuer adipiscing elit."; - mes "Vivamus sem. Sed metus lacus, viverra id, rutrum eget, rhoncus sit amet, lectus."; - mes "Suspendisse sit amet urna in nisl frigilla faucibus."; - mes "Nulla scelerisque eros...."; - mes "......mumblemumble........"; - close; -L_Merc: - if(ALCH_Q == 5) goto L_Start; - if(ALCH_Q == 6) goto L_Start2; - if(ALCH_Q == 7) goto L_Done; - goto L_Other; -L_Start: - if(ALCH_Q2 == 1) goto L_ReTest; - mes "Ooh... you're the Merchant that wants to become an Alchemist?"; - mes "But you know... not anyone can become an Alchemist."; - next; - mes "[Nicholas Flamel]"; - mes "The Union doesn't like those that just want to become Alchemist without a clear goal."; - mes "So... to see if you qualify, I'll test how smart you are."; - next; - mes "[Nicholas Flamel]"; - mes "As you can see, Alchemist must memorize many equations,"; - mes "chemical equations and a lot of other information."; - mes "If you're not at a certain level.."; - mes "it's actually pretty tough."; - next; - mes "[Nicholas Flamel]"; - mes "The idea is to prevent those that are going to be useless Alchemists from joining the union!"; - next; - mes "[Nicholas Flamel]"; - mes "Ok... Here go the questions!"; - mes "This is to test your concentration so that you won't get confused when looking at charts."; - next; - mes "[Nicholas Flamel]"; - mes "Find the words from the group of letters. They can be made by using some or all the letters given"; - next; - mes "[Nicholas Flamel]"; - mes "You pass if you choose the word that is 'IN' the puzzle."; - next; - - Q_1: - set @score,0; - mes "[Nicholas Flamel]"; - mes "s m i e x b w u n e n t a g l r"; - next; - menu "tiger",-,"wolf",Q_2,"pumpkin",Q_2,"tripped",Q_2; - - set @score,@score+10; - - Q_2: - mes "[Nicholas Flamel]"; - mes "n i e g b o p d s o a u w r v"; - next; - menu "bash",Q_3,"provoke",Q_3,"endure",-,"stun",Q_3,"abracadabra",Q_3; - - set @score,@score+10; - - Q_3: - mes "[Nicholas Flamel]"; - mes "l r m g r e x t a v i n e d e"; - next; - menu "alberta",Q_4,"latifoliate",Q_4,"crimson",Q_4,"maple",Q_4,"evergreen",-; - - set @score,@score+10; - - Q_4: - mes "[Nicholas Flamel] "; - mes "r o e h n r o m c a i n p t t"; - next; - menu "forgemerchant",L_Score,"potionmerchant",-,"dcmerchant",L_Score,"vendingmerchant",L_Score; - - set @score,@score+10; -L_Score: - if(@score < 40) goto L_Failed; - set ALCH_Q,6; - set ALCH_Q2,0; - mes "[Nicholas Flamel]"; - mes "You seem to be done."; - next; - mes "[Nicholas Flamel]"; - mes "Let's see."; - mes "...Good job. Excellent."; - next; - mes "[Nicholas Flamel]"; - mes "Somehow you found all of them."; - mes "With that kind of concentration, you should easily be able to read the medicine dictionaries."; - mes "Let's see... next is.."; - next; - mes "[Nicholas Flamel]"; - mes "Come back in a little bit. Get organized too.."; - close; - - L_Failed: - mes "[Nicholas Flamel]"; - mes "Hmmm... You failed!"; - mes "Get your glasses maybe you can pass next time wearing those."; - set ALCH_Q2,1; - close; -L_ReTest: - mes "Hmmm you returned."; - mes "Well will see if you changed."; - next; - goto Q_1; - -L_Start2: - if(ALCH_Q2 > 0) goto L_Check2; - mes "Next, you have to go somewhere."; - mes "Go to ^5533FF'The Forgotten City of Juno'^000000 and meet the ^FF3355Bain and Bajin^000000 brothers who are researching alchemy with the Sages there."; - next; - mes "[Nicholas Flamel]"; - mes "Go help out and come back Here, take these... it will help you get close to them."; - next; - getitem 974,1; - getitem 7068,5; - getitem 7043,5; - getitem 756,3; - getitem 757,3; - mes "[Nicholas Flamel]"; - mes "1 Mixture"; - mes "5 Burnt Tree"; - mes "5 Fine Sand "; - mes "3 Rough Oridecon "; - mes "3 Rough Elunium"; - set ALCH_Q2,1; - next; - mes "[Nicholas Flamel]"; - mes "Have a safe trip."; - mes "It's Juno. Come back in one piece."; - close; -L_Check2: - if(ALCH_Q2 < 2) goto L_NotDone; - set ALCH_Q, 7; - set ALCH_Q2, 0; - mes "Ooh! Well done on such a long trip."; - mes "I got a message saying that the Bain and Bajin brothers were happy about your visit."; - next; - mes "[Nicholas Flamel]"; - mes "You must have successfully helped them."; - mes "If you're good enough to be of help to the brothers... ok, I think you qualify."; - next; - mes "[Nicholas Flamel]"; -L_Done: - mes "Go to the Union Leader on the 2nd floor!"; - mes "Congratulations. You'll change jobs soon!"; - close; - - L_NotDone: - mes "Bain and Bajin brothers are in Juno go help them."; - close; - -} - - -//==================================================================================================// -// Job Changer -//==================================================================================================// -alde_alche.gat,101,184,4 script Vincent Carsciallo 122,{ - mes "[Vincent Carsciallo]"; - if(Class == 5) goto L_Merc; - if(Class == Job_Alchem) goto L_Alch; -L_Other: - mes "Hmmm? What may a civilian have to do here?"; - next; - mes "[Vincent Carsciallo]"; - mes "There's nothing amusing. Dont wander and leave."; - close; -L_Alch: - mes "How Alchemy going? Make sure to be carefull and think about safety at all times."; - mes "I wouldn't want you blowing yourself up or anything....."; - close; -L_Merc: - if(ALCH_Q == 7) goto L_Change; - mes "Hmmm? A merchant."; - mes "Are you interested in Alchemy?"; - next; - mes "[Vincent Carsciallo]"; - mes "This is the Alchemist Union."; - mes "We research many different substances."; - mes "Our goal is to make something new without the power of magic."; - next; - mes "[Vincent Carsciallo]"; - mes "Create new life, and study how to live long and not die ..."; - mes "We also make new materials out of existing ones..."; - mes "These are just some of the things we do."; - next; - mes "[Vincent Carsciallo]"; - mes "After being a Merchant for a long time "; - mes "you start to become interested in everything."; - mes "If you would like to learn Alchemy as well,"; - mes "try joining our Union."; - close; -L_Change: - if(skillpoint != 0) goto L_Skpoint; - mes "Ooh, ok. You joined and learned the basics, too. Well done."; - next; - jobchange 18; - emotion 46; - mes "[Vincent Carsciallo]"; - mes "From now on, you are also a member of the Union as an Alchemist."; - mes "I hope you learn a lot..."; - next; - getitem 7127,1; - mes "[Vincent Carsciallo]"; - mes "Here's a little something. "; - mes "Use it to start off with some research."; - next; - mes "[Vincent Carsciallo]"; - mes "I'll see you later then..."; - mes "Be proud of being an Alchemist!"; - callfunc "F_ClearJobVar"; - close; - - L_Skpoint: - mes "Please use all your skill point before talking to me."; - close; -} +//===== eAthena Script ======================================= +//= Alchemist Job Quest +//===== By: ================================================== +//= nestor_zulueta (Fusion) +//= converted by Darkchild +//===== Current Version: ===================================== +//= 1.1 +//===== Compatible With: ===================================== +//= eAthena 1.0 + +//===== Description: ========================================= +//= Alchemist job quest based off of official iRO quest. +//===== Additional Comments: ================================= +//= v1.0 Working. +//= npc/quests/counteragent_mixture.txt Also Needed +//= npc/quests/quests_yuno.txt Also Needed [Darkchild] +//= v1.1 Fixed some minor bugs. Optimized some lines. Re-organized the script a bit. +//= Giving Parmry NPC, Hammer and Old Book now waves the 50000 fee. (based of mRO website) +//= Having a joblvl of 50 allows you to skip Raspuchin's test. (based of mRO website) [kobra_k88] +//============================================================ + + +//==================================================================================================// +// Registration and First Test +//==================================================================================================// +alde_alche.gat,27,185,4 script Parmry Gianino 744,{ + mes "[Parmry Gianino]"; + if(Class == 5) goto L_Merc; + if(Class == Job_Alchem) goto L_Alch; +L_Other: + mes "Welcome to the Alchemist Union. Ah, I apologize but I'm busy right now."; + close; +L_Alch: + mes "Hey there fellow Alchemist. How's the business going? Good I hope, well good luck to you."; + close; +L_Merc: + if(ALCH_Q == 1) goto L_Check; + if(ALCH_Q == 2) goto L_Test2; + if(ALCH_Q == 3) goto L_Test3; + if(ALCH_Q == 4) goto L_Test4; + if(ALCH_Q == 5) goto L_Test5; + if(ALCH_Q == 6) goto L_Test6; + if(ALCH_Q == 7) goto L_GoChange; + mes "Welcome to the Alchemist Union."; + mes "How may i help you?"; + next; + menu "I would like to learn about Alchemey",M_Learn, "I want to become an Alchemist.",L_Start, "Nothing.",M_End; + + M_Learn: + mes "[Parmry Gianino]"; + mes "Alchemists study and create new materials using a variety of existing substances."; + mes "They research the atoms of chemicals, and experiment to change the properties of the chemicals."; + next; + mes "[Parmry Gianino]"; + mes "Most people think the final goal is to create gold, but that's not the entire truth."; + mes "They make anything from simple medicines, to new materials."; + next; + mes "[Parmry Gianino]"; + mes "At times, some research the creation of life .... but that's considered god's territory..."; + mes "That field is so complex, everyone simply researhes for now."; + next; + mes "[Parmry Gianino]"; + mes "If you are interested in becoming an Alchemist, I recommend that you gain a lot experience as a Merchant."; + mes "Being a merchant is a great opportunity to learn about materials while you deal with them."; + next; + mes "[Parmry Gianino]"; + mes "Only you can decide for yourself."; + mes "The road to becoming an Alchemist is very challenging."; + mes "You will need to focus on experimenting and researching rather than trade."; + close; + M_End: + mes "[Parmry Gianino]"; + mes "Umm... Please say something if you need anything."; + close; +L_Start: + mes "[Parmry Gianino]"; + if(JobLevel < 40) goto L_LowLvl; + mes "Is that so? My name is Parmry Gianino of the Alchemist Association."; + mes "Nice to meet you."; + next; + mes "[Parmry Gianino]"; + mes "If you join our Union and pass some training you will be officially recognized,"; + mes "as an Alchemist and be able to join our researches."; + next; + mes "[Parmry Gianino]"; + mes "But we dont accept everyone."; + mes "You must have a lot of effort, tenacity, and be able to devote yourself to research."; + next; + mes "[Parmry Gianino]"; + mes "There are a couple of requirements to join the association...."; + mes "but we'll discuss that after you apply."; + next; + mes "[Parmry Gianino]"; + mes "Then, would you like to apply to register?"; + next; + menu "I would like to apply.",M_Apply,"I'll do it later.",-; + + mes "[Parmry Gianino]"; + mes "If you are a talented Merchant,"; + mes "you are always welcome here."; + mes "Come again soon."; + close; + M_Apply: + mes "[Parmry Gianino]"; + mes "Fill out this application form please....."; + next; + mes "(you fill out the form and hand it back)"; + next; + mes "[Parmry Gianino]"; + mes "Very good. In order to join the Alchemist Union you must first pay a ^5533FF50,000^000000 zeny membership fee."; + mes "You will also need to bring us a few items as well."; + next; + mes "[Parmry Gianino]"; + mes "Of course if you bring us an ^5533FFOld Magic Book^000000 and an ^5533FFHammer of Blacksmith^000000..."; + mes "You won't have to pay the fee."; + next; + mes "[Parmry Gianino]"; + mes "Let's see.... you'll need to bring us....^5533FF100 Mini Furnaces^000000."; + mes "Once you have the Mini Furnaces come back and see me."; + next; + mes "[Parmry Gianino]"; + mes "When you come back I will also collect the ^5533FF50,000^000000 zeny fee so don't forget about that either."; + mes "See you soon..."; + set ALCH_Q,1; + close; +L_LowLvl: + mes "You must be at least Job Level 40 to become a Alchemist."; + close; + +L_Check: + mes "Oh, your back already... lets see...."; + next; + mes "[Parmry Gianino]"; + if(countitem(612) < 100) goto L_NoItems; + if(countitem(1005) > 0 && countitem(1006) > 0) goto L_Skip; + if(zeny < 50000) goto L_NoZeny; + set zeny,zeny - 50000; + delitem 612, 100; + mes "You have 50,000 zeny...... You brought 100 mini furnaces.... Great!"; + mes "Now you are ready to learn the basics of being an Alchemist."; + next; + + L_Cont: + mes "[Parmry Gianino]"; + mes "But before that... ^5533FFRaspuchin^000000 wants to see you....."; + mes "Hmm..... I'm not sure what it could be about...."; + next; + mes "[Parmry Gianino]"; + mes "You should go visit him now. Just go down those stairs to my right. His room is in the SouthEastern corner."; + set ALCH_Q,2; + close; + + L_NoZeny: + mes "You still need to pay the ^FF553350,000^000000 zeny membership fee."; + mes "Let me know when you have enough money."; + close; + L_NoItems: + mes "As I mentioned before, you must bring ^FF3355100 Mini Furnaces^000000 to join the union."; + mes "Please come back when you are ready..."; + close; +L_Skip: + mes "Oh, you have an ^5533FFOld Magic Book^000000 and an ^5533FFHammer of Blacksmith^000000........"; + mes "That means you don't have to pay the membership fee."; + next; + mes "[Parmy Gianino]"; + mes "Excellent. Now I'll just take the Book, Hammer, 100 mini furnaces, and you'll be all set to learn the basics of being an Alchemist."; + next; + delitem 1005,1; + delitem 1006,1; + delitem 612, 100; + goto L_Cont; + +L_Test2: + mes "Go visit ^5533FFRaspuchin^000000 now!"; + close; +L_Test3: + mes "Go visit ^5533FFDarwin^000000 now!"; + close; +L_Test4: + mes "Go visit ^5533FFVan Helmont^000000 now!"; + close; +L_Test5: + mes "Go visit ^5533FFNicholas Flamel^000000 now!"; + close; +L_Test6: + mes "Go back to ^5533FFNicholas Flamel^000000 now!"; + mes "He still has one more test for you."; + close; +L_GoChange: + mes "Wow you finished all of the tests? Great now you can visit the Headmaster, ^5533FFVincent Carsciallo^000000."; + mes "He's the one who will change you into an Alchemist."; + close; +} + + +//==================================================================================================// +// 2nd Test: Math test :( +//==================================================================================================// +alde_alche.gat,175,107,4 script Raspuchin Gregory 749,{ + mes "[Raspuchin Gregory]"; + if(class == 5) goto L_Merc; +L_Other: + mes "What is it, kikikiki. Are you curious about what I do...?"; + mes "I'll just especially let you know. You see I... Kekeke.."; + next; + mes "[Raspuchin Gregory]"; + mes "Am researching! Once this potion is complete... you will be able to take over an entire country!!"; + next; + mes "[Raspuchin Gregory]"; + mes "Kikikikikekekekek. It's a secret to the people of Prontera....."; + close; +L_Merc: + if(ALCH_Q == 2) goto L_Start; + if(ALCH_Q == 3) goto L_Done; + mes "Kikikikikekekekeke."; + mes "What is it! You punk."; + next; + mes "[Raspuchin Gregory]"; + mes "A Merchant should go and set up a shop..."; + mes "Why'd you come to a place like this!?"; + mes "Are you looking for something to scab off?"; + next; + mes "[Raspuchin Gregory]"; + mes "Kikiki... Go, leave this place."; + mes "Dont loiter ... Kekeke."; + close; +L_Start: + if(ALCH_Q2 == 1) goto L_ReTest; + if(JobLevel == 50) goto L_Skip; + mes "Keke, another dumb one has stumbled into here."; + mes "Join the Union?"; + next; + mes "[Raspuchin Gregory]"; + mes "I don't like it... I just don't...!"; + mes "Everywhere, all joining and being called Alchemist just for knowing how to mix herbs!!!"; + next; + mes "[Raspuchin Gregory]"; + mes "Kikiki, so for that reason an interview is necessary!"; + mes "I plan on scolding all the incompetent ones and chasing them away!!"; + next; + mes "[Raspuchin Gregory]"; + mes "You look dumb founded. It must be pretty crazy."; + mes "If you were thinking of just changing clothes you thought wrong... Kekeke.."; + next; + mes "[Raspuchin Gregory]"; + mes "Now try solving the problems I give you."; + mes "We'll see how smart you are."; + next; + set @score,0; + + //set of question 1 + q1: + mes "[Raspuchin Gregory]"; + mes "12+23+34+45 =?"; + next; + input @num; + if(@num == 114) set @score,@score+10; + q2: + mes "[Raspuchin Gregory]"; + mes "1000-36-227-348 =?"; + next; + input @num; + if(@num == 389) set @score,@score+10; + q3: + mes "[Raspuchin Gregory]"; + mes "9765/3/5/7 =?"; + next; + input @num; + if(@num == 93) set @score,@score+10; + q4: + mes "[Raspuchin Gregory]"; + mes "(2646/7) + (13*28) =?"; + next; + input @num; + if(@num == 742) set @score,@score+10; + q5: + mes "[Raspuchin Gregory]"; + mes "With a 24% discount"; + mes "How much are 12 Red Potions,"; + mes "5 Fly Wings, and "; + mes "1 Butterfly Wing altogether?"; + next; + input @num; + if(@num == 909) set @score,@score+10; + q6: + mes "[Raspuchin Gregory]"; + mes "What is the total weight of 3 "; + mes "Scimiters,"; + mes "2 Helms and 1 Coat"; + next; + input @num; + if(@num == 450) set @score,@score+10; + q7: + mes "[Raspuchin Gregory]"; + mes "What is the total defense of "; + mes "a Biretta, Mantle, Opera Mask,"; + mes "Ribbon, "; + mes "Muffler, Boots, and Ear Muffs?"; + next; + input @num; + if(@num == 22) set @score,@score+10; + q8: + mes "[Raspuchin Gregory]"; + mes "If you buy 5 Helms with a 24%"; + mes "discount "; + mes "and sell it at 20%, how much do you"; + mes "earn?"; + next; + input @num; + if(@num == 1760) set @score,@score+10; + goto L_Total; + +L_ReTest: + mes "What, you want to take the test again?"; + mes "I thought I told you to leave."; + next; + mes "[Raspuchin Gregory]"; + mes "Well, I'll let you go this one time..."; + mes "I forgive you ... Kekeke."; + mes "Do well this time..."; + next; + mes "[Raspuchin Gregory]"; + mes "Now then, answer the question I ask."; + mes "Let see how smart you are."; + next; + set @score,0; + + //set of question 2 + q11: + mes "[Raspuchin Gregory]"; + mes "13+25+37+48=?"; + next; + input @num; + if(@num == 123) set @score,@score+10; + q12: + mes "[Raspuchin Gregory]"; + mes "1000-58-214-416 =?"; + next; + input @num; + if(@num == 312) set @score,@score+10; + q13: + mes "[Raspuchin Gregory]"; + mes "12*24*3=?"; + next; + input @num; + if(@num == 864) set @score,@score+10; + q14: + mes "[Raspuchin Gregory]"; + mes "10530/3/5/2=?"; + next; + input @num; + if(@num == 351) set @score,@score+10; + q15: + mes "[Raspuchin Gregory]"; + mes "(35*19) - (1792/7) =?"; + next; + input @num; + if(@num == 400) set @score,@score+10; + q16: + mes "[Raspuchin Gregory]"; + mes "(2368/8) + (24*17) = ?"; + next; + input @num; + if(@num == 704) set @score,@score+10; + q17: + mes "[Raspuchin Gregory]"; + mes "(2646/7) + (13*28)=?"; + next; + input @num; + if(@num == 742) set @score,@score+10; + q18: + mes "[Raspuchin Gregory]"; + mes "If buying at a 24% discount,"; + mes "What is the total price of"; + mes "15 Green Potions,"; + mes "6 Magnifiers and 4 Traps?"; + next; + input @num; + if(@num == 934) set @score,@score+10; + q19: + mes "[Raspuchin Gregory]"; + mes "What is the total weight of "; + mes "3 Ring Pommels Saber,"; + mes "4 Caps and 2 Boots?"; + next; + input @num; + if(@num == 550) set @score,@score+10; + q20: + mes "[Raspuchin Gregory]"; + mes "What is the total defense of a "; + mes "Bucler, Coat, Gas Mask, Big"; + mes "Ribbon, Ribbon, Sakkat and"; + mes "Glasses?"; + next; + input @num; + if(@num == 16) set @score,@score+10; + q21: + mes "[Raspuchin Gregory]"; + mes "How much zeny do you make"; + mes "if you buy Tights at a 24%"; + mes "discount"; + mes "and sell it at 20% of the normal"; + mes "price?"; + next; + input @num; + if(@num == 2840) set @score,@score+10; +L_Total: + mes "[Raspuchin Gregory]"; + if(@score < 80) goto L_Failed; + set ALCH_Q,3; + set ALCH_Q2, 0; + mes "Kikiki... I'll let you go."; + mes "Do some good research and be of some help to Raspuchin... Kikiki!"; + next; + mes "[Raspuchin Gregory]"; + mes "Well then go! ^5533FFGo to Darwin^000000."; + mes "He'll teach you how to do the experiments."; + mes "Tell him I sent you."; + next; + mes "[Raspuchin Gregory]"; + mes "Kikikikekeke."; + mes "Dont think this is the end of it!"; + close; + + L_Failed: + set ALCH_Q2,1; + mes "...Kekeke, you idiot,"; + mes "I feel dumb asking you all the question!"; + mes "you got them all wrong!!!"; + next; + mes "[Raspuchin Gregory]"; + mes "How can a person that can't even answer these question think of being an Alchemist!"; + mes "What? did you get any right?"; + next; + mes "[Raspuchin Gregory]"; + mes "Stupid! If you get one wrong everything is wrong for an Alchemist!"; + mes "Go! Leave! Get out of here!"; + close; +L_Done: + mes "What are you doing? Leave already."; + mes "Go to ^5533FFDarwin^000000."; + mes "He'll teach you how to do the experiments."; + mes "Tell him I sent you."; + next; + mes "[Raspuchin Gregory]"; + mes "Kikikikekeke."; + mes "Dont think this is the end of it!"; + close; +L_Skip: + mes "Hmm... you have a pretty high job level..... I'll be nice today and let you pass."; + mes "Next you should go see ^5533FFDarwin^000000."; + mes "He'll teach you how to do the experiments."; + mes "Tell him I sent you."; + set ALCH_Q,3; + set ALCH_Q2, 0; + close; +} + + +//==================================================================================================// +// 3rd Test: Mix some medicine +//==================================================================================================// +alde_alche.gat,13,15,8 script Darwin 750,{ + mes "[Darwin]"; + if(class == 5) goto L_Merc; +L_Other: + mes "more to lose or gain..."; + mes "It's always like that..."; + next; + mes "[Darwin]"; + mes "All I can see through my cursed eyes"; + mes "are illusions from the past,"; + mes "Ahahahaha..."; + next; + mes "[Darwin]"; + mes "There's no such thing as paradise ... is there ?"; + mes "My love Harmona.... Aah...."; + close; + +L_Merc: + if(ALCH_Q == 3) goto L_Start; + if(ALCH_Q == 4) goto L_Done; + goto L_Other; + +L_Start: + if(ALCH_Q2 == 1) goto L_Check; + mes "..........."; + mes "........."; + mes "....Who is it..."; + next; + mes "[Darwin]"; + mes "A wolf? Or a human..."; + mes "You must be looking for something as well."; + next; + mes "[Darwin]"; + mes "If you have something precious, be careful."; + mes "You may lose something else while while going after another..."; + next; + mes "[Darwin]"; + mes ".........."; + next; + mes "[Darwin]"; + mes "... but what brings you here."; + mes "Coming to a place like this."; + next; + menu "I want to learn how to experiment.",M_Exp, "Tell me more about flowers.",M_Flow; + + M_Flow: + mes "[Darwin]"; + mes "......."; + mes "......"; + mes "...think about your precious things..."; + next; + mes "[Darwin]"; + mes ".... There is a flower that I faintly remember...."; + next; + mes "[Darwin]"; + mes "I divulged into researching one thing....."; + mes "for the one I love..."; + next; + mes "[Darwin]"; + mes "Lets just say that it was about the relationship between wolf and flowers..."; + mes "I wont tell you the details."; + next; + mes "[Darwin]"; + mes "But yes ... it was a flower."; + mes "with its shine, it was said to let you see paradise Illusion Flower..."; + next; + mes "[Darwin]"; + mes "I made a homunculus."; + mes "Nobody believe me. that I made life from a flower!!!"; + mes "My research!"; + next; + mes "[Darwin]"; + mes "But now, I have nothing left.."; + mes "It's all over."; + mes "Time has stopped at that moment in my life..."; + next; + mes "[Darwin]"; + mes "Aag... Harmona, in the beautiful fields of flowers,"; + mes "where have you gone...."; + close; + M_Exp: + mes "[Darwin]"; + mes "You want to learn Alchemy..."; + mes "All the knowledge I possess.."; + mes "I made to make my dreams come true..."; + next; + mes "[Darwin]"; + mes "I'll teach you the basics..."; + mes "but you must determine your own wishes."; + next; + mes "[Darwin]"; + mes "So, here are the basics."; + mes "This is how you make simple medicine..."; + mes "Prepare some stuff..."; + next; + mes "[Darwin]"; + mes "^5533FF3 Medicine Bowls"; + mes "3 Empty Bottles"; + mes "1 Red Herb"; + mes "1 Yellow Herb"; + mes "1 White Herb^000000"; + next; + mes "[Darwin]"; + mes "Once you have prepared all the items... come here."; + set ALCH_Q2, 1; + close; + +L_Check: + mes "..........."; + mes "........."; + mes "...Who is it...."; + next; + mes "[Darwin]"; + mes "Ah You're the one that wants to learn Alchemy..."; + mes "So did you prepare everything?"; + next; + if(countitem(7134) < 3 || countitem(713) < 3 || countitem(507) < 1 || countitem(508) < 1 || countitem(509) < 1) goto L_NotEnuf; + delitem 7134,3; + delitem 713,3; + delitem 507,1; + delitem 508,1; + delitem 509,1; + mes "[Darwin]"; + mes "Seems like you have everything ready."; + mes "As i promised, I'll teach you how to make medicine"; + next; + mes "[Darwin]"; + mes "First, prepare the Medicine Bowl then put the Herbs inside like this."; + mes "And you slowly crush them."; + next; + mes "[Darwin]"; + mes "Pour small amounts of clean water and stirr until it become thick, "; + mes "then add some more Herbs."; + next; + mes "[Darwin]"; + mes "That's how you make it if you think you have enough, "; + mes "gently pour it into an empty bottle"; + next; + mes "[Darwin]"; + mes "There you go, its complete."; + mes "This time, do as I showed you."; + mes "It should be easy since its so simple."; + next; + mes "[Darwin]"; + mes "... even though you don't have one?"; + next; + set @score,0; + menu "Prepare the medicine bowl",-, "Wear the medicine bowl on the head",M_0, "Kick the medicine bowl",M_0; + + set @score,@score+10; + M_0: + + menu "Put the sand into the medicine bowl",M_1, "Put the herbs into the medicine bowl",-, "Put the harp into the medicine bowl",M_1; + + set @score,@score+10; + M_1: + + menu "Smash the herbs",-, "Smash the medicine bowl",M_2, "Smash the Tarosia's foots",M_2; + + set @score,@score+10; + M_2: + + menu "Spray the water",M_3, "Drink the water",M_3, "Pour in the water",-; + + set @score,@score+10; + M_3: + + menu "Continue to smash the herbs",-, "Continues to eat the herbs",M_4, "Continues to dance and sing",M_4; + + set @score,@score+10; + M_4: + + menu "Put in the noodles and fried it",M_5, "Put into the Empty Bottle",-, "Raise the medicine bowl and drink it",M_5; + + set @score,@score+10; + M_5: + + mes "[Darwin]"; + if(@score < 60) goto L_Failed; + mes "... Good job. It came out prettywell considering it's your first time..."; + mes "As a souvenier, take these."; + getitem 501,1; + getitem 503,1; + getitem 504,1; + set ALCH_Q,4; + set ALCH_Q2,0; + next; + mes "[Darwin]"; +L_Done: + mes "Go to ^5533FFVan Helmont^000000 in the next room..."; + mes "He'll teach you more details."; + mes "Go learn from him."; + next; + mes "[Darwin]"; + mes "Don't forget..."; + mes "You must protect what is trully precious to you....."; + close; + + L_Failed: + mes "... You messed up all the ingredients."; + mes "... Go bring some more."; + close; +L_NotEnuf: + mes "[Darwin]"; + mes "...You must've forgotten the materials to bring."; + mes "I'll tell you again."; + mes "Dont forget them this time."; + next; + mes "[Darwin]"; + mes "^5533FF3 Medicine Bowls"; + mes "3 Empty Bottles"; + mes "1 Red Herb"; + mes "1 Yellow Herb"; + mes "1 White Herb^000000"; + next; + mes "[Darwin]"; + mes "Come back when you are ready..."; + close; +} + + +//==================================================================================================// +// 4th Test: Learn from Morgenstein +//==================================================================================================// +alde_alche.gat,79,19,4 script Van Helmont 748,{ + mes "[Van Helmont]"; + if(class == 5) goto L_Merc; +L_Other: + mes "Just a little ... yes, a little bit more ...."; + mes "agh, just a little bit more and it would've been done!"; + next; + mes "[Van Helmont]"; + mes "Why, why another failure!!!"; + mes "Nothing was wrong!"; + mes "Why! Why!"; + next; + mes "[Van Helmont]"; + mes "Does that mean I have to get more materials..."; + mes "But I should be able to complete it one day....Heeh..."; + close; +L_Merc: + if(ALCH_Q == 4) goto L_Start; + if(ALCH_Q == 5) goto L_Done; + goto L_Other; +L_Start: + if(ALCH_Q2 == 1) goto L_Check; + mes "Arrrrgh... Why does this formula just stop... What's wrong."; + mes "Theoretically it's all correct..."; + mes "I'm sure it's because there is an error in the formula"; + mes "somewhere..."; + next; + mes "[Van Helmont]"; + mes "That's it, I pour it here and it should stop... but this is the formula that solution doesn't stop flowing."; + mes " How could I make such a stupid mistake... when did I switch these..."; + next; + mes "[Van Helmont]"; + mes "Yes, that's it. I just need to fix this part."; + mes "No need to start over."; + mes "I just have to fix it..."; + mes "....But, wait. wait."; + next; + mes "[Van Helmont]"; + mes "....................."; + next; + mes "[Van Helmont]"; + mes "....Who are you?"; + next; + menu "I want to become an Alchemist.",-,".....",M_Bye; + + mes "[Van Helmont]"; + mes "Oh, I see...."; + mes "Haha you want to learn Alchemy in world like this, what a funny merchant... hmmm."; + next; + mes "[Van Helmont]"; + mes "Well, that's nice, but I have a very urgent experiment I must tend to."; + mes "So don't get in the way."; + next; + menu "Teach me something.",-,"..........",M_Bye; + + mes "[Van Helmont]"; + mes "Argh... didn't I just tell you not to bother me?"; + mes "Why can't you understand when I say something!"; + next; + mes "[Van Helmont]"; + mes "Ok, I'll give you an assignment."; + mes "Go study and come back. Let's see."; + mes "What would be good... Hmm..."; + next; + mes "[Van Helmont]"; + mes "Oh, I got it. Go learn from ^5533FFMorgenstein^000000. Learn how to make a ^009500Counteragent^000000 and ^FF3355Mixture^000000."; + mes "You can find him in ^5533FFGeffen^000000."; + next; + mes "[Van Helmont]"; + mes "You don't need to bring what you made. But just go watch how he makes medicine and stuff."; + mes "Got it?"; + next; + mes "[Van Helmont]"; + mes "Well then, see you later."; + mes "You'd be best off going as soon as you can."; + set ALCH_Q2,1; + close; + M_Bye: + mes "[Van Helmont]"; + mes "If you dont have business here just go away. Ok!!!"; + close; +L_Check: + if(al_morgen != 1) goto L_NotRdy; + mes "Yes, cut the Tentacle.."; + mes "and mix some Sticku Mucus,"; + mes "Jellopy solution in the test tube Darn, where did the Medicine Bowl go..."; + next; + mes "[Van Helmont]"; + mes "Did I use them all.. At a time like this, grrr. I wonder if Nicholas has any left."; + mes "Ganfunnit... what a pain."; + mes "....but, wait. wait."; + next; + mes "[Van Helmont]"; + mes "Ah, you're that merchant from before. So.. did you learn anything?"; + mes "I didn't send you there to play."; + next; + mes "[Van Helmont]"; + mes "Let me ask you a couple of questions. Answer how you heard and learned."; + next; + set @score,0; + + Q_1a: + mes "[Van Helmont]"; + mes "What item is required to form the Counteragent?"; + next; + menu "Feather",-,"Sticky Mucus",-,"Animal Blood",-; + + Q_1b: + mes "[Van Helmont]"; + mes "Which of the following item is not required in forming the Counteragent?"; + next; + menu "Karvodailnirol",-,"Detrimindexta",Q_2a,"Alchol",Q_2a; + + set @score,@score+10; + + Q_2a: + mes "[Van Helmont]"; + mes "What item is required to form the Mixture?"; + next; + menu "Monster's Feed",-,"Lip of Ancient Fish",-,"Rotten Bandage",-; + + Q_2b: + mes "[Van Helmont]"; + mes "Which of the following item is not required in the process of forming the Mixture?"; + next; + menu "Karvodailnirol",L_Result,"Detrimindexta",-,"Alchol",L_Result; + + set @score,@score+10; + +L_Result: + mes "[Van Helmont]"; + if(@score < 20) goto L_Failed; + mes "Hmm, you learned well. Ok, now you know some stuff about medicine?"; + mes "Eh?"; + mes "I know, you must have a lot to say but let me continue with my experiment."; + next; + mes "[Van Helmont]"; + mes "Go out and to the room next to here. ^5533FFNicholas^000000 probably has more to teach you than me."; + set ALCH_Q,5; + set ALCH_Q2,0; + set al_morgen, 0; + close; + + L_Failed: + mes "...Be honest. You don't know,"; + mes "do you? I thought I told you to go learn from Morgenstein..."; + next; + mes "[Van Helmont]"; + mes "Don't even think about coming back before you've learned for sure!"; + mes "Stop bothering me and leave!"; + close; +L_NotRdy: + mes "Didn't I tell you to visit Morgenstein in Geffen!?!"; + mes "He is a wise man! You should go to him!"; + close; +L_Done: + mes "What are you doing? Go out and to the room next to here. ^5533FFNicholas^000000 probably has more to teach you than me."; + mes "I have no more business with you."; + close; + +} + + +//==================================================================================================// +// Test 5 & 6: Word Scramble, Help the Baijin Bros. +//==================================================================================================// +alde_alche.gat,145,19,4 script Nicholas Flamel 57,{ + mes "[Nicholas Flamel]"; + if(class == 5) goto L_Merc; +L_Other: + mes "Lorem ipsum dolor sit amet,"; + mes "consectetuer adipiscing elit."; + mes "Vivamus sem. Sed metus lacus, viverra id, rutrum eget, rhoncus sit amet, lectus."; + mes "Suspendisse sit amet urna in nisl frigilla faucibus."; + mes "Nulla scelerisque eros...."; + mes "......mumblemumble........"; + close; +L_Merc: + if(ALCH_Q == 5) goto L_Start; + if(ALCH_Q == 6) goto L_Start2; + if(ALCH_Q == 7) goto L_Done; + goto L_Other; +L_Start: + if(ALCH_Q2 == 1) goto L_ReTest; + mes "Ooh... you're the Merchant that wants to become an Alchemist?"; + mes "But you know... not anyone can become an Alchemist."; + next; + mes "[Nicholas Flamel]"; + mes "The Union doesn't like those that just want to become Alchemist without a clear goal."; + mes "So... to see if you qualify, I'll test how smart you are."; + next; + mes "[Nicholas Flamel]"; + mes "As you can see, Alchemist must memorize many equations,"; + mes "chemical equations and a lot of other information."; + mes "If you're not at a certain level.."; + mes "it's actually pretty tough."; + next; + mes "[Nicholas Flamel]"; + mes "The idea is to prevent those that are going to be useless Alchemists from joining the union!"; + next; + mes "[Nicholas Flamel]"; + mes "Ok... Here go the questions!"; + mes "This is to test your concentration so that you won't get confused when looking at charts."; + next; + mes "[Nicholas Flamel]"; + mes "Find the words from the group of letters. They can be made by using some or all the letters given"; + next; + mes "[Nicholas Flamel]"; + mes "You pass if you choose the word that is 'IN' the puzzle."; + next; + + Q_1: + set @score,0; + mes "[Nicholas Flamel]"; + mes "s m i e x b w u n e n t a g l r"; + next; + menu "tiger",-,"wolf",Q_2,"pumpkin",Q_2,"tripped",Q_2; + + set @score,@score+10; + + Q_2: + mes "[Nicholas Flamel]"; + mes "n i e g b o p d s o a u w r v"; + next; + menu "bash",Q_3,"provoke",Q_3,"endure",-,"stun",Q_3,"abracadabra",Q_3; + + set @score,@score+10; + + Q_3: + mes "[Nicholas Flamel]"; + mes "l r m g r e x t a v i n e d e"; + next; + menu "alberta",Q_4,"latifoliate",Q_4,"crimson",Q_4,"maple",Q_4,"evergreen",-; + + set @score,@score+10; + + Q_4: + mes "[Nicholas Flamel] "; + mes "r o e h n r o m c a i n p t t"; + next; + menu "forgemerchant",L_Score,"potionmerchant",-,"dcmerchant",L_Score,"vendingmerchant",L_Score; + + set @score,@score+10; +L_Score: + if(@score < 40) goto L_Failed; + set ALCH_Q,6; + set ALCH_Q2,0; + mes "[Nicholas Flamel]"; + mes "You seem to be done."; + next; + mes "[Nicholas Flamel]"; + mes "Let's see."; + mes "...Good job. Excellent."; + next; + mes "[Nicholas Flamel]"; + mes "Somehow you found all of them."; + mes "With that kind of concentration, you should easily be able to read the medicine dictionaries."; + mes "Let's see... next is.."; + next; + mes "[Nicholas Flamel]"; + mes "Come back in a little bit. Get organized too.."; + close; + + L_Failed: + mes "[Nicholas Flamel]"; + mes "Hmmm... You failed!"; + mes "Get your glasses maybe you can pass next time wearing those."; + set ALCH_Q2,1; + close; +L_ReTest: + mes "Hmmm you returned."; + mes "Well will see if you changed."; + next; + goto Q_1; + +L_Start2: + if(ALCH_Q2 > 0) goto L_Check2; + mes "Next, you have to go somewhere."; + mes "Go to ^5533FF'The Forgotten City of Juno'^000000 and meet the ^FF3355Bain and Bajin^000000 brothers who are researching alchemy with the Sages there."; + next; + mes "[Nicholas Flamel]"; + mes "Go help out and come back Here, take these... it will help you get close to them."; + next; + getitem 974,1; + getitem 7068,5; + getitem 7043,5; + getitem 756,3; + getitem 757,3; + mes "[Nicholas Flamel]"; + mes "1 Mixture"; + mes "5 Burnt Tree"; + mes "5 Fine Sand "; + mes "3 Rough Oridecon "; + mes "3 Rough Elunium"; + set ALCH_Q2,1; + next; + mes "[Nicholas Flamel]"; + mes "Have a safe trip."; + mes "It's Juno. Come back in one piece."; + close; +L_Check2: + if(ALCH_Q2 < 2) goto L_NotDone; + set ALCH_Q, 7; + set ALCH_Q2, 0; + mes "Ooh! Well done on such a long trip."; + mes "I got a message saying that the Bain and Bajin brothers were happy about your visit."; + next; + mes "[Nicholas Flamel]"; + mes "You must have successfully helped them."; + mes "If you're good enough to be of help to the brothers... ok, I think you qualify."; + next; + mes "[Nicholas Flamel]"; +L_Done: + mes "Go to the Union Leader on the 2nd floor!"; + mes "Congratulations. You'll change jobs soon!"; + close; + + L_NotDone: + mes "Bain and Bajin brothers are in Juno go help them."; + close; + +} + + +//==================================================================================================// +// Job Changer +//==================================================================================================// +alde_alche.gat,101,184,4 script Vincent Carsciallo 122,{ + mes "[Vincent Carsciallo]"; + if(Class == 5) goto L_Merc; + if(Class == Job_Alchem) goto L_Alch; +L_Other: + mes "Hmmm? What may a civilian have to do here?"; + next; + mes "[Vincent Carsciallo]"; + mes "There's nothing amusing. Dont wander and leave."; + close; +L_Alch: + mes "How Alchemy going? Make sure to be carefull and think about safety at all times."; + mes "I wouldn't want you blowing yourself up or anything....."; + close; +L_Merc: + if(ALCH_Q == 7) goto L_Change; + mes "Hmmm? A merchant."; + mes "Are you interested in Alchemy?"; + next; + mes "[Vincent Carsciallo]"; + mes "This is the Alchemist Union."; + mes "We research many different substances."; + mes "Our goal is to make something new without the power of magic."; + next; + mes "[Vincent Carsciallo]"; + mes "Create new life, and study how to live long and not die ..."; + mes "We also make new materials out of existing ones..."; + mes "These are just some of the things we do."; + next; + mes "[Vincent Carsciallo]"; + mes "After being a Merchant for a long time "; + mes "you start to become interested in everything."; + mes "If you would like to learn Alchemy as well,"; + mes "try joining our Union."; + close; +L_Change: + if(skillpoint != 0) goto L_Skpoint; + mes "Ooh, ok. You joined and learned the basics, too. Well done."; + next; + jobchange 18; + emotion 46; + mes "[Vincent Carsciallo]"; + mes "From now on, you are also a member of the Union as an Alchemist."; + mes "I hope you learn a lot..."; + next; + getitem 7127,1; + mes "[Vincent Carsciallo]"; + mes "Here's a little something. "; + mes "Use it to start off with some research."; + next; + mes "[Vincent Carsciallo]"; + mes "I'll see you later then..."; + mes "Be proud of being an Alchemist!"; + callfunc "F_ClearJobVar"; + close; + + L_Skpoint: + mes "Please use all your skill point before talking to me."; + close; +} diff --git a/npc/merchants/scrolls_arrows.txt b/npc/merchants/scrolls_arrows.txt index c2efb75a3..88e74a00e 100644 --- a/npc/merchants/scrolls_arrows.txt +++ b/npc/merchants/scrolls_arrows.txt @@ -1,34 +1,34 @@ -//===== eAthena Script ======================================= -//= Magic Scrolls & Arrows + Arrow Quivers -//===== By: ================================================== -//= Lupus -//===== Current Version: ===================================== -//= 1.1 -//===== Compatible With: ===================================== -//= eAthena 7.15 + -//===== Description: ========================================= -//= -//===== Additional Comments: ================================= -//= Some shops that sells Magic Scrolls, Arrow Quivers -//= Temp shops, made in kRO to test some effects (they stay next to Geffen Tower entrance) -//= Note: Coords and prices aren't right yet -//= I made Scrolls cost 2x more in Prontera (uncomment extra shops if u want) -//= -//= Correct coords and Sprites if you have more info -//= 1.1 Added Arrow Quivers (removed rare arrows from the shops) -//============================================================ - - -//======================================================= -// All Magic Scrolls + Crest of the Horse -//======================================================= -// don't lower the price -geffen.gat,125,91,2 shop Magic Scrolls 735, 686:650, 687:1300, 688:500, 689:1000, 690:500, 691:1000, 692:500, 693:1000, 694:500, 695:1000, 696:500, 697:1000, 698:350, 699:700, 700:350, 12000:700, 12001:1000, 12002:2000, 12003:100, 662:3000 -//prt_in.gat,121,65,3 shop Magic Scrolls 735, 686:1300, 687:2600, 688:1000, 689:2000, 690:1000, 691:2000, 692:1000, 693:2000, 694:1000, 695:2000, 696:1000, 697:2000, 698:700, 699:1400, 700:700, 12000:1700, 12001:2000, 12002:4000, 12003:110, 662:6000 - -//======================================================= -// Arrows -//======================================================= -payon_in03.gat,159,10,4 shop Arrow Quivers 727, 12004:-1, 12005:-1, 12006:-1, 12007:-1, 12008:-1, 12009:-1, 12010:-1, 12011:-1, 12012:-1, 12013:-1, 12014:-1, 12015:-1, 1750:-1, 1770:-1, 1753:-1, 1765:-1, 1751:-1, 1752:-1, 1751:-1, 1755:-1, 1756:-1, 1754:-1, 1767:-1, 1757:-1, 1762:-1 -//geffen.gat,123,107,4 shop Arrow Quivers 727, 12004:-1, 12005:-1, 12006:-1, 12007:-1, 12008:-1, 12009:-1, 12010:-1, 12011:-1, 12012:-1, 12013:-1, 12014:-1, 12015:-1, 1750:-1, 1770:-1, 1753:-1, 1765:-1, 1751:-1, 1752:-1, 1751:-1, 1755:-1, 1756:-1, 1754:-1, 1767:-1, 1757:-1, 1762:-1 -//prt_in.gat,163,141,5 shop Arrow Quivers 727, 12004:-1, 12005:-1, 12006:-1, 12007:-1, 12008:-1, 12009:-1, 12010:-1, 12011:-1, 12012:-1, 12013:-1, 12014:-1, 12015:-1, 1750:-1, 1770:-1, 1753:-1, 1765:-1, 1751:-1, 1752:-1, 1751:-1, 1755:-1, 1756:-1, 1754:-1, 1767:-1, 1757:-1, 1762:-1 +//===== eAthena Script ======================================= +//= Magic Scrolls & Arrows + Arrow Quivers +//===== By: ================================================== +//= Lupus +//===== Current Version: ===================================== +//= 1.1 +//===== Compatible With: ===================================== +//= eAthena 7.15 + +//===== Description: ========================================= +//= +//===== Additional Comments: ================================= +//= Some shops that sells Magic Scrolls, Arrow Quivers +//= Temp shops, made in kRO to test some effects (they stay next to Geffen Tower entrance) +//= Note: Coords and prices aren't right yet +//= I made Scrolls cost 2x more in Prontera (uncomment extra shops if u want) +//= +//= Correct coords and Sprites if you have more info +//= 1.1 Added Arrow Quivers (removed rare arrows from the shops) +//============================================================ + + +//======================================================= +// All Magic Scrolls + Crest of the Horse +//======================================================= +// don't lower the price +geffen.gat,125,91,2 shop Magic Scrolls 735, 686:650, 687:1300, 688:500, 689:1000, 690:500, 691:1000, 692:500, 693:1000, 694:500, 695:1000, 696:500, 697:1000, 698:350, 699:700, 700:350, 12000:700, 12001:1000, 12002:2000, 12003:100, 662:3000 +//prt_in.gat,121,65,3 shop Magic Scrolls 735, 686:1300, 687:2600, 688:1000, 689:2000, 690:1000, 691:2000, 692:1000, 693:2000, 694:1000, 695:2000, 696:1000, 697:2000, 698:700, 699:1400, 700:700, 12000:1700, 12001:2000, 12002:4000, 12003:110, 662:6000 + +//======================================================= +// Arrows +//======================================================= +payon_in03.gat,159,10,4 shop Arrow Quivers 727, 12004:-1, 12005:-1, 12006:-1, 12007:-1, 12008:-1, 12009:-1, 12010:-1, 12011:-1, 12012:-1, 12013:-1, 12014:-1, 12015:-1, 1750:-1, 1770:-1, 1753:-1, 1765:-1, 1751:-1, 1752:-1, 1751:-1, 1755:-1, 1756:-1, 1754:-1, 1767:-1, 1757:-1, 1762:-1 +//geffen.gat,123,107,4 shop Arrow Quivers 727, 12004:-1, 12005:-1, 12006:-1, 12007:-1, 12008:-1, 12009:-1, 12010:-1, 12011:-1, 12012:-1, 12013:-1, 12014:-1, 12015:-1, 1750:-1, 1770:-1, 1753:-1, 1765:-1, 1751:-1, 1752:-1, 1751:-1, 1755:-1, 1756:-1, 1754:-1, 1767:-1, 1757:-1, 1762:-1 +//prt_in.gat,163,141,5 shop Arrow Quivers 727, 12004:-1, 12005:-1, 12006:-1, 12007:-1, 12008:-1, 12009:-1, 12010:-1, 12011:-1, 12012:-1, 12013:-1, 12014:-1, 12015:-1, 1750:-1, 1770:-1, 1753:-1, 1765:-1, 1751:-1, 1752:-1, 1751:-1, 1755:-1, 1756:-1, 1754:-1, 1767:-1, 1757:-1, 1762:-1 diff --git a/npc/npcs_athena.conf b/npc/npcs_athena.conf index 524ad0df4..6807247e4 100644 --- a/npc/npcs_athena.conf +++ b/npc/npcs_athena.conf @@ -1,538 +1,538 @@ - -//-------------------------------------------------------------- -// Map Flags -//-------------------------------------------------------------- -// Files to set options in maps such as PVP, etc. -//======================================= - -npc: conf/mapflag/gvg.txt -npc: conf/mapflag/indoors.txt -npc: conf/mapflag/jail.txt -npc: conf/mapflag/nightmare.txt -npc: conf/mapflag/nobranch.txt -npc: conf/mapflag/noicewall.txt -npc: conf/mapflag/nomemo.txt -npc: conf/mapflag/nopenalty.txt -npc: conf/mapflag/nopvp.txt -npc: conf/mapflag/nosave.txt -npc: conf/mapflag/noteleport.txt -npc: conf/mapflag/nowarp.txt -npc: conf/mapflag/nowarpto.txt -npc: conf/mapflag/pvp.txt -npc: conf/mapflag/pvp_noparty.txt -// Water Flag -npc: conf/mapflag/water.txt -// How high is the water in maps? -water_height: conf/mapflag/water_height.txt - -//-------------------------------------------------------------- -// Special -//-------------------------------------------------------------- - -// PCLoginEvent NPC. NPC which is activated for every player who logs in. -npc: npc/sample/PCLoginEvent.txt - - -//-------------------------------------------------------------- -// NPCs -//-------------------------------------------------------------- - -// ---------------- Your Own Npcs ----------------------- -//Add Them Here ;) - - -//------------------------ Cities ---------------------------- -npc: npc/cities/alberta.txt -npc: npc/cities/aldebaran.txt -npc: npc/cities/amatsu.txt -npc: npc/cities/comodo.txt -npc: npc/cities/geffen.txt -npc: npc/cities/izlude.txt -npc: npc/cities/louyang.txt -npc: npc/cities/lutie.txt -npc: npc/cities/morocc.txt -npc: npc/cities/payon.txt -npc: npc/cities/prontera.txt -npc: npc/cities/yuno.txt -npc: npc/cities/gonryun.txt -npc: npc/cities/umbala.txt -npc: npc/cities/niflheim.txt -npc: npc/cities/valkyrie.txt - - -//-------------------------- Jobs ------------------------------- -//Novice -npc: npc/jobs/novice/novice.txt -npc: npc/jobs/novice/supernovice.txt - -//1-1 -npc: npc/jobs/1-1/thief.txt -npc: npc/jobs/1-1/archer.txt -npc: npc/jobs/1-1/mage.txt -npc: npc/jobs/1-1/merchant.txt -npc: npc/jobs/1-1/acolyte.txt -npc: npc/jobs/1-1/swordsman.txt - -//2-1 With Quest -npc: npc/jobs/2-1/blacksmith.txt -npc: npc/jobs/2-1/knight.txt -npc: npc/jobs/2-1/hunter.txt -npc: npc/jobs/2-1/priest.txt -npc: npc/jobs/2-1/wizard.txt -npc: npc/jobs/2-1/assassin.txt - -//2-2 With Quest -npc: npc/jobs/2-2/rogue.txt -npc: npc/jobs/2-2/alchemist.txt -npc: npc/jobs/2-2/sage.txt -npc: npc/jobs/2-2/crusader.txt - -//2-2 Without Quest -//npc: npc/jobs/2-2/noquest/crusader.txt -npc: npc/jobs/2-2/noquest/dancer-bard.txt -npc: npc/jobs/2-2/noquest/monk.txt - -//2-1-1 Without Quest -npc: npc/jobs/2-1-1/AssassinCross.txt -npc: npc/jobs/2-1-1/LordKnight.txt -npc: npc/jobs/2-1-1/HighPriest.txt -npc: npc/jobs/2-1-1/HighWizard.txt -npc: npc/jobs/2-1-1/WhiteSmith.txt -npc: npc/jobs/2-1-1/Sniper.txt - -//2-2-1 Without Quest -npc: npc/jobs/2-2-1/Champion.txt -npc: npc/jobs/2-2-1/Clown.txt -npc: npc/jobs/2-2-1/Creator.txt -npc: npc/jobs/2-2-1/Gypsy.txt -npc: npc/jobs/2-2-1/Paladin.txt -npc: npc/jobs/2-2-1/Professor.txt -npc: npc/jobs/2-2-1/Stalker.txt - - -//------------------------- Merchants ---------------------------- -npc: npc/merchants/shops.txt -npc: npc/merchants/refine.txt -npc: npc/merchants/dye_maker.txt -npc: npc/merchants/clothes_dyer.txt -npc: npc/merchants/hair_dyer.txt -npc: npc/merchants/grandpa_pharmacist.txt -npc: npc/merchants/inn.txt -npc: npc/merchants/milk_trader.txt -npc: npc/merchants/renters.txt -npc: npc/merchants/alchemist.txt - -// Temp Shops (made in kRO to test effects/items) -npc: npc/merchants/scrolls_arrows.txt - -// Custom -//npc: npc/merchants/custom/2-2shop.txt -// Free Falcon & Peco breeder, Free Carts -//npc: npc/merchants/custom/breeder.txt - - -//--------------------------- Quests ------------------------------ -// Item Quests -npc: npc/quests/quests_alberta.txt -npc: npc/quests/quests_aldebaran.txt -npc: npc/quests/quests_comodo.txt -npc: npc/quests/quests_geffen.txt -npc: npc/quests/quests_lutie.txt -npc: npc/quests/quests_morocc.txt -npc: npc/quests/quests_payon.txt -npc: npc/quests/quests_prontera.txt -npc: npc/quests/quests_umbala.txt -npc: npc/quests/quests_yuno.txt - -// Extra Item Making -npc: npc/quests/mrsmile.txt -npc: npc/quests/bunnyband.txt -npc: npc/quests/juice_maker.txt -npc: npc/quests/counteragent_mixture.txt -npc: npc/quests/doomed_swords.txt -npc: npc/quests/bongun.txt -npc: npc/quests/munak.txt -npc: npc/quests/bongunsword.txt -npc: npc/quests/monstertamers.txt - -// New Headgear Quests -npc: npc/quests/newgears/arjen.txt -npc: npc/quests/newgears/back_ribbon.txt -npc: npc/quests/newgears/bear_hat.txt -npc: npc/quests/newgears/burning_blood_bandana.txt -npc: npc/quests/newgears/cat_hairband.txt -npc: npc/quests/newgears/fox_mask.txt -npc: npc/quests/newgears/hat_seller.txt -npc: npc/quests/newgears/indian_headband.txt -npc: npc/quests/newgears/mask_of_alarm.txt -npc: npc/quests/newgears/mushroom_hairband.txt -npc: npc/quests/newgears/neris.txt -npc: npc/quests/newgears/old_blacksmith.txt -npc: npc/quests/newgears/posture_fix_hat.txt -npc: npc/quests/newgears/sea_otter_hat.txt -npc: npc/quests/newgears/traveler.txt -npc: npc/quests/newgears/tulip_hairpin.txt - -// Custom Quests, might be balance breaking (Enable if you want) -//npc: npc/quests/all_quest.txt -//npc: npc/quests/magicalhatquest.txt -//npc: npc/quests/fashion.txt -//npc: npc/quests/custom/excalibur.txt -//npc: npc/quests/custom/elvenear.txt -//npc: npc/quests/custom/ironcane.txt -//npc: npc/quests/custom/sunglasses.txt -//npc: npc/quests/custom/berzebub.txt -//npc: npc/quests/custom/new_hats.txt -// Above Npcs are better ^_^ -//npc: npc/quests/custom/event_32_new_hats.txt -npc: npc/quests/custom/valhallen.txt -//both Lord Kaho, but different and quest.txt has balmung to: -//npc: npc/quests/custom/kaho_balmung.txt -//npc: npc/quests/custom/kahohorn.txt - -//----------------------- Skill Quests ----------------------------- -npc: npc/quests/skills/acolyte_skills.txt -npc: npc/quests/skills/archer_skills.txt -npc: npc/quests/skills/mage_skills.txt -npc: npc/quests/skills/merchant_skills.txt -npc: npc/quests/skills/novice_skills.txt -npc: npc/quests/skills/swordsman_skills.txt -npc: npc/quests/skills/thief_skills.txt - -//npc: npc/other/platinum_skills.txt - - -// -------------------------- Guides ------------------------------- -npc: npc/guides/guides_alb.txt -npc: npc/guides/guides_alde.txt -npc: npc/guides/guides_com.txt -npc: npc/guides/guides_gef.txt -npc: npc/guides/guides_izl.txt -npc: npc/guides/guides_mor.txt -npc: npc/guides/guides_pay.txt -npc: npc/guides/guides_pron.txt -npc: npc/guides/guides_yun.txt -npc: npc/guides/guides_umb.txt -npc: npc/guides/guides_nif.txt -//more to come - - -// -------------------------- Kafras -------------------------------- -npc: npc/kafras/functions_kafras.txt -npc: npc/kafras/kafras_alb.txt -npc: npc/kafras/kafras_alde.txt -npc: npc/kafras/kafras_com.txt -npc: npc/kafras/kafras_dungeons.txt -npc: npc/kafras/kafras_gef.txt -npc: npc/kafras/kafras_izl.txt -npc: npc/kafras/kafras_mor.txt -npc: npc/kafras/kafras_pay.txt -npc: npc/kafras/kafras_pron.txt -npc: npc/kafras/kafras_yun.txt -npc: npc/kafras/kafras_new.txt -//more to come - - -//---------------------------- Events -------------------------------- -//npc: npc/events/easter.txt -//npc: npc/events/valentinesday.txt -//npc: npc/events/xmas.txt -//npc: npc/events/alchemist.txt -//npc: npc/events/twintowers.txt -//npc: npc/events/custom/uneasy_cemetery.txt -//npc: npc/events/custom/draculax.txt - - -//---------------------------- Others -------------------------------- -npc: npc/other/books.txt -npc: npc/other/msg_boards.txt -npc: npc/other/pvp.txt -npc: npc/other/IceCream.txt -npc: npc/other/card_remover.txt -//npc: npc/other/wedding.txt -//npc: npc/other/gefenia.txt -//npc: npc/other/momotaro.txt -//npc: npc/other/tougijou.txt -//npc: npc/other/arena_mvp.txt - -// Global Scripts Functions ------------------ -npc: npc/other/Global_Functions.txt - - -//------------------------- Unofficial NPCs -------------------------- -//npc: npc/other/kafra_bank.txt -//npc: npc/other/bank.txt -//npc: npc/jobs/custom/reset.txt -//npc: npc/jobs/custom/jobchange.txt -//npc: npc/other/heal.txt -//npc: npc/other/heal_payment.txt -//npc: npc/other/blackjack.txt - -// Warper NPC (Enable for free warp service) -// 1st is Warper with only option for cities and dungeons -//npc: npc/other/warper.txt -// 2nd you can choose which lvl of the dungeon (you have to disabled 1 if you use 2!) -//npc: npc/other/warper2.txt - -// Free Stylist NPC - Cloths/Hair Dye - (Requires 77 dye palletes) -//npc: npc/merchants/custom/dye.txt - -// Dev NPCs -npc: npc/other/devnpc.txt -// Unofficial poetry -npc: npc/other/poetry/ayothaya.txt - -//-------------------------- MC Cameri's NPCs ---------------------------- -//= Bank NPC -//npc: npc/other/mc_cameri/bank.txt - -//= Healing NPC -//npc: npc/other/mc_Cameri/heal.txt - -//= Warp NPC -//npc: npc/other/mc_cameri/warper.txt - -//= Job Changer NPC -//npc: npc/other/mc_cameri/jobchanger.txt - - -//-------------------------- Guild Wars --------------------------------- -//Guild Wars: General -npc: npc/guild/gldfunc_manager.txt -npc: npc/guild/gldfunc_dunsw.txt -npc: npc/guild/gldfunc_flag.txt -npc: npc/guild/gldfunc_treasure.txt -npc: npc/guild/gldfunc_kafra.txt -npc: npc/guild/gldfunc_ev_agit.txt -npc: npc/guild/ev_agit_event.txt - -// Guild Wars: Al De Baran -npc: npc/guild/aldeg/aldeg_ev_agit.txt -npc: npc/guild/aldeg/aldeg_flags.txt -npc: npc/guild/aldeg/aldeg_managers.txt -npc: npc/guild/aldeg/aldeg_kafras.txt -npc: npc/guild/aldeg/aldeg_treas.txt -npc: npc/guild/aldeg/aldeg_dunsw.txt -npc: npc/guild/aldeg/aldeg_guardians.txt - -// Guild Wars: Geffen -npc: npc/guild/gefg/gefg_ev_agit.txt -npc: npc/guild/gefg/gefg_flags.txt -npc: npc/guild/gefg/gefg_managers.txt -npc: npc/guild/gefg/gefg_kafras.txt -npc: npc/guild/gefg/gefg_treas.txt -npc: npc/guild/gefg/gefg_dunsw.txt -npc: npc/guild/gefg/gefg_guardians.txt - -// Guild Wars: Payon -npc: npc/guild/payg/payg_ev_agit.txt -npc: npc/guild/payg/payg_flags.txt -npc: npc/guild/payg/payg_managers.txt -npc: npc/guild/payg/payg_kafras.txt -npc: npc/guild/payg/payg_dunsw.txt -npc: npc/guild/payg/payg_treas.txt -npc: npc/guild/payg/payg_guardians.txt - -// Guild Wars: Prontera -npc: npc/guild/prtg/prtg_ev_agit.txt -npc: npc/guild/prtg/prtg_flags.txt -npc: npc/guild/prtg/prtg_managers.txt -npc: npc/guild/prtg/prtg_kafras.txt -npc: npc/guild/prtg/prtg_dunsw.txt -npc: npc/guild/prtg/prtg_treas.txt -npc: npc/guild/prtg/prtg_guardians.txt - -// Guild Wars: NGuild -npc: npc/guild/nguild/nguild_ev_agit.txt -npc: npc/guild/nguild/nguild_flags.txt -npc: npc/guild/nguild/nguild_managers.txt -npc: npc/guild/nguild/nguild_kafras.txt -//npc: npc/guild/nguild/nguild_dunsw.txt -npc: npc/guild/nguild/nguild_treas.txt -npc: npc/guild/nguild/nguild_guardians.txt - -//Guild Wars: Extras -//npc: npc/guild/Extras/woe_gflag.txt -npc: npc/guild/Extras/woe_warper.txt - -//------------------ Guild Wars(Non-optimized) ----------------------- -//Guild Wars: General -//npc: npc/guild/old/ev_agit_event.txt - -//Guild Wars: Al de Baran -//npc: npc/guild/old/aldeg_flag.txt -//npc: npc/guild/old/ev_agit_aldeg.txt -//npc: npc/guild/old/aldeg_cas01.txt -//npc: npc/guild/old/guardian/aldeg_cas01_guardian.txt -//npc: npc/guild/old/treasure/aldeg_cas01_treasure.txt -//npc: npc/guild/old/aldeg_cas02.txt -//npc: npc/guild/old/guardian/aldeg_cas02_guardian.txt -//npc: npc/guild/old/treasure/aldeg_cas02_treasure.txt -//npc: npc/guild/old/aldeg_cas03.txt -//npc: npc/guild/old/guardian/aldeg_cas03_guardian.txt -//npc: npc/guild/old/treasure/aldeg_cas03_treasure.txt -//npc: npc/guild/old/aldeg_cas04.txt -//npc: npc/guild/old/guardian/aldeg_cas04_guardian.txt -//npc: npc/guild/old/treasure/aldeg_cas04_treasure.txt -//npc: npc/guild/old/aldeg_cas05.txt -//npc: npc/guild/old/guardian/aldeg_cas05_guardian.txt -//npc: npc/guild/old/treasure/aldeg_cas05_treasure.txt - -//Guild Wars: Geffen -//npc: npc/guild/old/gefg_flag.txt -//npc: npc/guild/old/ev_agit_gefg.txt -//npc: npc/guild/old/gefg_cas01.txt -//npc: npc/guild/old/guardian/gefg_cas01_guardian.txt -//npc: npc/guild/old/treasure/gefg_cas01_treasure.txt -//npc: npc/guild/old/gefg_cas02.txt -//npc: npc/guild/old/guardian/gefg_cas02_guardian.txt -//npc: npc/guild/old/treasure/gefg_cas02_treasure.txt -//npc: npc/guild/old/gefg_cas03.txt -//npc: npc/guild/old/guardian/gefg_cas03_guardian.txt -//npc: npc/guild/old/treasure/gefg_cas03_treasure.txt -//npc: npc/guild/old/gefg_cas04.txt -//npc: npc/guild/old/guardian/gefg_cas04_guardian.txt -//npc: npc/guild/old/treasure/gefg_cas04_treasure.txt -//npc: npc/guild/old/gefg_cas05.txt -//npc: npc/guild/old/guardian/gefg_cas05_guardian.txt -//npc: npc/guild/old/treasure/gefg_cas05_treasure.txt - -//Guild Wars: Payon -//npc: npc/guild/old/payg_flag.txt -//npc: npc/guild/old/ev_agit_payg.txt -//npc: npc/guild/old/payg_cas01.txt -//npc: npc/guild/old/guardian/payg_cas01_guardian.txt -//npc: npc/guild/old/treasure/payg_cas01_treasure.txt -//npc: npc/guild/old/payg_cas02.txt -//npc: npc/guild/old/guardian/payg_cas02_guardian.txt -//npc: npc/guild/old/treasure/payg_cas02_treasure.txt -//npc: npc/guild/old/payg_cas03.txt -//npc: npc/guild/old/guardian/payg_cas03_guardian.txt -//npc: npc/guild/old/treasure/payg_cas03_treasure.txt -//npc: npc/guild/old/payg_cas04.txt -//npc: npc/guild/old/guardian/payg_cas04_guardian.txt -//npc: npc/guild/old/treasure/payg_cas04_treasure.txt -//npc: npc/guild/old/payg_cas05.txt -//npc: npc/guild/old/guardian/payg_cas05_guardian.txt -//npc: npc/guild/old/treasure/payg_cas05_treasure.txt - -//Guild Wars: Prontera -//npc: npc/guild/old/prtg_flag.txt -//npc: npc/guild/old/ev_agit_prtg.txt -//npc: npc/guild/old/prtg_cas01.txt -//npc: npc/guild/old/guardian/prtg_cas01_guardian.txt -//npc: npc/guild/old/treasure/prtg_cas01_treasure.txt -//npc: npc/guild/old/prtg_cas02.txt -//npc: npc/guild/old/guardian/prtg_cas02_guardian.txt -//npc: npc/guild/old/treasure/prtg_cas02_treasure.txt -//npc: npc/guild/old/prtg_cas03.txt -//npc: npc/guild/old/guardian/prtg_cas03_guardian.txt -//npc: npc/guild/old/treasure/prtg_cas03_treasure.txt -//npc: npc/guild/old/prtg_cas04.txt -//npc: npc/guild/old/guardian/prtg_cas04_guardian.txt -//npc: npc/guild/old/treasure/prtg_cas04_treasure.txt -//npc: npc/guild/old/prtg_cas05.txt -//npc: npc/guild/old/guardian/prtg_cas05_guardian.txt -//npc: npc/guild/old/treasure/prtg_cas05_treasure.txt - - -//--------------------- Warps --------------------------- -//= Cities ============================ -npc: npc/warps/cities/alberta.txt -npc: npc/warps/cities/aldebaran.txt -npc: npc/warps/cities/amatsu.txt -npc: npc/warps/ayothaya.txt -npc: npc/warps/cities/comodo.txt -npc: npc/warps/cities/geffen.txt -npc: npc/warps/cities/gonryun.txt -npc: npc/warps/cities/izlude.txt -npc: npc/warps/cities/louyang.txt -npc: npc/warps/cities/lutie.txt -npc: npc/warps/cities/morroc.txt -npc: npc/warps/cities/niflheim.txt -npc: npc/warps/cities/payon.txt -npc: npc/warps/cities/prontera.txt -npc: npc/warps/cities/umbala.txt -npc: npc/warps/cities/yggdrasil.txt -npc: npc/warps/cities/yuno.txt -//= Dungeons ============================= -npc: npc/warps/dungeons/alberta_duns.txt -npc: npc/warps/dungeons/alde_ct.txt -npc: npc/warps/dungeons/amatsu_dun.txt -npc: npc/warps/dungeons/ant_hell.txt -npc: npc/warps/dungeons/coal_mine.txt -npc: npc/warps/dungeons/com_dun.txt -npc: npc/warps/dungeons/geffen_dun.txt -npc: npc/warps/dungeons/gon_dun.txt -npc: npc/warps/dungeons/izlude_dun.txt -npc: npc/warps/dungeons/louyang_dun.txt -npc: npc/warps/dungeons/lutie_dun.txt -npc: npc/warps/dungeons/morroc_duns.txt -npc: npc/warps/dungeons/orc_dun.txt -npc: npc/warps/dungeons/payon_dun.txt -npc: npc/warps/dungeons/prt_dun.txt -npc: npc/warps/dungeons/umbala_dun.txt -npc: npc/warps/dungeons/yuno_dun.txt -//= Fields =============================== -npc: npc/warps/fields/amatsu_fild.txt -npc: npc/warps/fields/com_fild.txt -npc: npc/warps/fields/gefenia.txt -npc: npc/warps/fields/geffen_fild.txt -npc: npc/warps/fields/glastheim.txt -npc: npc/warps/fields/jawaii.txt -npc: npc/warps/fields/lutie_fild.txt -npc: npc/warps/fields/morroc_fild.txt -npc: npc/warps/fields/mtmjolnir.txt -npc: npc/warps/fields/payon_fild.txt -npc: npc/warps/fields/prontera_fild.txt -npc: npc/warps/fields/umbala_fild.txt -npc: npc/warps/fields/yuno_fild.txt -//= Guilds ============================== -npc: npc/warps/guild/guildcastles.txt -//= Other ================================ -npc: npc/warps/other/jobquests.txt -npc: npc/warps/other/other.txt -//= PVP ================================== -npc: npc/warps/pvp/pvp.txt - - -//--------------------- Mobs --------------------------- -npc: npc/mobs/pvp.txt -npc: npc/mobs/fields/amatsu.txt -npc: npc/mobs/fields/ayothaya.txt -npc: npc/mobs/fields/comodo.txt -npc: npc/mobs/fields/gefenia.txt -npc: npc/mobs/fields/geffen.txt -npc: npc/mobs/fields/gonryun.txt -npc: npc/mobs/fields/louyang.txt -npc: npc/mobs/fields/lutie.txt -npc: npc/mobs/fields/mjolnir.txt -npc: npc/mobs/fields/morocc.txt -npc: npc/mobs/fields/niflheim.txt -npc: npc/mobs/fields/payon.txt -npc: npc/mobs/fields/prontera.txt -npc: npc/mobs/fields/umbala.txt -npc: npc/mobs/fields/yuno.txt -npc: npc/mobs/dungeons/amatdun.txt -npc: npc/mobs/dungeons/anthell.txt -npc: npc/mobs/dungeons/ayodun.txt -npc: npc/mobs/dungeons/beachdun.txt -npc: npc/mobs/dungeons/byalan.txt -npc: npc/mobs/dungeons/clocktower.txt -npc: npc/mobs/dungeons/coalmine.txt -npc: npc/mobs/dungeons/geftower.txt -npc: npc/mobs/dungeons/glastheim.txt -npc: npc/mobs/dungeons/gondun.txt -npc: npc/mobs/dungeons/guilddun.txt -npc: npc/mobs/dungeons/louydun.txt -npc: npc/mobs/dungeons/magmadun.txt -npc: npc/mobs/dungeons/moc_pyramid.txt -npc: npc/mobs/dungeons/moc_sphinx.txt -npc: npc/mobs/dungeons/orcdun.txt -npc: npc/mobs/dungeons/payoncave.txt -npc: npc/mobs/dungeons/pront_maze.txt -npc: npc/mobs/dungeons/pront_sewers.txt -npc: npc/mobs/dungeons/sunkenship.txt -npc: npc/mobs/dungeons/toyfactory.txt -npc: npc/mobs/dungeons/turtleisland.txt -npc: npc/mobs/dungeons/umbaladun.txt + +//-------------------------------------------------------------- +// Map Flags +//-------------------------------------------------------------- +// Files to set options in maps such as PVP, etc. +//======================================= + +npc: conf/mapflag/gvg.txt +npc: conf/mapflag/indoors.txt +npc: conf/mapflag/jail.txt +npc: conf/mapflag/nightmare.txt +npc: conf/mapflag/nobranch.txt +npc: conf/mapflag/noicewall.txt +npc: conf/mapflag/nomemo.txt +npc: conf/mapflag/nopenalty.txt +npc: conf/mapflag/nopvp.txt +npc: conf/mapflag/nosave.txt +npc: conf/mapflag/noteleport.txt +npc: conf/mapflag/nowarp.txt +npc: conf/mapflag/nowarpto.txt +npc: conf/mapflag/pvp.txt +npc: conf/mapflag/pvp_noparty.txt +// Water Flag +npc: conf/mapflag/water.txt +// How high is the water in maps? +water_height: conf/mapflag/water_height.txt + +//-------------------------------------------------------------- +// Special +//-------------------------------------------------------------- + +// PCLoginEvent NPC. NPC which is activated for every player who logs in. +npc: npc/sample/PCLoginEvent.txt + + +//-------------------------------------------------------------- +// NPCs +//-------------------------------------------------------------- + +// ---------------- Your Own Npcs ----------------------- +//Add Them Here ;) + + +//------------------------ Cities ---------------------------- +npc: npc/cities/alberta.txt +npc: npc/cities/aldebaran.txt +npc: npc/cities/amatsu.txt +npc: npc/cities/comodo.txt +npc: npc/cities/geffen.txt +npc: npc/cities/izlude.txt +npc: npc/cities/louyang.txt +npc: npc/cities/lutie.txt +npc: npc/cities/morocc.txt +npc: npc/cities/payon.txt +npc: npc/cities/prontera.txt +npc: npc/cities/yuno.txt +npc: npc/cities/gonryun.txt +npc: npc/cities/umbala.txt +npc: npc/cities/niflheim.txt +npc: npc/cities/valkyrie.txt + + +//-------------------------- Jobs ------------------------------- +//Novice +npc: npc/jobs/novice/novice.txt +npc: npc/jobs/novice/supernovice.txt + +//1-1 +npc: npc/jobs/1-1/thief.txt +npc: npc/jobs/1-1/archer.txt +npc: npc/jobs/1-1/mage.txt +npc: npc/jobs/1-1/merchant.txt +npc: npc/jobs/1-1/acolyte.txt +npc: npc/jobs/1-1/swordsman.txt + +//2-1 With Quest +npc: npc/jobs/2-1/blacksmith.txt +npc: npc/jobs/2-1/knight.txt +npc: npc/jobs/2-1/hunter.txt +npc: npc/jobs/2-1/priest.txt +npc: npc/jobs/2-1/wizard.txt +npc: npc/jobs/2-1/assassin.txt + +//2-2 With Quest +npc: npc/jobs/2-2/rogue.txt +npc: npc/jobs/2-2/alchemist.txt +npc: npc/jobs/2-2/sage.txt +npc: npc/jobs/2-2/crusader.txt + +//2-2 Without Quest +//npc: npc/jobs/2-2/noquest/crusader.txt +npc: npc/jobs/2-2/noquest/dancer-bard.txt +npc: npc/jobs/2-2/noquest/monk.txt + +//2-1-1 Without Quest +npc: npc/jobs/2-1-1/AssassinCross.txt +npc: npc/jobs/2-1-1/LordKnight.txt +npc: npc/jobs/2-1-1/HighPriest.txt +npc: npc/jobs/2-1-1/HighWizard.txt +npc: npc/jobs/2-1-1/WhiteSmith.txt +npc: npc/jobs/2-1-1/Sniper.txt + +//2-2-1 Without Quest +npc: npc/jobs/2-2-1/Champion.txt +npc: npc/jobs/2-2-1/Clown.txt +npc: npc/jobs/2-2-1/Creator.txt +npc: npc/jobs/2-2-1/Gypsy.txt +npc: npc/jobs/2-2-1/Paladin.txt +npc: npc/jobs/2-2-1/Professor.txt +npc: npc/jobs/2-2-1/Stalker.txt + + +//------------------------- Merchants ---------------------------- +npc: npc/merchants/shops.txt +npc: npc/merchants/refine.txt +npc: npc/merchants/dye_maker.txt +npc: npc/merchants/clothes_dyer.txt +npc: npc/merchants/hair_dyer.txt +npc: npc/merchants/grandpa_pharmacist.txt +npc: npc/merchants/inn.txt +npc: npc/merchants/milk_trader.txt +npc: npc/merchants/renters.txt +npc: npc/merchants/alchemist.txt + +// Temp Shops (made in kRO to test effects/items) +npc: npc/merchants/scrolls_arrows.txt + +// Custom +//npc: npc/merchants/custom/2-2shop.txt +// Free Falcon & Peco breeder, Free Carts +//npc: npc/merchants/custom/breeder.txt + + +//--------------------------- Quests ------------------------------ +// Item Quests +npc: npc/quests/quests_alberta.txt +npc: npc/quests/quests_aldebaran.txt +npc: npc/quests/quests_comodo.txt +npc: npc/quests/quests_geffen.txt +npc: npc/quests/quests_lutie.txt +npc: npc/quests/quests_morocc.txt +npc: npc/quests/quests_payon.txt +npc: npc/quests/quests_prontera.txt +npc: npc/quests/quests_umbala.txt +npc: npc/quests/quests_yuno.txt + +// Extra Item Making +npc: npc/quests/mrsmile.txt +npc: npc/quests/bunnyband.txt +npc: npc/quests/juice_maker.txt +npc: npc/quests/counteragent_mixture.txt +npc: npc/quests/doomed_swords.txt +npc: npc/quests/bongun.txt +npc: npc/quests/munak.txt +npc: npc/quests/bongunsword.txt +npc: npc/quests/monstertamers.txt + +// New Headgear Quests +npc: npc/quests/newgears/arjen.txt +npc: npc/quests/newgears/back_ribbon.txt +npc: npc/quests/newgears/bear_hat.txt +npc: npc/quests/newgears/burning_blood_bandana.txt +npc: npc/quests/newgears/cat_hairband.txt +npc: npc/quests/newgears/fox_mask.txt +npc: npc/quests/newgears/hat_seller.txt +npc: npc/quests/newgears/indian_headband.txt +npc: npc/quests/newgears/mask_of_alarm.txt +npc: npc/quests/newgears/mushroom_hairband.txt +npc: npc/quests/newgears/neris.txt +npc: npc/quests/newgears/old_blacksmith.txt +npc: npc/quests/newgears/posture_fix_hat.txt +npc: npc/quests/newgears/sea_otter_hat.txt +npc: npc/quests/newgears/traveler.txt +npc: npc/quests/newgears/tulip_hairpin.txt + +// Custom Quests, might be balance breaking (Enable if you want) +//npc: npc/quests/all_quest.txt +//npc: npc/quests/magicalhatquest.txt +//npc: npc/quests/fashion.txt +//npc: npc/quests/custom/excalibur.txt +//npc: npc/quests/custom/elvenear.txt +//npc: npc/quests/custom/ironcane.txt +//npc: npc/quests/custom/sunglasses.txt +//npc: npc/quests/custom/berzebub.txt +//npc: npc/quests/custom/new_hats.txt +// Above Npcs are better ^_^ +//npc: npc/quests/custom/event_32_new_hats.txt +npc: npc/quests/custom/valhallen.txt +//both Lord Kaho, but different and quest.txt has balmung to: +//npc: npc/quests/custom/kaho_balmung.txt +//npc: npc/quests/custom/kahohorn.txt + +//----------------------- Skill Quests ----------------------------- +npc: npc/quests/skills/acolyte_skills.txt +npc: npc/quests/skills/archer_skills.txt +npc: npc/quests/skills/mage_skills.txt +npc: npc/quests/skills/merchant_skills.txt +npc: npc/quests/skills/novice_skills.txt +npc: npc/quests/skills/swordsman_skills.txt +npc: npc/quests/skills/thief_skills.txt + +//npc: npc/other/platinum_skills.txt + + +// -------------------------- Guides ------------------------------- +npc: npc/guides/guides_alb.txt +npc: npc/guides/guides_alde.txt +npc: npc/guides/guides_com.txt +npc: npc/guides/guides_gef.txt +npc: npc/guides/guides_izl.txt +npc: npc/guides/guides_mor.txt +npc: npc/guides/guides_pay.txt +npc: npc/guides/guides_pron.txt +npc: npc/guides/guides_yun.txt +npc: npc/guides/guides_umb.txt +npc: npc/guides/guides_nif.txt +//more to come + + +// -------------------------- Kafras -------------------------------- +npc: npc/kafras/functions_kafras.txt +npc: npc/kafras/kafras_alb.txt +npc: npc/kafras/kafras_alde.txt +npc: npc/kafras/kafras_com.txt +npc: npc/kafras/kafras_dungeons.txt +npc: npc/kafras/kafras_gef.txt +npc: npc/kafras/kafras_izl.txt +npc: npc/kafras/kafras_mor.txt +npc: npc/kafras/kafras_pay.txt +npc: npc/kafras/kafras_pron.txt +npc: npc/kafras/kafras_yun.txt +npc: npc/kafras/kafras_new.txt +//more to come + + +//---------------------------- Events -------------------------------- +//npc: npc/events/easter.txt +//npc: npc/events/valentinesday.txt +//npc: npc/events/xmas.txt +//npc: npc/events/alchemist.txt +//npc: npc/events/twintowers.txt +//npc: npc/events/custom/uneasy_cemetery.txt +//npc: npc/events/custom/draculax.txt + + +//---------------------------- Others -------------------------------- +npc: npc/other/books.txt +npc: npc/other/msg_boards.txt +npc: npc/other/pvp.txt +npc: npc/other/IceCream.txt +npc: npc/other/card_remover.txt +//npc: npc/other/wedding.txt +//npc: npc/other/gefenia.txt +//npc: npc/other/momotaro.txt +//npc: npc/other/tougijou.txt +//npc: npc/other/arena_mvp.txt + +// Global Scripts Functions ------------------ +npc: npc/other/Global_Functions.txt + + +//------------------------- Unofficial NPCs -------------------------- +//npc: npc/other/kafra_bank.txt +//npc: npc/other/bank.txt +//npc: npc/jobs/custom/reset.txt +//npc: npc/jobs/custom/jobchange.txt +//npc: npc/other/heal.txt +//npc: npc/other/heal_payment.txt +//npc: npc/other/blackjack.txt + +// Warper NPC (Enable for free warp service) +// 1st is Warper with only option for cities and dungeons +//npc: npc/other/warper.txt +// 2nd you can choose which lvl of the dungeon (you have to disabled 1 if you use 2!) +//npc: npc/other/warper2.txt + +// Free Stylist NPC - Cloths/Hair Dye - (Requires 77 dye palletes) +//npc: npc/merchants/custom/dye.txt + +// Dev NPCs +npc: npc/other/devnpc.txt +// Unofficial poetry +npc: npc/other/poetry/ayothaya.txt + +//-------------------------- MC Cameri's NPCs ---------------------------- +//= Bank NPC +//npc: npc/other/mc_cameri/bank.txt + +//= Healing NPC +//npc: npc/other/mc_Cameri/heal.txt + +//= Warp NPC +//npc: npc/other/mc_cameri/warper.txt + +//= Job Changer NPC +//npc: npc/other/mc_cameri/jobchanger.txt + + +//-------------------------- Guild Wars --------------------------------- +//Guild Wars: General +npc: npc/guild/gldfunc_manager.txt +npc: npc/guild/gldfunc_dunsw.txt +npc: npc/guild/gldfunc_flag.txt +npc: npc/guild/gldfunc_treasure.txt +npc: npc/guild/gldfunc_kafra.txt +npc: npc/guild/gldfunc_ev_agit.txt +npc: npc/guild/ev_agit_event.txt + +// Guild Wars: Al De Baran +npc: npc/guild/aldeg/aldeg_ev_agit.txt +npc: npc/guild/aldeg/aldeg_flags.txt +npc: npc/guild/aldeg/aldeg_managers.txt +npc: npc/guild/aldeg/aldeg_kafras.txt +npc: npc/guild/aldeg/aldeg_treas.txt +npc: npc/guild/aldeg/aldeg_dunsw.txt +npc: npc/guild/aldeg/aldeg_guardians.txt + +// Guild Wars: Geffen +npc: npc/guild/gefg/gefg_ev_agit.txt +npc: npc/guild/gefg/gefg_flags.txt +npc: npc/guild/gefg/gefg_managers.txt +npc: npc/guild/gefg/gefg_kafras.txt +npc: npc/guild/gefg/gefg_treas.txt +npc: npc/guild/gefg/gefg_dunsw.txt +npc: npc/guild/gefg/gefg_guardians.txt + +// Guild Wars: Payon +npc: npc/guild/payg/payg_ev_agit.txt +npc: npc/guild/payg/payg_flags.txt +npc: npc/guild/payg/payg_managers.txt +npc: npc/guild/payg/payg_kafras.txt +npc: npc/guild/payg/payg_dunsw.txt +npc: npc/guild/payg/payg_treas.txt +npc: npc/guild/payg/payg_guardians.txt + +// Guild Wars: Prontera +npc: npc/guild/prtg/prtg_ev_agit.txt +npc: npc/guild/prtg/prtg_flags.txt +npc: npc/guild/prtg/prtg_managers.txt +npc: npc/guild/prtg/prtg_kafras.txt +npc: npc/guild/prtg/prtg_dunsw.txt +npc: npc/guild/prtg/prtg_treas.txt +npc: npc/guild/prtg/prtg_guardians.txt + +// Guild Wars: NGuild +npc: npc/guild/nguild/nguild_ev_agit.txt +npc: npc/guild/nguild/nguild_flags.txt +npc: npc/guild/nguild/nguild_managers.txt +npc: npc/guild/nguild/nguild_kafras.txt +//npc: npc/guild/nguild/nguild_dunsw.txt +npc: npc/guild/nguild/nguild_treas.txt +npc: npc/guild/nguild/nguild_guardians.txt + +//Guild Wars: Extras +//npc: npc/guild/Extras/woe_gflag.txt +npc: npc/guild/Extras/woe_warper.txt + +//------------------ Guild Wars(Non-optimized) ----------------------- +//Guild Wars: General +//npc: npc/guild/old/ev_agit_event.txt + +//Guild Wars: Al de Baran +//npc: npc/guild/old/aldeg_flag.txt +//npc: npc/guild/old/ev_agit_aldeg.txt +//npc: npc/guild/old/aldeg_cas01.txt +//npc: npc/guild/old/guardian/aldeg_cas01_guardian.txt +//npc: npc/guild/old/treasure/aldeg_cas01_treasure.txt +//npc: npc/guild/old/aldeg_cas02.txt +//npc: npc/guild/old/guardian/aldeg_cas02_guardian.txt +//npc: npc/guild/old/treasure/aldeg_cas02_treasure.txt +//npc: npc/guild/old/aldeg_cas03.txt +//npc: npc/guild/old/guardian/aldeg_cas03_guardian.txt +//npc: npc/guild/old/treasure/aldeg_cas03_treasure.txt +//npc: npc/guild/old/aldeg_cas04.txt +//npc: npc/guild/old/guardian/aldeg_cas04_guardian.txt +//npc: npc/guild/old/treasure/aldeg_cas04_treasure.txt +//npc: npc/guild/old/aldeg_cas05.txt +//npc: npc/guild/old/guardian/aldeg_cas05_guardian.txt +//npc: npc/guild/old/treasure/aldeg_cas05_treasure.txt + +//Guild Wars: Geffen +//npc: npc/guild/old/gefg_flag.txt +//npc: npc/guild/old/ev_agit_gefg.txt +//npc: npc/guild/old/gefg_cas01.txt +//npc: npc/guild/old/guardian/gefg_cas01_guardian.txt +//npc: npc/guild/old/treasure/gefg_cas01_treasure.txt +//npc: npc/guild/old/gefg_cas02.txt +//npc: npc/guild/old/guardian/gefg_cas02_guardian.txt +//npc: npc/guild/old/treasure/gefg_cas02_treasure.txt +//npc: npc/guild/old/gefg_cas03.txt +//npc: npc/guild/old/guardian/gefg_cas03_guardian.txt +//npc: npc/guild/old/treasure/gefg_cas03_treasure.txt +//npc: npc/guild/old/gefg_cas04.txt +//npc: npc/guild/old/guardian/gefg_cas04_guardian.txt +//npc: npc/guild/old/treasure/gefg_cas04_treasure.txt +//npc: npc/guild/old/gefg_cas05.txt +//npc: npc/guild/old/guardian/gefg_cas05_guardian.txt +//npc: npc/guild/old/treasure/gefg_cas05_treasure.txt + +//Guild Wars: Payon +//npc: npc/guild/old/payg_flag.txt +//npc: npc/guild/old/ev_agit_payg.txt +//npc: npc/guild/old/payg_cas01.txt +//npc: npc/guild/old/guardian/payg_cas01_guardian.txt +//npc: npc/guild/old/treasure/payg_cas01_treasure.txt +//npc: npc/guild/old/payg_cas02.txt +//npc: npc/guild/old/guardian/payg_cas02_guardian.txt +//npc: npc/guild/old/treasure/payg_cas02_treasure.txt +//npc: npc/guild/old/payg_cas03.txt +//npc: npc/guild/old/guardian/payg_cas03_guardian.txt +//npc: npc/guild/old/treasure/payg_cas03_treasure.txt +//npc: npc/guild/old/payg_cas04.txt +//npc: npc/guild/old/guardian/payg_cas04_guardian.txt +//npc: npc/guild/old/treasure/payg_cas04_treasure.txt +//npc: npc/guild/old/payg_cas05.txt +//npc: npc/guild/old/guardian/payg_cas05_guardian.txt +//npc: npc/guild/old/treasure/payg_cas05_treasure.txt + +//Guild Wars: Prontera +//npc: npc/guild/old/prtg_flag.txt +//npc: npc/guild/old/ev_agit_prtg.txt +//npc: npc/guild/old/prtg_cas01.txt +//npc: npc/guild/old/guardian/prtg_cas01_guardian.txt +//npc: npc/guild/old/treasure/prtg_cas01_treasure.txt +//npc: npc/guild/old/prtg_cas02.txt +//npc: npc/guild/old/guardian/prtg_cas02_guardian.txt +//npc: npc/guild/old/treasure/prtg_cas02_treasure.txt +//npc: npc/guild/old/prtg_cas03.txt +//npc: npc/guild/old/guardian/prtg_cas03_guardian.txt +//npc: npc/guild/old/treasure/prtg_cas03_treasure.txt +//npc: npc/guild/old/prtg_cas04.txt +//npc: npc/guild/old/guardian/prtg_cas04_guardian.txt +//npc: npc/guild/old/treasure/prtg_cas04_treasure.txt +//npc: npc/guild/old/prtg_cas05.txt +//npc: npc/guild/old/guardian/prtg_cas05_guardian.txt +//npc: npc/guild/old/treasure/prtg_cas05_treasure.txt + + +//--------------------- Warps --------------------------- +//= Cities ============================ +npc: npc/warps/cities/alberta.txt +npc: npc/warps/cities/aldebaran.txt +npc: npc/warps/cities/amatsu.txt +npc: npc/warps/ayothaya.txt +npc: npc/warps/cities/comodo.txt +npc: npc/warps/cities/geffen.txt +npc: npc/warps/cities/gonryun.txt +npc: npc/warps/cities/izlude.txt +npc: npc/warps/cities/louyang.txt +npc: npc/warps/cities/lutie.txt +npc: npc/warps/cities/morroc.txt +npc: npc/warps/cities/niflheim.txt +npc: npc/warps/cities/payon.txt +npc: npc/warps/cities/prontera.txt +npc: npc/warps/cities/umbala.txt +npc: npc/warps/cities/yggdrasil.txt +npc: npc/warps/cities/yuno.txt +//= Dungeons ============================= +npc: npc/warps/dungeons/alberta_duns.txt +npc: npc/warps/dungeons/alde_ct.txt +npc: npc/warps/dungeons/amatsu_dun.txt +npc: npc/warps/dungeons/ant_hell.txt +npc: npc/warps/dungeons/coal_mine.txt +npc: npc/warps/dungeons/com_dun.txt +npc: npc/warps/dungeons/geffen_dun.txt +npc: npc/warps/dungeons/gon_dun.txt +npc: npc/warps/dungeons/izlude_dun.txt +npc: npc/warps/dungeons/louyang_dun.txt +npc: npc/warps/dungeons/lutie_dun.txt +npc: npc/warps/dungeons/morroc_duns.txt +npc: npc/warps/dungeons/orc_dun.txt +npc: npc/warps/dungeons/payon_dun.txt +npc: npc/warps/dungeons/prt_dun.txt +npc: npc/warps/dungeons/umbala_dun.txt +npc: npc/warps/dungeons/yuno_dun.txt +//= Fields =============================== +npc: npc/warps/fields/amatsu_fild.txt +npc: npc/warps/fields/com_fild.txt +npc: npc/warps/fields/gefenia.txt +npc: npc/warps/fields/geffen_fild.txt +npc: npc/warps/fields/glastheim.txt +npc: npc/warps/fields/jawaii.txt +npc: npc/warps/fields/lutie_fild.txt +npc: npc/warps/fields/morroc_fild.txt +npc: npc/warps/fields/mtmjolnir.txt +npc: npc/warps/fields/payon_fild.txt +npc: npc/warps/fields/prontera_fild.txt +npc: npc/warps/fields/umbala_fild.txt +npc: npc/warps/fields/yuno_fild.txt +//= Guilds ============================== +npc: npc/warps/guild/guildcastles.txt +//= Other ================================ +npc: npc/warps/other/jobquests.txt +npc: npc/warps/other/other.txt +//= PVP ================================== +npc: npc/warps/pvp/pvp.txt + + +//--------------------- Mobs --------------------------- +npc: npc/mobs/pvp.txt +npc: npc/mobs/fields/amatsu.txt +npc: npc/mobs/fields/ayothaya.txt +npc: npc/mobs/fields/comodo.txt +npc: npc/mobs/fields/gefenia.txt +npc: npc/mobs/fields/geffen.txt +npc: npc/mobs/fields/gonryun.txt +npc: npc/mobs/fields/louyang.txt +npc: npc/mobs/fields/lutie.txt +npc: npc/mobs/fields/mjolnir.txt +npc: npc/mobs/fields/morocc.txt +npc: npc/mobs/fields/niflheim.txt +npc: npc/mobs/fields/payon.txt +npc: npc/mobs/fields/prontera.txt +npc: npc/mobs/fields/umbala.txt +npc: npc/mobs/fields/yuno.txt +npc: npc/mobs/dungeons/amatdun.txt +npc: npc/mobs/dungeons/anthell.txt +npc: npc/mobs/dungeons/ayodun.txt +npc: npc/mobs/dungeons/beachdun.txt +npc: npc/mobs/dungeons/byalan.txt +npc: npc/mobs/dungeons/clocktower.txt +npc: npc/mobs/dungeons/coalmine.txt +npc: npc/mobs/dungeons/geftower.txt +npc: npc/mobs/dungeons/glastheim.txt +npc: npc/mobs/dungeons/gondun.txt +npc: npc/mobs/dungeons/guilddun.txt +npc: npc/mobs/dungeons/louydun.txt +npc: npc/mobs/dungeons/magmadun.txt +npc: npc/mobs/dungeons/moc_pyramid.txt +npc: npc/mobs/dungeons/moc_sphinx.txt +npc: npc/mobs/dungeons/orcdun.txt +npc: npc/mobs/dungeons/payoncave.txt +npc: npc/mobs/dungeons/pront_maze.txt +npc: npc/mobs/dungeons/pront_sewers.txt +npc: npc/mobs/dungeons/sunkenship.txt +npc: npc/mobs/dungeons/toyfactory.txt +npc: npc/mobs/dungeons/turtleisland.txt +npc: npc/mobs/dungeons/umbaladun.txt diff --git a/npc/other/mc_cameri/jobchanger.txt b/npc/other/mc_cameri/jobchanger.txt index ec1fcb61d..0436b0a4f 100644 --- a/npc/other/mc_cameri/jobchanger.txt +++ b/npc/other/mc_cameri/jobchanger.txt @@ -1,18 +1,18 @@ -//===== eAthena Script ======================================= -//= Job Changer NPC -//===== By: ================================================== -//= MC Cameri -//===== Current Version: ===================================== -//= 1.0 -//===== Compatible With: ===================================== -//= eAthena 0.1+; -//===== Description: ========================================= -//= Job Changer NPC -//===== Additional Comments: ================================= -//= v1.0 - -//============================================================ - -prontera.gat,157,188,0 script Job Changer 730,{ - mes "[Job Advisor]"; - close; +//===== eAthena Script ======================================= +//= Job Changer NPC +//===== By: ================================================== +//= MC Cameri +//===== Current Version: ===================================== +//= 1.0 +//===== Compatible With: ===================================== +//= eAthena 0.1+; +//===== Description: ========================================= +//= Job Changer NPC +//===== Additional Comments: ================================= +//= v1.0 - +//============================================================ + +prontera.gat,157,188,0 script Job Changer 730,{ + mes "[Job Advisor]"; + close; } \ No newline at end of file diff --git a/npc/other/mc_cameri/warper.txt b/npc/other/mc_cameri/warper.txt index 5f5723cab..0d0a94cc0 100644 --- a/npc/other/mc_cameri/warper.txt +++ b/npc/other/mc_cameri/warper.txt @@ -1,418 +1,418 @@ -//===== eAthena Script ======================================= -//= Warp NPC -//===== By: ================================================== -//= MC Cameri -//===== Current Version: ===================================== -//= 2.0 -//===== Compatible With: ===================================== -//= Any eAthena Version with duplicate; RO Ep6+ -//===== Description: ========================================= -//= Warp NPC with warp to almost everywhere that show how -//= many people are on each map -//===== Additional Comments: ================================= -//= Most of the code here has been taken from warper2.txt in -//= the folder /npc/other/. -//= Credits given to Someone(that's his nickname). -//= 2.0 Increased performance by removing variables. -//= -Fixed the memory problem. -//= 1.0 First Version, consumed a lot of memory, about 2MB. -//============================================================ - -- script Warp NPC::warpra 115,{ -// colors - set @red$,"^FF0000"; - set @reset$,"^000000"; - -// towns - set @towns, getmapusers("alberta.gat") + getmapusers("aldebaran.gat") - + getmapusers("amatsu.gat") + getmapusers("comodo.gat") + getmapusers("gonryun.gat") - + getmapusers("geffen.gat") + getmapusers("izlude.gat") + getmapusers("xmas.gat") - + getmapusers("morocc.gat") + getmapusers("niflheim.gat") + getmapusers("payon.gat") - + getmapusers("prontera.gat") + getmapusers("yuno.gat") + getmapusers("umbala.gat") - + getmapusers("valkyrie.gat") + getmapusers("louyang.gat"); -// town inns - set @towns, @towns + getmapusers("alberta_in.gat") + getmapusers("aldeba_in.gat") - + getmapusers("geffen_in.gat") + getmapusers("izlude_in.gat") + getmapusers("morocc_in.gat") - + getmapusers("prt_in.gat") + getmapusers("xmas_in.gat") + getmapusers("cmd_in01.gat") - + getmapusers("cmd_in02.gat") + getmapusers("yuno_in01.gat") + getmapusers("yuno_in02.gat") - + getmapusers("yuno_in03.gat") + getmapusers("yuno_in04.gat") + getmapusers("yuno_in05.gat") - + getmapusers("ama_in01.gat") + getmapusers("ama_in02.gat") + getmapusers("gon_in.gat") - + getmapusers("um_in.gat") + getmapusers("nif_in.gat") + getmapusers("lou_in01.gat") - + getmapusers("lou_in02.gat") + getmapusers("payon_in01.gat") + getmapusers("payon_in02.gat") - + getmapusers("payon_in03.gat"); -// dungeons - set @anthell, getmapusers("anthell01.gat") + getmapusers("anthell02.gat"); - set @beach, getmapusers("beach_dun.gat") + getmapusers("beach_dun2.gat") + getmapusers("beach_dun3.gat"); - set @byalan, getmapusers("iz_dun00.gat") + getmapusers("iz_dun01.gat") + getmapusers("iz_dun02.gat") + getmapusers("iz_dun03.gat") + getmapusers("iz_dun04.gat"); - set @clock, getmapusers("alde_dun01.gat") + getmapusers("alde_dun02.gat") + getmapusers("alde_dun03.gat") + getmapusers("alde_dun04.gat") + getmapusers("c_tower1.gat") + getmapusers("c_tower2.gat") + getmapusers("c_tower3.gat") + getmapusers("c_tower4.gat"); - set @coal, getmapusers("mjo_dun01.gat") + getmapusers("mjo_dun02.gat") + getmapusers("mjo_dun03.gat"); - set @culvert, getmapusers("prt_sewb1.gat") + getmapusers("prt_sewb2.gat") + getmapusers("prt_sewb3.gat") + getmapusers("prt_sewb4.gat"); - set @geffen, getmapusers("gef_dun00.gat") + getmapusers("gef_dun01.gat") + getmapusers("gef_dun02.gat") + getmapusers("gef_dun03.gat"); - set @glast, getmapusers("glast_01.gat") + getmapusers("gl_cas01.gat") + getmapusers("gl_cas02.gat") + getmapusers("gl_knt01.gat") + getmapusers("gl_knt02.gat") - + getmapusers("gl_chyard.gat") + getmapusers("gl_sew01.gat") + getmapusers("gl_sew02.gat") + getmapusers("gl_sew03.gat") + getmapusers("gl_sew04.gat") + getmapusers("gl_church.gat") - + getmapusers("gl_step.gat") + getmapusers("gl_dun01.gat") + getmapusers("gl_dun02.gat") + getmapusers("gl_prison.gat") + getmapusers("gl_prison1.gat"); - set @hidden, getmapusers("prt_maze01.gat") + getmapusers("prt_maze02.gat") + getmapusers("prt_maze03.gat"); - set @magma, getmapusers("mag_dun01.gat") + getmapusers("mag_dun02.gat"); - set @orc, getmapusers("orcsdun01.gat") + getmapusers("orcsdun02.gat"); - set @payond, getmapusers("pay_dun00.gat") + getmapusers("pay_dun01.gat") + getmapusers("pay_dun02.gat") + getmapusers("pay_dun03.gat") + getmapusers("pay_dun04.gat"); - set @pyramids, getmapusers("moc_pryd01.gat") + getmapusers("moc_pryd02.gat") + getmapusers("moc_pryd03.gat") + getmapusers("moc_pryd04.gat") + getmapusers("moc_pryd05.gat") + getmapusers("moc_pryd06.gat"); - set @sphinx, getmapusers("in_sphinx1.gat") + getmapusers("in_sphinx2.gat") + getmapusers("in_sphinx3.gat") + getmapusers("in_sphinx4.gat") + getmapusers("in_sphinx5.gat"); - set @sunken, getmapusers("treasure01.gat") + getmapusers("treasure02.gat"); - set @toy, getmapusers("xmas_dun01.gat") + getmapusers("xmas_dun02.gat"); - set @turtle, getmapusers("tur_dun01.gat") + getmapusers("tur_dun02.gat") + getmapusers("tur_dun03.gat") + getmapusers("tur_dun04.gat"); - set @ama, getmapusers("ama_dun01.gat") + getmapusers("ama_dun02.gat") + getmapusers("ama_dun02.gat"); - set @gon, getmapusers("gon_dun01.gat") + getmapusers("gon_dun02.gat") + getmapusers("gon_dun03.gat"); - set @gefenia, getmapusers("gefenia01.gat") + getmapusers("gefenia02.gat") + getmapusers("gefenia03.gat") + getmapusers("gefenia04.gat"); - set @dungeons, @anthell + @beach + @dbyalan + @clock + @coal + @culvert + @geffen + @glast + @hidden - + @magma + @orc + @payond + @pyramids + @sphinx + @sunken + @toy + @turtle + @ama + @gon + @gefenia; - - mes "[Warp NPC]"; - mes "Hello, I can warp you to any Town and Dungeon! Were do you want to go?"; - next; - menu "Towns [" + @red$ + @towns + @reset$ + "]",town,"Dungeons [" + @red$ + @dungeons + @reset$ +"]",dungeon; -town: -// + getmapusers("prt_in.gat") + getmapusers("xmas_in.gat") + getmapusers("cmd_in01.gat") -// + getmapusers("cmd_in02.gat") + getmapusers("yuno_in01.gat") + getmapusers("yuno_in02.gat") -// + getmapusers("yuno_in03.gat") + getmapusers("yuno_in04.gat") + getmapusers("yuno_in05.gat") -// + getmapusers("ama_in01.gat") + getmapusers("ama_in02.gat") + getmapusers("gon_in.gat") -// + getmapusers("um_in.gat") + getmapusers("nif_in.gat") + getmapusers("lou_in01.gat") -// + getmapusers("lou_in02.gat"); - menu "Alberta [" + @red$ + (getmapusers("alberta.gat")+getmapusers("alberta_in.gat")) + @reset$ + "]",walberta, - "Aldebaran [" + @red$ + (getmapusers("aldebaran.gat")+ getmapusers("aldeba_in.gat")) + @reset$ + "]",waldebaran, - "Amatsu [" + @red$ + (getmapusers("amatsu.gat")+getmapusers("ama_in02.gat")) + @reset$ + "]",wamatsu, - "Comodo [" + @red$ + (getmapusers("comodo.gat")+getmapusers("cmd_in01.gat")+getmapusers("cmd_in02.gat")) + @reset$ + "]",wcomodo, - "Gonryun [" + @red$ + (getmapusers("gonryun.gat")+getmapusers("gon_in.gat")) + @reset$ + "]",wgonryun, - "Geffen [" + @red$ + (getmapusers("geffen.gat")+getmapusers("geffen_in.gat")) + @reset$ + "]",wgeffen, - "Izlude [" + @red$ + (getmapusers("izlude.gat")+getmapusers("izlude_in.gat")) + @reset$ + "]",wizlude, - "Lutie [" + @red$ + (getmapusers("xmas.gat")+getmapusers("xmas_in.gat")) + @reset$ + "]",wxmas, - "Morroc [" + @red$ + (getmapusers("morocc.gat")+getmapusers("morocc_in.gat")) + @reset$ + "]",wmorroc, - "Niflheim [" + @red$ + (getmapusers("niflheim.gat")+getmapusers("nif_in.gat")) + @reset$ + "]",wniflheim, - "Payon [" + @red$ + (getmapusers("payon.gat")+getmapusers("payon_in01.gat")+getmapusers("payon_in02.gat")+getmapusers("payon_in03.gat")) + @reset$ + "]",wpayon, - "Prontera [" + @red$ + (getmapusers("prontera.gat")+getmapusers("prt_in.gat")) + @reset$ + "]",wprontera, - "Yuno [" + @red$ + (getmapusers("yuno.gat")+getmapusers("yuno_in01.gat")+getmapusers("yuno_in02.gat")+getmapusers("yuno_in03.gat")+getmapusers("yuno_in04.gat")+getmapusers("yuno_in05.gat")) + @reset$ + "]",wyuno, - "Umbala [" + @red$ + (getmapusers("umbala.gat")+getmapusers("um_in.gat")) + @reset$ + "]",wumbala, - "Valkyrie [" + @red$ + getmapusers("valkyrie.gat") + @reset$ + "]",wvalk, - "Louyang [" + @red$ + (getmapusers("louyang.gat")+getmapusers("lou_in01.gat")+getmapusers("lou_in02.gat")) + @reset$ + "]",wlouyang; -dungeon: - menu "Amatsu Dungeon [" + @red$ + @ama + @reset$ + "]",ama, - "Gonryun Dungeon [" + @red$ + @gon + @reset$ + "]",gon, - "Anthell [" + @red$ + @anthell + @reset$ + "]",ant, - "Beach Dungeon [" + @red$ + @beach + @reset$ + "]",beach, - "Byalan Dungeon [" + @red$ + @byalan + @reset$ + "]",byalan, - "Clock Tower [" + @red$ + @clock + @reset$ + "]",clock, - "Coal Mines [" + @red$ + @coal + @reset$ + "]",coal, - "Culvert [" + @red$ + @culvert + @reset$ + "]",culvert, - "Geffen Dungeon [" + @red$ + @geffen + @reset$ + "]",geffen, - "Glast Heim [" + @red$ + @glast + @reset$ + "]",glast, - "Hidden Dungeon [" + @red$ + @hidden + @reset$ + "]",hidden, - "Magma Dungeon [" + @red$ + @magma + @reset$ + "]",magma, - "Orc Dungeon [" + @red$ + @orc + @reset$ + "]",orc, - "Payon Dungeon [" + @red$ + @payond + @reset$ + "]",payon, - "Pyramids [" + @red$ + @pyramids + @reset$ + "]",pyramids, - "Sphinx [" + @red$ + @sphinx + @reset$ + "]",sphinx, - "Sunken Ship [" + @red$ + @sunken + @reset$ + "]",sunken, - "Toy Factory [" + @red$ + @toy + @reset$ + "]",toy, - "Turtle Dungeon [" + @red$ + @tutrle + @reset$ + "]",turtle, - "Gefenia [" + @red$ + @gefenia + @reset$ + "]",gefenia; -ant: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("anthell01.gat")+ @reset$ + "]",danthell1, - "Level 2 [" + @red$ + getmapusers("anthell02.gat")+ @reset$ + "]",danthell2; -beach: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("beach_dun.gat") + @reset$ + "]",dbeach1, - "Level 2 [" + @red$ + getmapusers("beach_dun2.gat") + @reset$ + "]",dbeach2, - "Level 3 [" + @red$ + getmapusers("beach_dun3.gat") + @reset$ + "]",dbeach3; -byalan: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("iz_dun00.gat") + @reset$ + "]",dbyalan1, - "Level 2 [" + @red$ + getmapusers("iz_dun01.gat") + @reset$ + "]",dbyalan2, - "Level 3 [" + @red$ + getmapusers("iz_dun02.gat") + @reset$ + "]",dbyalan3, - "Level 4 [" + @red$ + getmapusers("iz_dun03.gat") + @reset$ + "]",dbyalan4, - "Level 5 [" + @red$ + getmapusers("iz_dun04.gat") + @reset$ + "]",dbyalan5; -clock: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("c_tower1.gat") + @reset$ + "]",dclock1, - "Level 2 [" + @red$ + getmapusers("c_tower2.gat") + @reset$ + "]",dclock2, - "Level 3 [" + @red$ + getmapusers("c_tower3.gat") + @reset$ + "]",dclock3, - "Level 4 [" + @red$ + getmapusers("c_tower4.gat") + @reset$ + "]",dclock4, - "Basement 1 [" + @red$ + getmapusers("alde_dun01.gat") + @reset$ + "]",dalde1, - "Basement 2 [" + @red$ + getmapusers("alde_dun02.gat") + @reset$ + "]",dalde2, - "Basement 3 [" + @red$ + getmapusers("alde_dun03.gat") + @reset$ + "]",dalde3, - "Basement 4 [" + @red$ + getmapusers("alde_dun04.gat") + @reset$ + "]",dalde4; -coal: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("mjo_dun01.gat") + @reset$ + "]",dcoal1, - "Level 2 [" + @red$ + getmapusers("mjo_dun02.gat") + @reset$ + "]",dcoal2, - "Level 3 [" + @red$ + getmapusers("mjo_dun03.gat") + @reset$ + "]",dcoal3; -culvert: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("prt_sewb1.gat") + @reset$ + "]",dculvert1, - "Level 2 [" + @red$ + getmapusers("prt_sewb2.gat") + @reset$ + "]",dculvert2, - "Level 3 [" + @red$ + getmapusers("prt_sewb3.gat") + @reset$ + "]",dculvert3, - "Level 4 [" + @red$ + getmapusers("prt_sewb4.gat") + @reset$ + "]",dculvert4; -geffen: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("gef_dun00.gat") + @reset$ + "]",dgeffen1, - "Level 2 [" + @red$ + getmapusers("gef_dun01.gat") + @reset$ + "]",dgeffen2, - "Level 3 [" + @red$ + getmapusers("gef_dun02.gat") + @reset$ + "]",dgeffen3, - "Level 4 [" + @red$ + getmapusers("gef_dun03.gat") + @reset$ + "]",dgeffen4; -glast: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Entrance [" + @red$ + getmapusers("glast_01.gat") + @reset$ + "]",dglastent, - "Castle 1 [" + @red$ + getmapusers("gl_cas01.gat") + @reset$ + "]",dglastcast1, - "Castle 2 [" + @red$ + getmapusers("gl_cas02.gat") + @reset$ + "]",dglastcast2, - "Chivalry 1 [" + @red$ + getmapusers("gl_knt01.gat") + @reset$ + "]",dglastchiv1, - "Chivalry 2 [" + @red$ + getmapusers("gl_knt02.gat") + @reset$ + "]",dglastchiv2, - "Churchyard [" + @red$ + getmapusers("gl_chyard.gat") + @reset$ + "]",dglastyard, - "Culvert 1 [" + @red$ + getmapusers("gl_sew01.gat") + @reset$ + "]",dglastcul1, - "Culvert 2 [" + @red$ + getmapusers("gl_sew02.gat") + @reset$ + "]",dglastcul1, - "Culvert 3 [" + @red$ + getmapusers("gl_sew03.gat") + @reset$ + "]",dglastcul3, - "Culvert 4 [" + @red$ + getmapusers("gl_sew04.gat") + @reset$ + "]",dglastcul4, - "St.Abbey [" + @red$ + getmapusers("gl_church.gat") + @reset$ + "]",dglastchur, - "Staircase Dungeon [" + @red$ + getmapusers("gl_step.gat") + @reset$ + "]",dglaststep, - "Underground Cave 1 [" + @red$ + getmapusers("gl_dun01.gat") + @reset$ + "]",dglastcave1, - "Underground Cave 2 [" + @red$ + getmapusers("gl_dun02.gat") + @reset$ + "]",dglastcave2, - "Underground Prison 1 [" + @red$ + getmapusers("gl_prison.gat") + @reset$ + "]",dglastpris1, - "Underground Prison 2 [" + @red$ + getmapusers("gl_prison1.gat") + @reset$ + "]",dglastpris2; -hidden: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("prt_maze01.gat") + @reset$ + "]",dhidden1, - "Level 2 [" + @red$ + getmapusers("prt_maze02.gat") + @reset$ + "]",dhidden2, - "Level 3 [" + @red$ + getmapusers("prt_maze03.gat") + @reset$ + "]",dhidden3; -magma: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("mag_dun01.gat") + @reset$ + "]",dmagma1, - "Level 2 [" + @red$ + getmapusers("mag_dun02.gat") + @reset$ + "]",dmagma2; -orc: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("orcsdun01.gat") + @reset$ + "]",dorc1, - "Level 2 [" + @red$ + getmapusers("orcsdun02.gat") + @reset$ + "]",dorc2; -payon: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("pay_dun00.gat") + @reset$ + "]",dpayon1, - "Level 2 [" + @red$ + getmapusers("pay_dun01.gat") + @reset$ + "]",dpayon2, - "Level 3 [" + @red$ + getmapusers("pay_dun02.gat") + @reset$ + "]",dpayon3, - "Level 4 [" + @red$ + getmapusers("pay_dun03.gat") + @reset$ + "]",dpayon4, - "Level 5 [" + @red$ + getmapusers("pay_dun04.gat") + @reset$ + "]",dpayon5; -pyramids: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("moc_pryd01.gat") + @reset$ + "]",dpyramids1, - "Level 2 [" + @red$ + getmapusers("moc_pryd02.gat") + @reset$ + "]",dpyramids2, - "Level 3 [" + @red$ + getmapusers("moc_pryd03.gat") + @reset$ + "]",dpyramids3, - "Level 4 [" + @red$ + getmapusers("moc_pryd04.gat") + @reset$ + "]",dpyramids4, - "Basement 1 [" + @red$ + getmapusers("moc_pryd05.gat") + @reset$ + "]",dpyramidsb1, - "Basement 2 [" + @red$ + getmapusers("moc_pryd06.gat") + @reset$ + "]",dpyramidsb2; -sphinx: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("in_sphinx1.gat") + @reset$ + "]",dsphinx1, - "Level 2 [" + @red$ + getmapusers("in_sphinx2.gat") + @reset$ + "]",dsphinx2, - "Level 3 [" + @red$ + getmapusers("in_sphinx3.gat") + @reset$ + "]",dsphinx3, - "Level 4 [" + @red$ + getmapusers("in_sphinx4.gat") + @reset$ + "]",dsphinx4, - "Level 5 [" + @red$ + getmapusers("in_sphinx5.gat") + @reset$ + "]",dsphinx5; -sunken: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("treasure01.gat") + @reset$ + "]",dsunken1, - "Level 2 [" + @red$ + getmapusers("treasure02.gat") + @reset$ + "]",dsunken2; -toy: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("xmas_dun01.gat") + @reset$ + "]",dtoy1, - "Level 2 [" + @red$ + getmapusers("xmas_dun02.gat") + @reset$ + "]",dtoy2; -turtle: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Entrance [" + @red$ + getmapusers("tur_dun01.gat") + @reset$ + "]",dturtleent, - "Level 1 [" + @red$ + getmapusers("tur_dun02.gat") + @reset$ + "]",dturtle1, - "Level 2 [" + @red$ + getmapusers("tur_dun03.gat") + @reset$ + "]",dturtle2, - "Level 3 [" + @red$ + getmapusers("tur_dun04.gat") + @reset$ + "]",dturtle3; -ama: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("ama_dun01.gat") + @reset$ + "]",dama1, - "Level 2 [" + @red$ + getmapusers("ama_dun02.gat") + @reset$ + "]",dama2, - "Level 3 [" + @red$ + getmapusers("ama_dun03.gat") + @reset$ + "]",dama3; -gon: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("gon_dun01.gat") + @reset$ + "]",dgon1, - "Level 2 [" + @red$ + getmapusers("gon_dun02.gat") + @reset$ + "]",dgon2, - "Level 3 [" + @red$ + getmapusers("gon_dun03.gat") + @reset$ + "]",dgon3; -gefenia: - mes "[Warp NPC]"; - mes "Please select a Level. Beware that you will be warped directly into the dungeon."; - next; - menu "Level 1 [" + @red$ + getmapusers("gefenia01.gat") + @reset$ + "]",dgefenia1, - "Level 2 [" + @red$ + getmapusers("gefenia02.gat") + @reset$ + "]",dgefenia2, - "Level 3 [" + @red$ + getmapusers("gefenia03.gat") + @reset$ + "]",dgefenia3, - "Level 4 [" + @red$ + getmapusers("gefenia04.gat") + @reset$ + "]",dgefenia4; - -//----------------Towns----------------\\ - -walberta: warp "alberta.gat",192,147; close; -waldebaran: warp "aldebaran.gat",140,131; close; -wamatsu: warp "amatsu.gat",198,84; close; -wcomodo: warp "comodo.gat",209,143; close; -wgonryun: warp "gonryun.gat",160,121; close; -wgeffen: warp "geffen.gat",119,59; close; -wizlude: warp "izlude.gat",128,114; close; -wxmas: warp "xmas.gat",147,134; close; -wmorroc: warp "morocc.gat",156,93; close; -wniflheim: warp "niflheim.gat",85,154; close; -wpayon: warp "payon.gat",152,75; close; -wprontera: warp "prontera.gat",156,191; close; -wyuno: warp "yuno.gat",157,51; close; -wumbala: warp "umbala.gat",145,155; close; -wlouyang: warp "louyang.gat",210,108; close; -wvalk: warp "valkyrie",48,8; close; - -//----------------Dungeons----------------\\ - -danthell1: warp "anthell01.gat",35,262; close; -danthell2: warp "anthell02.gat",168,170; close; -dbeach1: warp "beach_dun.gat",266,67; close; -dbeach2: warp "beach_dun2.gat",255,244; close; -dbeach3: warp "beach_dun3.gat",23,260; close; -dbyalan1: warp "iz_dun00.gat",168,168; close; -dbyalan2: warp "iz_dun01.gat",253,252; close; -dbyalan3: warp "iz_dun02.gat",236,204; close; -dbyalan4: warp "iz_dun03.gat",32,63; close; -dbyalan5: warp "iz_dun04.gat",26,27; close; -dalde1: warp "alde_dun01.gat",297,25; close; -dalde2: warp "alde_dun02.gat",127,169; close; -dalde3: warp "alde_dun03.gat",277,178; close; -dalde4: warp "alde_dun04.gat",268,74; close; -dclock1: warp "c_tower1.gat",199,159; close; -dclock2: warp "c_tower2.gat",148,283; close; -dclock3: warp "c_tower3.gat",65,147; close; -dclock4: warp "c_tower4.gat",56,155; close; -dcoal1: warp "mjo_dun01.gat",52,17; close; -dcoal2: warp "mjo_dun02.gat",381,343; close; -dcoal3: warp "mjo_dun03.gat",302,262; close; -dculvert1: warp "prt_sewb1.gat",131,247; close; -dculvert2: warp "prt_sewb2.gat",19,19; close; -dculvert3: warp "prt_sewb3.gat",180,169; close; -dculvert4: warp "prt_sewb4.gat",100,92; close; -dgeffen1: warp "gef_dun00.gat",104,99; close; -dgeffen2: warp "gef_dun01.gat",115,236; close; -dgeffen3: warp "gef_dun02.gat",106,132; close; -dgeffen4: warp "gef_dun03.gat",203,200; close; -dglastent: warp "glast_01.gat",375,304; close; -dglastcast1: warp "gl_cas01.gat",199,29; close; -dglastcast2: warp "gl_cas02.gat",104,25; close; -dglastchiv1: warp "gl_knt01.gat",150,15; close; -dglastchiv2: warp "gl_knt02.gat",157,287; close; -dglastyard: warp "gl_chyard.gat",147,15; close; -dglastcul1: warp "gl_sew01.gat",258,255; close; -dglastcul2: warp "gl_sew02.gat",108,291; close; -dglastcul3: warp "gl_sew03.gat",171,283; close; -dglastcul4: warp "gl_sew04.gat",68,277; close; -dglastchur: warp "gl_church.gat",156,7; close; -dglaststep: warp "gl_step.gat",12,7; close; -dglastcave1: warp "gl_dun01.gat",133,271; close; -dglastcave2: warp "gl_dun02.gat",224,274; close; -dglastpris1: warp "gl_prison.gat",14,70; close; -dglastpris2: warp "gl_prison1.gat",150,14; close; -dhidden1: warp "prt_maze01.gat",176,7; close; -dhidden2: warp "prt_maze02.gat",94,9; close; -dhidden3: warp "prt_maze03.gat",23,8; close; -dmagma1: warp "mag_dun01.gat",126,68; close; -dmagma2: warp "mag_dun02.gat",47,30; close; -dorc1: warp "orcsdun01.gat",32,170; close; -dorc2: warp "orcsdun02.gat",21,185; close; -dpayon1: warp "pay_dun00.gat",21,183; close; -dpayon2: warp "pay_dun01.gat",19,33; close; -dpayon3: warp "pay_dun02.gat",19,63; close; -dpayon4: warp "pay_dun03.gat",155,159; close; -dpayon5: warp "pay_dun04.gat",201,204; close; -dpyramids1: warp "moc_pryd01.gat",192,9; close; -dpyramids2: warp "moc_pryd02.gat",10,192; close; -dpyramids3: warp "moc_pryd03.gat",100,92; close; -dpyramids4: warp "moc_pryd04.gat",181,11; close; -dpyramidsb1: warp "moc_pryd05.gat",94,96; close; -dpyramidsb2: warp "moc_pryd06.gat",192,8; close; -dsphinx1: warp "in_sphinx1.gat",288,9; close; -dsphinx2: warp "in_sphinx2.gat",149,81; close; -dsphinx3: warp "in_sphinx3.gat",210,54; close; -dsphinx4: warp "in_sphinx4.gat",10,222; close; -dsphinx5: warp "in_sphinx5.gat",100,99; close; -dsunken1: warp "treasure01.gat",69,24; close; -dsunken2: warp "treasure02.gat",102,27; close; -dtoy1: warp "xmas_dun01.gat",205,15; close; -dtoy2: warp "xmas_dun02.gat",129,133; close; -dturtleent: warp "tur_dun01.gat",154,49; close; -dturtle1: warp "tur_dun02.gat",148,261; close; -dturtle2: warp "tur_dun03.gat",132,189; close; -dturtle3: warp "tur_dun04.gat",100,192; close; -dama1: warp "ama_dun01.gat",228,11; close; -dama2: warp "ama_dun02.gat",34,41; close; -dama3: warp "ama_dun03.gat",119,14; close; -dgon1: warp "gon_dun01.gat",153,53; close; -dgon2: warp "gon_dun02.gat",28,113; close; -dgon3: warp "gon_dun03.gat",68,16; close; -dgefenia1: warp "gefenia01.gat",40,103; close; -dgefenia2: warp "gefenia02.gat",203,34; close; -dgefenia3: warp "gefenia03.gat",266,168; close; -dgefenia4: warp "gefenia04.gat",130,272; close; -} -alberta.gat,31,240,4 duplicate(warpra) Warp NPC 115 -aldebaran.gat,145,118,4 duplicate(warpra) Warp NPC 115 -amatsu.gat,194,83,1 duplicate(warpra) Warp NPC 115 -comodo.gat,194,158,4 duplicate(warpra) Warp NPC 115 -geffen.gat,115,66,4 duplicate(warpra) Warp NPC 115 -izlude.gat,131,116,4 duplicate(warpra) Warp NPC 115 -xmas.gat,150,136,4 duplicate(warpra) Warp NPC 115 -morocc.gat,156,99,4 duplicate(warpra) Warp NPC 115 -payon.gat,182,110,4 duplicate(warpra) Warp NPC 115 -prontera.gat,153,183,4 duplicate(warpra) Warp NPC 115 -yuno.gat,137,162,4 duplicate(warpra) Warp NPC 115 -moc_fild04.gat,207,331,4 duplicate(warpra) Warp NPC 115 -izlu2dun.gat,104,82,4 duplicate(warpra) Warp NPC 115 -mjolnir_02.gat,85,363,4 duplicate(warpra) Warp NPC 115 -prt_fild05.gat,273,215,4 duplicate(warpra) Warp NPC 115 -glast_01.gat,370,308,4 duplicate(warpra) Warp NPC 115 -yuno_fild03.gat,37,135,4 duplicate(warpra) Warp NPC 115 -gef_fild10.gat,71,339,4 duplicate(warpra) Warp NPC 115 -pay_arche.gat,39,135,4 duplicate(warpra) Warp NPC 115 -moc_ruins.gat,64,166,4 duplicate(warpra) Warp NPC 115 -moc_fild19.gat,106,97,4 duplicate(warpra) Warp NPC 115 -alb2trea.gat,73,101,4 duplicate(warpra) Warp NPC 115 -tur_dun01.gat,148,239,4 duplicate(warpra) Warp NPC 115 -gonryun.gat,151,130,4 duplicate(warpra) Warp NPC 115 -louyang.gat,210,106,4 duplicate(warpra) Warp NPC 115 -umbala.gat,132,130,4 duplicate(warpra) Warp NPC 115 -valkyrie.gat,48,35,8 duplicate(warpra) Warp NPC 115 +//===== eAthena Script ======================================= +//= Warp NPC +//===== By: ================================================== +//= MC Cameri +//===== Current Version: ===================================== +//= 2.0 +//===== Compatible With: ===================================== +//= Any eAthena Version with duplicate; RO Ep6+ +//===== Description: ========================================= +//= Warp NPC with warp to almost everywhere that show how +//= many people are on each map +//===== Additional Comments: ================================= +//= Most of the code here has been taken from warper2.txt in +//= the folder /npc/other/. +//= Credits given to Someone(that's his nickname). +//= 2.0 Increased performance by removing variables. +//= -Fixed the memory problem. +//= 1.0 First Version, consumed a lot of memory, about 2MB. +//============================================================ + +- script Warp NPC::warpra 115,{ +// colors + set @red$,"^FF0000"; + set @reset$,"^000000"; + +// towns + set @towns, getmapusers("alberta.gat") + getmapusers("aldebaran.gat") + + getmapusers("amatsu.gat") + getmapusers("comodo.gat") + getmapusers("gonryun.gat") + + getmapusers("geffen.gat") + getmapusers("izlude.gat") + getmapusers("xmas.gat") + + getmapusers("morocc.gat") + getmapusers("niflheim.gat") + getmapusers("payon.gat") + + getmapusers("prontera.gat") + getmapusers("yuno.gat") + getmapusers("umbala.gat") + + getmapusers("valkyrie.gat") + getmapusers("louyang.gat"); +// town inns + set @towns, @towns + getmapusers("alberta_in.gat") + getmapusers("aldeba_in.gat") + + getmapusers("geffen_in.gat") + getmapusers("izlude_in.gat") + getmapusers("morocc_in.gat") + + getmapusers("prt_in.gat") + getmapusers("xmas_in.gat") + getmapusers("cmd_in01.gat") + + getmapusers("cmd_in02.gat") + getmapusers("yuno_in01.gat") + getmapusers("yuno_in02.gat") + + getmapusers("yuno_in03.gat") + getmapusers("yuno_in04.gat") + getmapusers("yuno_in05.gat") + + getmapusers("ama_in01.gat") + getmapusers("ama_in02.gat") + getmapusers("gon_in.gat") + + getmapusers("um_in.gat") + getmapusers("nif_in.gat") + getmapusers("lou_in01.gat") + + getmapusers("lou_in02.gat") + getmapusers("payon_in01.gat") + getmapusers("payon_in02.gat") + + getmapusers("payon_in03.gat"); +// dungeons + set @anthell, getmapusers("anthell01.gat") + getmapusers("anthell02.gat"); + set @beach, getmapusers("beach_dun.gat") + getmapusers("beach_dun2.gat") + getmapusers("beach_dun3.gat"); + set @byalan, getmapusers("iz_dun00.gat") + getmapusers("iz_dun01.gat") + getmapusers("iz_dun02.gat") + getmapusers("iz_dun03.gat") + getmapusers("iz_dun04.gat"); + set @clock, getmapusers("alde_dun01.gat") + getmapusers("alde_dun02.gat") + getmapusers("alde_dun03.gat") + getmapusers("alde_dun04.gat") + getmapusers("c_tower1.gat") + getmapusers("c_tower2.gat") + getmapusers("c_tower3.gat") + getmapusers("c_tower4.gat"); + set @coal, getmapusers("mjo_dun01.gat") + getmapusers("mjo_dun02.gat") + getmapusers("mjo_dun03.gat"); + set @culvert, getmapusers("prt_sewb1.gat") + getmapusers("prt_sewb2.gat") + getmapusers("prt_sewb3.gat") + getmapusers("prt_sewb4.gat"); + set @geffen, getmapusers("gef_dun00.gat") + getmapusers("gef_dun01.gat") + getmapusers("gef_dun02.gat") + getmapusers("gef_dun03.gat"); + set @glast, getmapusers("glast_01.gat") + getmapusers("gl_cas01.gat") + getmapusers("gl_cas02.gat") + getmapusers("gl_knt01.gat") + getmapusers("gl_knt02.gat") + + getmapusers("gl_chyard.gat") + getmapusers("gl_sew01.gat") + getmapusers("gl_sew02.gat") + getmapusers("gl_sew03.gat") + getmapusers("gl_sew04.gat") + getmapusers("gl_church.gat") + + getmapusers("gl_step.gat") + getmapusers("gl_dun01.gat") + getmapusers("gl_dun02.gat") + getmapusers("gl_prison.gat") + getmapusers("gl_prison1.gat"); + set @hidden, getmapusers("prt_maze01.gat") + getmapusers("prt_maze02.gat") + getmapusers("prt_maze03.gat"); + set @magma, getmapusers("mag_dun01.gat") + getmapusers("mag_dun02.gat"); + set @orc, getmapusers("orcsdun01.gat") + getmapusers("orcsdun02.gat"); + set @payond, getmapusers("pay_dun00.gat") + getmapusers("pay_dun01.gat") + getmapusers("pay_dun02.gat") + getmapusers("pay_dun03.gat") + getmapusers("pay_dun04.gat"); + set @pyramids, getmapusers("moc_pryd01.gat") + getmapusers("moc_pryd02.gat") + getmapusers("moc_pryd03.gat") + getmapusers("moc_pryd04.gat") + getmapusers("moc_pryd05.gat") + getmapusers("moc_pryd06.gat"); + set @sphinx, getmapusers("in_sphinx1.gat") + getmapusers("in_sphinx2.gat") + getmapusers("in_sphinx3.gat") + getmapusers("in_sphinx4.gat") + getmapusers("in_sphinx5.gat"); + set @sunken, getmapusers("treasure01.gat") + getmapusers("treasure02.gat"); + set @toy, getmapusers("xmas_dun01.gat") + getmapusers("xmas_dun02.gat"); + set @turtle, getmapusers("tur_dun01.gat") + getmapusers("tur_dun02.gat") + getmapusers("tur_dun03.gat") + getmapusers("tur_dun04.gat"); + set @ama, getmapusers("ama_dun01.gat") + getmapusers("ama_dun02.gat") + getmapusers("ama_dun02.gat"); + set @gon, getmapusers("gon_dun01.gat") + getmapusers("gon_dun02.gat") + getmapusers("gon_dun03.gat"); + set @gefenia, getmapusers("gefenia01.gat") + getmapusers("gefenia02.gat") + getmapusers("gefenia03.gat") + getmapusers("gefenia04.gat"); + set @dungeons, @anthell + @beach + @dbyalan + @clock + @coal + @culvert + @geffen + @glast + @hidden + + @magma + @orc + @payond + @pyramids + @sphinx + @sunken + @toy + @turtle + @ama + @gon + @gefenia; + + mes "[Warp NPC]"; + mes "Hello, I can warp you to any Town and Dungeon! Were do you want to go?"; + next; + menu "Towns [" + @red$ + @towns + @reset$ + "]",town,"Dungeons [" + @red$ + @dungeons + @reset$ +"]",dungeon; +town: +// + getmapusers("prt_in.gat") + getmapusers("xmas_in.gat") + getmapusers("cmd_in01.gat") +// + getmapusers("cmd_in02.gat") + getmapusers("yuno_in01.gat") + getmapusers("yuno_in02.gat") +// + getmapusers("yuno_in03.gat") + getmapusers("yuno_in04.gat") + getmapusers("yuno_in05.gat") +// + getmapusers("ama_in01.gat") + getmapusers("ama_in02.gat") + getmapusers("gon_in.gat") +// + getmapusers("um_in.gat") + getmapusers("nif_in.gat") + getmapusers("lou_in01.gat") +// + getmapusers("lou_in02.gat"); + menu "Alberta [" + @red$ + (getmapusers("alberta.gat")+getmapusers("alberta_in.gat")) + @reset$ + "]",walberta, + "Aldebaran [" + @red$ + (getmapusers("aldebaran.gat")+ getmapusers("aldeba_in.gat")) + @reset$ + "]",waldebaran, + "Amatsu [" + @red$ + (getmapusers("amatsu.gat")+getmapusers("ama_in02.gat")) + @reset$ + "]",wamatsu, + "Comodo [" + @red$ + (getmapusers("comodo.gat")+getmapusers("cmd_in01.gat")+getmapusers("cmd_in02.gat")) + @reset$ + "]",wcomodo, + "Gonryun [" + @red$ + (getmapusers("gonryun.gat")+getmapusers("gon_in.gat")) + @reset$ + "]",wgonryun, + "Geffen [" + @red$ + (getmapusers("geffen.gat")+getmapusers("geffen_in.gat")) + @reset$ + "]",wgeffen, + "Izlude [" + @red$ + (getmapusers("izlude.gat")+getmapusers("izlude_in.gat")) + @reset$ + "]",wizlude, + "Lutie [" + @red$ + (getmapusers("xmas.gat")+getmapusers("xmas_in.gat")) + @reset$ + "]",wxmas, + "Morroc [" + @red$ + (getmapusers("morocc.gat")+getmapusers("morocc_in.gat")) + @reset$ + "]",wmorroc, + "Niflheim [" + @red$ + (getmapusers("niflheim.gat")+getmapusers("nif_in.gat")) + @reset$ + "]",wniflheim, + "Payon [" + @red$ + (getmapusers("payon.gat")+getmapusers("payon_in01.gat")+getmapusers("payon_in02.gat")+getmapusers("payon_in03.gat")) + @reset$ + "]",wpayon, + "Prontera [" + @red$ + (getmapusers("prontera.gat")+getmapusers("prt_in.gat")) + @reset$ + "]",wprontera, + "Yuno [" + @red$ + (getmapusers("yuno.gat")+getmapusers("yuno_in01.gat")+getmapusers("yuno_in02.gat")+getmapusers("yuno_in03.gat")+getmapusers("yuno_in04.gat")+getmapusers("yuno_in05.gat")) + @reset$ + "]",wyuno, + "Umbala [" + @red$ + (getmapusers("umbala.gat")+getmapusers("um_in.gat")) + @reset$ + "]",wumbala, + "Valkyrie [" + @red$ + getmapusers("valkyrie.gat") + @reset$ + "]",wvalk, + "Louyang [" + @red$ + (getmapusers("louyang.gat")+getmapusers("lou_in01.gat")+getmapusers("lou_in02.gat")) + @reset$ + "]",wlouyang; +dungeon: + menu "Amatsu Dungeon [" + @red$ + @ama + @reset$ + "]",ama, + "Gonryun Dungeon [" + @red$ + @gon + @reset$ + "]",gon, + "Anthell [" + @red$ + @anthell + @reset$ + "]",ant, + "Beach Dungeon [" + @red$ + @beach + @reset$ + "]",beach, + "Byalan Dungeon [" + @red$ + @byalan + @reset$ + "]",byalan, + "Clock Tower [" + @red$ + @clock + @reset$ + "]",clock, + "Coal Mines [" + @red$ + @coal + @reset$ + "]",coal, + "Culvert [" + @red$ + @culvert + @reset$ + "]",culvert, + "Geffen Dungeon [" + @red$ + @geffen + @reset$ + "]",geffen, + "Glast Heim [" + @red$ + @glast + @reset$ + "]",glast, + "Hidden Dungeon [" + @red$ + @hidden + @reset$ + "]",hidden, + "Magma Dungeon [" + @red$ + @magma + @reset$ + "]",magma, + "Orc Dungeon [" + @red$ + @orc + @reset$ + "]",orc, + "Payon Dungeon [" + @red$ + @payond + @reset$ + "]",payon, + "Pyramids [" + @red$ + @pyramids + @reset$ + "]",pyramids, + "Sphinx [" + @red$ + @sphinx + @reset$ + "]",sphinx, + "Sunken Ship [" + @red$ + @sunken + @reset$ + "]",sunken, + "Toy Factory [" + @red$ + @toy + @reset$ + "]",toy, + "Turtle Dungeon [" + @red$ + @tutrle + @reset$ + "]",turtle, + "Gefenia [" + @red$ + @gefenia + @reset$ + "]",gefenia; +ant: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("anthell01.gat")+ @reset$ + "]",danthell1, + "Level 2 [" + @red$ + getmapusers("anthell02.gat")+ @reset$ + "]",danthell2; +beach: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("beach_dun.gat") + @reset$ + "]",dbeach1, + "Level 2 [" + @red$ + getmapusers("beach_dun2.gat") + @reset$ + "]",dbeach2, + "Level 3 [" + @red$ + getmapusers("beach_dun3.gat") + @reset$ + "]",dbeach3; +byalan: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("iz_dun00.gat") + @reset$ + "]",dbyalan1, + "Level 2 [" + @red$ + getmapusers("iz_dun01.gat") + @reset$ + "]",dbyalan2, + "Level 3 [" + @red$ + getmapusers("iz_dun02.gat") + @reset$ + "]",dbyalan3, + "Level 4 [" + @red$ + getmapusers("iz_dun03.gat") + @reset$ + "]",dbyalan4, + "Level 5 [" + @red$ + getmapusers("iz_dun04.gat") + @reset$ + "]",dbyalan5; +clock: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("c_tower1.gat") + @reset$ + "]",dclock1, + "Level 2 [" + @red$ + getmapusers("c_tower2.gat") + @reset$ + "]",dclock2, + "Level 3 [" + @red$ + getmapusers("c_tower3.gat") + @reset$ + "]",dclock3, + "Level 4 [" + @red$ + getmapusers("c_tower4.gat") + @reset$ + "]",dclock4, + "Basement 1 [" + @red$ + getmapusers("alde_dun01.gat") + @reset$ + "]",dalde1, + "Basement 2 [" + @red$ + getmapusers("alde_dun02.gat") + @reset$ + "]",dalde2, + "Basement 3 [" + @red$ + getmapusers("alde_dun03.gat") + @reset$ + "]",dalde3, + "Basement 4 [" + @red$ + getmapusers("alde_dun04.gat") + @reset$ + "]",dalde4; +coal: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("mjo_dun01.gat") + @reset$ + "]",dcoal1, + "Level 2 [" + @red$ + getmapusers("mjo_dun02.gat") + @reset$ + "]",dcoal2, + "Level 3 [" + @red$ + getmapusers("mjo_dun03.gat") + @reset$ + "]",dcoal3; +culvert: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("prt_sewb1.gat") + @reset$ + "]",dculvert1, + "Level 2 [" + @red$ + getmapusers("prt_sewb2.gat") + @reset$ + "]",dculvert2, + "Level 3 [" + @red$ + getmapusers("prt_sewb3.gat") + @reset$ + "]",dculvert3, + "Level 4 [" + @red$ + getmapusers("prt_sewb4.gat") + @reset$ + "]",dculvert4; +geffen: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("gef_dun00.gat") + @reset$ + "]",dgeffen1, + "Level 2 [" + @red$ + getmapusers("gef_dun01.gat") + @reset$ + "]",dgeffen2, + "Level 3 [" + @red$ + getmapusers("gef_dun02.gat") + @reset$ + "]",dgeffen3, + "Level 4 [" + @red$ + getmapusers("gef_dun03.gat") + @reset$ + "]",dgeffen4; +glast: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Entrance [" + @red$ + getmapusers("glast_01.gat") + @reset$ + "]",dglastent, + "Castle 1 [" + @red$ + getmapusers("gl_cas01.gat") + @reset$ + "]",dglastcast1, + "Castle 2 [" + @red$ + getmapusers("gl_cas02.gat") + @reset$ + "]",dglastcast2, + "Chivalry 1 [" + @red$ + getmapusers("gl_knt01.gat") + @reset$ + "]",dglastchiv1, + "Chivalry 2 [" + @red$ + getmapusers("gl_knt02.gat") + @reset$ + "]",dglastchiv2, + "Churchyard [" + @red$ + getmapusers("gl_chyard.gat") + @reset$ + "]",dglastyard, + "Culvert 1 [" + @red$ + getmapusers("gl_sew01.gat") + @reset$ + "]",dglastcul1, + "Culvert 2 [" + @red$ + getmapusers("gl_sew02.gat") + @reset$ + "]",dglastcul1, + "Culvert 3 [" + @red$ + getmapusers("gl_sew03.gat") + @reset$ + "]",dglastcul3, + "Culvert 4 [" + @red$ + getmapusers("gl_sew04.gat") + @reset$ + "]",dglastcul4, + "St.Abbey [" + @red$ + getmapusers("gl_church.gat") + @reset$ + "]",dglastchur, + "Staircase Dungeon [" + @red$ + getmapusers("gl_step.gat") + @reset$ + "]",dglaststep, + "Underground Cave 1 [" + @red$ + getmapusers("gl_dun01.gat") + @reset$ + "]",dglastcave1, + "Underground Cave 2 [" + @red$ + getmapusers("gl_dun02.gat") + @reset$ + "]",dglastcave2, + "Underground Prison 1 [" + @red$ + getmapusers("gl_prison.gat") + @reset$ + "]",dglastpris1, + "Underground Prison 2 [" + @red$ + getmapusers("gl_prison1.gat") + @reset$ + "]",dglastpris2; +hidden: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("prt_maze01.gat") + @reset$ + "]",dhidden1, + "Level 2 [" + @red$ + getmapusers("prt_maze02.gat") + @reset$ + "]",dhidden2, + "Level 3 [" + @red$ + getmapusers("prt_maze03.gat") + @reset$ + "]",dhidden3; +magma: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("mag_dun01.gat") + @reset$ + "]",dmagma1, + "Level 2 [" + @red$ + getmapusers("mag_dun02.gat") + @reset$ + "]",dmagma2; +orc: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("orcsdun01.gat") + @reset$ + "]",dorc1, + "Level 2 [" + @red$ + getmapusers("orcsdun02.gat") + @reset$ + "]",dorc2; +payon: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("pay_dun00.gat") + @reset$ + "]",dpayon1, + "Level 2 [" + @red$ + getmapusers("pay_dun01.gat") + @reset$ + "]",dpayon2, + "Level 3 [" + @red$ + getmapusers("pay_dun02.gat") + @reset$ + "]",dpayon3, + "Level 4 [" + @red$ + getmapusers("pay_dun03.gat") + @reset$ + "]",dpayon4, + "Level 5 [" + @red$ + getmapusers("pay_dun04.gat") + @reset$ + "]",dpayon5; +pyramids: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("moc_pryd01.gat") + @reset$ + "]",dpyramids1, + "Level 2 [" + @red$ + getmapusers("moc_pryd02.gat") + @reset$ + "]",dpyramids2, + "Level 3 [" + @red$ + getmapusers("moc_pryd03.gat") + @reset$ + "]",dpyramids3, + "Level 4 [" + @red$ + getmapusers("moc_pryd04.gat") + @reset$ + "]",dpyramids4, + "Basement 1 [" + @red$ + getmapusers("moc_pryd05.gat") + @reset$ + "]",dpyramidsb1, + "Basement 2 [" + @red$ + getmapusers("moc_pryd06.gat") + @reset$ + "]",dpyramidsb2; +sphinx: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("in_sphinx1.gat") + @reset$ + "]",dsphinx1, + "Level 2 [" + @red$ + getmapusers("in_sphinx2.gat") + @reset$ + "]",dsphinx2, + "Level 3 [" + @red$ + getmapusers("in_sphinx3.gat") + @reset$ + "]",dsphinx3, + "Level 4 [" + @red$ + getmapusers("in_sphinx4.gat") + @reset$ + "]",dsphinx4, + "Level 5 [" + @red$ + getmapusers("in_sphinx5.gat") + @reset$ + "]",dsphinx5; +sunken: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("treasure01.gat") + @reset$ + "]",dsunken1, + "Level 2 [" + @red$ + getmapusers("treasure02.gat") + @reset$ + "]",dsunken2; +toy: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("xmas_dun01.gat") + @reset$ + "]",dtoy1, + "Level 2 [" + @red$ + getmapusers("xmas_dun02.gat") + @reset$ + "]",dtoy2; +turtle: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Entrance [" + @red$ + getmapusers("tur_dun01.gat") + @reset$ + "]",dturtleent, + "Level 1 [" + @red$ + getmapusers("tur_dun02.gat") + @reset$ + "]",dturtle1, + "Level 2 [" + @red$ + getmapusers("tur_dun03.gat") + @reset$ + "]",dturtle2, + "Level 3 [" + @red$ + getmapusers("tur_dun04.gat") + @reset$ + "]",dturtle3; +ama: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("ama_dun01.gat") + @reset$ + "]",dama1, + "Level 2 [" + @red$ + getmapusers("ama_dun02.gat") + @reset$ + "]",dama2, + "Level 3 [" + @red$ + getmapusers("ama_dun03.gat") + @reset$ + "]",dama3; +gon: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("gon_dun01.gat") + @reset$ + "]",dgon1, + "Level 2 [" + @red$ + getmapusers("gon_dun02.gat") + @reset$ + "]",dgon2, + "Level 3 [" + @red$ + getmapusers("gon_dun03.gat") + @reset$ + "]",dgon3; +gefenia: + mes "[Warp NPC]"; + mes "Please select a Level. Beware that you will be warped directly into the dungeon."; + next; + menu "Level 1 [" + @red$ + getmapusers("gefenia01.gat") + @reset$ + "]",dgefenia1, + "Level 2 [" + @red$ + getmapusers("gefenia02.gat") + @reset$ + "]",dgefenia2, + "Level 3 [" + @red$ + getmapusers("gefenia03.gat") + @reset$ + "]",dgefenia3, + "Level 4 [" + @red$ + getmapusers("gefenia04.gat") + @reset$ + "]",dgefenia4; + +//----------------Towns----------------\\ + +walberta: warp "alberta.gat",192,147; close; +waldebaran: warp "aldebaran.gat",140,131; close; +wamatsu: warp "amatsu.gat",198,84; close; +wcomodo: warp "comodo.gat",209,143; close; +wgonryun: warp "gonryun.gat",160,121; close; +wgeffen: warp "geffen.gat",119,59; close; +wizlude: warp "izlude.gat",128,114; close; +wxmas: warp "xmas.gat",147,134; close; +wmorroc: warp "morocc.gat",156,93; close; +wniflheim: warp "niflheim.gat",85,154; close; +wpayon: warp "payon.gat",152,75; close; +wprontera: warp "prontera.gat",156,191; close; +wyuno: warp "yuno.gat",157,51; close; +wumbala: warp "umbala.gat",145,155; close; +wlouyang: warp "louyang.gat",210,108; close; +wvalk: warp "valkyrie",48,8; close; + +//----------------Dungeons----------------\\ + +danthell1: warp "anthell01.gat",35,262; close; +danthell2: warp "anthell02.gat",168,170; close; +dbeach1: warp "beach_dun.gat",266,67; close; +dbeach2: warp "beach_dun2.gat",255,244; close; +dbeach3: warp "beach_dun3.gat",23,260; close; +dbyalan1: warp "iz_dun00.gat",168,168; close; +dbyalan2: warp "iz_dun01.gat",253,252; close; +dbyalan3: warp "iz_dun02.gat",236,204; close; +dbyalan4: warp "iz_dun03.gat",32,63; close; +dbyalan5: warp "iz_dun04.gat",26,27; close; +dalde1: warp "alde_dun01.gat",297,25; close; +dalde2: warp "alde_dun02.gat",127,169; close; +dalde3: warp "alde_dun03.gat",277,178; close; +dalde4: warp "alde_dun04.gat",268,74; close; +dclock1: warp "c_tower1.gat",199,159; close; +dclock2: warp "c_tower2.gat",148,283; close; +dclock3: warp "c_tower3.gat",65,147; close; +dclock4: warp "c_tower4.gat",56,155; close; +dcoal1: warp "mjo_dun01.gat",52,17; close; +dcoal2: warp "mjo_dun02.gat",381,343; close; +dcoal3: warp "mjo_dun03.gat",302,262; close; +dculvert1: warp "prt_sewb1.gat",131,247; close; +dculvert2: warp "prt_sewb2.gat",19,19; close; +dculvert3: warp "prt_sewb3.gat",180,169; close; +dculvert4: warp "prt_sewb4.gat",100,92; close; +dgeffen1: warp "gef_dun00.gat",104,99; close; +dgeffen2: warp "gef_dun01.gat",115,236; close; +dgeffen3: warp "gef_dun02.gat",106,132; close; +dgeffen4: warp "gef_dun03.gat",203,200; close; +dglastent: warp "glast_01.gat",375,304; close; +dglastcast1: warp "gl_cas01.gat",199,29; close; +dglastcast2: warp "gl_cas02.gat",104,25; close; +dglastchiv1: warp "gl_knt01.gat",150,15; close; +dglastchiv2: warp "gl_knt02.gat",157,287; close; +dglastyard: warp "gl_chyard.gat",147,15; close; +dglastcul1: warp "gl_sew01.gat",258,255; close; +dglastcul2: warp "gl_sew02.gat",108,291; close; +dglastcul3: warp "gl_sew03.gat",171,283; close; +dglastcul4: warp "gl_sew04.gat",68,277; close; +dglastchur: warp "gl_church.gat",156,7; close; +dglaststep: warp "gl_step.gat",12,7; close; +dglastcave1: warp "gl_dun01.gat",133,271; close; +dglastcave2: warp "gl_dun02.gat",224,274; close; +dglastpris1: warp "gl_prison.gat",14,70; close; +dglastpris2: warp "gl_prison1.gat",150,14; close; +dhidden1: warp "prt_maze01.gat",176,7; close; +dhidden2: warp "prt_maze02.gat",94,9; close; +dhidden3: warp "prt_maze03.gat",23,8; close; +dmagma1: warp "mag_dun01.gat",126,68; close; +dmagma2: warp "mag_dun02.gat",47,30; close; +dorc1: warp "orcsdun01.gat",32,170; close; +dorc2: warp "orcsdun02.gat",21,185; close; +dpayon1: warp "pay_dun00.gat",21,183; close; +dpayon2: warp "pay_dun01.gat",19,33; close; +dpayon3: warp "pay_dun02.gat",19,63; close; +dpayon4: warp "pay_dun03.gat",155,159; close; +dpayon5: warp "pay_dun04.gat",201,204; close; +dpyramids1: warp "moc_pryd01.gat",192,9; close; +dpyramids2: warp "moc_pryd02.gat",10,192; close; +dpyramids3: warp "moc_pryd03.gat",100,92; close; +dpyramids4: warp "moc_pryd04.gat",181,11; close; +dpyramidsb1: warp "moc_pryd05.gat",94,96; close; +dpyramidsb2: warp "moc_pryd06.gat",192,8; close; +dsphinx1: warp "in_sphinx1.gat",288,9; close; +dsphinx2: warp "in_sphinx2.gat",149,81; close; +dsphinx3: warp "in_sphinx3.gat",210,54; close; +dsphinx4: warp "in_sphinx4.gat",10,222; close; +dsphinx5: warp "in_sphinx5.gat",100,99; close; +dsunken1: warp "treasure01.gat",69,24; close; +dsunken2: warp "treasure02.gat",102,27; close; +dtoy1: warp "xmas_dun01.gat",205,15; close; +dtoy2: warp "xmas_dun02.gat",129,133; close; +dturtleent: warp "tur_dun01.gat",154,49; close; +dturtle1: warp "tur_dun02.gat",148,261; close; +dturtle2: warp "tur_dun03.gat",132,189; close; +dturtle3: warp "tur_dun04.gat",100,192; close; +dama1: warp "ama_dun01.gat",228,11; close; +dama2: warp "ama_dun02.gat",34,41; close; +dama3: warp "ama_dun03.gat",119,14; close; +dgon1: warp "gon_dun01.gat",153,53; close; +dgon2: warp "gon_dun02.gat",28,113; close; +dgon3: warp "gon_dun03.gat",68,16; close; +dgefenia1: warp "gefenia01.gat",40,103; close; +dgefenia2: warp "gefenia02.gat",203,34; close; +dgefenia3: warp "gefenia03.gat",266,168; close; +dgefenia4: warp "gefenia04.gat",130,272; close; +} +alberta.gat,31,240,4 duplicate(warpra) Warp NPC 115 +aldebaran.gat,145,118,4 duplicate(warpra) Warp NPC 115 +amatsu.gat,194,83,1 duplicate(warpra) Warp NPC 115 +comodo.gat,194,158,4 duplicate(warpra) Warp NPC 115 +geffen.gat,115,66,4 duplicate(warpra) Warp NPC 115 +izlude.gat,131,116,4 duplicate(warpra) Warp NPC 115 +xmas.gat,150,136,4 duplicate(warpra) Warp NPC 115 +morocc.gat,156,99,4 duplicate(warpra) Warp NPC 115 +payon.gat,182,110,4 duplicate(warpra) Warp NPC 115 +prontera.gat,153,183,4 duplicate(warpra) Warp NPC 115 +yuno.gat,137,162,4 duplicate(warpra) Warp NPC 115 +moc_fild04.gat,207,331,4 duplicate(warpra) Warp NPC 115 +izlu2dun.gat,104,82,4 duplicate(warpra) Warp NPC 115 +mjolnir_02.gat,85,363,4 duplicate(warpra) Warp NPC 115 +prt_fild05.gat,273,215,4 duplicate(warpra) Warp NPC 115 +glast_01.gat,370,308,4 duplicate(warpra) Warp NPC 115 +yuno_fild03.gat,37,135,4 duplicate(warpra) Warp NPC 115 +gef_fild10.gat,71,339,4 duplicate(warpra) Warp NPC 115 +pay_arche.gat,39,135,4 duplicate(warpra) Warp NPC 115 +moc_ruins.gat,64,166,4 duplicate(warpra) Warp NPC 115 +moc_fild19.gat,106,97,4 duplicate(warpra) Warp NPC 115 +alb2trea.gat,73,101,4 duplicate(warpra) Warp NPC 115 +tur_dun01.gat,148,239,4 duplicate(warpra) Warp NPC 115 +gonryun.gat,151,130,4 duplicate(warpra) Warp NPC 115 +louyang.gat,210,106,4 duplicate(warpra) Warp NPC 115 +umbala.gat,132,130,4 duplicate(warpra) Warp NPC 115 +valkyrie.gat,48,35,8 duplicate(warpra) Warp NPC 115 diff --git a/npc/quests/custom/event_6_new_hats.txt b/npc/quests/custom/event_6_new_hats.txt index 583f190b9..ab4413138 100644 --- a/npc/quests/custom/event_6_new_hats.txt +++ b/npc/quests/custom/event_6_new_hats.txt @@ -1,366 +1,366 @@ -//===== eAthena Script ======================================= -//= Custom Quest For New Headgears -//===== By: ================================================== -//= RedxSwordxHero, Lupus -//===== Current Version: ===================================== -//= 1.2 -//===== Compatible With: ===================================== -//= eAthena 1.0 -//===== Description: ========================================= -//= 4 brothers give you quests to get 6 new hats (missing -//= from official quests) -//= Use this custom quest instead of event_32_new_hats.txt -//= -Bongun Hat -//= -Poring Hat, Sphinx Hat -//= -Kafra Band, Panda Hat -//= -Crescent Hairpin -//===== Additional Comments: ================================= -//= Event New Hats by RedxSwordxHero -//= Ported and improved with timers [Lupus] -//= Thanks to x[tsk],fixed all item requirments to iRO specs exept -//= for hats which cannot be made on the real server. [Lupus] -//= 1.2 removed already existing official hat quests [Lupus] -//============================================================ - - -prontera.gat,140,172,5 script Zac 704,{ - mes "[Zac]"; - mes "I am the oldest and strongest of the 4 brothers that makes all the newer hats. You will need to bring me the correct items for each hat, so I can make them."; - next; - mes "[Zac]"; - mes "I provide 8 hats and my brothers provides the other 24."; - next; - menu "Join",L1,"Information",L2,"Cancel",L3; -L1: - mes "[Zac]"; - mes "What hat do you want me to make?"; - next; - menu "Bongun Hat",L1_4; -L1_4: - mes "[Zac]"; - mes "Let me check the items you have brought here."; - next; - if((countitem(609) < 10)) goto L_ITEM_1c;//Items: Amulet, - if((countitem(978) < 1)) goto L_ITEM_2c;//Items: Cobaltblue Dyestuff, - if((countitem(2264) < 1)) goto L_ITEM_3c;//Items: Munak Hat, - mes "[Zac]"; - mes "Wow!! Well done! Finally you have gathered all items needed! We will make the Bongun Hat for you right away. Please Wait a Moment."; - next; - delitem 609,100;//Items: Amulet, - delitem 978,1;//Items: Cobaltblue Dyestuff, - delitem 2264,1; //Items: Munak Hat, - mes "[Zac]"; - mes "Tah Dah! ^FF0000Bongun Hat^000000...! Please Take it!"; - getitem 5046,1;//Items: Bongun Hat, - next; - mes "[Zac]"; - mes "I liked that, I look forward to making more. Thank you."; - close; -L_ITEM_1c: - mes "[Zac]"; - mes "Oh, dear. You need 10 Amulets..."; - close; -L_ITEM_2c: - mes "[Zac]"; - mes "Oh, dear. You need 1 Cobaltblue Dyestuff..."; - close; -L_ITEM_3c: - mes "[Zac]"; - mes "Oh, dear. You need 1 Munak Hat..."; - close; -L2: - mes "[Zac]"; - mes "Which hat materials do you wish to know?"; - next; - menu "Bongun Hat",L2_4; -L2_4: - mes "[Zac]"; - mes "You need 10 Amulets, 1 Cobaltblue Dyestuff and 1 Munak Hat for Bongun Hat."; - close; -L3: - mes "[Zac]"; - mes "Stop by some other time with the right materials, so I can make the hats for you."; - close; -} - -prontera.gat,143,172,5 script Blac 732,{ - mes "[Blac]"; - mes "I am the youngest and sexiest of the 4 brothers that makes all the newer hats. You will need to bring me the correct items for each hat, so I can make them."; - next; - mes "[Blac]"; - mes "I provide 8 hats and my brothers provides the other 24."; - next; - menu "Join",L1,"Information",L2,"Cancel",L3; -L1: - mes "[Blac]"; - mes "What hat do you want me to make?"; - next; - menu "Crescent Hairpin",L1_9; -L1_9: - mes "[Blac]"; - mes "Let me check the items you have brought here."; - next; - if((countitem(5041) < 1)) goto L_ITEM_1;//Items: Heart Hairpin, - if((countitem(999) < 10)) goto L_ITEM_2;//Items: Steel, - mes "[Blac]"; - mes "Wow!! Well done! Finally you have gathered all items needed! We will make the Crescent Hairpin for you right away. Please Wait a Moment."; - next; - delitem 5041,1;//Items: Heart Hairpin, - delitem 999,10; //Items: Steel, - mes "[Blac]"; - mes "Tah Dah! ^FF0000Crescent Hairpin^000000...! Please Take it!"; - getitem 5048,1;//Items: Cresent Hairpin, - next; - mes "[Blac]"; - mes "I liked that, I look forward to making more. Thank you."; - close; -L_ITEM_1: - mes "[Blac]"; - mes "Oh, dear. You need 1 Heart Hairpin..."; - close; -L_ITEM_2: - mes "[Blac]"; - mes "Oh, dear. You need 10 Steels..."; - close; -L2: - mes "[Blac]"; - mes "Which hat materials do you wish to know?"; - next; - menu "Crescent Hairpin",L2_9; -L2_9: - mes "[Blac]"; - mes "You need 1 Heart Hairpin and 10 Steels for Crescent Hairpin."; - close; -L3: - mes "[Blac]"; - mes "Stop by some other time with the right materials, so I can make the hats for you."; - close; -} - -prontera.gat,141,172,5 script Jac 107,{ - mes "[Jac]"; - mes "I am the 2nd oldest and calmest of the 4 brothers that makes all the newer hats. You will need to bring me the correct items for each hat, so I can make them."; - next; - mes "[Jac]"; - mes "I provide 8 hats and my brothers provides the other 24."; - next; - menu "Join",L1,"Information",L2,"Cancel",L3; -L1: - mes "[Jac]"; - mes "What hat do you want me to make?"; - next; - menu "Kafra Band",L1_19,"Panda Hat",L1_24; -L1_19: - mes "[Jac]"; - mes "Let me check the items you have brought here."; - next; - if((countitem(10007) < 1)) goto L_ITEM_1b;//Items: Silk Ribbon, - if((countitem(10008) < 1)) goto L_ITEM_2b;//Items: Punisher, - mes "[Jac]"; - mes "Wow!! Well done! Finally you have gathered all items needed! We will make the Kafra Band for you right away. Please Wait a Moment."; - next; - delitem 10007,1;//Items: Silk Ribbon, - delitem 10009,1; //Items: Wild Flower, - mes "[Jac]"; - mes "Tah Dah! ^FF0000Kafra Band^000000...! Please Take it!"; - getitem 5020,1;//Items: Kafra's Band, - next; - mes "[Jac]"; - mes "I liked that, I look forward to making more. Thank you."; - close; -L_ITEM_1b: - mes "[Jac]"; - mes "Oh, dear. You need 1 Silk Ribbon..."; - close; -L_ITEM_2b: - mes "[Jac]"; - mes "Oh, dear. You need 1 Wild Flower..."; - close; -L1_24: - mes "[Jac]"; - mes "Let me check the items you have brought here."; - next; - if((countitem(999) < 10)) goto L_ITEM_1g;//Items: Steel, - if((countitem(948) < 200)) goto L_ITEM_2g;//Items: Bears Footskin, - mes "[Jac]"; - mes "Wow!! Well done! Finally you have gathered all items needed! We will make the Panda Hat for you right away. Please Wait a Moment."; - next; - delitem 999,10;//Items: Steel, - delitem 948,200; //Items: Bears Footskin, - mes "[Jac]"; - mes "Tah Dah! ^FF0000Panda Hat^000000...! Please Take it!"; - getitem 5030,1;//Items: Panda Hat, - next; - mes "[Jac]"; - mes "I liked that, I look forward to making more. Thank you."; - close; -L_ITEM_1g: - mes "[Jac]"; - mes "Oh, dear. You need 10 Steels..."; - close; -L_ITEM_2g: - mes "[Jac]"; - mes "Oh, dear. You need 200 Bear Footskins..."; - close; -L2: - mes "[Jac]"; - mes "Which hat materials do you wish to know?"; - next; - menu "Kafra Band",L2_19,"Panda Hat",L2_24; -L2_19: - mes "[Jac]"; - mes "You need 1 Silk Ribbon and 1 Wild Flower for Kafra Band."; - close; -L2_24: - mes "[Jac]"; - mes "You need 10 Steels and 200 Bear Footskins for Panda Hat."; - close; -L3: - mes "[Jac]"; - mes "Stop by some other time with the right materials, so I can make the hats for you."; - close; -} - -prontera.gat,142,172,5 script Pac 705,{ - mes "[Pac]"; - mes "I am 3rd oldest and wisest of the 4 brothers that makes all the newer hats. You will need to bring me the correct items for each hat so I can make them."; - next; - mes "[Pac]"; - mes "I provide 8 hats and my brothers provides the other 24."; - next; - menu "Join",L1,"Information",L2,"Cancel",L3; -L1: - mes "[Pac]"; - mes "What hat do you want me to make?"; - next; - menu "Poring Hat",L1_26,"Sphinx Hat",L1_29; -L1_26: - mes "[Pac]"; - mes "Let me check the items you have brought here."; - next; - if((countitem(741) < 1)) goto L_ITEM_1a;//Items: Poring Doll, - if((countitem(909) < 300)) goto L_ITEM_2a;//Items: Jellopy, - mes "[Pac]"; - mes "Wow!! Well done! Finally you have gathered all items needed! We will make the Poring Hat for you right away. Please Wait a Moment."; - next; - delitem 741,1;//Items: Poring Doll, - delitem 909,300;//Items: Jellopy, - mes "[Pac]"; - mes "Tah Dah! ^FF0000Poring Hat^000000...! Please Take it!"; - getitem 5035,1;//Items: Poring Hat, - next; - mes "[Pac]"; - mes "I liked that, I look forward to making more. Thank you."; - close; -L_ITEM_1a: - mes "[Pac]"; - mes "Oh, dear. You need 1 Poring Doll..."; - close; -L_ITEM_2a: - mes "[Pac]"; - mes "Oh, dear. You need 300 Jellopys..."; - close; -L1_29: - mes "[Pac]"; - mes "Let me check the items you have brought here."; - next; - if((countitem(999) < 25)) goto L_ITEM_1d;//Items: Steel, - if((countitem(979) < 1)) goto L_ITEM_2d;//Items: Darkgreen Dyestuff, - if((countitem(976) < 1)) goto L_ITEM_3d;//Items: Lemon Dyestuffs, - if((countitem(1059) < 150)) goto L_ITEM_4d;//Items: Fabric, - if((countitem(969) < 2)) goto L_ITEM_5d;//Items: Gold, - mes "[Pac]"; - mes "Wow!! Well done! Finally you have gathered all items needed! We will make the Sphinx Hat for you right away. Please Wait a Moment."; - next; - delitem 999,1;//Items: Steel, - delitem 979,1;//Items: Darkgreen Dyestuff, - delitem 976,1;//Items: Lemon Dyestuffs, - delitem 1059,150;//Items: Fabric, - delitem 969,2; //Items: Gold, - mes "[Pac]"; - mes "Tah Dah! ^FF0000Sphinx Hat^000000...! Please Take it!"; - getitem 5053,1;//Items: Sphinx Hat, - next; - mes "[Pac]"; - mes "I liked that, I look forward to making more. Thank you."; - close; -L_ITEM_1d: - mes "[Pac]"; - mes "Oh, dear. You need 25 Steels..."; - close; -L_ITEM_2d: - mes "[Pac]"; - mes "Oh, dear. You need 1 DarkGreen Dyestuff..."; - close; -L_ITEM_3d: - mes "[Pac]"; - mes "Oh, dear. You need 1 Lemon Dyestuff..."; - close; -L_ITEM_4d: - mes "[Pac]"; - mes "Oh, dear. You need 150 Fabric..."; - close; -L_ITEM_5d: - mes "[Pac]"; - mes "Oh, dear. You need 2 Gold Bar's..."; - close; -L2: - mes "[Pac]"; - mes "Which hat materials do you wish to know?"; - next; - menu "Poring Hat",L2_26,"Sphinx Hat",L2_29; -L2_26: - mes "[Pac]"; - mes "You need 1 Poring Doll and 300 Jellopys for Poring Hat."; - close; -L2_29: - mes "[Pac]"; - mes "You need 25 Steels, 1 DarkGreen Dyestuff, 1 Lemon Dyestuff, 150 Fabric and 2 Gold Bar's for Sphinx Hat."; - close; -L3: - mes "[Pac]"; - mes "Stop by some other time with the right materials, so I can make the hats for you."; - close; -} - - -//these scripts make our brothers to appear and disappear in order -- script EDZac -1,{ -OnInit: -OnMinute15: - disablenpc "Zac"; - end; -OnMinute01: - enablenpc "Zac"; - end; -} - -- script EDJac -1,{ -OnInit: -OnMinute30: - disablenpc "Jac"; - end; -OnMinute16: - enablenpc "Jac"; - end; -} - -- script EDPac -1,{ -OnInit: -OnMinute45: - disablenpc "Pac"; - end; -OnMinute31: - enablenpc "Pac"; - end; -} - -- script EDBlac -1,{ -OnInit: -OnMinute00: - disablenpc "Blac"; - end; -OnMinute46: - enablenpc "Blac"; - end; -} +//===== eAthena Script ======================================= +//= Custom Quest For New Headgears +//===== By: ================================================== +//= RedxSwordxHero, Lupus +//===== Current Version: ===================================== +//= 1.2 +//===== Compatible With: ===================================== +//= eAthena 1.0 +//===== Description: ========================================= +//= 4 brothers give you quests to get 6 new hats (missing +//= from official quests) +//= Use this custom quest instead of event_32_new_hats.txt +//= -Bongun Hat +//= -Poring Hat, Sphinx Hat +//= -Kafra Band, Panda Hat +//= -Crescent Hairpin +//===== Additional Comments: ================================= +//= Event New Hats by RedxSwordxHero +//= Ported and improved with timers [Lupus] +//= Thanks to x[tsk],fixed all item requirments to iRO specs exept +//= for hats which cannot be made on the real server. [Lupus] +//= 1.2 removed already existing official hat quests [Lupus] +//============================================================ + + +prontera.gat,140,172,5 script Zac 704,{ + mes "[Zac]"; + mes "I am the oldest and strongest of the 4 brothers that makes all the newer hats. You will need to bring me the correct items for each hat, so I can make them."; + next; + mes "[Zac]"; + mes "I provide 8 hats and my brothers provides the other 24."; + next; + menu "Join",L1,"Information",L2,"Cancel",L3; +L1: + mes "[Zac]"; + mes "What hat do you want me to make?"; + next; + menu "Bongun Hat",L1_4; +L1_4: + mes "[Zac]"; + mes "Let me check the items you have brought here."; + next; + if((countitem(609) < 10)) goto L_ITEM_1c;//Items: Amulet, + if((countitem(978) < 1)) goto L_ITEM_2c;//Items: Cobaltblue Dyestuff, + if((countitem(2264) < 1)) goto L_ITEM_3c;//Items: Munak Hat, + mes "[Zac]"; + mes "Wow!! Well done! Finally you have gathered all items needed! We will make the Bongun Hat for you right away. Please Wait a Moment."; + next; + delitem 609,100;//Items: Amulet, + delitem 978,1;//Items: Cobaltblue Dyestuff, + delitem 2264,1; //Items: Munak Hat, + mes "[Zac]"; + mes "Tah Dah! ^FF0000Bongun Hat^000000...! Please Take it!"; + getitem 5046,1;//Items: Bongun Hat, + next; + mes "[Zac]"; + mes "I liked that, I look forward to making more. Thank you."; + close; +L_ITEM_1c: + mes "[Zac]"; + mes "Oh, dear. You need 10 Amulets..."; + close; +L_ITEM_2c: + mes "[Zac]"; + mes "Oh, dear. You need 1 Cobaltblue Dyestuff..."; + close; +L_ITEM_3c: + mes "[Zac]"; + mes "Oh, dear. You need 1 Munak Hat..."; + close; +L2: + mes "[Zac]"; + mes "Which hat materials do you wish to know?"; + next; + menu "Bongun Hat",L2_4; +L2_4: + mes "[Zac]"; + mes "You need 10 Amulets, 1 Cobaltblue Dyestuff and 1 Munak Hat for Bongun Hat."; + close; +L3: + mes "[Zac]"; + mes "Stop by some other time with the right materials, so I can make the hats for you."; + close; +} + +prontera.gat,143,172,5 script Blac 732,{ + mes "[Blac]"; + mes "I am the youngest and sexiest of the 4 brothers that makes all the newer hats. You will need to bring me the correct items for each hat, so I can make them."; + next; + mes "[Blac]"; + mes "I provide 8 hats and my brothers provides the other 24."; + next; + menu "Join",L1,"Information",L2,"Cancel",L3; +L1: + mes "[Blac]"; + mes "What hat do you want me to make?"; + next; + menu "Crescent Hairpin",L1_9; +L1_9: + mes "[Blac]"; + mes "Let me check the items you have brought here."; + next; + if((countitem(5041) < 1)) goto L_ITEM_1;//Items: Heart Hairpin, + if((countitem(999) < 10)) goto L_ITEM_2;//Items: Steel, + mes "[Blac]"; + mes "Wow!! Well done! Finally you have gathered all items needed! We will make the Crescent Hairpin for you right away. Please Wait a Moment."; + next; + delitem 5041,1;//Items: Heart Hairpin, + delitem 999,10; //Items: Steel, + mes "[Blac]"; + mes "Tah Dah! ^FF0000Crescent Hairpin^000000...! Please Take it!"; + getitem 5048,1;//Items: Cresent Hairpin, + next; + mes "[Blac]"; + mes "I liked that, I look forward to making more. Thank you."; + close; +L_ITEM_1: + mes "[Blac]"; + mes "Oh, dear. You need 1 Heart Hairpin..."; + close; +L_ITEM_2: + mes "[Blac]"; + mes "Oh, dear. You need 10 Steels..."; + close; +L2: + mes "[Blac]"; + mes "Which hat materials do you wish to know?"; + next; + menu "Crescent Hairpin",L2_9; +L2_9: + mes "[Blac]"; + mes "You need 1 Heart Hairpin and 10 Steels for Crescent Hairpin."; + close; +L3: + mes "[Blac]"; + mes "Stop by some other time with the right materials, so I can make the hats for you."; + close; +} + +prontera.gat,141,172,5 script Jac 107,{ + mes "[Jac]"; + mes "I am the 2nd oldest and calmest of the 4 brothers that makes all the newer hats. You will need to bring me the correct items for each hat, so I can make them."; + next; + mes "[Jac]"; + mes "I provide 8 hats and my brothers provides the other 24."; + next; + menu "Join",L1,"Information",L2,"Cancel",L3; +L1: + mes "[Jac]"; + mes "What hat do you want me to make?"; + next; + menu "Kafra Band",L1_19,"Panda Hat",L1_24; +L1_19: + mes "[Jac]"; + mes "Let me check the items you have brought here."; + next; + if((countitem(10007) < 1)) goto L_ITEM_1b;//Items: Silk Ribbon, + if((countitem(10008) < 1)) goto L_ITEM_2b;//Items: Punisher, + mes "[Jac]"; + mes "Wow!! Well done! Finally you have gathered all items needed! We will make the Kafra Band for you right away. Please Wait a Moment."; + next; + delitem 10007,1;//Items: Silk Ribbon, + delitem 10009,1; //Items: Wild Flower, + mes "[Jac]"; + mes "Tah Dah! ^FF0000Kafra Band^000000...! Please Take it!"; + getitem 5020,1;//Items: Kafra's Band, + next; + mes "[Jac]"; + mes "I liked that, I look forward to making more. Thank you."; + close; +L_ITEM_1b: + mes "[Jac]"; + mes "Oh, dear. You need 1 Silk Ribbon..."; + close; +L_ITEM_2b: + mes "[Jac]"; + mes "Oh, dear. You need 1 Wild Flower..."; + close; +L1_24: + mes "[Jac]"; + mes "Let me check the items you have brought here."; + next; + if((countitem(999) < 10)) goto L_ITEM_1g;//Items: Steel, + if((countitem(948) < 200)) goto L_ITEM_2g;//Items: Bears Footskin, + mes "[Jac]"; + mes "Wow!! Well done! Finally you have gathered all items needed! We will make the Panda Hat for you right away. Please Wait a Moment."; + next; + delitem 999,10;//Items: Steel, + delitem 948,200; //Items: Bears Footskin, + mes "[Jac]"; + mes "Tah Dah! ^FF0000Panda Hat^000000...! Please Take it!"; + getitem 5030,1;//Items: Panda Hat, + next; + mes "[Jac]"; + mes "I liked that, I look forward to making more. Thank you."; + close; +L_ITEM_1g: + mes "[Jac]"; + mes "Oh, dear. You need 10 Steels..."; + close; +L_ITEM_2g: + mes "[Jac]"; + mes "Oh, dear. You need 200 Bear Footskins..."; + close; +L2: + mes "[Jac]"; + mes "Which hat materials do you wish to know?"; + next; + menu "Kafra Band",L2_19,"Panda Hat",L2_24; +L2_19: + mes "[Jac]"; + mes "You need 1 Silk Ribbon and 1 Wild Flower for Kafra Band."; + close; +L2_24: + mes "[Jac]"; + mes "You need 10 Steels and 200 Bear Footskins for Panda Hat."; + close; +L3: + mes "[Jac]"; + mes "Stop by some other time with the right materials, so I can make the hats for you."; + close; +} + +prontera.gat,142,172,5 script Pac 705,{ + mes "[Pac]"; + mes "I am 3rd oldest and wisest of the 4 brothers that makes all the newer hats. You will need to bring me the correct items for each hat so I can make them."; + next; + mes "[Pac]"; + mes "I provide 8 hats and my brothers provides the other 24."; + next; + menu "Join",L1,"Information",L2,"Cancel",L3; +L1: + mes "[Pac]"; + mes "What hat do you want me to make?"; + next; + menu "Poring Hat",L1_26,"Sphinx Hat",L1_29; +L1_26: + mes "[Pac]"; + mes "Let me check the items you have brought here."; + next; + if((countitem(741) < 1)) goto L_ITEM_1a;//Items: Poring Doll, + if((countitem(909) < 300)) goto L_ITEM_2a;//Items: Jellopy, + mes "[Pac]"; + mes "Wow!! Well done! Finally you have gathered all items needed! We will make the Poring Hat for you right away. Please Wait a Moment."; + next; + delitem 741,1;//Items: Poring Doll, + delitem 909,300;//Items: Jellopy, + mes "[Pac]"; + mes "Tah Dah! ^FF0000Poring Hat^000000...! Please Take it!"; + getitem 5035,1;//Items: Poring Hat, + next; + mes "[Pac]"; + mes "I liked that, I look forward to making more. Thank you."; + close; +L_ITEM_1a: + mes "[Pac]"; + mes "Oh, dear. You need 1 Poring Doll..."; + close; +L_ITEM_2a: + mes "[Pac]"; + mes "Oh, dear. You need 300 Jellopys..."; + close; +L1_29: + mes "[Pac]"; + mes "Let me check the items you have brought here."; + next; + if((countitem(999) < 25)) goto L_ITEM_1d;//Items: Steel, + if((countitem(979) < 1)) goto L_ITEM_2d;//Items: Darkgreen Dyestuff, + if((countitem(976) < 1)) goto L_ITEM_3d;//Items: Lemon Dyestuffs, + if((countitem(1059) < 150)) goto L_ITEM_4d;//Items: Fabric, + if((countitem(969) < 2)) goto L_ITEM_5d;//Items: Gold, + mes "[Pac]"; + mes "Wow!! Well done! Finally you have gathered all items needed! We will make the Sphinx Hat for you right away. Please Wait a Moment."; + next; + delitem 999,1;//Items: Steel, + delitem 979,1;//Items: Darkgreen Dyestuff, + delitem 976,1;//Items: Lemon Dyestuffs, + delitem 1059,150;//Items: Fabric, + delitem 969,2; //Items: Gold, + mes "[Pac]"; + mes "Tah Dah! ^FF0000Sphinx Hat^000000...! Please Take it!"; + getitem 5053,1;//Items: Sphinx Hat, + next; + mes "[Pac]"; + mes "I liked that, I look forward to making more. Thank you."; + close; +L_ITEM_1d: + mes "[Pac]"; + mes "Oh, dear. You need 25 Steels..."; + close; +L_ITEM_2d: + mes "[Pac]"; + mes "Oh, dear. You need 1 DarkGreen Dyestuff..."; + close; +L_ITEM_3d: + mes "[Pac]"; + mes "Oh, dear. You need 1 Lemon Dyestuff..."; + close; +L_ITEM_4d: + mes "[Pac]"; + mes "Oh, dear. You need 150 Fabric..."; + close; +L_ITEM_5d: + mes "[Pac]"; + mes "Oh, dear. You need 2 Gold Bar's..."; + close; +L2: + mes "[Pac]"; + mes "Which hat materials do you wish to know?"; + next; + menu "Poring Hat",L2_26,"Sphinx Hat",L2_29; +L2_26: + mes "[Pac]"; + mes "You need 1 Poring Doll and 300 Jellopys for Poring Hat."; + close; +L2_29: + mes "[Pac]"; + mes "You need 25 Steels, 1 DarkGreen Dyestuff, 1 Lemon Dyestuff, 150 Fabric and 2 Gold Bar's for Sphinx Hat."; + close; +L3: + mes "[Pac]"; + mes "Stop by some other time with the right materials, so I can make the hats for you."; + close; +} + + +//these scripts make our brothers to appear and disappear in order +- script EDZac -1,{ +OnInit: +OnMinute15: + disablenpc "Zac"; + end; +OnMinute01: + enablenpc "Zac"; + end; +} + +- script EDJac -1,{ +OnInit: +OnMinute30: + disablenpc "Jac"; + end; +OnMinute16: + enablenpc "Jac"; + end; +} + +- script EDPac -1,{ +OnInit: +OnMinute45: + disablenpc "Pac"; + end; +OnMinute31: + enablenpc "Pac"; + end; +} + +- script EDBlac -1,{ +OnInit: +OnMinute00: + disablenpc "Blac"; + end; +OnMinute46: + enablenpc "Blac"; + end; +} diff --git a/src/common/strlib.c b/src/common/strlib.c index 61439d7de..b113d96f5 100644 --- a/src/common/strlib.c +++ b/src/common/strlib.c @@ -1,79 +1,79 @@ -#include -#include -#include - -#include "strlib.h" -#include "utils.h" - -//----------------------------------------------- -// string lib. -unsigned char* jstrescape (unsigned char* pt) { - //copy from here - unsigned char * ptr; - int i =0, j=0; - - //copy string to temporary - CREATE(ptr, char, J_MAX_MALLOC_SIZE); - strcpy (ptr,pt); - - while (ptr[i] != '\0') { - switch (ptr[i]) { - case '\'': - pt[j++] = '\\'; - pt[j++] = ptr[i++]; - break; - case '\\': - pt[j++] = '\\'; - pt[j++] = ptr[i++]; - break; - default: - pt[j++] = ptr[i++]; - } - } - pt[j++] = '\0'; - free (ptr); - return (unsigned char*) &pt[0]; -} - -unsigned char* jstrescapecpy (unsigned char* pt,unsigned char* spt) { - //copy from here - int i =0, j=0; - - while (spt[i] != '\0') { - switch (spt[i]) { - case '\'': - pt[j++] = '\\'; - pt[j++] = spt[i++]; - break; - case '\\': - pt[j++] = '\\'; - pt[j++] = spt[i++]; - break; - default: - pt[j++] = spt[i++]; - } - } - pt[j++] = '\0'; - return (unsigned char*) &pt[0]; -} -int jmemescapecpy (unsigned char* pt,unsigned char* spt, int size) { - //copy from here - int i =0, j=0; - - while (i < size) { - switch (spt[i]) { - case '\'': - pt[j++] = '\\'; - pt[j++] = spt[i++]; - break; - case '\\': - pt[j++] = '\\'; - pt[j++] = spt[i++]; - break; - default: - pt[j++] = spt[i++]; - } - } - // copy size is 0 ~ (j-1) - return j; -} +#include +#include +#include + +#include "strlib.h" +#include "utils.h" + +//----------------------------------------------- +// string lib. +unsigned char* jstrescape (unsigned char* pt) { + //copy from here + unsigned char * ptr; + int i =0, j=0; + + //copy string to temporary + CREATE(ptr, char, J_MAX_MALLOC_SIZE); + strcpy (ptr,pt); + + while (ptr[i] != '\0') { + switch (ptr[i]) { + case '\'': + pt[j++] = '\\'; + pt[j++] = ptr[i++]; + break; + case '\\': + pt[j++] = '\\'; + pt[j++] = ptr[i++]; + break; + default: + pt[j++] = ptr[i++]; + } + } + pt[j++] = '\0'; + free (ptr); + return (unsigned char*) &pt[0]; +} + +unsigned char* jstrescapecpy (unsigned char* pt,unsigned char* spt) { + //copy from here + int i =0, j=0; + + while (spt[i] != '\0') { + switch (spt[i]) { + case '\'': + pt[j++] = '\\'; + pt[j++] = spt[i++]; + break; + case '\\': + pt[j++] = '\\'; + pt[j++] = spt[i++]; + break; + default: + pt[j++] = spt[i++]; + } + } + pt[j++] = '\0'; + return (unsigned char*) &pt[0]; +} +int jmemescapecpy (unsigned char* pt,unsigned char* spt, int size) { + //copy from here + int i =0, j=0; + + while (i < size) { + switch (spt[i]) { + case '\'': + pt[j++] = '\\'; + pt[j++] = spt[i++]; + break; + case '\\': + pt[j++] = '\\'; + pt[j++] = spt[i++]; + break; + default: + pt[j++] = spt[i++]; + } + } + // copy size is 0 ~ (j-1) + return j; +} diff --git a/src/common/strlib.h b/src/common/strlib.h index 3321996e1..6b6169083 100644 --- a/src/common/strlib.h +++ b/src/common/strlib.h @@ -1,10 +1,10 @@ -#ifndef _J_STR_LIB_H_ -#define _J_STR_LIB_H_ -#define J_MAX_MALLOC_SIZE 65535 -// String function library. -// code by Jioh L. Jung (ziozzang@4wish.net) -// This code is under license "BSD" -unsigned char* jstrescape (unsigned char* pt); -unsigned char* jstrescapecpy (unsigned char* pt,unsigned char* spt); -int jmemescapecpy (unsigned char* pt,unsigned char* spt, int size); -#endif +#ifndef _J_STR_LIB_H_ +#define _J_STR_LIB_H_ +#define J_MAX_MALLOC_SIZE 65535 +// String function library. +// code by Jioh L. Jung (ziozzang@4wish.net) +// This code is under license "BSD" +unsigned char* jstrescape (unsigned char* pt); +unsigned char* jstrescapecpy (unsigned char* pt,unsigned char* spt); +int jmemescapecpy (unsigned char* pt,unsigned char* spt, int size); +#endif diff --git a/src/map/atcommand.c b/src/map/atcommand.c index e2ed33181..5baf355a7 100644 --- a/src/map/atcommand.c +++ b/src/map/atcommand.c @@ -7690,7 +7690,9 @@ atcommand_uptime( seconds -= (seconds/minute>0)?(seconds/minute)*minute:0; snprintf(output, sizeof(output), msg_table[245], days, hours, minutes, seconds); + clif_displaymessage(fd,output); + return 0; } -- cgit v1.2.3-70-g09d2