summaryrefslogtreecommitdiff
path: root/npc/001-1
diff options
context:
space:
mode:
Diffstat (limited to 'npc/001-1')
-rw-r--r--npc/001-1/calypsan.txt2
-rw-r--r--npc/001-1/doors.txt4
-rw-r--r--npc/001-1/enora.txt16
-rw-r--r--npc/001-1/fexil.txt2
-rw-r--r--npc/001-1/flags.txt18
-rw-r--r--npc/001-1/katja.txt2
-rw-r--r--npc/001-1/koga.txt14
-rw-r--r--npc/001-1/qonan.txt5
-rw-r--r--npc/001-1/rowboat.txt13
-rw-r--r--npc/001-1/rowboathelper.txt15
-rw-r--r--npc/001-1/salem.txt2
-rw-r--r--npc/001-1/sophialla.txt44
-rw-r--r--npc/001-1/trees.txt32
13 files changed, 119 insertions, 50 deletions
diff --git a/npc/001-1/calypsan.txt b/npc/001-1/calypsan.txt
index c8b5b8bb..36668f1b 100644
--- a/npc/001-1/calypsan.txt
+++ b/npc/001-1/calypsan.txt
@@ -46,7 +46,7 @@
shop "Cashmere#Dye001-1";
break;
default:
- debugmes "Calypsan script error, tissue_type is incorrect";
+ consolemes(CONSOLEMES_ERROR, "Calypsan script error, tissue_type is incorrect");
break;
}
close;
diff --git a/npc/001-1/doors.txt b/npc/001-1/doors.txt
index 67936b4b..7cf4e132 100644
--- a/npc/001-1/doors.txt
+++ b/npc/001-1/doors.txt
@@ -32,11 +32,15 @@ OnUnTouch:
OnTouch:
.@enora = getq(ArtisQuests_Enora);
+ .@legion = getq(Artis_Legion_Progress);
+ .@brotherhood = getq(General_Brotherhood);
if (.@enora < 11)
{
setfakecells 57, 41, 1;
end;
}
+ if (.@legion == 6 && !.@brotherhood)
+ addtimer 30, "Sophialla#001-1::OnLegionComplete";
setfakecells 57, 41, 0;
doorTouch;
diff --git a/npc/001-1/enora.txt b/npc/001-1/enora.txt
index 45e6e551..140f51b0 100644
--- a/npc/001-1/enora.txt
+++ b/npc/001-1/enora.txt
@@ -123,7 +123,7 @@
.@zeny_reward = getarg(1);
getexp .@exp_reward, 0;
- Zeny = Zeny + .@zeny_reward;
+ Zeny += .@zeny_reward;
narrator S_LAST_NEXT,
l("You received @@ EXP and @@ E.", .@exp_reward, .@zeny_reward);
@@ -300,6 +300,8 @@
l("Only one more Fluffy to kill and it's done!");
return;
+ } else if (getq(ArtisQuests_Enora) == 10) {
+ inventoryplace TreasureKey, 1;
}
speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
@@ -314,6 +316,10 @@
{
setq ArtisQuests_Enora, 11;
enora_reward(140, 500);
+ getitem TreasureKey, 1;
+ mesn;
+ mesq l("Also, here is a %s. If you find a Treasure Chest somewhere, you can open it with this!", getitemlink(TreasureKey));
+ next;
}
return;
@@ -440,10 +446,7 @@ OnInit:
end;
}
-001-1,0,0,0 script Mobs#001-1 NPC_HIDDEN,{
- end;
-
-OnNPCKillEvent:
+function script EnoraKills {
if (getq(ArtisQuests_Enora) == 10
&& killedrid == Fluffy
&& strcharinfo(PC_MAP) == "001-1"
@@ -451,5 +454,6 @@ OnNPCKillEvent:
{
setq(ArtisQuests_Enora, 10, getq2(ArtisQuests_Enora) + 1);
}
- end;
+ return;
}
+
diff --git a/npc/001-1/fexil.txt b/npc/001-1/fexil.txt
index 2ea78091..7b612674 100644
--- a/npc/001-1/fexil.txt
+++ b/npc/001-1/fexil.txt
@@ -122,7 +122,7 @@
l("Deal, I offer you @@ E!", .@price);
delitem FluffyFur, .@amount;
- Zeny = Zeny + .@price;
+ Zeny += .@price;
break;
diff --git a/npc/001-1/flags.txt b/npc/001-1/flags.txt
index 10ebf3c4..5e70c25a 100644
--- a/npc/001-1/flags.txt
+++ b/npc/001-1/flags.txt
@@ -1,25 +1,17 @@
// Evol scripts.
// Author:
// Micksha
+// Jesusalva
// Description:
// The flags supposed to mark Rowboat unmounting spots in Artis
// THIS IS A PLACEHOLDER!
001-1,200,63,0 script Flag#1 NPC_FLAG_L,{
OnTouch:
- narrator S_LAST_NEXT,
- l("You see a suspicious greenish flag. It reminds you of something you seem to have forgotten.");
-}
-
-001-1,27,101,0 script Flag#2 NPC_FLAG_R,{
- OnTouch:
- narrator S_LAST_NEXT,
- l("You see a suspicious greenish flag. It reminds you of something you seem to have forgotten.");
-}
-
-001-1,68,139,0 script Flag#3 NPC_FLAG_R,{
- OnTouch:
- narrator S_LAST_NEXT,
+ narrator
l("You see a suspicious greenish flag. It reminds you of something you seem to have forgotten.");
+ close;
}
+001-1,27,101,0 duplicate(Flag#1) Flag#2 NPC_FLAG_R
+001-1,68,139,0 duplicate(Flag#1) Flag#3 NPC_FLAG_R
diff --git a/npc/001-1/katja.txt b/npc/001-1/katja.txt
index 2d79a730..38ff2725 100644
--- a/npc/001-1/katja.txt
+++ b/npc/001-1/katja.txt
@@ -6,7 +6,7 @@
// Little girl playing around the hill on top of the port.
// She wants you to find her brother.
// Variables:
-// AtrilQuests_LazyBrother = 19 -- quest var
+// ArtisQuests_LazyBrother = 19 -- quest var
// LazyBrother_TreesLeft = 15 -- how many trees left to search
// LazyBrother_TreeSearched[15] -- whether given tree was searched
// LazyBrother_TreeWithBrother -- the number of tree where he's hiding
diff --git a/npc/001-1/koga.txt b/npc/001-1/koga.txt
index 3aecb09a..2595be63 100644
--- a/npc/001-1/koga.txt
+++ b/npc/001-1/koga.txt
@@ -9,12 +9,24 @@
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("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;
+ mesc l("Travel to woodlands?");
+ if (askyesno() == ASK_YES)
+ {
+ speech
+ 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;
+ setmount 0;
+ warp "008-1-1", 33, 63;
+ dispbottom l("After a tiring, yet fast, travel by Koga, you arrive at @@.", l("Woodlands"));
+ }
close;
OnInit:
.sex = G_MALE;
.distance = 4;
+ .alwaysVisible = true;
end;
}
diff --git a/npc/001-1/qonan.txt b/npc/001-1/qonan.txt
index 48b0c3f8..6805356a 100644
--- a/npc/001-1/qonan.txt
+++ b/npc/001-1/qonan.txt
@@ -60,6 +60,9 @@
l("You should check on the highest part of the cliff, I was hiding there."),
l("I hope to see you soon.");
getitem IronShovel, 1;
+ // For questlog
+ setq2 ArtisQuests_QOnan, .move__rand_x+any(-1,1);
+ setq3 ArtisQuests_QOnan, .move__rand_y+any(-1,1);
close;
case 2:
speech S_FIRST_BLANK_LINE | S_LAST_BLANK_LINE,
@@ -101,7 +104,7 @@ OnInit:
}
function script QOnanFoundItem {
- setq ArtisQuests_QOnan, 2;
+ setq ArtisQuests_QOnan, 2, 0, 0;
// getitem SmallChest, 1;
narrator S_FIRST_BLANK_LINE,
l("You found a small chest, surprisingly heavy for it's size."),
diff --git a/npc/001-1/rowboat.txt b/npc/001-1/rowboat.txt
index 3c8429a4..fa95f737 100644
--- a/npc/001-1/rowboat.txt
+++ b/npc/001-1/rowboat.txt
@@ -15,9 +15,16 @@
l("Do you have this commendatory letter?");
closeclientdialog();
if (askyesno() == 1) {
- slide 204, 62;
- movenpc("#Rowboat", 192, 25);
- setmount 1;
+ if (getq(General_Brotherhood) >= 2)
+ {
+ slide 204, 62;
+ movenpc("#Rowboat", 192, 25);
+ setmount 1;
+ }
+ else
+ {
+ npctalk3 l("You're lying, aren't you? I heard nothing from you-know-whom!");
+ }
close;
}
diff --git a/npc/001-1/rowboathelper.txt b/npc/001-1/rowboathelper.txt
index 675cfdaf..7cd419e4 100644
--- a/npc/001-1/rowboathelper.txt
+++ b/npc/001-1/rowboathelper.txt
@@ -27,8 +27,9 @@
l("Maybe you should try this phrase?"));
if (askyesno() == ASK_YES)
{
- narrator(S_LAST_BLANK_LINE | S_LAST_NEXT,
- l("'Enter strange phrase here.'"));
+ mesn strcharinfo(0);
+ mesc l("Sagratha is great.");
+ next;
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.");
@@ -40,10 +41,6 @@
close;
}
-// Make sure to unmount the boat when player dies
-OnPCDieEvent:
- setmount 0;
-
OnInit:
.distance = 1;
}
@@ -119,3 +116,9 @@ OnInit:
.sex = G_OTHER;
.distance = 1;
}
+
+function script ForcedUnmount {
+ setmount 0;
+ return;
+}
+
diff --git a/npc/001-1/salem.txt b/npc/001-1/salem.txt
index c8ea3ab8..ceaeda8f 100644
--- a/npc/001-1/salem.txt
+++ b/npc/001-1/salem.txt
@@ -48,7 +48,7 @@
return 3;
}
- Zeny = Zeny - .@price;
+ Zeny -= .@price;
getitem PiouEgg, 1;
ArtisQuests_PiousBought += 1;
mesq l("You take good care of your piou. Remember to feed it every day.");
diff --git a/npc/001-1/sophialla.txt b/npc/001-1/sophialla.txt
index ad4d508a..ad0755ec 100644
--- a/npc/001-1/sophialla.txt
+++ b/npc/001-1/sophialla.txt
@@ -6,15 +6,59 @@
// THIS IS A PLACEHOLDER!
001-1,73,40,0 script Sophialla#001-1 NPC_SOPHIALLA,{
+ .@q=getq(General_Brotherhood);
+ if (!.@q)
+ {
+ speech
+ l("Hello."),
+ l("Can't you see I am reading? Please go, please.");
+ close;
+ }
speech
l("Hello."),
l("Can't you see I am reading? If you need something, tell me the secret password.");
+ // TODO: Use a token to know password or whatever
+ select
+ l("Sorry to disturb you."),
+ rif(getq(ArtisQuests_MonaDad) == 3, l("Sagratha is great.")),
+ l("I don't know the password");
+ mes "";
+ if (@menu == 2)
+ {
+ 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.");
+ compareandsetq General_Brotherhood, 1, 2;
+ }
+
+ speech
lg("If you don't know it, just go, please.");
+ close;
+OnLegionComplete:
+ restorecam;
+ mesn "???";
+ mesc l("A strange voice seems to be calling out your name.");
+ next;
+ // NOTE: Sophialla is more than 15 tiles of distance from player
+ // Server refuses to send client data about where she is and that makes
+ // setcamnpc fail. This is why I set .alwaysVisible attribute to true.
+ // Note: you can work around with coordinates, but she won't be drawn.
+ setcamnpc "Sophialla#001-1";
+ mesn;
+ mesq l("Hey. ppst. I have something important to tell you.");
+ next;
+ mesn;
+ mesq l("I just can't remember what. But come talk to me later once devs becomes less lazy.");
+ setq General_Brotherhood, 1;
+ next;
+ restorecam;
+ closeclientdialog;
close;
OnInit:
.sex = G_FEMALE;
.distance = 2;
+ .alwaysVisible = true;
end;
}
diff --git a/npc/001-1/trees.txt b/npc/001-1/trees.txt
index cba42f8f..2c147bf9 100644
--- a/npc/001-1/trees.txt
+++ b/npc/001-1/trees.txt
@@ -4,7 +4,7 @@
// Description:
// Invisible tree NPCs for "Lazy Brother" quest
// Variables:
-// AtrilQuests_LazyBrother = 19 -- quest var
+// ArtisQuests_LazyBrother = 19 -- quest var
// LazyBrother_TreesLeft = 15 -- how many trees left to search
// LazyBrother_TreeSearched[15] -- whether given tree was searched
// LazyBrother_TreeWithBrother -- the number of tree where he's hiding
@@ -99,7 +99,7 @@ L_FoundHim:
close;
}
-001-1,179,30,0 script #AtrilTree1 NPC_KATJA_TREE,{
+001-1,179,30,0 script #ArtisTree1 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(1);
end;
OnInit:
@@ -108,7 +108,7 @@ OnInit:
end;
}
-001-1,177,29,0 script #AtrilTree2 NPC_KATJA_TREE,{
+001-1,177,29,0 script #ArtisTree2 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(2);
end;
OnInit:
@@ -117,7 +117,7 @@ OnInit:
end;
}
-001-1,183,28,0 script #AtrilTree3 NPC_KATJA_TREE,{
+001-1,183,28,0 script #ArtisTree3 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(3);
end;
OnInit:
@@ -126,7 +126,7 @@ OnInit:
end;
}
-001-1,182,25,0 script #AtrilTree4 NPC_KATJA_TREE,{
+001-1,182,25,0 script #ArtisTree4 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(4);
end;
OnInit:
@@ -135,7 +135,7 @@ OnInit:
end;
}
-001-1,187,26,0 script #AtrilTree5 NPC_KATJA_TREE,{
+001-1,187,26,0 script #ArtisTree5 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(5);
end;
OnInit:
@@ -144,7 +144,7 @@ OnInit:
end;
}
-001-1,189,28,0 script #AtrilTree6 NPC_KATJA_TREE,{
+001-1,189,28,0 script #ArtisTree6 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(6);
end;
OnInit:
@@ -153,7 +153,7 @@ OnInit:
end;
}
-001-1,184,30,0 script #AtrilTree7 NPC_KATJA_TREE,{
+001-1,184,30,0 script #ArtisTree7 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(7);
end;
OnInit:
@@ -162,7 +162,7 @@ OnInit:
end;
}
-001-1,189,31,0 script #AtrilTree8 NPC_KATJA_TREE,{
+001-1,189,31,0 script #ArtisTree8 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(8);
end;
OnInit:
@@ -171,7 +171,7 @@ OnInit:
end;
}
-001-1,191,30,0 script #AtrilTree9 NPC_KATJA_TREE,{
+001-1,191,30,0 script #ArtisTree9 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(9);
end;
OnInit:
@@ -180,7 +180,7 @@ OnInit:
end;
}
-001-1,191,33,0 script #AtrilTree10 NPC_KATJA_TREE,{
+001-1,191,33,0 script #ArtisTree10 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(10);
end;
OnInit:
@@ -189,7 +189,7 @@ OnInit:
end;
}
-001-1,187,34,0 script #AtrilTree11 NPC_KATJA_TREE,{
+001-1,187,34,0 script #ArtisTree11 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(11);
end;
OnInit:
@@ -198,7 +198,7 @@ OnInit:
end;
}
-001-1,185,35,0 script #AtrilTree12 NPC_KATJA_TREE,{
+001-1,185,35,0 script #ArtisTree12 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(12);
end;
OnInit:
@@ -207,7 +207,7 @@ OnInit:
end;
}
-001-1,182,34,0 script #AtrilTree13 NPC_KATJA_TREE,{
+001-1,182,34,0 script #ArtisTree13 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(13);
end;
OnInit:
@@ -216,7 +216,7 @@ OnInit:
end;
}
-001-1,180,33,0 script #AtrilTree14 NPC_KATJA_TREE,{
+001-1,180,33,0 script #ArtisTree14 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(14);
end;
OnInit:
@@ -225,7 +225,7 @@ OnInit:
end;
}
-001-1,181,32,0 script #AtrilTree15 NPC_KATJA_TREE,{
+001-1,181,32,0 script #ArtisTree15 NPC_KATJA_TREE,{
LazyBrotherTreeFunc(15);
end;
OnInit: