diff options
author | Jesusaves <cpntb1@ymail.com> | 2024-01-09 21:46:34 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2024-01-09 21:46:34 -0300 |
commit | 63c8045dcaafacb51d6a108411b5ed0b6d108694 (patch) | |
tree | a824fbffd467bc696ad8ad82104cce7c76eb6e19 | |
parent | 4e312d51e87189350bc8968412bc7ae42f7b3933 (diff) | |
download | serverdata-63c8045dcaafacb51d6a108411b5ed0b6d108694.tar.gz serverdata-63c8045dcaafacb51d6a108411b5ed0b6d108694.tar.bz2 serverdata-63c8045dcaafacb51d6a108411b5ed0b6d108694.tar.xz serverdata-63c8045dcaafacb51d6a108411b5ed0b6d108694.zip |
Logical placeholders for rowboat (untested)
-rw-r--r-- | npc/011-3/rowboat.txt | 24 | ||||
-rw-r--r-- | npc/011-4/boss.txt | 6 | ||||
-rw-r--r-- | npc/011-4/chest.txt | 27 | ||||
-rw-r--r-- | npc/011-4/docks.txt | 23 | ||||
-rw-r--r-- | npc/011-4/mapflags.txt | 1 | ||||
-rw-r--r-- | npc/014-2/dock.txt | 9 |
6 files changed, 78 insertions, 12 deletions
diff --git a/npc/011-3/rowboat.txt b/npc/011-3/rowboat.txt index 8cbbfaddb..7d9d3d8d6 100644 --- a/npc/011-3/rowboat.txt +++ b/npc/011-3/rowboat.txt @@ -1,9 +1,31 @@ +// TMW2 Scripts // A barbarian in 56,87 offers to rent a rowboat. Maximum rent time is one day. // Allows to use the dock 011-3,56,87,0 script Barbarian#Sv1 NPC_SAVANNAH_BLUE,{ mesn; - mesq l("I cannot rent rowboats yet."); + if (@rowboat_rented) { + mesq l("My rowboat is on the pier west of the soccer field. I've also marked with a white line where you shouldn't go further to prevent the rowboat from being taken by the current."); + close; + } + mesq l("Hey pal, I can rent you my rowboat for a small amount of money and some mushrooms. If you sail at the small pier near the soccer field, you can reach both the Graveyard Island as Elli's Tower."); + next; + mesn; + mesq l("However I'll mark in a white line where you shouldn't row to, or the current will catch you. Also, I'll rent you only until you leave the vicinity; this is not a boat rent shop if you haven't noticed yet."); + next; + .@price = 600*$GAME_STORYLINE; + .@shrom = 1+REBIRTH; + if (BaseLevel >= 100) + .@shrom += 1; + mesc l("Rent the board for %s GP and %d %s?", fnum(.@price), .@shrom, getitemlink(SmallMushroom)), 1; + mesc l("Logging out, doing other quests, taking too long to use etc. will cause the rent to expire."); + if (Zeny < .@price || countitem(SmallMushroom) < .@shrom) close; + if (askyesno() == ASK_NO) close; + Zeny -= .@price; + delitem SmallMushroom, .@shrom; + @rowboat_rented = true; + mesn; + mesq l("Deal, I'll leave my rowboat at the pier, don't take long before using it, though."); close; OnInit: diff --git a/npc/011-4/boss.txt b/npc/011-4/boss.txt index 72c70183c..972270bcb 100644 --- a/npc/011-4/boss.txt +++ b/npc/011-4/boss.txt @@ -2,13 +2,13 @@ // Author: // Jesusalva // Description: -// Tortuga Boss (exceptional) +// Tortuga "Boss" (exceptional) 011-4,0,0,0 script #BossCtrl_011-4 NPC_HIDDEN,{ end; -// Respawn every half hour -OnTimer1800000: +// Respawn every 15 minutes +OnTimer900000: stopnpctimer; OnInit: areamonster "011-4", 20, 20, getmapinfo(MAPINFO_SIZE_X, "011-4"), getmapinfo(MAPINFO_SIZE_Y, "011-4"), strmobinfo(1, Tortuga), Tortuga, 1, "#BossCtrl_011-4::OnBossDeath"; diff --git a/npc/011-4/chest.txt b/npc/011-4/chest.txt index 4547eeb40..0d273f946 100644 --- a/npc/011-4/chest.txt +++ b/npc/011-4/chest.txt @@ -1,9 +1,32 @@ +// TMW2 Scripts // SQuest_ElliChest, which gives equipments but cannot be open before MK is down. -// 265 68 +// TODO 011-4,265,68,0 script Elli's Chest NPC_CHEST_BIG,{ mesn; - mesc l("This chest belongs to Elli and is not yet implemented."); + if ($GAME_STORYLINE < 5) { + mesc l("This chest belongs to Elli and is sealed by a great power. At this point in time, it is impossible to open it."); + close; + } + // Bitwise storing which seasons were open + .@season = 2 ** season(); + mesc l("This is Elli's chest."); + if (getq(SQuest_ElliChest) & .@season) { + mesc l("You already opened it recently. Please wait a few months before Elli replenishes it."); + close; + } + mesc l("Elli prepared a prize for you... If you manage to open it."); + switch (season()) + { + case SUMMER: .@item=any(CherryCocktail, CactusCocktail, AppleCocktail); .@prize=0; break; + case WINTER: .@item=any(Snowflake, CaramelCandy, GingerBreadMan, ChocolateBiscuit); .@prize=0; break; + case SPRING: .@item=any(Rose, Tulip, Blueberries); .@prize=0; break; + case AUTUMN: .@item=any(Lawncandy, Saulcandy, Poocandy, Mashmallow); .@prize=0; break; + } + mesc l("Maybe %s %s will do it.", fnum(1000), .@item); + next; + mesn l("Elli"); + mesq l("Not today, I still haven't decided the prize!"); close; OnInit: diff --git a/npc/011-4/docks.txt b/npc/011-4/docks.txt index 4e3ff1be0..31ebf7b32 100644 --- a/npc/011-4/docks.txt +++ b/npc/011-4/docks.txt @@ -1,3 +1,4 @@ +// TMW2 Scripts // There are three docks here, one which returns you to 014-2 and two which dismount // Those which dismount have two NPCs nearby to confirm the operation. If it did not // succeed (back'n'forth), you sink. Remember you MUST use a slide @@ -7,7 +8,9 @@ 011-4,124,21,0 script #Dock0114A NPC_HIDDEN,0,1,{ end; OnTouch: - dispbottom l("Sorry, you cannot leave."); + warp "014-2", 25, any(96, 97); + sleep2(10); + setmount 0; end; } @@ -15,14 +18,19 @@ OnTouch: 011-4,85,66,0 script #Dock0114B1 NPC_HIDDEN,0,1,{ end; OnTouch: - dispbottom l("Sorry, visiting the Graveyard isn't permitted."); + dispbottom l("You are now at Graveyard Island."); + slide 82, 65; + sleep2(10); + setmount 0; end; } 011-4,83,66,0 script #Dock0114B2 NPC_HIDDEN,0,1,{ end; OnTouch: - dispbottom l("Sorry, leaving the Graveyard isn't permitted."); + slide 85, 65; + sleep2(10); + setmount 3; end; } @@ -30,14 +38,19 @@ OnTouch: 011-4,236,71,0 script #Dock0114C1 NPC_HIDDEN,0,1,{ end; OnTouch: - dispbottom l("Sorry, visiting Elli's Tower isn't permitted."); + dispbottom l("You are now at Elli's Tower."); + slide 239, 70; + sleep2(10); + setmount 0; end; } 011-4,238,71,0 script #Dock0114C2 NPC_HIDDEN,0,1,{ end; OnTouch: - dispbottom l("Sorry, leaving Elli's Tower isn't permitted."); + slide 236, 70; + sleep2(10); + setmount 3; end; } diff --git a/npc/011-4/mapflags.txt b/npc/011-4/mapflags.txt index 5fd5f0b7d..a36d57235 100644 --- a/npc/011-4/mapflags.txt +++ b/npc/011-4/mapflags.txt @@ -1,3 +1,4 @@ +// TMW2 Scripts // Cannot use mounts here, except for rowboat; and no teleport, both items as mapflags // nosave as well 011-4 mapflag zone Jail diff --git a/npc/014-2/dock.txt b/npc/014-2/dock.txt index abda17afb..c979c639d 100644 --- a/npc/014-2/dock.txt +++ b/npc/014-2/dock.txt @@ -1,9 +1,16 @@ +// TMW2 Scripts // If you have a rowboat, you can sail in 014-2 22 96-97 to 011-4 123 21-22 014-2,22,96,0 script #Dock0142 NPC_HIDDEN,0,1,{ end; OnTouch: - dispbottom l("Sorry, you cannot sail yet."); + if (@rowboat_rented) { + dispbottom l("You need a rowboat to set sail here."); + close; + } + warp "011-4", 123, any(21, 22); + sleep2(10); + setmount 3; end; } |