diff options
Diffstat (limited to 'world/map/npc/functions/ferry.txt')
-rw-r--r-- | world/map/npc/functions/ferry.txt | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/world/map/npc/functions/ferry.txt b/world/map/npc/functions/ferry.txt new file mode 100644 index 00000000..95a176ec --- /dev/null +++ b/world/map/npc/functions/ferry.txt @@ -0,0 +1,73 @@ +// The ferry system + +function script Ferry { + if (BaseLevel < 20) goto L_LowerCost; + set @cost_tulimshar, 500; + set @cost_hurnscald, 500; + +L_Start: + set @cost_candor, 1500; + mes "Where would you like to go?"; + next; + if (BaseLevel < 40) goto L_PlainMenu; + goto L_MenuWithCandor; + + +L_PlainMenu: + menu + "Tulimshar (" + @cost_tulimshar + "GP)", L_Tulimshar, + "Hurnscald (" + @cost_hurnscald + "GP)", L_Hurnscald, + "Nevermind", -; + close; + +L_MenuWithCandor: + menu + "Tulimshar (" + @cost_tulimshar + "GP)", L_Tulimshar, + "Hurnscald (" + @cost_hurnscald + "GP)", L_Hurnscald, + "Candor (" + @cost_candor + "GP)", L_Candor, + "Nevermind", -; + close; + +L_Tulimshar: + if (@loc == DOCK_tulimshar) + goto L_AlreadyThere; + if (zeny < @cost_tulimshar) + goto L_NotEnoughGP; + + set zeny, zeny - @cost_tulimshar; + warp "022-1.gat", 76, 72; + close; + +L_Hurnscald: + if (@loc == DOCK_hurnscald) + goto L_AlreadyThere; + if (zeny < @cost_hurnscald) + goto L_NotEnoughGP; + + set zeny, zeny - @cost_hurnscald; + warp "008-1.gat", 137, 64; + close; + +L_Candor: + if (@loc == DOCK_candor) + goto L_AlreadyThere; + if (zeny < @cost_candor) + goto L_NotEnoughGP; + + set zeny, zeny - @cost_candor; + warp "029-1.gat", 25, 37; + close; + +L_AlreadyThere: + mes "You're already here!"; + close; + +L_NotEnoughGP: + mes "You don't have enough money to go there!"; + close; + +L_LowerCost: + set @cost_tulimshar, 250; + set @cost_hurnscald, 250; + goto L_Start; +} |