diff options
-rw-r--r-- | db/quest_db.conf | 4 | ||||
-rw-r--r-- | npc/019-4-1/chief.txt | 37 | ||||
-rw-r--r-- | npc/019-4-1/golbarez.txt | 44 | ||||
-rw-r--r-- | npc/022-1/gift_collector.txt | 1 |
4 files changed, 83 insertions, 3 deletions
diff --git a/db/quest_db.conf b/db/quest_db.conf index 127cf603f..086fe81b8 100644 --- a/db/quest_db.conf +++ b/db/quest_db.conf @@ -348,6 +348,10 @@ quest_db: ( Id: 307 Name: "SQuest_XmasCollector" }, +{ + Id: 308 + Name: "SQuest_Christmas" +}, // ID 400+: Event Quests { diff --git a/npc/019-4-1/chief.txt b/npc/019-4-1/chief.txt index e826e4ebb..bc6dba434 100644 --- a/npc/019-4-1/chief.txt +++ b/npc/019-4-1/chief.txt @@ -10,10 +10,47 @@ // // Rewards: Santa Hat, Gnome Hat, Santa Bearded Hat, Ugly Christmas Sweater, // Turtle Neck Sweater, Santa Globe, Snowman Globe, Red Stocking. +// +// SQuest_Christmas +// Current Year +// Boxes Delivered +// Money Sponsored +// +// $XMAS_GIFTS +// World-wide collected gifts count. 019-4-1,56,33,0 script Christmas Chief NPC_GNOME_A,{ + // Last year + if (getq3(SQuest_Christmas) == 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_Christmas) < gettime(GETTIME_YEAR)) + setq SQuest_Christmas, 1, 0, gettime(GETTIME_YEAR); + // Main Loop + goto L_Main; + +L_OutOfSeason: + mesn; + mesq l("This workshop doesn't gets too many tasks from Santa outside the Christmas..."); + close; + +// TODO Reward +L_Reward: + mesn; + mesc l("Hey hey, how can you finish a quest which never started in first place?"), 1; + setq SQuest_Christmas, 0, 0, 0; + close; + +L_Main: + .@q=getq2(SQuest_Christmas); mesn; mesq l("The stolen empty boxes!! Christmas is RUINED!!!"); + next; + mesn; + mesq l("We only managed to recover @@ thus far...", $XMAS_GIFTS); close; OnInit: diff --git a/npc/019-4-1/golbarez.txt b/npc/019-4-1/golbarez.txt index 3cc343d79..326c1e550 100644 --- a/npc/019-4-1/golbarez.txt +++ b/npc/019-4-1/golbarez.txt @@ -3,12 +3,50 @@ // TMW-LoF Team // Jesusalva // Description: -// Permanently repeatable quest, without any special limit -// NPC_GNOME_ABC NPC_LOF_RICH +// Christmas quest. ported from 2010 and adapted for TMW2:ML. +// Original Name: Golbenez 019-4-1,30,45,0 script Golbarez NPC_LOF_RICH,{ + if ($EVENT$ != "Christmas") + goto L_OutOfSeason; + goto L_Main; + +L_OutOfSeason: + mesn; + if (rand(1,2) == 1) + mesq l("AAH! You scared me!"); + else + mesq l("Land Of Fire is a place so warm... Although this workshop is a better place to break time and space during Christmas."); + close; + +L_Main: + if (getq(SQuest_Christmas) != gettime(GETTIME_YEAR)) { + mesn; + mesq l("Please talk with this workshop Chief before talking to me."); + close; + } + .@q=getq3(SQuest_Christmas); + mesn; + mesq l("Mortal! I am @@! I have broken through the barriers of space and time!", .name$); + mesq l("I want to keep breaking them, until I find the paradise! Thus far, I only found the Land Of Fire!"); + next; + mesn; + mesq l("I need millions of GP to fund my time-space shattering, and thus far, I've only collected @@ GP.", $XMAS_MONEY); + mesq l("If you sponsor me, while I break into more dimensions, I'll give you any stuff I find. Hey, they could be rare here!"); + next; + mesc l("Sponsor @@ in how much GP?", .name$); + input .@count; + mes ""; + if (Zeny < .@count) { + mesn; + mesq l("Don't try to trick me, this attracts bad karma! You could get stolen on Christmas! Seriously, this has happened before!"); + close; + } + Zeny=Zeny-.@count; + $XMAS_MONEY+=.@count; + setq3 SQuest_Christmas, .@q+.@count; mesn; - mesq l("The paradise!"); + mesq l("Thanks for your patronage! The rewards will be available with @@, in case I do find the paradise!", "Christmas Chief"); close; OnInit: diff --git a/npc/022-1/gift_collector.txt b/npc/022-1/gift_collector.txt index e00b250ad..09dfb8c22 100644 --- a/npc/022-1/gift_collector.txt +++ b/npc/022-1/gift_collector.txt @@ -15,6 +15,7 @@ // 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 |