summaryrefslogtreecommitdiff
path: root/world/map/npc/009-8
diff options
context:
space:
mode:
Diffstat (limited to 'world/map/npc/009-8')
-rw-r--r--world/map/npc/009-8/_warps.txt15
-rw-r--r--world/map/npc/009-8/celestia.txt137
-rw-r--r--world/map/npc/009-8/mapflags.txt1
3 files changed, 148 insertions, 5 deletions
diff --git a/world/map/npc/009-8/_warps.txt b/world/map/npc/009-8/_warps.txt
index ff75c4ab..e3e8d45c 100644
--- a/world/map/npc/009-8/_warps.txt
+++ b/world/map/npc/009-8/_warps.txt
@@ -1,5 +1,16 @@
// This file is generated automatically. All manually added changes will be removed when running the Converter.
// Chez Celestia warps
-009-8,26,22|warp|-1,-1,009-1,74,50
-009-8,22,34|warp|-1,-1,009-1,72,54
+009-8,26,122|warp|-1,-1,009-1,74,50
+009-8,22,134|warp|-1,-1,009-1,72,54
+009-8,56,55|warp|0,-1,069-2,44,127
+009-8,53,40|warp|-1,-1,069-2,97,127
+009-8,58,40|warp|-1,-1,069-2,116,127
+009-8,79,99|warp|-1,-1,069-2,117,61
+009-8,87,78|warp|-1,-1,069-2,86,61
+009-8,87,56|warp|-1,-1,069-2,55,61
+009-8,79,39|warp|-1,-1,069-2,24,61
+009-8,33,39|warp|-1,-1,069-2,117,30
+009-8,24,56|warp|-1,-1,069-2,86,30
+009-8,24,78|warp|-1,-1,069-2,55,30
+009-8,32,98|warp|-1,-1,069-2,24,30
diff --git a/world/map/npc/009-8/celestia.txt b/world/map/npc/009-8/celestia.txt
index 9aa5ef3a..67aa9366 100644
--- a/world/map/npc/009-8/celestia.txt
+++ b/world/map/npc/009-8/celestia.txt
@@ -16,7 +16,7 @@
// 205 killed 200 yetis
// 206 got reward
-009-8,31,23,0|script|Celestia|144
+009-8,31,123,0|script|Celestia|144
{
callfunc "CelestiaState";
if (getequipid(equip_head) == 4027) // check if yeti mask (4027) is equipped
@@ -294,13 +294,144 @@ function|script|CelestiaState
009-1,74,50,0|script|Celestia Door|32767,0,0
{
- warp "009-8", 26, 23;
+ warp "009-8", 26, 123;
callfunc "CelestiaState";
end;
}
009-1,72,54,0|script|Celestia BackDoor|32767,0,0
{
- warp "009-8", 23, 34;
+ warp "009-8", 23, 134;
callfunc "CelestiaState";
end;
}
+009-8,83,125,0|script|#cont-warp7|32767,0,0
+{
+ warp "009-8", 39, 126;
+ end;
+}
+009-8,40,125,0|script|Celestia Basement|32767,0,0
+{
+ if (countitem(647)||countitem(725)||countitem(1178)||countitem(5131)||countitem(5132)||countitem(5133)||countitem(5134)||countitem(5135)||countitem(5136)||countitem(5137)||countitem(5138)||countitem(5139)||countitem(5140)||(getgmlevel()>=20)||
+ strcharinfo(1) == "Celestia's Tea Party")
+ warp "009-8", 82, 126;
+ if (strcharinfo(1) != "Celestia's Tea Party")
+ sendcollision "009-8", 1, 62, 105, 77, 123;
+ end;
+
+OnPCLoginEvent:
+ if (strcharinfo(1) != "Celestia's Tea Party" && getmap() == "009-8")
+ sendcollision "009-8", 1, 62, 105, 77, 123;
+ end;
+}
+009-8,68,123,0|script|Celestia Interceptor|32767,1,0
+{
+ if (strcharinfo(1) != "Celestia's Tea Party")
+ goto L_Stomp;
+ mapmask 1 | 8;
+ end;
+
+L_Stomp:
+ set Hp, 0;
+ end;
+}
+
+009-8,69,112,0|script|Celestia Mask1|32767,0,0
+{
+ set @cel_dir, 0;
+ end;
+}
+
+009-8,69,113,0|script|Celestia Mask0|32767,0,0
+{
+ if (@cel_dir == 1)
+ mapmask 1 | 4;
+ else
+ mapmask 1 | 8;
+ end;
+
+OnPCLoginEvent:
+ if (getmap() != "009-8" || strcharinfo(1) != "Celestia's Tea Party")
+ end;
+
+ if (POS_Y >= 123)
+ mapmask 1 | 2 | 8;
+ elif (POS_Y >= 113)
+ mapmask 1 | 8;
+ else
+ mapmask 1 | 4;
+ end;
+}
+
+009-8,69,114,0|script|Celestia Mask2|32767,0,0
+{
+ set @cel_dir, 1;
+ end;
+}
+
+// re-apply masks on exit:
+069-2,97,127,0|script|Celestia Mask3|32767,1,0
+{
+ warp "009-8", 53, 41;
+ mapmask 1 | 4;
+ end;
+}
+069-2,116,127,0|script|Celestia Mask4|32767,1,0
+{
+ warp "009-8", 58, 41;
+ mapmask 1 | 4;
+ end;
+}
+069-2,44,127,0|script|Celestia Mask5|32767,2,0
+{
+ warp "009-8", 56, 56;
+ mapmask 1 | 4;
+ end;
+}
+069-2,117,62,0|script|Celestia Mask6|32767,0,0
+{
+ warp "009-8", 79, 100;
+ mapmask 1 | 4;
+ end;
+}
+069-2,86,62,0|script|Celestia Mask7|32767,0,0
+{
+ warp "009-8", 87, 79;
+ mapmask 1 | 4;
+ end;
+}
+069-2,55,62,0|script|Celestia Mask8|32767,0,0
+{
+ warp "009-8", 87, 57;
+ mapmask 1 | 4;
+ end;
+}
+069-2,24,62,0|script|Celestia Mask9|32767,0,0
+{
+ warp "009-8", 79, 40;
+ mapmask 1 | 4;
+ end;
+}
+069-2,117,31,0|script|Celestia Mask10|32767,0,0
+{
+ warp "009-8", 33, 40;
+ mapmask 1 | 4;
+ end;
+}
+069-2,86,31,0|script|Celestia Mask11|32767,0,0
+{
+ warp "009-8", 24, 57;
+ mapmask 1 | 4;
+ end;
+}
+069-2,55,31,0|script|Celestia Mask12|32767,0,0
+{
+ warp "009-8", 24, 79;
+ mapmask 1 | 4;
+ end;
+}
+069-2,24,31,0|script|Celestia Mask13|32767,0,0
+{
+ warp "009-8", 32, 99;
+ mapmask 1 | 4;
+ end;
+}
diff --git a/world/map/npc/009-8/mapflags.txt b/world/map/npc/009-8/mapflags.txt
index 2883b7a4..2c82cbfc 100644
--- a/world/map/npc/009-8/mapflags.txt
+++ b/world/map/npc/009-8/mapflags.txt
@@ -1,2 +1,3 @@
009-8|mapflag|town
009-8|mapflag|resave|009-2,149,43
+009-8|mapflag|mask|11