summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2020-09-17 13:52:24 +0000
committerJesusaves <cpntb1@ymail.com>2020-09-17 13:52:24 +0000
commitee1f4206d271f4dcac8fc3edc57cc83fee89ef7a (patch)
tree660a921d9c6a7ce550547d3deae8308e0d68d793
parent1a344fa74d5054b69fa33a15edaaf072adb85ba7 (diff)
parentc66bfb7ddd988675449e2ac1ec691397a5b66990 (diff)
downloadserverdata-ee1f4206d271f4dcac8fc3edc57cc83fee89ef7a.tar.gz
serverdata-ee1f4206d271f4dcac8fc3edc57cc83fee89ef7a.tar.bz2
serverdata-ee1f4206d271f4dcac8fc3edc57cc83fee89ef7a.tar.xz
serverdata-ee1f4206d271f4dcac8fc3edc57cc83fee89ef7a.zip
Merge branch 'jesusalva/cut002' into 'master'
Rowboat Rework See merge request evol/serverdata!261
-rw-r--r--maps/re/001-3-2.mcachebin347 -> 351 bytes
-rw-r--r--npc/001-1/koga.txt14
-rw-r--r--npc/001-1/rowboat.txt19
-rw-r--r--npc/001-1/rowboathelper.txt40
-rw-r--r--npc/001-1/sophialla.txt14
-rw-r--r--npc/001-3-2/_import.txt1
-rw-r--r--npc/001-3-2/smuggler.txt78
7 files changed, 147 insertions, 19 deletions
diff --git a/maps/re/001-3-2.mcache b/maps/re/001-3-2.mcache
index a3747e0f..4ac90083 100644
--- a/maps/re/001-3-2.mcache
+++ b/maps/re/001-3-2.mcache
Binary files differ
diff --git a/npc/001-1/koga.txt b/npc/001-1/koga.txt
index e0c7eece..57d0938d 100644
--- a/npc/001-1/koga.txt
+++ b/npc/001-1/koga.txt
@@ -9,7 +9,7 @@
.@q=getq(General_Narrator);
speech
l("Ah, whom did you bring here?"),
- l("Isnt that the one Nard found on a float in the sea, with the sign of the Legion on his chest?");
+ l("Isn't that the one Nard found on a raft in the sea, with the sign of the Legion on it?");
next;
mesc l("Travel to woodlands?");
if (askyesno() == ASK_YES)
@@ -18,6 +18,7 @@
l("I hope they know what they are doing. So, come on board. I am looking forward to go back to Woodland, haven't been there for a while.");
next;
closeclientdialog;
+ setpcblock(PCBLOCK_MOVE, false);
setmount 0;
if (.@q == 1) {
warp "000-0-1", 26, 28;
@@ -26,12 +27,19 @@
warp "008-1-1", 33, 63;
dispbottom l("After a tiring, yet fast, travel by Koga, you arrive at @@.", l("Woodlands"));
}
+ else
+ {
+ // Return you to beach
+ setpcblock(PCBLOCK_MOVE, false);
+ setmount 0;
+ slide 200, 62;
+ }
close;
OnInit:
.bodytype = BODYTYPE_3;
- .distance = 4;
- .alwaysVisible = true;
+ .distance = 6;
+ //.alwaysVisible = true;
end;
}
diff --git a/npc/001-1/rowboat.txt b/npc/001-1/rowboat.txt
index 6400cc7d..a067b711 100644
--- a/npc/001-1/rowboat.txt
+++ b/npc/001-1/rowboat.txt
@@ -3,10 +3,16 @@
// Micksha, Toams
// Description:
// The rowboat, picking up the player on small beach in order to bring it to Koga.
-// TODO:
-// Check if the player who wants to enter the boat is the same as the one who called for the boat.
001-1,192,25,0 script #Rowboat NPC_ROWBOAT_STAND_WE,{
+ if (.caller != getcharid(3)) {
+ mesn;
+ mesq l("Oh, hello. I am just observing the whales.");
+ next;
+ mesn;
+ mesq l("Nobody told me anything about you, unfortunately.");
+ close;
+ }
speech S_LAST_BLANK_LINE | S_LAST_NEXT,
l("Oh, hi."),
@@ -14,10 +20,13 @@
l("Perhaps, and only perhaps, if you bring me the latter, I can bring you to a ship that will perhaps, and only perhaps, be able to bring you to Woodland."),
l("Do you have this commendatory letter?");
closeclientdialog();
- if (askyesno() == 1) {
+ if (askyesno() == ASK_YES) {
if (getq(General_Brotherhood) >= 2)
{
- slide 204, 62;
+ slide 227, 62;
+ //slide 204, 62;
+ .caller=0;
+ .clocks=gettimetick(2);
movenpc("#Rowboat", 192, 25);
setmount 1;
}
@@ -42,6 +51,8 @@ OnInit:
.bodytype = BODYTYPE_3;
.distance = 3;
.speed = 175;
+ .caller = 0;
+ .clocks = 0;
initpath "move", 202, 27,
"move", 213, 58,
diff --git a/npc/001-1/rowboathelper.txt b/npc/001-1/rowboathelper.txt
index a2311efb..efb93e8b 100644
--- a/npc/001-1/rowboathelper.txt
+++ b/npc/001-1/rowboathelper.txt
@@ -3,21 +3,24 @@
// Toams
// Description:
// helper scripts for rowboat usage
-// TODO:
-// make the script dialog different if there is no rowboat present at the cave
+// Notes:
+// Curious Hole bypass the cutscenes
// calling the Rowboat
001-1,200,60,0 script Curious Hole NPC_NO_SPRITE,{
- .@monadad = getq(ArtisQuests_MonaDad);
+ .@q = getq(General_Narrator);
- narrator(S_LAST_BLANK_LINE | S_LAST_NEXT,
- l("You see a curious hole behind some rocks"),
- l("'Hey anyone there?'"),
- l("..."),
- l("Altough you can't get rid of the feeling someone is listening on the other side, you don't get any replies"));
- if (.@monadad < 3)
+ mesc l("You see a curious hole behind some rocks.");
+ next;
+ mesn strcharinfo(0);
+ mesq l("Hey, anyone there?");
+ next;
+ mesc l("...");
+ next;
+ if (.@q < 2)
{
+ mesc l("Altough you can't get rid of the feeling someone is listening on the other side, you don't get any replies.");
close;
}
else
@@ -31,9 +34,26 @@
mesc l("Sagratha is great.");
next;
+ if (getvariableofnpc(.caller, "#Rowboat")) {
+ // Can you use it, or is it in grace time?
+ if (getvariableofnpc(.clocks, "#Rowboat") > gettimetick(2)) {
+ mesn;
+ mesq l("Please be patient. Someone else is using the rowboat right now.");
+ close;
+ }
+ // Rowboat already there, so change owner
+ mesn;
+ mesq l("Hello, a rowboat is already on the beach. You can use it.");
+ set(getvariableofnpc(.caller, "#Rowboat"), getcharid(3));
+ set(getvariableofnpc(.clocks, "#Rowboat"), gettimetick(2)+15);
+ close;
+ }
+ // Rowboat is at hideout, send it to you
speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
l("Hello, a rowboat is on his way to the beach. Please wait for a while for it to arrive.");
+ set(getvariableofnpc(.caller, "#Rowboat"), getcharid(3));
+ set(getvariableofnpc(.clocks, "#Rowboat"), gettimetick(2)+30);
doevent("#Rowboat::OnMoveToBeach");
close;
}
@@ -45,7 +65,7 @@ OnInit:
.distance = 1;
}
-
+// UNUSED
//unmounting the rowboat at eastern beach
001-1,202,62,0 script unmountrowboateast NPC_HIDDEN,1,1,{
diff --git a/npc/001-1/sophialla.txt b/npc/001-1/sophialla.txt
index 2e0a5c58..c26c3cbe 100644
--- a/npc/001-1/sophialla.txt
+++ b/npc/001-1/sophialla.txt
@@ -12,6 +12,7 @@
speech
l("Hello."),
l("Can't you see I am reading? Please go, please.");
+ // Please go, please? What?
close;
}
speech
@@ -26,7 +27,6 @@
mes "";
if (@menu == 2)
{
- // TODO: Tell to look for Henry TODO: Change curious eye conditional
speech
l("If you visit the sewers again... You'll find secret passages..."),
l("Look for the hideout, but tell no one about this. Then, say the password again.");
@@ -41,7 +41,17 @@
mesq l("I'm afraid you'll need to figure that out on your own.");
next;
mesn;
- mesq l("This password is very secret. I don't think you would learn it even if you rescued someone missing for weeks."); // FIXME: Provide a decent hint.
+ mesq l("This password is very secret. I don't think you would learn it even if you rescued someone missing for weeks.");
+ // Extra hint (TODO: Logic is crappy)
+ if (@sophiahalla_needhelp) {
+ next;
+ mesn;
+ mesq l("Actually, there is an ex-legion member whose daughter used to play nearby... How was she called? Mona I think?");
+ next;
+ mesn;
+ mesq l("...Ah! Nevermind, I was talking to myself.");
+ }
+ @sophiahalla_needhelp=true;
next;
mesc l("%s sighs.", .name$);
}
diff --git a/npc/001-3-2/_import.txt b/npc/001-3-2/_import.txt
index d70ece30..e627928d 100644
--- a/npc/001-3-2/_import.txt
+++ b/npc/001-3-2/_import.txt
@@ -2,3 +2,4 @@
// This file is generated automatically. All manually added changes will be removed when running the Converter.
"npc/001-3-2/_warps.txt",
"npc/001-3-2/henry.txt",
+"npc/001-3-2/smuggler.txt",
diff --git a/npc/001-3-2/smuggler.txt b/npc/001-3-2/smuggler.txt
new file mode 100644
index 00000000..ccb0a31d
--- /dev/null
+++ b/npc/001-3-2/smuggler.txt
@@ -0,0 +1,78 @@
+// Evol scripts.
+// Author:
+// Micksha, Toams, Jesusalva
+// Description:
+// The rowboat, picking up the player on the fake pier and bringing them to
+// Argaes Westport.
+
+001-3-2,71,85,6 script Smuggler NPC_ROWBOAT_STAND_WE,{
+ function smugglerNotAuthorized;
+ function smugglerBoarding;
+ mesn;
+ mesq l("Hey dude, we actually have a pretty cool ship near Artis.");
+ next;
+ mesn;
+ mesq l("This lake may look natural, but it is not quite so. We're at sea level.");
+ next;
+ .@q=getq(ThiefQuests_Artis);
+ if (.@q < 3)
+ smugglerNotAuthorized();
+ mesn;
+ mesq l("Cool, right?");
+ next;
+ select
+ l("Yes."),
+ l("So? Will you bring me to Argaes?");
+ mes "";
+ if (@menu == 2)
+ smugglerBoarding();
+ close;
+
+function smugglerNotAuthorized {
+ mesn;
+ mesq l("We smuggle not only goods, but people too. If Henry gives me the word...");
+ next;
+ mesn;
+ mesq l("Hehehe... I've heard Hurnscald is wonderful at this time of the year!");
+ close;
+ return;
+}
+
+function smugglerBoarding {
+ mesn;
+ mesq l("Sure! Hold tight.");
+ next;
+ while (.lock)
+ {
+ mesn;
+ mesq l("Just let me finish this first...");
+ next;
+ }
+ setcam (76*32), (85*32);
+ closeclientdialog;
+ .lock=true;
+ setpcblock(PCBLOCK_MOVE, true);
+ npcwalkto(76, 85);
+ sleep2(1000);
+ setmount 1;
+ warp "001-1", 227, 62;
+ detachrid();
+ .dir = 2;
+ npcwalkto(71, 85);
+ sleep(1000);
+ .dir = 6;
+ .lock=false;
+ end;
+ return;
+}
+
+OnInit:
+ .bodytype = BODYTYPE_3;
+ .distance = 4;
+ .speed = 175;
+ .alwaysVisible = true;
+ .lock = false;
+ end;
+
+}
+