From 2780bd97e206f974289bcc627741d34eb6d6b707 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Mon, 24 Dec 2018 12:09:51 -0200 Subject: Move mobhunter rewards out of Aidan and into functions/mobhunter --- npc/003-1/aidan.txt | 63 +----------------------------------------- npc/functions/mobhunter.txt | 67 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+), 62 deletions(-) (limited to 'npc') diff --git a/npc/003-1/aidan.txt b/npc/003-1/aidan.txt index 08f4ab05c..d94722b52 100644 --- a/npc/003-1/aidan.txt +++ b/npc/003-1/aidan.txt @@ -113,68 +113,7 @@ L_Assign: L_Finish: - // Check if you can store a Strange Coin (you really should) - // Another item too, which I'm sure you won't get it anywhere. - inventoryplace StrangeCoin, 1, NPCEyes, 1; - mes l("Current progress: @@/10000 @@", getq2(General_Hunter), getmonsterlink(GHQ_GetMonsterIDByQuestID(getq(General_Hunter)))); - mes ""; - GHMEMO[getq(General_Hunter)]=getq2(General_Hunter); - switch (GHQ_GetMonsterIDByQuestID(getq(General_Hunter))) { - case Maggot: - setq General_Hunter, 0, 0; - Zeny=Zeny+25000; - inventoryplace MaggotCocoon, 1; - makepet(Maggot); // Works the same, even if I'm using mob_db constant - getexp 15750, 100; - mesn; - mesq l("Good job, here is 25,000 GP and 15,750 EXP."); - mesq l("And your rare, a @@! Enjoy!", getitemlink(MaggotCocoon)); - close; - case Snake: - setq General_Hunter, 0, 0; - Zeny=Zeny+300000; - getitem StrangeCoin, 80; - getexp 15750, 100; - mesn; - mesq l("Good job, here is 300,000 GP and 80 @@!", getitemlink(StrangeCoin)); - mesc l("Gained @@ XP", "15750"); - close; - case Scorpion: - setq General_Hunter, 0, 0; - Zeny=Zeny+100000; - getexp 15750, 100; - mesn; - mesq l("Good job, here is 100,000 GP!"); - mesc l("Gained @@ XP", "15750"); - close; - case ForestMushroom: - setq General_Hunter, 0, 0; - Zeny=Zeny+175000; - getitem StrangeCoin, 60; - getexp 15750, 100; - mesn; - mesq l("Good job, here is 175,000 GP and 60 @@!", getitemlink(StrangeCoin)); - mesc l("Gained @@ XP", "15750"); - close; - case Pinkie: - setq General_Hunter, 0, 0; - getitem PinkHelmet, 1; - getexp 15750, 100; - mesn; - mesq l("And your rare, a @@! Enjoy!", getitemlink(PinkHelmet)); - mesc l("Gained @@ XP", "15750"); - close; - case Moggun: - setq General_Hunter, 0, 0; - Zeny=Zeny+150000; - getitem StrangeCoin, 60; - getexp 15750, 100; - mesn; - mesq l("Good job, here is 150,000 GP and 60 @@!", getitemlink(StrangeCoin)); - mesc l("Gained @@ XP", "15750"); - close; - } - mesc l("ILLEGAL SCRIPT POSITION REACHED, PLEASE REPORT.", 1); + GHQ_GetRewardsOnCompletion(); close; OnInit: diff --git a/npc/functions/mobhunter.txt b/npc/functions/mobhunter.txt index 3b3dc8cb5..fadba48c8 100644 --- a/npc/functions/mobhunter.txt +++ b/npc/functions/mobhunter.txt @@ -108,6 +108,73 @@ function script GHQ_Assign { } +// Handle rewards (must check beforehand) +function script GHQ_GetRewardsOnCompletion { + // Check if you can store a Strange Coin (you really should) + // Another item too, which I'm sure you won't get it anywhere. + inventoryplace StrangeCoin, 1, NPCEyes, 1; + mes l("Current progress: @@/10000 @@", getq2(General_Hunter), getmonsterlink(GHQ_GetMonsterIDByQuestID(getq(General_Hunter)))); + mes ""; + GHMEMO[getq(General_Hunter)]=getq2(General_Hunter); + switch (GHQ_GetMonsterIDByQuestID(getq(General_Hunter))) { + case Maggot: + setq General_Hunter, 0, 0; + Zeny=Zeny+25000; + inventoryplace MaggotCocoon, 1; + makepet(Maggot); // Works the same, even if I'm using mob_db constant + getexp 15750, 100; + mesn; + mesq l("Good job, here is 25,000 GP and 15,750 EXP."); + mesq l("And your rare, a @@! Enjoy!", getitemlink(MaggotCocoon)); + close; + case Snake: + setq General_Hunter, 0, 0; + Zeny=Zeny+300000; + getitem StrangeCoin, 80; + getexp 15750, 100; + mesn; + mesq l("Good job, here is 300,000 GP and 80 @@!", getitemlink(StrangeCoin)); + mesc l("Gained @@ XP", "15750"); + close; + case Scorpion: + setq General_Hunter, 0, 0; + Zeny=Zeny+100000; + getexp 15750, 100; + mesn; + mesq l("Good job, here is 100,000 GP!"); + mesc l("Gained @@ XP", "15750"); + close; + case ForestMushroom: + setq General_Hunter, 0, 0; + Zeny=Zeny+175000; + getitem StrangeCoin, 60; + getexp 15750, 100; + mesn; + mesq l("Good job, here is 175,000 GP and 60 @@!", getitemlink(StrangeCoin)); + mesc l("Gained @@ XP", "15750"); + close; + case Pinkie: + setq General_Hunter, 0, 0; + getitem PinkHelmet, 1; + getexp 15750, 100; + mesn; + mesq l("And your rare, a @@! Enjoy!", getitemlink(PinkHelmet)); + mesc l("Gained @@ XP", "15750"); + close; + case Moggun: + setq General_Hunter, 0, 0; + Zeny=Zeny+150000; + getitem StrangeCoin, 60; + getexp 15750, 100; + mesn; + mesq l("Good job, here is 150,000 GP and 60 @@!", getitemlink(StrangeCoin)); + mesc l("Gained @@ XP", "15750"); + close; + } + mesc l("ILLEGAL SCRIPT LOGIC REACHED, PLEASE REPORT. (GHQ_GROC)", 1); + return; +} + function script mobhunter { if (getq(General_Hunter) == 0) return; -- cgit v1.2.3-60-g2f50