summaryrefslogtreecommitdiff
path: root/npc/027-1
diff options
context:
space:
mode:
Diffstat (limited to 'npc/027-1')
-rw-r--r--npc/027-1/_import.txt8
-rw-r--r--npc/027-1/_mobs.txt66
-rw-r--r--npc/027-1/_warps.txt5
-rw-r--r--npc/027-1/golbenez.txt36
-rw-r--r--npc/027-1/graves.txt92
-rw-r--r--npc/027-1/monsters.txt61
6 files changed, 268 insertions, 0 deletions
diff --git a/npc/027-1/_import.txt b/npc/027-1/_import.txt
new file mode 100644
index 00000000..14fc594e
--- /dev/null
+++ b/npc/027-1/_import.txt
@@ -0,0 +1,8 @@
+// Map 027-1: Graveyard
+// This file is generated automatically. All manually changes will be removed when running the Converter.
+map: 027-1.gat
+npc: npc/027-1/_mobs.txt
+npc: npc/027-1/_warps.txt
+npc: npc/027-1/golbenez.txt
+npc: npc/027-1/graves.txt
+npc: npc/027-1/monsters.txt
diff --git a/npc/027-1/_mobs.txt b/npc/027-1/_mobs.txt
new file mode 100644
index 00000000..e7eac33a
--- /dev/null
+++ b/npc/027-1/_mobs.txt
@@ -0,0 +1,66 @@
+// This file is generated automatically. All manually changes will be removed when running the Converter.
+// Graveyard mobs
+
+027-1.gat,81,91,95,27 monster Poltergeist 1047,4,900000,60000,Mob027-1::On1047
+027-1.gat,81,91,97,25 monster Spectre 1042,4,900000,60000,Mob027-1::On1042
+027-1.gat,81,91,99,23 monster Wisp 1040,4,900000,60000,Mob027-1::On1040
+027-1.gat,54,53,66,46 monster FireSkull 1023,2,60000,20000,Mob027-1::On1023
+027-1.gat,54,53,66,46 monster PoisonSkull 1024,1,60000,20000,Mob027-1::On1024
+027-1.gat,54,53,66,46 monster Skeleton 1043,2,60000,8000,Mob027-1::On1043
+027-1.gat,54,53,66,46 monster LadySkeleton 1044,2,60000,8000,Mob027-1::On1044
+027-1.gat,71,41,31,22 monster Skeleton 1043,2,175000,20000,Mob027-1::On1043
+027-1.gat,71,41,31,22 monster LadySkeleton 1044,2,175000,20000,Mob027-1::On1044
+027-1.gat,37,41,33,22 monster FireSkull 1023,2,200000,10000,Mob027-1::On1023
+027-1.gat,37,41,33,22 monster PoisonSkull 1024,2,200000,10000,Mob027-1::On1024
+027-1.gat,37,41,33,22 monster Skeleton 1043,4,180000,20000,Mob027-1::On1043
+027-1.gat,37,41,33,22 monster LadySkeleton 1044,4,180000,20000,Mob027-1::On1044
+027-1.gat,105,40,32,21 monster Fire skull 1023,1,28000,25000,Mob027-1::On1023
+027-1.gat,105,40,32,21 monster Poison skull 1024,1,30000,20000,Mob027-1::On1024
+027-1.gat,105,40,32,21 monster Skeleton 1043,2,35000,20000,Mob027-1::On1043
+027-1.gat,105,40,32,21 monster LadySkeleton 1044,3,33000,25000,Mob027-1::On1044
+027-1.gat,28,67,2,1 monster Jack O 1022,1,265000,200000,Mob027-1::On1022
+
+
+027-1.gat,0,0,0 script Mob027-1 -1,{
+On1022:
+ set @mobID, 1022;
+ callfunc "MobPoints";
+ break;
+
+On1023:
+ set @mobID, 1023;
+ callfunc "MobPoints";
+ break;
+
+On1024:
+ set @mobID, 1024;
+ callfunc "MobPoints";
+ break;
+
+On1040:
+ set @mobID, 1040;
+ callfunc "MobPoints";
+ break;
+
+On1042:
+ set @mobID, 1042;
+ callfunc "MobPoints";
+ break;
+
+On1043:
+ set @mobID, 1043;
+ callfunc "MobPoints";
+ break;
+
+On1044:
+ set @mobID, 1044;
+ callfunc "MobPoints";
+ break;
+
+On1047:
+ set @mobID, 1047;
+ callfunc "MobPoints";
+ break;
+
+ end;
+}
diff --git a/npc/027-1/_warps.txt b/npc/027-1/_warps.txt
new file mode 100644
index 00000000..b8f1991e
--- /dev/null
+++ b/npc/027-1/_warps.txt
@@ -0,0 +1,5 @@
+// This file is generated automatically. All manually changes will be removed when running the Converter.
+// Graveyard warps
+
+027-1.gat,88,84 warp toCaretaker's -1,-1,027-2.gat,26,32
+027-1.gat,63,106 warp toSwamp -1,-1,026-1.gat,63,17
diff --git a/npc/027-1/golbenez.txt b/npc/027-1/golbenez.txt
new file mode 100644
index 00000000..336cdea3
--- /dev/null
+++ b/npc/027-1/golbenez.txt
@@ -0,0 +1,36 @@
+027-1.gat,68,89,0 script #Golbenez#_M 204,{
+
+ set @fee, 666;
+
+ mes "[Golbenez]";
+ mes "\"Welcome mortal. I finished the creation of the place of leisure.\"";
+ next;
+ if (baselevel < 60) goto L_Weak;
+ mes "\"I will bring you there for a small fee of " + @fee + "GP.\"";
+ menu
+ "What? You already got so much money!",-,
+ "Ok, bring me there.",L_Warp;
+
+ mes "[Golbenez]";
+ mes "\"Come back when you've changed your mind. It's a wonderful place.\"";
+ close;
+
+L_Warp:
+ if (zeny < @fee) goto L_No_Money;
+ set zeny, zeny - @fee;
+ warp "027-2.gat", 105, 44;
+ close;
+
+L_No_Money:
+ mes "[Golbenez]";
+ mes "\"Don't try to betray me, pitiful human.\"";
+ next;
+ mes "\"Come back when you can pay my service.\"";
+ close;
+
+L_Weak:
+ mes "\"It is astonishing how WEAK you humans can be.\"";
+ next;
+ mes "\"Come back when you're a bit more experienced.\"";
+ close;
+}
diff --git a/npc/027-1/graves.txt b/npc/027-1/graves.txt
new file mode 100644
index 00000000..ecda6ea0
--- /dev/null
+++ b/npc/027-1/graves.txt
@@ -0,0 +1,92 @@
+// Easter egg graves
+
+function script GraveTooFar {
+ if (isin("027-1.gat",89,54,122,76))
+ return;
+ mes "You are too far away to read the grave.";
+ close;
+}
+
+027-1.gat,89,62,0 script Grave 127,{
+ callfunc "GraveTooFar";
+ mes "~ FotherJ ~";
+ mes "The mad sprite making genius who made all the creepy undead monster graphics.";
+ close;
+}
+
+027-1.gat,118,54,0 script Grave 127,{
+ callfunc "GraveTooFar";
+ mes "~ Yosuhara ~";
+ mes "Contributed some of the tombstones.";
+ close;
+}
+
+027-1.gat,111,62,0 script Grave 127,{
+ callfunc "GraveTooFar";
+ mes "~ Feline Monstrosity ~";
+ mes "Made the background music you are hearing.";
+ close;
+}
+
+027-1.gat,112,76,0 script Grave 127,{
+ callfunc "GraveTooFar";
+ mes "~ Superkoop ~";
+ mes "Mapped the swamp to the south.";
+ close;
+}
+
+027-1.gat,120,76,0 script Grave 127,{
+ callfunc "GraveTooFar";
+ mes "~ Aroleon ~";
+ mes "Mapped the swamp to the southeast.";
+ close;
+}
+
+027-1.gat,100,68,0 script Grave 127,{
+ callfunc "GraveTooFar";
+ mes "~ John P ~";
+ mes "Wrote the graveyard backstory and the dialog for the caretaker quest.";
+ close;
+}
+
+027-1.gat,94,70,0 script Grave 127,{
+ callfunc "GraveTooFar";
+ mes "~ Spit23 ~";
+ mes "Made those freakin awesome cemetery gates.";
+ close;
+}
+
+027-1.gat,106,60,0 script Grave 127,{
+ callfunc "GraveTooFar";
+ mes "~ Black Don ~";
+ mes "Contributed those cool gargoyle statues.";
+ close;
+}
+
+027-1.gat,92,54,0 script Grave 127,{
+ callfunc "GraveTooFar";
+ mes "~ Jaxad0127 ~";
+ mes "Did all the scripting work for the graveyard. Made Caretaker's house.";
+ close;
+}
+
+027-1.gat,122,64,0 script Grave 127,{
+ callfunc "GraveTooFar";
+ mes "~ Ces Vargavind ~";
+ mes "Scripted caretaker's daughter.";
+ close;
+}
+
+027-1.gat,102,62,0 script Grave 127,{
+ callfunc "GraveTooFar";
+ mes "~ Crush ~";
+ mes "Organizer of the whole graveyard project, graveyard fence graphics, mapping of the graveyard itself.";
+ close;
+}
+
+027-1.gat,104,76,0 script Grave 127,{
+ callfunc "GraveTooFar";
+ mes "~ Freeyorp ~";
+ mes "Planned out monster stats and placements.";
+ close;
+}
diff --git a/npc/027-1/monsters.txt b/npc/027-1/monsters.txt
new file mode 100644
index 00000000..0efe43c4
--- /dev/null
+++ b/npc/027-1/monsters.txt
@@ -0,0 +1,61 @@
+// 027-1 Graveyard zombies and fallens
+// they need to be in an extra file because of the crying child quest
+
+027-1.gat,71,41,31,22 monster Zombie 1036,2,300000,120000,specialMob027-1::On1036
+027-1.gat,37,41,33,22 monster Zombie 1036,2,200000,10000,specialMob027-1::On1036
+027-1.gat,37,65,33,22 monster Zombie 1036,3,140000,30000,specialMob027-1::On1036
+027-1.gat,37,65,33,22 monster Fallen 1045,3,120000,30000,specialMob027-1::On1045
+
+027-1.gat,0,0,0 script specialMob027-1 -1,{
+On1036:
+ set @mobID, 1036;
+ callsub _MOBCOUNT_ZOMBIES;
+ callfunc "MobPoints";
+ break;
+
+On1045:
+ set @mobID, 1045;
+ callsub _MOBCOUNT_FALLENS;
+ callfunc "MobPoints";
+ break;
+
+_MOBCOUNT_ZOMBIES:
+
+ set @Graveyard_Inn_MASK, NIBBLE_2_MASK;
+ set @Graveyard_Inn_SHIFT, NIBBLE_2_SHIFT;
+
+ set @state, ((QUEST_Graveyard_Inn & @Graveyard_Inn_MASK) >> @Graveyard_Inn_SHIFT);
+
+ if (@state != 1) return;
+ set @ring, @ring + 1;
+ if (@ring < 10) return;
+ if (rand(8) != 0) return;
+ message strcharinfo(0), "You found a ring hidden in the zombie's rotten rags. Maybe this is what Aldred was looking for...";
+ set @state, 2;
+ callsub S_Update_Mask;
+ return;
+
+_MOBCOUNT_FALLENS:
+
+ set @Graveyard_Inn_MASK, NIBBLE_2_MASK;
+ set @Graveyard_Inn_SHIFT, NIBBLE_2_SHIFT;
+
+ set @state, ((QUEST_Graveyard_Inn & @Graveyard_Inn_MASK) >> @Graveyard_Inn_SHIFT);
+
+ if (@state != 1) return;
+ set @ring, @ring + 1;
+ if (@ring < 10) return;
+ if (rand(8) != 0) return;
+ message strcharinfo(0), "You found a ring inside the fallen's broken helmet. Maybe this is what Aldred was looking for...";
+ set @state, 2;
+ callsub S_Update_Mask;
+ return;
+
+S_Update_Mask:
+ set QUEST_Graveyard_Inn,
+ (QUEST_Graveyard_Inn & ~(@Graveyard_Inn_MASK))
+ | (@state << @Graveyard_Inn_SHIFT);
+ return;
+
+ end;
+}