summaryrefslogtreecommitdiff
path: root/world/map/npc
diff options
context:
space:
mode:
Diffstat (limited to 'world/map/npc')
-rw-r--r--world/map/npc/functions/global_event_handler.txt5
-rw-r--r--world/map/npc/items/tmwgift.txt32
-rw-r--r--world/map/npc/scripts.conf1
3 files changed, 38 insertions, 0 deletions
diff --git a/world/map/npc/functions/global_event_handler.txt b/world/map/npc/functions/global_event_handler.txt
index 9e0b495d..987845bb 100644
--- a/world/map/npc/functions/global_event_handler.txt
+++ b/world/map/npc/functions/global_event_handler.txt
@@ -14,6 +14,7 @@ OnPCLoginEvent:
callfunc "DisplayMOTD"; // send the motd to the client, if enabled
callfunc "getBroadcast"; // get the scheduled broadcast, if any
addtimer 0, "Magic Timer::OnLogin"; // prevent cast rate abuse
+ callfunc "MaybeGiveBirthday";
// add more here
set @login_event, 2;
end;
@@ -37,4 +38,8 @@ OnInit:
callfunc "ClearGlobalVars";
callfunc "MOTD"; // set the MOTD array
end;
+
+OnDay0411:
+ callfunc "MaybeAnnounceBirthday";
+ end;
}
diff --git a/world/map/npc/items/tmwgift.txt b/world/map/npc/items/tmwgift.txt
new file mode 100644
index 00000000..ebc3f7b6
--- /dev/null
+++ b/world/map/npc/items/tmwgift.txt
@@ -0,0 +1,32 @@
+function|script|MaybeAnnounceBirthday
+{
+ if (gettime(7) == 2019 && gettime(6) == 4 && gettime(5) == 11)
+ goto L_B15;
+ return;
+
+L_B15:
+ announce "It is TMW's 15th Anniversary! Log out and log back in to [@@https://themanaworld.org/15|receive your present@@]", 0;
+ return;
+}
+
+function|script|MaybeGiveBirthday
+{
+ if ((gettime(7) == 2019) && (gettime(6) == 4) &&
+ ((gettime(5) == 11) || (gettime(5) == 12) || (gettime(5) == 13)) &&
+ #TMW15 == 0)
+ goto L_Give;
+ return;
+
+L_Give:
+ set #TMW15, gettimetick(2);
+ getitem "TMWBirthdayGift", 1;
+ message strcharinfo(0), "Server : ##BIt's TMW's 15th Anniversary! You have [@@https://themanaworld.org/15|received a present@@]!";
+ return;
+}
+
+function|script|TMWBirthdayGift
+{
+ setarray .@gifts$, "RedPresentHat", "GreenPresentHat", "BluePresentHat", "YellowPresentHat";
+ getitem .@gifts$[rand(4)], 1;
+ return;
+}
diff --git a/world/map/npc/scripts.conf b/world/map/npc/scripts.conf
index 1b67d647..5a850bb6 100644
--- a/world/map/npc/scripts.conf
+++ b/world/map/npc/scripts.conf
@@ -46,6 +46,7 @@ npc: npc/items/check_wand.txt
npc: npc/items/mirror.txt
npc: npc/items/rubber_bat.txt
npc: npc/items/scentedcandle.txt
+npc: npc/items/tmwgift.txt
import: npc/_import.txt
// magic