From cf18ce071c79ae37e14ea38943e0b1d88da70a7b Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 9 Apr 2021 13:33:57 -0300 Subject: Override --- npc/013-3/mask_chest.txt | 218 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 218 insertions(+) create mode 100755 npc/013-3/mask_chest.txt (limited to 'npc/013-3/mask_chest.txt') diff --git a/npc/013-3/mask_chest.txt b/npc/013-3/mask_chest.txt new file mode 100755 index 00000000..7b1edee2 --- /dev/null +++ b/npc/013-3/mask_chest.txt @@ -0,0 +1,218 @@ + +013-3,28,27,0 script Chest#DemonMask NPC111,{ + @state = ((QUEST_Hurnscald & NIBBLE_2_MASK) >> NIBBLE_2_SHIFT); + + if (@state < 2) goto L_NaoDeviaAcontecer; + if (@state == 3) goto L_Finished; + + if (countitem("MaggotSlime") == 0) + goto L_No_maggot_slime; + if (countitem("SmallMushroom") == 0) + goto L_No_mushroom; + if (countitem("PinkPetal") == 0) + goto L_No_pink_petal; + if (countitem("Pearl") == 0) + goto L_No_pearl; + if (countitem("HardSpike") == 0) + goto L_No_hard_spike; + if (countitem("RawLog") == 0) + goto L_No_raw_log; + if (countitem("PinkAntenna") == 0) + goto L_No_pink_antenna; + if (countitem("SnakeTongue") == 0 + || countitem("MountainSnakeTongue") == 0 + || countitem("GrassSnakeTongue") == 0 + || countitem("CaveSnakeTongue") == 0) + goto L_No_tongues; + if (countitem("TreasureKey") == 0) + goto L_No_treasure_key; + if (countitem("PileOfAsh") == 0) + goto L_No_Ash; + if (countitem("MauveHerb") == 0 + || countitem("CobaltHerb") == 0 + || countitem("GambogeHerb") == 0 + || countitem("AlizarinHerb") == 0) + goto L_No_herbs; + if (countitem("BugLeg") == 0) + goto L_No_bug_leg; + if (countitem("CaveSnakeLamp") == 0) + goto L_No_lamp; + if (countitem("IronOre") == 0) + goto L_No_iron_ore; + if (countitem("ScorpionStinger") == 0 + || countitem("RedScorpionStinger") == 0 + || countitem("BlackScorpionStinger") == 0) + goto L_No_stingers; + if (countitem("SilkCocoon") == 0) + goto L_No_silk; + if (countitem("WhiteFur") == 0) + goto L_No_Fur; + if (countitem("DarkCrystal") == 0) + goto L_No_dark_crystal; + if (countitem("BottleOfWater") == 0) + goto L_No_Water; + getinventorylist; + if (@inventorylist_count == 100 + && countitem("MaggotSlime") > 1 + && countitem("BugLeg") > 1 + && countitem("SilkCocoon") > 1 + && countitem("SmallMushroom") > 1 + && countitem("PinkPetal") > 1 + && countitem("Pearl") > 1 + && countitem("HardSpike") > 1 + && countitem("RawLog") > 1 + && countitem("PinkAntenna") > 1 + && countitem("DarkCrystal") > 1 + && countitem("IronOre") > 1 + && countitem("ScorpionStinger") > 1 + && countitem("RedScorpionStinger") > 1 + && countitem("BlackScorpionStinger") > 1 + && countitem("SnakeTongue") > 1 + && countitem("MountainSnakeTongue") > 1 + && countitem("GrassSnakeTongue") > 1 + && countitem("CaveSnakeTongue") > 1 + && countitem("MauveHerb") > 1 + && countitem("CobaltHerb") > 1 + && countitem("GambogeHerb") > 1 + && countitem("AlizarinHerb") > 1 + && countitem("TreasureKey") > 1 + && countitem("CaveSnakeLamp") > 1 + && countitem("PileOfAsh") > 1 + && countitem("WhiteFur") > 1 + && countitem("BottleOfWater") > 1) + goto L_TooMany; + + delitem "MaggotSlime", 1; + delitem "BugLeg", 1; + delitem "SilkCocoon", 1; + delitem "SmallMushroom", 1; + delitem "PinkPetal", 1; + delitem "Pearl", 1; + delitem "HardSpike", 1; + delitem "RawLog", 1; + delitem "PinkAntenna", 1; + delitem "DarkCrystal", 1; + delitem "IronOre", 1; + delitem "ScorpionStinger", 1; + delitem "RedScorpionStinger", 1; + delitem "BlackScorpionStinger", 1; + delitem "SnakeTongue", 1; + delitem "MountainSnakeTongue", 1; + delitem "GrassSnakeTongue", 1; + delitem "CaveSnakeTongue", 1; + delitem "MauveHerb", 1; + delitem "CobaltHerb", 1; + delitem "GambogeHerb", 1; + delitem "AlizarinHerb", 1; + delitem "TreasureKey", 1; + delitem "CaveSnakeLamp", 1; + delitem "WhiteFur", 1; + delitem "PileOfAsh", 1; + delitem "BottleOfWater", 1; + + mes "You managed to perform the ritual and open the chest."; + getitem "DemonMask", 1; + mes "You found a demon mask inside."; + @state = 3; + callsub S_Update_Mask; + goto L_close; + +L_No_maggot_slime: + mes "You do not have any maggot slime."; + goto L_close; + +L_No_mushroom: + mes "You do not have a mushroom, neither big, nor small."; + goto L_close; + +L_No_pink_petal: + mes "You can't seem to find that pink petal you had."; + goto L_close; + +L_No_pearl: + mes "You do not have a pearl, let alone one from the sea."; + goto L_close; + +L_No_hard_spike: + mes "You weren't able to find a hard spike in the stuff you brought."; + goto L_close; + +L_No_raw_log: + mes "You don't have any wood."; + goto L_close; + +L_No_pink_antenna: + mes "You aren't carrying any antenna."; + goto L_close; + +L_No_tongues: + mes "You don't have four different snake tongues."; + goto L_close; + +L_No_treasure_key: + mes "No treasure chest key, no opening ritual."; + goto L_close; + +L_No_Ash: + mes "You still need a pile of ash."; + goto L_close; + +L_No_herbs: + mes "Four different herbs are needed to get this thing open."; + goto L_close; + +L_No_bug_leg: + mes "You do not have part of a bug on you. That is rather odd considering what you went through to get here."; + goto L_close; + +L_No_lamp: + mes "You do not have a lamp. Yet, somehow, you were able to get this far into this dark cave."; + goto L_close; + +L_No_iron_ore: + mes "\"Rock and metal, as one.\" You don't seem to have anything that fits the bill."; + goto L_close; + +L_No_stingers: + mes "Three scorpion deaths are still missing."; + goto L_close; + +L_No_silk: + mes "You could not find the womb for a butterfly among your stuff."; + goto L_close; + +L_No_Fur: + mes "You wonder how you can carry the \"gentle caress of a creature without blemish.\" But you need it to get this thing open."; + goto L_close; + +L_No_dark_crystal: + mes "A piece of darkness is missing."; + goto L_close; + +L_No_Water: + mes "Just one bottle of water and you can start the ritual."; + goto L_close; + +L_NaoDeviaAcontecer: + warp "013-3", 71, 25; + // You need to go through the barrier to get to the chest, so this shouldn't happen. So just warp them like the barrier does. + goto L_close; + +L_Finished: + mes "[Chest]"; + mes "You already opened this chest."; + goto L_close; + +L_TooMany: + mes "[Chest]"; + mes "You don't have room for what ever is inside. Maybe you should try again later."; + goto L_close; + +L_close: + @state = 0; + close; + +S_Update_Mask: + QUEST_Hurnscald = (QUEST_Hurnscald & ~(NIBBLE_2_MASK)) | (@state << NIBBLE_2_SHIFT); + return; +} -- cgit v1.2.3-60-g2f50