summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--npc/019-4-1/chief.txt40
-rw-r--r--npc/functions/scoreboards.txt10
2 files changed, 36 insertions, 14 deletions
diff --git a/npc/019-4-1/chief.txt b/npc/019-4-1/chief.txt
index b5904b9b1..ca4bd1fb7 100644
--- a/npc/019-4-1/chief.txt
+++ b/npc/019-4-1/chief.txt
@@ -110,10 +110,19 @@ L_Reward:
.@bp_total=.@q2/15000; // Price of an Ancient Blueprint
.@bp_rank=0;
+ // Event: Supreme (5 Mi)
+ if ($XMAS_MONEY >= 5000000) {
+ if (.@mc_boxc)
+ getitem MercBoxC, .@mc_boxc;
+ if (.@mc_boxb)
+ getitem MercBoxB, .@mc_boxb+1;
+ if (.@mc_boxa)
+ getitem MercBoxA, .@mc_boxa+2;
+ .@bp_rank=5;
// Event: Great (1.5 Mi)
- if ($XMAS_MONEY >= 1500000) {
+ } if ($XMAS_MONEY >= 1500000) {
if (.@mc_boxc)
- getitem MercBoxC, .@mc_boxb;
+ getitem MercBoxC, .@mc_boxc;
if (.@mc_boxb)
getitem MercBoxB, .@mc_boxb;
if (.@mc_boxa)
@@ -122,7 +131,7 @@ L_Reward:
// Event: Good (750k)
} else if ($XMAS_MONEY >= 750000) {
if (.@mc_boxc)
- getitem MercBoxC, .@mc_boxb;
+ getitem MercBoxC, .@mc_boxc;
if (.@mc_boxb)
getitem MercBoxB, .@mc_boxb;
if (.@mc_boxa)
@@ -141,7 +150,7 @@ L_Reward:
getitem MercBoxA, .@mc_boxa+1;
.@bp_rank=1;
}
- // Event: Terrible (< 100k: No rewards)
+ // Event: Terrible (< 100k: No merc rewards)
// Blueprints control
// Event: Horrible
@@ -185,8 +194,8 @@ L_Reward:
}
}
// Event: Great
- else if (.@bp_rank >= 4 && .@bp_total) {
- .@bp=.@bp_total/6;
+ else if (.@bp_rank <= 4 && .@bp_total) {
+ .@bp=.@bp_total/7;
getitem AlchemyBlueprintB, limit(1, .@bp, 10);
getitem EquipmentBlueprintB, limit(1, .@bp, 10);
getitem AlchemyBlueprintC, limit(1, .@bp, 5);
@@ -197,6 +206,19 @@ L_Reward:
getitem AncientBlueprint, 3;
}
}
+ // Event: Supreme
+ else if (.@bp_rank >= 5 && .@bp_total) {
+ .@bp=.@bp_total/8;
+ getitem AlchemyBlueprintC, limit(1, .@bp, 7);
+ getitem EquipmentBlueprintC, limit(1, .@bp, 7);
+ getitem AlchemyBlueprintD, limit(1, .@bp, 5);
+ getitem EquipmentBlueprintD, limit(1, .@bp, 5);
+ if (.@bp) {
+ getitem AlchemyBlueprintE, limit(1, .@bp, 2);
+ getitem EquipmentBlueprintE, limit(1, .@bp, 2);
+ getitem AncientBlueprint, 3;
+ }
+ }
// MVP Awards
if ((.@q2*100)/$XMAS_MONEY >= 80) { // 80% contribution
@@ -235,11 +257,11 @@ L_Reward:
// #2 - #3: Xmas Gift x1
// #4 - #5: Bronze Gift
if (strcharinfo(0) == $@xmas_gp_name$[0])
- getitem XmasGift, 2;
+ getitem XmasGift, max(.@bp_rank, 1)+1;
else if (strcharinfo(0) == $@xmas_gp_name$[1] || strcharinfo(0) == $@xmas_gp_name$[2])
- getitem XmasGift, 1;
+ getitem XmasGift, max(.@bp_rank, 1);
else if (strcharinfo(0) == $@xmas_gp_name$[3] || strcharinfo(0) == $@xmas_gp_name$[4])
- getitem BronzeGift, 1;
+ getitem BronzeGift, (.@bp_rank > 3 ? 2 : 1);
mesn;
mesq l("Thanks for helping us the last year. I hope to have your help by the next year.");
diff --git a/npc/functions/scoreboards.txt b/npc/functions/scoreboards.txt
index 270b0e8dc..cbe8a6b79 100644
--- a/npc/functions/scoreboards.txt
+++ b/npc/functions/scoreboards.txt
@@ -777,14 +777,14 @@ function script HallOf2022 {
//mes l("No victor appliable.");
mesc l("TMW2 Day marks the server birthdate. Do not mistake with TMW2 Anniversary.");
mes "";
- mes l(".:: Easter 2021 ::.");
+ mes l(".:: Easter 2022 ::.");
mesc l("Scheduled: April 17th - 24th");
mes "";
mes l(".:: Worker Day ::.");
mesc l("Scheduled: April 27th - May 3rd");
//mes l("No victor appliable.");
next;
- mes l(".:: Ched's Summer 2021 ::.");
+ mes l(".:: Ched's Summer 2022 ::.");
mesc l("June 21st - September 21st");
mes "";
mes l(".:: Chocolate Day ::.");
@@ -799,14 +799,14 @@ function script HallOf2022 {
mesc l("Scheduled: October 1st");
//mes l("No victor appliable.");
mes "";
- mes l(".:: Hasan Scorpion Killing Challenge 2021 ::.");
+ mes l(".:: Hasan Scorpion Killing Challenge 2022 ::.");
mesc l("September 22nd - December 20th");
mes "";
- mes l(".:: Thanksgiving 2021 ::.");
+ mes l(".:: Thanksgiving 2022 ::.");
mesc l("November 1st - November 30th");
//mes l("No victor appliable.");
mes "";
- mes l(".:: Christmas 2021 ::.");
+ mes l(".:: Christmas 2022 ::.");
mesc l("Scheduled: December 19th - January 2nd");
return;
}