summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2023-10-07 11:26:35 -0300
committerJesusaves <cpntb1@ymail.com>2023-10-07 11:26:35 -0300
commit930afbd0ea7901844db230543abe7468f0d2c001 (patch)
tree57f2fba5aab92b752c08443aeae627526b202a26
parent3367ca9a513d0010fe1a91a31379c2d3d97926e7 (diff)
downloadserverdata-930afbd0ea7901844db230543abe7468f0d2c001.tar.gz
serverdata-930afbd0ea7901844db230543abe7468f0d2c001.tar.bz2
serverdata-930afbd0ea7901844db230543abe7468f0d2c001.tar.xz
serverdata-930afbd0ea7901844db230543abe7468f0d2c001.zip
Some event pets can now be recovered with Pet Detective
-rw-r--r--db/constants.conf7
-rw-r--r--npc/003-1/events.txt2
-rw-r--r--npc/017-1/pet_detective.txt15
-rw-r--r--npc/019-4-1/chief.txt4
-rw-r--r--npc/functions/mobhunter.txt20
5 files changed, 47 insertions, 1 deletions
diff --git a/db/constants.conf b/db/constants.conf
index aad476651..4ee12447f 100644
--- a/db/constants.conf
+++ b/db/constants.conf
@@ -2222,6 +2222,13 @@ constants_db: {
BS_SNEST9: 256
BS_SNESTALL: 511
+ comment__: "Event Feat Constants"
+ EVFEAT_EASTER: 1
+ EVFEAT_VALENTINE: 2
+ EVFEAT_CHRISTMAS: 4
+ EVFEAT_OLYMPICS: 8 // NOT IN USE
+ EVFEAT_PINKIE: 16 // NOT IN USE
+
comment__: "Homunculus deployment constants"
HCD_PIOUFIELDS: 1
HCD_HERBFIELDS: 2
diff --git a/npc/003-1/events.txt b/npc/003-1/events.txt
index 2c3b3759e..5527f7cc9 100644
--- a/npc/003-1/events.txt
+++ b/npc/003-1/events.txt
@@ -122,6 +122,7 @@ function handleEaster {
mesn;
mesc l("For the first place in Easter, you gained a Bhopper Fluffy."), 3;
mesc l("Remember to give it a balanced diet of Aquadas to make it happy."), 3;
+ #EVFEATS = #EVFEATS | EVFEAT_EASTER;
next;
} else {
.@pos=array_find($@easter_name$, strcharinfo(0));
@@ -222,6 +223,7 @@ function handleValentine {
makepet DoggyDog;
getitem PrismGift, 1;
getitem StrangeCoin, 10;
+ #EVFEATS = #EVFEATS | EVFEAT_VALENTINE;
} else if (strcharinfo(0) == .@name$[1] || strcharinfo(0) == .@name$[2]) {
getitem PrismGift, 1;
getitem GoldenGift, 1;
diff --git a/npc/017-1/pet_detective.txt b/npc/017-1/pet_detective.txt
index 7c733da64..cdc0e3407 100644
--- a/npc/017-1/pet_detective.txt
+++ b/npc/017-1/pet_detective.txt
@@ -72,6 +72,9 @@ L_Menu:
rif(PDQ_CheckGHQ(Snake) >= 10000 && !countitem(TamedSnakeEgg), l("Tamed Snake")),
rif(PDQ_CheckGHQ(MountainSnake) >= 10000 && !countitem(AggressiveSnakeEgg), l("Aggressive Snake")),
rif(#LOGIN_ALLTIME >= 6 && !countitem(PiouEgg), l("Piou")),
+ rif(#EVFEATS & EVFEAT_EASTER && !countitem(BhopEgg), l("Bhop Fluffy")),
+ rif(#EVFEATS & EVFEAT_VALENTINE && !countitem(DoggyDog), l("Doggy Dog")),
+ rif(#EVFEATS & EVFEAT_CHRISTMAS && !countitem(CattyCat), l("Catty Cat")),
l("Nothing at the moment.");
mes "";
@@ -116,6 +119,18 @@ L_Menu:
if (PDQ_InnerSwitch(Piou, PiouFeathers, 80))
.stock-=1;
break;
+ case 11:
+ if (PDQ_InnerSwitch(BhopFluffy, Coal, 120))
+ .stock-=1;
+ break;
+ case 12:
+ if (PDQ_InnerSwitch(Toto, Coal, 120))
+ .stock-=1;
+ break;
+ case 13:
+ if (PDQ_InnerSwitch(WhiteCat, Coal, 120))
+ .stock-=1;
+ break;
default:
closedialog;
goodbye;
diff --git a/npc/019-4-1/chief.txt b/npc/019-4-1/chief.txt
index a05cfa83a..47942b7f1 100644
--- a/npc/019-4-1/chief.txt
+++ b/npc/019-4-1/chief.txt
@@ -82,8 +82,10 @@ L_Reward:
else if (strcharinfo(0) == $@xmas_box_name$[3] || strcharinfo(0) == $@xmas_box_name$[4])
getitem XmasGift, ($XMAS_MONEY >= 1000000 ? 2 : 1);
- if (strcharinfo(0) == .@name$[0])
+ if (strcharinfo(0) == .@name$[0]) {
mesc l("You gained a @@ for the #1 place on the event. Remember to feed it @@, or it may run away from you.", getitemlink(CattyCat), getitemlink(Milk));
+ #EVFEATS = #EVFEATS | EVFEAT_CHRISTMAS;
+ }
/////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////
diff --git a/npc/functions/mobhunter.txt b/npc/functions/mobhunter.txt
index abecd23fa..1c42a4f36 100644
--- a/npc/functions/mobhunter.txt
+++ b/npc/functions/mobhunter.txt
@@ -38,6 +38,16 @@ function script GHQ_GetQuestIDByMonsterID {
case GreenDragon:
return 11;
break;
+ // Special cases for events
+ case Piou:
+ return 20;
+ break;
+ case Toto:
+ return 21;
+ break;
+ case WhiteCat:
+ return 22;
+ break;
default:
return Exception("GHQ GQID: Invalid ID: "+getarg(0), RB_DEFAULT^RB_PLEASEREPORT|RB_ISFATAL);
break;
@@ -81,6 +91,16 @@ function script GHQ_GetMonsterIDByQuestID {
case 11:
return GreenDragon;
break;
+ // Special cases for events
+ case 20:
+ return Piou;
+ break;
+ case 21:
+ return Toto;
+ break;
+ case 22:
+ return WhiteCat;
+ break;
default:
return Exception("GHQ GMID: Invalid ID: "+getarg(0), RB_DEFAULT^RB_PLEASEREPORT|RB_ISFATAL);
break;