summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2021-12-08 12:20:03 -0300
committerJesusaves <cpntb1@ymail.com>2021-12-08 12:20:03 -0300
commite5895847a523ef32e899c98e18e9d00ae27b0b88 (patch)
treea5c680a6b2cac6bf5ee3462b37c9371ded1c2a4b
parentb082e14d7b7f0496151877afe87e11c4965d8425 (diff)
downloadserverdata-e5895847a523ef32e899c98e18e9d00ae27b0b88.tar.gz
serverdata-e5895847a523ef32e899c98e18e9d00ae27b0b88.tar.bz2
serverdata-e5895847a523ef32e899c98e18e9d00ae27b0b88.tar.xz
serverdata-e5895847a523ef32e899c98e18e9d00ae27b0b88.zip
Nerf ticket drop rate. Begin Santa code
-rw-r--r--db/constants.conf2
-rw-r--r--npc/081-1/dungeon.txt80
-rw-r--r--npc/annuals/xmas/2021.txt18
-rw-r--r--npc/functions/mob_points.txt6
4 files changed, 103 insertions, 3 deletions
diff --git a/db/constants.conf b/db/constants.conf
index 8a3e1a17..50059a71 100644
--- a/db/constants.conf
+++ b/db/constants.conf
@@ -3387,6 +3387,8 @@ more than one separator can be used in a row (so 12_3___456 is illegal).
comment__: "Christmas 2021 Constants"
X21_ACCEPTED: 1
+ X21_GOTOGAK: 2
+ X21_GATEGAK: 4
X21_CANDLES: 64
X21_PLANTPUZZLE: 128
X21_LEVEL3: 256
diff --git a/npc/081-1/dungeon.txt b/npc/081-1/dungeon.txt
index ea15a80d..a2df4d42 100644
--- a/npc/081-1/dungeon.txt
+++ b/npc/081-1/dungeon.txt
@@ -152,10 +152,90 @@ OnInit:
081-1,56,63,0 script Santa NPC_SANTA,{
+ function report;
+ function gotogak;
+ function finished;
+ if (X21ED2_CLEAR()) finished();
+ if (X21GAK_GOTO()) gotogak();
+ if (X21ED1_CLEAR()) report();
mesn;
mesq l("Hohohoh!");
close;
+function report {
+ select
+ l("I've found Alissa.");
+ mes "";
+ mesn;
+ mesq l("You WHAT?");
+ next;
+ select
+ l("I've found Alissa.");
+ mes "";
+ mesn;
+ mesq l("In name of the Ice, I didn't thought you would find Alissa herself! Hohoho!");
+ next;
+ mesn;
+ mesq l("Congratulations, I guess.");
+ next;
+ select
+ l("Where's Gak?");
+ mes "";
+ mesn;
+ mesq l("Uh? He went home, obviously.");
+ next;
+ mesn;
+ mes "\""+l("...Ah");
+ mes l("I guess that's inconvenient to you, isn't it? Hohoho!")+"\"";
+ next;
+ select
+ l("Where does he live?"),
+ l("Where's his house?");
+ mes "";
+ mesn;
+ mesq l("I have no idea, he haven't asked for a Christmas gift lately.");
+ next;
+ mesn;
+ mesq l("Maybe you can ask someone else? Hohoho!");
+ next;
+ // useless Santa...
+ select
+ l("Where did you last seen him?");
+ mes "";
+ mesn;
+ mesq l("Asphodel Moors. Not sure if there's any significance to him about that place, but well, maybe someone there knows.");
+ next;
+ mesn;
+ mesq l("I also think I saw Kytty around, from Valentine's Day. She may have seen something, who knows.");
+ X21GAK_DOGOTO();
+ close;
+}
+
+function gotogak {
+ mesn;
+ mesq l("Gak went home, but maybe someone else in Asphodel Moors has seen him. Or maybe Kytty.");
+ close;
+}
+
+function finished {
+ mesn;
+ mesq l("Have you been a very good kid this year?");
+ askyesno();
+ mes "";
+ mesn;
+ mes "\""+l("Well, whenever you explore that place, you may get some tickets.");
+ mes l("I'll exchange these for rares which were featured in other Christmas Events.");
+ mes l("An unique chance! Hohohoh!")+"\"";
+ next;
+ mesn;
+ mes "\""+l("But keep in mind, you can only get one of each.");
+ mes l("So, what'll it be?")+"\"";
+ next;
+ openshop;
+ closeclientdialog;
+ close;
+}
+
OnInit:
.distance=5;
setarray .prizes, ElfNightcap, TopHat, ShroomHat, FunkyHat,
diff --git a/npc/annuals/xmas/2021.txt b/npc/annuals/xmas/2021.txt
index bc87c319..a296063b 100644
--- a/npc/annuals/xmas/2021.txt
+++ b/npc/annuals/xmas/2021.txt
@@ -42,6 +42,24 @@ function script X21ED1_DOCLEAR {
return;
}
+function script X21GAK_GOTO {
+ return (XMAS2021 & X21_GOTOGAK);
+}
+
+function script X21GAK_DOGOTO {
+ XMAS2021 = (XMAS2021 | X21_GOTOGAK);
+ return;
+}
+
+function script X21GAK_GATE {
+ return (XMAS2021 & X21_GATEGAK);
+}
+
+function script X21GAK_DOGATE {
+ XMAS2021 = (XMAS2021 | X21_GATEGAK);
+ return;
+}
+
function script X21ED2_CLEAR {
return (XMAS2021 & X21_COMPLETE);
}
diff --git a/npc/functions/mob_points.txt b/npc/functions/mob_points.txt
index 5b4b86d8..7498191d 100644
--- a/npc/functions/mob_points.txt
+++ b/npc/functions/mob_points.txt
@@ -16,11 +16,11 @@ function script MobPoints {
@mobId=killedrid;
if (isChristmas21() && compare(getmap(), "@"+callfunc("X21ID2"))) {
- if (getmonsterinfo(@mobId, MOB_LV) >= 150 && any(true, false))
+ if (getmonsterinfo(@mobId, MOB_LV) >= 150 && rand2(3) == 1)
getitem XmasTicket, 2;
- else if (getmonsterinfo(@mobId, MOB_LV) >= 100 && any(true, false))
+ else if (getmonsterinfo(@mobId, MOB_LV) >= 100 && rand2(3) == 1)
getitem XmasTicket, 1;
- else if (getmonsterinfo(@mobId, MOB_LV) >= 40 && any(true, false, false, false))
+ else if (getmonsterinfo(@mobId, MOB_LV) >= 40 && rand2(5) == 3)
getitem XmasTicket, 1;
else if (rand2(10) == 3)
getitem XmasTicket, 1;