From 978c2be988c21e8107603ac3aff298a06f5fad42 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Wed, 2 Jan 2019 12:29:44 -0200 Subject: Improve Frostia Christmas Subquest rewards --- npc/022-1/gift_collector.txt | 29 ++++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) (limited to 'npc/022-1') diff --git a/npc/022-1/gift_collector.txt b/npc/022-1/gift_collector.txt index 09dfb8c22..6b52b303f 100644 --- a/npc/022-1/gift_collector.txt +++ b/npc/022-1/gift_collector.txt @@ -12,17 +12,25 @@ // 2 - Rewards Collected 022-1,65,53,0 script Gift Fanatic NPC_GNOME_C,{ + // Start Event for the first time + if (gettime(GETTIME_MONTH) != JANUARY && getq(SQuest_XmasCollector) < gettime(GETTIME_YEAR)) { + npctalk3 l("Bug, please report: Merry Christmas I am undefined"); + setq SQuest_XmasCollector, 1, 0, gettime(GETTIME_YEAR); + } + if (gettime(GETTIME_MONTH) == JANUARY && getq(SQuest_XmasCollector) != gettime(GETTIME_YEAR)-1) { + npctalk3 l("Bug, please report: Merry Christmas, I am @@. I got @@/@@ on exams last week!", getq(SQuest_XmasCollector), getq2(SQuest_XmasCollector), getq3(SQuest_XmasCollector)); + setq SQuest_XmasCollector, 1, 0, gettime(GETTIME_YEAR)-1; + } + // Main Loop + if ($EVENT$ == "Christmas") + goto L_Main; + // Last year if (getq3(SQuest_XmasCollector) == gettime(GETTIME_YEAR)-1) goto L_Reward; + // Not on season - if ($EVENT$ != "Christmas") - goto L_OutOfSeason; - // Start Event for the first time - if (getq3(SQuest_XmasCollector) < gettime(GETTIME_YEAR)) - setq SQuest_XmasCollector, 1, 0, gettime(GETTIME_YEAR); - // Main Loop - goto L_Main; + goto L_OutOfSeason; L_OutOfSeason: mesn; @@ -30,14 +38,21 @@ L_OutOfSeason: close; // The reward is actually just an extra bonus, there is nothing WOW to see here... +// Unless you reach the milestones: 200, 400, 800, 1600, 3200, 6400, 12800... gifts +// The maximum is 10 christmas boxes, or 102.400 gifts. +// There's a floor, though: Your Base Level. That determines the minimum amount +// before it starts counting. So in reality, you need 200~300 gifts to get prize. L_Reward: + inventoryplace XmasGift, 10; .@q=getq2(SQuest_XmasCollector); .@q=max(0, .@q-BaseLevel); + .@gifts=min(10, log2(.@q/200))+1; mesn; mesq l("Hey, huge THANKS for the help! I love gifts! Here's your due reward!"); mesc l("Got @@ EXP, @@ JExp and @@ GP for helping out.", .@q*7, .@q, .@q*5); getexp .@q*7, .@q; Zeny=Zeny+(.@q*5); + getitem XmasGift, .@gifts; setq SQuest_XmasCollector, 2, 0, 0; close; -- cgit v1.2.3-60-g2f50