diff options
Diffstat (limited to 'npc/034-4')
-rw-r--r-- | npc/034-4/_import.txt | 1 | ||||
-rw-r--r-- | npc/034-4/exit.txt | 144 |
2 files changed, 145 insertions, 0 deletions
diff --git a/npc/034-4/_import.txt b/npc/034-4/_import.txt index 07d314849..0cf168dce 100644 --- a/npc/034-4/_import.txt +++ b/npc/034-4/_import.txt @@ -1,2 +1,3 @@ // Map 034-4: Forsaken Inn // This file is generated automatically. All manually added changes will be removed when running the Converter. +"npc/034-4/exit.txt", diff --git a/npc/034-4/exit.txt b/npc/034-4/exit.txt new file mode 100644 index 000000000..f0877bf58 --- /dev/null +++ b/npc/034-4/exit.txt @@ -0,0 +1,144 @@ +// TMW2 scripts. +// Authors: +// Jesusalva +// Description: +// Gemini Sisters Quest - Final Chamber + +034-4,144,82,0 script #GeminiFExit NPC_HIDDEN,0,0,{ + +OnWumpus: + getitem WumpusEgg, 1; + getitem LightGreenDiamond, 1; + end; + +OnTouch: + // if not (quest) end; + // Create maze and populate (From 45x45 to 60x60) + CreateMaze(IOT_CHAR, MAZE_SIZE_M | MAZE_SIZE_G); + .@mx=getmapinfo(MAPINFO_SIZE_X, MAZE_MAP$)-20; + .@my=getmapinfo(MAPINFO_SIZE_Y, MAZE_MAP$)-20; + .@tl=(20-.@mx)*(20-.@my) * 3 / 10; // Total tiles + collision guess + .@tl=.@tl / rand2(10,13) + 1; // Monster density is a bit random + + /* *** Copied from 006-5/groata.txt & 018-2-2/main.txt! *** */ + .@mb[0] = MagicGoblin; + .@mb[1] = CaveMaggot; + array_push(.@mb, BronzeChest); + array_push(.@mb, SmallMagicBif); + array_push(.@mb, Bif); + array_push(.@mb, RobinBandit); + array_push(.@mb, SilverChest); + array_push(.@mb, DustGatling); + array_push(.@mb, MagicBif); + array_push(.@mb, DustRifle); + array_push(.@mb, DustRevolver); + array_push(.@mb, GoldenChest); + array_push(.@mb, GreatMoubooSlime); + array_push(.@mb, Piousse); + array_push(.@mb, ManaPiou); + array_push(.@mb, ForestPiou); + array_push(.@mb, HouseMaggot); + array_push(.@mb, LittleYellowSlime); + array_push(.@mb, MoubooSlime); + array_push(.@mb, SmallFrog); + array_push(.@mb, BigFrog); + array_push(.@mb, Lavern); + array_push(.@mb, LittleRedSlime); + array_push(.@mb, ChocolateSlime); + array_push(.@mb, Duck); + array_push(.@mb, Bat); + array_push(.@mb, CaveMaggot); + array_push(.@mb, ManaGhost); + array_push(.@mb, ManaBug); + array_push(.@mb, FireGoblin); + array_push(.@mb, ViciousSquirrel); + array_push(.@mb, RedScorpion); + array_push(.@mb, WhiteSlime); + array_push(.@mb, AzulSlime); + array_push(.@mb, DesertLogHead); + array_push(.@mb, RedSlime); + array_push(.@mb, DesertBandit); + array_push(.@mb, Sarracenus); + array_push(.@mb, IceMaggot); + array_push(.@mb, VampireBat); + array_push(.@mb, Bandit); + array_push(.@mb, Assassin); + array_push(.@mb, Skeleton); + array_push(.@mb, CaveSnake); + array_push(.@mb, GreenSlime); + array_push(.@mb, CopperSlime); + array_push(.@mb, YellowSlime); + array_push(.@mb, SantaSlime); + array_push(.@mb, LavaSlime); + array_push(.@mb, Bluepar); + array_push(.@mb, DeathCat); + array_push(.@mb, Moggun); + array_push(.@mb, RedMushroom); + array_push(.@mb, CandiedSlime); + array_push(.@mb, OldSnake); + array_push(.@mb, GrassSnake); + array_push(.@mb, Snake); + array_push(.@mb, BlackSlime); + array_push(.@mb, Pollet); + array_push(.@mb, PiouKnight); + array_push(.@mb, Shrewboo); + array_push(.@mb, Wolvern); + array_push(.@mb, FireSkull); + array_push(.@mb, DarkLizard); + array_push(.@mb, ArmoredSkeleton); + array_push(.@mb, BlackScorpion); + array_push(.@mb, ElectroWorm); + array_push(.@mb, EarthFairy); + array_push(.@mb, FireFairy); + array_push(.@mb, WaterFairy); + array_push(.@mb, WindFairy); + array_push(.@mb, PoisonFairy); + array_push(.@mb, MountainSnake); + array_push(.@mb, HoodedNinja); + array_push(.@mb, ForestMushroom); + array_push(.@mb, GoldenScorpion); + array_push(.@mb, FallenGuard2); + array_push(.@mb, WickedMushroom); + array_push(.@mb, Archant); + array_push(.@mb, Scar); + array_push(.@mb, Crafty); + array_push(.@mb, Forain); + array_push(.@mb, GreenDragon); + array_push(.@mb, Michel); + array_push(.@mb, Troll); + array_push(.@mb, EliteDuck); + array_push(.@mb, AzulSkullSlime); + array_push(.@mb, Moonshroom); + array_push(.@mb, RedSkullSlime); + array_push(.@mb, Terranite); + array_push(.@mb, JackO); + array_push(.@mb, BlackMamba); + array_push(.@mb, GreenSkullSlime); + array_push(.@mb, BloodyMouboo); + array_push(.@mb, GoboBear); + array_push(.@mb, TerraniteProtector); + array_push(.@mb, WhirlyBird); + + /* Spawn them and make hostile */ + freeloop(true); + for (.@i = 0; .@i < 1+(.@tl); .@i++) { + .@mid = any_of(.@mb); + .@m=areamonster(MAZE_MAP$, 20, 20, .@mx, .@my, strmobinfo(1, .@mid), .@mid, 1); + set_aggro(.@m); + } + freeloop(false); + + // Spawn & Configure the boss monster + .@mob=areamonster(MAZE_MAP$, 60, 60, .@mx-40, .@my-40, "Wumpus?", PanthomLord, 1, "#GeminiFExit::OnWumpus"); + setunitdata(.@mob, UDT_MAXHP, 175000); + setunitdata(.@mob, UDT_HP, 175000); + setunitdata(.@mob, UDT_SPEED, 275); + setunitdata(.@mob, UDT_HIT, 3500); + setunitdata(.@mob, UDT_DMOTION, 50); + + // Defeating the boss yields a bonus + InitMaze(7200); + dispbottom l("It was a trap! We must escape!"); + end; +} + |