From 7987a556ec3030bf136fb16559960dba5dfd789f Mon Sep 17 00:00:00 2001 From: wushin Date: Wed, 7 Jan 2015 20:44:06 -0600 Subject: Add Function Changes --- world/map/npc/functions/debug.txt | 4 +-- world/map/npc/functions/ferry.txt | 31 +++++++++++-------- world/map/npc/functions/game_rules.txt | 25 ++------------- world/map/npc/functions/soul_menhir.txt | 11 ------- world/map/npc/functions/stat_reset.txt | 55 +++++++++++++++++++++++++++++++++ world/map/npc/functions/travelers.txt | 32 +++++-------------- 6 files changed, 85 insertions(+), 73 deletions(-) create mode 100644 world/map/npc/functions/stat_reset.txt (limited to 'world/map/npc') diff --git a/world/map/npc/functions/debug.txt b/world/map/npc/functions/debug.txt index af7fcee0..384805b1 100755 --- a/world/map/npc/functions/debug.txt +++ b/world/map/npc/functions/debug.txt @@ -916,7 +916,7 @@ L_Close: } -042-2.gat,30,26,0|script|Debug#0|154 +029-2.gat,30,26,0|script|Debug#0|154 { callfunc "Debug"; end; @@ -926,7 +926,7 @@ OnInit: end; } -001-1.gat,41,29,0|script|Debug#1|154 +001-1.gat,53,47,0|script|Debug#1|154 { callfunc "Debug"; end; diff --git a/world/map/npc/functions/ferry.txt b/world/map/npc/functions/ferry.txt index cc5bfa14..cca5d3a0 100644 --- a/world/map/npc/functions/ferry.txt +++ b/world/map/npc/functions/ferry.txt @@ -5,17 +5,17 @@ end; OnInit: - disablenpc "Hurnscald Koga"; + disablenpc "Hurnscald South Koga"; disablenpc "Candor Koga"; disablenpc "Nivalis Koga"; - disablenpc "Tulimshar North Koga"; - disablenpc "Tulimshar South Koga"; + disablenpc "Hurnscald North Koga"; + disablenpc "Tulimshar Koga"; set $@MainCurrentDock, 0; set $@CandorCurrentDock, 0; set $@DockTickCount, 0; set $@DockLeaveCount, 1; - setarray $@MainDocks$, "Hurnscald", "Nivalis", "Tulimshar South"; - setarray $@CandorDocks$, "Candor", "Tulimshar North"; + setarray $@MainDocks$, "Hurnscald North", "Nivalis", "Tulimshar"; + setarray $@CandorDocks$, "Candor", "Hurnscald South"; cmdothernpc "#"+$@MainDocks$[$@MainCurrentDock]+"Dock", "Arrive"; cmdothernpc "#"+$@CandorDocks$[$@CandorCurrentDock]+"Dock", "Arrive"; if (debug >= 2) end; @@ -49,7 +49,7 @@ L_NextDock: if($@MainCurrentDock == 1) goto L_k1city3; end; -OnTimer10000: +OnTimer8000: if ($@DockTickCount > $@DockLeaveCount) goto L_NextDock; //mapannounce "035-2.tmx", "Koga - Main:* Now docked in "+$@MainDocks$[$@MainCurrentDock]+", Departing soon", 0; @@ -91,6 +91,18 @@ L_k2city2: end; } +function|script|FerryHelp +{ + mes "\"You wait on the dock for the ship to come in. You'll be given a chance to board the boat when it comes into port.\""; + mes "\"It lingers in port to allow you some time to board in case you are running behind.\""; + mes "\"Once on the ship, it will sail to different ports and annouce where it is docking.\""; + mes "\"There are 2 Ferrys, both ferrys are free to ride.\""; + mes "\"The Main ferry travels from Argeas, Kaizei and Tonori. It docks in the major ports Hurnscald North, Nivalis and the Tulimshar Dock.\""; + mes "\"The Candor Ferry only travels betwen Candor and the Hurnscald South Dock.\""; + mes "\"Refreshments and supplies are offered aboard both ships during the voyage.\""; + mes "\"We also have some slot machines in case you get bored.\""; + return; +} function|script|FerryManifest { mes "Which Ferry do you want to check the schedule for?"; @@ -100,7 +112,6 @@ function|script|FerryManifest L_CandorFerry: mes "The ferry is currently at "+$@CandorDocks$[$@CandorCurrentDock]; - next; set @NextDock, ($@CandorCurrentDock + 1); if(@NextDock == getarraysize($@CandorDocks$)) set @NextDock, 0; @@ -109,7 +120,6 @@ L_CandorFerry: L_WorldFerry: mes "The ferry is currently at "+$@MainDocks$[$@MainCurrentDock]; - next; set @NextDock, ($@MainCurrentDock + 1); if(@NextDock == getarraysize($@MainDocks$)) set @NextDock, 0; @@ -143,14 +153,9 @@ function|script|BoardCandorFerry "No.", L_Return; L_Board: - if (BaseLevel < 40) goto L_TooYoung; warp "036-2.tmx",39,29; goto L_Return; -L_TooYoung: - mes "This area is too dangerous for your low level."; - goto L_Return; - L_Return: return; } diff --git a/world/map/npc/functions/game_rules.txt b/world/map/npc/functions/game_rules.txt index 9799b11d..cbd4b8fb 100644 --- a/world/map/npc/functions/game_rules.txt +++ b/world/map/npc/functions/game_rules.txt @@ -2,7 +2,9 @@ function|script|GameRules { - set @read, 0; + + mes "[Server Game Rules]"; + mes "Please Select Language."; menu "English", L_English, "Deutsch (German)", L_German, @@ -23,10 +25,8 @@ L_English: mes "4. No begging"; mes "5. Speak English on public chat"; mes "6. Treat others the same way you would like to be treated"; - next; mes "AFK botting will be determined by talking to players who are moving and/or attacking."; mes "Automated following will be determined by observation."; - next; goto L_End; L_German: @@ -38,9 +38,7 @@ L_German: mes "5. Englisch ist die einzig zulässige Sprache im öffentlichen Raum."; mes "6. Behandele andere so, wie du selbst behandelt werden willst."; mes "Jegliche Regelverstöße können bestraft werden, entweder durch ein Zurücksetzen der Charaktereigenschaften und -besitztümer auf den Ausgangszustand, oder durch einen temporären oder permanenten Ausschluss aus dem Spiel."; - next; mes "Automatisiertes Spielverhalten liegt vor, wenn ein sich bewegender/kämpfender Spieler nicht intelligent auf Gesprächsaufforderungen reagiert."; - next; goto L_End; L_Dutch: @@ -52,9 +50,7 @@ L_Dutch: mes "4. Verboden te bedelen"; mes "5. Spreek Engels op de publieke chat"; mes "6. Behandel andere zoals ook jij behandeld wilt worden"; - next; mes "Botten word bepaald door te praten tegen spelers die aan het bewegen en/of aanvallen zijn."; - next; goto L_End; L_Danish: @@ -66,9 +62,7 @@ L_Danish: mes "4. Det er forbudt at tigge (for eksempel: Maa jeg ikke nok faa dit svaerd, kom nu, vaer nu soed... og saa videre)"; mes "5. Det er forbudt at snakke andre sprog end Engelsk, i den aabne chat. (Dog er det lovligt ved at bruge foelgende kommandoen /whisper)"; mes "6. Husk at goere mod andre, som du vil have de skal goere imod dig (opfoer dig ordenligt!)"; - next; mes "Botting bliver fastlagt paa grundlag af, at man snakker til andre spillere, der gaar rundt og/eller der angriber og de ikke svare igen."; - next; goto L_End; L_French: @@ -80,9 +74,7 @@ L_French: mes "4. Ne demandez pas d'items ou d'argent (les echanges doivent se faire de preference sur forums.themanaworld.org)"; mes "5. Parlez anglais dans les salons de discussions publics (principalement en ville)"; mes "6. Traitez les autres de la meme maniere que vous voudriez etre traite(e)"; - next; mes "L'utilisation de \"bot\" sera determinee en parlant aux joueurs(ses) en train de bouger et/ou d'attaquer."; - next; goto L_End; L_Spanish: @@ -93,10 +85,8 @@ L_Spanish: mes "4. No mendigar."; mes "5. Escriba únicamente en Inglés en el chat público"; mes "6. Trate a los demás de la misma forma que le gustaría ser tratado"; - next; mes "El uso de programas automáticos para jugar sin estar frente al teclado se determinará hablando con los jugadores que estén moviéndose y/o atacando."; mes "El seguimiento automático será determinado por observación."; - next; goto L_End; L_Swedish: @@ -107,9 +97,7 @@ L_Swedish: mes "4. Tigg inte"; mes "5. Prata bara engelska i den offentliga chatten"; mes "6. Behandla andra som du vill bli behandlad"; - next; mes "Vid misstankar om bottande kontrolleras detta genom att prata med spelaren under dess kringvandrande eller attackerande."; - next; goto L_End; L_Portuguese: @@ -121,9 +109,7 @@ L_Portuguese: mes "4. Pedintes serao ignorados, ou banidos."; mes "5. Fale ingles em lugares publicos."; mes "6. Trate os outros da mesma maneira que quer ser tratado(a)."; - next; mes "O \"botting\" sera determinado, falando com os jogadores que se movem e/ou atacam."; - next; goto L_End; L_Polish: @@ -135,9 +121,7 @@ L_Polish: mes "4. Zabrania sie zebrania"; mes "5. Na publicznym kanale rozmawiamy po angielsku"; mes "6. Traktuj innych tak jak sam chcesz byc traktowany"; - next; mes "Uzywanie botow zostanie okreslone na podstawie rozmow z innymi graczami podczas aktywnosci gracza."; - next; goto L_End; L_Italian: @@ -149,13 +133,10 @@ L_Italian: mes "4. Vietato implorare"; mes "5. Parlare solo inglese nella chat pubblica"; mes "6. Tratta gli altri giocatori come vuoi che gli altri trattino te."; - next; mes "I bot saranno determinati in base alle risposte e ai movimenti dei giocatori esaminati."; - next; goto L_End; L_End: - set @read, 1; if (TUT_var == 0) set TUT_var, gettimetick(2); goto L_Return; diff --git a/world/map/npc/functions/soul_menhir.txt b/world/map/npc/functions/soul_menhir.txt index e047e928..6c2c1c17 100644 --- a/world/map/npc/functions/soul_menhir.txt +++ b/world/map/npc/functions/soul_menhir.txt @@ -2,7 +2,6 @@ function|script|SoulMenhir { mes "[Soul Menhir]"; mes "(A mystical aura surrounds this stone. You feel mysteriously attracted to it. Something tells you to touch it. What do you do?)"; - next; menu "Touch it.", L_Bind, @@ -16,7 +15,6 @@ L_Towel: set TowelLastUsed, gettimetick(2); mes "[Soul Menhir]"; mes "(You touch the mysterious stone. Somehow it feels hard and soft at the same time.)"; - next; getitem "HitchhikersTowel", 1; goto L_Return; @@ -26,23 +24,14 @@ L_Bind: mes "[Soul Menhir]"; mes "(You touch the mysterious stone. Somehow it feels warm and cold at the same time.)"; - next; - - mes "[Soul Menhir]"; mes "(Suddenly a strange sensation flows through you. It feels like your soul leaves your body and becomes one with the stone.)"; - next; - - mes "[Soul Menhir]"; mes "(As suddenly as the feeling started it stops. The strange attraction is away from one moment to the next and the menhir feels like just an ordinary stone.)"; - next; - set Menhir_Activated, 1; goto L_Save; L_Shortversion: mes "[Soul Menhir]"; mes "(A strange sensation flows through you. It feels like your soul leaves your body and becomes one with the stone. As suddenly as the feeling started it stops.)"; - next; goto L_Save; L_Save: diff --git a/world/map/npc/functions/stat_reset.txt b/world/map/npc/functions/stat_reset.txt new file mode 100644 index 00000000..d8f484ff --- /dev/null +++ b/world/map/npc/functions/stat_reset.txt @@ -0,0 +1,55 @@ +// + +function|script|StatReset +{ +// if (ResetA_charstate == 1) goto L_Multiple; + +// set @cost, 10000000 / ($ResetA_uses + 1); + + set @cost, BaseLevel * 100; + + mes "[" + @NpcName$ + "]"; + mes "\"I have come across a spell that will"; + mes "reset your status points."; + mes "Normally this spell is expensive, but"; + mes "due to an unusual constellation of the"; + mes "stars I can cast it very cheaply!"; + mes "For you it will cost only "+@cost+" gp.\""; + next; + menu + "Reset my stats",L_Next, + "Forget about it",L_Pass; + +L_Next: + if (Zeny<@cost) goto L_NoMoney; + goto L_Reset; + +// set $ResetA_uses, $ResetA_uses + 1; +// set ResetA_charstate, 1; + +L_Reset: + set Zeny, Zeny-@cost; + resetstatus; + + mes "[" + @NpcName$ + "]"; + mes "\"There you are."; + mes ""; + mes "Good as new!\""; + goto L_Return; + +L_Pass: + mes "[" + @NpcName$ + "]"; + mes "\"Very well then, see you.\""; + goto L_Return; + +L_NoMoney: + mes "[" + @NpcName$ + "]"; + mes "\"Oh dear, the price cannot be bargained."; + mes ""; + mes "Perhaps you can borrow from a friend?\""; + goto L_Return; + +L_Return: + set @cost, 0; + return; +} diff --git a/world/map/npc/functions/travelers.txt b/world/map/npc/functions/travelers.txt index 6827aece..cfbbb9a3 100644 --- a/world/map/npc/functions/travelers.txt +++ b/world/map/npc/functions/travelers.txt @@ -13,7 +13,7 @@ OnInit: // TravelFound set $@tut_bit, (1 << 2); - set $@druid_tree_bit, (1 << 3); + //set $@druid_tree_bit, (1 << 3); set $@graveyard_bit, (1 << 4); set $@magic_house_bit, (1 << 5); set $@terranite_cave_bit, (1 << 6); @@ -21,7 +21,7 @@ OnInit: set $@blue_sage_bit, (1 << 8); set $@hurnscald_bit, (1 << 9); set $@nivalis_bit, (1 << 10); - set $@tul_mine_bit, (1 << 11); + //set $@tul_mine_bit, (1 << 11); set $@pachua_bit, (1 << 12); set $@nivalis_snow_hills_bit, (1 << 13); set $@barbarians_bit, (1 << 14); @@ -31,8 +31,8 @@ OnInit: set $@tulimshar_cost, 100; set $@hurnscald_cost, 100; set $@nivalis_cost, 100; - set $@druid_tree_cost, 150; - set $@tul_mine_cost, 150; + //set $@druid_tree_cost, 150; + //set $@tul_mine_cost, 150; set $@pachua_cost, 200; set $@graveyard_cost, 200; set $@magic_house_cost, 150; @@ -101,8 +101,6 @@ L_Start: "Tonori - Tulimshar (" + (@Cost * $@tulimshar_cost) + " GP)", L_TravelTulimshar, "Argeas - Hurnscald (" + (@Cost * $@hurnscald_cost) + " GP)", L_TravelHurnscald, "Kaizei - Nivalis (" + (@Cost * $@nivalis_cost) + " GP)", L_TravelNivalis, - "Tonori - Druid Tree (" + (@Cost * $@druid_tree_cost) + " GP)", L_TravelDruidTree, - "Tonori - Tulimshar Mines (" + (@Cost * $@tul_mine_cost) + " GP)", L_TravelTulMine, "Tonori - Pachua's Village (" + (@Cost * $@pachua_cost) + " GP)", L_TravelPachua, "Argeas - Candor (" + (@Cost * $@candor_cost) + " GP)", L_TravelCandor, "Argeas - Magic House (" + (@Cost * $@magic_house_cost) + " GP)", L_TravelMagicHouse, @@ -132,14 +130,6 @@ L_TravelPlayer: warp @NextLocationMap$,@NextLocationX,@NextLocationY; goto L_Clearvars; -L_TravelDruidTree: - set @NextLocationBit, $@druid_tree_bit; - set @NextLocationCost, (@Cost * $@druid_tree_cost); - set @NextLocationMap$, "005-1.gat"; - set @NextLocationX, 76; - set @NextLocationY, 36; - goto L_TravelChecks; - L_TravelGraveyard: set @NextLocationBit, $@graveyard_bit; set @NextLocationCost, (@Cost * $@graveyard_cost); @@ -167,9 +157,9 @@ L_TravelTerranite: L_TravelTulimshar: set @NextLocationBit, $@tulimshar_bit; set @NextLocationCost, (@Cost * $@tulimshar_cost); - set @NextLocationMap$, "001-1.gat"; - set @NextLocationX, 44; - set @NextLocationY, 70; + set @NextLocationMap$, "002-1.gat"; + set @NextLocationX, 60; + set @NextLocationY, 42; goto L_TravelChecks; L_TravelBlueSage: @@ -196,14 +186,6 @@ L_TravelNivalis: set @NextLocationY, 122; goto L_TravelChecks; -L_TravelTulMine: - set @NextLocationBit, $@tul_mine_bit; - set @NextLocationCost, (@Cost * $@tul_mine_cost); - set @NextLocationMap$, "002-2.gat"; - set @NextLocationX, 27; - set @NextLocationY, 28; - goto L_TravelChecks; - L_TravelPachua: set @NextLocationBit, $@pachua_bit; set @NextLocationCost, (@Cost * $@pachua_cost); -- cgit v1.2.3-60-g2f50