summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--db/re/mob_db.conf1
-rw-r--r--npc/003-1/eugene.txt45
2 files changed, 40 insertions, 6 deletions
diff --git a/db/re/mob_db.conf b/db/re/mob_db.conf
index 548bbdba0..60bffcb26 100644
--- a/db/re/mob_db.conf
+++ b/db/re/mob_db.conf
@@ -1126,6 +1126,7 @@ mob_db: (
Moss: 320
DuckFeather: 56
CommonCarp: 23
+ GrassCarp: 3
}
},
{
diff --git a/npc/003-1/eugene.txt b/npc/003-1/eugene.txt
index 0936a4afd..63bc7109e 100644
--- a/npc/003-1/eugene.txt
+++ b/npc/003-1/eugene.txt
@@ -68,19 +68,30 @@ L_CheckItems:
getitem FishingRod, 1;
getitem FishingGuideVolI, 1;
getexp 62, 5;
- setq TulimsharQuests_Fishman, 2;
+ setq TulimsharQuests_Fishman, 2, 99, gettimeparam(GETTIME_DAYOFMONTH);
close;
L_QuestDone:
+ // Time check/fix
+ .@q3=getq3(TulimsharQuests_Fishman);
+ if (.@q3 < gettimeparam(GETTIME_DAYOFMONTH))
+ setq TulimsharQuests_Fishman, 2, 0, gettimeparam(GETTIME_DAYOFMONTH);
+
+ .@maxcarps=1+(BaseLevel/8);
+ .@q2=getq2(TulimsharQuests_Fishman);
// Idea for future: Eugene telling fishman jokes.
speech
l("Ahoy, @@!", strcharinfo(0)),
l("Are the fish biting today?");
- switch (select(l("Yes, everything is going great, thank you!"),
- l("Actually, I have bad luck. Could you sell me a box full of fresh fish?")))
- {
+ select
+ l("Yes, everything is going great, thank you!"),
+ l("Actually, I have bad luck. Could you sell me a box full of fresh fish?");
+
+ switch (@menu) {
case 1:
+ if (.@q2 < .@maxcarps)
+ goto L_Sidequest;
speech S_FIRST_BLANK_LINE,
l("Glad to hear. I swear, the fish I picked before you arrive was THAT big!");
close;
@@ -91,18 +102,41 @@ L_QuestDone:
openshop;
closedialog;
}
+ close;
+L_Sidequest:
+ mesn;
+ mesq l("Maybe I'm using a too low quality bait, I can't fish %s.", getitemlink(GrassCarp));
+ next;
+ mesn;
+ mesq l("I offer you %d GP for one. What do you say?", .SuperPrice);
+ if (!countitem(GrassCarp))
+ close;
+ if (askyesno() == ASK_NO)
+ close;
+ delitem GrassCarp, 1;
+ Zeny+=.SuperPrice;
+ setq2 TulimsharQuests_Fishman, .@q2+1;
+ .@q2=getq2(TulimsharQuests_Fishman);
+
+ // Maybe you can repeat, if so, do this immediately
+ if (.@q2 < .@maxcarps)
+ goto L_Sidequest;
+
+ // Maxed for the day, give you a hint
+ mesn;
+ mesq l("Thanks. Maybe I should stop using Maggot Slime as a bait.");
close;
OnInit:
.BaitID = SmallTentacles;
.BaitCount = 10;
+ .SuperPrice = 600; // 600% profit (normal is 500%, but fishing is harder)
tradertype(NST_MARKET);
sellitem SmallFishingNet, -1, 1;
sellitem FishBox, -1, 5;
sellitem CommonCarp, -1, 3;
- sellitem GrassCarp, -1, 1;
.sex = G_MALE;
.distance = 6;
@@ -115,7 +149,6 @@ OnClock0003:
restoreshopitem SmallFishingNet, 1;
restoreshopitem FishBox, 5;
restoreshopitem CommonCarp, 3;
- restoreshopitem GrassCarp, 1;
end;
// Pay your taxes!