diff options
Diffstat (limited to 'npc/013-3')
-rw-r--r-- | npc/013-3/_import.txt | 0 | ||||
-rw-r--r-- | npc/013-3/_mobs.txt | 2 | ||||
-rw-r--r-- | npc/013-3/_savepoints.txt | 2 | ||||
-rw-r--r-- | npc/013-3/_warps.txt | 2 | ||||
-rwxr-xr-x | npc/013-3/barrier.txt | 27 | ||||
-rwxr-xr-x | npc/013-3/mapflags.txt | 1 | ||||
-rwxr-xr-x | npc/013-3/mask_chest.txt | 218 | ||||
-rwxr-xr-x | npc/013-3/misc.txt | 5 | ||||
-rwxr-xr-x | npc/013-3/sword_chest.txt | 42 |
9 files changed, 299 insertions, 0 deletions
diff --git a/npc/013-3/_import.txt b/npc/013-3/_import.txt new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/npc/013-3/_import.txt diff --git a/npc/013-3/_mobs.txt b/npc/013-3/_mobs.txt new file mode 100644 index 00000000..0ed786f4 --- /dev/null +++ b/npc/013-3/_mobs.txt @@ -0,0 +1,2 @@ +// This file is generated automatically. All manually added changes will be removed when running the Converter. +// Map 013-3: Woodland Hills Cave mobs diff --git a/npc/013-3/_savepoints.txt b/npc/013-3/_savepoints.txt new file mode 100644 index 00000000..4948515a --- /dev/null +++ b/npc/013-3/_savepoints.txt @@ -0,0 +1,2 @@ +// This file is generated automatically. All manually added changes will be removed when running the Converter. +// Map 013-3: Woodland Hills Cave saves diff --git a/npc/013-3/_warps.txt b/npc/013-3/_warps.txt new file mode 100644 index 00000000..8bf23569 --- /dev/null +++ b/npc/013-3/_warps.txt @@ -0,0 +1,2 @@ +// This file is generated automatically. All manually added changes will be removed when running the Converter. +// Map 013-3: Woodland Hills Cave warps diff --git a/npc/013-3/barrier.txt b/npc/013-3/barrier.txt new file mode 100755 index 00000000..aa8a1918 --- /dev/null +++ b/npc/013-3/barrier.txt @@ -0,0 +1,27 @@ + +013-3,71,21,0 script #DemonMineBarrier1#_M NPC32767,1,0,{ + @state = ((QUEST_Hurnscald & NIBBLE_2_MASK) >> NIBBLE_2_SHIFT); + + if (@state >= 2) goto L_End; + if (@state == 1 && countitem("Soul") >= 1) goto L_Has_Soul; + + message strcharinfo(0), "Barrier : ##3A barrier around the opening pushes you back as you approach."; + + warp "013-3", 71, 25; + goto L_End; + +L_Has_Soul: + message strcharinfo(0), "Barrier : ##3The barrier around the opening allows you passage."; + @state = 2; + callsub S_Update_Mask; + delitem "Soul", 1; + goto L_End; + +L_End: + @state = 0; + end; + +S_Update_Mask: + QUEST_Hurnscald = (QUEST_Hurnscald & ~(NIBBLE_2_MASK)) | (@state << NIBBLE_2_SHIFT); + return; +} diff --git a/npc/013-3/mapflags.txt b/npc/013-3/mapflags.txt new file mode 100755 index 00000000..dd1cb4be --- /dev/null +++ b/npc/013-3/mapflags.txt @@ -0,0 +1 @@ +//013-3 mapflag resave 013-1,126,99 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; +} diff --git a/npc/013-3/misc.txt b/npc/013-3/misc.txt new file mode 100755 index 00000000..a955ff44 --- /dev/null +++ b/npc/013-3/misc.txt @@ -0,0 +1,5 @@ + +013-3,127,68,0 script Chest#boring NPC111,{ + mes "You can't see any way to open this chest."; + close; +} diff --git a/npc/013-3/sword_chest.txt b/npc/013-3/sword_chest.txt new file mode 100755 index 00000000..d3ab3ded --- /dev/null +++ b/npc/013-3/sword_chest.txt @@ -0,0 +1,42 @@ + +013-3,177,22,0 script Chest#sword NPC111,{ + if (FLAGS & FLAG_HURNSMINE_CHEST) goto L_Finished; + + mes "[Chest]"; + mes "Would you try to open it?"; + next; + menu + "Yes.", L_Yes, + "No.", L_close; + +L_Yes: + if(countitem("TreasureKey") < 10) + goto L_Not_Enough; + getinventorylist; + if (@inventorylist_count == 100 + && countitem("TreasureKey") > 10) + goto L_TooMany; + delitem "TreasureKey", 10; + getitem "ShortSword", 1; + mes "[Chest]"; + mes "You opened it and found a short sword!"; + FLAGS = FLAGS | FLAG_HURNSMINE_CHEST; + close; + +L_Not_Enough: + mes "It seems that this is not the right key..."; + close; + +L_Finished: + mes "[Chest]"; + mes "You already opened this chest."; + close; + +L_TooMany: + mes "[Chest]"; + mes "You don't have room for what ever is inside. Maybe you should try again later."; + close; + +L_close: + close; +} |