From 8ac35610a416d3937ccf4b3b74a61622382e8162 Mon Sep 17 00:00:00 2001 From: Jessica Tölke Date: Sun, 9 Jun 2013 20:23:17 +0200 Subject: Add mob limit logic to the 5 pentagram spawns too. --- world/map/npc/012-1/flowerpentagram2.txt | 17 +++++++++++++++++ world/map/npc/017-1/flowerpentagram1.txt | 15 +++++++++++++++ world/map/npc/018-1/flowerpentagram3.txt | 19 +++++++++++++++++++ world/map/npc/055-1/flowerpentagram4.txt | 21 +++++++++++++++++++++ world/map/npc/056-1/flowerpentagram5.txt | 22 +++++++++++++++++++++- 5 files changed, 93 insertions(+), 1 deletion(-) (limited to 'world') 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; } -- cgit v1.2.3-60-g2f50