diff options
-rw-r--r-- | db/re/mob_db.conf | 1 | ||||
-rw-r--r-- | npc/003-1/eugene.txt | 45 |
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! |