summaryrefslogtreecommitdiff
path: root/world/map/npc
diff options
context:
space:
mode:
Diffstat (limited to 'world/map/npc')
-rw-r--r--world/map/npc/012-1/flowerpentagram2.txt17
-rw-r--r--world/map/npc/017-1/flowerpentagram1.txt15
-rw-r--r--world/map/npc/018-1/flowerpentagram3.txt19
-rw-r--r--world/map/npc/055-1/flowerpentagram4.txt21
-rw-r--r--world/map/npc/056-1/flowerpentagram5.txt22
5 files changed, 93 insertions, 1 deletions
diff --git a/world/map/npc/012-1/flowerpentagram2.txt b/world/map/npc/012-1/flowerpentagram2.txt
index f1dee0fe..688a7639 100644
--- a/world/map/npc/012-1/flowerpentagram2.txt
+++ b/world/map/npc/012-1/flowerpentagram2.txt
@@ -23,6 +23,15 @@ L_SecondFlower:
goto L_Close;
L_Place:
+ set @localMonsterCount,
+ mobcount("012-1.gat", "#FlowerPentagram2::OnSquirrelDeath") +
+ mobcount("012-1.gat", "#FlowerPentagram2::OnMushroomDeath") +
+ mobcount("012-1.gat", "#FlowerPentagram2::OnScorpionDeath") +
+ mobcount("012-1.gat", "#FlowerPentagram2::OnRScorpionDeath") +
+ 4; // the mobcount function has an offset of -1, so we add 4 to have the actual amount of monsters
+ if (@localMonsterCount > 2)
+ goto L_MonstersAlive;
+
if (countitem("PurpleSummonFlower") < 1)
goto L_NoFlower;
delitem "PurpleSummonFlower", 1;
@@ -59,6 +68,13 @@ OnRScorpionDeath:
callfunc "MobPoints";
end;
+L_MonstersAlive:
+ mes "As you get closer to the place, you feel an unnerving presence.";
+ mes "The place has recently been used to summon something! And the beings are still near!";
+ next;
+ mes "You should get rid of them before attempting the summoning yourself.";
+ goto L_Close;
+
L_NoFlower:
mes "You look into your pocket, but the flower isn't there. Where did you put it?";
mes "If you can't find it again, better talk to Orum.";
@@ -75,5 +91,6 @@ L_PlacedFifthFlower:
goto L_Close;
L_Close:
+ set @localMonsterCount, 0;
close;
}
diff --git a/world/map/npc/017-1/flowerpentagram1.txt b/world/map/npc/017-1/flowerpentagram1.txt
index d0cda333..3815b179 100644
--- a/world/map/npc/017-1/flowerpentagram1.txt
+++ b/world/map/npc/017-1/flowerpentagram1.txt
@@ -23,6 +23,13 @@ L_FirstFlower:
goto L_Close;
L_Place:
+ set @localMonsterCount,
+ mobcount("017-1.gat", "#FlowerPentagram1::OnSquirrelDeath") +
+ mobcount("017-1.gat", "#FlowerPentagram1::OnScorpionDeath") +
+ 2; // the mobcount function has an offset of -1, so we add 2 to have the actual amount of monsters
+ if (@localMonsterCount > 2)
+ goto L_MonstersAlive;
+
if (countitem("OrangeSummonFlower") < 1)
goto L_NoFlower;
delitem "OrangeSummonFlower", 1;
@@ -46,6 +53,13 @@ OnScorpionDeath:
callfunc "MobPoints";
end;
+L_MonstersAlive:
+ mes "As you get closer to the place, you feel an unnerving presence.";
+ mes "The place has recently been used to summon something! And the beings are still near!";
+ next;
+ mes "You should get rid of them before attempting the summoning yourself.";
+ goto L_Close;
+
L_NoFlower:
mes "You don't have the flower with you. Where did you put it?";
mes "If you can't find it again, you'll have to tell Orum.";
@@ -62,5 +76,6 @@ L_PlacedFifthFlower:
goto L_Close;
L_Close:
+ set @localMonsterCount, 0;
close;
}
diff --git a/world/map/npc/018-1/flowerpentagram3.txt b/world/map/npc/018-1/flowerpentagram3.txt
index 07195529..6993378b 100644
--- a/world/map/npc/018-1/flowerpentagram3.txt
+++ b/world/map/npc/018-1/flowerpentagram3.txt
@@ -23,6 +23,17 @@ L_ThirdFlower:
goto L_Close;
L_Place:
+ set @localMonsterCount,
+ mobcount("018-1.gat", "#FlowerPentagram3::OnSquirrelDeath") +
+ mobcount("018-1.gat", "#FlowerPentagram3::OnMushroomDeath") +
+ mobcount("018-1.gat", "#FlowerPentagram3::OnBlueparDeath") +
+ mobcount("018-1.gat", "#FlowerPentagram3::OnScorpionDeath") +
+ mobcount("018-1.gat", "#FlowerPentagram3::OnRScorpionDeath") +
+ mobcount("018-1.gat", "#FlowerPentagram3::OnAScorpionDeath") +
+ 6; // the mobcount function has an offset of -1, so we add 6 to have the actual amount of monsters
+ if (@localMonsterCount > 4)
+ goto L_MonstersAlive;
+
if (countitem("WhiteSummonFlower") < 1)
goto L_NoFlower;
delitem "WhiteSummonFlower", 1;
@@ -71,6 +82,13 @@ OnAScorpionDeath:
callfunc "MobPoints";
end;
+L_MonstersAlive:
+ mes "As you get closer to the place, you feel an unnerving presence.";
+ mes "The place has recently been used to summon something! And the beings are still near!";
+ next;
+ mes "You should get rid of them before attempting the summoning yourself.";
+ goto L_Close;
+
L_NoFlower:
mes "You reach into your inventory to take out the flower and place it. But you can't find it!";
mes "Did you loose it somewhere along the way? If you can't find it again, go talk to Orum.";
@@ -87,5 +105,6 @@ L_PlacedFifthFlower:
goto L_Close;
L_Close:
+ set @localMonsterCount, 0;
close;
}
diff --git a/world/map/npc/055-1/flowerpentagram4.txt b/world/map/npc/055-1/flowerpentagram4.txt
index f56a9059..714861ad 100644
--- a/world/map/npc/055-1/flowerpentagram4.txt
+++ b/world/map/npc/055-1/flowerpentagram4.txt
@@ -23,6 +23,19 @@ L_FourthFlower:
goto L_Close;
L_Place:
+ set @localMonsterCount,
+ mobcount("055-1.gat", "#FlowerPentagram4::OnSquirrelDeath") +
+ mobcount("055-1.gat", "#FlowerPentagram4::OnMushroomDeath") +
+ mobcount("055-1.gat", "#FlowerPentagram4::OnBlueparDeath") +
+ mobcount("055-1.gat", "#FlowerPentagram4::OnMoubooDeath") +
+ mobcount("055-1.gat", "#FlowerPentagram4::OnScorpionDeath") +
+ mobcount("055-1.gat", "#FlowerPentagram4::OnRScorpionDeath") +
+ mobcount("055-1.gat", "#FlowerPentagram4::OnAScorpionDeath") +
+ mobcount("055-1.gat", "#FlowerPentagram4::OnBScorpionDeath") +
+ 8; // the mobcount function has an offset of -1, so we add 8 to have the actual amount of monsters
+ if (@localMonsterCount > 4)
+ goto L_MonstersAlive;
+
if (countitem("YellowSummonFlower") < 1)
goto L_NoFlower;
delitem "YellowSummonFlower", 1;
@@ -83,6 +96,13 @@ OnBScorpionDeath:
callfunc "MobPoints";
end;
+L_MonstersAlive:
+ mes "As you get closer to the place, you feel an unnerving presence.";
+ mes "The place has recently been used to summon something! And the beings are still near!";
+ next;
+ mes "You should get rid of them before attempting the summoning yourself.";
+ goto L_Close;
+
L_NoFlower:
mes "You search your belongings for the magical flower. Where is it?";
mes "If you lost it, you should talk to Orum.";
@@ -99,5 +119,6 @@ L_PlacedFifthFlower:
goto L_Close;
L_Close:
+ set @localMonsterCount, 0;
close;
}
diff --git a/world/map/npc/056-1/flowerpentagram5.txt b/world/map/npc/056-1/flowerpentagram5.txt
index 27ba9b91..4650d426 100644
--- a/world/map/npc/056-1/flowerpentagram5.txt
+++ b/world/map/npc/056-1/flowerpentagram5.txt
@@ -1,6 +1,5 @@
// Author: Jenalya
// $@Flower_Pentagram_Time saves the time when the last summoning happened
-// TODO: think whether the 5 spawns of the endpoints also need a moblimit protection
056-1.gat,62,31,0|script|#FlowerPentagram5|400,{
goto L_Place;
@@ -24,6 +23,19 @@ L_FifthFlower:
goto L_Close;
L_Place:
+ set @localMonsterCount,
+ mobcount("013-1.gat", "#FlowerPentagram5::OnSquirrelDeath") +
+ mobcount("013-1.gat", "#FlowerPentagram5::OnMushroomDeath") +
+ mobcount("013-1.gat", "#FlowerPentagram5::OnBlueparDeath") +
+ mobcount("013-1.gat", "#FlowerPentagram5::OnMoubooDeath") +
+ mobcount("013-1.gat", "#FlowerPentagram5::OnScorpionDeath") +
+ mobcount("013-1.gat", "#FlowerPentagram5::OnRScorpionDeath") +
+ mobcount("013-1.gat", "#FlowerPentagram5::OnAScorpionDeath") +
+ mobcount("013-1.gat", "#FlowerPentagram5::OnBScorpionDeath") +
+ 8; // the mobcount function has an offset of -1, so we add 8 to have the actual amount of monsters
+ if (@localMonsterCount > 4)
+ goto L_MonstersAlive;
+
mes "Nervous of what's going to happen, you take the last of the flowers and put it into place.";
next;
mes "Tension builds up around you, much stronger than all the times before. It pressures your head, your nose starts bleeding.";
@@ -104,6 +116,13 @@ L_TooEarly:
mes "You should wait a while until it recovers, or go and search the creatures that got summoned.";
goto L_Close;
+L_MonstersAlive:
+ mes "As you get closer to the place, you feel an unnerving presence.";
+ mes "The place has recently been used to summon something! And the beings are still near!";
+ next;
+ mes "You should get rid of them before attempting the summoning yourself.";
+ goto L_Close;
+
L_NoFlower:
mes "You reach into your pocket, but you can't find the flower! You're so close to completing you task.";
mes "How could you loose the last flower? If you can't get it back, you have to tell Orum.";
@@ -115,5 +134,6 @@ L_PlacedFifthFlower:
goto L_Close;
L_Close:
+ set @localMonsterCount, 0;
close;
}