From 1195ea1eb880ca9c77f2471e036d8bb8009fd70d Mon Sep 17 00:00:00 2001 From: Jared Adams Date: Wed, 19 Nov 2008 13:38:20 +0000 Subject: Change all script folders Script files fixes are comming --- conf/map_athena.conf | 322 +---- conf/map_local.conf.example | 11 - data/new_1-1.wlk | Bin 17412 -> 0 bytes data/new_10-1.wlk | Bin 17668 -> 0 bytes data/new_11-1.wlk | Bin 18948 -> 0 bytes data/new_12-1.wlk | Bin 6404 -> 0 bytes data/new_13-1.wlk | Bin 16004 -> 0 bytes data/new_14-1.wlk | Bin 18004 -> 0 bytes data/new_15-1.wlk | Bin 26224 -> 0 bytes data/new_16-1.wlk | Bin 17860 -> 0 bytes data/new_17-1.wlk | Bin 22504 -> 0 bytes data/new_18-1.wlk | Bin 18484 -> 0 bytes data/new_19-1.wlk | Bin 8779 -> 0 bytes data/new_2-1.wlk | Bin 16388 -> 0 bytes data/new_20-1.wlk | Bin 24004 -> 0 bytes data/new_21-1.wlk | Bin 10004 -> 0 bytes data/new_22-1.wlk | Bin 13924 -> 0 bytes data/new_23-1.wlk | Bin 11774 -> 0 bytes data/new_24-1.wlk | Bin 22504 -> 0 bytes data/new_25-1.wlk | Bin 22504 -> 0 bytes data/new_26-1.wlk | Bin 28228 -> 0 bytes data/new_27-1.wlk | Bin 109204 -> 0 bytes data/new_28-1.wlk | Bin 19100 -> 0 bytes data/new_29-1.wlk | Bin 16804 -> 0 bytes data/new_3-1.wlk | Bin 19042 -> 0 bytes data/new_30-1.wlk | Bin 28004 -> 0 bytes data/new_31-1.wlk | Bin 16804 -> 0 bytes data/new_32-1.wlk | Bin 16804 -> 0 bytes data/new_33-1.wlk | Bin 19100 -> 0 bytes data/new_34-1.wlk | Bin 15565 -> 0 bytes data/new_35-1.wlk | Bin 30204 -> 0 bytes data/new_36-1.wlk | Bin 5548 -> 0 bytes data/new_37-1.wlk | Bin 24004 -> 0 bytes data/new_38-1.wlk | Bin 10224 -> 0 bytes data/new_4-1.wlk | Bin 3604 -> 0 bytes data/new_5-1.wlk | Bin 16388 -> 0 bytes data/new_6-1.wlk | Bin 22504 -> 0 bytes data/new_7-1.wlk | Bin 26004 -> 0 bytes data/new_8-1.wlk | Bin 16004 -> 0 bytes data/new_9-1.wlk | Bin 19100 -> 0 bytes data/resnametable.txt | 80 +- npc/001-1_Tulimshar/_import.txt | 22 + npc/001-1_Tulimshar/_mobs.txt | 7 + npc/001-1_Tulimshar/_warps.txt | 5 + npc/001-1_Tulimshar/banker.txt | 4 + npc/001-1_Tulimshar/barber.txt | 9 + npc/001-1_Tulimshar/bard.txt | 10 + npc/001-1_Tulimshar/bleacher.txt | 126 ++ npc/001-1_Tulimshar/children.txt | 105 ++ npc/001-1_Tulimshar/constable.txt | 7 + npc/001-1_Tulimshar/elanore.txt | 90 ++ npc/001-1_Tulimshar/guards.txt | 74 ++ npc/001-1_Tulimshar/guide.txt | 162 +++ npc/001-1_Tulimshar/man.txt | 22 + npc/001-1_Tulimshar/merchant.txt | 1 + npc/001-1_Tulimshar/monster_guide.txt | 35 + npc/001-1_Tulimshar/monsters.txt | 26 + npc/001-1_Tulimshar/rewards_master.txt | 87 ++ npc/001-1_Tulimshar/rules.txt | 7 + npc/001-1_Tulimshar/sandra.txt | 81 ++ npc/001-1_Tulimshar/soul-menhir.txt | 6 + npc/001-1_Tulimshar/vincent.txt | 102 ++ npc/001-1_Tulimshar/workers.txt | 13 + npc/001-2_Tulimshar/_import.txt | 8 + npc/001-2_Tulimshar/_mobs.txt | 7 + npc/001-2_Tulimshar/_warps.txt | 13 + npc/001-2_Tulimshar/casino.txt | 172 +++ npc/001-2_Tulimshar/omar.txt | 6 + npc/001-2_Tulimshar/phaet.txt | 30 + npc/001-2_Tulimshar/shops.txt | 9 + npc/001-2_Tulimshar/troupe_leader.txt | 43 + npc/001-3_Tulimshar_arena/_import.txt | 6 + npc/001-3_Tulimshar_arena/_mobs.txt | 7 + npc/001-3_Tulimshar_arena/_warps.txt | 3 + npc/001-3_Tulimshar_arena/guards.txt | 28 + npc/001-3_Tulimshar_arena/monsters.txt | 14 + npc/001-3_Tulimshar_arena/pvpflag.txt | 1 + npc/002-1_Sandstorm/_import.txt | 8 + npc/002-1_Sandstorm/_mobs.txt | 13 + npc/002-1_Sandstorm/_warps.txt | 7 + npc/002-1_Sandstorm/dark_mage.txt | 46 + npc/002-1_Sandstorm/merchant.txt | 1 + npc/002-1_Sandstorm/monsters.txt | 24 + npc/002-1_Sandstorm/nomads.txt | 14 + npc/002-1_Sandstorm/rogue.txt | 84 ++ npc/002-3_Desert_mines/_import.txt | 4 + npc/002-3_Desert_mines/_mobs.txt | 19 + npc/002-3_Desert_mines/_warps.txt | 4 + npc/002-3_Desert_mines/miners.txt | 39 + npc/002-4_Desert_mines/_import.txt | 5 + npc/002-4_Desert_mines/_mobs.txt | 19 + npc/002-4_Desert_mines/_warps.txt | 3 + npc/002-4_Desert_mines/chest.txt | 31 + npc/002-4_Desert_mines/monsters.txt | 20 + npc/003-1_Beach/_import.txt | 4 + npc/003-1_Beach/_mobs.txt | 19 + npc/003-1_Beach/_warps.txt | 4 + npc/003-1_Beach/monsters.txt | 20 + npc/004-1_Beach/_import.txt | 4 + npc/004-1_Beach/_mobs.txt | 7 + npc/004-1_Beach/_warps.txt | 4 + npc/004-1_Beach/monsters.txt | 26 + npc/005-1_Snake_desert/_import.txt | 5 + npc/005-1_Snake_desert/_mobs.txt | 19 + npc/005-1_Snake_desert/_warps.txt | 18 + npc/005-1_Snake_desert/monsters.txt | 20 + npc/005-1_Snake_desert/npcs.txt | 17 + npc/005-3_Snake_pit/_import.txt | 4 + npc/005-3_Snake_pit/_mobs.txt | 7 + npc/005-3_Snake_pit/_warps.txt | 4 + npc/005-3_Snake_pit/monsters.txt | 14 + npc/006-1_Desert_mountains/_import.txt | 6 + npc/006-1_Desert_mountains/_mobs.txt | 7 + npc/006-1_Desert_mountains/_warps.txt | 34 + npc/006-1_Desert_mountains/mika.txt | 8 + npc/006-1_Desert_mountains/monsters.txt | 14 + npc/006-1_Desert_mountains/pachua.txt | 194 ++++ npc/006-3_Desert_mountain_caves/_import.txt | 4 + npc/006-3_Desert_mountain_caves/_mobs.txt | 7 + npc/006-3_Desert_mountain_caves/_warps.txt | 20 + npc/006-3_Desert_mountain_caves/monsters.txt | 14 + npc/007-1_Woodland/_import.txt | 4 + npc/007-1_Woodland/_mobs.txt | 19 + npc/007-1_Woodland/_warps.txt | 6 + npc/007-1_Woodland/monsters.txt | 35 + npc/008-1_Hurnscald_outskirts/_import.txt | 6 + npc/008-1_Hurnscald_outskirts/_mobs.txt | 7 + npc/008-1_Hurnscald_outskirts/_warps.txt | 10 + npc/008-1_Hurnscald_outskirts/george.txt | 25 + npc/008-1_Hurnscald_outskirts/hinnak.txt | 100 ++ npc/008-1_Hurnscald_outskirts/monsters.txt | 34 + npc/009-1_Hurnscald/_import.txt | 9 + npc/009-1_Hurnscald/_mobs.txt | 7 + npc/009-1_Hurnscald/_warps.txt | 13 + npc/009-1_Hurnscald/jack.txt | 252 ++++ npc/009-1_Hurnscald/milly.txt | 25 + npc/009-1_Hurnscald/old_man.txt | 34 + npc/009-1_Hurnscald/old_woman.txt | 56 + npc/009-1_Hurnscald/sabine.txt | 26 + npc/009-1_Hurnscald/soul-menhir.txt | 8 + npc/009-2_Hurnscald/_import.txt | 15 + npc/009-2_Hurnscald/_mobs.txt | 7 + npc/009-2_Hurnscald/_warps.txt | 20 + npc/009-2_Hurnscald/alan.txt | 211 ++++ npc/009-2_Hurnscald/doctor.txt | 67 ++ npc/009-2_Hurnscald/drunks.txt | 16 + npc/009-2_Hurnscald/inspector.txt | 127 ++ npc/009-2_Hurnscald/kfahr.txt | 1224 ++++++++++++++++++++ npc/009-2_Hurnscald/misc.txt | 11 + npc/009-2_Hurnscald/nicholas.txt | 404 +++++++ npc/009-2_Hurnscald/nurse.txt | 48 + npc/009-2_Hurnscald/richard.txt | 6 + npc/009-2_Hurnscald/selim.txt | 139 +++ npc/009-2_Hurnscald/shops.txt | 34 + npc/009-2_Hurnscald/waitress.txt | 51 + npc/009-3_Cave_beneath_Hurnscald/_import.txt | 4 + npc/009-3_Cave_beneath_Hurnscald/_mobs.txt | 7 + npc/009-3_Cave_beneath_Hurnscald/_warps.txt | 6 + npc/009-3_Cave_beneath_Hurnscald/monsters.txt | 26 + npc/010-1_Woodland/_import.txt | 4 + npc/010-1_Woodland/_mobs.txt | 19 + npc/010-1_Woodland/_warps.txt | 7 + npc/010-1_Woodland/monsters.txt | 40 + npc/010-2_Dimond's_Cove/_import.txt | 7 + npc/010-2_Dimond's_Cove/_mobs.txt | 7 + npc/010-2_Dimond's_Cove/_warps.txt | 9 + npc/010-2_Dimond's_Cove/dimonds.txt | 130 +++ npc/010-2_Dimond's_Cove/doug.txt | 101 ++ npc/010-2_Dimond's_Cove/loratay.txt | 632 ++++++++++ npc/010-2_Dimond's_Cove/workers.txt | 11 + npc/011-1_Woodland/_import.txt | 6 + npc/011-1_Woodland/_mobs.txt | 7 + npc/011-1_Woodland/_warps.txt | 7 + npc/011-1_Woodland/alchemist.txt | 717 ++++++++++++ npc/011-1_Woodland/monsters.txt | 34 + npc/011-1_Woodland/oscar.txt | 1 + npc/011-3_Hermit's_cave/_import.txt | 5 + npc/011-3_Hermit's_cave/_mobs.txt | 7 + npc/011-3_Hermit's_cave/_warps.txt | 3 + npc/011-3_Hermit's_cave/hermit.txt | 16 + npc/011-3_Hermit's_cave/monsters.txt | 21 + npc/011-4_Lake_cave/_import.txt | 4 + npc/011-4_Lake_cave/_mobs.txt | 19 + npc/011-4_Lake_cave/_warps.txt | 4 + npc/011-4_Lake_cave/monsters.txt | 20 + npc/012-1_Woodland_Hills/_import.txt | 5 + npc/012-1_Woodland_Hills/_mobs.txt | 7 + npc/012-1_Woodland_Hills/_warps.txt | 12 + npc/012-1_Woodland_Hills/monsters.txt | 52 + npc/012-1_Woodland_Hills/shops.txt | 3 + npc/012-3_Cave/_import.txt | 4 + npc/012-3_Cave/_mobs.txt | 7 + npc/012-3_Cave/_warps.txt | 11 + npc/012-3_Cave/monsters.txt | 20 + npc/013-1_Woodland_hills/_import.txt | 4 + npc/013-1_Woodland_hills/_mobs.txt | 7 + npc/013-1_Woodland_hills/_warps.txt | 6 + npc/013-1_Woodland_hills/monsters.txt | 63 + npc/013-2_Magic_house/_import.txt | 6 + npc/013-2_Magic_house/_mobs.txt | 7 + npc/013-2_Magic_house/_warps.txt | 5 + npc/013-2_Magic_house/apprentice.txt | 58 + npc/013-2_Magic_house/notes.txt | 102 ++ npc/013-2_Magic_house/wizard.txt | 25 + npc/013-3_Cave/_import.txt | 3 + npc/013-3_Cave/_mobs.txt | 7 + npc/013-3_Cave/_warps.txt | 29 + npc/014-1_Woodland/_import.txt | 6 + npc/014-1_Woodland/_mobs.txt | 7 + npc/014-1_Woodland/_warps.txt | 5 + npc/014-1_Woodland/monsters.txt | 69 ++ npc/014-1_Woodland/taro.txt | 74 ++ npc/014-1_Woodland/wedding-officiator.txt | 246 ++++ npc/014-3_Cave/_import.txt | 4 + npc/014-3_Cave/_mobs.txt | 7 + npc/014-3_Cave/_warps.txt | 6 + npc/014-3_Cave/monsters.txt | 14 + npc/015-1_Woodland/_import.txt | 5 + npc/015-1_Woodland/_mobs.txt | 7 + npc/015-1_Woodland/_warps.txt | 3 + npc/015-1_Woodland/alice.txt | 46 + npc/015-1_Woodland/monsters.txt | 46 + npc/016-1_Woodland/_import.txt | 4 + npc/016-1_Woodland/_mobs.txt | 7 + npc/016-1_Woodland/_warps.txt | 3 + npc/016-1_Woodland/monsters.txt | 40 + npc/017-1_Woodland_hills/_import.txt | 4 + npc/017-1_Woodland_hills/_mobs.txt | 7 + npc/017-1_Woodland_hills/_warps.txt | 3 + npc/017-1_Woodland_hills/monsters.txt | 76 ++ npc/018-1_Woodland_mining_camp/_import.txt | 5 + npc/018-1_Woodland_mining_camp/_mobs.txt | 104 ++ npc/018-1_Woodland_mining_camp/_warps.txt | 17 + npc/018-1_Woodland_mining_camp/miners.txt | 6 + npc/018-1_Woodland_mining_camp/monsters.txt | 39 + npc/018-2_Woodland_minning_camp/_import.txt | 9 + npc/018-2_Woodland_minning_camp/_mobs.txt | 13 + npc/018-2_Woodland_minning_camp/_warps.txt | 9 + npc/018-2_Woodland_minning_camp/angus.txt | 19 + npc/018-2_Woodland_minning_camp/books.txt | 18 + npc/018-2_Woodland_minning_camp/caul.txt | 479 ++++++++ npc/018-2_Woodland_minning_camp/miners.txt | 15 + npc/018-2_Woodland_minning_camp/monsters.txt | 14 + npc/018-2_Woodland_minning_camp/receptionist.txt | 65 ++ npc/018-3_Cave/_import.txt | 3 + npc/018-3_Cave/_mobs.txt | 7 + npc/018-3_Cave/_warps.txt | 23 + npc/019-1_Snow_field/_import.txt | 7 + npc/019-1_Snow_field/_mobs.txt | 7 + npc/019-1_Snow_field/_warps.txt | 3 + npc/019-1_Snow_field/monsters.txt | 20 + npc/019-1_Snow_field/santa.txt | 50 + npc/019-1_Snow_field/snowman.txt | 52 + npc/019-1_Snow_field/taro.txt | 73 ++ npc/020-1/_import.txt | 8 + npc/020-1/_mobs.txt | 7 + npc/020-1/_warps.txt | 9 + npc/020-1/amrak.txt | 17 + npc/020-1/monsters.txt | 14 + npc/020-1/sexchanger.txt | 27 + npc/020-1/soul-menhir.txt | 6 + npc/020-1/startrek.txt | 18 + npc/020-2/_import.txt | 5 + npc/020-2/_mobs.txt | 7 + npc/020-2/_warps.txt | 7 + npc/020-2/furquest.txt | 329 ++++++ npc/020-2/shops.txt | 19 + npc/020-3_Ice_cave/_import.txt | 4 + npc/020-3_Ice_cave/_mobs.txt | 19 + npc/020-3_Ice_cave/_warps.txt | 4 + npc/020-3_Ice_cave/monsters.txt | 20 + npc/020-4_Ice_cave/_import.txt | 4 + npc/020-4_Ice_cave/_mobs.txt | 7 + npc/020-4_Ice_cave/_warps.txt | 3 + npc/020-4_Ice_cave/monsters.txt | 20 + npc/021-1_Tulimshar/_import.txt | 3 + npc/021-1_Tulimshar/_mobs.txt | 7 + npc/021-1_Tulimshar/_warps.txt | 2 + npc/_import.txt | 41 + npc/new_1-1-western-desert/dark_mage.txt | 46 - npc/new_1-1-western-desert/merchant.txt | 1 - npc/new_1-1-western-desert/monsters.txt | 24 - npc/new_1-1-western-desert/nomads.txt | 14 - npc/new_1-1-western-desert/passages.txt | 5 - npc/new_1-1-western-desert/rogue.txt | 84 -- npc/new_10-1-xmas/monsters.txt | 20 - npc/new_10-1-xmas/passages.txt | 1 - npc/new_10-1-xmas/santa.txt | 50 - npc/new_10-1-xmas/snowman.txt | 52 - npc/new_10-1-xmas/taro.txt | 73 -- npc/new_10-1-xmas/xmas1.txt | 246 ---- npc/new_10-1-xmas/xmas10.txt | 243 ---- npc/new_10-1-xmas/xmas11.txt | 246 ---- npc/new_10-1-xmas/xmas12.txt | 246 ---- npc/new_10-1-xmas/xmas13.txt | 246 ---- npc/new_10-1-xmas/xmas14.txt | 246 ---- npc/new_10-1-xmas/xmas15.txt | 246 ---- npc/new_10-1-xmas/xmas16.txt | 246 ---- npc/new_10-1-xmas/xmas17.txt | 246 ---- npc/new_10-1-xmas/xmas18.txt | 246 ---- npc/new_10-1-xmas/xmas19.txt | 246 ---- npc/new_10-1-xmas/xmas2.txt | 246 ---- npc/new_10-1-xmas/xmas20.txt | 246 ---- npc/new_10-1-xmas/xmas3.txt | 246 ---- npc/new_10-1-xmas/xmas4.txt | 246 ---- npc/new_10-1-xmas/xmas5.txt | 246 ---- npc/new_10-1-xmas/xmas6.txt | 246 ---- npc/new_10-1-xmas/xmas7.txt | 246 ---- npc/new_10-1-xmas/xmas8.txt | 246 ---- npc/new_10-1-xmas/xmas9.txt | 246 ---- npc/new_11-1-snow-village/amrak.txt | 17 - npc/new_11-1-snow-village/monsters.txt | 14 - npc/new_11-1-snow-village/passages.txt | 13 - npc/new_11-1-snow-village/sexchanger.txt | 27 - npc/new_11-1-snow-village/soul-menhir.txt | 6 - npc/new_11-1-snow-village/startrek.txt | 18 - npc/new_12-1-ice-cave/monsters.txt | 20 - npc/new_12-1-ice-cave/passages.txt | 2 - npc/new_13-1-snow-village-shops/furquest.txt | 329 ------ npc/new_13-1-snow-village-shops/passages.txt | 10 - npc/new_13-1-snow-village-shops/shops.txt | 19 - npc/new_14-1-south-woodland/monsters.txt | 40 - npc/new_14-1-south-woodland/passages.txt | 4 - npc/new_15-1-woodland-desert/monsters.txt | 20 - npc/new_15-1-woodland-desert/passages.txt | 3 - npc/new_16-1-south-east-woodland/monsters.txt | 35 - npc/new_16-1-south-east-woodland/passages.txt | 4 - npc/new_17-1-cave-big/monsters.txt | 20 - npc/new_17-1-cave-big/passages.txt | 2 - npc/new_18-1-woodland-village/george.txt | 25 - npc/new_18-1-woodland-village/hinnak.txt | 100 -- npc/new_18-1-woodland-village/monsters.txt | 34 - npc/new_18-1-woodland-village/passages.txt | 19 - npc/new_19-1-woodland-village/jack.txt | 252 ---- npc/new_19-1-woodland-village/milly.txt | 25 - npc/new_19-1-woodland-village/old_man.txt | 34 - npc/new_19-1-woodland-village/old_woman.txt | 56 - npc/new_19-1-woodland-village/passages.txt | 30 - npc/new_19-1-woodland-village/sabine.txt | 26 - npc/new_19-1-woodland-village/soul-menhir.txt | 8 - npc/new_2-1-cave1/miners.txt | 39 - npc/new_2-1-cave1/monsters.txt | 20 - npc/new_2-1-cave1/passages.txt | 1 - npc/new_20-1-woodland-village/alan.txt | 211 ---- npc/new_20-1-woodland-village/doctor.txt | 67 -- npc/new_20-1-woodland-village/drunks.txt | 16 - npc/new_20-1-woodland-village/inspector.txt | 127 -- npc/new_20-1-woodland-village/kfahr.txt | 1224 -------------------- npc/new_20-1-woodland-village/misc.txt | 11 - npc/new_20-1-woodland-village/nicholas.txt | 404 ------- npc/new_20-1-woodland-village/nurse.txt | 48 - npc/new_20-1-woodland-village/passages.txt | 66 -- npc/new_20-1-woodland-village/richard.txt | 6 - npc/new_20-1-woodland-village/selim.txt | 139 --- npc/new_20-1-woodland-village/shops.txt | 34 - npc/new_20-1-woodland-village/waitress.txt | 51 - npc/new_21-1-ice-cave2/monsters.txt | 20 - npc/new_21-1-ice-cave2/passages.txt | 1 - npc/new_22-1-snake-cave/monsters.txt | 14 - npc/new_22-1-snake-cave/passages.txt | 2 - npc/new_23-1-dimonds-cove/dimonds.txt | 130 --- npc/new_23-1-dimonds-cove/doug.txt | 101 -- npc/new_23-1-dimonds-cove/loratay.txt | 632 ---------- npc/new_23-1-dimonds-cove/passages.txt | 21 - npc/new_23-1-dimonds-cove/workers.txt | 11 - .../mika.txt | 8 - .../monsters.txt | 14 - .../pachua.txt | 194 ---- .../passages.txt | 32 - npc/new_25-1-eastern-desert-cave/monsters.txt | 14 - npc/new_25-1-eastern-desert-cave/passages.txt | 19 - npc/new_26-1-hill1/monsters.txt | 52 - npc/new_26-1-hill1/passages.txt | 11 - npc/new_26-1-hill1/shops.txt | 3 - npc/new_27-1-hill2/monsters.txt | 20 - npc/new_27-1-hill2/passages.txt | 9 - npc/new_28-1-hillwest/monsters.txt | 63 - npc/new_28-1-hillwest/passages.txt | 3 - npc/new_29-1-west-woodland/monsters.txt | 69 -- npc/new_29-1-west-woodland/passages.txt | 3 - npc/new_29-1-west-woodland/taro.txt | 74 -- npc/new_29-1-west-woodland/wedding-officiator.txt | 246 ---- npc/new_3-1-tulimshar/banker.txt | 4 - npc/new_3-1-tulimshar/barber.txt | 9 - npc/new_3-1-tulimshar/bard.txt | 10 - npc/new_3-1-tulimshar/bleacher.txt | 126 -- npc/new_3-1-tulimshar/children.txt | 105 -- npc/new_3-1-tulimshar/constable.txt | 7 - npc/new_3-1-tulimshar/elanore.txt | 90 -- npc/new_3-1-tulimshar/guards.txt | 74 -- npc/new_3-1-tulimshar/guide.txt | 162 --- npc/new_3-1-tulimshar/man.txt | 22 - npc/new_3-1-tulimshar/merchant.txt | 1 - npc/new_3-1-tulimshar/monster_guide.txt | 35 - npc/new_3-1-tulimshar/monsters.txt | 26 - npc/new_3-1-tulimshar/passages.txt | 5 - npc/new_3-1-tulimshar/rewards_master.txt | 87 -- npc/new_3-1-tulimshar/rules.txt | 7 - npc/new_3-1-tulimshar/sandra.txt | 81 -- npc/new_3-1-tulimshar/soul-menhir.txt | 6 - npc/new_3-1-tulimshar/vincent.txt | 102 -- npc/new_3-1-tulimshar/workers.txt | 13 - npc/new_30-1-west-woodland-cave/monsters.txt | 14 - npc/new_30-1-west-woodland-cave/passages.txt | 4 - npc/new_31-1-southwest-woodland/alice.txt | 46 - npc/new_31-1-southwest-woodland/monsters.txt | 46 - npc/new_31-1-southwest-woodland/passages.txt | 1 - npc/new_32-1-south-woodland-2/monsters.txt | 40 - npc/new_32-1-south-woodland-2/passages.txt | 1 - npc/new_33-1-hill-northwest/monsters.txt | 76 -- npc/new_33-1-hill-northwest/passages.txt | 1 - npc/new_34-1-north-beach/monsters.txt | 26 - npc/new_34-1-north-beach/passages.txt | 2 - npc/new_35-1-woodland-village/monsters.txt | 26 - npc/new_35-1-woodland-village/passages.txt | 5 - npc/new_36-1-magic-house/apprentice.txt | 58 - npc/new_36-1-magic-house/notes.txt | 102 -- npc/new_36-1-magic-house/passages.txt | 3 - npc/new_36-1-magic-house/wizard.txt | 25 - npc/new_37-1-woodland-mine/miners.txt | 6 - npc/new_37-1-woodland-mine/monsters.txt | 39 - npc/new_37-1-woodland-mine/passages.txt | 5 - npc/new_38-1-woodland-mine/angus.txt | 19 - npc/new_38-1-woodland-mine/books.txt | 18 - npc/new_38-1-woodland-mine/caul.txt | 479 -------- npc/new_38-1-woodland-mine/miners.txt | 15 - npc/new_38-1-woodland-mine/monsters.txt | 14 - npc/new_38-1-woodland-mine/passages.txt | 12 - npc/new_38-1-woodland-mine/receptionist.txt | 65 -- npc/new_4-1-cave-small/hermit.txt | 16 - npc/new_4-1-cave-small/monsters.txt | 21 - npc/new_4-1-cave-small/passages.txt | 1 - npc/new_5-1-cave2/chest.txt | 31 - npc/new_5-1-cave2/monsters.txt | 20 - npc/new_5-1-cave2/passages.txt | 4 - npc/new_6-1-arena/guards.txt | 28 - npc/new_6-1-arena/monsters.txt | 14 - npc/new_6-1-arena/pvpflag.txt | 1 - npc/new_7-1-eastern-desert/monsters.txt | 20 - npc/new_7-1-eastern-desert/npcs.txt | 17 - npc/new_7-1-eastern-desert/passages.txt | 21 - npc/new_8-1-tulimshar/casino.txt | 172 --- npc/new_8-1-tulimshar/omar.txt | 6 - npc/new_8-1-tulimshar/passages.txt | 28 - npc/new_8-1-tulimshar/phaet.txt | 30 - npc/new_8-1-tulimshar/shops.txt | 9 - npc/new_8-1-tulimshar/troupe_leader.txt | 43 - npc/new_9-1-woodland/alchemist.txt | 717 ------------ npc/new_9-1-woodland/monsters.txt | 34 - npc/new_9-1-woodland/oscar.txt | 1 - npc/new_9-1-woodland/passages.txt | 5 - npc/scripts.conf | 51 + npc/scripts.txt | 320 ----- npc/xmas/2006/xmas1.txt | 246 ++++ npc/xmas/2006/xmas10.txt | 243 ++++ npc/xmas/2006/xmas11.txt | 246 ++++ npc/xmas/2006/xmas12.txt | 246 ++++ npc/xmas/2006/xmas13.txt | 246 ++++ npc/xmas/2006/xmas14.txt | 246 ++++ npc/xmas/2006/xmas15.txt | 246 ++++ npc/xmas/2006/xmas16.txt | 246 ++++ npc/xmas/2006/xmas17.txt | 246 ++++ npc/xmas/2006/xmas18.txt | 246 ++++ npc/xmas/2006/xmas19.txt | 246 ++++ npc/xmas/2006/xmas2.txt | 246 ++++ npc/xmas/2006/xmas20.txt | 246 ++++ npc/xmas/2006/xmas3.txt | 246 ++++ npc/xmas/2006/xmas4.txt | 246 ++++ npc/xmas/2006/xmas5.txt | 246 ++++ npc/xmas/2006/xmas6.txt | 246 ++++ npc/xmas/2006/xmas7.txt | 246 ++++ npc/xmas/2006/xmas8.txt | 246 ++++ npc/xmas/2006/xmas9.txt | 246 ++++ npc/xmas/2007/after-xmas.txt | 140 +++ npc/xmas/2007/pre-xmas.txt | 224 ++++ npc/xmas2007/after-xmas.txt | 140 --- npc/xmas2007/pre-xmas.txt | 224 ---- 477 files changed, 15307 insertions(+), 15136 deletions(-) delete mode 100644 data/new_1-1.wlk delete mode 100644 data/new_10-1.wlk delete mode 100644 data/new_11-1.wlk delete mode 100644 data/new_12-1.wlk delete mode 100644 data/new_13-1.wlk delete mode 100644 data/new_14-1.wlk delete mode 100644 data/new_15-1.wlk delete mode 100644 data/new_16-1.wlk delete mode 100644 data/new_17-1.wlk delete mode 100644 data/new_18-1.wlk delete mode 100644 data/new_19-1.wlk delete mode 100644 data/new_2-1.wlk delete mode 100644 data/new_20-1.wlk delete mode 100644 data/new_21-1.wlk delete mode 100644 data/new_22-1.wlk delete mode 100644 data/new_23-1.wlk delete mode 100644 data/new_24-1.wlk delete mode 100644 data/new_25-1.wlk delete mode 100644 data/new_26-1.wlk delete mode 100644 data/new_27-1.wlk delete mode 100644 data/new_28-1.wlk delete mode 100644 data/new_29-1.wlk delete mode 100644 data/new_3-1.wlk delete mode 100644 data/new_30-1.wlk delete mode 100644 data/new_31-1.wlk delete mode 100644 data/new_32-1.wlk delete mode 100644 data/new_33-1.wlk delete mode 100644 data/new_34-1.wlk delete mode 100644 data/new_35-1.wlk delete mode 100644 data/new_36-1.wlk delete mode 100644 data/new_37-1.wlk delete mode 100644 data/new_38-1.wlk delete mode 100644 data/new_4-1.wlk delete mode 100644 data/new_5-1.wlk delete mode 100644 data/new_6-1.wlk delete mode 100644 data/new_7-1.wlk delete mode 100644 data/new_8-1.wlk delete mode 100644 data/new_9-1.wlk create mode 100644 npc/001-1_Tulimshar/_import.txt create mode 100644 npc/001-1_Tulimshar/_mobs.txt create mode 100644 npc/001-1_Tulimshar/_warps.txt create mode 100644 npc/001-1_Tulimshar/banker.txt create mode 100644 npc/001-1_Tulimshar/barber.txt create mode 100644 npc/001-1_Tulimshar/bard.txt create mode 100644 npc/001-1_Tulimshar/bleacher.txt create mode 100644 npc/001-1_Tulimshar/children.txt create mode 100644 npc/001-1_Tulimshar/constable.txt create mode 100644 npc/001-1_Tulimshar/elanore.txt create mode 100644 npc/001-1_Tulimshar/guards.txt create mode 100644 npc/001-1_Tulimshar/guide.txt create mode 100644 npc/001-1_Tulimshar/man.txt create mode 100644 npc/001-1_Tulimshar/merchant.txt create mode 100644 npc/001-1_Tulimshar/monster_guide.txt create mode 100644 npc/001-1_Tulimshar/monsters.txt create mode 100644 npc/001-1_Tulimshar/rewards_master.txt create mode 100644 npc/001-1_Tulimshar/rules.txt create mode 100644 npc/001-1_Tulimshar/sandra.txt create mode 100644 npc/001-1_Tulimshar/soul-menhir.txt create mode 100644 npc/001-1_Tulimshar/vincent.txt create mode 100644 npc/001-1_Tulimshar/workers.txt create mode 100644 npc/001-2_Tulimshar/_import.txt create mode 100644 npc/001-2_Tulimshar/_mobs.txt create mode 100644 npc/001-2_Tulimshar/_warps.txt create mode 100644 npc/001-2_Tulimshar/casino.txt create mode 100644 npc/001-2_Tulimshar/omar.txt create mode 100644 npc/001-2_Tulimshar/phaet.txt create mode 100644 npc/001-2_Tulimshar/shops.txt create mode 100644 npc/001-2_Tulimshar/troupe_leader.txt create mode 100644 npc/001-3_Tulimshar_arena/_import.txt create mode 100644 npc/001-3_Tulimshar_arena/_mobs.txt create mode 100644 npc/001-3_Tulimshar_arena/_warps.txt create mode 100644 npc/001-3_Tulimshar_arena/guards.txt create mode 100644 npc/001-3_Tulimshar_arena/monsters.txt create mode 100644 npc/001-3_Tulimshar_arena/pvpflag.txt create mode 100644 npc/002-1_Sandstorm/_import.txt create mode 100644 npc/002-1_Sandstorm/_mobs.txt create mode 100644 npc/002-1_Sandstorm/_warps.txt create mode 100644 npc/002-1_Sandstorm/dark_mage.txt create mode 100644 npc/002-1_Sandstorm/merchant.txt create mode 100644 npc/002-1_Sandstorm/monsters.txt create mode 100644 npc/002-1_Sandstorm/nomads.txt create mode 100644 npc/002-1_Sandstorm/rogue.txt create mode 100644 npc/002-3_Desert_mines/_import.txt create mode 100644 npc/002-3_Desert_mines/_mobs.txt create mode 100644 npc/002-3_Desert_mines/_warps.txt create mode 100644 npc/002-3_Desert_mines/miners.txt create mode 100644 npc/002-4_Desert_mines/_import.txt create mode 100644 npc/002-4_Desert_mines/_mobs.txt create mode 100644 npc/002-4_Desert_mines/_warps.txt create mode 100644 npc/002-4_Desert_mines/chest.txt create mode 100644 npc/002-4_Desert_mines/monsters.txt create mode 100644 npc/003-1_Beach/_import.txt create mode 100644 npc/003-1_Beach/_mobs.txt create mode 100644 npc/003-1_Beach/_warps.txt create mode 100644 npc/003-1_Beach/monsters.txt create mode 100644 npc/004-1_Beach/_import.txt create mode 100644 npc/004-1_Beach/_mobs.txt create mode 100644 npc/004-1_Beach/_warps.txt create mode 100644 npc/004-1_Beach/monsters.txt create mode 100644 npc/005-1_Snake_desert/_import.txt create mode 100644 npc/005-1_Snake_desert/_mobs.txt create mode 100644 npc/005-1_Snake_desert/_warps.txt create mode 100644 npc/005-1_Snake_desert/monsters.txt create mode 100644 npc/005-1_Snake_desert/npcs.txt create mode 100644 npc/005-3_Snake_pit/_import.txt create mode 100644 npc/005-3_Snake_pit/_mobs.txt create mode 100644 npc/005-3_Snake_pit/_warps.txt create mode 100644 npc/005-3_Snake_pit/monsters.txt create mode 100644 npc/006-1_Desert_mountains/_import.txt create mode 100644 npc/006-1_Desert_mountains/_mobs.txt create mode 100644 npc/006-1_Desert_mountains/_warps.txt create mode 100644 npc/006-1_Desert_mountains/mika.txt create mode 100644 npc/006-1_Desert_mountains/monsters.txt create mode 100644 npc/006-1_Desert_mountains/pachua.txt create mode 100644 npc/006-3_Desert_mountain_caves/_import.txt create mode 100644 npc/006-3_Desert_mountain_caves/_mobs.txt create mode 100644 npc/006-3_Desert_mountain_caves/_warps.txt create mode 100644 npc/006-3_Desert_mountain_caves/monsters.txt create mode 100644 npc/007-1_Woodland/_import.txt create mode 100644 npc/007-1_Woodland/_mobs.txt create mode 100644 npc/007-1_Woodland/_warps.txt create mode 100644 npc/007-1_Woodland/monsters.txt create mode 100644 npc/008-1_Hurnscald_outskirts/_import.txt create mode 100644 npc/008-1_Hurnscald_outskirts/_mobs.txt create mode 100644 npc/008-1_Hurnscald_outskirts/_warps.txt create mode 100644 npc/008-1_Hurnscald_outskirts/george.txt create mode 100644 npc/008-1_Hurnscald_outskirts/hinnak.txt create mode 100644 npc/008-1_Hurnscald_outskirts/monsters.txt create mode 100644 npc/009-1_Hurnscald/_import.txt create mode 100644 npc/009-1_Hurnscald/_mobs.txt create mode 100644 npc/009-1_Hurnscald/_warps.txt create mode 100644 npc/009-1_Hurnscald/jack.txt create mode 100644 npc/009-1_Hurnscald/milly.txt create mode 100644 npc/009-1_Hurnscald/old_man.txt create mode 100644 npc/009-1_Hurnscald/old_woman.txt create mode 100644 npc/009-1_Hurnscald/sabine.txt create mode 100644 npc/009-1_Hurnscald/soul-menhir.txt create mode 100644 npc/009-2_Hurnscald/_import.txt create mode 100644 npc/009-2_Hurnscald/_mobs.txt create mode 100644 npc/009-2_Hurnscald/_warps.txt create mode 100644 npc/009-2_Hurnscald/alan.txt create mode 100644 npc/009-2_Hurnscald/doctor.txt create mode 100644 npc/009-2_Hurnscald/drunks.txt create mode 100644 npc/009-2_Hurnscald/inspector.txt create mode 100644 npc/009-2_Hurnscald/kfahr.txt create mode 100644 npc/009-2_Hurnscald/misc.txt create mode 100644 npc/009-2_Hurnscald/nicholas.txt create mode 100644 npc/009-2_Hurnscald/nurse.txt create mode 100644 npc/009-2_Hurnscald/richard.txt create mode 100644 npc/009-2_Hurnscald/selim.txt create mode 100644 npc/009-2_Hurnscald/shops.txt create mode 100644 npc/009-2_Hurnscald/waitress.txt create mode 100644 npc/009-3_Cave_beneath_Hurnscald/_import.txt create mode 100644 npc/009-3_Cave_beneath_Hurnscald/_mobs.txt create mode 100644 npc/009-3_Cave_beneath_Hurnscald/_warps.txt create mode 100644 npc/009-3_Cave_beneath_Hurnscald/monsters.txt create mode 100644 npc/010-1_Woodland/_import.txt create mode 100644 npc/010-1_Woodland/_mobs.txt create mode 100644 npc/010-1_Woodland/_warps.txt create mode 100644 npc/010-1_Woodland/monsters.txt create mode 100644 npc/010-2_Dimond's_Cove/_import.txt create mode 100644 npc/010-2_Dimond's_Cove/_mobs.txt create mode 100644 npc/010-2_Dimond's_Cove/_warps.txt create mode 100644 npc/010-2_Dimond's_Cove/dimonds.txt create mode 100644 npc/010-2_Dimond's_Cove/doug.txt create mode 100644 npc/010-2_Dimond's_Cove/loratay.txt create mode 100644 npc/010-2_Dimond's_Cove/workers.txt create mode 100644 npc/011-1_Woodland/_import.txt create mode 100644 npc/011-1_Woodland/_mobs.txt create mode 100644 npc/011-1_Woodland/_warps.txt create mode 100644 npc/011-1_Woodland/alchemist.txt create mode 100644 npc/011-1_Woodland/monsters.txt create mode 100644 npc/011-1_Woodland/oscar.txt create mode 100644 npc/011-3_Hermit's_cave/_import.txt create mode 100644 npc/011-3_Hermit's_cave/_mobs.txt create mode 100644 npc/011-3_Hermit's_cave/_warps.txt create mode 100644 npc/011-3_Hermit's_cave/hermit.txt create mode 100644 npc/011-3_Hermit's_cave/monsters.txt create mode 100644 npc/011-4_Lake_cave/_import.txt create mode 100644 npc/011-4_Lake_cave/_mobs.txt create mode 100644 npc/011-4_Lake_cave/_warps.txt create mode 100644 npc/011-4_Lake_cave/monsters.txt create mode 100644 npc/012-1_Woodland_Hills/_import.txt create mode 100644 npc/012-1_Woodland_Hills/_mobs.txt create mode 100644 npc/012-1_Woodland_Hills/_warps.txt create mode 100644 npc/012-1_Woodland_Hills/monsters.txt create mode 100644 npc/012-1_Woodland_Hills/shops.txt create mode 100644 npc/012-3_Cave/_import.txt create mode 100644 npc/012-3_Cave/_mobs.txt create mode 100644 npc/012-3_Cave/_warps.txt create mode 100644 npc/012-3_Cave/monsters.txt create mode 100644 npc/013-1_Woodland_hills/_import.txt create mode 100644 npc/013-1_Woodland_hills/_mobs.txt create mode 100644 npc/013-1_Woodland_hills/_warps.txt create mode 100644 npc/013-1_Woodland_hills/monsters.txt create mode 100644 npc/013-2_Magic_house/_import.txt create mode 100644 npc/013-2_Magic_house/_mobs.txt create mode 100644 npc/013-2_Magic_house/_warps.txt create mode 100644 npc/013-2_Magic_house/apprentice.txt create mode 100644 npc/013-2_Magic_house/notes.txt create mode 100644 npc/013-2_Magic_house/wizard.txt create mode 100644 npc/013-3_Cave/_import.txt create mode 100644 npc/013-3_Cave/_mobs.txt create mode 100644 npc/013-3_Cave/_warps.txt create mode 100644 npc/014-1_Woodland/_import.txt create mode 100644 npc/014-1_Woodland/_mobs.txt create mode 100644 npc/014-1_Woodland/_warps.txt create mode 100644 npc/014-1_Woodland/monsters.txt create mode 100644 npc/014-1_Woodland/taro.txt create mode 100644 npc/014-1_Woodland/wedding-officiator.txt create mode 100644 npc/014-3_Cave/_import.txt create mode 100644 npc/014-3_Cave/_mobs.txt create mode 100644 npc/014-3_Cave/_warps.txt create mode 100644 npc/014-3_Cave/monsters.txt create mode 100644 npc/015-1_Woodland/_import.txt create mode 100644 npc/015-1_Woodland/_mobs.txt create mode 100644 npc/015-1_Woodland/_warps.txt create mode 100644 npc/015-1_Woodland/alice.txt create mode 100644 npc/015-1_Woodland/monsters.txt create mode 100644 npc/016-1_Woodland/_import.txt create mode 100644 npc/016-1_Woodland/_mobs.txt create mode 100644 npc/016-1_Woodland/_warps.txt create mode 100644 npc/016-1_Woodland/monsters.txt create mode 100644 npc/017-1_Woodland_hills/_import.txt create mode 100644 npc/017-1_Woodland_hills/_mobs.txt create mode 100644 npc/017-1_Woodland_hills/_warps.txt create mode 100644 npc/017-1_Woodland_hills/monsters.txt create mode 100644 npc/018-1_Woodland_mining_camp/_import.txt create mode 100644 npc/018-1_Woodland_mining_camp/_mobs.txt create mode 100644 npc/018-1_Woodland_mining_camp/_warps.txt create mode 100644 npc/018-1_Woodland_mining_camp/miners.txt create mode 100644 npc/018-1_Woodland_mining_camp/monsters.txt create mode 100644 npc/018-2_Woodland_minning_camp/_import.txt create mode 100644 npc/018-2_Woodland_minning_camp/_mobs.txt create mode 100644 npc/018-2_Woodland_minning_camp/_warps.txt create mode 100644 npc/018-2_Woodland_minning_camp/angus.txt create mode 100644 npc/018-2_Woodland_minning_camp/books.txt create mode 100644 npc/018-2_Woodland_minning_camp/caul.txt create mode 100644 npc/018-2_Woodland_minning_camp/miners.txt create mode 100644 npc/018-2_Woodland_minning_camp/monsters.txt create mode 100644 npc/018-2_Woodland_minning_camp/receptionist.txt create mode 100644 npc/018-3_Cave/_import.txt create mode 100644 npc/018-3_Cave/_mobs.txt create mode 100644 npc/018-3_Cave/_warps.txt create mode 100644 npc/019-1_Snow_field/_import.txt create mode 100644 npc/019-1_Snow_field/_mobs.txt create mode 100644 npc/019-1_Snow_field/_warps.txt create mode 100644 npc/019-1_Snow_field/monsters.txt create mode 100644 npc/019-1_Snow_field/santa.txt create mode 100644 npc/019-1_Snow_field/snowman.txt create mode 100644 npc/019-1_Snow_field/taro.txt create mode 100644 npc/020-1/_import.txt create mode 100644 npc/020-1/_mobs.txt create mode 100644 npc/020-1/_warps.txt create mode 100644 npc/020-1/amrak.txt create mode 100644 npc/020-1/monsters.txt create mode 100644 npc/020-1/sexchanger.txt create mode 100644 npc/020-1/soul-menhir.txt create mode 100644 npc/020-1/startrek.txt create mode 100644 npc/020-2/_import.txt create mode 100644 npc/020-2/_mobs.txt create mode 100644 npc/020-2/_warps.txt create mode 100644 npc/020-2/furquest.txt create mode 100644 npc/020-2/shops.txt create mode 100644 npc/020-3_Ice_cave/_import.txt create mode 100644 npc/020-3_Ice_cave/_mobs.txt create mode 100644 npc/020-3_Ice_cave/_warps.txt create mode 100644 npc/020-3_Ice_cave/monsters.txt create mode 100644 npc/020-4_Ice_cave/_import.txt create mode 100644 npc/020-4_Ice_cave/_mobs.txt create mode 100644 npc/020-4_Ice_cave/_warps.txt create mode 100644 npc/020-4_Ice_cave/monsters.txt create mode 100644 npc/021-1_Tulimshar/_import.txt create mode 100644 npc/021-1_Tulimshar/_mobs.txt create mode 100644 npc/021-1_Tulimshar/_warps.txt create mode 100644 npc/_import.txt delete mode 100644 npc/new_1-1-western-desert/dark_mage.txt delete mode 100644 npc/new_1-1-western-desert/merchant.txt delete mode 100644 npc/new_1-1-western-desert/monsters.txt delete mode 100644 npc/new_1-1-western-desert/nomads.txt delete mode 100644 npc/new_1-1-western-desert/passages.txt delete mode 100644 npc/new_1-1-western-desert/rogue.txt delete mode 100644 npc/new_10-1-xmas/monsters.txt delete mode 100644 npc/new_10-1-xmas/passages.txt delete mode 100644 npc/new_10-1-xmas/santa.txt delete mode 100644 npc/new_10-1-xmas/snowman.txt delete mode 100644 npc/new_10-1-xmas/taro.txt delete mode 100644 npc/new_10-1-xmas/xmas1.txt delete mode 100644 npc/new_10-1-xmas/xmas10.txt delete mode 100644 npc/new_10-1-xmas/xmas11.txt delete mode 100644 npc/new_10-1-xmas/xmas12.txt delete mode 100644 npc/new_10-1-xmas/xmas13.txt delete mode 100644 npc/new_10-1-xmas/xmas14.txt delete mode 100644 npc/new_10-1-xmas/xmas15.txt delete mode 100644 npc/new_10-1-xmas/xmas16.txt delete mode 100644 npc/new_10-1-xmas/xmas17.txt delete mode 100644 npc/new_10-1-xmas/xmas18.txt delete mode 100644 npc/new_10-1-xmas/xmas19.txt delete mode 100644 npc/new_10-1-xmas/xmas2.txt delete mode 100644 npc/new_10-1-xmas/xmas20.txt delete mode 100644 npc/new_10-1-xmas/xmas3.txt delete mode 100644 npc/new_10-1-xmas/xmas4.txt delete mode 100644 npc/new_10-1-xmas/xmas5.txt delete mode 100644 npc/new_10-1-xmas/xmas6.txt delete mode 100644 npc/new_10-1-xmas/xmas7.txt delete mode 100644 npc/new_10-1-xmas/xmas8.txt delete mode 100644 npc/new_10-1-xmas/xmas9.txt delete mode 100644 npc/new_11-1-snow-village/amrak.txt delete mode 100644 npc/new_11-1-snow-village/monsters.txt delete mode 100644 npc/new_11-1-snow-village/passages.txt delete mode 100644 npc/new_11-1-snow-village/sexchanger.txt delete mode 100644 npc/new_11-1-snow-village/soul-menhir.txt delete mode 100644 npc/new_11-1-snow-village/startrek.txt delete mode 100644 npc/new_12-1-ice-cave/monsters.txt delete mode 100644 npc/new_12-1-ice-cave/passages.txt delete mode 100644 npc/new_13-1-snow-village-shops/furquest.txt delete mode 100644 npc/new_13-1-snow-village-shops/passages.txt delete mode 100644 npc/new_13-1-snow-village-shops/shops.txt delete mode 100644 npc/new_14-1-south-woodland/monsters.txt delete mode 100644 npc/new_14-1-south-woodland/passages.txt delete mode 100644 npc/new_15-1-woodland-desert/monsters.txt delete mode 100644 npc/new_15-1-woodland-desert/passages.txt delete mode 100644 npc/new_16-1-south-east-woodland/monsters.txt delete mode 100644 npc/new_16-1-south-east-woodland/passages.txt delete mode 100644 npc/new_17-1-cave-big/monsters.txt delete mode 100644 npc/new_17-1-cave-big/passages.txt delete mode 100644 npc/new_18-1-woodland-village/george.txt delete mode 100644 npc/new_18-1-woodland-village/hinnak.txt delete mode 100644 npc/new_18-1-woodland-village/monsters.txt delete mode 100644 npc/new_18-1-woodland-village/passages.txt delete mode 100644 npc/new_19-1-woodland-village/jack.txt delete mode 100644 npc/new_19-1-woodland-village/milly.txt delete mode 100644 npc/new_19-1-woodland-village/old_man.txt delete mode 100644 npc/new_19-1-woodland-village/old_woman.txt delete mode 100644 npc/new_19-1-woodland-village/passages.txt delete mode 100644 npc/new_19-1-woodland-village/sabine.txt delete mode 100644 npc/new_19-1-woodland-village/soul-menhir.txt delete mode 100644 npc/new_2-1-cave1/miners.txt delete mode 100644 npc/new_2-1-cave1/monsters.txt delete mode 100644 npc/new_2-1-cave1/passages.txt delete mode 100644 npc/new_20-1-woodland-village/alan.txt delete mode 100644 npc/new_20-1-woodland-village/doctor.txt delete mode 100644 npc/new_20-1-woodland-village/drunks.txt delete mode 100644 npc/new_20-1-woodland-village/inspector.txt delete mode 100644 npc/new_20-1-woodland-village/kfahr.txt delete mode 100644 npc/new_20-1-woodland-village/misc.txt delete mode 100644 npc/new_20-1-woodland-village/nicholas.txt delete mode 100644 npc/new_20-1-woodland-village/nurse.txt delete mode 100644 npc/new_20-1-woodland-village/passages.txt delete mode 100644 npc/new_20-1-woodland-village/richard.txt delete mode 100644 npc/new_20-1-woodland-village/selim.txt delete mode 100644 npc/new_20-1-woodland-village/shops.txt delete mode 100644 npc/new_20-1-woodland-village/waitress.txt delete mode 100644 npc/new_21-1-ice-cave2/monsters.txt delete mode 100644 npc/new_21-1-ice-cave2/passages.txt delete mode 100644 npc/new_22-1-snake-cave/monsters.txt delete mode 100644 npc/new_22-1-snake-cave/passages.txt delete mode 100644 npc/new_23-1-dimonds-cove/dimonds.txt delete mode 100644 npc/new_23-1-dimonds-cove/doug.txt delete mode 100644 npc/new_23-1-dimonds-cove/loratay.txt delete mode 100644 npc/new_23-1-dimonds-cove/passages.txt delete mode 100644 npc/new_23-1-dimonds-cove/workers.txt delete mode 100644 npc/new_24-1-eastern-desert-mountain-passage/mika.txt delete mode 100644 npc/new_24-1-eastern-desert-mountain-passage/monsters.txt delete mode 100644 npc/new_24-1-eastern-desert-mountain-passage/pachua.txt delete mode 100644 npc/new_24-1-eastern-desert-mountain-passage/passages.txt delete mode 100644 npc/new_25-1-eastern-desert-cave/monsters.txt delete mode 100644 npc/new_25-1-eastern-desert-cave/passages.txt delete mode 100644 npc/new_26-1-hill1/monsters.txt delete mode 100644 npc/new_26-1-hill1/passages.txt delete mode 100644 npc/new_26-1-hill1/shops.txt delete mode 100644 npc/new_27-1-hill2/monsters.txt delete mode 100644 npc/new_27-1-hill2/passages.txt delete mode 100644 npc/new_28-1-hillwest/monsters.txt delete mode 100644 npc/new_28-1-hillwest/passages.txt delete mode 100644 npc/new_29-1-west-woodland/monsters.txt delete mode 100644 npc/new_29-1-west-woodland/passages.txt delete mode 100644 npc/new_29-1-west-woodland/taro.txt delete mode 100644 npc/new_29-1-west-woodland/wedding-officiator.txt delete mode 100644 npc/new_3-1-tulimshar/banker.txt delete mode 100644 npc/new_3-1-tulimshar/barber.txt delete mode 100644 npc/new_3-1-tulimshar/bard.txt delete mode 100644 npc/new_3-1-tulimshar/bleacher.txt delete mode 100644 npc/new_3-1-tulimshar/children.txt delete mode 100644 npc/new_3-1-tulimshar/constable.txt delete mode 100644 npc/new_3-1-tulimshar/elanore.txt delete mode 100644 npc/new_3-1-tulimshar/guards.txt delete mode 100644 npc/new_3-1-tulimshar/guide.txt delete mode 100644 npc/new_3-1-tulimshar/man.txt delete mode 100644 npc/new_3-1-tulimshar/merchant.txt delete mode 100644 npc/new_3-1-tulimshar/monster_guide.txt delete mode 100644 npc/new_3-1-tulimshar/monsters.txt delete mode 100644 npc/new_3-1-tulimshar/passages.txt delete mode 100644 npc/new_3-1-tulimshar/rewards_master.txt delete mode 100644 npc/new_3-1-tulimshar/rules.txt delete mode 100644 npc/new_3-1-tulimshar/sandra.txt delete mode 100644 npc/new_3-1-tulimshar/soul-menhir.txt delete mode 100644 npc/new_3-1-tulimshar/vincent.txt delete mode 100644 npc/new_3-1-tulimshar/workers.txt delete mode 100644 npc/new_30-1-west-woodland-cave/monsters.txt delete mode 100644 npc/new_30-1-west-woodland-cave/passages.txt delete mode 100644 npc/new_31-1-southwest-woodland/alice.txt delete mode 100644 npc/new_31-1-southwest-woodland/monsters.txt delete mode 100644 npc/new_31-1-southwest-woodland/passages.txt delete mode 100644 npc/new_32-1-south-woodland-2/monsters.txt delete mode 100644 npc/new_32-1-south-woodland-2/passages.txt delete mode 100644 npc/new_33-1-hill-northwest/monsters.txt delete mode 100644 npc/new_33-1-hill-northwest/passages.txt delete mode 100644 npc/new_34-1-north-beach/monsters.txt delete mode 100644 npc/new_34-1-north-beach/passages.txt delete mode 100644 npc/new_35-1-woodland-village/monsters.txt delete mode 100644 npc/new_35-1-woodland-village/passages.txt delete mode 100644 npc/new_36-1-magic-house/apprentice.txt delete mode 100644 npc/new_36-1-magic-house/notes.txt delete mode 100644 npc/new_36-1-magic-house/passages.txt delete mode 100644 npc/new_36-1-magic-house/wizard.txt delete mode 100644 npc/new_37-1-woodland-mine/miners.txt delete mode 100644 npc/new_37-1-woodland-mine/monsters.txt delete mode 100644 npc/new_37-1-woodland-mine/passages.txt delete mode 100644 npc/new_38-1-woodland-mine/angus.txt delete mode 100644 npc/new_38-1-woodland-mine/books.txt delete mode 100644 npc/new_38-1-woodland-mine/caul.txt delete mode 100644 npc/new_38-1-woodland-mine/miners.txt delete mode 100644 npc/new_38-1-woodland-mine/monsters.txt delete mode 100644 npc/new_38-1-woodland-mine/passages.txt delete mode 100644 npc/new_38-1-woodland-mine/receptionist.txt delete mode 100644 npc/new_4-1-cave-small/hermit.txt delete mode 100644 npc/new_4-1-cave-small/monsters.txt delete mode 100644 npc/new_4-1-cave-small/passages.txt delete mode 100644 npc/new_5-1-cave2/chest.txt delete mode 100644 npc/new_5-1-cave2/monsters.txt delete mode 100644 npc/new_5-1-cave2/passages.txt delete mode 100644 npc/new_6-1-arena/guards.txt delete mode 100644 npc/new_6-1-arena/monsters.txt delete mode 100644 npc/new_6-1-arena/pvpflag.txt delete mode 100644 npc/new_7-1-eastern-desert/monsters.txt delete mode 100644 npc/new_7-1-eastern-desert/npcs.txt delete mode 100644 npc/new_7-1-eastern-desert/passages.txt delete mode 100644 npc/new_8-1-tulimshar/casino.txt delete mode 100644 npc/new_8-1-tulimshar/omar.txt delete mode 100644 npc/new_8-1-tulimshar/passages.txt delete mode 100644 npc/new_8-1-tulimshar/phaet.txt delete mode 100644 npc/new_8-1-tulimshar/shops.txt delete mode 100644 npc/new_8-1-tulimshar/troupe_leader.txt delete mode 100644 npc/new_9-1-woodland/alchemist.txt delete mode 100644 npc/new_9-1-woodland/monsters.txt delete mode 100644 npc/new_9-1-woodland/oscar.txt delete mode 100644 npc/new_9-1-woodland/passages.txt create mode 100644 npc/scripts.conf delete mode 100644 npc/scripts.txt create mode 100644 npc/xmas/2006/xmas1.txt create mode 100644 npc/xmas/2006/xmas10.txt create mode 100644 npc/xmas/2006/xmas11.txt create mode 100644 npc/xmas/2006/xmas12.txt create mode 100644 npc/xmas/2006/xmas13.txt create mode 100644 npc/xmas/2006/xmas14.txt create mode 100644 npc/xmas/2006/xmas15.txt create mode 100644 npc/xmas/2006/xmas16.txt create mode 100644 npc/xmas/2006/xmas17.txt create mode 100644 npc/xmas/2006/xmas18.txt create mode 100644 npc/xmas/2006/xmas19.txt create mode 100644 npc/xmas/2006/xmas2.txt create mode 100644 npc/xmas/2006/xmas20.txt create mode 100644 npc/xmas/2006/xmas3.txt create mode 100644 npc/xmas/2006/xmas4.txt create mode 100644 npc/xmas/2006/xmas5.txt create mode 100644 npc/xmas/2006/xmas6.txt create mode 100644 npc/xmas/2006/xmas7.txt create mode 100644 npc/xmas/2006/xmas8.txt create mode 100644 npc/xmas/2006/xmas9.txt create mode 100644 npc/xmas/2007/after-xmas.txt create mode 100644 npc/xmas/2007/pre-xmas.txt delete mode 100644 npc/xmas2007/after-xmas.txt delete mode 100644 npc/xmas2007/pre-xmas.txt diff --git a/conf/map_athena.conf b/conf/map_athena.conf index 25ea0676..82e8c08b 100644 --- a/conf/map_athena.conf +++ b/conf/map_athena.conf @@ -1,323 +1,17 @@ // eAthena Map-Server Configuration File -// Maps -map: new_39-1.gat -map: new_38-1.gat -map: new_37-1.gat -map: new_36-1.gat -map: new_35-1.gat -map: new_34-1.gat -map: new_33-1.gat -map: new_32-1.gat -map: new_31-1.gat -map: new_30-1.gat -map: new_29-1.gat -map: new_28-1.gat -map: new_27-1.gat -map: new_26-1.gat -map: new_25-1.gat -map: new_24-1.gat -map: new_23-1.gat -map: new_22-1.gat -map: new_21-1.gat -map: new_20-1.gat -map: new_19-1.gat -map: new_18-1.gat -map: new_17-1.gat -map: new_16-1.gat -map: new_15-1.gat -map: new_14-1.gat -map: new_13-1.gat -map: new_12-1.gat -map: new_11-1.gat -map: new_10-1.gat -map: new_9-1.gat -map: new_8-1.gat -map: new_7-1.gat -map: new_6-1.gat -map: new_5-1.gat -map: new_4-1.gat -map: new_3-1.gat -map: new_2-1.gat -map: new_1-1.gat +// Database autosave time, in seconds. +autosave_time: 60 -// NPC Functions -npc: npc/functions/banker.txt -npc: npc/functions/barber.txt -npc: npc/functions/game_rules.txt -npc: npc/functions/inn.txt -npc: npc/functions/mob_points.txt -npc: npc/functions/process_equip.txt -npc: npc/functions/slot_machine.txt -npc: npc/functions/soul_menhir.txt +// Message of the day file, when a character logs on, this message is displayed. +motd_txt: conf/motd.txt -// NPCs (ordered by map number). +// When @help or @h is typed when you are a gm, this is displayed for helping new gms understand gm commands. +help_txt: conf/help.txt -// new_1-1 Western desert -// npc: npc/western-desert/dark_mage.txt -npc: npc/new_1-1-western-desert/rogue.txt -npc: npc/new_1-1-western-desert/merchant.txt -npc: npc/new_1-1-western-desert/monsters.txt -npc: npc/new_1-1-western-desert/nomads.txt -npc: npc/new_1-1-western-desert/passages.txt +mapreg_txt: save/mapreg.txt -// new-2_1 Cave level 1 -npc: npc/new_2-1-cave1/miners.txt -npc: npc/new_2-1-cave1/monsters.txt -npc: npc/new_2-1-cave1/passages.txt - -// new_3-1 Tulimshar -npc: npc/new_3-1-tulimshar/banker.txt -npc: npc/new_3-1-tulimshar/barber.txt -npc: npc/new_3-1-tulimshar/bard.txt -npc: npc/new_3-1-tulimshar/bleacher.txt -npc: npc/new_3-1-tulimshar/children.txt -npc: npc/new_3-1-tulimshar/constable.txt -npc: npc/new_3-1-tulimshar/elanore.txt -npc: npc/new_3-1-tulimshar/guards.txt -npc: npc/new_3-1-tulimshar/guide.txt -npc: npc/new_3-1-tulimshar/man.txt -npc: npc/new_3-1-tulimshar/merchant.txt -npc: npc/new_3-1-tulimshar/monster_guide.txt -npc: npc/new_3-1-tulimshar/monsters.txt -npc: npc/new_3-1-tulimshar/passages.txt -npc: npc/new_3-1-tulimshar/rewards_master.txt -npc: npc/new_3-1-tulimshar/rules.txt -npc: npc/new_3-1-tulimshar/sandra.txt -npc: npc/new_3-1-tulimshar/vincent.txt -npc: npc/new_3-1-tulimshar/soul-menhir.txt -npc: npc/new_3-1-tulimshar/workers.txt - -// new_4-1 Small bat cave -npc: npc/new_4-1-cave-small/hermit.txt -npc: npc/new_4-1-cave-small/monsters.txt -npc: npc/new_4-1-cave-small/passages.txt - -// new_5-1 Cave level 2 (Underground Palace) -npc: npc/new_5-1-cave2/chest.txt -npc: npc/new_5-1-cave2/monsters.txt -npc: npc/new_5-1-cave2/passages.txt - -// new_6-1 Arena -npc: npc/new_6-1-arena/guards.txt -npc: npc/new_6-1-arena/monsters.txt -npc: npc/new_6-1-arena/pvpflag.txt - -// new_7-1 Eastern desert -npc: npc/new_7-1-eastern-desert/monsters.txt -npc: npc/new_7-1-eastern-desert/passages.txt -npc: npc/new_7-1-eastern-desert/npcs.txt - -// new_8-1 Tulimshar indoor -npc: npc/new_8-1-tulimshar/casino.txt -npc: npc/new_8-1-tulimshar/omar.txt -npc: npc/new_8-1-tulimshar/passages.txt -npc: npc/new_8-1-tulimshar/phaet.txt -npc: npc/new_8-1-tulimshar/shops.txt -npc: npc/new_8-1-tulimshar/troupe_leader.txt - -// new_9-1 Woodland -npc: npc/new_9-1-woodland/alchemist.txt -npc: npc/new_9-1-woodland/monsters.txt -npc: npc/new_9-1-woodland/passages.txt -npc: npc/new_9-1-woodland/oscar.txt - -// new_10-1 Xmas snow map -npc: npc/new_10-1-xmas/monsters.txt -npc: npc/new_10-1-xmas/passages.txt -// npc: npc/new_10-1-xmas/santa.txt -npc: npc/new_10-1-xmas/snowman.txt -npc: npc/new_10-1-xmas/taro.txt - -// new_11-1 Snow village -// npc: npc/new_11-1-snow-village/monsters.txt -npc: npc/new_11-1-snow-village/sexchanger.txt -npc: npc/new_11-1-snow-village/startrek.txt -npc: npc/new_11-1-snow-village/passages.txt -npc: npc/new_11-1-snow-village/soul-menhir.txt -npc: npc/new_11-1-snow-village/amrak.txt - -// new_12-1 Ice cave -npc: npc/new_12-1-ice-cave/monsters.txt -npc: npc/new_12-1-ice-cave/passages.txt - -// new_13-1 Snow village shops. -npc: npc/new_13-1-snow-village-shops/shops.txt -npc: npc/new_13-1-snow-village-shops/passages.txt -npc: npc/new_13-1-snow-village-shops/furquest.txt - -// new_14-1 South-woodland -npc: npc/new_14-1-south-woodland/monsters.txt -npc: npc/new_14-1-south-woodland/passages.txt - -// new_15-1 Woodland-desert link -npc: npc/new_15-1-woodland-desert/monsters.txt -npc: npc/new_15-1-woodland-desert/passages.txt - -// new_16-1 South-west woodland -npc: npc/new_16-1-south-east-woodland/monsters.txt -npc: npc/new_16-1-south-east-woodland/passages.txt - -// new_17-1 Big cave -npc: npc/new_17-1-cave-big/monsters.txt -npc: npc/new_17-1-cave-big/passages.txt - -// new_18-1 Woodland village surroundings -npc: npc/new_18-1-woodland-village/monsters.txt -npc: npc/new_18-1-woodland-village/passages.txt -npc: npc/new_18-1-woodland-village/george.txt -npc: npc/new_18-1-woodland-village/hinnak.txt - -// new_19-1 Woodland village -npc: npc/new_19-1-woodland-village/jack.txt -npc: npc/new_19-1-woodland-village/milly.txt -npc: npc/new_19-1-woodland-village/old_man.txt -npc: npc/new_19-1-woodland-village/old_woman.txt -npc: npc/new_19-1-woodland-village/passages.txt -npc: npc/new_19-1-woodland-village/sabine.txt -npc: npc/new_19-1-woodland-village/soul-menhir.txt - -// new_20-1 Woodland village indoor -npc: npc/new_20-1-woodland-village/alan.txt -npc: npc/new_20-1-woodland-village/doctor.txt -npc: npc/new_20-1-woodland-village/drunks.txt -npc: npc/new_20-1-woodland-village/inspector.txt -npc: npc/new_20-1-woodland-village/kfahr.txt -npc: npc/new_20-1-woodland-village/misc.txt -npc: npc/new_20-1-woodland-village/nicholas.txt -npc: npc/new_20-1-woodland-village/nurse.txt -npc: npc/new_20-1-woodland-village/passages.txt -npc: npc/new_20-1-woodland-village/richard.txt -npc: npc/new_20-1-woodland-village/selim.txt -npc: npc/new_20-1-woodland-village/shops.txt -npc: npc/new_20-1-woodland-village/waitress.txt - -// new_21-1 Ice cave 2 -npc: npc/new_21-1-ice-cave2/monsters.txt -npc: npc/new_21-1-ice-cave2/passages.txt - -// new_22-1 Snake cave -npc: npc/new_22-1-snake-cave/monsters.txt -npc: npc/new_22-1-snake-cave/passages.txt - -// new_23-1 Dimonds Cove -npc: npc/new_23-1-dimonds-cove/passages.txt -npc: npc/new_23-1-dimonds-cove/dimonds.txt -npc: npc/new_23-1-dimonds-cove/doug.txt -npc: npc/new_23-1-dimonds-cove/loratay.txt -npc: npc/new_23-1-dimonds-cove/workers.txt - -// new_24-1 Eastern desert mountain passage -npc: npc/new_24-1-eastern-desert-mountain-passage/mika.txt -npc: npc/new_24-1-eastern-desert-mountain-passage/monsters.txt -npc: npc/new_24-1-eastern-desert-mountain-passage/pachua.txt -npc: npc/new_24-1-eastern-desert-mountain-passage/passages.txt - -// new_25-1 Eastern desert cave -npc: npc/new_25-1-eastern-desert-cave/monsters.txt -npc: npc/new_25-1-eastern-desert-cave/passages.txt - -// new_26-1 Forest Hill 1 -npc: npc/new_26-1-hill1/monsters.txt -npc: npc/new_26-1-hill1/passages.txt -npc: npc/new_26-1-hill1/shops.txt - -// new_27-1 Forest Hill 2 (Cave) -npc: npc/new_27-1-hill2/monsters.txt -npc: npc/new_27-1-hill2/passages.txt - -// new_28-1 Forest east of map 26 -npc: npc/new_28-1-hillwest/passages.txt -npc: npc/new_28-1-hillwest/monsters.txt - -// new_29-1 Forest west of map 9 -npc: npc/new_29-1-west-woodland/passages.txt -npc: npc/new_29-1-west-woodland/monsters.txt -npc: npc/new_29-1-west-woodland/taro.txt -npc: npc/new_29-1-west-woodland/wedding-officiator.txt - -// new_30-1 Caves for map 29 -npc: npc/new_30-1-west-woodland-cave/passages.txt -npc: npc/new_30-1-west-woodland-cave/monsters.txt - -// new_31-1 Forest west of map 14 -npc: npc/new_31-1-southwest-woodland/passages.txt -npc: npc/new_31-1-southwest-woodland/monsters.txt -npc: npc/new_31-1-southwest-woodland/alice.txt - -// new_32-1 Forest south of map 14 -npc: npc/new_32-1-south-woodland-2/passages.txt -npc: npc/new_32-1-south-woodland-2/monsters.txt - -// new_33-1 Forest north of map 28 -npc: npc/new_33-1-hill-northwest/passages.txt -npc: npc/new_33-1-hill-northwest/monsters.txt - -// new_34-1 Beach west of Tulimshar -npc: npc/new_34-1-north-beach/passages.txt -npc: npc/new_34-1-north-beach/monsters.txt - -// new_35-1 Cave beneath Hurnscald -npc: npc/new_35-1-woodland-village/passages.txt -npc: npc/new_35-1-woodland-village/monsters.txt - -// new_36-1 Magic house in forest 28 -npc: npc/new_36-1-magic-house/passages.txt -npc: npc/new_36-1-magic-house/wizard.txt -npc: npc/new_36-1-magic-house/apprentice.txt -npc: npc/new_36-1-magic-house/notes.txt - -// new_37-1 Mine north of Hurnscald -npc: npc/new_37-1-woodland-mine/miners.txt -npc: npc/new_37-1-woodland-mine/monsters.txt -npc: npc/new_37-1-woodland-mine/passages.txt - -// new_38-1 Mines north of Hurnscald (indoor) -npc: npc/new_38-1-woodland-mine/angus.txt -npc: npc/new_38-1-woodland-mine/books.txt -npc: npc/new_38-1-woodland-mine/caul.txt -npc: npc/new_38-1-woodland-mine/miners.txt -npc: npc/new_38-1-woodland-mine/monsters.txt -npc: npc/new_38-1-woodland-mine/passages.txt -npc: npc/new_38-1-woodland-mine/receptionist.txt - -// Christmas 2006 -// npc: npc/xmas/xmas1.txt -// npc: npc/xmas/xmas2.txt -// npc: npc/xmas/xmas3.txt -// npc: npc/xmas/xmas4.txt -// npc: npc/xmas/xmas5.txt -// npc: npc/xmas/xmas6.txt -// npc: npc/xmas/xmas7.txt -// npc: npc/xmas/xmas8.txt -// npc: npc/xmas/xmas9.txt -// npc: npc/xmas/xmas10.txt -// npc: npc/xmas/xmas11.txt -// npc: npc/xmas/xmas12.txt -// npc: npc/xmas/xmas13.txt -// npc: npc/xmas/xmas14.txt -// npc: npc/xmas/xmas15.txt -// npc: npc/xmas/xmas16.txt -// npc: npc/xmas/xmas17.txt -// npc: npc/xmas/xmas18.txt -// npc: npc/xmas/xmas19.txt -// npc: npc/xmas/xmas20.txt - -// Halloween 2007 -// npc: npc/halloween/2007/monsters.txt -// npc: npc/halloween/2007/summon.txt - -// Christmas 2007 -// npc: npc/xmas2007/pre-xmas.txt -// npc: npc/xmas2007/after-xmas.txt - -// Easter 2008 -// npc: npc/easter2008/monsters.txt -// npc: npc/easter2008/npc.txt - -// Halloween 2008 -// npc: npc/halloween/2008/monsters.txt -// npc: npc/halloween/2008/prize_master.txt +import: npc/scripts.conf // local settings for this server in this file import: conf/map_local.conf diff --git a/conf/map_local.conf.example b/conf/map_local.conf.example index 42e98bce..0f09bf59 100644 --- a/conf/map_local.conf.example +++ b/conf/map_local.conf.example @@ -13,14 +13,3 @@ char_port: 6122 map_ip:81.161.192.4 // Map Server Port map_port: 5122 - -// Database autosave time, in seconds. -autosave_time: 60 - -// Message of the day file, when a character logs on, this message is displayed. -motd_txt: conf/motd.txt - -// When @help or @h is typed when you are a gm, this is displayed for helping new gms understand gm commands. -help_txt: conf/help.txt - -mapreg_txt: save/mapreg.txt diff --git a/data/new_1-1.wlk b/data/new_1-1.wlk deleted file mode 100644 index 871a2267..00000000 Binary files a/data/new_1-1.wlk and /dev/null differ diff --git a/data/new_10-1.wlk b/data/new_10-1.wlk deleted file mode 100644 index 9ac1927c..00000000 Binary files a/data/new_10-1.wlk and /dev/null differ diff --git a/data/new_11-1.wlk b/data/new_11-1.wlk deleted file mode 100644 index f3119594..00000000 Binary files a/data/new_11-1.wlk and /dev/null differ diff --git a/data/new_12-1.wlk b/data/new_12-1.wlk deleted file mode 100644 index 7b7f6c25..00000000 Binary files a/data/new_12-1.wlk and /dev/null differ diff --git a/data/new_13-1.wlk b/data/new_13-1.wlk deleted file mode 100644 index b51db172..00000000 Binary files a/data/new_13-1.wlk and /dev/null differ diff --git a/data/new_14-1.wlk b/data/new_14-1.wlk deleted file mode 100644 index 6311da10..00000000 Binary files a/data/new_14-1.wlk and /dev/null differ diff --git a/data/new_15-1.wlk b/data/new_15-1.wlk deleted file mode 100644 index 3ba9d269..00000000 Binary files a/data/new_15-1.wlk and /dev/null differ diff --git a/data/new_16-1.wlk b/data/new_16-1.wlk deleted file mode 100644 index 768cf1c4..00000000 Binary files a/data/new_16-1.wlk and /dev/null differ diff --git a/data/new_17-1.wlk b/data/new_17-1.wlk deleted file mode 100644 index 8796a8f4..00000000 Binary files a/data/new_17-1.wlk and /dev/null differ diff --git a/data/new_18-1.wlk b/data/new_18-1.wlk deleted file mode 100644 index b011a566..00000000 Binary files a/data/new_18-1.wlk and /dev/null differ diff --git a/data/new_19-1.wlk b/data/new_19-1.wlk deleted file mode 100644 index 51e508fa..00000000 Binary files a/data/new_19-1.wlk and /dev/null differ diff --git a/data/new_2-1.wlk b/data/new_2-1.wlk deleted file mode 100644 index 5abd252f..00000000 Binary files a/data/new_2-1.wlk and /dev/null differ diff --git a/data/new_20-1.wlk b/data/new_20-1.wlk deleted file mode 100644 index 596bb0e3..00000000 Binary files a/data/new_20-1.wlk and /dev/null differ diff --git a/data/new_21-1.wlk b/data/new_21-1.wlk deleted file mode 100644 index e2a1852c..00000000 Binary files a/data/new_21-1.wlk and /dev/null differ diff --git a/data/new_22-1.wlk b/data/new_22-1.wlk deleted file mode 100644 index f3c047db..00000000 Binary files a/data/new_22-1.wlk and /dev/null differ diff --git a/data/new_23-1.wlk b/data/new_23-1.wlk deleted file mode 100644 index f2cfcd6c..00000000 Binary files a/data/new_23-1.wlk and /dev/null differ diff --git a/data/new_24-1.wlk b/data/new_24-1.wlk deleted file mode 100644 index 39bc32a1..00000000 Binary files a/data/new_24-1.wlk and /dev/null differ diff --git a/data/new_25-1.wlk b/data/new_25-1.wlk deleted file mode 100644 index d635df84..00000000 Binary files a/data/new_25-1.wlk and /dev/null differ diff --git a/data/new_26-1.wlk b/data/new_26-1.wlk deleted file mode 100644 index 79ad3078..00000000 Binary files a/data/new_26-1.wlk and /dev/null differ diff --git a/data/new_27-1.wlk b/data/new_27-1.wlk deleted file mode 100644 index d485cd87..00000000 Binary files a/data/new_27-1.wlk and /dev/null differ diff --git a/data/new_28-1.wlk b/data/new_28-1.wlk deleted file mode 100644 index 2c925d89..00000000 Binary files a/data/new_28-1.wlk and /dev/null differ diff --git a/data/new_29-1.wlk b/data/new_29-1.wlk deleted file mode 100644 index 34a98185..00000000 Binary files a/data/new_29-1.wlk and /dev/null differ diff --git a/data/new_3-1.wlk b/data/new_3-1.wlk deleted file mode 100644 index 05b6c7aa..00000000 Binary files a/data/new_3-1.wlk and /dev/null differ diff --git a/data/new_30-1.wlk b/data/new_30-1.wlk deleted file mode 100644 index bcdaa8c5..00000000 Binary files a/data/new_30-1.wlk and /dev/null differ diff --git a/data/new_31-1.wlk b/data/new_31-1.wlk deleted file mode 100644 index f3e7bbc9..00000000 Binary files a/data/new_31-1.wlk and /dev/null differ diff --git a/data/new_32-1.wlk b/data/new_32-1.wlk deleted file mode 100644 index 2d4f1bbf..00000000 Binary files a/data/new_32-1.wlk and /dev/null differ diff --git a/data/new_33-1.wlk b/data/new_33-1.wlk deleted file mode 100644 index 7632b813..00000000 Binary files a/data/new_33-1.wlk and /dev/null differ diff --git a/data/new_34-1.wlk b/data/new_34-1.wlk deleted file mode 100644 index 68d9c716..00000000 Binary files a/data/new_34-1.wlk and /dev/null differ diff --git a/data/new_35-1.wlk b/data/new_35-1.wlk deleted file mode 100644 index 1336606f..00000000 Binary files a/data/new_35-1.wlk and /dev/null differ diff --git a/data/new_36-1.wlk b/data/new_36-1.wlk deleted file mode 100644 index c6c06b31..00000000 Binary files a/data/new_36-1.wlk and /dev/null differ diff --git a/data/new_37-1.wlk b/data/new_37-1.wlk deleted file mode 100644 index 7a62dc2e..00000000 Binary files a/data/new_37-1.wlk and /dev/null differ diff --git a/data/new_38-1.wlk b/data/new_38-1.wlk deleted file mode 100644 index b80a18a8..00000000 Binary files a/data/new_38-1.wlk and /dev/null differ diff --git a/data/new_4-1.wlk b/data/new_4-1.wlk deleted file mode 100644 index a1e039c4..00000000 Binary files a/data/new_4-1.wlk and /dev/null differ diff --git a/data/new_5-1.wlk b/data/new_5-1.wlk deleted file mode 100644 index 2e2e7b75..00000000 Binary files a/data/new_5-1.wlk and /dev/null differ diff --git a/data/new_6-1.wlk b/data/new_6-1.wlk deleted file mode 100644 index 4a9cd117..00000000 Binary files a/data/new_6-1.wlk and /dev/null differ diff --git a/data/new_7-1.wlk b/data/new_7-1.wlk deleted file mode 100644 index fe816a52..00000000 Binary files a/data/new_7-1.wlk and /dev/null differ diff --git a/data/new_8-1.wlk b/data/new_8-1.wlk deleted file mode 100644 index 0a762e12..00000000 Binary files a/data/new_8-1.wlk and /dev/null differ diff --git a/data/new_9-1.wlk b/data/new_9-1.wlk deleted file mode 100644 index 2fa117b4..00000000 Binary files a/data/new_9-1.wlk and /dev/null differ diff --git a/data/resnametable.txt b/data/resnametable.txt index 7b4ae334..8815b378 100644 --- a/data/resnametable.txt +++ b/data/resnametable.txt @@ -1,39 +1,41 @@ -new_1-1.gat#new_1-1.wlk# -new_2-1.gat#new_2-1.wlk# -new_3-1.gat#new_3-1.wlk# -new_4-1.gat#new_4-1.wlk# -new_5-1.gat#new_5-1.wlk# -new_6-1.gat#new_6-1.wlk# -new_7-1.gat#new_7-1.wlk# -new_8-1.gat#new_8-1.wlk# -new_9-1.gat#new_9-1.wlk# -new_10-1.gat#new_10-1.wlk# -new_11-1.gat#new_11-1.wlk# -new_12-1.gat#new_12-1.wlk# -new_13-1.gat#new_13-1.wlk# -new_14-1.gat#new_14-1.wlk# -new_15-1.gat#new_15-1.wlk# -new_16-1.gat#new_16-1.wlk# -new_17-1.gat#new_17-1.wlk# -new_18-1.gat#new_18-1.wlk# -new_19-1.gat#new_19-1.wlk# -new_20-1.gat#new_20-1.wlk# -new_21-1.gat#new_21-1.wlk# -new_22-1.gat#new_22-1.wlk# -new_23-1.gat#new_23-1.wlk# -new_24-1.gat#new_24-1.wlk# -new_25-1.gat#new_25-1.wlk# -new_26-1.gat#new_26-1.wlk# -new_27-1.gat#new_27-1.wlk# -new_28-1.gat#new_28-1.wlk# -new_29-1.gat#new_29-1.wlk# -new_30-1.gat#new_30-1.wlk# -new_31-1.gat#new_31-1.wlk# -new_32-1.gat#new_32-1.wlk# -new_33-1.gat#new_33-1.wlk# -new_34-1.gat#new_34-1.wlk# -new_35-1.gat#new_35-1.wlk# -new_36-1.gat#new_36-1.wlk# -new_37-1.gat#new_37-1.wlk# -new_38-1.gat#new_38-1.wlk# -new_39-1.gat#new_39-1.wlk# +#001-1.gat#001-1.wlk# +#001-2.gat#001-2.wlk# +#001-3.gat#001-3.wlk# +#002-1.gat#002-1.wlk# +#002-2.gat#002-2.wlk# +#002-3.gat#002-3.wlk# +#002-4.gat#002-4.wlk# +#003-1.gat#003-1.wlk# +#004-1.gat#004-1.wlk# +#005-1.gat#005-1.wlk# +#005-3.gat#005-3.wlk# +#006-1.gat#006-1.wlk# +#006-3.gat#006-3.wlk# +#007-1.gat#007-1.wlk# +#008-1.gat#008-1.wlk# +#009-1.gat#009-1.wlk# +#009-2.gat#009-2.wlk# +#009-3.gat#009-3.wlk# +#010-1.gat#010-1.wlk# +#010-2.gat#010-2.wlk# +#011-1.gat#011-1.wlk# +#011-3.gat#011-3.wlk# +#011-4.gat#011-4.wlk# +#012-1.gat#012-1.wlk# +#012-3.gat#012-3.wlk# +#013-1.gat#013-1.wlk# +#013-2.gat#013-2.wlk# +#013-3.gat#013-3.wlk# +#014-1.gat#014-1.wlk# +#014-3.gat#014-3.wlk# +#015-1.gat#015-1.wlk# +#016-1.gat#016-1.wlk# +#017-1.gat#017-1.wlk# +#018-1.gat#018-1.wlk# +#018-2.gat#018-2.wlk# +#018-3.gat#018-3.wlkv +#019-1.gat#019-1.wlk# +#020-1.gat#020-1.wlk# +#020-2.gat#020-2.wlk# +#020-3.gat#020-3.wlk# +#020-4.gat#020-4.wlk# diff --git a/npc/001-1_Tulimshar/_import.txt b/npc/001-1_Tulimshar/_import.txt new file mode 100644 index 00000000..7c475922 --- /dev/null +++ b/npc/001-1_Tulimshar/_import.txt @@ -0,0 +1,22 @@ +map: 001-1.gat +npc: npc/001-1_Tulimshar/workers.txt +npc: npc/001-1_Tulimshar/vincent.txt +npc: npc/001-1_Tulimshar/soul-menhir.txt +npc: npc/001-1_Tulimshar/sandra.txt +npc: npc/001-1_Tulimshar/rules.txt +npc: npc/001-1_Tulimshar/rewards_master.txt +npc: npc/001-1_Tulimshar/monsters.txt +npc: npc/001-1_Tulimshar/monster_guide.txt +npc: npc/001-1_Tulimshar/merchant.txt +npc: npc/001-1_Tulimshar/man.txt +npc: npc/001-1_Tulimshar/guide.txt +npc: npc/001-1_Tulimshar/guards.txt +npc: npc/001-1_Tulimshar/elanore.txt +npc: npc/001-1_Tulimshar/constable.txt +npc: npc/001-1_Tulimshar/children.txt +npc: npc/001-1_Tulimshar/bleacher.txt +npc: npc/001-1_Tulimshar/bard.txt +npc: npc/001-1_Tulimshar/barber.txt +npc: npc/001-1_Tulimshar/banker.txt +npc: npc/001-1_Tulimshar/_warps.txt +npc: npc/001-1_Tulimshar/_mobs.txt diff --git a/npc/001-1_Tulimshar/_mobs.txt b/npc/001-1_Tulimshar/_mobs.txt new file mode 100644 index 00000000..db1ae2e8 --- /dev/null +++ b/npc/001-1_Tulimshar/_mobs.txt @@ -0,0 +1,7 @@ +// 001-1 Tulimshar mobs + + + +001-1.gat,0,0,0 script Mob001-1 -1,{ + end; +} diff --git a/npc/001-1_Tulimshar/_warps.txt b/npc/001-1_Tulimshar/_warps.txt new file mode 100644 index 00000000..7e8af69d --- /dev/null +++ b/npc/001-1_Tulimshar/_warps.txt @@ -0,0 +1,5 @@ +// 001-1 Tulimshar warps + +001-1.gat,44,88 warp ToSandstorm 3,-1,002-1.gat,58,17 +001-1.gat,32,71 warp ToInn -1,-1,001-2.gat,25,34 +001-1.gat,75,41 warp ToHouse -1,-1,001-2.gat,71,72 diff --git a/npc/001-1_Tulimshar/banker.txt b/npc/001-1_Tulimshar/banker.txt new file mode 100644 index 00000000..9431f5cc --- /dev/null +++ b/npc/001-1_Tulimshar/banker.txt @@ -0,0 +1,4 @@ +new_3-1.gat,57,52,0 script Tybalt 107,{ + set @npcName$, "Tybalt"; + callfunc "Banker"; +} diff --git a/npc/001-1_Tulimshar/barber.txt b/npc/001-1_Tulimshar/barber.txt new file mode 100644 index 00000000..bd6b148e --- /dev/null +++ b/npc/001-1_Tulimshar/barber.txt @@ -0,0 +1,9 @@ +new_3-1.gat,53,38,0 script Nicolas 100,{ + mes "[Nicolas the Barber]"; + mes "\"Do you need a barber?\""; + next; + callfunc "Barber"; + mes "[Nicolas the Barber]"; + mes "\"Come again!\""; + close; +} diff --git a/npc/001-1_Tulimshar/bard.txt b/npc/001-1_Tulimshar/bard.txt new file mode 100644 index 00000000..dcb56424 --- /dev/null +++ b/npc/001-1_Tulimshar/bard.txt @@ -0,0 +1,10 @@ +// + +new_3-1.gat,50,44,0 script Bard 152,{ + setarray @songs$, "\"There once was a bard, who had it hard, because a man in dark green, was very mean.\"", + "\"At Hurnscald inn, there was a person of fairest skin, declining wedding bands from quite a many hands.\"", + "\"As the Sun sets down in the forest's brown, she whom the fragrance holds counts her gold.\""; + set @id, rand(3); + mes @songs$[@id]; + close; +} diff --git a/npc/001-1_Tulimshar/bleacher.txt b/npc/001-1_Tulimshar/bleacher.txt new file mode 100644 index 00000000..6a15e273 --- /dev/null +++ b/npc/001-1_Tulimshar/bleacher.txt @@ -0,0 +1,126 @@ +// + +new_3-1.gat,27,53,0 script Candide 156,{ + mes "[Candide]"; + mes "\"I've figured out how that volcanic ash bleaches cloth."; + mes "I could do it for you, but I'll need three piles of ash and 5,000 GP for supplies per item.\""; + next; + + if (countitem(701) < 3) goto L_no_ash; + + if (zeny < 5000) goto L_no_money; + + menu "I'd like to bleach something", -, + "No thanks", L_close; + +L_bleach_menu: + mes "[Candide]"; + mes "\"What would you like to bleach?\""; + next; + + menu "Cotton shirt", L_cottonshirt, + "V-Neck sweater", L_vneck, + "Turtleneck sweater", L_tneck, + "Cotton shorts", L_shorts, + "Cotton skirt", L_skirt, + "Tank top ", L_tanktop, + "Short tank top", L_tanktop_short, + "Silk robe", L_robe, + "Nevermind", -; + goto L_close; + +L_cottonshirt: set @normal, 1202; + set @dyeBase, 2050; + goto L_choose_color; + +L_vneck: set @normal, 624; + set @dyeBase, 2060; + goto L_choose_color; + +L_tneck: set @normal, 564; + set @dyeBase, 2070; + goto L_choose_color; + +L_shorts: set @normal, 586; + set @dyeBase, 2110; + goto L_choose_color; + +L_skirt: set @normal, 632; + set @dyeBase, 2100; + goto L_choose_color; + +L_tanktop: set @normal, 688; + set @dyeBase, 2090; + goto L_choose_color; + +L_tanktop_short: set @normal, 689; + set @dyeBase, 2120; + goto L_choose_color; + +L_robe: set @normal, 720; + set @dyeBase, 2080; + goto L_choose_color; + +L_choose_color: + mes "[Candide]"; + mes "\"And the color?\""; + next; + + menu "Red", -, + "Green", -, + "Dark Blue", -, + "Yellow", -, + "Light Blue", -, + "Pink", -, + "Black", -, + "Orange", -, + "Purple", -, + "Dark Green", -; + + set @del, @dyeBase + @menu - 1; + + if (countitem(@del) == 0) goto L_no_item; + + if (countitem(701) < 3) goto L_no_ash; + + if (zeny < 5000) goto L_no_money; + + delitem @del, 1; + getitem @normal, 1; + delitem 701, 3; + set zeny, zeny - 5000; + +L_again: + mes "[Candide]"; + mes "\"Would you like to bleach something else?\""; + next; + + menu "Yes", L_bleach_menu, + "No", L_close; + +L_no_item: + mes "[Candide]"; + mes "\"You don't have one of those.\""; + next; + + goto L_again; + +L_no_ash: + mes "[Candide]"; + mes "\"You don't have enough ash for me to bleach anything."; + mes "I need three piles.\""; + next; + + goto L_close; + +L_no_money: + mes "[Candide]"; + mes "\"You don't have enough gold for me to bleach anything."; + mes "I need 5,000 GP for supplies.\""; + next; + +L_close: + mes "[Candide]"; + mes "\"Come again.\""; + close; +} diff --git a/npc/001-1_Tulimshar/children.txt b/npc/001-1_Tulimshar/children.txt new file mode 100644 index 00000000..40efb233 --- /dev/null +++ b/npc/001-1_Tulimshar/children.txt @@ -0,0 +1,105 @@ +new_3-1.gat,94,27,0 script Aisha 108,{ + set @TEMP,rand(9); + if(@TEMP == 0) goto L_1; + if(@TEMP == 1) goto L_1; + if(@TEMP == 2) goto L_2; + if(@TEMP == 3) goto L_3; + if(@TEMP == 4) goto L_4; + if(@TEMP == 5) goto L_5; + if(@TEMP == 6) goto L_6; + if(@TEMP == 7) goto L_7; + if(@TEMP == 8) goto L_8; + +L_1: + mes "[Aisha]"; + mes "\"Maggots are soo slimey!\""; + close; + +L_2: + mes "[Aisha]"; + mes "\"Want to play ball with me?\""; + close; + +L_3: + mes "[Aisha]"; + mes "\"There are so many monsters; I hate scorpions!\""; + close; + +L_4: + mes "[Aisha]"; + mes "\"When I grow up, I want to be strong enough to kill a scorpion!\""; + close; + +L_5: + mes "[Aisha]"; + mes "\"Mommy told me that you can drop the things that monsters sell.\""; + close; + +L_6: + mes "[Aisha]"; + mes "\"Have you tried to eat a roasted maggot? They are sooo yummy! And you feel much healthier afterwards, too!\""; + close; + +L_7: + mes "[Aisha]"; + mes "\"I want to be a Doctor when i grow up!\""; + close; + +L_8: + mes "[Aisha]"; + mes "\"That volcano was sooo scary! The earth was shaking and everything was breaking down... but now they have rebuilt everything.\""; + close; +} + +new_3-1.gat,39,67,0 script Nina 103,{ + set @TEMP,rand(8); + if(@TEMP == 0) goto L_1; + if(@TEMP == 1) goto L_1; + if(@TEMP == 2) goto L_2; + if(@TEMP == 3) goto L_3; + if(@TEMP == 4) goto L_4; + if(@TEMP == 5) goto L_5; + if(@TEMP == 6) goto L_6; + if(@TEMP == 7) goto L_7; + if(@TEMP == 8) goto L_8; + +L_1: + mes "[Nina]"; + mes "\"If I learned anything from school, Grenxen founded Tulimshar.\""; + close; + +L_2: + mes "[Nina]"; + mes "\"When I was picking rocks from the field, I saw a red scorpion.\""; + close; + +L_3: + mes "[Nina]"; + mes "\"Its polite to state your name before talking to anyone.\""; + close; + +L_4: + mes "[Nina]"; + mes "\"I have a Scorpion Doll!\""; + close; + +L_5: + mes "[Nina]"; + mes "\"I always take some spare Cactus Juices with me on the field. They are heavy, though.\""; + close; + +L_6: + mes "[Nina]"; + mes "\"When you are feeling bad, eating something can usually help you heal faster.\""; + close; + +L_7: + mes "[Nina]"; + mes "\"Grenxen is the Demon that founded Tulimshar.\""; + close; + +L_8: + mes "[Nina]"; + mes "That volcano eruption was terrifying; much of Tulimshar was destroyed. Fortunately the mayor had everything rebuilt quickly."; + close; +} diff --git a/npc/001-1_Tulimshar/constable.txt b/npc/001-1_Tulimshar/constable.txt new file mode 100644 index 00000000..673ff0a0 --- /dev/null +++ b/npc/001-1_Tulimshar/constable.txt @@ -0,0 +1,7 @@ +// + +new_3-1.gat,37,35,0 script Constable Perry Graf 150,{ +// set @npcName$, "Constable Perry Graf"; + set @canSkip, 1; + callfunc "GameRules"; +} diff --git a/npc/001-1_Tulimshar/elanore.txt b/npc/001-1_Tulimshar/elanore.txt new file mode 100644 index 00000000..cc474ca0 --- /dev/null +++ b/npc/001-1_Tulimshar/elanore.txt @@ -0,0 +1,90 @@ +//Heal NPC costs 100 money + +new_3-1.gat,58,68,0 script Elanore 108,{ + + if (baselevel > 10) goto L_NoHeal; + + set @TEMP,rand(4); + + if(@TEMP == 0) goto Heal1; + if(@TEMP == 1) goto Heal2; + if(@TEMP == 2) goto Heal3; + if(@TEMP == 3) goto Heal4; + +Heal1: + + mes "[Elanore the Healer]"; + mes "\"You don't look too well; let me treat your wounds.\""; + next; + goto Heal_L; + +Heal2: + + mes "[Elanore the Healer]"; + mes "\"I will make quick work of your wounds.\""; + next; + goto Heal_L; + +Heal3: + + mes "[Elanore the Healer]"; + mes "\"Need a healing?\""; + next; + goto Heal_L; + +Heal4: + + mes "[Elanore the Healer]"; + mes "\"Sometimes you just need to run from battle.\""; + next; + goto Heal_L; + +Heal_L: + + set @TEMP,rand(3); + + if(@TEMP == 0) goto Heal_1; + if(@TEMP == 1) goto Heal_2; + if(@TEMP == 2) goto Heal_3; + if(@TEMP == 3) goto Heal_4; + +Heal_1: + + mes "[Elanore the Healer]"; + mes "\"Here you go!\""; + heal 10000,10000; + close; + +Heal_2: + + mes "[Elanore the Healer]"; + mes "\"Painless, wasn't it?"; + mes "Here you go!\""; + heal 10000,10000; + close; + +Heal_3: + + mes "[Elanore the Healer]"; + mes "\"You should be more careful.\""; + heal 10000,10000; + close; + +Heal_4: + + mes "[Elanore the Healer]"; + mes "\"Much better, right?!\""; + heal 10000,10000; + close; + +L_NoHeal: + + mes "[Elanore the Healer]"; + mes "\"I'm sorry but unless you are young and in need, I can't help you, and your level is already higher than ten."; + mes "With so many people still injured from the earthquake, I really have no time to help."; + mes "You can get some rest in the inn near here.\""; + + close; + +} + diff --git a/npc/001-1_Tulimshar/guards.txt b/npc/001-1_Tulimshar/guards.txt new file mode 100644 index 00000000..158a00a1 --- /dev/null +++ b/npc/001-1_Tulimshar/guards.txt @@ -0,0 +1,74 @@ +new_3-1.gat,48,79,0 script Ekinu 104,{ + mes "[Ekinu the Town Guard]"; + mes "\"What a disaster... I can't believe that we managed to rebuild the town so fast, though.\""; + next; + menu "Can you give me any tips?", L_Tip, + "Do you have information?", L_Info, + "What disaster?", L_disaster; + +L_Tip: + set @TEMP,rand(7); + if(@TEMP == 0) goto L_0; + if(@TEMP == 1) goto L_1; + if(@TEMP == 2) goto L_2; + if(@TEMP == 3) goto L_3; + if(@TEMP == 4) goto L_4; + if(@TEMP == 5) goto L_5; + if(@TEMP == 6) goto L_6; +L_1: + mes "[Ekinu the Town Guard]"; + mes "\"Try to carry spare food when on fields or in dungeons, they will come in handy. I always take beer, but don't tell the Sergeant...\""; + close; +L_2: + mes "[Ekinu the Town Guard]"; + mes "\"Always carry a map of where you are, ask the Guides in most towns to get one.\""; + close; +L_3: + mes "[Ekinu the Town Guard]"; + mes "\"When in a dungeon, monsters are more aggressive than if they were outside.\""; + close; +L_4: + mes "[Ekinu the Town Guard]"; + mes "\"When gambling for money in casinos, make sure you have enough emergency money.\""; + close; +L_5: + mes "[Ekinu the Town Guard]"; + mes "\"Never underestimate the enemy.\""; + close; +L_6: + mes "[Ekinu the Town Guard]"; + mes "\"When fighting more than one enemy, try to focus on one at a time.\""; + close; +L_0: + mes "[Ekinu the Town Guard]"; + mes "\"Let me think of something... Oh! Do NOT attack Red scorpions unless you can kill it for sure!\""; + close; + +L_Info: + mes "[Ekinu the Town Guard]"; + mes "\"Everyone wants information... you won't get it, at least not here. I'm not even sure what you mean, to be honest.\""; + close; + +L_disaster: + mes "[Ekinu the Town Guard]"; + mes "\"What do you mean, `what disaster'? Weren't you there? That huge huge volcano ex...rusion... whatever they call it, and the earthquake!\""; + next; + + mes "[Ekinu the Town Guard]"; + mes "\"Half the town was reduced to rubble! Somehow, no-one was seriously injured though, so I guess we were lucky...\""; + next; + + mes "[Ekinu the Town Guard]"; + mes "\"Well, the mayor rebuilt everything quickly, but I have no idea where he got the GP from...\""; + close; +} + +new_3-1.gat,40,79,0 script Ryan 104,{ + mes "[Ryan the Town Guard]"; + mes "ZzzZzzZ..."; + next; + mes "[Ryan the Town Guard]"; + mes "\"Hmmmmmmh...?"; + mes "Oh, I wasn't sleeping, I was just resting my eyes!\""; +close; +} diff --git a/npc/001-1_Tulimshar/guide.txt b/npc/001-1_Tulimshar/guide.txt new file mode 100644 index 00000000..b1458919 --- /dev/null +++ b/npc/001-1_Tulimshar/guide.txt @@ -0,0 +1,162 @@ +new_3-1.gat,33,27,0 script Ian 102,{ + if (TUT_var & 1 == 1 && TUT_var & 2 == 0 && BaseLevel >= 10) callsub S_Grad; + mes "[Ian the Guide]"; + mes "\"Would you like to know about something?\""; + next; + +L_Menu_A: + menu "Fighting", L_Fight, + "Items", L_Items, + "Monsters", L_Monster, + "Stylist", L_Style, + "Quests", L_Quests, + "NPCs", L_NPC, + "Commands", L_Comm, + "Attributes", L_Stats, + "Magic", L_Magic, + "Quick Keys", L_Key, + "Laws", L_Laws, + "I know everything!", L_Know; + close; + +L_Fight: + mes "[Ian the Guide]"; + mes "\"People live in this world by living off of monsters."; + mes "You can fight monsters and even players by hitting the [CTRL] key, or left mouse click.\""; + next; + mes "[Ian the Guide]"; + mes "\"If you get tired of pressing the key too much, you can also type [SHIFT]+[CTRL]."; + mes "This will make your character attack continuously for the time you are inactive.\""; + next; + goto L_Menu_A; + +L_Items: + mes "[Ian the Guide]"; + mes "\"There are three types of items."; + mes "They can be Consumables, Equipment, or Miscellaneous\""; + next; + mes "[Ian the Guide]"; + mes "\"Consumable items such as Potions, can be used only once."; + mes "After use, they will disappear from your inventory.\""; + next; + mes "[Ian the Guide]"; + mes "\"Equipment items like Armors, Weapons, Accessories"; + mes "can be equipped for fashionable purposes or to raise your status.\""; + next; + mes "[Ian the Guide]"; + mes "\"Miscellaneous items such as maggot slime, are used"; + mes "in creating other items, or just to trade and sell.\""; + next; + goto L_Menu_A; + +L_Monster: + mes "[Ian the Guide]"; + mes "\"In every world, there are beasts. Monsters can be found almost anywhere!~"; + mes "To fight them, please read [Fighting] if you do not know how.\""; + next; + mes "\"There a several types of monsters, Aggressive, Neutral, and Assistants.\""; + next; + mes "[Ian the Guide]"; + mes "\"Aggressive monsters know that they are always in danger"; + mes "so therefore they always keep their guard up,"; + mes "making them attack anybody in sight.\""; + next; + mes "[Ian the Guide]"; + mes "\"Neutral monsters tend to just lounge around until attacked."; + mes "They will leave everything alone unless they are threatened.\""; + next; + mes "[Ian the Guide]"; + mes "\"Assistants are monsters who help each other."; + mes "You should always check how many are around you before attacking a single one!\""; + next; + goto L_Menu_A; + +L_Style: + mes "[Ian the Guide]"; + mes "\"The stylist NPCs will cut and perm your hair!"; + mes "They are known for their hair growth formula\""; + next; + goto L_Menu_A; + +L_Quests: + mes "[Ian the Guide]"; + mes "\"There are people in the world in need of help!"; + mes "Most of these people aren't afraid to give rewards to those who help them."; + mes "So be nice and help people along the way!\""; + next; + goto L_Menu_A; + +L_NPC: + mes "[Ian the Guide]"; + mes "\"NPCs [Non Playable Characters] are people who are always in the game,"; + mes "tending to many varieties of services from just chatting to helping others.\""; + next; + goto L_Menu_A; + +L_Comm: + mes "[Ian the Guide]"; + mes "\"/clear clears the text box.\""; + mes "\"/help displays the client commands (ones starting with a /) in the chat box.\""; + mes "\"/whisper [name] allows you to message someone privately.\""; + mes "\"/who displays the current number of online users.\""; + mes "\"/where displays the current map's name.\""; + next; + goto L_Menu_A; + +L_Stats: + mes "[Ian the Guide]"; + mes "\"People vary greatly by how much strength, agility, dexterity, intelligence, vitality, and luck they have.\""; + next; + mes "[Ian the Guide]"; + mes "\"Strength helps you carry items, and it also allows you to hit harder-- but it is not too helpful if you focus on missile weapons."; + mes "More agility allows you to attack faster, and to dodge attacks more easily."; + mes "Your dexterity determines how likely you are to hit a monster, and how effective you are with missile weapons.\""; + next; + mes "[Ian the Guide]"; + mes "\"Vitality determines how resistant to injuries you are, and how much damage you can take before you die."; + mes "Intelligence is useful for alchemy and magic, but there are few opportunities for either at the moment."; + mes "Luck determines many small things, but, to be honest, I don't think that it is very useful.\""; + next; + mes "[Ian the Guide]"; + mes "\"I recommend that you practice your dexterity, since some of the more dangerous monsters are very hard to hit otherwise."; + mes "Don't bother trying to work on your luck, and your intelligence is probably not something anyone cares about either.\""; + next; + goto L_Menu_A; + +L_Magic: + mes "[Ian the Guide]"; + mes "\"In decades past, there was a Mana Seed south of Tulimshar, from which people could draw magical energies. Unfortunately, the seed is gone."; + mes "Until we find a new Mana Seed, there will be no magic, except for those who already possess magical powers.\""; + next; + goto L_Menu_A; + +L_Key: + mes "[Ian the Guide]"; + mes "\"There are many key combinations, press F1 for a short list of them!\""; + next; + goto L_Menu_A; + +L_Laws: + mes "[Ian the Guide]"; + mes "\"Lady Platyna, the Overseer, has decreed the following rules:"; + mes "1. Do not abuse others (insult, swear etc.)"; + mes "2. No bots."; + mes "3. No spamming/flooding."; + mes "4. No begging."; + mes "5. Speak English."; + next; + goto L_Menu_A; + +L_Know: + close; + +S_Grad: + mes "[Ian the Guide]"; + mes "\"Hey, you've been doing good, let me give you this.\""; + next; + + getitem 675, 1; + set TUT_var, TUT_var | 2; + + return; +} diff --git a/npc/001-1_Tulimshar/man.txt b/npc/001-1_Tulimshar/man.txt new file mode 100644 index 00000000..f2638a51 --- /dev/null +++ b/npc/001-1_Tulimshar/man.txt @@ -0,0 +1,22 @@ +new_3-1.gat,108,55,0 script Luca 102,{ + mes "[Luca the Hunter]"; + mes "\"Ouch! It hurts, this wound I got from battle.\""; + next; + menu "Tell me about it",L_Exp,"Nevermind",L_Nev; + +L_Exp: + mes "[Luca the Hunter]"; + mes "\"I was fighting scorpions for experience and I bumped into a RED one. I had NEVER seen it before!\""; + next; + mes "[Luca the Hunter]"; + mes "\"Luckily i had a camera with me! Here's a picture of it... Let me find it, I put it in my pocket somewhere...\""; + next; + mes "[Luca the Hunter]"; + mes "\"Oh man! My pockets have been ripped clean off!\""; + close; + +L_Nev: + mes "[Luca the Hunter]"; + mes "\"Hmpf!\""; + close; +} diff --git a/npc/001-1_Tulimshar/merchant.txt b/npc/001-1_Tulimshar/merchant.txt new file mode 100644 index 00000000..186365d6 --- /dev/null +++ b/npc/001-1_Tulimshar/merchant.txt @@ -0,0 +1 @@ +new_3-1.gat,39,52,0 shop Neko 101,501:50,502:60,1201:100,522:300,521:1000,656:250,1202:1000,523:8000,603:-1 diff --git a/npc/001-1_Tulimshar/monster_guide.txt b/npc/001-1_Tulimshar/monster_guide.txt new file mode 100644 index 00000000..3b2d8b6f --- /dev/null +++ b/npc/001-1_Tulimshar/monster_guide.txt @@ -0,0 +1,35 @@ +new_3-1.gat,48,52,0 script Aidan 102,{ + if(MPQUEST == 0) goto Register; + mes "[Aidan the Monster Guide]"; + mes "You currently have " +Mobpt+ " Monster Points. These points are acquired while killing monsters"; + close; +Register: + mes "[Aidan the Monster Guide]"; + mes "Oh my, you dont seem to be registered as a Quest Participant, would you like to register?"; + next; +Choice: + menu "Register",L_R,"Not at the moment",L_N,"Information",L_I; +L_R: + mes "[Aidan the Monster Guide]"; + mes "Give me a second to look over your paperwork."; + next; + mes "[Monster Guide]"; + mes "Well, looks like you qualify!"; + mes "Welcome to the questing world!"; + set MPQUEST,1; + close; +L_N: + mes "[Aidan the Monster Guide]"; + mes "Very well, you dont know what your missing."; + close; +L_I: + mes "[Aidan the Monster Guide]"; + mes "Here in The Mana World, there are certain rewards for your vanquishing of foes."; + mes "For example, there are Monster Points, every monster you kill has a certain amount of points that get added to your account."; + mes "The more points you have, the more expensive things you can buy using them."; + next; + mes "[Monster Guide]"; + mes "So whaddya say, sign up won't you?"; + next; + goto Choice; +} diff --git a/npc/001-1_Tulimshar/monsters.txt b/npc/001-1_Tulimshar/monsters.txt new file mode 100644 index 00000000..1a17628f --- /dev/null +++ b/npc/001-1_Tulimshar/monsters.txt @@ -0,0 +1,26 @@ +// Map: new_3-1 +// This is Tulimshar the city -- southern part with market and casino/inn. +// + +new_3-1.gat,0,0,0,0 monster Maggot 1002,35,2000,0,Mob3::OnMaggot +new_3-1.gat,0,0,0,0 monster Scorpion 1003,25,2500,0,Mob3::OnScorpion +new_3-1.gat,0,0,0,0 monster Firegoblin 1011,20,2500,0,Mob3::OnFireGoblin + +new_3-1.gat,0,0,0 script Mob3 -1,{ +OnMaggot: + set @mobID, 1002; + callfunc "MobPoints"; + break; + +OnScorpion: + set @mobID, 1003; + callfunc "MobPoints"; + break; + +OnFireGoblin: + set @mobID, 1011; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/001-1_Tulimshar/rewards_master.txt b/npc/001-1_Tulimshar/rewards_master.txt new file mode 100644 index 00000000..9c0ddb43 --- /dev/null +++ b/npc/001-1_Tulimshar/rewards_master.txt @@ -0,0 +1,87 @@ +new_3-1.gat,50,53,0 script Ishi 106,{ + if (MPQUEST == 0) goto L_Register; + if (tvis == 0) set tvis, 1; + if (Mobpt < tvis) goto L_NotEnough; + + setarray @Items, 502, 502, 503, 504, 505, 506, 507, 508, 509, 510, 586, 512, 513, 514, 515, 516, 517, 518, 519, 520; + + mes "[Ishi the Rewards Master]"; + mes "\"Welcome! I see you have " + Mobpt + " Monster Points. Would you like to exchange some of those for items?\""; + next; + + set @i, 0; + setarray @Menu$, "", "", "", "", "", "", "", "", "", "", ""; + callsub SUB_prep_menu; + + menu + @Menu$[0], -, + @Menu$[1], -, + @Menu$[2], -, + @Menu$[3], -, + @Menu$[4], -, + @Menu$[5], -, + @Menu$[6], -, + @Menu$[7], -, + @Menu$[8], -, + @Menu$[9], -, + @Menu$[10], -; + + if (@menu > @i) close; + + set @req, @menu; + set @rec, 0; + +L_Item_Loop: + if (@rec == @req || Mobpt < tvis) goto L_Item_Done; + + callsub SUB_give_item; + set @rec, @rec + 1; + goto L_Item_Loop; + +L_Item_Done: + if (@rec < @req) mes "It looks like your Monster Points were over estimated."; + close; + +L_Register: + mes "[Ishi the Rewards Master]"; + mes "\"Hey, it seems like you didn't register as a quest participant yet! You can sign up with Aidan.\""; + close; + +L_NotEnough: + mes "[Ishi the Rewards Master]"; + mes "\"You don't have enough Monster Points for a reward. You'll need to kill some more monsters first.\""; + close; + +////////////////////////////////////////////////// +// Subroutines +////////////////////////////////////////////////// + +SUB_prep_menu: + set @pts, Mobpt; + set @dif, tvis; + +L_Menu_Loop: + if (@pts < @dif || @i == 10) goto L_Menu_Done; + + set @Menu$[@i], @i + 1; + + set @i, @i + 1; + set @pts, @pts - @dif; + set @dif, @dif + 1; + + goto L_Menu_Loop; +L_Menu_Done: + set @Menu$[@i], "No thanks"; + return; + +SUB_give_item: + set Mobpt, Mobpt - tvis; + set tvis, tvis + 1; + set @ID, @Items[rand(getarraysize(@Items))]; + + getitem @ID, 1; + + mes "You received one " + getitemname(@ID) + "!"; + + return; +} diff --git a/npc/001-1_Tulimshar/rules.txt b/npc/001-1_Tulimshar/rules.txt new file mode 100644 index 00000000..70917804 --- /dev/null +++ b/npc/001-1_Tulimshar/rules.txt @@ -0,0 +1,7 @@ +// + +new_3-1.gat,29,28,0 script #Rules 127,1,1,{ + if (TUT_var & 1 == 1) close; + callfunc "GameRules"; + mes "Ian, the trainer, can help you get to know the game."; +} diff --git a/npc/001-1_Tulimshar/sandra.txt b/npc/001-1_Tulimshar/sandra.txt new file mode 100644 index 00000000..4922bd60 --- /dev/null +++ b/npc/001-1_Tulimshar/sandra.txt @@ -0,0 +1,81 @@ +new_3-1.gat,110,71,0 script Sandra 114,{ + if(Scorp == 2) goto done; + if(Scorp == 1) goto reas; + set @TEMP,rand(3); + if(@TEMP == 1) goto L_1; + if(@TEMP == 2) goto L_2; + if(@TEMP == 3) goto L_3; + if(@TEMP == 0) goto L_4; +L_1: + mes "[Sandra]"; + mes "\"In the outskirts of Tulimshar, there wanders a red scorpion. I need a favor, please help me.\""; + next; + goto red; +L_2: + mes "[Sandra]"; + mes "\"When you venture in the outskirts of Tulimshar, you can spot a red scorpion. Will you help me kill one?\""; + next; + goto red; +L_3: + mes "[Sandra]"; + mes "\"The red scorpion stinger carries many properties used in potions.\""; + next; + goto red; +L_4: + mes "[Sandra]"; + mes "\"You look sturdy enough, will you help me get something?\""; + next; + goto red; +red: + menu "Yes",L_kl,"No",L_N; +L_kl: + if(@TEMP == 1) goto K_1; + if(@TEMP == 2) goto K_2; + if(@TEMP == 3) goto K_3; + if(@TEMP == 0) goto K_1; +K_1: + mes "[Sandra]"; + mes "\"I need you to slaughter the red scorpion found outside of Tulimshar and bring me 5 [Red Stingers].\""; + next; + goto set1; +K_2: + mes "[Sandra]"; + mes "\"I heard a while ago that the stinger of a red scorpion can be used for medical purposes. I need you to help me get 5 [Red Stingers].\""; + next; + goto set1; +K_3: + mes "[Sandra]"; + mes "\"Bring me 5 [Red Stingers] and i will reward you greatly.\""; + next; + goto set1; +set1: + set Scorp,1; + mes "[Sandra]"; + mes "\"Please bring me them!\""; + close; +reas: + if(countitem(517) >= 5) goto have; + mes "[Sandra]"; + mes "\"Please hurry and bring me 5 [Red Stingers].\""; + close; +have: + mes "[Sandra]"; + mes "\"Excellent!"; + mes "You brought me 5 [Red Stingers]!\""; + delitem 517,5; + next; + mes "[Sandra]"; + mes "\"Here you go, your reward!\""; + mes "+Got Bow"; + mes "+Got Arrows 100"; + getitem 1200,1; + getitem 1199,100; + set Scorp,2; + close; +done: + mes "[Sandra]"; + mes "\"Thank you for all your help!\""; + close; +L_N: + close; +} diff --git a/npc/001-1_Tulimshar/soul-menhir.txt b/npc/001-1_Tulimshar/soul-menhir.txt new file mode 100644 index 00000000..147ed63d --- /dev/null +++ b/npc/001-1_Tulimshar/soul-menhir.txt @@ -0,0 +1,6 @@ +new_3-1.gat,38,69,0 script Soul Menhir 144, { + set @map$, "new_3-1.gat"; + set @x, 38; + set @y, 70; + callfunc "SoulMenhir"; +} diff --git a/npc/001-1_Tulimshar/vincent.txt b/npc/001-1_Tulimshar/vincent.txt new file mode 100644 index 00000000..4e2a0926 --- /dev/null +++ b/npc/001-1_Tulimshar/vincent.txt @@ -0,0 +1,102 @@ +new_3-1.gat,135,42,0 script Vincent 113,{ + if(Bugleg == 1) goto L_Reas; + if(Bugleg == 2) goto L_Done; + set @TEMP, rand(4); + if(@TEMP == 0) goto L_1; + if(@TEMP == 1) goto L_2; + if(@TEMP == 2) goto L_3; + if(@TEMP == 3) goto L_4; + +L_1: + mes "[Vincent]"; + mes "\"I just need 30 more [Bug Legs] to finish my action figure!\""; + next; + goto L_Ask; + +L_2: + mes "[Vincent]"; + mes "\"This maggot action figure is awesome! I just need to attach [30 Part A{Bug Leg}]\""; + next; + goto L_Ask; + +L_3: + mes "[Vincent]"; + mes "\"This is a great action figure! A must have! All I need is a few parts...\""; + goto L_Ask; + +L_4: + mes "[Vincent]"; + mes "\"Can you get me 30 [Bug Legs]? I need them to replace the action figure parts.\""; + next; + goto L_Ask; + +L_Ask: + mes "[Vincent]"; + mes "\"Will you help me find 30 [Bug Legs]?\""; + next; + menu + "Yes", L_Sure, + "No", -; + close; + +L_Sure: + set Bugleg, 1; + set @TEMP,rand(4); + if(@TEMP == 0) goto J_1; + if(@TEMP == 1) goto J_2; + if(@TEMP == 2) goto J_3; + if(@TEMP == 3) goto J_4; + +J_1: + mes "[Vincent]"; + mes "\"Thank you!\""; + next; + goto L_Wait; + +J_2: + mes "[Vincent]"; + mes "\"I don't know how to thank you enough!\""; + next; + goto L_Wait; + +J_3: + mes "[Vincent]"; + mes "\"I will thank you when I get them!\""; + next; + goto L_Wait; + +J_4: + mes "[Vincent]"; + mes "\"I'm sure I will give a small reward. :D\""; + next; + goto L_Wait; + +L_Wait: + mes "[Vincent]"; + mes "\"Now please go get me 30 [Bug Legs]\""; + close; + +L_Reas: + if(countitem(518) >= 30) goto L_Have; + mes "[Vincent]"; + mes "\"Please help me collect 30 [Bug Legs]!\""; + close; + +L_Have: + delitem 518, 30; + mes "[Vincent]"; + mes "\"Excellent! Finally I can complete the model!!\""; + next; + mes "[Vincent]"; + mes "\"Here you go, a little of my appreciation!\""; + next; + set zeny, zeny + 1000; + set Bugleg, 2; + close; + +L_Done: + mes "[Vincent]"; + mes "\"Thanks for your help!\""; + close; +} + diff --git a/npc/001-1_Tulimshar/workers.txt b/npc/001-1_Tulimshar/workers.txt new file mode 100644 index 00000000..31c6afa3 --- /dev/null +++ b/npc/001-1_Tulimshar/workers.txt @@ -0,0 +1,13 @@ +// + +new_3-1.gat,45,21,0 script Construction Worker 155,{ + mes "[Construction worker]"; + mes "\"I can't let you beyond this gate. The area is closed for renovation; most of it was destroyed during the earthquake.\""; + close; +} + +new_3-1.gat,124,21,0 script Construction Worker 155,{ + mes "[Construction worker]"; + mes "\"Move along.\""; + close; +} diff --git a/npc/001-2_Tulimshar/_import.txt b/npc/001-2_Tulimshar/_import.txt new file mode 100644 index 00000000..15ecfe64 --- /dev/null +++ b/npc/001-2_Tulimshar/_import.txt @@ -0,0 +1,8 @@ +map: 001-2.gat +npc: npc/001-2_Tulimshar/troupe_leader.txt +npc: npc/001-2_Tulimshar/shops.txt +npc: npc/001-2_Tulimshar/phaet.txt +npc: npc/001-2_Tulimshar/omar.txt +npc: npc/001-2_Tulimshar/casino.txt +npc: npc/001-2_Tulimshar/_warps.txt +npc: npc/001-2_Tulimshar/_mobs.txt diff --git a/npc/001-2_Tulimshar/_mobs.txt b/npc/001-2_Tulimshar/_mobs.txt new file mode 100644 index 00000000..afe32cd5 --- /dev/null +++ b/npc/001-2_Tulimshar/_mobs.txt @@ -0,0 +1,7 @@ +// 001-2 Tulimshar mobs + + + +001-2.gat,0,0,0 script Mob001-2 -1,{ + end; +} diff --git a/npc/001-2_Tulimshar/_warps.txt b/npc/001-2_Tulimshar/_warps.txt new file mode 100644 index 00000000..87d2254d --- /dev/null +++ b/npc/001-2_Tulimshar/_warps.txt @@ -0,0 +1,13 @@ +// 001-2 Tulimshar warps + +001-2.gat,25,35 warp ToOutside -1,-1,001-1.gat,32,72 +001-2.gat,23,24 warp ToArena -1,0,001-3.gat,72,31 +001-2.gat,44,25 warp To2ndFloor -1,0,001-2.gat,65,25 +001-2.gat,64,25 warp To1stFloor -1,-1,001-2.gat,42,25 +001-2.gat,67,30 warp ToBedroom -1,-1,001-2.gat,102,23 +001-2.gat,76,30 warp ToDeposit -1,-1,001-2.gat,130,23 +001-2.gat,69,22 warp ToCasino 0,-1,001-2.gat,32,72 +001-2.gat,103,22 warp To2ndFloor 0,-1,001-2.gat,67,29 +001-2.gat,131,22 warp To2ndFloor 0,-1,001-2.gat,76,29 +001-2.gat,32,73 warp To2ndFloor -1,-1,001-2.gat,68,23 +001-2.gat,71,73 warp ToOutdoor -1,-1,001-1.gat,75,42 diff --git a/npc/001-2_Tulimshar/casino.txt b/npc/001-2_Tulimshar/casino.txt new file mode 100644 index 00000000..58f99ea5 --- /dev/null +++ b/npc/001-2_Tulimshar/casino.txt @@ -0,0 +1,172 @@ +// + +new_8-1.gat,134,23,0 script Valdo 117,{ + mes "[Valdo the Worker]"; + mes "\"Please let me work, I'm really in a hurry!\""; + close; +} + +new_8-1.gat,37,65,0 script Slot1 127,{ + callfunc "SlotMachine"; +} + +new_8-1.gat,39,65,0 script Slot2 127,{ + callfunc "SlotMachine"; +} + +new_8-1.gat,41,65,0 script Slot3 127,{ + callfunc "SlotMachine"; +} + +new_8-1.gat,32,67,0 shop MoneyChanger 124,503:10 + +new_8-1.gat,28,63,0 script BlackJack 107,{ + mes "[Croupier]"; + mes "\"Would you like to play Black Jack?"; + mes "You will need 15 casino coins.\""; + next; + + menu + "Yes", L_Begin, + "No", -; + mes "\"As you wish.\""; + close; + +L_Begin: + if(countitem(503) < 15) goto L_NoCoin; + delitem 503, 15; + set @croupier, rand(0, 4); + set @croupier, @croupier + 17; + set @player, rand(4, 21); + mes "\"You got " + @player + " with your cards."; + if(@player == 21) goto L_End; + mes "Do you want another card?\""; + next; + + menu + "Yes", L_Another, + "No", L_End; + +L_Another: + set @tempace, rand(2, 11); + if (@tempace == 11) goto L_Ace; + set @player, @player + @tempace; + if (@player > 21) goto L_Lost; + if (@player == 21) goto L_End; + mes "\"You got " + @player + " with your cards."; + mes "Do you want another card?\""; + next; + + menu + "Yes", L_Another, + "No", L_End; +L_End: + if (@player <= @croupier) goto L_Lost; + mes "\"Congratulations, you won!"; + mes "I had " + @croupier + "."; + mes "You get 45 casino coins.\""; + getitem 503, 45; + close; + +L_NoCoin: + mes "\"You need at least 15 coins.\""; + close; + +L_Lost: + mes "\"I'm sorry but you lost."; + mes "You got " + @player + " with your cards."; + mes "I had " + @croupier + ".\""; + close; + +L_Ace: + set @player, @player + 11; + if (@player > 21) set @player, @player - 10; + if (@player > 21) goto L_Lost; + if (@player == 21) goto L_End; + mes "You got " + @player + " with your cards."; + mes "Do you want another card?"; + next; + + menu + "Yes", L_Another, + "No", L_End; + +} + +new_8-1.gat,22,69,0 script Roulette 107,{ + mes "\"Good evening monsieur..."; + mes "How much would you like to bet?\""; + next; + + menu + "1 coin", L_b1, + "5 coins", L_b5, + "10 coins", L_b10, + "50 coins", L_b50, + "100 coins", L_b100, + "Maybe I'll play later", L_Later; + mes "\"Rien ne va plus...\""; + close; + +L_b1: + set @bet, 1; + goto L_Check; + +L_b5: + set @bet, 5; + goto L_Check; + +L_b10: + set @bet, 10; + goto L_Check; + +L_b50: + set @bet, 50; + goto L_Check; + +L_b100: + set @bet, 100; + goto L_Check; + +L_Check: + if(countitem(503) < @bet) goto L_NoCoin; + delitem 503, @bet; + menu + "Choose a color", -, + "Choose a number", L_Number; + menu + "Black", -, + "Red", -; + set @color,rand(2); + if(@color == 1) goto L_Lost; + mes "You won!"; + getitem 503, @bet * 2; + close; + +L_Number: + menu + "0", -, "00", -, "1", -, "2", -, "3", -, "4", -, "5", -, "6", -, "7", -, "8", -, + "9", -, "10", -, "11", -, "12", -, "13", -, "14", -, "15", -, "16", -, "17", -, "18", -, + "19", -, "20", -, "21", -, "22", -, "23", -, "24", -, "25", -, "26", -, "27", -, "28", -, + "29", -, "30", -, "31", -, "32", -, "33", -, "34", -, "35", -, "36", -; + + if (@menu == 1) set @number, 0; + if (@menu == 2) set @number, 37; + if (@menu >= 3) set @number, @menu - 2; + + set @roulette, rand(38); + if (@roulette == 37) mes "The ball stopped on 00"; + if (@roulette < 37) mes "The ball stopped on " + @roulette; + if (@number != @roulette) goto L_Lost; + mes "\"You won!\""; + getitem 503, @bet * 10; + close; + +L_NoCoin: + mes "\"You don't have enough coins.\""; + close; + +L_Lost: + mes "\"I'm sorry, you lost.\""; + close; +} diff --git a/npc/001-2_Tulimshar/omar.txt b/npc/001-2_Tulimshar/omar.txt new file mode 100644 index 00000000..25865e5f --- /dev/null +++ b/npc/001-2_Tulimshar/omar.txt @@ -0,0 +1,6 @@ +// + +new_8-1.gat,70,60,0 script Omar 162,{ + mes "[Omar]"; + mes "\"Welcome to my humble abode.\""; +} diff --git a/npc/001-2_Tulimshar/phaet.txt b/npc/001-2_Tulimshar/phaet.txt new file mode 100644 index 00000000..4cc13e9a --- /dev/null +++ b/npc/001-2_Tulimshar/phaet.txt @@ -0,0 +1,30 @@ +// + +new_8-1.gat,24,23,0 script Phaet 125,{ + mes "[Phaet the Royal Guard]"; + mes "\"Hey, you seem tough enough! Would you like to prove your skills? I'll let you in the arena if you give me 50 gp. You can fight against other players there.\""; + next; + + menu + "Yes", L_Sure, + "No", -; + + mes "[Phaet the Royal Guard]"; + mes "\"Ha ha, coward.\""; + close; + +L_Sure: + if (zeny < 50) goto L_NoMoney; + set zeny, zeny - 50; + + mes "[Phaet the Royal Guard]"; + mes "\"Get ready!\""; + next; + + warp "new_6-1.gat", 0, 0; + close; + +L_NoMoney: + mes "\"Wait a second, you don't have enough money.\""; + close; +} diff --git a/npc/001-2_Tulimshar/shops.txt b/npc/001-2_Tulimshar/shops.txt new file mode 100644 index 00000000..8482edd9 --- /dev/null +++ b/npc/001-2_Tulimshar/shops.txt @@ -0,0 +1,9 @@ +// + +new_8-1.gat,26,26,0 shop InnKeeper 112,539:175,513:20,519 + +new_8-1.gat,103,26,0 script Rebecca 118,{ + set @npcName$, "Rebecca the Inn Keeper"; + set @cost, 100; + callfunc "Inn"; +} diff --git a/npc/001-2_Tulimshar/troupe_leader.txt b/npc/001-2_Tulimshar/troupe_leader.txt new file mode 100644 index 00000000..a602b1d2 --- /dev/null +++ b/npc/001-2_Tulimshar/troupe_leader.txt @@ -0,0 +1,43 @@ +// + +new_8-1.gat,34,25,0 script Troupe Leader 165,{ + if (Inspector == 4) goto L_NohMask_Troupe; + if (Inspector == 13) goto L_NohMask_Found; + + mes "[Troupe Leader]"; + mes "\"Hello. I'm the leader of a traveling theater troupe. We'll be staying here in Tulimshar for a while.\""; + close; + +L_NohMask_Troupe: + mes "[Troupe Leader]"; + mes "\"Yes, a mask was stolen from us the last night we were in Hurnscald.\""; + next; + menu + "Any ideas on who might have taken it?", L_NohMask_Idea, + "Are you sure one of your troupe members didn't hide it and commit those robberies?", L_NohMask_Accuse, + "Hmm...", -; + close; + +L_NohMask_Idea: + set Inspector, 5; + mes "[Troupe Leader]"; + mes "\"Hm...I did see an old man hang out near the theater after our last show.\""; + close; + +L_NohMask_Accuse: + mes "[Troupe Leader]"; + mes "\"I am absolutely positive. None of my troupe have left the city since we got here. Good day!\""; + close; + +L_NohMask_Found: + mes "[Troupe Leader]"; + mes "\"Thank you for finding the mask. You did such a good job, you should keep it.\""; + mes "[1500 experience points]"; + getexp 1500, 0; + next; + set Inspector, 14; + getitem 678, 1; + mes "[Troupe Leader]"; + mes "\"We don't need it anymore. We're doing different shows here.\""; + close; +} diff --git a/npc/001-3_Tulimshar_arena/_import.txt b/npc/001-3_Tulimshar_arena/_import.txt new file mode 100644 index 00000000..c0d05ff3 --- /dev/null +++ b/npc/001-3_Tulimshar_arena/_import.txt @@ -0,0 +1,6 @@ +map: 001-3.gat +npc: npc/001-3_Tulimshar_arena/pvpflag.txt +npc: npc/001-3_Tulimshar_arena/monsters.txt +npc: npc/001-3_Tulimshar_arena/guards.txt +npc: npc/001-3_Tulimshar_arena/_warps.txt +npc: npc/001-3_Tulimshar_arena/_mobs.txt diff --git a/npc/001-3_Tulimshar_arena/_mobs.txt b/npc/001-3_Tulimshar_arena/_mobs.txt new file mode 100644 index 00000000..493a64ad --- /dev/null +++ b/npc/001-3_Tulimshar_arena/_mobs.txt @@ -0,0 +1,7 @@ +// 001-3 Tulimshar arena mobs + + + +001-3.gat,0,0,0 script Mob001-3 -1,{ + end; +} diff --git a/npc/001-3_Tulimshar_arena/_warps.txt b/npc/001-3_Tulimshar_arena/_warps.txt new file mode 100644 index 00000000..bd8cd0d1 --- /dev/null +++ b/npc/001-3_Tulimshar_arena/_warps.txt @@ -0,0 +1,3 @@ +// 001-3 Tulimshar arena warps + +001-3.gat,72,29 warp ToInn 1,-1,001-2.gat,24,23 diff --git a/npc/001-3_Tulimshar_arena/guards.txt b/npc/001-3_Tulimshar_arena/guards.txt new file mode 100644 index 00000000..065ed765 --- /dev/null +++ b/npc/001-3_Tulimshar_arena/guards.txt @@ -0,0 +1,28 @@ +// + +new_6-1.gat,77,37,0 script Phaet 125,{ + mes "[Phaet the Royal Guard]"; + mes "\"Do you want to go back?\""; + next; + + menu + "Yes", L_Sure, + "No", -; + mes "Have fun."; + close; + +L_Sure: + mes "[Phaet the Royal Guard]"; + mes "\"Ok.\""; + next; + + warp "new_8-1.gat", 25, 23; + close; +} + +new_6-1.gat,69,37,0 script Aradin 126,{ + mes "[Aradin the Royal Guard]"; + mes "\"Don't touch me..."; + mes "You wouldn't enjoy the consequences.\""; + close; +} diff --git a/npc/001-3_Tulimshar_arena/monsters.txt b/npc/001-3_Tulimshar_arena/monsters.txt new file mode 100644 index 00000000..51d72132 --- /dev/null +++ b/npc/001-3_Tulimshar_arena/monsters.txt @@ -0,0 +1,14 @@ +// Map: new_6-1 +// This is the Tulimshar Arena -- below Tulimshar. +// + +new_6-1.gat,0,0,0,0 monster Maggot 1002,10,0,0,Mob6::OnMaggot + +new_6-1.gat,0,0,0 script Mob6 -1,{ +OnMaggot: + set @mobID, 1002; + callfunc "MobPoints"; + break; + + end; +} \ No newline at end of file diff --git a/npc/001-3_Tulimshar_arena/pvpflag.txt b/npc/001-3_Tulimshar_arena/pvpflag.txt new file mode 100644 index 00000000..361e062b --- /dev/null +++ b/npc/001-3_Tulimshar_arena/pvpflag.txt @@ -0,0 +1 @@ +new_6-1.gat mapflag pvp diff --git a/npc/002-1_Sandstorm/_import.txt b/npc/002-1_Sandstorm/_import.txt new file mode 100644 index 00000000..4697808e --- /dev/null +++ b/npc/002-1_Sandstorm/_import.txt @@ -0,0 +1,8 @@ +map: 002-1.gat +npc: npc/002-1_Sandstorm/rogue.txt +npc: npc/002-1_Sandstorm/nomads.txt +npc: npc/002-1_Sandstorm/monsters.txt +npc: npc/002-1_Sandstorm/merchant.txt +npc: npc/002-1_Sandstorm/dark_mage.txt +npc: npc/002-1_Sandstorm/_warps.txt +npc: npc/002-1_Sandstorm/_mobs.txt diff --git a/npc/002-1_Sandstorm/_mobs.txt b/npc/002-1_Sandstorm/_mobs.txt new file mode 100644 index 00000000..2ef2a902 --- /dev/null +++ b/npc/002-1_Sandstorm/_mobs.txt @@ -0,0 +1,13 @@ +// 002-1 Sandstorm mobs + +002-1.gat,0,0,0,0 monster Maggot 1002,20,1000,500,Mob002-1::On1002 + + +002-1.gat,0,0,0 script Mob002-1 -1,{ +On1002: + set @mobID, 1002; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/002-1_Sandstorm/_warps.txt b/npc/002-1_Sandstorm/_warps.txt new file mode 100644 index 00000000..5153e83b --- /dev/null +++ b/npc/002-1_Sandstorm/_warps.txt @@ -0,0 +1,7 @@ +// 002-1 Sandstorm warps + +002-1.gat,58,12 warp ToTulimshar 3,-1,001-1.gat,44,80 +002-1.gat,108,79 warp ToEasternDesert -1,1,005-1.gat,23,40 +002-1.gat,12,66 warp ToWesternDesert -1,3,003-1.gat,168,76 +002-1.gat,28,13 warp ToBeach 1,-1,004-1.gat,84,111 +002-1.gat,20,94 warp ToCave -1,-1,002-3.gat,37,32 diff --git a/npc/002-1_Sandstorm/dark_mage.txt b/npc/002-1_Sandstorm/dark_mage.txt new file mode 100644 index 00000000..1bf8df8c --- /dev/null +++ b/npc/002-1_Sandstorm/dark_mage.txt @@ -0,0 +1,46 @@ +new_1-1.gat,24,24,0 script SoulThief 103,{ + + if (class == 1) goto L_Soul; + mes "[Dark Mage]"; + mes "\"Psss hey would you like to have more power?\""; + next; + + menu + "You fool, that's not possible", -, + "I'm listening...", L_Go; + close; + +L_Go: + mes "[Dark Mage]"; + mes "\"I can give you ancient powers that will let you become the greatest warrior in The Mana World, or the best merchant."; + mes "But everything has got his price...\""; + next; + + mes "[Dark Mage]"; + mes "\"Oh nothing important nor expensive."; + mes "Just your soul!\""; + next; + + menu + "My soul? Here it is", L_Soul, + "I need a better explanation!", -; + + mes "[Dark Mage]"; + mes "Well there's a very small possibility that your player will be translated into the new server."; + mes "I said a very, very small possibility."; + mes "Players without a soul instead will be lost forever..."; + mes "Come on, you won't loose that much!\""; + next; + + menu + "Hmmm ok, I guess you can take it.", L_Soul, + "Maybe I'll think about it a bit more", -; + mes "\"I know you'll come here again when you'll get killed by a maggot, begging me to help you\""; + close; + +L_Soul: + mes "[Dark Mage]"; + mes "\"Hrhrhr, your soul is finally mine!\""; + jobchange 1; + close; +} \ No newline at end of file diff --git a/npc/002-1_Sandstorm/merchant.txt b/npc/002-1_Sandstorm/merchant.txt new file mode 100644 index 00000000..d01a9164 --- /dev/null +++ b/npc/002-1_Sandstorm/merchant.txt @@ -0,0 +1 @@ +new_1-1.gat,19,99,0 shop Ishyah 109,525:800,531:3000,530:8000,1199:3,603:-1 diff --git a/npc/002-1_Sandstorm/monsters.txt b/npc/002-1_Sandstorm/monsters.txt new file mode 100644 index 00000000..a98c8406 --- /dev/null +++ b/npc/002-1_Sandstorm/monsters.txt @@ -0,0 +1,24 @@ +// Map: new_1-1 +// This is the Desert (Sandstorm) south of Tulimshar. +// + +new_1-1.gat,0,0,0,0 monster GreenSlime 1005,50,0,0,Mob1::OnGreenSlime +new_1-1.gat,0,0,0,0 monster GiantMaggot 1006,30,0,0,Mob1::OnGiantMaggot +new_1-1.gat,0,0,0,0 monster RedScorpion 1004,20,0,0,Mob1::OnRedScorpion + +new_1-1.gat,0,0,0 script Mob1 -1,{ +OnGreenSlime: + set @mobID, 1005; + callfunc "MobPoints"; + break; + +OnGiantMaggot: + set @mobID, 1006; + callfunc "MobPoints"; + break; + +OnRedScorpion: + set @mobID, 1004; + callfunc "MobPoints"; + break; +} diff --git a/npc/002-1_Sandstorm/nomads.txt b/npc/002-1_Sandstorm/nomads.txt new file mode 100644 index 00000000..13edea35 --- /dev/null +++ b/npc/002-1_Sandstorm/nomads.txt @@ -0,0 +1,14 @@ +new_1-1.gat,15,67,0 script Samuel 132,{ + mes "[Samuel the Nomad]"; + mes "\"This is really a nice place.\""; + + mes "Don't you think so?\""; + close; +} + +new_1-1.gat,18,68,0 script Elijah 128,{ + mes "[Elijah the Nomad]"; + mes "\"If I only had a tent...\""; + + close; +} diff --git a/npc/002-1_Sandstorm/rogue.txt b/npc/002-1_Sandstorm/rogue.txt new file mode 100644 index 00000000..87ec45fa --- /dev/null +++ b/npc/002-1_Sandstorm/rogue.txt @@ -0,0 +1,84 @@ +new_1-1.gat,22,21,0 script Malivox 103,{ + +// if (ResetA_charstate == 1) goto L_Multiple; + +// set @cost, 10000000 / ($ResetA_uses + 1); + + set @cost, baselevel * 100; + + mes "[Rogue Mage]"; + mes "\"I have come across a spell that will"; + mes "reset your status points."; + mes "Normally this spell is expensive, but"; + mes "due to an unusual constellation of the"; + mes "stars I can cast it very cheaply!"; + mes "For you it will cost only "+@cost+" gp.\""; + next; + + menu "Reset my stats",-,"Forget about it",L_Pass; + + if (zeny<@cost) goto L_NoMoney; + +// set $ResetA_uses, $ResetA_uses + 1; +// set ResetA_charstate, 1; + +L_Reset: + + set zeny, zeny-@cost; + + resetstatus; + + // even though statusup2 takes a number, it does not + // decrease chars statspoint, hence the repeating. + + statusup bStr; + statusup bStr; + statusup bStr; + statusup bStr; + + statusup bvit; + statusup bvit; + statusup bvit; + statusup bvit; + + statusup bInt; + statusup bInt; + statusup bInt; + statusup bInt; + + statusup bAgi; + statusup bAgi; + statusup bAgi; + statusup bAgi; + + statusup bDex; + statusup bDex; + statusup bDex; + statusup bDex; + + statusup bLuk; + statusup bLuk; + statusup bLuk; + statusup bLuk; + + mes "[Rogue Mage]"; + mes "\"There you are."; + mes ""; + mes "Good as new!\""; + next; + close; + +L_Pass: + mes "[Rogue Mage]"; + mes "\"Very well then, see you.\""; + next; + close; + +L_NoMoney: + mes "[Rogue Mage]"; + mes "\"Oh dear, the price cannot be bargained."; + mes ""; + mes "Perhaps you can borrow from a friend?\""; + next; + close; +} diff --git a/npc/002-3_Desert_mines/_import.txt b/npc/002-3_Desert_mines/_import.txt new file mode 100644 index 00000000..fdbfc449 --- /dev/null +++ b/npc/002-3_Desert_mines/_import.txt @@ -0,0 +1,4 @@ +map: 002-3.gat +npc: npc/002-3_Desert_mines/miners.txt +npc: npc/002-3_Desert_mines/_warps.txt +npc: npc/002-3_Desert_mines/_mobs.txt diff --git a/npc/002-3_Desert_mines/_mobs.txt b/npc/002-3_Desert_mines/_mobs.txt new file mode 100644 index 00000000..63150759 --- /dev/null +++ b/npc/002-3_Desert_mines/_mobs.txt @@ -0,0 +1,19 @@ +// 002-3 Desert mines mobs + +002-3.gat,38,38,9,9 monster Red Slime 1008,1,0,0,Mob002-3::On1008 +002-3.gat,82,92,9,9 monster Black Scorpion 1009,1,0,0,Mob002-3::On1009 + + +002-3.gat,0,0,0 script Mob002-3 -1,{ +On1008: + set @mobID, 1008; + callfunc "MobPoints"; + break; + +On1009: + set @mobID, 1009; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/002-3_Desert_mines/_warps.txt b/npc/002-3_Desert_mines/_warps.txt new file mode 100644 index 00000000..8f5b51c2 --- /dev/null +++ b/npc/002-3_Desert_mines/_warps.txt @@ -0,0 +1,4 @@ +// 002-3 Desert mines warps + +002-3.gat,38,30 warp CaveExit 2,-1,002-1.gat,25,95 +002-3.gat,68,98 warp toLevel2 -1,-1,002-4.gat,34,98 diff --git a/npc/002-3_Desert_mines/miners.txt b/npc/002-3_Desert_mines/miners.txt new file mode 100644 index 00000000..1bbb1637 --- /dev/null +++ b/npc/002-3_Desert_mines/miners.txt @@ -0,0 +1,39 @@ +// + +new_2-1.gat,35,35,6 script Nathan 109,{ + mes "[Nathan the Miner]"; + mes "\"It's very dangerous in here."; + mes "We had a big earthquake here"; + mes "just recently, too... so be"; + mes "careful!\""; + close; +} + +new_5-1.gat,32,94,6 script Naem 109,{ + mes "[Naem the Miner]"; + mes "\"Do you want me to lift you to the upper level?\""; + next; + menu + "Sure", L_Sure, + "Not yet!", -; + close; + +L_Sure: + warp "new_2-1.gat", 87, 99; + close; +} + +new_2-1.gat,85,97,6 script Naem 109,{ + mes "[Naem the Miner]"; + mes "\"We discovered an underground palace."; + mes "Do you want me to let you in?\""; + next; + menu + "Sure", L_Sure, + "Not yet!", -; + close; + +L_Sure: + warp "new_5-1.gat", 34, 92; + close; +} diff --git a/npc/002-4_Desert_mines/_import.txt b/npc/002-4_Desert_mines/_import.txt new file mode 100644 index 00000000..e22b6c19 --- /dev/null +++ b/npc/002-4_Desert_mines/_import.txt @@ -0,0 +1,5 @@ +map: 002-4.gat +npc: npc/002-4_Desert_mines/monsters.txt +npc: npc/002-4_Desert_mines/chest.txt +npc: npc/002-4_Desert_mines/_warps.txt +npc: npc/002-4_Desert_mines/_mobs.txt diff --git a/npc/002-4_Desert_mines/_mobs.txt b/npc/002-4_Desert_mines/_mobs.txt new file mode 100644 index 00000000..ff53d9c6 --- /dev/null +++ b/npc/002-4_Desert_mines/_mobs.txt @@ -0,0 +1,19 @@ +// 002-4 Desert mines mobs + +002-4.gat,0,0,0,0 monster Spider 1012,20,0,0,Mob002-4::On1012 +002-4.gat,0,0,0,0 monster Yellow Slime 1007,25,0,0,Mob002-4::On1007 + + +002-4.gat,0,0,0 script Mob002-4 -1,{ +On1007: + set @mobID, 1007; + callfunc "MobPoints"; + break; + +On1012: + set @mobID, 1012; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/002-4_Desert_mines/_warps.txt b/npc/002-4_Desert_mines/_warps.txt new file mode 100644 index 00000000..24f71a1d --- /dev/null +++ b/npc/002-4_Desert_mines/_warps.txt @@ -0,0 +1,3 @@ +// 002-4 Desert mines warps + +002-4.gat,34,99 warp toLevel1 -1,-1,002-3.gat,68,99 diff --git a/npc/002-4_Desert_mines/chest.txt b/npc/002-4_Desert_mines/chest.txt new file mode 100644 index 00000000..865c0f7e --- /dev/null +++ b/npc/002-4_Desert_mines/chest.txt @@ -0,0 +1,31 @@ +// + +new_5-1.gat,93,37,0 script Treasure 111,{ + if( ChestQuest == 1) goto L_Finished; + + mes "[Chest]"; + mes "Would you try to open it?"; + next; + menu + "Yes", L_Yes, + "No", -; + close; + +L_Yes: + if(countitem(537) < 3) goto L_Not_Enough; + delitem 537, 3; + getitem 536, 1; + mes "[Chest]"; + mes "You opened it and found a short sword!"; + set ChestQuest, 1; + 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; +} diff --git a/npc/002-4_Desert_mines/monsters.txt b/npc/002-4_Desert_mines/monsters.txt new file mode 100644 index 00000000..0b8f967b --- /dev/null +++ b/npc/002-4_Desert_mines/monsters.txt @@ -0,0 +1,20 @@ +// Map: new_5-1 +// This is the Desert Mines south of Tulimshar -- level 2. +// + +new_5-1.gat,0,0,0,0 monster Spider 1012,10,2500,0,Mob5::OnSpider +new_5-1.gat,0,0,0,0 monster YellowSlime 1007,25,2500,0,Mob5::OnYellowSlime + +new_5-1.gat,0,0,0 script Mob5 -1,{ +OnSpider: + set @mobID, 1012; + callfunc "MobPoints"; + break; + +OnYellowSlime: + set @mobID, 1007; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/003-1_Beach/_import.txt b/npc/003-1_Beach/_import.txt new file mode 100644 index 00000000..68474692 --- /dev/null +++ b/npc/003-1_Beach/_import.txt @@ -0,0 +1,4 @@ +map: 003-1.gat +npc: npc/003-1_Beach/monsters.txt +npc: npc/003-1_Beach/_warps.txt +npc: npc/003-1_Beach/_mobs.txt diff --git a/npc/003-1_Beach/_mobs.txt b/npc/003-1_Beach/_mobs.txt new file mode 100644 index 00000000..c7daca33 --- /dev/null +++ b/npc/003-1_Beach/_mobs.txt @@ -0,0 +1,19 @@ +// 003-1 Beach mobs + +003-1.gat,117,48,19,19 monster Black Scorpion 1009,10,0,0,Mob003-1::On1009 +003-1.gat,105,64,19,19 monster Snake 1010,10,0,0,Mob003-1::On1010 + + +003-1.gat,0,0,0 script Mob003-1 -1,{ +On1009: + set @mobID, 1009; + callfunc "MobPoints"; + break; + +On1010: + set @mobID, 1010; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/003-1_Beach/_warps.txt b/npc/003-1_Beach/_warps.txt new file mode 100644 index 00000000..2358947b --- /dev/null +++ b/npc/003-1_Beach/_warps.txt @@ -0,0 +1,4 @@ +// 003-1 Beach warps + +003-1.gat,172,77 warp ToSandstorm -1,3,002-1.gat,37,109 +003-1.gat,20,23 warp ToWoodland 1,-1,007-1.gat,120,112 diff --git a/npc/003-1_Beach/monsters.txt b/npc/003-1_Beach/monsters.txt new file mode 100644 index 00000000..81246489 --- /dev/null +++ b/npc/003-1_Beach/monsters.txt @@ -0,0 +1,20 @@ +// Map: new_15-1 +// This is the Desert Beach. +// + +new_15-1.gat,0,0,0,0 monster BlackScorpion 1009,20,0,0,Mob15::OnBlackScorpion +new_15-1.gat,0,0,0,0 monster Snake 1010,10,0,0,Mob15::OnSnake + +new_15-1.gat,0,0,0 script Mob15 -1,{ +OnBlackScorpion: + set @mobID, 1009; + callfunc "MobPoints"; + break; + +OnSnake: + set @mobID, 1010; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/004-1_Beach/_import.txt b/npc/004-1_Beach/_import.txt new file mode 100644 index 00000000..fc7c344b --- /dev/null +++ b/npc/004-1_Beach/_import.txt @@ -0,0 +1,4 @@ +map: 004-1.gat +npc: npc/004-1_Beach/monsters.txt +npc: npc/004-1_Beach/_warps.txt +npc: npc/004-1_Beach/_mobs.txt diff --git a/npc/004-1_Beach/_mobs.txt b/npc/004-1_Beach/_mobs.txt new file mode 100644 index 00000000..bc8e68a9 --- /dev/null +++ b/npc/004-1_Beach/_mobs.txt @@ -0,0 +1,7 @@ +// 004-1 Beach mobs + + + +004-1.gat,0,0,0 script Mob004-1 -1,{ + end; +} diff --git a/npc/004-1_Beach/_warps.txt b/npc/004-1_Beach/_warps.txt new file mode 100644 index 00000000..b6ccc7d0 --- /dev/null +++ b/npc/004-1_Beach/_warps.txt @@ -0,0 +1,4 @@ +// 004-1 Beach warps + +004-1.gat,84,113 warp ToSandstorm 1,-1,002-1.gat,29,15 +004-1.gat,37,111 warp ToBeach 1,-1,003-1.gat,141,21 diff --git a/npc/004-1_Beach/monsters.txt b/npc/004-1_Beach/monsters.txt new file mode 100644 index 00000000..89fcbda7 --- /dev/null +++ b/npc/004-1_Beach/monsters.txt @@ -0,0 +1,26 @@ +// Map: new_34-1 +// This is the Beach west of Tulimshar. +// + +new_34-1.gat,0,0,0,0 monster SeaSlime 1033,30,0,0,Mob34::OnSeaSlime +new_34-1.gat,0,0,0,0 monster GiantMaggot 1006,10,0,0,Mob34::OnGiantMaggot +new_34-1.gat,0,0,0,0 monster RedScorpion 1004,12,0,0,Mob34::OnRedScorpion + +new_34-1.gat,0,0,0 script Mob34 -1,{ +OnSeaSlime: + set @mobID, 1033; + callfunc "MobPoints"; + break; + +OnGiantMaggot: + set @mobID, 1006; + callfunc "MobPoints"; + break; + +OnRedScorpion: + set @mobID, 1004; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/005-1_Snake_desert/_import.txt b/npc/005-1_Snake_desert/_import.txt new file mode 100644 index 00000000..88bd9e5d --- /dev/null +++ b/npc/005-1_Snake_desert/_import.txt @@ -0,0 +1,5 @@ +map: 005-1.gat +npc: npc/005-1_Snake_desert/npcs.txt +npc: npc/005-1_Snake_desert/monsters.txt +npc: npc/005-1_Snake_desert/_warps.txt +npc: npc/005-1_Snake_desert/_mobs.txt diff --git a/npc/005-1_Snake_desert/_mobs.txt b/npc/005-1_Snake_desert/_mobs.txt new file mode 100644 index 00000000..79d958db --- /dev/null +++ b/npc/005-1_Snake_desert/_mobs.txt @@ -0,0 +1,19 @@ +// 005-1 Snake desert mobs + +005-1.gat,0,0,0,0 monster Maggot 1002,1,0,0,Mob005-1::On1002 +005-1.gat,0,0,0,0 monster Snake 1010,1,0,0,Mob005-1::On1010 + + +005-1.gat,0,0,0 script Mob005-1 -1,{ +On1002: + set @mobID, 1002; + callfunc "MobPoints"; + break; + +On1010: + set @mobID, 1010; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/005-1_Snake_desert/_warps.txt b/npc/005-1_Snake_desert/_warps.txt new file mode 100644 index 00000000..f21bdf8a --- /dev/null +++ b/npc/005-1_Snake_desert/_warps.txt @@ -0,0 +1,18 @@ +// 005-1 Snake desert warps + +005-1.gat,19,41 warp ToSandstorm -1,2,002-1.gat,106,78 +005-1.gat,89,23 warp ToSnakeCave -1,-1,005-3.gat,52,34 +005-1.gat,71,75 warp ToSnakeCave -1,-1,005-3.gat,33,83 +005-1.gat,167,108 warp ToDesertMountains -1,-1,006-1.gat,20,33 +005-1.gat,168,107 warp ToDesertMountains -1,-1,006-1.gat,21,32 +005-1.gat,169,106 warp ToDesertMountains -1,-1,006-1.gat,22,31 +005-1.gat,171,104 warp ToDesertMountains -1,-1,006-1.gat,24,29 +005-1.gat,170,105 warp ToDesertMountains -1,-1,006-1.gat,23,30 +005-1.gat,172,103 warp ToDesertMountains -1,-1,006-1.gat,25,28 +005-1.gat,174,101 warp ToDesertMountains -1,-1,006-1.gat,27,26 +005-1.gat,173,102 warp ToDesertMountains -1,-1,006-1.gat,26,27 +005-1.gat,175,100 warp ToDesertMountains -1,-1,006-1.gat,28,25 +005-1.gat,176,99 warp ToDesertMountains -1,-1,006-1.gat,29,24 +005-1.gat,177,98 warp ToDesertMountains -1,-1,006-1.gat,30,23 +005-1.gat,178,97 warp ToDesertMountains -1,-1,006-1.gat,31,22 +005-1.gat,179,96 warp ToDesertMountains -1,-1,006-1.gat,32,21 diff --git a/npc/005-1_Snake_desert/monsters.txt b/npc/005-1_Snake_desert/monsters.txt new file mode 100644 index 00000000..c2ec4c71 --- /dev/null +++ b/npc/005-1_Snake_desert/monsters.txt @@ -0,0 +1,20 @@ +// Map: new_7-1 +// This is the Snake Desert. +// + +new_7-1.gat,0,0,0,0 monster Maggot 1002,20,0,0,Mob7::OnMaggot +new_7-1.gat,0,0,0,0 monster Snake 1010,20,0,0,Mob7::OnSnake + +new_7-1.gat,0,0,0 script Mob7 -1,{ +OnMaggot: + set @mobID, 1002; + callfunc "MobPoints"; + break; + +OnSnake: + set @mobID, 1010; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/005-1_Snake_desert/npcs.txt b/npc/005-1_Snake_desert/npcs.txt new file mode 100644 index 00000000..8b3d1d0a --- /dev/null +++ b/npc/005-1_Snake_desert/npcs.txt @@ -0,0 +1,17 @@ +// + +new_7-1.gat,69,76,0 shop George 115,530:3000,1199:3,529:5,539:175,562:500 + +new_7-1.gat,66,75,0 script Kieron 132,{ + mes "[Kieron]"; + mes "\"Be careful if you're going in that cave,"; + mes "it's packed full of monsters.\""; + close; +} + +new_7-1.gat,91,23,0 script William 131,{ + mes "[William]"; + mes "\"Going in the cave?"; + mes "You better watch your step, last time I checked it was full of monsters!\""; + close; +} diff --git a/npc/005-3_Snake_pit/_import.txt b/npc/005-3_Snake_pit/_import.txt new file mode 100644 index 00000000..b22eb36a --- /dev/null +++ b/npc/005-3_Snake_pit/_import.txt @@ -0,0 +1,4 @@ +map: 005-3.gat +npc: npc/005-3_Snake_pit/monsters.txt +npc: npc/005-3_Snake_pit/_warps.txt +npc: npc/005-3_Snake_pit/_mobs.txt diff --git a/npc/005-3_Snake_pit/_mobs.txt b/npc/005-3_Snake_pit/_mobs.txt new file mode 100644 index 00000000..c129d051 --- /dev/null +++ b/npc/005-3_Snake_pit/_mobs.txt @@ -0,0 +1,7 @@ +// 005-3 Snake pit mobs + + + +005-3.gat,0,0,0 script Mob005-3 -1,{ + end; +} diff --git a/npc/005-3_Snake_pit/_warps.txt b/npc/005-3_Snake_pit/_warps.txt new file mode 100644 index 00000000..95a1e419 --- /dev/null +++ b/npc/005-3_Snake_pit/_warps.txt @@ -0,0 +1,4 @@ +// 005-3 Snake pit warps + +005-3.gat,52,33 warp CaveExit -1,-1,005-1.gat,89,24 +005-3.gat,33,82 warp CaveExit -1,-1,005-1.gat,71,76 diff --git a/npc/005-3_Snake_pit/monsters.txt b/npc/005-3_Snake_pit/monsters.txt new file mode 100644 index 00000000..8d88def8 --- /dev/null +++ b/npc/005-3_Snake_pit/monsters.txt @@ -0,0 +1,14 @@ +// Map: new_22-1 +// This is the Snake Pit, a cave in the Snake Desert. +// + +new_22-1.gat,0,0,0,0 monster Snake 1010,175,0,0,Mob22::OnSnake + +new_22-1.gat,0,0,0 script Mob22 -1,{ +OnSnake: + set @mobID, 1010; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/006-1_Desert_mountains/_import.txt b/npc/006-1_Desert_mountains/_import.txt new file mode 100644 index 00000000..607997ed --- /dev/null +++ b/npc/006-1_Desert_mountains/_import.txt @@ -0,0 +1,6 @@ +map: 006-1.gat +npc: npc/006-1_Desert_mountains/pachua.txt +npc: npc/006-1_Desert_mountains/monsters.txt +npc: npc/006-1_Desert_mountains/mika.txt +npc: npc/006-1_Desert_mountains/_warps.txt +npc: npc/006-1_Desert_mountains/_mobs.txt diff --git a/npc/006-1_Desert_mountains/_mobs.txt b/npc/006-1_Desert_mountains/_mobs.txt new file mode 100644 index 00000000..0225efff --- /dev/null +++ b/npc/006-1_Desert_mountains/_mobs.txt @@ -0,0 +1,7 @@ +// 006-1 Desert mountains mobs + + + +006-1.gat,0,0,0 script Mob006-1 -1,{ + end; +} diff --git a/npc/006-1_Desert_mountains/_warps.txt b/npc/006-1_Desert_mountains/_warps.txt new file mode 100644 index 00000000..6bc6e86c --- /dev/null +++ b/npc/006-1_Desert_mountains/_warps.txt @@ -0,0 +1,34 @@ +// 006-1 Desert mountains warps + +006-1.gat,28,21 warp ToSnakeDesert -1,-1,005-1.gat,175,96 +006-1.gat,27,22 warp ToSnakeDesert -1,-1,005-1.gat,174,97 +006-1.gat,30,19 warp ToSnakeDesert -1,-1,005-1.gat,177,94 +006-1.gat,29,20 warp ToSnakeDesert -1,-1,005-1.gat,176,95 +006-1.gat,26,23 warp ToSnakeDesert -1,-1,005-1.gat,173,98 +006-1.gat,25,24 warp ToSnakeDesert -1,-1,005-1.gat,172,99 +006-1.gat,23,26 warp ToSnakeDesert -1,-1,005-1.gat,170,101 +006-1.gat,24,25 warp ToSnakeDesert -1,-1,005-1.gat,171,100 +006-1.gat,22,27 warp ToSnakeDesert -1,-1,005-1.gat,169,102 +006-1.gat,21,28 warp ToSnakeDesert -1,-1,005-1.gat,168,103 +006-1.gat,20,29 warp ToSnakeDesert -1,-1,005-1.gat,167,104 +006-1.gat,19,30 warp ToSnakeDesert -1,-1,005-1.gat,166,105 +006-1.gat,18,31 warp ToSnakeDesert -1,-1,005-1.gat,165,106 +006-1.gat,40,26 warp ToDesertMountainCaves -1,-1,006-3.gat,40,27 +006-1.gat,60,58 warp ToDesertMountainCaves -1,-1,006-3.gat,60,69 +006-1.gat,62,30 warp ToDesertMountainCaves -1,-1,006-3.gat,62,31 +006-1.gat,55,27 warp ToDesertMountainCaves -1,-1,006-3.gat,55,28 +006-1.gat,77,44 warp ToDesertMountainCaves -1,-1,006-3.gat,77,45 +006-1.gat,86,24 warp ToDesertMountainCaves -1,-1,006-3.gat,86,25 +006-1.gat,91,24 warp ToDesertMountainCaves -1,-1,006-3.gat,91,25 +006-1.gat,104,44 warp ToDesertMountainCaves -1,-1,006-3.gat,104,45 +006-1.gat,122,24 warp ToDesertMountainCaves -1,-1,006-3.gat,122,25 +006-1.gat,114,49 warp ToDesertMountainCaves -1,-1,006-3.gat,114,50 +006-1.gat,110,56 warp ToDesertMountainCaves -1,-1,006-3.gat,110,57 +006-1.gat,125,59 warp ToDesertMountainCaves -1,-1,006-3.gat,125,60 +006-1.gat,92,63 warp ToDesertMountainCaves -1,-1,006-3.gat,92,64 +006-1.gat,112,74 warp ToDesertMountainCaves -1,-1,006-3.gat,112,75 +006-1.gat,121,110 warp ToDesertMountainCaves -1,-1,006-3.gat,121,111 +006-1.gat,79,120 warp ToDesertMountainCaves -1,-1,006-3.gat,79,121 +006-1.gat,38,121 warp ToDesertMountainCaves -1,-1,006-3.gat,38,122 +006-1.gat,74,90 warp ToDesertMountainCaves -1,-1,006-3.gat,74,91 +006-1.gat,51,90 warp ToDesertMountainCaves -1,-1,006-3.gat,51,91 diff --git a/npc/006-1_Desert_mountains/mika.txt b/npc/006-1_Desert_mountains/mika.txt new file mode 100644 index 00000000..222accde --- /dev/null +++ b/npc/006-1_Desert_mountains/mika.txt @@ -0,0 +1,8 @@ +new_24-1.gat,39,27,0 script Mika 114,{ + mes "[Mika]"; + mes "\"My father told me about a man living in this desert who makes clothes out of snake skin.\""; + next; + mes "[Mika]"; + mes "\"Maybe you can find him, but be careful you don't get lost in the tunnels!\""; + close; +} diff --git a/npc/006-1_Desert_mountains/monsters.txt b/npc/006-1_Desert_mountains/monsters.txt new file mode 100644 index 00000000..649abc39 --- /dev/null +++ b/npc/006-1_Desert_mountains/monsters.txt @@ -0,0 +1,14 @@ +// Map: new_24-1 +// This is the Desert Mountains. +// + +new_24-1.gat,0,0,0,0 monster MountainSnake 1026,60,0,0,Mob24::OnMountainSnake + +new_24-1.gat,0,0,0 script Mob24 -1,{ +OnMountainSnake: + set @mobID, 1026; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/006-1_Desert_mountains/pachua.txt b/npc/006-1_Desert_mountains/pachua.txt new file mode 100644 index 00000000..a40c652c --- /dev/null +++ b/npc/006-1_Desert_mountains/pachua.txt @@ -0,0 +1,194 @@ +new_24-1.gat,23,100,0 script Pachua 143,{ + + set @LEATHER_PATCH, 708; + set @SNAKE_SKIN, 641; + + set @LEATHER_PATCH_PRICE, 300; + + set @wants_leather_patch, QUEST_Forestbow_state & NIBBLE_4_MASK; + + mes "[Chief Pachua]"; + mes "\"How!\""; + next; + + if (getequipid(equip_head) == 643 || getequipid(equip_head) == 644) goto L_WearingCowboy; + if (getequipid(equip_legs) == 642) goto L_WearingChaps; + + mes "[Chief Pachua]"; + mes "\"For generations my tribe has been crafting special clothes out of different items.\""; + next; + +L_Check_Shops: + if((countitem(610) > 0 && countitem(@SNAKE_SKIN) > 9) && (countitem(524) > 0 && countitem(@SNAKE_SKIN) > 1)) goto L_Super_store; + if(countitem(610) > 0 && countitem(@SNAKE_SKIN) > 9) goto L_Chaps_store; + if(countitem(524) > 0 && countitem(@SNAKE_SKIN) > 1) goto L_Cowboy_store; + + mes "[Chief Pachua]"; + mes "\"Maybe if you bring me the right materials I can make something for you.\""; + next; + + if (@wants_leather_patch) + menu "Wait, can you make a leather patch for me?", L_leather_patch, + "OK, bye.", -; + + close; + +L_CheckStuff: + mes "[Chief Pachua]"; + mes "\"Let me see what you have there.\""; + next; + return; + +L_Super_store: + callsub L_CheckStuff; + mes "[Chief Pachua]"; + mes "\"Ahh you have lots of good items to work with.\""; + mes ""; + mes "\"With them I can make you either"; + mes "a Cowboy hat or Snake Skin Chaps\""; + next; + if (@wants_leather_patch) + menu + "Cowboy hat, please.", L_BuyCowboy, + "Snake Skin Chaps sound good.", L_BuyChaps, + "Can you make a leather patch?", L_leather_patch, + "Not now, maybe later.", L_NoDeal; + if (!@wants_leather_patch) + menu + "Cowboy hat, please.", L_BuyCowboy, + "Snake Skin Chaps sound good.", L_BuyChaps, + "Not now, maybe later.", L_NoDeal; + +L_Cowboy_store: + callsub L_CheckStuff; + mes "[Chief Pachua]"; + mes "\"To make you a Cowboy hat I will need:"; + mes "1 Fancy hat"; + mes "2 Snake skins"; + mes "5.000 GP\""; + mes ""; + mes "\"Do we have a deal?\""; + next; + if (@wants_leather_patch) + menu + "Yes, that's fine.", L_BuyCowboy, + "Can you make a leather patch?", L_leather_patch, + "On second thought, maybe later.", L_NoDeal; + if (!@wants_leather_patch) + menu + "Yes, that's fine.", L_BuyCowboy, + "On second thought, maybe later.", L_NoDeal; + +L_Chaps_store: + callsub L_CheckStuff; + mes "[Chief Pachua]"; + mes "\"To make you a pair of Snake Skin Chaps I will need:"; + mes "1 Jeans Shorts"; + mes "10 Snake skins"; + mes "10.000 GP\""; + mes ""; + mes "\"Do we have a deal?\""; + next; + if (!@wants_leather_patch) + menu + "Yes, that's fine.", L_BuyChaps, + "On second thought, maybe later.", L_NoDeal; + if (@wants_leather_patch) + menu + "Yes, that's fine.", L_BuyChaps, + "Can you make a leather patch?", L_leather_patch, + "On second thought, maybe later.", L_NoDeal; + +L_BuyChaps: + if (zeny < 10000) goto L_NoMoney; + if (countitem(610) < 1) goto L_NoJeans; + if (countitem(@SNAKE_SKIN) < 10) goto L_NoSkin; + set zeny, zeny - 10000; + delitem @SNAKE_SKIN, 10; + delitem 610, 1; + getitem 642, 1; + goto L_DealDone; + +L_BuyCowboy: + if (zeny < 5000) goto L_NoMoney; + if (countitem(524) < 1) goto L_NoFancy; + if (countitem(@SNAKE_SKIN) < 2) goto L_NoSkin; + set zeny, zeny - 5000; + delitem @SNAKE_SKIN, 2; + delitem 524, 1; + set @temp,rand(2); + if(@temp == 0) goto L_Cowboy_white; + goto L_Cowboy_black; + +L_Cowboy_white: + getitem 643, 1; + goto L_DealDone; + +L_Cowboy_black: + getitem 644, 1; + goto L_DealDone; + +L_leather_patch: + mes "[Chief Pachua]"; + mes "\"If you just want a piece of leather, then yes, I can make that. Bring me a snake skin and " + @LEATHER_PATCH_PRICE + " GP.\""; + next; + + menu "Here you are.", -, + "OK, I'll be back later.", L_end, + "That's too expensive!.", L_NoDeal; + + if (countitem(@SNAKE_SKIN) < 1) goto L_NoSkins; + if (zeny < @LEATHER_PATCH_PRICE) goto L_NoMoney; + + set zeny, zeny - @LEATHER_PATCH_PRICE; + delitem @SNAKE_SKIN, 1; + getitem @LEATHER_PATCH, 1; + goto L_DealDone; + +L_DealDone: + mes "[Chief Pachua]"; + mes "\"Here you are!\""; + mes ""; + mes "\"Come back any time.\""; + close; + +L_NoDeal: + mes "[Chief Pachua]"; + mes "\"Alright, but you wont get a better deal anywhere else!\""; + close; + +L_NoMoney: + mes "[Chief Pachua]"; + mes "\"Oh dear, it seems you don't have enough money.\""; + close; + +L_NoJeans: + mes "[Chief Pachua]"; + mes "\"Oh dear, it seems you don't have enough jeans shorts.\""; + close; + +L_NoFancy: + mes "[Chief Pachua]"; + mes "\"Oh dear, it seems you don't have enough fancy hats.\""; + close; + +L_NoSkins: + mes "[Chief Pachua]"; + mes "\"Oh dear, it seems you don't have enough snake skins.\""; + close; + +L_WearingCowboy: + mes "[Chief Pachua]"; + mes "\"Ah, I see that you are wearing a hat made with the ancient methods of my tribe.\""; + next; + goto L_Check_Shops; + +L_WearingChaps: + mes "[Chief Pachua]"; + mes "\"Ah, I see that you are wearing pants made by my tribe.\""; + next; + goto L_Check_Shops; + +L_end: + close; +} diff --git a/npc/006-3_Desert_mountain_caves/_import.txt b/npc/006-3_Desert_mountain_caves/_import.txt new file mode 100644 index 00000000..90fb5864 --- /dev/null +++ b/npc/006-3_Desert_mountain_caves/_import.txt @@ -0,0 +1,4 @@ +map: 006-3.gat +npc: npc/006-3_Desert_mountain_caves/monsters.txt +npc: npc/006-3_Desert_mountain_caves/_warps.txt +npc: npc/006-3_Desert_mountain_caves/_mobs.txt diff --git a/npc/006-3_Desert_mountain_caves/_mobs.txt b/npc/006-3_Desert_mountain_caves/_mobs.txt new file mode 100644 index 00000000..fd6e317b --- /dev/null +++ b/npc/006-3_Desert_mountain_caves/_mobs.txt @@ -0,0 +1,7 @@ +// 006-3 Desert mountain caves mobs + + + +006-3.gat,0,0,0 script Mob006-3 -1,{ + end; +} diff --git a/npc/006-3_Desert_mountain_caves/_warps.txt b/npc/006-3_Desert_mountain_caves/_warps.txt new file mode 100644 index 00000000..9c40defc --- /dev/null +++ b/npc/006-3_Desert_mountain_caves/_warps.txt @@ -0,0 +1,20 @@ +// 006-3 Desert mountain caves warps + +006-3.gat,40,26 warp CavesExit -1,-1,006-1.gat,40,27 +006-3.gat,55,27 warp CavesExit -1,-1,006-1.gat,55,28 +006-3.gat,62,30 warp CavesExit -1,-1,006-1.gat,62,31 +006-3.gat,86,24 warp CavesExit -1,-1,006-1.gat,86,25 +006-3.gat,91,24 warp CavesExit -1,-1,006-1.gat,91,25 +006-3.gat,122,24 warp CavesExit -1,-1,006-1.gat,122,25 +006-3.gat,114,49 warp CavesExit -1,-1,006-1.gat,114,50 +006-3.gat,104,44 warp CavesExit -1,-1,006-1.gat,104,45 +006-3.gat,60,68 warp CavesExit -1,-1,006-1.gat,60,59 +006-3.gat,92,63 warp CavesExit -1,-1,006-1.gat,92,64 +006-3.gat,112,74 warp CavesExit -1,-1,006-1.gat,112,75 +006-3.gat,110,56 warp CavesExit -1,-1,006-1.gat,110,57 +006-3.gat,125,59 warp CavesExit -1,-1,006-1.gat,125,60 +006-3.gat,74,90 warp CavesExit -1,-1,006-1.gat,74,91 +006-3.gat,51,90 warp CavesExit -1,-1,006-1.gat,51,91 +006-3.gat,38,121 warp CavesExit -1,-1,006-1.gat,38,122 +006-3.gat,79,120 warp CavesExit -1,-1,006-1.gat,79,121 +006-3.gat,121,110 warp CavesExit -1,-1,006-1.gat,121,111 diff --git a/npc/006-3_Desert_mountain_caves/monsters.txt b/npc/006-3_Desert_mountain_caves/monsters.txt new file mode 100644 index 00000000..b24d2e7c --- /dev/null +++ b/npc/006-3_Desert_mountain_caves/monsters.txt @@ -0,0 +1,14 @@ +// Map: new_25-1 +// This is the Desert Mountains Caves. +// + +new_25-1.gat,0,0,0,0 monster MountainSnake 1026,50,0,0,Mob25::OnMountainSnake + +new_25-1.gat,0,0,0 script Mob25 -1,{ +OnMountainSnake: + set @mobID, 1026; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/007-1_Woodland/_import.txt b/npc/007-1_Woodland/_import.txt new file mode 100644 index 00000000..946aaa92 --- /dev/null +++ b/npc/007-1_Woodland/_import.txt @@ -0,0 +1,4 @@ +map: 007-1.gat +npc: npc/007-1_Woodland/monsters.txt +npc: npc/007-1_Woodland/_warps.txt +npc: npc/007-1_Woodland/_mobs.txt diff --git a/npc/007-1_Woodland/_mobs.txt b/npc/007-1_Woodland/_mobs.txt new file mode 100644 index 00000000..b4653078 --- /dev/null +++ b/npc/007-1_Woodland/_mobs.txt @@ -0,0 +1,19 @@ +// 007-1 Woodland mobs + +007-1.gat,119,66,9,9 monster Fluffy 1020,1,0,0,Mob007-1::On1020 +007-1.gat,96,35,9,9 monster Sleep Flower 1014,1,0,0,Mob007-1::On1014 + + +007-1.gat,0,0,0 script Mob007-1 -1,{ +On1014: + set @mobID, 1014; + callfunc "MobPoints"; + break; + +On1020: + set @mobID, 1020; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/007-1_Woodland/_warps.txt b/npc/007-1_Woodland/_warps.txt new file mode 100644 index 00000000..00d0b60d --- /dev/null +++ b/npc/007-1_Woodland/_warps.txt @@ -0,0 +1,6 @@ +// 007-1 Woodland warps + +007-1.gat,120,114 warp ToBeach 1,-1,003-1.gat,20,24 +007-1.gat,20,54 warp ToHurnscald -1,0,010-1.gat,127,53 +007-1.gat,69,21 warp ToHurnscald 2,-1,008-1.gat,78,100 +007-1.gat,122,20 warp ToHurnscald 1,-1,008-1.gat,132,98 diff --git a/npc/007-1_Woodland/monsters.txt b/npc/007-1_Woodland/monsters.txt new file mode 100644 index 00000000..e384b02b --- /dev/null +++ b/npc/007-1_Woodland/monsters.txt @@ -0,0 +1,35 @@ +// Map: new_16-1 +// This is South-East Woodland. +// + +new_16-1.gat,0,0,0,0 monster Fluffy 1020,50,0,0,Mob16::OnFluffy +new_16-1.gat,0,0,0,0 monster Flower 1014,40,0,0,Mob16::OnFlower + +new_16-1.gat,0,0,0,0 monster Gamboge 1031,1,2700000,1800000,Mob16::OnGamboge + +new_16-1.gat,0,0,0,0 monster SilkWorm 1035,2,60000,30000,Mob16::OnSilkWorm + +new_16-1.gat,0,0,0 script Mob16 -1,{ +OnFluffy: + set @mobID, 1020; + callfunc "MobPoints"; + break; + +OnFlower: + set @mobID, 1014; + callfunc "MobPoints"; + break; + +OnGamboge: + set @mobID, 1031; + callfunc "MobPoints"; + break; + +OnSilkWorm: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + + end; +} diff --git a/npc/008-1_Hurnscald_outskirts/_import.txt b/npc/008-1_Hurnscald_outskirts/_import.txt new file mode 100644 index 00000000..a734d9f3 --- /dev/null +++ b/npc/008-1_Hurnscald_outskirts/_import.txt @@ -0,0 +1,6 @@ +map: 008-1.gat +npc: npc/008-1_Hurnscald_outskirts/monsters.txt +npc: npc/008-1_Hurnscald_outskirts/hinnak.txt +npc: npc/008-1_Hurnscald_outskirts/george.txt +npc: npc/008-1_Hurnscald_outskirts/_warps.txt +npc: npc/008-1_Hurnscald_outskirts/_mobs.txt diff --git a/npc/008-1_Hurnscald_outskirts/_mobs.txt b/npc/008-1_Hurnscald_outskirts/_mobs.txt new file mode 100644 index 00000000..2ae45fb9 --- /dev/null +++ b/npc/008-1_Hurnscald_outskirts/_mobs.txt @@ -0,0 +1,7 @@ +// 008-1 Hurnscald outskirts mobs + + + +008-1.gat,0,0,0 script Mob008-1 -1,{ + end; +} diff --git a/npc/008-1_Hurnscald_outskirts/_warps.txt b/npc/008-1_Hurnscald_outskirts/_warps.txt new file mode 100644 index 00000000..275de68e --- /dev/null +++ b/npc/008-1_Hurnscald_outskirts/_warps.txt @@ -0,0 +1,10 @@ +// 008-1 Hurnscald outskirts warps + +008-1.gat,54,61 warp HurnscaldWestGate -1,1,009-1.gat,26,36 +008-1.gat,79,80 warp HurnscaldSouthGate 2,-1,009-1.gat,48,54 +008-1.gat,127,61 warp HurnscaldEastGate -1,0,009-1.gat,96,35 +008-1.gat,79,49 warp HurnscaldNorthGate 2,-1,009-1.gat,48,24 +008-1.gat,24,62 warp ToWoodland -1,2,011-1.gat,122,61 +008-1.gat,79,17 warp ToWoodlandMines 2,-1,018-1.gat,79,97 +008-1.gat,79,102 warp ToWoodland 2,-1,007-1.gat,68,23 +008-1.gat,132,101 warp ToWoodland 1,-1,007-1.gat,122,23 diff --git a/npc/008-1_Hurnscald_outskirts/george.txt b/npc/008-1_Hurnscald_outskirts/george.txt new file mode 100644 index 00000000..42966bf8 --- /dev/null +++ b/npc/008-1_Hurnscald_outskirts/george.txt @@ -0,0 +1,25 @@ +// + +new_18-1.gat,136,36,0 script George 138,{ + if (getequipid(equip_head) == 617) goto L_Pirate; + if (getequipid(equip_head) == 622) goto L_Bandana; + if (getequipid(equip_head) == 621) goto L_EyePatch; + mes "[George the Pirate]"; + mes "\"Arrrrh! 'Tis some kind of treasure map!\""; + close; + +L_Pirate: + mes "[George the Pirate]"; + mes "\"Arrrrh! Ye be wearing a pirate's hat!\""; + close; + +L_Bandana: + mes "[George the Pirate]"; + mes "\"Arrrrh! Ye remind me of my old first mate!\""; + close; + +L_EyePatch: + mes "[George the Pirate]"; + mes "\"Arrrrh! Looks like ye lost an eye there!\""; + close; +} diff --git a/npc/008-1_Hurnscald_outskirts/hinnak.txt b/npc/008-1_Hurnscald_outskirts/hinnak.txt new file mode 100644 index 00000000..39f4bc5a --- /dev/null +++ b/npc/008-1_Hurnscald_outskirts/hinnak.txt @@ -0,0 +1,100 @@ +//################################################################################# +//# # +//# this script file contains the npc scripts for the quest to obtain a scythe. # +//# # +//# Needed: 10 Pink Antenna # +//# # +//# Reward: Scythe # +//# # +//################################################################################# + +//Farmer + +new_18-1.gat,101,30,0 script Hinnak 142, { + if (Inspector == 10) goto L_NohMask; + if (QUEST_Scythe_state == 1) goto L_Exchange; + if (QUEST_Scythe_state == 2) goto L_ThanksAgain; + mes "[Farmer Hinnak]"; + mes "\"Argh! I hate them! I @#$% hate them! I @#$% hate these @#$% pinkies!\""; + next; + + menu + "You need some anger control therapy.", -, + "Why do you hate them?", L_Reason; + close; + +L_Reason: + mes "[Farmer Hinnak]"; + mes "\"These @#$% beasts are jumping around in my fields destroying all my harvest."; + mes "But they are too fast. I can't catch them.\""; + next; + + menu + "Want me to help you?", L_Help, + "Well, life ain't fair.", -; + close; + +L_Help: + mes "[Farmer Hinnak]"; + mes "\"Yes, you look quite fast. Maybe you can catch some of them. That will pay them a lesson."; + mes "Slay some of them and bring me 10 of their antennae.\""; + set QUEST_Scythe_state, 1; + next; + + menu + "Sure, I'm on my way", -, + "How much is this worth to you?", L_Reward; + close; + +L_Reward: + mes "[Farmer Hinnak]"; + mes "\"Well, I can't offer you much. But I got an old scythe laying around. Maybe you can use it as a weapon.\""; + close; + +L_Exchange: + mes "[Farmer Hinnak]"; + mes "Have you got the 10 antennae?"; + next; + + if (countitem(614) < 10) goto L_Exchange_Notenough; + + menu + "Not yet, but I am working on it.", -, + "Sure, here they are!", L_Exchange_Exchange; + close; + +L_Exchange_Exchange: + delitem 614, 10; + getitem 623, 1; + set QUEST_Scythe_state, 2; + mes "[Farmer Hinnak]"; + mes "\"Thank you very much. I've got something for you. My old scythe. Maybe you can use it as a weapon. It is a bit cumbersome but its strikes are deadly.\""; + close; + +L_Exchange_Notenough: + menu + "Not yet, but I am working on it.", -; + close; + +L_ThanksAgain: + mes "[Farmer Hinnak]"; + mes "Thanks again for helping me with the pinkies."; + close; + +L_NohMask: + menu + "Did you see anyone in a mask come by here at night?", L_NohMask_Mask, + "Did you see anyone with a large satchel come by here at night?", L_NohMask_Satchel, + "Nothing...", -; + close; + +L_NohMask_Mask: + mes "[Farmer Hinnak]"; + mes "\"No. It tends to be too dark to see a mask.\""; + close; + +L_NohMask_Satchel: + mes "[Farmer Hinnak]"; + mes "\"Yes, I saw someone with a large sack on their back go to the minning camp.\""; + close; +} \ No newline at end of file diff --git a/npc/008-1_Hurnscald_outskirts/monsters.txt b/npc/008-1_Hurnscald_outskirts/monsters.txt new file mode 100644 index 00000000..8755285c --- /dev/null +++ b/npc/008-1_Hurnscald_outskirts/monsters.txt @@ -0,0 +1,34 @@ +// Map: new_18-1 +// This is Woodland around Hurnscald. +// + +new_18-1.gat,0,0,0,0 monster Pinkie 1018,20,0,0,Mob18::OnPinkie +new_18-1.gat,0,0,0,0 monster SpikyMushroom 1019,20,0,0,Mob18::OnSpikyMushroom + +new_18-1.gat,0,0,0,0 monster Mauve 1029,1,2700000,1800000,Mob18::OnMauve + +new_18-1.gat,0,0,0,0 monster SilkWorm 1035,2,60000,30000,Mob18::OnSilkWorm + +new_18-1.gat,0,0,0 script Mob18 -1,{ +OnPinkie: + set @mobID, 1018; + callfunc "MobPoints"; + break; + +OnSpikyMushroom: + set @mobID, 1019; + callfunc "MobPoints"; + break; + +OnMauve: + set @mobID, 1029; + callfunc "MobPoints"; + break; + +OnSilkWorm: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/009-1_Hurnscald/_import.txt b/npc/009-1_Hurnscald/_import.txt new file mode 100644 index 00000000..94bf97b6 --- /dev/null +++ b/npc/009-1_Hurnscald/_import.txt @@ -0,0 +1,9 @@ +map: 009-1.gat +npc: npc/009-1_Hurnscald/soul-menhir.txt +npc: npc/009-1_Hurnscald/sabine.txt +npc: npc/009-1_Hurnscald/old_woman.txt +npc: npc/009-1_Hurnscald/old_man.txt +npc: npc/009-1_Hurnscald/milly.txt +npc: npc/009-1_Hurnscald/jack.txt +npc: npc/009-1_Hurnscald/_warps.txt +npc: npc/009-1_Hurnscald/_mobs.txt diff --git a/npc/009-1_Hurnscald/_mobs.txt b/npc/009-1_Hurnscald/_mobs.txt new file mode 100644 index 00000000..8e5290ee --- /dev/null +++ b/npc/009-1_Hurnscald/_mobs.txt @@ -0,0 +1,7 @@ +// 009-1 Hurnscald mobs + + + +009-1.gat,0,0,0 script Mob009-1 -1,{ + end; +} diff --git a/npc/009-1_Hurnscald/_warps.txt b/npc/009-1_Hurnscald/_warps.txt new file mode 100644 index 00000000..a41c63a4 --- /dev/null +++ b/npc/009-1_Hurnscald/_warps.txt @@ -0,0 +1,13 @@ +// 009-1 Hurnscald warps + +009-1.gat,49,55 warp HurnscaldSouthGate 2,-1,008-1.gat,78,82 +009-1.gat,97,36 warp HurnscaldEastGate -1,0,008-1.gat,129,60 +009-1.gat,35,30 warp ToInn -1,-1,009-2.gat,50,55 +009-1.gat,58,46 warp ToGeneralStore -1,-1,009-2.gat,27,105 +009-1.gat,59,33 warp ToArcherShop -1,-1,009-2.gat,95,29 +009-1.gat,71,30 warp ToPotionShop -1,-1,009-2.gat,130,25 +009-1.gat,80,31 warp ToHospital -1,-1,009-2.gat,149,66 +009-1.gat,72,44 warp ToMayor -1,-1,009-2.gat,113,77 +009-1.gat,91,46 warp ToBlacksmith -1,-1,009-2.gat,181,66 +009-1.gat,24,36 warp HurnscaldWestGate -1,1,008-1.gat,53,61 +009-1.gat,49,24 warp HurnscaldNorthGate 2,-1,008-1.gat,78,48 diff --git a/npc/009-1_Hurnscald/jack.txt b/npc/009-1_Hurnscald/jack.txt new file mode 100644 index 00000000..721c4cce --- /dev/null +++ b/npc/009-1_Hurnscald/jack.txt @@ -0,0 +1,252 @@ +//################################################################################# +//# # +//# This script file contains the npc scripts for two quests: # +//# # +//# Quest1: Obtaining a Forest bow # +//# Needed: About 20 Raw logs, 5000gp, some chatting and running # +//# Reward: Forest bow # +//# # +//# Quest2: Obtaining a Wooden shield # +//# Needed: 40 Raw logs, 5000gp # +//# Reward: Wooden shield and 2500exp # +//# # +//# Variables used: @QUEST_Forestbow_state, nibbles 0 and 1 # +//################################################################################# + +// Lumberjack +new_19-1.gat,40,45,0 script Jack 141, { + set @RAWLOG, 569; + set @RAWLOGS_AMOUNT, 40; + set @WOODENSHIELD, 602; + set @SHIELD_COST, 5000; + set @QUEST_SHIELD_EXP, 2500; + + set @Q_Forestbow_MASK, NIBBLE_0_MASK; + set @Q_Forestbow_SHIFT, NIBBLE_0_SHIFT; + + set @Q_Woodenshield_MASK, NIBBLE_1_MASK; + set @Q_Woodenshield_SHIFT, NIBBLE_1_SHIFT; + + set @Q_Forestbow, ((QUEST_Forestbow_state & @Q_Forestbow_MASK) >> @Q_Forestbow_SHIFT); + set @Q_Woodenshield, ((QUEST_Forestbow_state & @Q_Woodenshield_MASK) >> @Q_Woodenshield_SHIFT); + + if (@Q_Woodenshield >= 3) goto L_Shield_state_3; + if (@Q_Woodenshield == 2) goto L_Shield_state_2; + if (@Q_Woodenshield == 1) goto L_Shield_state_1; + if (@Q_Forestbow > 1) goto L_Bow_state_2; + + mes "[Jack Lumber]"; + mes "\"Hello there, my name is Jack Lumber, the enemy of all trees. If you need some firewood just let me know.\""; + next; + if (Inspector == 1) callsub S_NohMask_Ask; + if (@Q_Forestbow < 1) close; + + menu + "I heard you aren't delivering any more living wood. Why that?", -; + + mes "[Jack Lumber]"; + mes "\"Why not?! I value my life, that's why!.\""; + + next; + menu + "What do you mean?", -; + + mes "[Jack Lumber]"; + mes "\"A week ago I was going to chop down one of those twigleaf trees in the forest to the southwest. These twigleafs are the trees that give me the living wood you speak of. I was just chopping away with my axe and what happened? One of its branches hit me! I thought it fell down or the wind blew it. It hurt! I shook it off and struck it again with my axe and another branch hit me! I got angry and started to chop off all the branches near the ground so this couldn't happen anymore. But I still can't believe what happened next.\""; + + next; + menu + "What happened? ", -; + + mes "[Jack Lumber]"; + mes "\"You'll think I am insane when I tell you.\""; + + next; + menu + "I won't. I promise.", -; + + mes "[Jack Lumber]"; + mes "\"OK. After I chopped off a few branches the whole tree started to move. Its roots tore out of the earth, all the branches started to wave around and a face appeared on the trunk. The whole tree CAME TO LIFE! It was mad!\""; + next; + menu + "Did you run away?", -, + "Did you fight it?", -; + + mes "[Jack Lumber]"; + mes "\"I fought, of course! I took my axe and attacked the beast! It hit me here *points at a bruise at his shoulder*, here *lifts his trouser leg to show another bruise* and here *lifts his shirt and reveals some even worse bruises*. But i didn't give up. I chopped away at it, branch after branch, and in the end I chopped off its roots and it fell to the ground motionless.\""; + + next; + menu + "So you beat the monster? Then why are you so scared?", -; + + mes "[Jack Lumber]"; + mes "\"Well, I was exhausted and had to rest. A few minutes passed and suddenly I was surrounded by a dozen or more of these living trees!\""; + + next; + menu + "Did you fight them, too? ", -; + + mes "[Jack Lumber]"; + mes "\"Are you crazy? I barely destroyed one of those beasts. I was in no shape to fight again. I ran away as fast as i could. Lucky for me the monsters aren't that fast on their tiny root legs. Ha!\""; + + next; + menu + "So you aren't chopping down trees anymore?", -; + + mes "[Jack Lumber]"; + mes "\"I still do. It's my job. But I no longer chop those twigleafs, I'll tell you that. I know the bowyer master wants some wood from them, but I don't care. I won't risk my life for a few gold pieces. If you want to, just go to the southwest. But i won't go there ever again.\""; + + next; + menu + "Southwest you say? OK, thank you.", -; + + set @Q_Forestbow, 2; + callsub S_Update_Mask; + + close; + +L_Bow_state_2: + // Bow state 4: The player has found a perfect piece of wood. + if (@Q_Forestbow > 3) goto L_Bow_state_4; + + mes "\"Good luck hunting those tree monsters - you will need it.\""; + if (Inspector == 1) goto L_NohMask_Ask; + close; + +L_Bow_state_4: + mes "[Jack Lumber]"; + mes "\"You've finally found that perfect piece of living wood Alan needs to make a Forest bow, haven't you?\""; + + next; + menu + "I couldn't afford the bow, though...", L_Shield_state_0, + "No, I'm still looking.", L_Bow_state_4_reaffirm, + "Yes, I've got the Forest bow now.", -, + "I'm a melee warrior, I don't need bows.", L_Shield_state_0; + + // Check if the player tells the truth (continue on in any case) + if (@Q_Forestbow > 4) goto L_Shield_state_0; + + mes "[Jack Lumber]"; + mes "\"Hrmph. I'm someone who respects those speaking the truth.\""; + + next; + goto L_Shield_state_0; + +L_Bow_state_4_reaffirm: + mes "[Jack Lumber]"; + mes "\"You should go talk to Alan again.\""; + close; + +L_Shield_state_0: + set @Q_Woodenshield, 1; + callsub S_Update_Mask; + + if (Sex == 0) set @child_of_jack$, "daughter"; + if (Sex == 1) set @child_of_jack$, "son"; + + mes "[Jack Lumber]"; + mes "\"You no doubt remember how I struggled with those beasts, fighting for my life. Scared me, those seven-branched little stumps did! Never since that day have I strayed near them. And here comes you, cutting them down one by one. I'm proud of you, to dare those trunks a fight. You're strong as if you were my own " + @child_of_jack$ + "!\""; + next; + goto L_Shield_state_1; + +L_Shield_state_1: + mes "[Jack Lumber]"; + mes "\"I have an idea. What would you say about a new shield?\""; + next; + + if (Inspector == 1) + menu + "No thanks.", L_End, + "Yes, please!", -, + "Actually, I'd like to know if you've seen any strange happenings in town.", L_NohMask_Answer; + if (Inspector != 1) + menu + "No thanks.", L_End, + "Yes, please!", -; + + mes "[Jack Lumber]"; + mes "\"All I need is " + @RAWLOGS_AMOUNT + " raw logs. This needn't be highest-quality wood; pretty much any log you can find should work. Oh, and I'll also need " + @SHIELD_COST + " GP for other materials.\""; + next; + + set @Q_Woodenshield, 2; + callsub S_Update_Mask; + close; + +L_End: + close; + +L_Shield_state_2: + mes "[Jack Lumber]"; + mes "\"Let's see if you have enough of everything.\""; + next; + + if (countitem(@RAWLOG) < @RAWLOGS_AMOUNT) goto L_Not_enough_logs; + if (zeny < @SHIELD_COST) goto L_Not_enough_money; + + delitem @RAWLOG, @RAWLOGS_AMOUNT; + set zeny, zeny - @SHIELD_COST; + getexp @QUEST_SHIELD_EXP, 0; + getitem @WOODENSHIELD, 1; + + set @Q_Woodenshield, 3; + callsub S_Update_Mask; + mes "[Jack Lumber]"; + mes "\"Have a seat.\""; + mes "Jack saws the logs into pieces, then shaves them until they are smooth to the touch."; + mes "Applying some strong-smelling liquid, he tans them in darker hues."; + next; + + mes "[Jack Lumber]"; + mes "Grabbing one of two leftover pieces, he begins to carve it into a round shape, then repeats this with the second piece-- shield handles, from what you can tell."; + next; + + mes "[Jack Lumber]"; + mes "Meanwhile, the sun has dried the other pieces. Jack places them next to each other, adds a frame, and nails everything together."; + mes "The resulting shield looks usable already, but Jack applies another liquid to it and leaves it to dry for a few moments."; + next; + + mes "[Jack Lumber]"; + mes "Finally, he hands the shield to you."; + mes "\"Enjoy your new shield!\""; + mes "[" + @QUEST_SHIELD_EXP + " experience points]"; + next; + goto L_End; + +L_Not_enough_logs: + mes "[Jack Lumber]"; + mes "\"You don't have enough wood for me to craft this shield; I need a total of " + @RAWLOGS_AMOUNT + " raw logs.\""; + close; + +L_Not_enough_money: + mes "[Jack Lumber]"; + mes "\"You don't have enough gold, I'm afraid. I need " + @SHIELD_COST + " GP to finish your shield.\""; + close; + +L_Shield_state_3: + mes "[Jack Lumber]"; + mes "\"I hope that my shield will serve you well!\""; + if (Inspector == 1) + menu + "Me too.", -, + "Have you seen anything that might be connected to the recent robberies in town?", L_NohMask_Answer; + close; + +L_NohMask_Ask: + menu + "I'll keep that in mind.", -, + "Have you seen anything that might be connected to the recent robberies in town?", L_NohMask_Answer; + return; + +L_NohMask_Answer: + mes "[Jack Lumber]"; + mes "\"Sorry, no.\""; + close; + +S_Update_Mask: + set QUEST_Forestbow_state, + (QUEST_Forestbow_state & ~(@Q_Forestbow_MASK | @Q_Woodenshield_MASK)) + | (@Q_Forestbow << @Q_Forestbow_SHIFT) + | (@Q_Woodenshield << @Q_Woodenshield_SHIFT); + return; +} diff --git a/npc/009-1_Hurnscald/milly.txt b/npc/009-1_Hurnscald/milly.txt new file mode 100644 index 00000000..b8bf7460 --- /dev/null +++ b/npc/009-1_Hurnscald/milly.txt @@ -0,0 +1,25 @@ +new_19-1.gat,81,41,0 script Milly 114, { + mes "[Milly]"; + mes "\"Hello.\""; + next; + if (Inspector == 1) goto L_NohMask; + close; + +L_NohMask: + menu + "Have you seen anything strange lately?", L_NohMask_Strange, + "Do you know anything about the recent robberies?", L_NohMask_Robbery, + "Yes, it is.", -; + close; + +L_NohMask_Strange: + mes "[Milly]"; + mes "\"I haven't seen anything strange.\""; + close; + +L_NohMask_Robbery: + mes "[Milly]"; + mes "\"No, sorry.\""; + close; +} + diff --git a/npc/009-1_Hurnscald/old_man.txt b/npc/009-1_Hurnscald/old_man.txt new file mode 100644 index 00000000..55812260 --- /dev/null +++ b/npc/009-1_Hurnscald/old_man.txt @@ -0,0 +1,34 @@ +// Old man + +new_19-1.gat,85,51,0 script Old Man 159,{ + mes "[Old Man]"; + mes "\"Don't let those monsters get to you.\""; + next; + if (Inspector == 1) goto L_NohMask_Ask; + if (Inspector == 6) goto L_NohMask_Accuse; + close; + +L_NohMask_Ask: + menu + "Have you seen anything strange lately?", L_NohMask_Ask_Nothing, + "Do you know anything about the recent robberies?", L_NohMask_Ask_Nothing, + "I won't, thank you.", -; + close; + +L_NohMask_Ask_Nothing: + mes "[Old Man]"; + mes "\"I'm sorry, but I didn't see anything. You should ask my old woman.\""; + close; + +L_NohMask_Accuse: + menu + "The leader of the troupe said you hung around them a lot while they were in town.", L_NohMask_Accuse_Respond, + "I won't, thank you.", -; + close; + +L_NohMask_Accuse_Respond: + mes "[Old Man]"; + mes "\"Yes, I hung around the theater a lot. I was an actor when I was younger. But I wasn't there that night. Me and the wife were at home all night.\""; + set Inspector, 7; + close; +} diff --git a/npc/009-1_Hurnscald/old_woman.txt b/npc/009-1_Hurnscald/old_woman.txt new file mode 100644 index 00000000..c94fe63f --- /dev/null +++ b/npc/009-1_Hurnscald/old_woman.txt @@ -0,0 +1,56 @@ +// Old woman + +new_19-1.gat,29,43,0 script Old Woman 154,{ + mes "[Old Woman]"; + mes "\"Hello deary.\""; + next; + if ((Inspector >= 1 && Inspector <= 7) || Inspector == 9) goto L_NohMask; + close; + +L_NohMask: + if (Inspector == 7) goto L_NohMask_Alibi; + callfunc "ProcessEquip"; + if (@torsoC == cDarkBlue && @legsC == cDarkBlue) goto L_NohMask_Fake; + if (Inspector >= 3 && Inspector <= 6) close; + + menu + "Have you seen anything strange lately?", L_NohMask_FirstAsk, + "Do you know anything about the recent robberies?", L_NohMask_FirstAsk, + "Hello", -; + close; + +L_NohMask_FirstAsk: + mes "[Old Woman]"; + mes "\"Yes, but I'm only talking to the inspector himself!\""; + if (Inspector == 1) set Inspector, 2; + close; + +L_NohMask_Alibi: + menu + "Was your husband with you at home all night the last night that the troupe was in town?", -; + + mes "[Old Woman]"; + mes "\"Yes, we were both at home all night.\""; + set Inspector, 8; + close; + +L_NohMask_Fake: + if (Inspector == 9) goto L_NohMask_Fake_Satchel; + if (Inspector >= 3 && Inspector <= 6) got L_NohMask_Filler; + + mes "[Old Woman]"; + mes "\"I saw someone sneaking around town wearing a theater mask. It looked like one of the masks used by the troupe that was in town recently.\""; + set Inspector, 3; + close; + +L_NohMask_Filler: + mes "[Old Woman]"; + mes "\"I hope you castch that naughty person!\""; + close; + +L_NohMask_Fake_Satchel: + mes "[Old Woman]"; + mes "\"I've remembered something else. The night the troupe left, I saw someone with a theater mask take a large satchel out of town. He was heading north.\""; + set Inspector, 10; + close; +} diff --git a/npc/009-1_Hurnscald/sabine.txt b/npc/009-1_Hurnscald/sabine.txt new file mode 100644 index 00000000..e45ae7a8 --- /dev/null +++ b/npc/009-1_Hurnscald/sabine.txt @@ -0,0 +1,26 @@ +// Girl sitting on bench + +new_19-1.gat,89,27,0 script Sabine 106,{ + mes "[Sabine]"; + mes "\"Isn't this place pretty? I love hanging out here!\""; + next; + if (Inspector == 1) goto L_NohMask; + close; + +L_NohMask: + menu + "Have you seen anything strange lately?", L_NohMask_Strange, + "Do you know anything about the recent robberies?", L_NohMask_Robbery, + "Yes, it is.", -; + close; + +L_NohMask_Strange: + mes "[Sabine]"; + mes "\"I haven't seen anything strange.\""; + close; + +L_NohMask_Robbery: + mes "[Sabine]"; + mes "\"No, sorry.\""; + close; +} diff --git a/npc/009-1_Hurnscald/soul-menhir.txt b/npc/009-1_Hurnscald/soul-menhir.txt new file mode 100644 index 00000000..152f05be --- /dev/null +++ b/npc/009-1_Hurnscald/soul-menhir.txt @@ -0,0 +1,8 @@ +new_19-1.gat,53,40,0 script Soul Menhir 144, { + set @map$, "new_19-1.gat"; + set @x, 53; + set @y, 41; + callfunc "SoulMenhir"; +} + + diff --git a/npc/009-2_Hurnscald/_import.txt b/npc/009-2_Hurnscald/_import.txt new file mode 100644 index 00000000..84ddc0a2 --- /dev/null +++ b/npc/009-2_Hurnscald/_import.txt @@ -0,0 +1,15 @@ +map: 009-2.gat +npc: npc/009-2_Hurnscald/waitress.txt +npc: npc/009-2_Hurnscald/shops.txt +npc: npc/009-2_Hurnscald/selim.txt +npc: npc/009-2_Hurnscald/richard.txt +npc: npc/009-2_Hurnscald/nurse.txt +npc: npc/009-2_Hurnscald/nicholas.txt +npc: npc/009-2_Hurnscald/misc.txt +npc: npc/009-2_Hurnscald/kfahr.txt +npc: npc/009-2_Hurnscald/inspector.txt +npc: npc/009-2_Hurnscald/drunks.txt +npc: npc/009-2_Hurnscald/doctor.txt +npc: npc/009-2_Hurnscald/alan.txt +npc: npc/009-2_Hurnscald/_warps.txt +npc: npc/009-2_Hurnscald/_mobs.txt diff --git a/npc/009-2_Hurnscald/_mobs.txt b/npc/009-2_Hurnscald/_mobs.txt new file mode 100644 index 00000000..d7a860f9 --- /dev/null +++ b/npc/009-2_Hurnscald/_mobs.txt @@ -0,0 +1,7 @@ +// 009-2 Hurnscald mobs + + + +009-2.gat,0,0,0 script Mob009-2 -1,{ + end; +} diff --git a/npc/009-2_Hurnscald/_warps.txt b/npc/009-2_Hurnscald/_warps.txt new file mode 100644 index 00000000..bb75379b --- /dev/null +++ b/npc/009-2_Hurnscald/_warps.txt @@ -0,0 +1,20 @@ +// 009-2 Hurnscald warps + +009-2.gat,75,23 warp To1stFloor 0,-1,009-2.gat,73,46 +009-2.gat,95,30 warp ToOutdoor -1,-1,009-1.gat,59,34 +009-2.gat,130,26 warp ToOutdoor -1,-1,009-1.gat,71,31 +009-2.gat,144,26 warp To2ndFloor 0,-1,009-2.gat,143,44 +009-2.gat,144,42 warp To3rdFloor 0,-1,009-2.gat,143,24 +009-2.gat,155,47 warp To1stFloor 0,-1,009-2.gat,154,63 +009-2.gat,114,46 warp To1stFloor 0,-1,009-2.gat,113,69 +009-2.gat,50,55 warp ToOutdoor -1,-1,009-1.gat,35,31 +009-2.gat,74,53 warp ToCellar -1,-1,009-2.gat,143,81 +009-2.gat,74,45 warp To2ndFloor 0,-1,009-2.gat,74,23 +009-2.gat,114,78 warp ToOutdoor 0,-1,009-1.gat,72,45 +009-2.gat,114,68 warp To2ndFloor 0,-1,009-2.gat,113,46 +009-2.gat,149,67 warp ToOutdoor -1,-1,009-1.gat,80,32 +009-2.gat,143,79 warp To1stFloor -1,-1,009-2.gat,74,52 +009-2.gat,155,62 warp To2ndFloor 0,-1,009-2.gat,154,46 +009-2.gat,182,67 warp ToOutdoor 0,-1,009-1.gat,91,47 +009-2.gat,147,89 warp ToCaveBeneathHurnscald -1,-1,009-3.gat,173,22 +009-2.gat,27,106 warp ToOutdoor -1,-1,009-1.gat,58,47 diff --git a/npc/009-2_Hurnscald/alan.txt b/npc/009-2_Hurnscald/alan.txt new file mode 100644 index 00000000..fc779676 --- /dev/null +++ b/npc/009-2_Hurnscald/alan.txt @@ -0,0 +1,211 @@ +//################################################################################# +//# # +//# This script file contains the npc scripts for the quest to obtain a forestbow # +//# # +//# Needed: 10 Raw Logs, 5000gp, some chatting and running. # +//# # +//# Reward: Forest Bow # +//################################################################################# + +// Archer Shop Master +new_20-1.gat,99,23,0 script Alan 125, { + set @Q_MASK, NIBBLE_0_MASK; + set @Q_SHIFT, NIBBLE_0_SHIFT; + + set @Q_status, ((QUEST_Forestbow_state) & @Q_MASK) >> @Q_SHIFT; + + if (@Q_status == 1) goto L_State_1; + if (@Q_status == 2) goto L_State_2; + if (@Q_status == 3) goto L_State_3; + if (@Q_status == 4) goto L_State_4; + if (@Q_status == 5) goto L_State_5; + + mes "[Alan]"; + mes "\"When you want to buy something then please speak to my apprentice. I am only doing special requests.\""; + next; + if (Inspector == 1) + menu + "OK, thanks", -, + "Can you make me a really good bow?", L_State_0_1, + "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; + if (Inspector != 1) + menu + "OK, thanks", -, + "Can you make me a really good bow?", L_State_0_1; + close; + +L_State_0_1: + mes "[Alan]"; + mes "\"You mean like one of my legendary forest bows?\""; + next; + menu + "Yes, that would be nice.", -; + mes "[Alan]"; + mes "\"Sorry, I am not making these anymore.\""; + next; + menu + "Oh, too bad.", -, + "What? Why that?", L_State_0_2; + close; + +L_State_0_2: + mes "[Alan]"; + mes "\"The problem is that I am short of material. My forestbows are not made of regular wood, you know."; + mes "They are made of special living wood. And only the best logs of living wood are good enough for them."; + mes "I used to get these logs from Jack, the lumberjack. But the last time I asked him for a new delivery he said that he would never again get any for me.\""; + + set @Q_status, 1; + callsub S_Update_Var; + + next; + menu + "Too bad.", -, + "Did you ask him why?", L_State_0_3; + close; + +L_State_0_3: + mes "[Alan]"; + mes "\"Sure I did. But he just told me to leave him alone. Maybe you could ask him what's wrong?\""; + next; + menu + "OK, I'll ask him.", -, + "I am sure he got his reasons.", -; + close; + +L_State_1: + mes "[Alan]"; + mes "\"Did you already ask Jack why he won't deliver me any more living wood?\""; + next; + if (Inspector == 1) + menu + "No, I haven't had the time yet", -, + "No, I didn't find him yet.", L_State_1_1, + "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; + if (Inspector != 1) + menu + "No, I haven't had the time yet", -, + "No, I didn't find him yet.", L_State_1_1; + close; + +L_State_1_1: + mes "[Alan]"; + mes "\"When you leave my shop just go southwest over the village plaza. You can't miss it.\""; + close; + +L_State_2: + mes "[Alan]"; + mes "\"Did you already ask Jack why he won't deliver me any more living wood?\""; + next; + if (Inspector == 1) + menu + "Yes, I did. He said that the trees turned into dangerous monsters.", -, + "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; + if (Inspector != 1) + menu + "Yes, I did. He said that the trees turned into dangerous monsters.", -; + mes "[Alan]"; + mes "\"Oh, that's really bad news. Maybe you can do his job?"; + mes "When you kill some of these tree monsters and bring me their wood I can take a look at them."; + mes "Maybe you will find a piece of wood that is strong enough to become one of my forest bows.\""; + + set @Q_status, 3; + callsub S_Update_Var; + + close; + +L_State_3: + mes "[Alan]"; + mes "\"How is the hunt going? Did you bring me any wood?\""; + if (countitem(569) < 1) close; + next; + if (Inspector == 1) + menu + "Here, take a look!", L_State_3_try, + "Yes, but I need it for something else.", -, + "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; + if (Inspector != 1) + menu + "Here, take a look!", L_State_3_try, + "Yes, but I need it for something else.", -; + close; + +L_State_3_try: + mes "[Alan]"; + mes "\"Hmmm... looks ok, but is it strong enough?\""; + mes "Alan bends the log over his knee."; + next; + delitem 569, 1; + set @Temp1, rand(20); + if (@Temp1 == 0) goto L_State_3_success; + mes "The log breaks with a loud crack"; + next; + mes "[Alan]"; + mes "\"Sorry, this log was too weak for one of my forest bows. Now it is junk. Give me another.\""; + if (countitem(569) < 1) close; + next; + menu + "Sure, here you go.", L_State_3_try, + "Hey! Stop breaking my stuff!", -; + close; + +L_State_3_success: + mes "Alan tries as hard as he can but the log won't bend."; + next; + mes "[Alan]"; + mes "\"Aaah! Yes! That is a really fine piece of wood you bought me. It will make an excelent bow!\""; + next; + set @Q_status, 4; + callsub S_Update_Var; + +L_State_4: + mes "[Alan]"; + mes "\"I can make you a really nice forest bow out of this. I just need 10,000 GP for material and work time.\""; + next; + if (Inspector == 1) + menu + "10,000??? What a ripoff!", -, + "Sure, here you go!", L_State_4_pay, + "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; + if (Inspector != 1) + menu + "10,000??? What a ripoff!", -, + "Sure, here you go!", L_State_4_pay; + close; + +L_State_4_pay: + if (zeny < 10000) goto L_State_4_nocash; + set zeny, zeny - 10000; + getitem 545, 1; + set @Q_status, 5; + callsub S_Update_Var; + mes "[Alan]"; + mes "\"Here you go - have fun with it.\""; + close; + +L_State_4_nocash: + mes "[Alan]"; + mes "\"Seems like you are out of cash.\""; + close; + +L_State_5: + mes "[Alan]"; + mes "\"I hope you are statisfied with your forest bow. It is one of my best works.\""; + next; + + if (Inspector == 1) + menu + "I am!", -, + "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; + close; + +L_NohMask_Answer: + mes "[Alan]"; + mes "\"No.\""; + close; + +S_Update_Var: + set QUEST_Forestbow_state, + (QUEST_Forestbow_state & ~(@Q_MASK) + | (@Q_status << @Q_SHIFT)); + return; +} diff --git a/npc/009-2_Hurnscald/doctor.txt b/npc/009-2_Hurnscald/doctor.txt new file mode 100644 index 00000000..825db4cc --- /dev/null +++ b/npc/009-2_Hurnscald/doctor.txt @@ -0,0 +1,67 @@ +// Doctor + +new_20-1.gat,148,25,0 script Doctor 107,{ + if (getequipid(equip_head) == 616) goto L_Axe; + if (getequipid(equip_head) == 621) goto L_Eyepatch; + + mes "[Doctor]"; + mes "\"Hello, can I help you?\""; + next; + + if (Inspector == 1) + menu + "I think I am sick!", L_Cure, + "No, I feel fine.", -, + "Have you seen anything strange in town? Anything that might have to do with the robberies?", L_NohMask; + if (Inspector != 1) + menu + "I think I am sick!", L_Cure, + "No, I feel fine.", -; + + mes "[Doctor]"; + mes "\"Then please stop wasting my precious time.\""; + close; + +L_Cure: + mes "[Doctor]"; + mes "\"That is impossible. Status ailments aren't ingame yet!\""; + close; + +L_Axe: + mes "[Doctor]"; + mes "\"Oh my, what happened to you?\""; + next; + mes "[Doctor]"; + mes "\"Wait. Thats just a fake. Shame on you!\""; + next; + close; + +L_Eyepatch: + mes "[Doctor]"; + mes "\"Would you like a glass eye to replace that eye patch you have? We just got a whole load of them in today. I'll even let you keep the patch as a souvenir.\""; + next; + menu + "Yes, please.", L_Eyepatch_GlassEye, + "No thank you", -; + + mes "[Doctor]"; + mes "\"If you change you're mind, please come back and see me.\""; + next; + close; + +L_Eyepatch_GlassEye: + mes "[Doctor]"; + mes "\"Now, where did I put that box of eyes...\""; + mes "He goes off to look for them and comes back empty handed."; + next; + + mes "[Doctor]"; + mes "\"I can't seem to find where I put that box. YOu should come back later, I may have found them by then.\""; + next; + close; + +L_NohMask: + mes "[Doctor]"; + mes "\"No, I haven't seen anything.\""; + close; +} diff --git a/npc/009-2_Hurnscald/drunks.txt b/npc/009-2_Hurnscald/drunks.txt new file mode 100644 index 00000000..410bb081 --- /dev/null +++ b/npc/009-2_Hurnscald/drunks.txt @@ -0,0 +1,16 @@ +//Left drinking contest guy + +new_20-1.gat,65,55,0 script Drinker 121, { + mes "[Binge Drinker]"; + mes "\"Ha! I'll drink muuuch mo.. more than you! Im not ooone biiit dr...dr..unk!\""; + close; +} + +//Right drinking contest guy + +new_20-1.gat,68,55,0 script Drinker 121, { + mes "[Binge Drinker]"; + mes "\"I can still drink more! Better give up you... you... teelotaler! MORE BEER MELINDA!\""; + //I know it's called "teetotaler". That error is on purpose. + close; +} diff --git a/npc/009-2_Hurnscald/inspector.txt b/npc/009-2_Hurnscald/inspector.txt new file mode 100644 index 00000000..89192104 --- /dev/null +++ b/npc/009-2_Hurnscald/inspector.txt @@ -0,0 +1,127 @@ +// + +new_20-1.gat,24,99,0 script Inspector#Hurnscald 150,{ + if (Inspector == 0 && BaseLevel >= 30) goto L_NohMask_Start; + if (Inspector == 1) goto L_NohMask_AskVillage; + if (Inspector == 2) goto L_NohMask_OldWoman; + if (Inspector == 3) goto L_NohMask_TheaterMask; + if (Inspector == 4) goto L_NohMask_TravelingTroupe; + if (Inspector == 5) goto L_NohMask_OldMan; + if (Inspector == 6) goto L_NohMask_OldMan_2; + if (Inspector == 7) goto L_NohMask_Alibi; + if (Inspector == 8) goto L_NohMask_Alibi_2; + if (Inspector == 9) goto L_NohMask_Alibi_3; + if (Inspector == 10) goto L_NohMask_Satchel; + if (Inspector == 11) goto L_NohMask_Basement; + if (Inspector == 12) goto L_NohMask_Note; + if (Inspector == 13) goto L_NohMask_TravelingTroupe_2; + if (Inspector == 14) goto L_NohMask_Over; + if (Inspector == 15) goto L_NohMask_End; + mes "[Inspector]"; + mes "\"I'm sorry, but I'm busy looking into this string of robberies.\""; + close; + +L_NohMask_Start: + mes "\"Hmm...what to do.\""; + mes "He looks up and into your face."; + next; + + mes "[Inspector]"; + mes "\"You look capable, will you help me solve these robberies?\""; + next; + + menu + "Yes", L_NohMask_Accept, + "No", -; + close; + +L_NohMask_Accept: + set Inspector, 1; + mes "[Inspector]"; + mes "\"Ok then. I'd like you to ask the villagers about the recent string of robberies.\""; + close; + +L_NohMask_AskVillage: + mes "[Inspector]"; + mes "\"Please continue talking to the villagers.\""; + close; + +L_NohMask_OldWoman: + mes "[Inspector]"; + mes "\"Hm...I don't know if I trust her eyesight or memory. See if someone else knows anything.\""; + close; + +L_NohMask_TheaterMask: + set Inspector, 4; + mes "[Inspector]"; + mes "\"Someone in a theater mask, eh? There was a traveling theater troupe in town recently, but they've moved on to Tulimshar. Please go talk to their leader about this.\""; + close; + +L_NohMask_TravelingTroupe: + mes "[Inspector]"; + mes "\"Please go talk to the leader of the traveling troupe about the theater mask.\""; + close; + +L_NohMask_OldMan: + set Inspector, 6; + mes "[Inspector]"; + mes "\"Hm...an old man? Could you interrogate him for me?\""; + close; + +L_NohMask_OldMan_2: + mes "[Inspector]"; + mes "\"Have you talked with the old man yet?\""; + close; + +L_NohMask_Alibi: + mes "[Inspector]"; + mes "\"Can you verify that with his wife?\""; + close; + +L_NohMask_Alibi_2: + set Inspector, 9; + mes "[Inspector]"; + mes "\"Hm...then it couldn't be him. I'm not sure where to go from here, maybe you can find something else. Try talking to everyone again.\""; + close; + +L_NohMask_Alibi_3: + mes "[Inspector]"; + mes "\"Made any progress yet?\""; + close; + +L_NohMask_Satchel: + mes "[Inspector]"; + mes "\"Then go north and investigate!\""; + close; + +L_NohMask_Basement: + mes "[Inspector]"; + mes "\"Did you look over the basement?\""; + close; + +L_NohMask_Note: + set Inspector, 13; + mes "[Inspector]"; + mes "\"What a strange note. I'll keep track of this, while you return the mask to the troupe.\""; + mes ""; + mes "\"By the way, stay sharp! I may call upon you again.\""; + close; + +L_NohMask_TravelingTroupe_2: + mes "[Inspector]"; + mes "\"Please return the mask to the traveling troupe.\""; + close; + +L_NohMask_Over: + set Inspector, 15; + mes "[Inspector]"; + mes "\"My men have found all of the stolen items. They were all in the mining camp. We still don't know who did it.\""; + mes "[2500 experience points]"; + getexp 2500, 0; + close; + +L_NohMask_End: + mes "[Inspector]"; + mes "\"Remember to stay sharp. I might need your help on another case.\""; + close; +} diff --git a/npc/009-2_Hurnscald/kfahr.txt b/npc/009-2_Hurnscald/kfahr.txt new file mode 100644 index 00000000..3ca72226 --- /dev/null +++ b/npc/009-2_Hurnscald/kfahr.txt @@ -0,0 +1,1224 @@ +//################################################################################# +//# +//# Kfahr the Desert Warrior. +//# Participates in two quests: +//# - Sole participant in the Bone Knife quest: +//# (10 black scorpion stingers + 10 small mushrooms + level 40) -> Bone Knife +//# - Sole participant in the Golden Stinger subquest +//# (subquest for the Monster Oil subquest, cf. Nicholas' Setzer Quest) +//# (win arm-wrestling + bring 10 snake skins + level 60) -> golden stinger +//# +//# Variables used: @QUEST_Forestbow_state, nibble 2 (knife quest) +//# @QUEST_Forestbow_state, nibble 3 (monster oil subquest) +//# +//################################################################################# + +new_20-1.gat,67,57,0 script Kfahr 125,{ + + set @QS_NEWBIE, 0; + set @QS_MET_KFAHR, 1; + set @QS_KNOWS_KFAHR, 2; + set @QS_KNIFE_QUEST, 3; + set @QS_KNIFE_QUEST_DONE, 4; + set @QS_LOST_WRESTLING, 5; + set @QS_STINGER_QUEST, 6; + set @QS_STINGER_QUEST_DONE, 7; + + set @BEER, 539; + + set @BLACK_STINGER, 709; + set @BLACK_STINGERS_NR, 10; + set @MUSHROOM, 566; + set @MUSHROOMS_NR, 10; + set @SNAKE_SKIN, 641; + set @SNAKE_SKINS_NR, 10; + + set @KNIFE_QUEST_XP, 50000; + set @STINGER_QUEST_XP, 80000; + + set @BONE_KNIFE, 570; + set @GOLDEN_STINGER, 706; + + set @Q_MASK, NIBBLE_2_MASK; + set @Q_SHIFT, NIBBLE_2_SHIFT; + + set @Q_status, (QUEST_Forestbow_state & @Q_MASK) >> @Q_SHIFT; + + set @Q_needs_stinger, ((QUEST_Forestbow_state & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT) > 1; + + if (@Q_status == @QS_KNIFE_QUEST) + goto L_knife_quest_check; + + if (@Q_status == @QS_STINGER_QUEST) + goto L_stinger_quest_check; + + if (@Q_status > @QS_NEWBIE) + goto L_meet_again; + + mes "[Warrior]"; + mes "You stand before a battle-scarred, darkly tanned warrior, brimming with muscles."; + mes "Just looking at him you smell danger, adventure, excitement..."; + next; + + mes "[Warrior]"; + mes "On second thought, he really could use a bath."; + mes ""; + mes "The warrior turns towards you, grinning broadly."; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Why, hello there! Come to visit Kfahr the Warrior to hear of my exploits, have you?\""; + mes "He laughs heartily and gives you a slap on the back."; + mes "\"Can't blame you, can't blame you at all! Here, take a seat!\""; + next; + + set @has_beer, 0; + set @beer_count, 0; + set @last_story, 0; + + set @Q_status, @QS_MET_KFAHR; + callsub L_Update_Var; + + goto L_main_menu; + +L_meet_again: + mes "[Kfahr the Warrior]"; + mes "Kfahr nods and grins as you greet him."; + mes "\"Came back for more stories? Have a seat!\""; + next; + goto L_main_menu; + +L_main_menu: + if (@Q_status >= @QS_KNOWS_KFAHR) + goto L_real_main_menu; + menu "Who are you?", -, + "Goodbye.", L_end; + + mes "[Kfahr the Warrior]"; + mes "Kfahr laughs again."; + mes "\"Surely you jest! You must have heard of Kfahr, Slayer of Toby Rick the Desert Worm, Raider of the Lost Temple, Hero of Tulimshar?\""; + next; + + menu "Uhm...", -, + "Well...", -, + "To be quite honest...", -, + "Excuse me, someone is, er, whispering me...", L_end; + + mes "[Kfahr the Warrior]"; + mes "\"Ah, I knew it! So you have come to hear some tales about the dangers of the desert? You've come to the right man!\""; + next; + + set @Q_status, @QS_KNOWS_KFAHR; + callsub L_Update_Var; + goto L_real_main_menu; + +L_tale_sub: + if (@current_story == @last_story) + goto L_same_story_abort; + if (@has_beer == 0) + goto L_out_of_beer_abort; + set @last_story, @current_story; + set @has_beer, 0; + set @story_abort, 0; + return; + +L_same_story_abort: + mes "[Kfahr the Warrior]"; + mes "Kfahr frowns."; + mes "\"I only just told you that story. Trust me, the others are worth hearing, too!\""; + next; + set @story_abort, 1; + return; + +L_out_of_beer_abort: + mes "[Kfahr the Warrior]"; + if (@beer_count > 4) + mes "\"I think I've talked 'nuff for now... but thanks for lis'ning!\""; + if (@beer_count <= 4) + mes "\"Now that's one of my favorite tales, but my throat is just a little too dry to talk about something like that... could you help me out a little here?\""; + next; + set @story_abort, 1; + return; + +L_real_main_menu: + if (@Q_needs_stinger) + goto L_long_main_menu; + + menu "What's a Desert Worm?", L_tale_desert_worm, + "Desert Temple?", L_tale_desert_temple, + "Hero of Tulimshar?", L_tale_hero_tulimshar, + "Tell me about the desert!", L_tale_desert, + "I want to become as powerful as you!", L_gain_power, + "Here, have a beer!", L_give_beer, + "Goodbye!", L_end; + + close; + +L_long_main_menu: + + menu "What's a Desert Worm?", L_tale_desert_worm, + "Desert Temple?", L_tale_desert_temple, + "Hero of Tulimshar?", L_tale_hero_tulimshar, + "Tell me about the desert!", L_tale_desert, + "I want to become as powerful as you!", L_gain_power, + "Have you fought any Golden Scorpions?", L_golden_scorpion, + "Here, have a beer!", L_give_beer, + "Goodbye!", L_end; + + close; + +L_tale_desert_worm: + set @current_story, 1; + callsub L_tale_sub; + if (@story_abort) goto L_main_menu; + + mes "[Kfahr the Warrior]"; + mes "Kfahr smiles and leans back."; + mes "\"A desert worm is probably the largest creature you will ever see, larger even than most dragons. It spans a good twenty chains (or six box tosses if you're used to the Imperial system) in length, has a thick, rubbery skin, and teeth as long as my legs.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Most are a darkish gray, except for the young ones; those are more purplish, I've been told. Well, anyway, you hardly ever see one of them in their entirety, you only see the head, if they decide to come out and fight-- they tend to burrow under the ground.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"They are terrifying beasts, but lack any intelligent thought whatsoever. They just eat whatever gets in their way. There's nothing out there that can kill one, I think, and they can grow hundreds of years old.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Fortunately, they're kind of rare these days, and mostly roam in the empty deserts far, far south of Tulimshar. They don't like the area too close to the mountains, I think; probably too rocky underground.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "Kfahr takes a sip from his beer."; + mes "\"Anyway. Desert worms are dangerous, as I said, but there was one particularly terrifying one, called Toby Rick. You must've heard of it-- the greatest and most dangerous worm, scourge of the trade routes. It could smell humans from miles away.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Most desert worms don't smell or see or feel much, you see. They just notice when something's walking nearby, then jump up and swallow it. But Toby Rick was different. He was a terrifying beast, three times as long as a regular worm.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"So to feed itself, it had learned to smell. That's right, the beast had grown nostrils and learned how to use 'em!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"One day I was hired to protect a caravan going north to Tulimshar, with a friend of mine, old Arvek. He only came along for the fun, of course; it's not as if I really need much help defending a caravan... or at least normally it isn't.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Arvek's fun to have about. His manners are as bad as his breath, but he knows how to make a laugh out of everything. One thing you musnt't ever do with him, though, and that is to try his `homebrew'-- some kind of ale he makes out of maggot slime...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "Kfahr takes another sip of beer, momentarily irritated as if surprised by the taste."; + mes "\"Anyway, This time was different. We were barely three days out in the desert, when we spotted him-- `the Black Worm!', the Caravan Master cried, `Over there; it will kill us all!'\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"I had barely enough time to draw out my sword, and the beast was upon us! The caravan people were fleeing for their lives, so it was up to me and Arvek to stop it.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"That was madness, of course; no-one takes on a desert worm, if they have a choice. But we didn't; you see, with most desert worms you can just stand still and it won't notice you and pass by. But not with this one!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "Kfahr leans forward."; + mes "\"So this humongous beast came roaring towards us, a big back hole where the mouth is, spiky fins sticking out to the side, all ready to swallow us all! My sword felt like a toothpick against that monster!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "He pauses, then leans back a little to take another long sip from his beer."; + mes "\"So it seemed that our last hour was at hand, that we'd be swallowed and never heard from again!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Aha, but Kfahr doesn't die quite so easily. What happened was this: Me and Arvek charged towards that thing, slashing and stabbing, but our blows would just glance off. The beast roared and just slid by us, slapping us to the side with its fins like maggots, knocking us to the ground.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"It bolted up into the air, and tore down on the caravan, swallowing each and everyone in there in a single big gulp!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Then it turned around towards us. Those fins had hit us pretty badly; I had lost my shield and Arvek his backpack. Better for him, I suppose, but I had been rather fond of that shield-- not that it would have helped me much here...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "Kfahr leans foward again, nearly knocking over his beer."; + mes "\"So the beast charges at the two of us again and we dodge-- Arvek left, me right. The beast is smarter than the average desert worm, though, and had expected that-- so it bends to the side and swallows poor Arvek, hair and hide and all.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "Kfahr's eyes sparkle with excitement."; + mes "\"It turns around, trying to get me too. I dodge it-- left, then the same again, I dodge it right. But it can't go on like that, the beast isn't tiring, but I am...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"So for one instant I think that this might be it, that I might die out here! A worthy death, I suppose, against the king of desert worms! And just as I think that, I bump against something\""; + next; + + mes "[Kfahr the Warrior]"; + mes "Kfahr slaps on the table."; + mes "\"Arvek's backpack! Doesn't sound terribly exciting, of course-- what am I going to do, toss it at the beast and hope that it chokes on it?\""; + next; + + mes "[Kfahr the Warrior]"; + mes "He grins."; + mes "\"But I remember something better. That beast had grown nostrils, right? So it can smell and taste! So I tear open his backpack and pull out that big snakeskin of that disgusting maggot ale of his. It's still filled to the brim.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"I quickly put on my gloves again, because I don't want to touch that stuff with my bare skin. The beast is almost upon me, but I have only that one chance-- so I squeeze the skin while sticking my thumb into the opening, until I can see the black of its nostrils...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"...and when I think it's almost too late already, I shoot out that revolting brew at the beast's smelling holes, and I hit! Two at once, and up and sideways it rolls, away from me, and roaring and bellowing in pain!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"It roared for a good five minutes, then convulsed... and first it spat out old Arvek, who was a bit irritated at all that because, as he told me, he had `almost pierced the pancreas', whatever that means...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Next it spat out the caravan, and then some other caravan it had plucked off from elswehere. Somehow, everyone from there was still alive, too.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Then it slid away from us, away to the north, but we could see it getting slower and slower.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Two days later we caught up with it, but it was already dead then and had started to smell. We looked around and inside of it, found treasures and remnants of some less fortunate caravans and split them up appropriately.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"(I never told Arvek that it was his brew that killed it; he'd never have forgiven me.)\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"One of the nomads that had been travelling with the other caravan then told me that you could make special kinds of knives and swords and armor out of desert worm bones.\""; + next; + + menu "Hang on... bones in a... worm?", L_worm_bones, + "That's neat! Do you have any that I could see?", L_worm_see_bones, + "And then?", L_worm_final, + "Zzzzzzzz.......", L_end; + +L_worm_final: + mes "[Kfahr the Warrior]"; + mes "\"Nothing much else happened on that trip. When we arrived in Tulimshar, people at first didn't believe the story, of course, until we showed them the treasures and the bones. Ah, those were wonderful days...\""; + mes "He sighs and leans back, a nostalgic look on his face."; + next; + + goto L_main_menu; + +L_worm_bones: + mes "[Kfahr the Warrior]"; + mes "\"Weren't you listening? A desert worm is not a regular worm; a worm couldn't survive in the desert.\""; + next; + + menu "Do you have any bones that I could see?", L_worm_see_bones, + "Never mind that, what happened then?", L_worm_final, + "Zzzzzzzz.......", L_end; + +L_worm_see_bones: + if (@Q_status == @QS_KNIFE_QUEST) + goto L_boneknife_quest_ip; + + if (@Q_status > @QS_KNIFE_QUEST) + goto L_worm_continue2; + + if (baselevel >= 40) + goto L_boneknife_quest; + + mes "[Kfahr the Warrior]"; + mes "\"Of course!\""; + mes "He pulls out a strangely curved knife with a yellow-whiteish blade that is almost transparent at the edge."; + next; + + mes "[Kfahr the Warrior]"; + mes "\"When hardened properly, this bone knife can last a lifetime! One of the best knives you will find, too.\""; + mes "He puts the knife back into his pocket."; + next; + + goto L_main_menu; + + +L_worm_continue2: + mes "[Kfahr the Warrior]"; + mes "Kfahr laughs."; + mes "\"Just have a look at the knife I gave you if you don't believe me!\""; + next; + + goto L_main_menu; + +L_tale_desert_temple: + set @current_story, 2; + callsub L_tale_sub; + if (@story_abort) goto L_main_menu; + + mes "[Kfahr the Warrior]"; + mes "\"Ah, that...\""; + mes "Kfahr leans back and takes a sip from his beer."; + next; + + mes "[Kfahr the Warrior]"; + mes "\"That was many years ago, when George and I were just kids. George later became a pirate, you see; he always loved hunting for treasure. But back in those days it was all on level ground.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"George had found a treasure map somewhere... and when I say `found', I mean that in a fairly liberal sense; he always loved those maps, almost as much as the excitement of hunting for treasure.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Anyway, that map pointed to a spot in the desert a good day's walk south of Tulimshar. So we grabbed our satchels and coats and packed food and water, and headed there in the evening.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"We walked all night. As you know, it's best not to travel during the day if you can avoid it, and we were young and energetic in those days, so that was easily avoided.\""; + mes "He sighs and takes another sip."; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Anyway, when the sun rose in the morning, we still hadn't found the place. So we climbed up on the nearest dune and looked all around to find it.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"But there was nothing, nothing at all. We looked and looked-- and suddenly George screamed: While we weren't paying attention to nearby things, scorpions had crept up on us!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"The scorpions had smelled the food we had brought and cut open our satchels, tearing our waterskins and making a mess of our food-- and now that they were done with that, they were coming for us!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"We didn't have any suitable weapons, and not much of a choice either, so we made a break for it. We ran into the desert, fast as our legs would carry us, and the scorpions after us.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"We very nearly didn't make it. There was nothing around but sand, and we had no water, no food-- at least we'd had our breakfast already-- and the sun kept burning, and burning, and trying to cook us alive.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"We had long lost the scorpions, but we were dry like parchment, and exhausted from all the sun and running. So we sat down in the shades of a dune and contemplated our options.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Without water we couldn't last during the day. So our only hope was to find shelter somewhere-- except that the only thing around was sand, and the mid-day sun would rob that of all shelter.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"So we resigned to continuing to search for something, anything-- it was either that, or die of thirst for sure. The only problem was that we were already so thirsty and it was so bright that we couldn't see nor walk straight anymore.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"So we had barely made it to the top of the next dune when George slipped and rolled down the other side. I wanted to catch him, but I was too dizzy myself, and so I rolled after him.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"We seemed to roll down for hours, and I kept feeling dizzier and dizzier; I didn't have the strength to stop. When we arrived at the bottom, I just wanted to lie down and let the sun dry me up.\""; + mes "Kfahr takes a deep sip of beer. \"Aaah.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"I was being foolish, of course. You should never give up, no matter how hopeless the situation may seem. Anyway, I finally did decide to get up on my knees and look around again...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"...and what I saw right before me, believe it or not, was a giant face of a man, carved into rock-- there, in the middle of the desert, half-sunk, a shattered visage!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"I pulled George up-- I didn't have the strength to speak, but walking seemed to work-- and we slowly made our way over to it. We weren't thinking much, just trying to find some shade, so we climbed into that thing's ear.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Inside it felt moist, as if it was a real ear-- not that I've climbed inside a real ear, mind you! But that feeling of cool and dampness and water was like a magical healing potion; we suddenly felt strength in our legs again.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"When we looked aorund, we noticed that there was a passage leading further underground, and long-spent torches on the wall. Fortunately I still had my tinderbox, so I wrapped my shirt around a torch and lighted it.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"We climbed down, and soon we heard the dripping of water-- we had found an underground water-hole! More than that, we had found a gigantic underground cave, and, at the end of it, a huge portal.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"We first drenched ourselves in water-- somehow managing not to douse the torch-- and drank until we were ready to burst. When we had rested, we went to the portal to have a closer look.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"The portal was made out of bronze, or some similar metal, with images of snakes engraved all over. Curious as we were, we pulled the door open-- it wasn't locked or barred in any way-- and had a look inside.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"The passages in there were cool and dark, with a ceiling high enough to swallow the light of my torch. There were snakes, quite a few of them, but we were both quick-footed and managed to avoid them.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"There were chambers and inscriptions and more torches, but not a living being besides us and the snakes. Hmm. Though I could have sworn that some of the statues there were following us with their eyes...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"All went well, until George stepped into a trap. A piece of ground just caved in, and if I hadn't grabbed his hand at the last second, he would have ended up on some rusty and probably poisoned spikes on the bottom...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"But I moved too fast, and slipped, and let go of the torch to catch myself with the other hand-- and the torch ended up in the bottom of the pit! Well, better the torch than George, I suppose...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Still, we no longer had any light. Being careless, I had gotten my tinderbox wet while we were at the water-hole, so we couldn't make another torch either.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"We had the choice between staying by our torch and watching it die, and then follow suit at the hands, or, well, fangs of the snakes, or wandering off in the dark, to be eaten by snakes someplace else.\""; + mes "Kfahr empties his beer, looking a bit disappointed."; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Anyway, we took the latter option. We wandered through the dark, somehow barely avoiding the snakes and the traps, running into walls and hitting our heads on archways, until, suddenly, we saw something shining up ahead.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"That thing was on some kind of pedestal, and it looked like a golden tablet of sorts. We clambered towards it-- the only source of light in here, the only thing that could save us-- and hesitated.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Should we just take it? This was clearly some kind of temple, so it might be something sacred. George and I argued about it for a while, until I decided to end the discussion-- so I simply grabbed it: we needed light.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"At that point, a terrible grinding noise started all around us, as the pedestal began to sink into the ground. We had triggered some ancient trap!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Holes on the walls were opening up, and snakes began to gush out-- only now did we realise that we were in a huge, opulent chamber, with gold and gems and images all around! But now it was too late for any looting; we had to run for our lives!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"So we ran from that slithering mass, faster than we ever had! We had no idea where we were going of course, but at least we had light again...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Somehow we got lucky, somehow we escaped. It was evening again when we climbed out of that ear into the desert again, with only our lives and that golden tablet. We only barely made it back to Tulimshar in the morning.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"But we did have the tablet as a proof of what happened.\""; + mes "He grins."; + mes "\"That was my first real adventure, I think. Ah, those were exciting days.\""; + next; + + menu "Wow.", -, + "What happened to the tablet?", L_tale_tablet, + "Did you go there again?", L_tale_temple_again, + "Zzzzzzz.....", L_end; + + goto L_main_menu; + +L_tale_tablet: + + mes "[Kfahr the Warrior]"; + mes "\"Well, we couldn't read it. We later sold it for a good price, to a young travelling archeologist, Doctor Nohlidge or something like that. She said that the engravings described sacrifical practices of an ancient snake cult...\""; + mes "He shrugs."; + next; + goto L_main_menu; + +L_tale_temple_again: + + mes "[Kfahr the Warrior]"; + mes "Kfahr laughs."; + mes "\"Of course we tried to go there again. After seeing all that treasure, George wouldn't give up on it. We tried many times-- as did others, from what I've heard-- but we never found it again.\""; + next; + goto L_main_menu; + +L_tale_hero_tulimshar: + set @current_story, 3; + callsub L_tale_sub; + if (@story_abort) goto L_main_menu; + + mes "[Kfahr the Warrior]"; + mes "\"Yes, Hero of Tulimshar. That was many years"; + mes "ago, but I did save the city of Tulimshar from a deadly drought.\""; + mes "He grins broadly."; + mes "\"And quite a feat that was, let me tell you!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Back in those days, there wasn't much trade with Hurnscald, and Tulimshar was dependent on its own water supply-- critically dependent, even.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Now, one day the water people drew from the wells started smelling. The smell was nauseating, and people who drank from it became violently sick.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"So the entire town was without water, except for the water reserves in the cistern. Someone had to act quickly-- and of course that someone was me.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"With nothing more than a torch, some light armor and a sword, I climbed down one of the wells. It was a long climb; the wells go down fairly deep.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"I noticed that there were some holes in the walls of the wells, with hollow spaces on the sides... Hmm, that reminds me that I still have to check whether the rumors of a labyrinth underneath Tulimshar are true.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Anyway, it took me a long time to get down, and every minute the stench was getting worse-- something really bad was down there. I had to stop and tie a wet piece of cloth over my mouth so that I wouldn't inhale all of that nasty stuff.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"My torch was in an even poorer shape-- whatever was making that smell had killed the flame, so I soon had to rely on the light from above to see anything.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Finally I arrived at the water level. All Tulimshar wells dip into the same underground lake, which is on the side of a huge underground cavern. And in the midst of that cavern lay-- hardly visible through the greenish mist coming from it-- a Stinkewyrm!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Stinkewyrms are smaller cousins of dragons, but just as dangerous. They have a green, sticky skin, and, well, they stink. A lot. This one was particularly bad-- it had filled up the entire cave with stinkiness!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"I climbed down and swam to the shore. The stench was terrible; I had to hold my breath to get closer to the monster. There it was, lying on the ground, snoring, poisoning all our water! So I tried to wake it up to scare it away.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"I kicked it. I yelled at it. (Bad mistake, I got some of that stinky stuff in my lungs.) I poked at it with my sword. I even tried to poke it in the eyes, but I couldn't get that close to its mouth-- that was where most of the smell was coming from.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"After a few attempts I couldn't take it anymore, so I had myself be pulled up again. It took me a while to recover and to tell the tale. We talked about what could be done, but no-one had an idea.\""; + mes "Kfahr takes a deep sip from his beer."; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Finally, I came up with something. Stinkewyrms love that terrible stench of theirs, so what should be their natural enemy? Why, soap, of course!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"We couldn't just dump all the soap into the underground lake, of course; the water would be undrinkable again. So we collected some of the soap, and I climbed down again with it.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Having arrived at the bottom, I cut off the biggest of the water buckets and filled it with water-- and that was a really big one, I could hardly carry it when it was full. Then I dissolved most the soap, and poured that onto the Stinkewyrm's head.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "Kfahr laughs."; + mes "\"Ah, that caught its attention! You should have seen that dragon roar, as it jumped to its feet and tried to find out who had soaped it! I rushed back to the water and made another bucket of soap water.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"But it had noticed me! And as soon as it had realized where I was, it came after me. Then it stopped, towering right before me, its stench nearly killing me, and grinned that broad, crooked-teeth dragon smile of its kind.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Then it took a deep breath-- and I realised that that was probably `it' for me; Stinkewyrms can breathe fire like real dragons, and I didn't have the time to run back to the water.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"But when it breathed out, only a tiny little flame came out-- and a lot of terrible smell that nearly knocked me off my feet.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"For you see, it had generated so much of the deadly smell around itself that even its own fire breath couldn't survive!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"So it stared at me, wide agape-- the perfect opening!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"I stormed at it and before it could even blink, it had a huge load of bubbly soap water down its throat.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"You should have heard the coughing and shaking! I swear, I thought the roof would collapse as it was jumping and choking...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Bubbles were coming out of its mouth, its nostrils, even its ears! The poor wyrm must have never felt so clean in its life!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"I was out of soap, but the beast didn't know that-- so I quickly grabbed another bucket and charged it again.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"And it worked! Seeing me like this again, it ran, squealing, back into the underground caves from where it must have come.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "Kfahr roars with laughter and slaps his hands on the table."; + mes "\"So we defeated it with hygiene! Ah, that was wonderful. After a day, the stench had worn off enough that we could drink the water again, and a week later it was almost completely gone. And of course I was the hero of the day.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "Kfahr downs the rest of his beer."; + mes "\"And from that day on they called me the `Hero of Tulimshar'.\""; + next; + + goto L_main_menu; + +L_tale_desert: + set @current_story, 4; + callsub L_tale_sub; + if (@story_abort) goto L_main_menu; + + mes "[Kfahr the Warrior]"; + mes "Kfahr leans back, trying to find the right words to describe the desert."; + mes "\"The desert... a cold and lonely place at night, and a hot and lonely place during the day.\""; + mes "For someone who apparently spent most of his life in the desert, his insights sometimes seem less than profound."; + next; + + mes "[Kfahr the Warrior]"; + mes "\"The desert is a living hell during some times of the year. Filled with black scorpions and snakes, except for the shadier areas, and mountain snakes if you go further east.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"South of Tulimshar is a fairly protected region; the nomads keep the snakes out of there and you'll find only relatively harmless monsters. But go west from there, to the beach, and it's scorpions and snakes...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"...and east of there you find the old Hatmaker cave, now filled to the brim with snakes! Rumors have it that this was once an oasis, in centuries long gone by, but as far as I'm concerned that pit is just a dump that you best avoid.\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Go further to the east and you'll find ol' Pachua up on the mountain. He seems to have some kind of power over the mountain snakes there; they never attack him. I think he's a bit creepy, personally...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "\"...but if he offers you some of his tobacco, then by all means give it a try! That stuff is amazing.\""; + mes "He laughs, then begins to cough."; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Not terribly healthy, though, I s'pose...\""; + next; + + goto L_main_menu; + +L_gain_power: + if ((@beer_count - @has_beer) < 1) + goto L_listen_to_a_story_first; + + if (@Q_status < @QS_KNIFE_QUEST) + goto L_boneknife_quest; + + mes "[Kfahr the Warrior]"; + mes "\"Yeees, yes... doesn't everyone?\""; + mes "He laughs briefly."; + mes "\"Don't worry-- you can't become as powerful as I, of course, but if you keep practicing, you can get pretty damn close! Just make sure to pick your opponents carefully, and know when to run to live another day!\""; + next; + + goto L_main_menu; + +L_listen_to_a_story_first: + mes "[Kfahr the Warrior]"; + mes "\"That's the spirit! Perhaps you better listen to one of my tales, then!\""; + next; + goto L_main_menu; + +L_boneknife_quest: + if (@Q_status == @QS_KNIFE_QUEST) + goto L_boneknife_quest_ip; + + if (@Q_status > @QS_KNIFE_QUEST) + goto L_boneknife_quest_completed; + + if (baselevel < 40) + goto L_boneknife_quest_tooweak; + + mes "[Kfahr the Warrior]"; + mes "Kfahr stares at you for a moment, then nods."; + mes "\"You seem reasonably skilled. I think I may have something that I no longer need, but I don't want to give it to just anyone...\""; + mes "He hesitates, obviously trying to make up his mind about something, then continues."; + + set @Q_status, @QS_KNIFE_QUEST; + callsub L_Update_Var; + next; + +L_boneknife_quest_ip: + mes "[Kfahr the Warrior]"; + mes "\"Bring me " + @BLACK_STINGERS_NR + " black scorpion stingers and " + @MUSHROOMS_NR + " small mushrooms to prove that you are a competent warrior, and I'll see if I have something for you.\""; + mes "He grins."; + next; + + mes "[Kfahr the Warrior]"; + mes "\"But while you are here... perhaps you would like to listen to another story?\""; + next; + + goto L_main_menu; + +L_boneknife_quest_completed: + mes "[Kfahr the Warrior]"; + mes "\"I really don't have anything else I'd want to give away to make you stronger. Look around a bit yourself! You won't become a hero if you keep begging for help!\""; + next; + goto L_main_menu; + +L_boneknife_quest_tooweak: + mes "[Kfahr the Warrior]"; + mes "\"You know, little one, if you keep practicing a little and come back once you're a bit stronger, I might have something for you...\""; + mes "He winks."; + next; + goto L_main_menu; + + +L_knife_quest_check: + mes "[Kfahr the Warrior]"; + mes "Kfahr eyes you with unconcealed amusement."; + mes "\"Welcome back! Did you bring me the things I asked for?\""; + next; + + menu "Yes, here they are!", L_knife_quest_completecheck, + "Er, what were those things again?", L_boneknife_quest_ip, + "No, sorry, I didn't have the time.", L_main_menu, + "I forgot! Let me get them right now.", L_end; + close; + +L_knife_quest_completecheck: + if (countitem(@BLACK_STINGER) < @BLACK_STINGERS_NR) + goto L_knife_quest_missing_stingers; + + if (countitem(@MUSHROOM) < @MUSHROOMS_NR) + goto L_knife_quest_missing_mushrooms; + + + mes "[Kfahr the Warrior]"; + mes "Kfahr is delighted."; + mes "\"Well done, well done! Now that's what I call Warrior spirit!\""; + mes "He laughs, then suddenly stops, turning to you with suspicion in his eyes."; + mes "\"You DID get those yourself, didn't you? Not buy them or somesuch...?\""; + next; + + mes "[Kfahr the Warrior]"; + mes "Before you can answer, he laughs and slaps you on the back again."; + mes "\"Ah, what am I thinking! Too many years in the desert make you a little suspicious of everyone and everything! Naah, I believe you.\""; + mes "He pulls a strangely curved knife out of a side pocket and holds it up to the light. The blade is partly transparent, and looks quite sharp."; + next; + + mes "[Kfahr the Warrior]"; + mes "\"It's a bone knife, carved out of the umplex bone of a desert worm... you can probably guess which one.\""; + mes "He grins broadly again, weighing the weapon."; + mes "\"It's a little heavy, but one of the best knives you can get. Certainly beats a short sword any time of day.\""; + mes "I had the nomads make me a few of them, and I hardly use them nowadays, so I think I can part with this one."; + next; + + mes "[Kfahr the Warrior]"; + mes "He hands you the knife."; + mes "\"Oh, and I think I'll keep those in return; I know someone who will trade them for antidote potions.\""; + mes "He pockets the stingers and mushrooms."; + mes "[" + @KNIFE_QUEST_XP + " experience points]"; + next; + + set @Q_status, @QS_KNIFE_QUEST_DONE; + callsub L_Update_Var; + + delitem @BLACK_STINGER, @BLACK_STINGERS_NR; + delitem @MUSHROOM, @MUSHROOMS_NR; + getexp @KNIFE_QUEST_XP, 0; + getitem @BONE_KNIFE, 1; + + + goto L_main_menu; + +L_knife_quest_missing_stingers: + mes "[Kfahr the Warrior]"; + mes "\"No, no... I said " + @BLACK_STINGERS_NR + " black scorpion stingers."; + if (countitem(@BLACK_STINGER)) + mes "You will need " + (@BLACK_STINGERS_NR - (countitem (@BLACK_STINGER))) + " more of those.\""; + if (countitem(@BLACK_STINGER) == 0) + mes "You didn't bring even a single one!\""; + next; + close; + +L_knife_quest_missing_mushrooms: + mes "[Kfahr the Warrior]"; + mes "\"No, no... I said " + @MUSHROOMS_NR + " small mushrooms."; + if (countitem(@MUSHROOM)) + mes "You will need " + (@MUSHROOMS_NR - (countitem (@MUSHROOM))) + " more of those.\""; + if (countitem(@MUSHROOM) == 0) + mes "You didn't bring me even a single little mushroom!\""; + next; + close; + +L_stinger_quest_check: + mes "[Kfahr the Warrior]"; + mes "Kfahr grins at you."; + mes "\"Welcome, welcome! Did you bring me my snake skins?\""; + next; + + menu "Yes, here they are!", L_snakeskins_completecheck, + "No, sorry, I didn't have the time.", L_main_menu, + "I forgot! Let me get them right now.", L_end; + close; + + +L_snakeskins_completecheck: + if (countitem(@SNAKE_SKIN) < @SNAKE_SKINS_NR) + goto L_snakeskins_missing; + + delitem @SNAKE_SKIN, @SNAKE_SKINS_NR; + getitem @GOLDEN_STINGER, 1; + + set @Q_status, @QS_STINGER_QUEST_DONE; + callsub L_Update_Var; + + getexp @STINGER_QUEST_XP, 0; + + mes "[Kfahr the Warrior]"; + mes "Kfahr takes the skins and pulls a golden scorpion stinger out of his pocket."; + mes "\"Well, you've earned it. But be careful-- the poison in there is still lethal, after all those years.\""; + mes "He hands you the scorpion stinger."; + mes "[" + @STINGER_QUEST_XP + " experience points]"; + next; + goto L_main_menu; + +L_snakeskins_missing: + mes "[Kfahr the Warrior]"; + mes "\"No, no... I said " + @SNAKE_SKINS_NR + " snake skins."; + if (countitem(@SNAKE_SKIN)) + mes "You will need " + (@SNAKE_SKINS_NR - (countitem (@SNAKE_SKIN))) + " more of those.\""; + if (countitem(@SNAKE_SKIN) == 0) + mes "You didn't bring even a single skin!\""; + next; + close; + + +L_give_beer: + if (countitem(@BEER) < 1) + goto L_player_out_of_beer; + + if (@has_beer) + goto L_enough_beer_for_now; + + if @beer_count > 4 + goto L_too_much_beer; + + setarray @beermessages$, + "Ah yes... a warrior's drink!", + "Generous, generous! I like that!", + "Hahah! That's just what I needed!", + "I love this town! Hurnscaldian hospitality! Mrahahahah!", + "A'ight, one more can't hurt, eh?"; + + set @mesg$, @beermessages$[@beer_count]; + + delitem @BEER, 1; + + set @has_beer, 1; + set @beer_count, @beer_count + 1; + + mes "[Kfahr the Warrior]"; + mes "Kfahr is visibly delighted."; + mes "\"" + @mesg$ + "\""; + mes "He takes a deep sip."; + mes "\"Aaah, magnificent!\""; + + if (@beer_count > 4) + mes "Kfahr seems quite relaxed now."; + + next; + + goto L_main_menu; + +L_enough_beer_for_now: + mes "[Kfahr the Warrior]"; + mes "\"Generous, generous! But I still have plenty in here!\""; + mes "He laughs and takes a sip from the beer you gave him earlier."; + next; + goto L_main_menu; + +L_too_much_beer: + mes "[Kfahr the Warrior]"; + mes "Kfahr leans back and sighs heavily."; + mes "\"Very, very generous... bu' I think I'm fine for now.\""; + mes "He suppresses a burp."; + next; + goto L_main_menu; + +L_player_out_of_beer: + mes "[Kfahr the Warrior]"; + mes "Kfahr stares at you, then begins to laugh."; + mes "\"Mrahahahahaha! Here's the beer! Right, right! Naah, I get it! Save your gold for whatever you need it for! But if you have some spare and want to share a beer, you know where to find me!\""; + next; + goto L_main_menu; + +L_golden_scorpion: + if (@Q_status > @QS_STINGER_QUEST) + goto L_golden_scorpion_over_ask; + + if (@Q_status == @QS_STINGER_QUEST) + goto L_golden_scorpion_ask_again; + + if (@Q_status == @QS_LOST_WRESTLING) + goto L_golden_scorpion_wrestle_again; + + mes "[Kfahr the Warrior]"; + mes "He grins."; + mes "\"Fought any? I single-handedly raided a nest of those beasts! Ah, but golden scorpions are almost unheard of in these parts. Why do you ask?\""; + next; + + menu "Never mind, I was just curious.", L_main_menu, + "I need a golden scorpion stinger.", -; + + mes "[Kfahr the Warrior]"; + mes "\"A golden scorpion stinger? Those are rare and valuable, I hope that you know that!\""; + + if (baselevel < 60) + goto L_too_lowlevel_for_stinger; + + if (@Q_status < @QS_KNIFE_QUEST) + goto L_golden_requires_knife_quest; + + if (@Q_status < @QS_KNIFE_QUEST_DONE) + goto L_golden_requires_knife_quest_done; + + mes "\"Still, you are a warrior of repute. I'll consider giving it to you...\""; + next; + + mes "[Kfahr the Warrior]"; + mes "A mischievous sparkle lightens up in his eyes."; + mes "\"...if you arm-wrestle me for it!\""; + next; + +L_golden_scorpion_wrestle_intro: + + menu "Never!", L_main_menu, + "Wait... what?", L_wrestle_explain, + "Bring it on!", L_golden_scorpion_wrestle; + close; + +L_golden_requires_knife_quest_done: + mes "He hesitates."; + mes "\"But no, this is too valuable. Perhaps if you finish that other quest I gave you...?\"."; + next; + goto L_main_menu; + +L_golden_requires_knife_quest: + mes "He hesitates."; + mes "\"But no, this is too valuable. I think I should have you prove your worthiness with another quest first...\""; + next; + goto L_boneknife_quest; + +L_wrestle_explain: + mes "[Kfahr the Warrior]"; + mes "\"Arm wrestling! Arm against arm! And whoever is stronger wins! If you manage to defeat me, I'll give you a little quest for the stinger. How about it?\""; + next; + goto L_golden_scorpion_wrestle_intro; + +L_too_lowlevel_for_stinger: + mes "\"Well, I have one, but I can't just give it to anyone. Maybe if you train a little and become a worthy warrior I will consider giving it away...\""; + next; + goto L_main_menu; + +L_golden_scorpion_over_ask: + mes "[Kfahr the Warrior]"; + mes "\"Is this about the stingers again? I already gave you a golden stinger, I'm not going to part with any more.\""; + next; + goto L_main_menu; + +L_golden_scorpion_ask_again: + mes "[Kfahr the Warrior]"; + mes "\"This is about the stinger again, right? Well, just bring me " + @SNAKE_SKINS_NR + " snake skins, and you can have one.\""; + next; + goto L_main_menu; + +L_golden_scorpion_wrestle_again: + mes "[Kfahr the Warrior]"; + mes "\"This is about the stinger again, eh? So you want to give it another try?\""; + mes "He grins broadly."; + next; + goto L_golden_scorpion_wrestle; + +L_golden_scorpion_wrestle: + mes "[Kfahr the Warrior]"; + mes "You sit down. Both of you place your arms on the table, on opposing sides, and grab each other's hands."; + next; + + set @KFAHR_STR, 70 + @beer_count * 6; + set @KFAHR_AGI, 60 - @beer_count * 5; + set @kfahr_stamina, 120; + + set @PC_STR, readparam(bStr); + set @PC_AGI, readparam(bAgi); + set @PC_MAX_STAMINA, readparam(bVit) + 20; + set @pc_stamina, @PC_MAX_STAMINA; + + setarray @positions$, + "Kfahr's hand is almost on the table.", + "Kfahr's hand is pushed back.", + "Kfahr and your hands are centered.", + "Your hand is pushed back.", + "Your hand is almost on the table."; + + set @position, 2; + set @first_round, 1; + +L_wrestle_loop: + mes "[Arm-wrestling with Kfahr]"; + + mes @positions$[@position]; + + if ((@PC_STAMINA * 2 <= @PC_MAX_STAMINA) && (@PC_STAMINA * 4 > @PC_MAX_STAMINA)) + mes "You feel a little exhausted."; + if (@PC_STAMINA * 4 <= @PC_MAX_STAMINA) + mes "You feel very exhausted."; + next; + + menu "Push!", L_wrestle_push, + "Hold!", L_wrestle_hold, + "Slam!", L_wrestle_slam, + "Consider your options", L_wrestle_info; + close; + +L_wrestle_info: + mes "[Arm-wrestling with Kfahr]"; + mes "Kfahr is a strong arm-wrestling opponent. Winning against him won't be easy."; + mes "Each round you have to choose an action; what you choose determines both your chances of moving each other's arms and how much weaker you get."; + next; + mes "[Arm-wrestling with Kfahr]"; + mes "If you PUSH, you may be able to push him back, but if you fail, you will lose more stamina than if you had succeeded."; + next; + mes "[Arm-wrestling with Kfahr]"; + mes "If you HOLD, you lose little stamina and may be able to hold him and drain his stength, but you cannot win just by holding."; + next; + mes "[Arm-wrestling with Kfahr]"; + mes "If you SLAM, you try to move against him quickly-- if you are successful, you may push him back quite a bit, but losing this will drain you badly."; + next; + goto L_wrestle_loop; + + +L_wrestle_push: + set @kfahr_def, @KFAHR_STR; + set @attack, @PC_STR; + set @cost_factor, 2; + callsub L_wrestle_attack; + if (@result < -1) + set @result, -1; // can't push back further than one + goto L_wrestle_next; + +L_wrestle_hold: + set @kfahr_def, @KFAHR_STR; + set @attack, @PC_STR; + set @cost_factor, 1; + callsub L_wrestle_attack; + if (@result < 0) + set @result, 0; // hold only + goto L_wrestle_next; + +L_wrestle_slam: + if (@beer_count == 5 && @first_round) goto L_quick_slam; + set @kfahr_def, @KFAHR_AGI; + set @attack, @PC_AGI; + set @cost_factor, 4; + callsub L_wrestle_attack; + goto L_wrestle_next; + + +L_wrestle_attack: + set @kfahr_stamina_bonus, @kfahr_stamina; + set @pc_stamina_bonus, @kfahr_stamina; + + if (@kfahr_stamina_bonus > 40) + set @kfahr_stamina_bonus, 40; + + if (@pc_stamina_bonus > 40) + set @pc_stamina_bonus, 40; + + set @score, @kfahr_def + @kfahr_stamina_bonus - @attack - @pc_stamina_bonus + rand(20) - rand(20); + + set @result, @score / 10; + + if (@result > 1) + set @result, 1; + + if (@result > 0) set @kfahr_stamina, @kfahr_stamina - 12; + if (@result == 0) set @kfahr_stamina, @kfahr_stamina - 16; + if (@result < 0) set @kfahr_stamina, @kfahr_stamina - 8; + + if (@result < 0) set @pc_stamina, @pc_stamina - (6 * @cost_factor); + if (@result == 0) set @pc_stamina, @pc_stamina - (8 * @cost_factor); + if (@result > 0) set @pc_stamina, @pc_stamina - (4 * @cost_factor); + + if (@kfahr_stamina < 0) + set @kfahr_stamina, 0; + + if (@kfahr_stamina < 0) + set @pc_stamina, 0; + + return; + +L_wrestle_next: + set @first_round, 0; + + mes "[Arm-wrestling with Kfahr]"; + if (@result < 0) mes "You manage to push him back!"; + if (@result == 0) mes "You hold your position!"; + if (@result > 0) mes "Kfahr pushes you back!"; + next; + + set @position, @position + @result; + if (@position < 0) goto L_wrestle_win; + if (@position > 4) goto L_wrestle_lose; + + goto L_wrestle_loop; + +L_wrestle_lose: + mes "[Arm-wrestling with Kfahr]"; + mes "Kfahr slams your hand on the table."; + next; + + mes "[Kfahr the Warrior]"; + mes "\"Don't worry! It was a good attempt-- but beating Kfahr is not quite so easy!\""; + mes "He laughs and slaps you on the shoulder."; + mes "\"But come back any time you want to try again!\""; + next; + + set @Q_status, @QS_LOST_WRESTLING; + callsub L_Update_Var; + + goto L_main_menu; + +L_quick_slam: + mes "[Arm-wrestling with Kfahr]"; + mes "Your hands have barely touched as you push against him with all your might. His reactions slowed by the beer, Kfahr doesn't stand a chance."; + next; + goto L_wrestle_win; + +L_wrestle_win: + mes "[Arm-wrestling with Kfahr]"; + mes "You slam Kfahr's hand on the table."; + next; + + mes "[Kfahr the Warrior]"; + mes "Kfahr stares first at the hand, then at you, incredulously."; + mes "Then he begins to roar with laughter, slapping you on the shoulder."; + mes "\"Excellent, excellent! Caught me in a weak moment there, did ya!\""; + next; + + mes "[Kfahr the Warrior]"; + mes "After calming down, Kfahr outlines your quest."; + mes "\"As I promised, I will give you the stinger if you do something for me. Get me " + @SNAKE_SKINS_NR + " snake skins, and I'll let you have it.\""; + next; + + set @Q_status, @QS_STINGER_QUEST; + callsub L_Update_Var; + + goto L_main_menu; + +L_end: + close; + +L_Update_Var: + set QUEST_Forestbow_state, + (QUEST_Forestbow_state & ~(@Q_MASK) + | (@Q_status << @Q_SHIFT)); + return; +} diff --git a/npc/009-2_Hurnscald/misc.txt b/npc/009-2_Hurnscald/misc.txt new file mode 100644 index 00000000..b2cfe9da --- /dev/null +++ b/npc/009-2_Hurnscald/misc.txt @@ -0,0 +1,11 @@ +//Note in bar + +new_20-1.gat,54,49,0 script Note 127, { + mes "[Note]"; + mes "\"We refuse service to anyone who:\""; + mes "\"-Has a bubblehead\""; + mes "\"-Is not properly shaded\""; + mes "\"-Can't walk without stopping after every step\""; + close; + // In case you don't get the joke - it's a parody on Illutia. +} diff --git a/npc/009-2_Hurnscald/nicholas.txt b/npc/009-2_Hurnscald/nicholas.txt new file mode 100644 index 00000000..7d21ab0f --- /dev/null +++ b/npc/009-2_Hurnscald/nicholas.txt @@ -0,0 +1,404 @@ +//################################################################################# +//# +//# Nicholas the Smith. +//# Participates in iron ore smithery and the following quests: +//# - Together with Pachua: Iron Shield quest (repeatable) +//# (10 iron ores, 2 infantry helmets, 20000 GP, leather patch) -> iron shield +//# - Primary participant in the Setzer quest (monster oil/golden stinger subquests) +//# +//# Variables used: @QUEST_Forestbow_state, nibble 3 (setzer quest) +//# @QUEST_Forestbow_state, nibble 4 (iron shield quest) +//# +//################################################################################# + +new_20-1.gat,185,55,0 script Nicholas 135,{ + + set @IRON_ORE, 640; + set @INFANTRY, 638; + set @LEATHER_PATCH, 708; + set @SHORT_SWORD, 536; + set @MONSTER_OIL, 707; + set @SETZER, 571; + set @STEEL_SHIELD, 601; + + set @SETZER_XP, 100000; + set @SHIELD_XP, 20000; + + set @SHIELD_INITIAL, 0; + set @SHIELD_KNOWS_PATCH, 1; // knows that a leather patch is needed + set @SHIELD_COMPLETED, 2; // shield completed once + + set @SETZER_INITIAL, 0; + set @SETZER_KNOWS_OIL, 1; + set @SETZER_KNOWS_STINGER, 2; + set @SETZER_FLAG_MADE_OIL, 4; + set @SETZER_FLAG_MADE_SETZER, 8; + + set @Q_SETZER_MASK, NIBBLE_3_MASK; + set @Q_SETZER_SHIFT, NIBBLE_3_SHIFT; + + set @Q_SHIELD_MASK, NIBBLE_4_MASK; + set @Q_SHIELD_SHIFT, NIBBLE_4_SHIFT; + + set @Q_SETZER_status, (QUEST_Forestbow_state & @Q_SETZER_MASK) >> @Q_SETZER_SHIFT; + set @Q_SHIELD_status, (QUEST_Forestbow_state & @Q_SHIELD_MASK) >> @Q_SHIELD_SHIFT; + + mes "[Nicholas]"; + mes "\"Hello there,"; + mes "I'm an expert blacksmith."; + mes "If you get me some Iron Ore"; + mes "I could make you a very valuable shield"; + mes "or helmet.\""; + next; + menu + "I have some Iron Ore!", L_Check, + "Where can I get this Iron Ore?", L_Info, + "I'm okay, thanks.", L_Pass; + +L_Check: + mes "[Nicholas]"; + mes "\"Let me take at look at how much you have...\""; + next; + if(countitem(@IRON_ORE)<5) goto L_NoItem; + if(countitem(@IRON_ORE)<10) goto L_StageA; + if(countitem(@IRON_ORE)<15) goto L_StageB; + goto L_StageC; + +L_Info: + mes "[Nicholas]"; + mes "\"You can find Iron Ore in mines."; + mes "It is quite hard to come by though.\""; + close; + +L_Pass: + mes "[Nicholas]"; + mes "\"Oh, okay"; + mes "Come back any time.\""; + close; + +L_StageA: + mes "[Nicholas]"; + mes "\"That's just enough for me to make you"; + mes "a winged Knight's Helmet."; + mes "But it'll cost you 10,000GP"; + mes "and 5 lumps of Iron Ore.\""; + next; + goto L_main_menu; + +L_StageB: + mes "[Nicholas]"; + mes "\"Ahh, with that much Iron Ore I can"; + mes "make you one of two helmets,"; + mes "for only 10,000GP, or I can"; + mes "make you a shield, for 20,000GP.\""; + mes ""; + mes "\"What would you like?\""; + next; + goto L_main_menu; + +L_StageC: + mes "[Nicholas]"; + mes "\"Excellent, that's enough to make"; + mes "three different types of helmet."; + mes "My fee is 10,000GP."; + mes "I can also make a shield, but that"; + mes "that will cost you 20,000 GP.\""; + mes ""; + mes "\"Which helmet or shield will it be?\""; + next; + goto L_main_menu; + +L_main_menu: + + set @CHOICE_KNIGHT, 1; + set @CHOICE_CRUSADE, 2; + set @CHOICE_WARLORD, 3; + set @CHOICE_SHIELD, 4; + set @CHOICE_SETZER, 5; + + setarray @choice$, "", "", "", "", ""; + set @choices_nr, 0; + setarray @choice_idx, 0, 0, 0, 0, 0; + + if (countitem(@SHORT_SWORD) < 1) goto L_main_menu_post_setzer; + set @choice$[@choices_nr], "Can you make my short sword better?"; + set @choice_idx[@choices_nr], @CHOICE_SETZER; + set @choices_nr, 1 + @choices_nr; + +L_main_menu_post_setzer: + + if (countitem(@IRON_ORE)<5) goto L_no_more_helmets; + set @choice$[@choices_nr], "Knight's Helmet. (5 Iron Ores)"; + set @choice_idx[@choices_nr], @CHOICE_KNIGHT; + set @choices_nr, 1 + @choices_nr; + + if (countitem(@IRON_ORE)<10) goto L_no_more_helmets; + + set @choice$[@choices_nr], "Crusade Helmet. (10 Iron Ores)"; + set @choice_idx[@choices_nr], @CHOICE_CRUSADE; + set @choices_nr, 1 + @choices_nr; + + set @choice$[@choices_nr], "Steel Shield. (10 Iron Ores)"; + set @choice_idx[@choices_nr], @CHOICE_SHIELD; + set @choices_nr, 1 + @choices_nr; + + if (countitem(@IRON_ORE)<15) goto L_no_more_helmets; + + set @choice$[@choices_nr], "Warlord Helmet. (15 Iron Ores)"; + set @choice_idx[@choices_nr], @CHOICE_WARLORD; + set @choices_nr, 1 + @choices_nr; +L_no_more_helmets: + + menu @choice$[0], -, + @choice$[1], -, + @choice$[2], -, + @choice$[3], -, + @choice$[4], -; + + set @menu, @menu - 1; + + if (@menu >= @choices_nr) + close; + + set @choice, @choice_idx[@menu]; + + if (@choice == @CHOICE_KNIGHT) goto L_YesKnight; + if (@choice == @CHOICE_CRUSADE) goto L_YesCrusade; + if (@choice == @CHOICE_WARLORD) goto L_YesWarlord; + if (@choice == @CHOICE_SHIELD) goto L_YesShield; + if (@choice == @CHOICE_SETZER) goto L_SetzerQuest; + + close; + + +L_NoItem: + mes "[Nicholas]"; + mes "\"It appears you don't have enough Iron Ore for me to work with."; + mes "Please do come back when you have more though.\""; + close; + +L_ComeBack: + mes "[Nicholas]"; + mes "\"Come back any time.\""; + close; + +L_NoMoney: + mes "[Nicholas]"; + mes "\"Oh dear, it seems you don't have enough money.\""; + close; + +L_YesKnight: + if (zeny < 10000) goto L_NoMoney; + set zeny, zeny-10000; + delitem @IRON_ORE,5; + getitem 637,1; + goto L_Done; + +L_YesCrusade: + if (zeny < 10000) goto L_NoMoney; + set zeny, zeny-10000; + delitem @IRON_ORE,10; + getitem 639,1; + goto L_Done; + +L_YesWarlord: + if (zeny < 10000) goto L_NoMoney; + set zeny, zeny-10000; + delitem @IRON_ORE,15; + getitem 636,1; + goto L_Done; + +L_YesShield: + mes "[Nicholas]"; + mes "Nicholas examines your iron ore."; + mes "\"No, this iron is too brittle; for something as large as a shield I need to mix in softer iron. Can I see if you have anything suitable?\""; + next; + + menu "Sure, have a look!", -, + "No.", L_Pass; + + if (countitem(@INFANTRY) == 1) goto L_MoreInfantry; + if (countitem(@INFANTRY) == 0) goto L_NoInfantry; + + mes "[Nicholas]"; + mes "Nicholas pulls out two of your infantry helmets."; + mes "\"I can use those... yes, that should work. Now all I need is a leather patch for the handle, and 20,000 GP.\""; + + if (@Q_SHIELD_status < @SHIELD_KNOWS_PATCH) + set @Q_SHIELD_status, @SHIELD_KNOWS_PATCH; + callsub L_Update_Var; + + next; + + menu "Here you are.", -, + "Where can I get a leather patch?", L_WhereLeather, + "No way.", L_Pass; + + if (zeny < 20000) goto L_ShieldNoZeny; + if (countitem(@INFANTRY) < 2) goto L_ShieldNoInfantry; + if (countitem(@IRON_ORE) < 10) goto L_ShieldNoOre; + if (countitem(@LEATHER_PATCH) < 1) goto L_ShieldNoLeatherPatch; + + mes "[Nicholas]"; + mes "\"Yes, it looks as if you have all that is needed!\""; + mes "You watch Nicholas melt the ore and helmets and form a shield out of the resulting iron. He then cuts your leather patch apart and adds it to the handles."; + mes "\"Here is your shield!\""; + + delitem @INFANTRY, 1; + delitem @INFANTRY, 1; + delitem @LEATHER_PATCH, 1; + delitem @IRON_ORE, 10; + set zeny, zeny - 20000; + + if (@Q_SHIELD_status < @SHIELD_COMPLETED) + getexp @SHIELD_XP, 0; + if (@Q_SHIELD_status < @SHIELD_COMPLETED) + mes "[" + @SHIELD_XP + " experience points]"; + + set @Q_SHIELD_status, @SHIELD_COMPLETED; // get XP only once + callsub L_Update_Var; + + getitem @STEEL_SHIELD, 1; + next; + close; + +L_ShieldNoZeny: + mes "[Nicholas]"; + mes "\"I am sorry, but I must ask that you pay 20,000 GP; this is qualty work.\""; + next; + close; + +L_ShieldNoInfantry: + mes "[Nicholas]"; + mes "\"Now this is strange... I could have sworn that you had two infantry helmets right here. Well, come back if you have some more!\""; + next; + close; + +L_ShieldNoOre: + mes "[Nicholas]"; + mes "\"How odd... didn't I put your iron ore on the table right here? Well, I will need it back to make the shield.\""; + next; + close; + +L_ShieldNoLeatherPatch: + mes "[Nicholas]"; + mes "\"You don't have a suitable leather patch. I'm sorry, but a shield without one would chafe terribly.\""; + next; + close; + +L_MoreInfantry: + mes "[Nicholas]"; + mes "Nicholas takes your infantry helmet and examines it."; + mes "\"Yes, this is perfect! If you can bring me another one of those, I can make your shield.\""; + next; + close; + +L_NoInfantry: + mes "[Nicholas]"; + mes "Nicholas shakes his head."; + mes "\"No, none of these items are suitable. Try looking for somewhat large metal things.\""; + next; + close; + +L_WhereLeather: + mes "[Nicholas]"; + mes "\"Hmm. You should look for someone who can work with some kind of leather. Rumor has it that there is someone in the eastern desert who can, but I haven't been there.\""; + next; + close; + + +L_SetzerQuest: + mes "[Nicholas]"; + if (@Q_SETZER_status & @SETZER_FLAG_MADE_SETZER) + mes "\"Another one? Sure, why not.\""; + mes "Nicholas examines your short sword, then nods."; + mes "\"This is good quality. I can make something special out of it, for five chunks of iron ore and 50,000 GP-- but I will also need a potion of monster oil.\""; + if (@Q_SETZER_status < @SETZER_KNOWS_OIL) + set @Q_SETZER_status, @SETZER_KNOWS_OIL; + callsub L_Update_Var; + next; + + menu "Here you are.", -, + "Monster oil? What's that?", L_ExplainMonsterOil, + "HOW much? Never mind.", L_Pass; + + if (zeny < 50000) goto L_SetzerNoZeny; + if (countitem(@IRON_ORE) < 5) goto L_SetzerNoOre; + if (countitem(@MONSTER_OIL) < 1) goto L_SetzerNoMonsterOil; + if (countitem(@SHORT_SWORD) < 1) goto L_SetzerNoSword; + + mes "[Nicholas]"; + mes "Nicholas takes the items, heats up your sword and pounds it with a heavy hammer. Before your eyes it turns thinner and flatter. Finally he pours the monster oil over it, heats it up again and douses it in water."; + + set zeny, zeny - 50000; + delitem @IRON_ORE, 5; + delitem @MONSTER_OIL, 1; + delitem @SHORT_SWORD, 1; + + getitem @SETZER, 1; + if (!(@Q_SETZER_status & @SETZER_FLAG_MADE_SETZER)) + mes "[" + @SETZER_XP + " experience points]"; + if (!(@Q_SETZER_status & @SETZER_FLAG_MADE_SETZER)) + getexp @SETZER_XP, 1; + set @Q_SETZER_status, @Q_SETZER_status | @SETZER_FLAG_MADE_SETZER; + callsub L_Update_Var; + next; + + mes "[Nicholas]"; + mes "Nicholas hands you the completed sword. It feels strangely light in your hands."; + mes "\"I made it lighter and faster, it should also cut a little better now. This kind of sword is called a Setzer, after a famous gambler who invented it as a weapon in between a knife and a sword.\""; + next; + + mes "[Nicholas]"; + mes "\"I'm quite happy with this one. Be careful around the edge, though, it is quite sharp.\""; + next; + + close; + +L_ExplainMonsterOil: + mes "[Nicholas]"; + mes "\"Monster oil is a special oil that can be used to harden thin sheets of metal, if used properly. Unfortunately it is very hard to get. Perhaps one of our local alchemists can help you with it?\""; + next; + close; + +L_SetzerNoZeny: + mes "[Nicholas]"; + mes "\"I am sorry, but I must ask that you pay 50,000 GP; the kind of weapon I am thinking of is not easy to make.\""; + next; + close; + +L_SetzerNoOre: + mes "[Nicholas]"; + mes "\"Without five chunks of iron ore I can't improve your sword.\""; + next; + close; + +L_SetzerNoMonsterOil: + mes "[Nicholas]"; + mes "\"I know that monster oil is hard to come by, but I can't do much without it. Ask an alchemist if you need help making it.\""; + next; + close; + +L_SetzerNoSword: + mes "[Nicholas]"; + mes "\"I will need your old short sword as a basis. Please bring it to me first.\""; + next; + close; + +L_end: + close; + +L_Done: + mes "[Nicholas]"; + mes "\"Here you go!\""; + mes ""; + mes "\"Come back any time.\""; + close; + +L_Update_Var: + set QUEST_Forestbow_state, + (QUEST_Forestbow_state & ~(@Q_SHIELD_MASK | Q_SETZER_MASK) + | (@Q_SHIELD_status << @Q_SHIELD_SHIFT) + | (@Q_SETZER_status << @Q_SETZER_SHIFT)); + return; +} diff --git a/npc/009-2_Hurnscald/nurse.txt b/npc/009-2_Hurnscald/nurse.txt new file mode 100644 index 00000000..2ea8acb1 --- /dev/null +++ b/npc/009-2_Hurnscald/nurse.txt @@ -0,0 +1,48 @@ +// Nurse + +// heals player below level 10 for free and tells players about the doctor on the 3rd floor. +new_20-1.gat,147,65,0 script Nurse 119,{ + mes "[Nurse]"; + mes "\"Can I help you?\""; + next; + + if (Inspector == 1) + menu + "Oooh, these wounds! They hurts so much!", L_Heal, + "I don't feel so well, I might be sick.", L_Doctor, + "Have you seen anything out of the ordinary?", L_NohMask, + "No, I'm fine.", -; + if (Inspector != 1) + menu + "Oooh, these wounds! They hurts so much!", L_Heal, + "I don't feel so well, I might be sick.", L_Doctor, + "No, I'm fine.", -; + mes "[Nurse]"; + mes "\"Then I would ask you to leave. There are people who really need our help.\""; + close; + +L_Doctor: + mes "[Nurse]"; + mes "\"Then you should better see the doctor. He is usually in his office on the 3rd floor.\""; + close; + +L_Heal: + if (baselevel > 10) goto L_NoHeal; + mes "[Nurse]"; + mes "\"Here, let me heal you.\""; + next; + heal 10000, 10000; + close; + +L_NoHeal: + mes "[Nurse]"; + mes "\"I'm sorry but I'm here only to help young people."; + mes "Your level is already higher than 10."; + mes "You can get some rest in the inn near here.\""; + close; + +L_NohMask: + mes "[Nurse]"; + mes "\"I'm to busy here to observe the town.\""; + close; +} diff --git a/npc/009-2_Hurnscald/richard.txt b/npc/009-2_Hurnscald/richard.txt new file mode 100644 index 00000000..17336ee7 --- /dev/null +++ b/npc/009-2_Hurnscald/richard.txt @@ -0,0 +1,6 @@ +// + +new_20-1.gat,20, 99,0 script Richard 161,{ + set @npcName$, "Richard"; + callfunc "Banker"; +} diff --git a/npc/009-2_Hurnscald/selim.txt b/npc/009-2_Hurnscald/selim.txt new file mode 100644 index 00000000..952bac9e --- /dev/null +++ b/npc/009-2_Hurnscald/selim.txt @@ -0,0 +1,139 @@ +//################################################################################# +//# # +//# This script file contains the script for the cloth dyer. It has been # +//# revised to require dye items; collaborating NPCs are Selim and Angus. # +//# # +//################################################################################# + +new_20-1.gat,32,104,0 script Selim 142,{ + setarray @all_colours$, "red", "green", "dark blue", "yellow", "light blue", "pink", "black", "orange", "purple", "dark green"; + setarray @all_colours_cap$, "Red", "Green", "Dark Blue", "Yellow", "Light Blue", "Pink", "Black", "Orange", "Purple", "Dark Green"; + + mes "[Selim]"; + mes "\"What can I dye for you today?\""; + set QUEST_clothdyer_state, 3; + next; + +L_clothes_choice: + set @pronoun$, "it"; + set @is_verb$, "is"; + menu + "Cotton shirt", L_cottonshirt, + "V-Neck sweater", L_vneck, + "Turtleneck sweater", L_tneck, + "Cotton shorts", L_shorts, + "Cotton skirt", L_skirt, + "Tank top ", L_tanktop, + "Short tank top", L_tanktop_short, + "Silk robe", L_robe, + "I'm fine for now, thanks.", -; + close; + +L_cottonshirt: + set @del, 1202; + set @new, 2050; + set @name$, "cotton shirt"; + goto L_picked_item; + +L_vneck: + set @del, 624; + set @new, 2060; + set @name$, "V-neck sweater"; + goto L_picked_item; + +L_tneck: + set @del, 564; + set @new, 2070; + set @name$, "turtleneck sweater"; + goto L_picked_item; + +L_shorts: + set @del, 586; + set @new, 2110; + set @name$, "cotton shorts"; + set @pronoun$, "them"; + set @is_verb$, "are"; + goto L_picked_item; + +L_skirt: + set @del, 632; + set @new, 2100; + set @name$, "cotton skirt"; + goto L_picked_item; + +L_tanktop: + set @del, 688; + set @new, 2090; + set @name$, "tanktop"; + goto L_picked_item; + +L_tanktop_short: + set @del, 689; + set @new, 2120; + set @name$, "short tanktop"; + goto L_picked_item; + +L_robe: + set @del, 720; + set @new, 2080; + set @name$, "silk robe"; + goto L_picked_item; + +L_picked_item: + if (countitem(@del) == 0) goto L_havenone; +L_colour: + mes "[Selim]"; + mes "\"Excellent. Now, what color do you want?\""; + next; + menu + @all_colours_cap$[0], -, + @all_colours_cap$[1], -, + @all_colours_cap$[2], -, + @all_colours_cap$[3], -, + @all_colours_cap$[4], -, + @all_colours_cap$[5], -, + @all_colours_cap$[6], -, + @all_colours_cap$[7], -, + @all_colours_cap$[8], -, + @all_colours_cap$[9], -; + set @colour, @menu - 1; + set @vial, 690 + @colour; + if (countitem(@vial) == 0) goto L_no_dye; + goto L_finish; + +L_no_dye: + mes "[Selim]"; + mes "\"I would love to dye your " + @name$ + " for you, but you will have to bring me some " + @all_colours$[@colour] + " dye first.\""; + next; + menu + "Sorry, I meant a different color.", L_colour, + "I wanted to dye a different item anyway.", L_clothes_choice, + "What do you mean, `bring you dye'?", L_explain_dye, + "Where would I get dye?", L_explain_dye, + "Never mind.", -; + close; + +L_explain_dye: + if (QUEST_clothdyer_knowsdye < 1) set QUEST_clothdyer_knowsdye, 1; + mes "[Selim]"; + mes "\"Well, dye is very expensive, and since I don't charge adventurers anything, I can't give you any for free."; + mes "But most alchemists can make dye; perhaps you can find one around here.\""; + next; + close; + +L_finish: + if (countitem(@del) == 0) goto L_havenone; + delitem @vial, 1; + delitem @del, 1; + getitem @new + @colour, 1; + mes "[Selim]"; + mes "\"Here " + @is_verb$ + " your " + @all_colours$[@colour] + " " + @name$ + "! Please let " + @pronoun$ + " dry for a minute before you put " + @pronoun$ + " on.\""; + close; + +L_havenone: + mes "[Selim]"; + mes "\"You don't have any uncolored " + @name$ + "? That's unfortunate."; + mes "Would you like to dye something else?\""; + next; + goto L_clothes_choice; +} diff --git a/npc/009-2_Hurnscald/shops.txt b/npc/009-2_Hurnscald/shops.txt new file mode 100644 index 00000000..d965cf68 --- /dev/null +++ b/npc/009-2_Hurnscald/shops.txt @@ -0,0 +1,34 @@ +//################################################################################# +//# # +//# This script file contains all shops and other NPCs with important functions. # +//# # +//################################################################################# + +// Bartender +// sells beer, cake and steak +new_20-1.gat,65,49,0 shop Barkeeper 112,539:-1,513:-1,676:-1 + +// Receptionist +// Offers the player to rest at the inn for 100gp +new_20-1.gat,50,48,0 script Receptionist 108,{ + set @npcName$, "Receptionist"; + set @cost, 100; + callfunc "Inn"; +} + +// Archer Shop +// sells bow, short bow, arrows and iron arrows +new_20-1.gat,97,24,0 shop Apprentice 120,1199:3,529:5,1200:1000,530:3000 + +// Potion Shop +// sells cactus drink, cactus potion, iron potion and concentration potion +new_20-1.gat,121,26,0 shop Witch 103,501:50,502:70,567:500,568:500 + +// Blacksmith +// Sells all knives, chainmail armor, light platemail +new_20-1.gat,183,57,0 shop Blacksmith 135,625:20000,626:50000,658:100000,1201:25,522:100,521:1000 + + +// General Store +// Sells various things, many not sold elsewhere +new_20-1.gat,32,99,0 shop General Store 112,527:-1,541:-1,1202:-1,586:-1,528:-1,656:-1 diff --git a/npc/009-2_Hurnscald/waitress.txt b/npc/009-2_Hurnscald/waitress.txt new file mode 100644 index 00000000..6cf9791b --- /dev/null +++ b/npc/009-2_Hurnscald/waitress.txt @@ -0,0 +1,51 @@ +// Waitress + +new_20-1.gat,60,52,0 script Melinda 140,{ + if (zeny < 180) goto L_NoMoney; + mes "[Melinda]"; + mes "\"Hi sweety! Want a fresh beer for 170gp?\""; + next; + + menu + "\"Sure! [don't tip]\"", -, + "Sure! [tip 5gp]", L_5Tip, + "Sure! [tip 10gp]", L_10Tip, + "Nah, maybe later.", L_No; + + mes "[Melinda]"; + mes "Pff... nickel nurser!"; + next; + set zeny,zeny-170; + getitem 539,1; + close; + +L_5Tip: + mes "[Melinda]"; + mes "\"Here you go, sweethearth!\""; + next; + set zeny,zeny-175; + getitem 539,1; + close; + +L_10Tip: + mes "[Melinda]"; + mes "\"Thank you, sweety! Want me to hear a secret?\""; + next; + set zeny,zeny-180; + getitem 539,1; + menu + "What's it, darling?", -, + "Nah, I don't feel like chatting.", L_No; + mes "[Melinda]"; + mes "\"The bowmaking master in this village used to construct exceptional bows. When you want one you should go and ask him.\""; + close; + +L_No: + mes "[Melinda]"; + mes "\"Just call me when you've changed your mind.\""; + close; + +L_NoMoney: + mes "\"You look broke. Don't think that you can dine and dash here!\""; + close; +} diff --git a/npc/009-3_Cave_beneath_Hurnscald/_import.txt b/npc/009-3_Cave_beneath_Hurnscald/_import.txt new file mode 100644 index 00000000..51acac0c --- /dev/null +++ b/npc/009-3_Cave_beneath_Hurnscald/_import.txt @@ -0,0 +1,4 @@ +map: 009-3.gat +npc: npc/009-3_Cave_beneath_Hurnscald/monsters.txt +npc: npc/009-3_Cave_beneath_Hurnscald/_warps.txt +npc: npc/009-3_Cave_beneath_Hurnscald/_mobs.txt diff --git a/npc/009-3_Cave_beneath_Hurnscald/_mobs.txt b/npc/009-3_Cave_beneath_Hurnscald/_mobs.txt new file mode 100644 index 00000000..45708c75 --- /dev/null +++ b/npc/009-3_Cave_beneath_Hurnscald/_mobs.txt @@ -0,0 +1,7 @@ +// 009-3 Cave beneath Hurnscald mobs + + + +009-3.gat,0,0,0 script Mob009-3 -1,{ + end; +} diff --git a/npc/009-3_Cave_beneath_Hurnscald/_warps.txt b/npc/009-3_Cave_beneath_Hurnscald/_warps.txt new file mode 100644 index 00000000..513872a0 --- /dev/null +++ b/npc/009-3_Cave_beneath_Hurnscald/_warps.txt @@ -0,0 +1,6 @@ +// 009-3 Cave beneath Hurnscald warps + +009-3.gat,173,20 warp CaveExitToInn -1,-1,009-2.gat,147,88 +009-3.gat,20,56 warp ToLakeCave -1,-1,011-4.gat,129,88 +009-3.gat,157,30 warp toCave -1,-1,018-3.gat,179,178 +009-3.gat,117,19 warp toCave -1,-1,013-3.gat,160,101 diff --git a/npc/009-3_Cave_beneath_Hurnscald/monsters.txt b/npc/009-3_Cave_beneath_Hurnscald/monsters.txt new file mode 100644 index 00000000..9b108f5f --- /dev/null +++ b/npc/009-3_Cave_beneath_Hurnscald/monsters.txt @@ -0,0 +1,26 @@ +// Map: new_35-1 +// This is the cave beneath Hurnscald. +// + +new_35-1.gat,0,0,0,0 monster YellowSlime 1007,20,0,0,Mob35::OnYellowSlime +new_35-1.gat,0,0,0,0 monster RedSlime 1008,35,0,0,Mob35::OnRedSlime +new_35-1.gat,0,0,0,0 monster BlackScorpion 1009,25,0,0,Mob35::OnBlackScorpion + +new_35-1.gat,0,0,0 script Mob35 -1,{ +OnYellowSlime: + set @mobID, 1007; + callfunc "MobPoints"; + break; + +OnRedSlime: + set @mobID, 1008; + callfunc "MobPoints"; + break; + +OnBlackScorpion: + set @mobID, 1009; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/010-1_Woodland/_import.txt b/npc/010-1_Woodland/_import.txt new file mode 100644 index 00000000..b57664d0 --- /dev/null +++ b/npc/010-1_Woodland/_import.txt @@ -0,0 +1,4 @@ +map: 010-1.gat +npc: npc/010-1_Woodland/monsters.txt +npc: npc/010-1_Woodland/_warps.txt +npc: npc/010-1_Woodland/_mobs.txt diff --git a/npc/010-1_Woodland/_mobs.txt b/npc/010-1_Woodland/_mobs.txt new file mode 100644 index 00000000..c4b359db --- /dev/null +++ b/npc/010-1_Woodland/_mobs.txt @@ -0,0 +1,19 @@ +// 010-1 Woodland mobs + +010-1.gat,82,63,19,19 monster Scorpion 1003,1,0,0,Mob010-1::On1003 +010-1.gat,49,71,31,19 monster Shroom 1019,1,0,0,Mob010-1::On1019 + + +010-1.gat,0,0,0 script Mob010-1 -1,{ +On1003: + set @mobID, 1003; + callfunc "MobPoints"; + break; + +On1019: + set @mobID, 1019; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/010-1_Woodland/_warps.txt b/npc/010-1_Woodland/_warps.txt new file mode 100644 index 00000000..b02dc45c --- /dev/null +++ b/npc/010-1_Woodland/_warps.txt @@ -0,0 +1,7 @@ +// 010-1 Woodland warps + +010-1.gat,49,23 warp ToWoodland 0,-1,011-1.gat,46,99 +010-1.gat,14,55 warp ToWoodland -1,0,015-1.gat,92,54 +010-1.gat,36,94 warp ToDimondsCove -1,-1,010-2.gat,32,44 +010-1.gat,56,104 warp ToWoodland 1,-1,015-1.gat,56,21 +010-1.gat,131,54 warp ToWoodland -1,0,007-1.gat,25,53 diff --git a/npc/010-1_Woodland/monsters.txt b/npc/010-1_Woodland/monsters.txt new file mode 100644 index 00000000..f371e497 --- /dev/null +++ b/npc/010-1_Woodland/monsters.txt @@ -0,0 +1,40 @@ +// Map: new_14-1 +// This is South Woodland. +// + +new_14-1.gat,0,0,0,0 monster Scorpion 1003,50,0,0,Mob14::OnScorpion +new_14-1.gat,0,0,0,0 monster SpikyMushroom 1019,50,0,0,Mob14::OnSpikyMushroom +new_14-1.gat,0,0,0,0 monster LogHead 1025,50,0,0,Mob14::OnLogHead + +new_14-1.gat,0,0,0,0 monster Cobalt 1030,1,2700000,1800000,Mob14::OnCobalt + +new_14-1.gat,0,0,0,0 monster SilkWorm 1035,2,60000,30000,Mob14::OnSilkWorm + +new_14-1.gat,0,0,0 script Mob14 -1,{ +OnScorpion: + set @mobID, 1003; + callfunc "MobPoints"; + break; + +OnSpikyMushroom: + set @mobID, 1019; + callfunc "MobPoints"; + break; + +OnLogHead: + set @mobID, 1025; + callfunc "MobPoints"; + break; + +OnCobalt: + set @mobID, 1030; + callfunc "MobPoints"; + break; + +OnSilkWorm: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/010-2_Dimond's_Cove/_import.txt b/npc/010-2_Dimond's_Cove/_import.txt new file mode 100644 index 00000000..0ffbdeed --- /dev/null +++ b/npc/010-2_Dimond's_Cove/_import.txt @@ -0,0 +1,7 @@ +map: 010-2.gat +npc: npc/010-2_Dimond's_Cove/workers.txt +npc: npc/010-2_Dimond's_Cove/loratay.txt +npc: npc/010-2_Dimond's_Cove/doug.txt +npc: npc/010-2_Dimond's_Cove/dimonds.txt +npc: npc/010-2_Dimond's_Cove/_warps.txt +npc: npc/010-2_Dimond's_Cove/_mobs.txt diff --git a/npc/010-2_Dimond's_Cove/_mobs.txt b/npc/010-2_Dimond's_Cove/_mobs.txt new file mode 100644 index 00000000..7ccbfc8c --- /dev/null +++ b/npc/010-2_Dimond's_Cove/_mobs.txt @@ -0,0 +1,7 @@ +// 010-2 Dimond's Cove mobs + + + +010-2.gat,0,0,0 script Mob010-2 -1,{ + end; +} diff --git a/npc/010-2_Dimond's_Cove/_warps.txt b/npc/010-2_Dimond's_Cove/_warps.txt new file mode 100644 index 00000000..8760c121 --- /dev/null +++ b/npc/010-2_Dimond's_Cove/_warps.txt @@ -0,0 +1,9 @@ +// 010-2 Dimond's Cove warps + +010-2.gat,27,24 warp ToCellar -1,-1,010-2.gat,35,68 +010-2.gat,32,45 warp ToOutdoor -1,-1,010-1.gat,36,95 +010-2.gat,40,27 warp To2ndFloor 1,-1,010-2.gat,82,26 +010-2.gat,36,68 warp To1stFloor -1,-1,010-2.gat,28,24 +010-2.gat,67,27 warp To3rdFloor 1,-1,010-2.gat,67,71 +010-2.gat,83,29 warp To1stFloor 1,-1,010-2.gat,40,27 +010-2.gat,67,73 warp To2ndFloor 1,-1,010-2.gat,67,28 diff --git a/npc/010-2_Dimond's_Cove/dimonds.txt b/npc/010-2_Dimond's_Cove/dimonds.txt new file mode 100644 index 00000000..05d83b5c --- /dev/null +++ b/npc/010-2_Dimond's_Cove/dimonds.txt @@ -0,0 +1,130 @@ +// + +new_23-1.gat,34,38,0 script Dimond 165,{ + mes "[Dimond]"; + mes "\"Welcome to Dimond's Cove!\""; + mes ""; + mes "\"Talk to the waitress to get some Food.\""; + mes ""; + mes "\"We also have shops on the 2nd Floor,"; + mes "and an inn on the 3rd Floor.\""; + close; +} + +new_23-1.gat,40,34,0 script Phill 157,{ + mes "[Phil]"; + mes "\"We're having problems with our equipment!\""; + next; + mes "[Phil]"; + mes "\"I don't know if we can play any songs!\""; + close; +} + +new_23-1.gat,40,37,0 script Jerry 160,{ + mes "[Jerry]"; + mes "\"I don't know what's wrong.\""; + next; + mes "[Jerry]"; + mes "\"We should be able to play you music in the future!\""; + close; +} + +new_23-1.gat,42,36,0 script Robert 162,{ + mes "[Robert]"; + mes "\"I hope we can figure something out!\""; + next; + mes "[Robert]"; + mes "\"We are kinda useless if we can't play music.\""; + close; +} + +new_23-1.gat,27,30,0 script Bar Rules 127,{ + mes "Dimonds Cove Bar Rules"; + next; + mes "No excessive drinking!"; + mes "If your sprite starts to stagger we will ask you to leave."; + next; + mes "No offensive chat."; + mes "This is a nice establishment."; + mes "Crude and offensive behavior will be reported to TMW GM's."; + next; + mes "Please be respectful of others."; + mes "Not everyone has the same experience and should all be treated"; + mes "with equal respect."; + next; + mes "Thank You,"; + mes "Dimonds Cove Management"; + close; +} + +new_23-1.gat,71,38,0 script Store Policy 127,{ + mes "All sales are final."; + mes "Returns are subject to a 50% re-stocking fee."; + close; +} + +new_23-1.gat,77,38,0 script Store Policy 127,{ + mes "All sales are final."; + mes "Returns are subject to a 50% re-stocking fee."; + close; +} + +new_23-1.gat,36,30,0 script Directions 127,{ + mes "This way to the Dimonds Cove Inn."; + mes "Five star accommodation for the weary traveler!"; + close; +} + +new_23-1.gat,80,32,0 script Dimonds Cove 1 127,{ + mes "The Story of Dimonds Cove"; + next; + mes "One day Dimond D. Stone dreamed of her own restaurant."; + mes "Dimond sold her food alone in this spot for some time,"; + mes "longing for the day she would have a building."; + mes "She met an adventurer named Merlin outside of the"; + mes "desert mines one day."; + next; + mes "They became friends and Dimond told Merlin about her idea."; + mes "Merlin was a accomplished carpenter and wanted to make a new"; + mes "place in the world. He told Dimond that he would make her"; + mes "restaurant for her. He gathered the tools and after much"; + mes "hard work, Dimonds Cove was built."; + next; + mes "(See Dimonds Cove 2)"; + close; +} + +new_23-1.gat,85,32,0 script Dimonds Cove 2 127,{ + mes "List of Events at Dimonds Cove"; + mes "January 2008 - Construction of Dimonds Cove."; + close; +} + + +new_23-1.gat,71,30,0 script Inn 127,{ + mes "Welcome to the Dimonds Cove Inn"; + mes "Rooms are 200 gp a night."; + mes "Plese check in with Basil."; + close; +} + + +new_23-1.gat,24,27,0 shop Bartender 112,539:175,567:500,568:500 + +new_23-1.gat,32,34,0 shop Waitress 139,519:100,533:150,534:90,562:500,676:200 + +new_23-1.gat,85,41,0 shop Blacksmith 146,545:20000,529:5,625:20000,626:50000,603:-1 + +new_23-1.gat,65,41,0 shop General Store 137,586:1000,524:1600,544:10000,632:10000,528:1000 + +new_23-1.gat,75,68,0 script Basil 107,{ + set @npcName$, "[Basil the Inn Keeper]"; + set @cost, 200; + callfunc "Inn"; +} + +new_23-1.gat,33,25,0 script Chef 148,{ + mes "[Chef]"; + mes "I'm too busy right now to talk."; + close; +} diff --git a/npc/010-2_Dimond's_Cove/doug.txt b/npc/010-2_Dimond's_Cove/doug.txt new file mode 100644 index 00000000..301ae9a7 --- /dev/null +++ b/npc/010-2_Dimond's_Cove/doug.txt @@ -0,0 +1,101 @@ +new_23-1.gat,68,87,0 script Doug 113,{ + if(CaveSnakeLamp == 1) goto L_State2; + if(CaveSnakeLamp == 2) goto L_Done; + set @TEMP,rand(4); + if(@TEMP == 0) goto L_0; + if(@TEMP == 1) goto L_1; + if(@TEMP == 2) goto L_2; + if(@TEMP == 3) goto L_3; + +L_0: + mes "[Doug]"; + mes "\"I need 40 more [Cave Snake Lamps] to make my light!\""; + next; + goto L_Question; +L_1: + mes "[Doug]"; + mes "\"This lamp should light up this whole place! I just need [40 Cave Snake Lamps]\""; + next; + goto L_Question; +L_2: + mes "[Doug]"; + mes "\"This is gonna be bright! A must have for anyone! All i need is a few parts...\""; + goto main1; + +L_3: + mes "[Doug]"; + mes "\"Can you get me 40 [Cave Snake Lamps]? I need them to get this light finished.\""; + next; + goto L_Question; + +L_Question: + mes "[Doug]"; + mes "\"Will you help me find 40 [Cave Snake Lamps]?\""; + next; + menu + "Yes", L_Sure, + "No", close; + +L_Sure: + set CaveSnakeLamp, 1; + set @TEMP,rand(4); + if(@TEMP == 0) goto J_0; + if(@TEMP == 1) goto J_1; + if(@TEMP == 2) goto J_2; + if(@TEMP == 3) goto J_3; + +J_0: + mes "[Doug]"; + mes "\"Thank you!\""; + next; + goto L_Go; + +J_1: + mes "[Doug]"; + mes "\"I don't know how to thank you enough!\""; + next; + goto L_Go; + +J_2: + mes "[Doug]"; + mes "\"I will pay you when you get them!\""; + next; + goto L_Go; + +J_3: + mes "[Doug]"; + mes "\"I'm sure I will give a small reward. :D\""; + next; + goto L_Go; + +L_Go: + mes "[Doug]"; + mes "\"Now please go get me 40 [Cave Snake Lamps]\""; + close; + +L_State2: + if(countitem(612) >= 40) goto L_Have; + mes "[Doug]"; + mes "\"Please help me collect 40 [Cave Snake Lamps]!\""; + close; + +L_Have: + delitem 612, 40; + mes "[Doug]"; + mes "\"Cool! Now I can make this light!\""; + next; + + mes "[Doug]"; + mes "\"Here's what I got to give you!\""; + next; + + set zeny, zeny + 2000; + set CaveSnakeLamp, 2; + close; + +L_Done: + mes "[Doug]"; + mes "\"Thanks for your help! Those snakes sure have bright lamps!\""; + close; +} + diff --git a/npc/010-2_Dimond's_Cove/loratay.txt b/npc/010-2_Dimond's_Cove/loratay.txt new file mode 100644 index 00000000..744557e7 --- /dev/null +++ b/npc/010-2_Dimond's_Cove/loratay.txt @@ -0,0 +1,632 @@ +new_23-1.gat,85,85,0 script Lora Tay 151,{ + + set @COTTON, 660; + set @SILK_COCOON, 718; + + set @SILK_ROBE, 720; + set @ROBE_COCOONS_NR, 150; // must be multiple of ten + set @ROBE_ZENY, 10000; + + if (QUEST_WG_state == 10) + goto L_agostine_menu; + if (QUEST_WG_state >= 11) + goto L_regular_intro; + + set @t, rand(3); + if (@t == 0) goto L_intro_0; + if (@t == 1) goto L_intro_1; + + mes "You see a middle-aged woman furiously sewing away at what appears to be a very expensive dress. Her fingers are moving so nimbly that you find it near-impossible to follow the needle."; + + goto L_intro_over; +L_intro_0: + mes "You notice a middle-aged woman carefully drawing lines on a large sheet of cotton."; + + goto L_intro_over; +L_intro_1: + mes "You see a middle-aged woman cautiously but surprisingly swiftly cutting out shapes from a huge cotton sheet. The scissors glide along the cloth as if it were butter, never leaving the premarked lines."; + +L_intro_over: + next; + + mes "She suddenly stops and looks up."; + next; + + mes "\"Now who are you, and what are you doing here?\""; + mes "She squints, pushes her thick spectacles up the bridge of her nose and eyes you suspiciously."; + next; + + set @agostine_msg0$, ""; + set @agostine_msg1$, ""; + + if (QUEST_WG_state >= 1) + set @agostine_msg0$, "Do you know Agostine?"; + if ((QUEST_WG_state >= 9) && (countitem(655))) + set @agostine_msg1$, "Can you make fur boots, like Agostine?"; + + menu "Hello! My name is " + strcharinfo(0) + ".", L_hello_0, + "Hello; are you a tailor?", L_hello_1, + "Can you make something for me?", L_hello_2, + @agostine_msg0$, L_agostine_0, + @agostine_msg1$, L_agostine_1; + +L_hello_0: + mes "She raises an eyebrow."; + mes "\"That,\", she notes dryly, \"is hardly my fault. And now I would greatly appreciate it if you were to get out of here and leave me to my work!\""; + next; + close; + +L_hello_1: + mes "She frowns."; + mes "\"No, I am an accupuncturist, I just happen to practice on cloth! Get out of here with your silly questions!\""; + next; + close; + +L_hello_2: + mes "She glares at you indignantly."; + mes "\"Do you even know whom you are talking to? I am Lora Tay, greatest of the seven seamstresses of the South!\""; + next; + mes "[Lora Tay the Seamstress]"; + mes "\"I do not work for petty peasants or arrogant adventurers. Get out of my sight!\""; + mes "She waves you away and returns to her work."; + next; + close; + + +L_agostine_0: + if (QUEST_WG_state < 1) close; + mes "She shoots an incensed glare at you."; + mes "\"Ah, Agostine! The 'legendary tailor'! Now who has not heard of him, been inspired by him! Such charisma! Such popularity! Such unprecedented lack of talent!\""; + mes "You notice that she prononuces the 't's as if she were trying to slap someone."; + next; + mes "\"Please spare me your tales of this fool. He couldn't mend a sock without getting himself trapped inside!\""; + mes "She frowns and turns back to her work, clearly not interested in discussing the matter further."; + close; + +L_agostine_1: + if ((QUEST_WG_state < 9) || (countitem (655) == 0)) close; + mes "[Lora Tay the Seamstress]"; + mes "She glares at your boots, her lips forming barely more than a thin line. Deep furrows form above her brows."; + mes "\"I can't believe it! He copied Illana's design but used fluffy fur in place of ice wolf fur-- Fluffy fur! Of all things! Who would wear such an atrocity of fashion! Everyone knows that you need ice-white, not pale-white, to go with such leather!\""; + next; + mes "[Lora Tay the Seamstress]"; + mes "She looks at them more closely."; + mes "\"This insolent upstart! Even worse, he copied my very own double-backward cross-stitch pattern... I can't believe it!\""; + next; + mes "[Lora Tay the Seamstress]"; + mes "Angry red spots begin to form on her cheeks."; + mes "\"Get those... things out of my sight before I forget myself!\""; + + if (QUEST_WG_state == 9) + set QUEST_WG_state, 10; + + next; + close; + +L_agostine_menu: + mes "[Lora Tay the Seamstress]"; + mes "The seamstress looks up at you from her work."; + mes "\"I do hope that you have not had any more dealings with this... this lumberjack of a tailor?\""; + next; + + if (countitem(563) > 0) + menu "You mean Agostine?", L_agostine_3, + "Actually, he also made me gloves...", L_agostine_2, + "Why don't you like him?", L_agostine_4, + "No, none, really.", L_agostine_5; + + menu "You mean Agostine?", L_agostine_3, + "Why don't you like him?", L_agostine_4, + "No, none, really.", L_agostine_5; + +L_agostine_2: + if ((QUEST_WG_state < 9) || (countitem(563) == 0)) close; + mes "[Lora Tay the Seamstress]"; + mes "Lora inspects your gloves, shock apparent on her face."; + mes "\"Winter gloves? And he managed the join stitches without adding a single crease... no, that can't be the Agostine we were talking about...\""; + mes "Without asking, she takes your gloves and inspects them further."; + next; + + mes "[Lora Tay the Seamstress]"; + mes "\"Triple inverted crossbar... he stole another of my stitching patterns! Except... no, that couldn't hold... what kind of yarn...\""; + mes "Torn between excitement, worry, and latent disgust, she frantically turns the gloves from side to side, looking for obvious flaws, her face reddening."; + next; + + mes "[Lora Tay the Seamstress]"; + mes "\"No, it's perfect... Inconceivable! How could that little upstart... I don't believe it!\""; + mes "Breathing heavily with something that might be anger or confusion, she turns them inside out."; + next; + + mes "[Lora Tay the Seamstress]"; + mes "She slides her fingers over the now-exposed inside whilst the color of her face approaches that of an over-ripe tomato."; + mes "\"Almost perfectly smooth...\", she whispers."; + next; + + mes "[Lora Tay the Seamstress]"; + mes "She jumps up in a fit of sudden rage."; + mes "\"That's impossible! Where did he learn to sew like that! How did he cut the shapes so perfectly! When did he..."; + mes "Suddenly, she breaks into a cough."; + next; + + mes "[Lora Tay the Seamstress]"; + mes "\"*cough* ... can't possibly... *cough*...\""; + mes "Lora sinks back on her chair, trying to control her cough."; + next; + + if (countitem(541)) + menu "(sneak out of the room)", L_end, + "Are you alright?", -, + "Here, have a bottle of water...", L_give_water, + "Can I help you?", -; + + if (countitem(541) == 0) + menu "(sneak out of the room)", L_end, + "Are you alright?", -, + "Can I help you?", -; + + mes "[Lora Tay the Seamstress]"; + mes "She holds out your gloves for you to pick up, then waves you out of the room. Fortunately, her cough seems to be slowly subsiding."; + next; + close; + +L_agostine_3: + mes "[Lora Tay the Seamstress]"; + mes "She frowns at you."; + mes "\"What other self-absorbed tailor-pretends with the sewing skill of a mouboo are there around? Stop wasting my time.\""; + next; + close; + +L_agostine_4: + mes "[Lora Tay the Seamstress]"; + mes "\"Is it not obvious? We are talking about someone so self-absorbed that he chose to ignore the advice of myself, greatest of the seven southern seamstresses! I cannot stand such arrogance.\""; + next; + close; + +L_agostine_5: + mes "[Lora Tay the Seamstress]"; + mes "\"Good for you. That arrogant good-for-nothing couldn't tell a piece of cotton from chain mail if wiped his nose with it!\""; + close; + +L_no_water: + mes "Checking more closely, you realize that you are out of water."; + mes "You apologise to Lora, though it fortunately seems that her cough is subsiding."; + mes "She waves you out of the room."; + next; + close; + +L_regular_intro: + mes "[Lora Tay the Seamstress]"; + mes "\"Ah, you again. Is there anything in particular you need?\""; + next; + goto L_main_menu; + +L_give_water: + if (countitem(541) == 0) goto L_no_water; + delitem 541, 1; + set QUEST_WG_state, 11; + + set @xpval, 50000; + + getexp @xpval, 0; + mes "[Lora Tay the Seamstress]"; + + mes "Lora grabs your water bottle and take a deep sip. Slowly, her head regains a more natural color. As she puts the bottle down, her cough seems to have subsided."; + mes "\"Thank you, dear; that was just the right thing at the right time.\""; + mes "[You gain " + @xpval + " experience points]"; + next; + + mes "[Lora Tay the Seamstress]"; + mes "She hands you the winter gloves again."; + mes "\"Now what happened I don't know, but this wasn't made by the Agostine I remember. But I shan't be made a fool out of by one such as him.\""; + next; + + mes "[Lora Tay the Seamstress]"; + mes "\"If HE can sew petty every-day items for ordinary peasants, then so can I. Very well, is there anything in particular that you need made? I shall show you how a proper seamstress operates!\""; + next; + +L_main_menu: + menu "Can you trim something for me?", L_trim, + "Can you lengthen something for me?", L_lengthen, + "Can you make me a shirt?", L_shirt, + "Can you make me a tank top?", L_tanktop, + "Can you make me a cape?", L_cape, + "Can you make fur boots for me?", -, + "Can you make winter gloves me?", -, + "Can you sew a robe for me?", L_robe, + "Goodbye for now!", L_end; + + mes "[Lora Tay the Seamstress]"; + mes "\"From what? Fluffy fur? I won't work with such lowly materials.\""; + next; + goto L_main_menu; + +L_trim: + mes "[Lora Tay the Seamstress]"; + mes "\"Trimming... you mean that you can't do that yourself? Well, alright... I suppose I should charge 100 GP and do it.\""; + mes "\"Alright. What is it that you want trimmed?\""; + next; + + set @default_choice$, "Never mind."; + setarray @items, 1202, 2050, 2051, 2052, 2053, 2054, 2055, 2056, 2057, 2058, 2059, + 688, 2090, 2091, 2092, 2093, 2094, 2095, 2096, 2097, 2098, 2099; + setarray @item_names$, "cotton shirt", "red cotton shirt", "green cotton shirt", "dark blue cotton shirt", "yellow cotton shirt", "light blue cotton shirt", "pink cotton shirt", "black cotton shirt", "orange cotton shirt", "puple cotton shirt", "cotton shirt 9", + "tank top", "red tank top", "green tank top", "dark blue tank top", "yellow tank top", "light blue tank top", "pink tank top", "black tank top", "orange tank top", "purple tank top", "tank top 9"; + set @items_nr, 22; + callsub SUB_pick_one_of_many_items; + if (@item == 0) goto L_main_menu; + + set @delitem, @item; + set @genitem, 0; + if (@item == 1202) set @genitem, 688; + if (@item == 688) set @genitem, 689; + if (@item >= 2090 && @item <= 2099) set @genitem, @item + 30; + if (@item >= 2050 && @item <= 2059) set @genitem, @item + 40; + + if (@genitem == 0) goto L_trim_impossible; + if (zeny < 100) goto L_trim_nozeny; + + delitem @delitem, 1; + getitem @genitem, 1; + set zeny, zeny - 100; + mes "[Lora Tay the Seamstress]"; + mes ""; + mes "\"There you are, dear.\""; + next; + goto L_main_menu; + +L_trim_impossible: + mes "[Lora Tay the Seamstress]"; // INTERNAL ERROR + mes "\"I don't really want to shorten this any more.\""; + next; + + goto L_main_menu; + +L_trim_nozeny: + mes "[Lora Tay the Seamstress]"; + mes "\"Not enough GP? Well, just do it yourself-- trimming really is trivial.\""; + next; + + goto L_main_menu; + +L_lengthen: + mes "[Lora Tay the Seamstress]"; + mes "\"Naturally, I will need a piece of cotton to sew onto it; I must also charge you some... hmm... does 500 GP sound reasonable? Yes, I think I shall charge that.\""; + mes "\"Now, let me see. What is it that you want lengthened?\""; + next; + + set @default_choice$, "Never mind."; + setarray @items, 688, 2090, 2091, 2092, 2093, 2094, 2095, 2096, 2097, 2098, 2099, + 689, 2120, 2121, 2122, 2123, 2124, 2125, 2126, 2127, 2128, 2129; + setarray @item_names$, "tank top", "red tank top", "green tank top", "dark blue tank top", "yellow tank top", "light blue tank top", "pink tank top", "black tank top", "orange tank top", "purple tank top", "tank top 9", + "short tank top", "red short tank top", "green short tank top", "dark blue short tank top", "yellow short tank top", "light blue short tank top", "pink short tank top", "black short tank top", "orange short tank top", "purple short tank top", "short tank top 9"; + set @items_nr, 22; + callsub SUB_pick_one_of_many_items; + if (@item == 0) goto L_main_menu; + + set @delitem, @item; + set @genitem, 0; + if (@item == 688) set @genitem, 1202; + if (@item == 689) set @genitem, 688; + if (@item >= 2120 && @item <= 2129) set @genitem, @item - 30; + if (@item >= 2090 && @item <= 2099) set @genitem, @item - 40; + + if (@genitem == 0) goto L_lengthen_impossible; + if (zeny < 500) goto L_lengthen_nozeny; + if (countitem (@COTTON) < 1) goto L_lengthen_nocotton; + + delitem @delitem, 1; + delitem @COTTON, 1; + getitem @genitem, 1; + set zeny, zeny - 500; + mes "[Lora Tay the Seamstress]"; + mes "The seamstress cuts your piece of cotton cloth into stripes and sews them on. Using some odd liquid, she flattens the seams and borders."; + if (@delitem > 2000) // dyed + mes "She then applies another liquid-- smelling strangely of fermented apples-- to the result, wraps it up, and wrings it tightly. As she unwraps it, you observe to your amazement that the dye has spread to the newly attached area."; + mes "\"There you are, dear.\""; + next; + goto L_main_menu; + +L_lengthen_nocotton: + mes "[Lora Tay the Seamstress]"; + mes "\"Who do you think I am? The cotton fairy? Get yourself some cloth before you ask me to sew it on.\""; + next; + + goto L_main_menu; + +L_lengthen_nozeny: + mes "[Lora Tay the Seamstress]"; + mes "\"No gold, no sewing.\""; + next; + + goto L_main_menu; + +L_lengthen_impossible: + mes "[Lora Tay the Seamstress]"; // INTERNAL ERROR + mes "\"I really can't lengthen that any more.\""; + next; + + goto L_main_menu; + +L_shirt: + mes "[Lora Tay the Seamstress]"; + mes "\"Oh, how silly. You can by those everywhere. Please don't bore me with such trifles, dear.\""; + next; + + goto L_main_menu; + +L_tanktop: + mes "[Lora Tay the Seamstress]"; + mes "\"A tank top? Well, hardly a challenge, but I suppose I could do that. Please get me some cloth-- plain cotton will do-- and, let's see, how does 100,000 GP for my efforts sound?\""; + mes "\"Wait, I keep forgetting, you are just an adventurer... let's make that 1000 GP, then.\""; + next; + +L_tanktop_menu: + menu "I think I would like something else.", L_main_menu, + "A tank top, please (6 cotton)", L_tanktop_long, + "A short tank top, please (5 cotton)", L_tanktop_short, + "Goodbye for now.", L_end; + +L_tanktop_short: + if (countitem (@COTTON) < 5) goto L_tanktop_insufficient_cloth; + if (zeny < 1000) goto L_tanktop_insufficient_zeny; + set zeny, zeny - 1000; + delitem @COTTON, 5; + getitem 689, 1; + mes "[Lora Tay the Seamstress]"; + mes "You watch as Lora sews the pieces of cloth together, then flattens the seams and ends with some odd liquid."; + mes "Amazingly, the result looks like a single piece of cloth."; + mes "After little more than a few elegant cuts and folds, your tank top is ready."; + mes "\"Oh dear, it seems that I am done already. Do you need anything else?\""; + next; + goto L_tanktop_menu; + +L_tanktop_long: + if (countitem (@COTTON) < 6) goto L_tanktop_insufficient_cloth; + if (zeny < 1000) goto L_tanktop_insufficient_zeny; + set zeny, zeny - 1000; + delitem @COTTON, 6; + getitem 688, 1; + mes "[Lora Tay the Seamstress]"; + mes "After combining your pieces of cloth into one-- miraculously making the seams and stitches vanish-- the seamstress cuts out all that doesn't belong into a tank top, then folds and stabilises the edges with additional seam lines."; + mes "\"There you are. Don't worry, I have trimmed it to match your size perfectly.\""; + next; + goto L_tanktop_menu; + +L_tanktop_insufficient_cloth: + mes "[Lora Tay the Seamstress]"; + mes "\"No, no, no, count again-- how much cloth did I say I needed? That's not enough.\""; + next; + goto L_tanktop_menu; + +L_tanktop_insufficient_zeny: + mes "[Lora Tay the Seamstress]"; + mes "As you note that you don't have enough GP on you, Lora rolls her eyes."; + mes "\"I don't work for free, you know. I already gave you a discounted peasant price.\""; + next; + goto L_main_menu; + +L_cape: + mes "[Lora Tay the Seamstress]"; + mes "She shakes her head."; + mes "\"No capes. You're an adventurer, right? Do you want to get caught by a closing portcullis? Or strangled when your cape gets tangled in a tree? Or brought down by a mushroom stomping on your cape while you're trying to run away? No capes.\""; + next; + + goto L_main_menu; + +L_robe: + mes "[Lora Tay the Seamstress]"; + mes "\"A robe? Well, as long as you're not asking me to make it out of cotton...\""; + next; + + if (countitem(@SILK_COCOON) == 0) + goto L_robe_nosilk; + +L_robe_menu: + menu "Here, I have some silk cocoons!", -, + "Here, I have some silk sheets!", L_robe_nosilk, + "Where can I find silk?", L_where_silk, + "How much silk do you need?", L_how_much_silk, + "Oh, never mind.", L_main_menu; + + mes "[Lora Tay the Seamstress]"; + mes "The seamstress stares at you as if you had gone out of your mind."; + mes "\"And what precisely do you expect me to do with silk cocoons? String them together in some baubly chain? Somehow remove the thread and spin and weave it so that some random person can have their robe?\""; + next; + + menu "Will you trade cocoons for sheets?", -, + "Never mind.", L_main_menu; + + mes "[Lora Tay the Seamstress]"; + mes "Lora frowns."; + mes "\"It's not all that easy to get properly processed silk around here. Easier for me than for you, I admit...\""; + next; + + mes "[Lora Tay the Seamstress]"; + mes "She sighs."; + mes "\"All right, very well then. I have enough spare silk sheets right now, but you pay the silk processing for your cocoons.\""; + next; + + mes "[Lora Tay the Seamstress]"; + mes "\"Let's see... " + @ROBE_COCOONS_NR + " silk cocoons and " + @ROBE_ZENY + " GP should just about cover that.\""; + next; + + menu "I'm not interested.", L_main_menu, + "Very well then, here you are.", -; + + if (countitem(@SILK_COCOON) < @ROBE_COCOONS_NR) + goto L_robe_missing_cocoons; + + if (zeny < @ROBE_ZENY) + goto L_robe_missing_zeny; + + set zeny, zeny - @ROBE_ZENY; + delitem @SILK_COCOON, @ROBE_COCOONS_NR; + getitem @SILK_ROBE, 1; + mes "[Lora Tay the Seamstress]"; + mes "The seamstress puts your cocoons and GP away, takes your measurements and pulls out several silk sheets. She asks you to stretch out your arms, then pins the silk sheets in place all over your body."; + next; + + mes "[Lora Tay the Seamstress]"; + mes "She proceeds to make a number of mysterious marks on the sheets with a charcoal pen. Meanwhile, your arms are getting tired, but you're afraid to lower them-- she used a lot of pins to put everything into place, and you lost track of where they went..."; + next; + + mes "[Lora Tay the Seamstress]"; + mes "\"Splendid.\""; + mes "After removing the sheets (and pins!), she picks up a pair of scissors and plows through the cloth at her usual amazing pace, only stopping briefly to sew together parts here and there."; + next; + + mes "[Lora Tay the Seamstress]"; + mes "She then treats the seams with some odorless liquid, making them vanish completely. Finally she hands you the finished robe."; + mes "\"Here you are now, this will fit. And don't you dare tell anyone that I did this! I'm not about to start a silk cocoon collection!\""; + next; + + goto L_main_menu; + +L_robe_missing_cocoons: + mes "[Lora Tay the Seamstress]"; + mes "\"" + @ROBE_COCOONS_NR + " cocoons is what I said, not " + countitem(@SILK_COCOON) + "."; + mes @ROBE_COCOONS_NR + " is " + (@ROBE_COCOONS_NR / 10) + " as many times as you have fingers, in case that helps.\""; + next; + goto L_main_menu; + +L_robe_missing_zeny: + mes "[Lora Tay the Seamstress]"; + mes "\"No, no no. The way this works is that you give me the GP first and I give you the robe afterwards. You're " + (@ROBE_ZENY - zeny) + " GP short, so come back when you can afford the robe!\""; + next; + goto L_main_menu; + +L_where_silk: + mes "[Lora Tay the Seamstress]"; + mes "\"Oh, Hetchel on the Tulimshar Marketplace can weave them for you.\""; + next; + mes "[Lora Tay the Seamstress]"; + mes "She hesitates."; + mes "\"I didn't see her there the last time I visited, though. She may be visiting family. Tough luck.\""; + next; + goto L_robe_menu; + +L_how_much_silk: + mes "[Lora Tay the Seamstress]"; + mes "\"Six sheets should do fine, if they're the usual double-elbow squares.\""; + next; + goto L_robe_menu; + +L_robe_nosilk: + mes "[Lora Tay the Seamstress]"; + mes "\"What is that? You don't have any silk? Well, you're out of luck, I would say. I shan't make one out of those cotton rags; you might as well be wearing an apple sack.\""; + next; + goto L_main_menu; + +L_end: + close; + + + +// Input: @items (array of items you want to choose from) +// @item_names (names of the items in @items) +// @items_nr (number of entries in @items) +// @default_choice$ (default option) +// Return: @item (The selected item, or 0 if the default/something invalid was chosen) +SUB_pick_one_of_many_items: + set @c, 0; + set @i, 0; + + setarray @choice_n$, "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", ""; + +L_SUB_pick_choice_loop: + if (@i >= @items_nr) goto L_SUB_choice_init_done; + set @current, @items[@i]; + set @current_name$, @item_names$[@i]; + set @i, @i + 1; + + if (countitem(@current) == 0) goto L_SUB_pick_choice_loop; + set @choice_v[@c], @current; + set @choice_n$[@c], @current_name$; + set @c, @c + 1; + goto L_SUB_pick_choice_loop; + +L_SUB_choice_init_done: + set @choice_v[@c], 0; + set @choice_n$[@c], @default_choice$; + set @c, @c + 1; + + if (@c < 10) + menu @choice_n$[0], -, + @choice_n$[1], -, + @choice_n$[2], -, + @choice_n$[3], -, + @choice_n$[4], -, + @choice_n$[5], -, + @choice_n$[6], -, + @choice_n$[7], -, + @choice_n$[8], -, + @choice_n$[9], -; + if (@c < 10) goto L_SUB_choice_join; + + if (@c < 20) + menu @choice_n$[0], -, + @choice_n$[1], -, + @choice_n$[2], -, + @choice_n$[3], -, + @choice_n$[4], -, + @choice_n$[5], -, + @choice_n$[6], -, + @choice_n$[7], -, + @choice_n$[8], -, + @choice_n$[9], -, + @choice_n$[10], -, + @choice_n$[11], -, + @choice_n$[12], -, + @choice_n$[13], -, + @choice_n$[14], -, + @choice_n$[15], -, + @choice_n$[16], -, + @choice_n$[17], -, + @choice_n$[18], -, + @choice_n$[19], -; + if (@c < 20) goto L_SUB_choice_join; + + menu @choice_n$[0], -, + @choice_n$[1], -, + @choice_n$[2], -, + @choice_n$[3], -, + @choice_n$[4], -, + @choice_n$[5], -, + @choice_n$[6], -, + @choice_n$[7], -, + @choice_n$[8], -, + @choice_n$[9], -, + @choice_n$[10], -, + @choice_n$[11], -, + @choice_n$[12], -, + @choice_n$[13], -, + @choice_n$[14], -, + @choice_n$[15], -, + @choice_n$[16], -, + @choice_n$[17], -, + @choice_n$[18], -, + @choice_n$[19], -, + @choice_n$[20], -, + @choice_n$[21], -, + @choice_n$[22], -, + @choice_n$[23], -, + @choice_n$[24], -, + @choice_n$[25], -, + @choice_n$[26], -, + @choice_n$[27], -, + @choice_n$[28], -, + @choice_n$[29], -, + @choice_n$[30], -, + @choice_n$[31], -; + +L_SUB_choice_join: + set @menu, @menu - 1; + set @item, @choice_v[@menu]; + if (@menu >= @c) set @item, 0; + + return; +} + diff --git a/npc/010-2_Dimond's_Cove/workers.txt b/npc/010-2_Dimond's_Cove/workers.txt new file mode 100644 index 00000000..5579dadd --- /dev/null +++ b/npc/010-2_Dimond's_Cove/workers.txt @@ -0,0 +1,11 @@ +new_23-1.gat,23,70,0 script Josh 155,{ + mes "[Josh]"; + mes "\"We're working on getting the cellar pass open.\""; + close; +} + +new_23-1.gat,39,75,0 script Zack 155,{ + mes "[Zack]"; + mes "\"My brother and I are fixing the cellar pass.\""; + close; +} diff --git a/npc/011-1_Woodland/_import.txt b/npc/011-1_Woodland/_import.txt new file mode 100644 index 00000000..2afbca54 --- /dev/null +++ b/npc/011-1_Woodland/_import.txt @@ -0,0 +1,6 @@ +map: 011-1.gat +npc: npc/011-1_Woodland/oscar.txt +npc: npc/011-1_Woodland/monsters.txt +npc: npc/011-1_Woodland/alchemist.txt +npc: npc/011-1_Woodland/_warps.txt +npc: npc/011-1_Woodland/_mobs.txt diff --git a/npc/011-1_Woodland/_mobs.txt b/npc/011-1_Woodland/_mobs.txt new file mode 100644 index 00000000..9d20aeaa --- /dev/null +++ b/npc/011-1_Woodland/_mobs.txt @@ -0,0 +1,7 @@ +// 011-1 Woodland mobs + + + +011-1.gat,0,0,0 script Mob011-1 -1,{ + end; +} diff --git a/npc/011-1_Woodland/_warps.txt b/npc/011-1_Woodland/_warps.txt new file mode 100644 index 00000000..345ffbe2 --- /dev/null +++ b/npc/011-1_Woodland/_warps.txt @@ -0,0 +1,7 @@ +// 011-1 Woodland warps + +011-1.gat,58,92 warp ToCave -1,-1,011-3.gat,15,15 +011-1.gat,30,61 warp ToWoodland -1,1,014-1.gat,180,90 +011-1.gat,49,104 warp ToWoodland 0,-1,010-1.gat,50,25 +011-1.gat,125,62 warp ToWoodland -1,2,008-1.gat,27,61 +011-1.gat,73,11 warp ToWoodlandHills 0,-1,012-1.gat,131,162 diff --git a/npc/011-1_Woodland/alchemist.txt b/npc/011-1_Woodland/alchemist.txt new file mode 100644 index 00000000..ed6582fa --- /dev/null +++ b/npc/011-1_Woodland/alchemist.txt @@ -0,0 +1,717 @@ +// This NPC makes potions and dyes +new_9-1.gat,117,77,0 script Rauk 103,{ + + // Setzer quest/monster oil quest participation + set @SETZER_INITIAL, 0; + set @SETZER_KNOWS_OIL, 1; + set @SETZER_KNOWS_STINGER, 2; + + set @Q_MASK, NIBBLE_3_MASK; + set @Q_SHIFT, NIBBLE_3_SHIFT; + + set @Q_status, (QUEST_Forestbow_state & @Q_MASK) >> @Q_SHIFT; + // End of Setzer quest/monster oil quest participation + + set @RED, 683; + set @YELLOW, 682; + set @BLUE, 681; + set @MAUVE, 680; + set @PETAL, 565; + set @PEARL, 700; + set @ORE, 640; + set @MAGGOTSLIME, 505; + + set @QUEST_CAN_GET_DYE_HERE, 2; + set @QUEST_HAS_SOLVED_DYE_PUZZLE, 3; + set @QUEST_GUESS_BASE, 4; + + set @CHOICE_IRON, 0; + set @CHOICE_CONCENTRATION, 1; + set @CHOICE_DYEING_INTRO, 2; + set @CHOICE_DYE, 3; + set @CHOICE_MONSTER_OIL, 4; + set @CHOICE_ABORT, 5; + + setarray @menuitems$, "", "", "", "", ""; + set @c, 0; + + set @menuitems$[@c], "Iron potion."; + set @menuID[@c], @CHOICE_IRON; + set @c, @c + 1; + + set @menuitems$[@c], "Concentration potion."; + set @menuID[@c], @CHOICE_CONCENTRATION; + set @c, @c + 1; + + if (QUEST_clothdyer_knowsdye >= @QUEST_CAN_GET_DYE_HERE) + goto L_skip_introducing; + + mes "[Rauk the Alchemist]"; + mes "\"I'm learning the ancient science of the alchemy."; + mes "I already know how to create a couple of potions!!\""; + next; + + mes "[Rauk the Alchemist]"; + mes "\"Do you want me to create one for you?\""; + next; + + if (QUEST_clothdyer_knowsdye == 1) + goto L_pre_dyeing; + + goto L_certain_condition; + +L_skip_introducing: + mes "[Rauk the Alchemist]"; + mes "\"Hello, welcome back! Are you interested in dyes again, or in one of my potions?\""; + next; + + set @menuitems$[@c], "Dye, please."; + set @menuID[@c], @CHOICE_DYE; + set @c, @c + 1; + + goto L_certain_condition; + +L_pre_dyeing: + set @menuitems$[@c], "Actually, can you make dye?"; + set @menuID[@c], @CHOICE_DYEING_INTRO; + set @c, @c + 1; + +L_certain_condition: + if (@Q_status == @SETZER_INITIAL) + goto L_main_menu; + set @menuitems$[@c], "Can you make monster oil?"; + set @menuID[@c], @CHOICE_MONSTER_OIL; + set @c, @c + 1; + +L_main_menu: + set @menuitems$[@c], "No thanks."; + set @menuID[@c], @CHOICE_ABORT; + set @c, @c + 1; + + menu + @menuitems$[0], -, + @menuitems$[1], -, + @menuitems$[2], -, + @menuitems$[3], -, + @menuitems$[4], -; + + set @menu, @menu - 1; + + if (@menu >= @c) goto L_abort; + if (@menuID[@menu] == @CHOICE_IRON) goto L_iron; + if (@menuID[@menu] == @CHOICE_CONCENTRATION) goto L_concentration; + if (@menuID[@menu] == @CHOICE_DYEING_INTRO) goto L_dyeing_intro; + if (@menuID[@menu] == @CHOICE_DYE) goto L_pick_colour; + if (@menuID[@menu] == @CHOICE_MONSTER_OIL) goto L_monster_oil; + if (@menuID[@menu] == @CHOICE_ABORT) goto L_abort; + +L_iron: + if(countitem(566) < 20) goto L_no_iron; + mes "[Rauk the Alchemist]"; + mes "\"Great! You brought me exactly what I need!"; + mes "Here is your Iron potion.\""; + delitem 566,20; + getitem 567,1; + close; + +L_concentration: + if(countitem(565) < 20) goto L_no_concentration; + mes "[Rauk the Alchemist]"; + mes "\"Great! You brought me exactly what I need!"; + mes "Here is your Concentration potion.\""; + delitem 565,20; + getitem 568,1; + close; + +L_no_iron: + mes "\"You have to bring me 20 small mushrooms.\""; + close; + +L_no_concentration: + mes "\"You have to bring me 20 petals.\""; + close; + +L_dyeing_intro: + mes "[Rauk the Alchemist]"; + mes "Rauk pauses for a moment."; + mes "\"Hmm, I'm not very good at that... I can only make simple dyes, the ones that you can use for cotton and wool.\""; + next; + mes "[Rauk the Alchemist]"; + mes "\"For the truly powerful ones that you can use to dye a person or an entire lake with, I would need a powerful catalyst, like an Obsidian Spork or a Wumpus Egg...\""; + mes "Rauk seems to be lost in his thoughts."; + next; + menu "I only want to dye clothes, though...", -, + "What's a 'Wumpus egg'?", L_wumpus_egg_intro, + "What's an 'Obsidian Spork'?", L_obsidian_spork_intro, + "Er, never mind...", L_abort; + mes "[Rauk the Alchemist]"; + mes "\"Oh, just for clothes? Well, that is easy. I can make red, yellow, light blue, orange, pink, green, dark blue, black and purple dye, if you can get me the ingredients for it.\""; + next; + set QUEST_clothdyer_knowsdye, 2; + goto L_pick_colour; + +L_wumpus_egg_intro: + mes "[Rauk the Alchemist]"; + mes "Rauk's eyes brighten up."; + mes "\"Ah, a wumpus egg is one of the most powerful catalysts out there, useful for transmutation and transchromation! Unfortunately the Common Wumpus is almost completely extinct these days, so they are hard to find."; + mes "Should you find one, please let me know-- I will pay well for one!\""; + next; + close; + +L_obsidian_spork_intro: + mes "[Rauk the Alchemist]"; + mes "Rauk scratches his head."; + mes "\"Hm, obsidian is a dark, glass-like material that you can normally find near volcanos. Shaping it isn't too hard, but shaping it without it losing its magical properties is almost impossible.\""; + next; + mes "[Rauk the Alchemist]"; + mes "\"Obsidian sporks are therefore hard to make, but they are said to be very useful in certain kinds of alchemy."; + mes "Should you find one, please let me know!\""; + next; + close; + +L_pick_colour: + menu "What are the ingredients you need?", L_description, + "Red", L_red, + "Yellow", L_yellow, + "Light blue", L_light_blue, + "Green", L_green, + "Orange", L_orange, + "Pink", L_pink, + "Dark blue", L_dark_blue, + "Black", L_black, + "Purple", L_purple, + "Dark Green", L_dark_green, + "Nothing, really.", L_abort; + close; + +L_description: + mes "[Rauk the Alchemist]"; + mes "\"The kinds of dyes I know are made from herbs-- alizarin for red, gamboge for yellow, cobalt for blue, and mauve as binding agent for dark colors.\""; + next; + mes "[Rauk the Alchemist]"; + mes "\"Some of the colors need more ingredients, including some that you can't find here, so I have to charge money for them."; + mes "Oh, and for a proper dark blue and purple I also need a pearl; without pearl dust they would not shimmer properly.\""; + next; + +L_description_quick: + menu "What do you need for red dye?", L_d_red, + "What do you need for yellow dye?", L_d_yellow, + "What do you need for light blue dye?", L_d_light_blue, + "What do you need for green dye?", L_d_green, + "What do you need for orange dye?", L_d_orange, + "What do you need for pink dye?", L_d_pink, + "What do you need for dark blue dye?", L_d_dark_blue, + "What do you need for black dye?", L_d_black, + "What do you need for purple dye?", L_d_purple, + "What do you need for dark green dye?", L_d_dark_green, + "Actually...", -; + + menu "Can you make some dye for me, please?", L_pick_colour, + "Where can I get the herbs?", L_d_herbs, + "Where can I find petals?", L_d_petals, + "Where can I find iron ore?", L_d_ore, + "Where can I find a pearl?", L_d_pearl, + "Where can I find maggot slime?", L_d_maggot_slime, + "I see. Thank you, and a good day to you!", L_abort; + close; + +L_d_herbs: + mes "[Rauk the Alchemist]"; + mes "\"Alizarin, mauve, cobalt and gamboge bushes grow in this general area. I haven't seen them nearby, but take a look around; I am sure you will find some.\""; + next; + goto L_description_quick; + +L_d_petals: + mes "[Rauk the Alchemist]"; + mes "\"Just take some from the flowers around here. But be careful, they seem to be a bit fond of them.\""; + next; + goto L_description_quick; + +L_d_ore: + mes "[Rauk the Alchemist]"; + mes "\"Iron ore you should be able to find in some mine, I think. That's where people usually get it from, I have been told.\""; + next; + goto L_description_quick; + +L_d_pearl: + mes "[Rauk the Alchemist]"; + mes "\"A pearl... hm, that might be tricky. You normally find them in clams, but I haven't seen many of those here in the woodlands.\""; + next; + goto L_description_quick; + +L_d_maggot_slime: + mes "[Rauk the Alchemist]"; + mes "\"As the name might have given away already, maggot slime is most easily obtained from maggots. Still, there are some other creatures-- such as bats-- that secrete a similar kind of slime that for alchemistic purposes is equivalent.\""; + next; + goto L_description_quick; + +L_intermediate: + menu "Can you make some dye for me?", L_pick_colour, + "Can you describe the ingredients?", L_description_quick, + "Never mind.", L_abort; + close; + +L_ok: + mes "[Rauk the Alchemist]"; + mes "\"Here is your dye. Remember to use all of it at once or the color may bleach out.\""; + next; + goto L_pick_colour; + +L_red: + if (countitem(@RED) < 10) goto L_red_fail; + delitem @RED, 10; + getitem 690, 1; + goto L_ok; + +L_red_fail: + mes "[Rauk the Alchemist]"; + mes "\"Hmm, sorry, but I do need ten alizarin leaves to make red dye.\""; + next; + goto L_intermediate; + +L_d_red: + mes "[Rauk the Alchemist]"; + mes "\"Red dye is fairly simple to make. Bring me ten leaves of alizarin, and I can brew it for you right away.\""; + next; + goto L_intermediate; + +L_yellow: + if (countitem(@YELLOW) < 10) goto L_yellow_fail; + delitem @YELLOW, 10; + getitem 693, 1; + goto L_ok; + +L_yellow_fail: + mes "[Rauk the Alchemist]"; + mes "\"Without enough gamboge leaves-- I would need at least ten--, I can't make yellow dye for you.\""; + next; + goto L_intermediate; + +L_d_yellow: + mes "[Rauk the Alchemist]"; + mes "\"Yellow dye is no more than gamboge extract. If you get me ten gamboge leaves, I can make it easily.\""; + next; + goto L_intermediate; + +L_light_blue: + if (countitem(@BLUE) < 10) goto L_light_blue_fail; + delitem @BLUE, 10; + getitem 694, 1; + goto L_ok; + +L_light_blue_fail: + mes "[Rauk the Alchemist]"; + mes "\"Sorry, but I won't give it to you for less than ten cobalt leaves.\""; + next; + goto L_intermediate; + +L_d_light_blue: + mes "[Rauk the Alchemist]"; + mes "\"Light blue dye is what you get if you let cobalt leaves sit in alcohol over night. I have some here and will trade it for ten fresh cobalt leaves.\""; + next; + goto L_intermediate; + +L_green: + if (countitem(@BLUE) < 20) goto L_green_fail; + if (countitem(@YELLOW) < 20) goto L_green_fail; + if (zeny < 1000) goto L_green_fail; + delitem @BLUE, 20; + delitem @YELLOW, 20; + set zeny, zeny - 1000; + getitem 691, 1; + goto L_ok; + +L_green_fail: + mes "[Rauk the Alchemist]"; + mes "\"No... I need enough gamboge and cobalt to make your dye.\""; + mes "\"Twenty gamboge leaves, twenty cobalt leaves, and 1000 GP should be sufficient.\""; + next; + goto L_intermediate; + +L_d_green: + mes "[Rauk the Alchemist]"; + mes "\"Green dye is a little tricky to make, since you have to boil gamboge leaves at just the right temperature while stirring in a cobalt ester."; + mes "Making the cobalt ester is not easy, and every time I try I end up melting a crystal flask beyond repair...\""; + next; + mes "[Rauk the Alchemist]"; + mes "\"Thus, I will need twenty gamboge leaves, twenty cobalt leaves, and 1000 GP for materials."; + next; + goto L_intermediate; + +L_orange: + if (countitem(@RED) < 10) goto L_orange_fail; + if (countitem(@YELLOW) < 10) goto L_orange_fail; + if (countitem(@ORE) < 2) goto L_orange_fail; + if (zeny < 1000) goto L_orange_fail; + delitem @RED, 10; + delitem @YELLOW, 10; + delitem @ORE, 2; + set zeny, zeny - 1000; + getitem 697, 1; + goto L_ok; + +L_orange_fail: + mes "[Rauk the Alchemist]"; + mes "\"I'm sorry, but I need 1000 GP, two chunks of iron ore, and twenty each of gamboge and alizarin leaves.\""; + next; + goto L_intermediate; + +L_d_orange: + mes "[Rauk the Alchemist]"; + mes "\"Orange dye is fun to make, but it requires some burnt iron, and also consummate sulphur powder, which you cannot get here easily."; + mes "\"Still, for 1000 GP, two pieces of iron ore, ten alizarin leaves and ten gamboge leaves, I can make you a vial of orange dye.\""; + next; + goto L_intermediate; + +L_pink: + if (countitem(@RED) < 10) goto L_pink_fail; + if (countitem(@PETAL) < 6) goto L_pink_fail; + if (zeny < 1000) goto L_pink_fail; + delitem @RED, 10; + delitem @PETAL, 6; + set zeny, zeny - 1000; + getitem 695, 1; + goto L_ok; + +L_pink_fail: + mes "[Rauk the Alchemist]"; + mes "\"No, you don't have all I need, and that would be ten alizarin leaves, six flower petals, and 1000 GP.\""; + next; + goto L_intermediate; + +L_d_pink: + mes "[Rauk the Alchemist]"; + mes "\"Pink dye... that's a funny one: you can't get proper pink out of the usual herbs. You do need ten leaves of alizarin, but you also need six pink flower petals."; + mes "To properly extract the pink from the petals, you have to boil it in concentrated utenum; I will have to charge 1000 GP for that.\""; + next; + goto L_intermediate; + +L_dark_blue: + if (countitem(@BLUE) < 100) goto L_dark_blue_fail; + if (countitem(@MAUVE) < 50) goto L_dark_blue_fail; + if (countitem(@PEARL) < 1) goto L_dark_blue_fail; + if (zeny < 10000) goto L_dark_blue_fail; + delitem @BLUE, 100; + delitem @MAUVE, 50; + delitem @PEARL, 1; + set zeny, zeny - 10000; + getitem 692, 1; + goto L_ok; + +L_dark_blue_fail: + mes "[Rauk the Alchemist]"; + mes "\"I will need all of the ingredients to make dark blue dye for you.\""; + mes "\"I need 100 cobalt leaves, 50 mauve leaves, one pearl, and 10,000 GP.\""; + next; + goto L_intermediate; + +L_d_dark_blue: + mes "[Rauk the Alchemist]"; + mes "\"Dark blue dye is one of the trickiest ones. You need concentrated extract from 100 leaves of cobalt and 50 mauve leaves for proper binding."; + mes "For the right shimmer, a pearl is indispensible, and the most expensive part is a rare kind of ayanamian sapphire dust that I have to charge 10,000 GP for.\""; + next; + goto L_intermediate; + +L_purple: + if (countitem(@BLUE) < 100) goto L_purple_fail; + if (countitem(@RED) < 100) goto L_purple_fail; + if (countitem(@MAUVE) < 20) goto L_purple_fail; + if (countitem(@PEARL) < 1) goto L_purple_fail; + if (zeny < 40000) goto L_purple_fail; + delitem @BLUE, 100; + delitem @RED, 100; + delitem @MAUVE, 20; + delitem @PEARL, 1; + set zeny, zeny - 40000; + getitem 698, 1; + goto L_ok; + +L_purple_fail: + mes "[Rauk the Alchemist]"; + mes "\"No... I don't think that you have enough ingredients for this. Let me check my notes.\""; + mes "\"What I need are 100 cobalt leaves, 100 alizarin leaves, 20 mauve leaves, one pearl, and 40,000 GP.\""; + next; + goto L_intermediate; + +L_d_purple: + mes "[Rauk the Alchemist]"; + mes "\"Hm, Purple dye... proper Tritan Purple is hard to make. Fortunately, the correct recipe has survived... but some ingredients are quite costly."; + mes "I can't even tell you why, unfortunately, since this is a bit of an alchemistic secret, and I really don't want to argue this out with people who can turn my nose into a rhubarb.\""; + next; + mes "[Rauk the Alchemist]"; + mes "\"Still, I can make it for you, out of 100 cobalt leaves, 100 alizarin leaves, 20 mauve leaves, one pearl, and 40,000 GP. Some other ingredients are covered by the GP.\""; + next; + goto L_intermediate; + +L_black: + if (countitem(@BLUE) < 40) goto L_black_fail; + if (countitem(@RED) < 40) goto L_black_fail; + if (countitem(@YELLOW) < 40) goto L_black_fail; + if (countitem(@MAUVE) < 40) goto L_black_fail; + if (zeny < 20000) goto L_black_fail; + delitem @BLUE, 40; + delitem @RED, 40; + delitem @YELLOW, 40; + delitem @MAUVE, 40; + set zeny, zeny - 20000; + getitem 696, 1; + goto L_ok; + +L_black_fail: + mes "[Rauk the Alchemist]"; + mes "\"I am sorry, but you don't have all the items I need to make black dye. I need fourty leaves of alizarin, cobalt, gamboge and mauve each, and 20,000 GP.\""; + next; + goto L_intermediate; + +L_d_black: + mes "[Rauk the Alchemist]"; + mes "\"Black? Ah! such a wonderful choice of color. It's my favorite! Well, if you too want something black, I would be delighted to make you some black dye."; + mes "Just bring me 40 leaves each of cobalt, alizarin, gamboge and mauve.\""; + next; + mes "[Rauk the Alchemist]"; + mes "\"Oh, and 20,000 GP for the charcoal and diamond dust mixture you need to keep the mauve smell out.\""; + next; + goto L_intermediate; + +L_dark_green: + if (QUEST_clothdyer_knowsdye != @QUEST_HAS_SOLVED_DYE_PUZZLE) + goto L_d_dark_green; + if (countitem(@BLUE) < 10) goto L_dark_green_fail; + if (countitem(@YELLOW) < 10) goto L_dark_green_fail; + if (countitem(@MAUVE) < 10) goto L_dark_green_fail; + if (countitem(@MAGGOTSLIME) < 1) goto L_dark_green_fail; + if (zeny < 1000) goto L_dark_green_fail; + delitem @BLUE, 10; + delitem @MAUVE, 10; + delitem @YELLOW, 10; + delitem @MAGGOTSLIME, 1; + set zeny, zeny - 1000; + getitem 699, 1; + goto L_ok; + +L_dark_green_fail: + mes "[Rauk the Alchemist]"; + mes "Rauk frowns as he examines the items you hand him."; + mes "\"No, this will not do. I need ten gamboge leaves, ten cobalt leaves, ten mauve leaves, slime from one maggot, and 1000 GP.\""; + next; + goto L_intermediate; + +L_d_dark_green: + mes "[Rauk the Alchemist]"; + if (QUEST_clothdyer_knowsdye != @QUEST_HAS_SOLVED_DYE_PUZZLE) + goto L_d_dark_green_quest; + mes "\"Since we have figured out how much maggot slime we need for you, all you have to bring me are 1000 GP, one maggot slime, and ten leaves each of mauve, cobalt, and gamboge.\""; + next; + goto L_intermediate; + +L_d_dark_green_quest: + mes "\"Ah, dark green... dark green dye is actually simple to make, except for one tiny little problem: dark green clothes fade very quickly when they touch human skin. By far the best way to fixate the color is argentum powder, mixed with dark green dye essence extracted from maggot slime.\""; + next; + mes "[Rauk the Alchemist]"; + mes "\"But just how much maggot slime goes into the fixative and how much into the rest of the mixture varies completely for every individual. We will have to figure out just how many thousandth ounces it is for you before I can make dark green dye for you.\""; + next; + if (QUEST_clothdyer_knowsdye == @QUEST_CAN_GET_DYE_HERE) + set QUEST_clothdyer_knowsdye, (rand(1000) + @QUEST_GUESS_BASE); + +L_d_dark_green_q_main: + menu "Uh... no thanks.", L_intermediate, + "So nobody else can wear clothes I dye?", L_dark_green_q_wear, + "OK, what should I do?", L_dark_green_q_explain, + "Let's figure it out!", L_dark_green_q_guess_0; + close; + +L_dark_green_q_wear: + mes "[Rauk the Alchemist]"; + mes "\"The color stabilises after a week or so."; + mes "Others can wear the clothes you have dyed-- just make sure that you wear those clothes for a week before passing them on.\""; + next; + goto L_d_dark_green_q_main; + +L_dark_green_q_explain2: + mes "[Rauk the Alchemist]"; + mes "Rauk blinks."; + mes "\"Very well. It works like this: you give me a maggot slime and tell me how many thousandth parts go into one part of the dye potion.\""; + next; + mes "[Rauk the Alchemist]"; + mes "\"Then we try whether that was the right ratio. I will tell you if you guessed right, but if you were wrong, I will tell you whether you guessed too high or too low.\""; + next; + mes "[Rauk the Alchemist]"; + mes "\"With enough slimes and enough tries we should be able to figure out just how much you need.\""; + next; + menu "Er... can you explain that again?", L_dark_green_q_explain2, + "Let's do it!", L_dark_green_q_guess_0, + "I don't have time for this.", L_intermediate; + close; + +L_dark_green_q_explain: + mes "[Rauk the Alchemist]"; + mes "\"We have to measure the balance between your light and your dark bile-- two of your humors-- and use that as the maggot slime concentration.\""; + mes "\"This will probably take several tries; for each try we need maggot slime from one maggot.\""; + next; + mes "[Rauk the Alchemist]"; + mes "\"Each time you tell me how many thousandth parts of one ounce of the concentrate you want to use in the fixative. I will stir the mixture appropriately and put the rest of the slime into the base mixture. We then put the two together, and you dip your finger in.\""; + next; + mes "[Rauk the Alchemist]"; + mes "\"If the mixture is too dark, then that means that we put too much maggot slime into the fixative. If it discolours, we put in too little. But if it retains its color, we are done.\""; + next; + mes "[Rauk the Alchemist]"; + mes "Rauk smiles."; + mes "\"But don't worry, I will happily do all this for free-- I rather enjoy these little games.\""; + next; + + menu "Er... can you explain that again?", L_dark_green_q_explain, + "Errr... what?", L_dark_green_q_explain2, + "Let's do it!", -, + "I don't have time for this.", L_intermediate; + +L_dark_green_q_guess_0: + if (countitem(@MAGGOTSLIME) < 1) + goto L_dark_green_q_noslime; + delitem @MAGGOTSLIME, 1; + + mes "[Rauk the Alchemist]"; + mes "Rauk fills your maggot slime into a small bottle and picks a glass bottle from within his robe."; + mes "\"Now we need to figure out just how many thousandths you need. First, tell me how many tenths of an ounce you want to put in.\""; + next; + + menu "none", -, + "1 tenth", -, + "2 tenths", -, + "3 tenths", -, + "4 tenths", -, + "5 tenths", -, + "6 tenths", -, + "7 tenths", -, + "8 tenths", -, + "9 tenths", -; + + set @menu, @menu - 1; + set @guess_accumulator, @menu * 100; + + mes "[Rauk the Alchemist]"; + if (@menu) + mes "Rauk pours a good-sized portion of maggot slime from the small bottle into the glass bottle."; + mes "\"We now have " + @guess_accumulator + " thousandths of an ounce. How many hundredths of an ounce should I add?\""; + next; + + menu "none", -, + "1 hundredth", -, + "2 hundredths", -, + "3 hundredths", -, + "4 hundredths", -, + "5 hundredths", -, + "6 hundredths", -, + "7 hundredths", -, + "8 hundredths", -, + "9 hundredths", -; + + set @menu, @menu - 1; + set @guess_accumulator, @guess_accumulator + (@menu * 10); + + mes "[Rauk the Alchemist]"; + if (@menu) + mes "Rauk pours a portion of maggot slime from the small bottle into the glass bottle."; + mes "\"These are now " + @guess_accumulator + " thousandths of an ounce. How many thousands more?\""; + next; + + menu "none", -, + "1 thousandth", -, + "2 thousandths", -, + "3 thousandths", -, + "4 thousandths", -, + "5 thousandths", -, + "6 thousandths", -, + "7 thousandths", -, + "8 thousandths", -, + "9 thousandths", -; + + set @menu, @menu - 1; + set @guess_accumulator, @guess_accumulator + @menu; + + mes "[Rauk the Alchemist]"; + if (@menu) + mes "Rauk pours a tiny amount of maggot slime from the small bottle into the glass bottle."; + mes "Rauk mixes some more ingredients into the bottles, stirs them, heats one of them and mixes the results together."; + next; + + mes "[Rauk the Alchemist]"; + mes "\"Please put your finger in.\""; + mes "Hesitantly. you stick your finger into the resulting brew. The mixture feels warm and smooth to the touch."; + next; + mes "[Rauk the Alchemist]"; + mes "You pull your finger out again."; + + if (@guess_accumulator + @QUEST_GUESS_BASE > QUEST_clothdyer_knowsdye) + goto L_dark_green_q_toomuch; + + if (@guess_accumulator + @QUEST_GUESS_BASE < QUEST_clothdyer_knowsdye) + goto L_dark_green_q_toolittle; + + // otherwise correct guess + + mes "Nothing seems to be happening with the mixture. Rauk's eyes lighten up."; + mes "\"This is it! You need precisely " + @guess_accumulator + " thousandts. Let me write this down...\""; + next; + mes "[Rauk the Alchemist]"; + mes "Rauk is beaming."; + mes "\"I can now make dark green dye for you. All I need will be slime from one maggot, ten gamboge leaves, ten cobalt leaves, ten mauve leaves, and 1000 GP for other ingredients.\""; + mes "[You gain 20,000 experience points]"; + getexp 20000, 0; + set QUEST_clothdyer_knowsdye, @QUEST_HAS_SOLVED_DYE_PUZZLE; + next; + goto L_intermediate; + +L_dark_green_q_toomuch: + mes "After only a second, the mixture begins to blacken. Rauk frowns."; + mes "\"That was too much... you need fewer than " + @guess_accumulator + " thousandths, I think."; + goto L_dark_green_q_again; + +L_dark_green_q_toolittle: + mes "Almost instantaneously, the mixture loses its colour and turns transparent. Rauk sighs."; + mes "\"That was too little. Next time, try more than " + @guess_accumulator + " thousandths."; + goto L_dark_green_q_again; + +L_dark_green_q_again: + mes "\"Should we try again?\""; + next; + menu "Yes!", L_dark_green_q_guess_0, + "No, I've had enough.", -; + close; + +L_dark_green_q_noslime: + mes "[Rauk the Alchemist]"; + mes "\"Oh, you don't have any maggot slime? That's unfortunate; I am out of it myself. Still it should be easy enough to find, just bring me one and we can continue testing.\""; + next; + goto L_intermediate; + +L_monster_oil: + mes "[Rauk the Alchemist]"; + mes "Rauk locks his eyes with you and continues in more serious tone."; + mes "\"I know how to create it, but you won't get it from me. It's far too dangerous; even the best alchemist may need multiple attempts and will risk blowing up! I can give you a recipe though, if you still are wanton.\""; + next; + menu + "Yes, tell me!", -, + "No, that sounds too dangerous.", L_abort; + mes "[Rauk the Alchemist]"; + mes "You will need a pearl, a pair of snake skins, two piles of volcanic ash, three black scorpion stingers-- and a golden scorpion stinger. In addition you must have plenty of herbs to stabilise the concoction; mauve, alizarin, cobalt and gamboge will do just fine."; + next; + mes "[Rauk the Alchemist]"; + mes "\"Take the pearl, skins, black stingers, ash, and cook briefly in a cauldron. Next add the mauve/alizarin/cobalt/gamboge as needed to stabilise into a black brew. Lastly, add the golden scorpion stinger and let boil briefly. And it's done.\""; + next; + mes "[Rauk the Alchemist]"; + mes "\"Good luck not blowing up!\""; + + set @Q_status, @Q_status | @SETZER_KNOWS_STINGER; + callsub L_Update_Var; + close; + +L_abort: + close; + + +L_Update_Var: + set QUEST_Forestbow_state, + (QUEST_Forestbow_state & ~(@Q_MASK) + | (@Q_status << @Q_SHIFT)); + return; +} diff --git a/npc/011-1_Woodland/monsters.txt b/npc/011-1_Woodland/monsters.txt new file mode 100644 index 00000000..52f1bc74 --- /dev/null +++ b/npc/011-1_Woodland/monsters.txt @@ -0,0 +1,34 @@ +// Map: new_9-1 +// This is Central Woodland. +// + +new_9-1.gat,0,0,0,0 monster EvilMushroom 1013,25,0,0,Mob9::OnEvilMushroom +new_9-1.gat,0,0,0,0 monster Flower 1014,40,0,0,Mob9::OnFlower + +new_9-1.gat,0,0,0,0 monster Alizarin 1032,1,2700000,1800000,Mob9::OnAlizarin + +new_9-1.gat,0,0,0,0 monster SilkWorm 1035,2,60000,30000,Mob9::OnSilkWorm + +new_9-1.gat,0,0,0 script Mob9 -1,{ +OnEvilMushroom: + set @mobID, 1013; + callfunc "MobPoints"; + break; + +OnFlower: + set @mobID, 1014; + callfunc "MobPoints"; + break; + +OnAlizarin: + set @mobID, 1032; + callfunc "MobPoints"; + break; + +OnSilkWorm: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/011-1_Woodland/oscar.txt b/npc/011-1_Woodland/oscar.txt new file mode 100644 index 00000000..f33e0e47 --- /dev/null +++ b/npc/011-1_Woodland/oscar.txt @@ -0,0 +1 @@ +new_9-1.gat,87,34,0 shop Oscar 142,535:25,657:40 \ No newline at end of file diff --git a/npc/011-3_Hermit's_cave/_import.txt b/npc/011-3_Hermit's_cave/_import.txt new file mode 100644 index 00000000..08b2f921 --- /dev/null +++ b/npc/011-3_Hermit's_cave/_import.txt @@ -0,0 +1,5 @@ +map: 011-3.gat +npc: npc/011-3_Hermit's_cave/monsters.txt +npc: npc/011-3_Hermit's_cave/hermit.txt +npc: npc/011-3_Hermit's_cave/_warps.txt +npc: npc/011-3_Hermit's_cave/_mobs.txt diff --git a/npc/011-3_Hermit's_cave/_mobs.txt b/npc/011-3_Hermit's_cave/_mobs.txt new file mode 100644 index 00000000..39ac018b --- /dev/null +++ b/npc/011-3_Hermit's_cave/_mobs.txt @@ -0,0 +1,7 @@ +// 011-3 Hermit's cave mobs + + + +011-3.gat,0,0,0 script Mob011-3 -1,{ + end; +} diff --git a/npc/011-3_Hermit's_cave/_warps.txt b/npc/011-3_Hermit's_cave/_warps.txt new file mode 100644 index 00000000..be9b6a83 --- /dev/null +++ b/npc/011-3_Hermit's_cave/_warps.txt @@ -0,0 +1,3 @@ +// 011-3 Hermit's cave warps + +011-3.gat,31,21 warp ToLakeCave -1,-1,011-4.gat,72,11 diff --git a/npc/011-3_Hermit's_cave/hermit.txt b/npc/011-3_Hermit's_cave/hermit.txt new file mode 100644 index 00000000..2ef32941 --- /dev/null +++ b/npc/011-3_Hermit's_cave/hermit.txt @@ -0,0 +1,16 @@ +// + +new_4-1.gat,30,30,0 script Arkim 116,{ + mes "[Arkim the Hermit]"; + mes "\"Do you want to go back outside?\""; + next; + menu + "Yes please", L_Sure, + "Not yet", -; + close; + +L_Sure: + warp "new_9-1.gat", 60, 95; + close; + +} diff --git a/npc/011-3_Hermit's_cave/monsters.txt b/npc/011-3_Hermit's_cave/monsters.txt new file mode 100644 index 00000000..f51d010d --- /dev/null +++ b/npc/011-3_Hermit's_cave/monsters.txt @@ -0,0 +1,21 @@ +// Map: new_4-1 +// This is the Hermit's Cave -- level 1. +// + +new_4-1.gat,0,0,0,0 monster Bat 1017,10,0,0,Mob4::OnBat + +new_4-1.gat,0,0,0,0 monster SilkWorm 1035,3,60000,30000,Mob4::OnSilkWorm + +new_4-1.gat,0,0,0 script Mob4 -1,{ +OnBat: + set @mobID, 1017; + callfunc "MobPoints"; + break; + +OnSilkWorm: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/011-4_Lake_cave/_import.txt b/npc/011-4_Lake_cave/_import.txt new file mode 100644 index 00000000..37f9085e --- /dev/null +++ b/npc/011-4_Lake_cave/_import.txt @@ -0,0 +1,4 @@ +map: 011-4.gat +npc: npc/011-4_Lake_cave/monsters.txt +npc: npc/011-4_Lake_cave/_warps.txt +npc: npc/011-4_Lake_cave/_mobs.txt diff --git a/npc/011-4_Lake_cave/_mobs.txt b/npc/011-4_Lake_cave/_mobs.txt new file mode 100644 index 00000000..62bb6fb4 --- /dev/null +++ b/npc/011-4_Lake_cave/_mobs.txt @@ -0,0 +1,19 @@ +// 011-4 Lake cave mobs + +011-4.gat,51,29,39,39 monster Shroom 1019,1,0,0,Mob011-4::On1019 +011-4.gat,93,114,39,39 monster Lamp Snake 1021,1,0,0,Mob011-4::On1021 + + +011-4.gat,0,0,0 script Mob011-4 -1,{ +On1019: + set @mobID, 1019; + callfunc "MobPoints"; + break; + +On1021: + set @mobID, 1021; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/011-4_Lake_cave/_warps.txt b/npc/011-4_Lake_cave/_warps.txt new file mode 100644 index 00000000..e0fe5a00 --- /dev/null +++ b/npc/011-4_Lake_cave/_warps.txt @@ -0,0 +1,4 @@ +// 011-4 Lake cave warps + +011-4.gat,73,8 warp ToHermitsCave 0,-1,011-3.gat,31,24 +011-4.gat,129,86 warp ToCaveBeneathHurnscald -1,-1,009-3.gat,21,55 diff --git a/npc/011-4_Lake_cave/monsters.txt b/npc/011-4_Lake_cave/monsters.txt new file mode 100644 index 00000000..95d09026 --- /dev/null +++ b/npc/011-4_Lake_cave/monsters.txt @@ -0,0 +1,20 @@ +// Map: new_17-1 +// This is the Lake Cave, second level of the Hermit's Cave. +// + +new_17-1.gat,0,0,0,0 monster CaveSnake 1021,40,0,0,Mob17::OnCaveSnake +new_17-1.gat,0,0,0,0 monster SpikyMushroom 1019,15,0,0,Mob17::OnSpikyMushroom + +new_17-1.gat,0,0,0 script Mob17 -1,{ +OnCaveSnake: + set @mobID, 1021; + callfunc "MobPoints"; + break; + +OnSpikyMushroom: + set @mobID, 1019; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/012-1_Woodland_Hills/_import.txt b/npc/012-1_Woodland_Hills/_import.txt new file mode 100644 index 00000000..178bca3f --- /dev/null +++ b/npc/012-1_Woodland_Hills/_import.txt @@ -0,0 +1,5 @@ +map: 012-1.gat +npc: npc/012-1_Woodland_Hills/shops.txt +npc: npc/012-1_Woodland_Hills/monsters.txt +npc: npc/012-1_Woodland_Hills/_warps.txt +npc: npc/012-1_Woodland_Hills/_mobs.txt diff --git a/npc/012-1_Woodland_Hills/_mobs.txt b/npc/012-1_Woodland_Hills/_mobs.txt new file mode 100644 index 00000000..8bb05fe9 --- /dev/null +++ b/npc/012-1_Woodland_Hills/_mobs.txt @@ -0,0 +1,7 @@ +// 012-1 Woodland Hills mobs + + + +012-1.gat,0,0,0 script Mob012-1 -1,{ + end; +} diff --git a/npc/012-1_Woodland_Hills/_warps.txt b/npc/012-1_Woodland_Hills/_warps.txt new file mode 100644 index 00000000..f8c58466 --- /dev/null +++ b/npc/012-1_Woodland_Hills/_warps.txt @@ -0,0 +1,12 @@ +// 012-1 Woodland Hills warps + +012-1.gat,51,39 warp ToCaves -1,-1,012-3.gat,370,45 +012-1.gat,41,48 warp ToCaves -1,-1,012-3.gat,353,78 +012-1.gat,44,88 warp ToCaves -1,-1,012-3.gat,354,187 +012-1.gat,92,104 warp ToCaves -1,-1,012-3.gat,270,111 +012-1.gat,98,99 warp ToCaves -1,-1,012-3.gat,36,81 +012-1.gat,109,92 warp ToCaves -1,-1,012-3.gat,79,73 +012-1.gat,123,90 warp ToCaves -1,-1,012-3.gat,38,156 +012-1.gat,150,61 warp ToWoodlandHills -1,2,013-1.gat,21,75 +012-1.gat,132,163 warp ToWoodland 0,-1,011-1.gat,72,16 +012-1.gat,65,126 warp ToCaves -1,-1,012-3.gat,176,139 diff --git a/npc/012-1_Woodland_Hills/monsters.txt b/npc/012-1_Woodland_Hills/monsters.txt new file mode 100644 index 00000000..cc95281f --- /dev/null +++ b/npc/012-1_Woodland_Hills/monsters.txt @@ -0,0 +1,52 @@ +// Map: new_26-1 +// This is North Woodland. +// + +new_26-1.gat,0,0,0,0 monster Mouboo 1028,25,0,0,Mob26::OnMouboo +new_26-1.gat,0,0,0,0 monster SpikyMushroom 1019,30,0,0,Mob26::OnSpikyMushroom + +new_26-1.gat,0,0,0,0 monster Alizarin 1032,1,2700000,1800000,Mob26::OnAlizarin +new_26-1.gat,0,0,0,0 monster Gamboge 1031,1,2700000,1800000,Mob26::OnGamboge +new_26-1.gat,0,0,0,0 monster Cobalt 1030,1,2700000,1800000,Mob26::OnCobalt +new_26-1.gat,0,0,0,0 monster Mauve 1029,1,2700000,1800000,Mob26::OnMauve + +new_26-1.gat,0,0,0,0 monster SilkWorm 1035,5,6000,3000,Mob26::OnSilkWorm + +new_26-1.gat,0,0,0 script Mob26 -1,{ +OnMouboo: + set @mobID, 1028; + callfunc "MobPoints"; + break; + +OnSpikyMushroom: + set @mobID, 1019; + callfunc "MobPoints"; + break; + +OnAlizarin: + set @mobID, 1032; + callfunc "MobPoints"; + break; + +OnGamboge: + set @mobID, 1031; + callfunc "MobPoints"; + break; + +OnCobalt: + set @mobID, 1030; + callfunc "MobPoints"; + break; + +OnMauve: + set @mobID, 1029; + callfunc "MobPoints"; + break; + +OnSilkWorm: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/012-1_Woodland_Hills/shops.txt b/npc/012-1_Woodland_Hills/shops.txt new file mode 100644 index 00000000..4e2ce96e --- /dev/null +++ b/npc/012-1_Woodland_Hills/shops.txt @@ -0,0 +1,3 @@ +// + +new_26-1.gat,36,99,0 shop Blossom 163,661:100,664:100,665:50,662:100,667:50,663:100,671:75,673:25,669:75,672:25,674:25 diff --git a/npc/012-3_Cave/_import.txt b/npc/012-3_Cave/_import.txt new file mode 100644 index 00000000..270632e0 --- /dev/null +++ b/npc/012-3_Cave/_import.txt @@ -0,0 +1,4 @@ +map: 012-3.gat +npc: npc/012-3_Cave/monsters.txt +npc: npc/012-3_Cave/_warps.txt +npc: npc/012-3_Cave/_mobs.txt diff --git a/npc/012-3_Cave/_mobs.txt b/npc/012-3_Cave/_mobs.txt new file mode 100644 index 00000000..70c39e3d --- /dev/null +++ b/npc/012-3_Cave/_mobs.txt @@ -0,0 +1,7 @@ +// 012-3 Cave mobs + + + +012-3.gat,0,0,0 script Mob012-3 -1,{ + end; +} diff --git a/npc/012-3_Cave/_warps.txt b/npc/012-3_Cave/_warps.txt new file mode 100644 index 00000000..58e842ba --- /dev/null +++ b/npc/012-3_Cave/_warps.txt @@ -0,0 +1,11 @@ +// 012-3 Cave warps + +012-3.gat,37,82 warp CaveExit 0,-1,012-1.gat,98,100 +012-3.gat,80,74 warp CaveExit 0,-1,012-1.gat,109,93 +012-3.gat,39,157 warp CaveExit 0,-1,012-1.gat,123,91 +012-3.gat,270,112 warp CaveExit -1,-1,012-1.gat,92,105 +012-3.gat,176,138 warp CaveExit -1,-1,012-1.gat,65,127 +012-3.gat,355,188 warp CaveExit 0,-1,012-1.gat,44,89 +012-3.gat,371,46 warp CaveExit 0,-1,012-1.gat,51,40 +012-3.gat,354,79 warp CaveExit 0,-1,012-1.gat,41,48 +012-3.gat,473,104 warp CaveExit -1,1,012-1.gat,146,67 diff --git a/npc/012-3_Cave/monsters.txt b/npc/012-3_Cave/monsters.txt new file mode 100644 index 00000000..bb0799bb --- /dev/null +++ b/npc/012-3_Cave/monsters.txt @@ -0,0 +1,20 @@ +// Map: new_27-1 +// This is the Caves beneath the North Woodland. +// + +new_27-1.gat,0,0,0,0 monster Bat 1017,100,0,0,Mob27::OnBat +new_27-1.gat,0,0,0,0 monster CaveSnake 1021,75,0,0,Mob27::OnCaveSnake + +new_27-1.gat,0,0,0 script Mob27 -1,{ +OnBat: + set @mobID, 1017; + callfunc "MobPoints"; + break; + +OnCaveSnake: + set @mobID, 1021; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/013-1_Woodland_hills/_import.txt b/npc/013-1_Woodland_hills/_import.txt new file mode 100644 index 00000000..8ee0c0be --- /dev/null +++ b/npc/013-1_Woodland_hills/_import.txt @@ -0,0 +1,4 @@ +map: 013-1.gat +npc: npc/013-1_Woodland_hills/monsters.txt +npc: npc/013-1_Woodland_hills/_warps.txt +npc: npc/013-1_Woodland_hills/_mobs.txt diff --git a/npc/013-1_Woodland_hills/_mobs.txt b/npc/013-1_Woodland_hills/_mobs.txt new file mode 100644 index 00000000..159476a8 --- /dev/null +++ b/npc/013-1_Woodland_hills/_mobs.txt @@ -0,0 +1,7 @@ +// 013-1 Woodland hills mobs + + + +013-1.gat,0,0,0 script Mob013-1 -1,{ + end; +} diff --git a/npc/013-1_Woodland_hills/_warps.txt b/npc/013-1_Woodland_hills/_warps.txt new file mode 100644 index 00000000..6daa4447 --- /dev/null +++ b/npc/013-1_Woodland_hills/_warps.txt @@ -0,0 +1,6 @@ +// 013-1 Woodland hills warps + +013-1.gat,125,103 warp toCave -1,-1,013-3.gat,34,64 +013-1.gat,20,76 warp ToWoodlandHills -1,2,012-1.gat,149,78 +013-1.gat,45,21 warp ToWoodland 1,-1,017-1.gat,46,104 +013-1.gat,42,90 warp toHouse -1,-1,013-2.gat,63,41 diff --git a/npc/013-1_Woodland_hills/monsters.txt b/npc/013-1_Woodland_hills/monsters.txt new file mode 100644 index 00000000..fe216eae --- /dev/null +++ b/npc/013-1_Woodland_hills/monsters.txt @@ -0,0 +1,63 @@ +// Map: new_28-1 +// This is North-East Woodland. +// + +new_28-1.gat,0,0,0,0 monster Mouboo 1028,5,0,0,Mob28::OnMouboo +new_28-1.gat,0,0,0,0 monster SpikyMushroom 1019,15,0,0,Mob28::OnSpikyMushroom +new_28-1.gat,0,0,0,0 monster Flower 1014,15,0,0,Mob28::OnFlower + +new_28-1.gat,0,0,0,0 monster Alizarin 1032,1,0,0,Mob28::OnAlizarin +new_28-1.gat,0,0,0,0 monster Gamboge 1031,1,0,0,Mob28::OnGamboge +new_28-1.gat,0,0,0,0 monster Cobalt 1030,1,0,0,Mob28::OnCobalt +new_28-1.gat,0,0,0,0 monster Mauve 1029,1,0,0,Mob28::OnMauve + +new_28-1.gat,0,0,0,0 monster Alizarin 1032,2,2700000,1800000,Mob28::OnAlizarin +new_28-1.gat,0,0,0,0 monster Gamboge 1031,2,2700000,1800000,Mob28::OnGamboge +new_28-1.gat,0,0,0,0 monster Cobalt 1030,2,2700000,1800000,Mob28::OnCobalt +new_28-1.gat,0,0,0,0 monster Mauve 1029,2,2700000,1800000,Mob28::OnMauve + +new_28-1.gat,0,0,0,0 monster SilkWorm 1035,4,6000,3000,Mob28::OnSilkWorm + +new_28-1.gat,0,0,0 script Mob28 -1,{ +OnMouboo: + set @mobID, 1028; + callfunc "MobPoints"; + break; + +OnSpikyMushroom: + set @mobID, 1019; + callfunc "MobPoints"; + break; + +OnFlower: + set @mobID, 1014; + callfunc "MobPoints"; + break; + +OnAlizarin: + set @mobID, 1032; + callfunc "MobPoints"; + break; + +OnGamboge: + set @mobID, 1031; + callfunc "MobPoints"; + break; + +OnCobalt: + set @mobID, 1030; + callfunc "MobPoints"; + break; + +OnMauve: + set @mobID, 1029; + callfunc "MobPoints"; + break; + +OnSilkWorm: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/013-2_Magic_house/_import.txt b/npc/013-2_Magic_house/_import.txt new file mode 100644 index 00000000..a1303967 --- /dev/null +++ b/npc/013-2_Magic_house/_import.txt @@ -0,0 +1,6 @@ +map: 013-2.gat +npc: npc/013-2_Magic_house/wizard.txt +npc: npc/013-2_Magic_house/notes.txt +npc: npc/013-2_Magic_house/apprentice.txt +npc: npc/013-2_Magic_house/_warps.txt +npc: npc/013-2_Magic_house/_mobs.txt diff --git a/npc/013-2_Magic_house/_mobs.txt b/npc/013-2_Magic_house/_mobs.txt new file mode 100644 index 00000000..4215f188 --- /dev/null +++ b/npc/013-2_Magic_house/_mobs.txt @@ -0,0 +1,7 @@ +// 013-2 Magic house mobs + + + +013-2.gat,0,0,0 script Mob013-2 -1,{ + end; +} diff --git a/npc/013-2_Magic_house/_warps.txt b/npc/013-2_Magic_house/_warps.txt new file mode 100644 index 00000000..56df14d3 --- /dev/null +++ b/npc/013-2_Magic_house/_warps.txt @@ -0,0 +1,5 @@ +// 013-2 Magic house warps + +013-2.gat,63,43 warp toOutside -1,-1,013-1.gat,42,91 +013-2.gat,67,36 warp toRoom -1,-1,013-2.gat,21,41 +013-2.gat,21,42 warp toRoom -1,-1,013-2.gat,67,37 diff --git a/npc/013-2_Magic_house/apprentice.txt b/npc/013-2_Magic_house/apprentice.txt new file mode 100644 index 00000000..b27d271d --- /dev/null +++ b/npc/013-2_Magic_house/apprentice.txt @@ -0,0 +1,58 @@ +new_36-1.gat,25,37,0 script Fabius 115,{ + mes "\"Hey! Wanna have a drink or something? High quality, low cost. A poor fella like me needs a bit of extra cash, ye know.\""; + next; + menu + "Yes please!",yes, + "No thanks.",no, + "No way, I thought it was for free!",not_free; +yes: + mes "\"So what would ya like, then?\""; + next; + menu + "A beer",beer, + "A milk",milk; +no: + mes "\"Suit yourself.\""; + next; + goto at_end; +not_free: + mes "\"Oh, you stupid git! ... But hey, let me tell ya something...\""; + next; + mes "\"There's notes flying around in the room up there. Did ya try reading some?\""; + close; +beer: + mes "\"That'll be 175 GP.\""; + next; + menu "Here you are",beer_yes, + "No thanks",beer_no; +milk: + mes "\"That'll be 300 GP.\""; + next; + menu "Here you are",milk_yes, + "No thanks",milk_no; +beer_yes: + if (zeny < 175) goto low_money; + getitem 539, 1; + set zeny, zeny - 175; + goto at_end; +beer_no: + mes "\"No beer, no civilization!\""; + next; + goto at_end; +milk_yes: + if (zeny < 300) goto low_money; + getitem 527, 1; + set zeny, zeny - 300; + goto at_end; +milk_no: + mes "\"Oh alright. Milk is a deadly poison anyway...\""; + next; + goto at_end; +low_money: + mes "\"Aw, you don't have enough gold on you!\""; + next; +at_end: + mes "\"By the way, have you seen those flying notes and the mirror in the room next door? They're WAY COOL! Try reading some of the notes!\""; + close; +} + diff --git a/npc/013-2_Magic_house/notes.txt b/npc/013-2_Magic_house/notes.txt new file mode 100644 index 00000000..dbcb1209 --- /dev/null +++ b/npc/013-2_Magic_house/notes.txt @@ -0,0 +1,102 @@ +new_36-1.gat,23,32,0 script Motto 127,{ + mes "Mid pleasures and palaces though we may roam,"; + mes "Be it ever so humble, there's no place like home."; + close; +} + +new_36-1.gat,30,32,0 script Note 127,{ + mes "Please do not open."; + close; +} + +new_36-1.gat,38,20,0 script Saying 127,{ + mes "The early bird catcheth the worm."; + close; +} + +new_36-1.gat,27,21,0 script Mirror 127,{ + mes "You say: \"Mirror mirror on the wall, who has the nicest haircut of them all?\""; + next; + mes "\"Oh fair adventurer, your hair indeed looks nice. But wouldn't it look much better, after I have rolled my dice?\""; + next; + mes "Your looks suddenly change..."; + next; + set @style,rand(6); + set @color,rand(9); + setlook 1,@style+1; + setlook 6,@color; + close; +} + +// Warp to north-eastern woods +new_36-1.gat,25,23,0 script Spell 127,{ + mes "You read: \"I see trees of green, red roses too. I see them bloom for me and you. And I think to myself: \'What a wonderful world\'\""; + next; + mes "You think: \"Huh?\""; + next; + mes "The spell fulfills its inevitable purpose..."; + next; + warp "new_28-1.gat",128,28; + close; +} + +// Warp to Indian in south-eastern desert +new_36-1.gat,27,24,0 script Spell 127,{ + mes "You read: \"A red-coloured fellow smoking his pipe - down in the desert - that's what I like!\""; + next; + mes "You feel the floor disappear below your feet..."; + next; + warp "new_24-1.gat",33,93; + close; +} + +// Warp to snow land +new_36-1.gat,25,27,0 script Spell 127,{ + mes "You read: \"Snow-white flakes and eminent frost - I'll go there, whatever the cost!\""; + next; + mes "You feel yourself getting lighter..."; + next; + warp "new_11-1.gat",84,68; + close; +} + +// Warp to Dimond +new_36-1.gat,27,27,0 script Spell 127,{ + mes "You read: \"People and cosiness, lively and fun - that's where I've gone!\""; + next; + mes "The world around you slowly dissolves..."; + next; + warp "new_23-1.gat",34,42; + close; +} + +// Warp to mines level 2 +new_36-1.gat,26,28,0 script Spell 127,{ + mes "You read: \"Darkness and legs, eight of them each - I'd rather not go there, but now it's too late...\""; + next; + mes "For a moment everything turns black..."; + next; + warp "new_5-1.gat",91,41; + close; +} + +// Death +new_36-1.gat,21,29,0 script Spell 127,{ + mes "You read: \"Heart stops pumping, breath begone - life is stopping, death has come!\""; + next; + mes "You're losing control of your body... everything turns black... while slipping to the floor, you hear a faraway scream... suddenly, you see THE LIGHT!"; + next; + gmcommand strcharinfo(0)+":@die "; + close; +} + +// Naked +new_36-1.gat,28,29,0 script Spell 127,{ + mes "You read: \"Cotton, steel, leather and wool - have I ever seen a greater fool?\""; + next; + mes "You suddenly feel naked; you ARE naked!"; + next; + nude; + close; +} + diff --git a/npc/013-2_Magic_house/wizard.txt b/npc/013-2_Magic_house/wizard.txt new file mode 100644 index 00000000..ec7deb36 --- /dev/null +++ b/npc/013-2_Magic_house/wizard.txt @@ -0,0 +1,25 @@ +new_36-1.gat,66,39,0 script Old Wizard 116,{ + mes "\"Welcome, dear wanderer! Come into my humble home. Take a rest, eat and drink.\""; + next; + menu + "Thanks, that's very kind of you!",thanks, + "Oh, shut up!",shutup; +shutup: + mes "\"That attitude isn't going to get you very far, my dear.\""; + close; +thanks: + mes "\"Behind this door, my apprentice will serve you.\""; + next; + menu + "Alright.",ok, + "Your apprentice? ... No thanks.",nothx; +nothx: + mes "\"Goodbye, then!\""; + close; +ok: + mes "\"Beware the flying notes though, some of them are really dangerous. I haven't been able to persuade them to get back into their book. And avoid the mirror, it's been acting strange lately.\""; + next; + mes "\"Oh, and please don't take my apprentice too seriously. He still has a lot to learn.\""; + close; +} + diff --git a/npc/013-3_Cave/_import.txt b/npc/013-3_Cave/_import.txt new file mode 100644 index 00000000..83f4256e --- /dev/null +++ b/npc/013-3_Cave/_import.txt @@ -0,0 +1,3 @@ +map: 013-3.gat +npc: npc/013-3_Cave/_warps.txt +npc: npc/013-3_Cave/_mobs.txt diff --git a/npc/013-3_Cave/_mobs.txt b/npc/013-3_Cave/_mobs.txt new file mode 100644 index 00000000..4c3e8330 --- /dev/null +++ b/npc/013-3_Cave/_mobs.txt @@ -0,0 +1,7 @@ +// 013-3 Cave mobs + + + +013-3.gat,0,0,0 script Mob013-3 -1,{ + end; +} diff --git a/npc/013-3_Cave/_warps.txt b/npc/013-3_Cave/_warps.txt new file mode 100644 index 00000000..404ada8c --- /dev/null +++ b/npc/013-3_Cave/_warps.txt @@ -0,0 +1,29 @@ +// 013-3 Cave warps + +013-3.gat,28,20 warp hiddenExit -1,-1,013-1.gat,126,102 +013-3.gat,34,63 warp toOutside -1,-1,013-1.gat,125,104 +013-3.gat,36,96 warp toCave -1,-1,013-3.gat,79,126 +013-3.gat,79,125 warp toCave -1,-1,013-3.gat,35,96 +013-3.gat,22,115 warp toOutside -1,-1,018-1.gat,115,41 +013-3.gat,139,45 warp toOutside -1,-1,018-1.gat,127,37 +013-3.gat,61,179 warp toOutside -1,-1,018-1.gat,134,46 +013-3.gat,69,143 warp toCave -1,-1,018-3.gat,50,89 +013-3.gat,81,103 warp toOutside -1,-1,018-1.gat,147,41 +013-3.gat,177,91 warp toOutside -1,-1,018-1.gat,177,21 +013-3.gat,178,44 warp toCave -1,-1,018-3.gat,97,70 +013-3.gat,169,45 warp toCave -1,-1,018-3.gat,27,55 +013-3.gat,152,28 warp toCave -1,-1,018-3.gat,134,62 +013-3.gat,123,104 warp toCave -1,-1,018-3.gat,172,22 +013-3.gat,147,104 warp toCave -1,-1,018-3.gat,177,22 +013-3.gat,158,66 warp toCave -1,-1,018-3.gat,27,90 +013-3.gat,75,51 warp toCave -1,-1,013-3.gat,75,52 +013-3.gat,109,64 warp toCave -1,-1,013-3.gat,75,50 +013-3.gat,67,51 warp toCave -1,-1,018-3.gat,90,51 +013-3.gat,71,20 warp toCave -1,-1,013-3.gat,28,40 +013-3.gat,28,41 warp toCave -1,-1,013-3.gat,71,21 +013-3.gat,71,42 warp toCave -1,-1,013-3.gat,198,21 +013-3.gat,109,20 warp toCave -1,-1,013-3.gat,71,41 +013-3.gat,111,42 warp toCave -1,-1,018-3.gat,71,123 +013-3.gat,62,100 warp toCave -1,-1,018-1.gat,174,86 +013-3.gat,68,97 warp toCave -1,-1,018-3.gat,102,70 +013-3.gat,160,102 warp toCave -1,-1,009-3.gat,117,20 diff --git a/npc/014-1_Woodland/_import.txt b/npc/014-1_Woodland/_import.txt new file mode 100644 index 00000000..9828f4d8 --- /dev/null +++ b/npc/014-1_Woodland/_import.txt @@ -0,0 +1,6 @@ +map: 014-1.gat +npc: npc/014-1_Woodland/wedding-officiator.txt +npc: npc/014-1_Woodland/taro.txt +npc: npc/014-1_Woodland/monsters.txt +npc: npc/014-1_Woodland/_warps.txt +npc: npc/014-1_Woodland/_mobs.txt diff --git a/npc/014-1_Woodland/_mobs.txt b/npc/014-1_Woodland/_mobs.txt new file mode 100644 index 00000000..3fd75a93 --- /dev/null +++ b/npc/014-1_Woodland/_mobs.txt @@ -0,0 +1,7 @@ +// 014-1 Woodland mobs + + + +014-1.gat,0,0,0 script Mob014-1 -1,{ + end; +} diff --git a/npc/014-1_Woodland/_warps.txt b/npc/014-1_Woodland/_warps.txt new file mode 100644 index 00000000..5922f1f1 --- /dev/null +++ b/npc/014-1_Woodland/_warps.txt @@ -0,0 +1,5 @@ +// 014-1 Woodland warps + +014-1.gat,109,91 warp ToWoodland -1,1,011-1.gat,31,62 +014-1.gat,93,58 warp ToCave -1,-1,014-3.gat,56,172 +014-1.gat,76,38 warp ToCave -1,-1,014-3.gat,35,33 diff --git a/npc/014-1_Woodland/monsters.txt b/npc/014-1_Woodland/monsters.txt new file mode 100644 index 00000000..cbb9e182 --- /dev/null +++ b/npc/014-1_Woodland/monsters.txt @@ -0,0 +1,69 @@ +// Map: new_29-1 +// This is West Woodland. +// + +new_29-1.gat,0,0,0,0 monster Mouboo 1028,5,0,0,Mob29::OnMouboo +new_29-1.gat,0,0,0,0 monster EvilMushroom 1013,15,0,0,Mob29::OnEvilMushroom +new_29-1.gat,0,0,0,0 monster Flower 1014,25,0,0,Mob29::OnFlower +new_29-1.gat,0,0,0,0 monster FireGoblin 1011,20,0,0,Mob29::OnFireGoblin + +new_29-1.gat,0,0,0,0 monster Alizarin 1032,1,0,0,Mob29::OnAlizarin +new_29-1.gat,0,0,0,0 monster Gamboge 1031,1,0,0,Mob29::OnGamboge +new_29-1.gat,0,0,0,0 monster Cobalt 1030,1,0,0,Mob29::OnCobalt +new_29-1.gat,0,0,0,0 monster Mauve 1029,1,0,0,Mob29::OnMauve + +new_29-1.gat,0,0,0,0 monster Alizarin 1032,1,2700000,1800000,Mob29::OnAlizarin +new_29-1.gat,0,0,0,0 monster Gamboge 1031,1,2700000,1800000,Mob29::OnGamboge +new_29-1.gat,0,0,0,0 monster Cobalt 1030,1,2700000,1800000,Mob29::OnCobalt +new_29-1.gat,0,0,0,0 monster Mauve 1029,1,2700000,1800000,Mob29::OnMauve + +new_29-1.gat,0,0,0,0 monster SilkWorm 1035,4,6000,3000,Mob29::OnSilkWorm + +new_29-1.gat,0,0,0 script Mob29 -1,{ +OnMouboo: + set @mobID, 1028; + callfunc "MobPoints"; + break; + +OnEvilMushroom: + set @mobID, 1013; + callfunc "MobPoints"; + break; + +OnFlower: + set @mobID, 1014; + callfunc "MobPoints"; + break; + +OnFireGoblin: + set @mobID, 1011; + callfunc "MobPoints"; + break; + +OnAlizarin: + set @mobID, 1032; + callfunc "MobPoints"; + break; + +OnGamboge: + set @mobID, 1031; + callfunc "MobPoints"; + break; + +OnCobalt: + set @mobID, 1030; + callfunc "MobPoints"; + break; + +OnMauve: + set @mobID, 1029; + callfunc "MobPoints"; + break; + +OnSilkWorm: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/014-1_Woodland/taro.txt b/npc/014-1_Woodland/taro.txt new file mode 100644 index 00000000..db6b4551 --- /dev/null +++ b/npc/014-1_Woodland/taro.txt @@ -0,0 +1,74 @@ + +// Woodland Taro + +new_29-1.gat,54,43,0 script Taro 114,{ + if (getequipid(equip_head) == 511 || getequipid(equip_head) == 1206) goto L_Santa; + if (getequipid(equip_head) == 633) goto L_Elf; + if (getequipid(equip_head) == 628) goto L_NearElf; + if (getequipid(equip_head) == 1204) goto L_Antlers; + if (getequipid(equip_head) == 1205) goto L_Tree; + + mes "[Taro]"; + mes "\"I saw Santa Claus going up this road."; + mes "Will you help me following him?\""; + next; + + menu + "Of course, I'll help you!", L_Warp, + "No, it's probably dangerous out there.", -; + close; + +L_Santa: + mes "[Taro]"; + mes "\"SANTA! Will you take me to your workshop?\""; + next; + + menu + "Of course!", L_Warp, + "No, getting there is too dangerous.", -; + close; + +L_Elf: + mes "[Taro]"; + mes "\"Aren't you one of Santa's elves? Will you take me to him?\""; + next; + + menu + "Yes", L_Warp, + "No. Santa is too busy.", -; + close; + +L_NearElf: + mes "[Taro]"; + mes "\"Aren't you one of Santa's elves? Oh, you're not. Will you help me see him anyways?\""; + next; + + menu + "Yes", L_Warp, + "No", -; + close; + +L_Antlers: + mes "[Taro]"; + mes "\"Mister reindeer? Will you take me to Santa Clause?\""; + next; + + menu + "Yes", L_Warp, + "No", -; + close; + +L_Tree: + mes "[Taro]"; + mes "\"Oh Christmas tree, I wish I could go see Santa!\""; + next; + + menu + "Let me take you", L_Warp, + "Sorry, I'm not a magic tree", -; + close; + +L_Warp: + warp "new_10-1.gat",56,61; + close; +} diff --git a/npc/014-1_Woodland/wedding-officiator.txt b/npc/014-1_Woodland/wedding-officiator.txt new file mode 100644 index 00000000..93a27c6d --- /dev/null +++ b/npc/014-1_Woodland/wedding-officiator.txt @@ -0,0 +1,246 @@ +// Wedding officiator: Marriages and divorces + +new_29-1.gat,31,31,0 script Wedding Officiator 164,{ + + set @WEDDING_FEE, 100; + set @DIVORCE_FEE_PER_LEVEL, 500; + set @WEDDING_MIN_LEVEL, 32; + + mes "[Wedding Officiator]"; + mes "A young lady in a long, green dress is overseeing the park. As she notices you looking at her, she gives you a broad and happy smile."; + mes "\"Hi there! I'm Wendy, here for all your marriage needs!\""; + next; + +L_main: + if (getpartnerid2(0)) + goto L_main_married; + + menu "What exactly do you do?", L_explain_self, + "How do I get married?", L_explain_marriage, + "I would like to get married.", L_get_married; + close; + +L_explain_self: + mes "[Wedding Officiator]"; + mes "\"I'm responsible for marriage and divorce proceedings. Every married couple must be registered, so I keep a looong list of couples and send that to the magistrates every now and then.\""; + next; + mes "[Wedding Officiator]"; + mes "\"So if you have a sweetheart and the two of you are getting along particularly well, and you think that you are ready to make that big final step-- well, then come here and talk to me!\""; + next; + goto L_main; + +L_explain_marriage: + mes "[Wedding Officiator]"; + mes "\"If you are sure that you are ready to get married, then first you come and talk to me here-- I need to register you, after all. You will first have to pay me a small fee of " + @WEDDING_FEE + " GP.\""; + next; + mes "[Wedding Officiator]"; + mes "\"Both you and your partner must be at least " + @WEDDING_MIN_LEVEL + " levels of age, though; the law is very firm on that. But if all of that works out, I will give you two wedding rings for the ceremony.\""; + next; + mes "[Wedding Officiator]"; + mes "\"To complete the marriage, each of you has to put on one of these rings, and you have to stand next to each other in the southern part of this park. Then one of you says `marry' and then the other person's name.\""; + next; + mes "[Wedding Officiator]"; + mes "\"So if you would want to marry me, for example, you would say `marry Wendy'. Just like that. Your partner then has to decide whether he or she wants that. And if you both agree, then you're married!\""; + mes "She again smiles that broad smile of hers."; + next; + goto L_main; + +L_get_married: + if (zeny < @WEDDING_FEE) + goto L_too_poor; + if (BaseLevel < @WEDDING_MIN_LEVEL) + goto L_too_young; + + mes "[Wedding Officiator]"; + mes "Wendy's eyes are sparkling."; + mes "\"Wow. So you and your sweetheart are ready to take the big step, then?\""; + next; + + menu "Yes, we are ready.", -, + "On second thought, perhaps not.", L_end; + + mes "[Wedding Officiator]"; + mes "She bounces."; + mes "\"That's so sweet! You must really love each other, then...?\""; + next; + + menu "We certainly do.", -, + "Yes, of course.", -, + "Please get on with it.", -, + "Hmm. Let me think about this some more.", L_end; + + mes "[Wedding Officiator]"; + mes "Wendy blushes."; + mes "\"Sorry if I am asking so many questions, but I have to make sure, you see... rules and all. Where were we...\""; + next; + + mes "[Wedding Officiator]"; + mes "She composes herself again."; + mes "\"OK. Now, what vows you exchange precisely is your choice. But a marriage is really something that is meant to last. So please take a moment to think.\""; + next; + + mes "[Wedding Officiator]"; + mes "\"Is your partner really someone you are serious about, someone you want to be with even when things get nasty, someone whom you will stick your head out for no matter how bad things get?"; + mes "And do both of you feel that you could spend the rest of your time in this mana world together?\""; + next; + + menu "Yes.", -, + "YES.", -, + "Absolutely.", -, + "Yes. We love each other.", -, + "This is taking too long.", L_end, + "No.", L_end; + + if (zeny < @WEDDING_FEE) + goto L_too_poor; + if (BaseLevel < @WEDDING_MIN_LEVEL) + goto L_too_young; + + set zeny, zeny - @WEDDING_FEE; + getitem 702, 1; + getitem 702, 1; + + mes "[Wedding Officiator]"; + mes "Wendy collects the fee."; + mes "\"Okay... here are your wedding rings. Each of you has to have one. Put them on, stand next to each other in the southern part of this park and say `marry ...' and the name of your partner."; + mes "So your partner might just say `marry " + strcharinfo(0) + "' to marry you.\""; + next; + + mes "[Wedding Officiator]"; + mes "Wendy hesitates, then gives you a quick hug. There are tears are in her eyes."; + mes "\"Sorry, I always get a bit... emotional, I think... but I'm so happy for you!\""; + mes "She smiles wipes the tears from her eyes."; + next; + + mes "[Wedding Officiator]"; + mes "\"So... I wish you the very, very best, a wonderful and happy and successful marriage!\""; + mes "She smiles at you again."; + next; + close; + +L_end: + close; + +L_too_young: + mes "[Wedding Officiator]"; + mes "Wendy looks at her notes, shaking her head; pain is evident in her eyes."; + mes "\"I'm really, really sorry-- I wish I could allow that, but you are still too young. You have to be at least " + @WEDDING_MIN_LEVEL + " levels of age.\""; + next; + close; + +L_too_poor: + mes "[Wedding Officiator]"; + mes "\"Oh, this is so sad... you want to get married but don't have the money!\""; + mes "Wendy is visibly unhappy."; + mes "\"I wish I could help you, but the rules... you see... Well, I'm afraid that you will just have to come back when you have " + @WEDDING_FEE + " GP.\""; + next; + close; + +L_main_married: + + mes "[Wedding Officiator]"; + mes "\"I hope that you and your partner are doing well?\""; + next; + + menu "We are very happy, thanks for asking!", L_farewell, + "Actually, things aren't so good...", L_talk_divorce; + close; + +L_farewell: + mes "[Wedding Officiator]"; + mes "Wendy is beaming."; + mes "\"That's wonderful! Please do say `hi' to your spouse from me!\""; + next; + close; + +L_talk_divorce: + mes "[Wedding Officiator]"; + mes "\"Oh... I am sorry to hear that. What's the problem, then?\""; + next; + + menu "We don't love each other anymore.", L_nolove, + "My partner loves someone else.", L_partner_otherlove, + "I think I love someone else.", L_self_otherlove, + "We can't agree on who carries the loot.", L_loot; + close; + +L_nolove: + mes "[Wedding Officiator]"; + mes "Wendy sighs."; + mes "\"I am really sorry to hear that. Have you tried talking to your partner? Tried some new dungeons? Solved some quests together?\""; + next; + + mes "[Wedding Officiator]"; + mes "\"I mean... I am sure that you have many things in common that you are not aware of. If you just do something new, perhaps you will learn something about each other that you will like?\""; + next; + + menu "We tried that, it didn't work.", L_makesure_divorce, + "Perhaps we should give it another try.", -; + close; + +L_partner_otherlove: + mes "[Wedding Officiator]"; + mes "Wendy frowns."; + mes "\"Are you really sure? Perhaps that other person is just a friend, or even if it isn't, perhaps it was just a small mistake on your partner's side... nobody is perfect, after all!\""; + next; + + menu "I'm sure. I want a divorce.", L_makesure_divorce, + "Perhaps we should discuss this some more first.", -; + close; + +L_self_otherlove: + mes "[Wedding Officiator]"; + mes "Wendy sighs."; + mes "\"Oh dear... well, I suppose that happens. You don't have any children, I think, but still, you made a promise to your partner.\""; + next; + mes "[Wedding Officiator]"; + mes "\"Are you really sure that you love the new person so much that you want to leave your partner? Perhaps it would be good to take some time off first to make sure that you are not making a mistake here.\""; + next; + + menu "I'm sure. I want a divorce.", L_makesure_divorce, + "Let me think about this more.", -; + close; + +L_loot: + mes "[Wedding Officiator]"; + mes "Wendy blinks."; + mes "\"Err... have you thought about just splitting it up?\""; + next; + + menu "No way. I want a divorce.", L_makesure_divorce, + "Oh... oh! But of course!", -; + close; + +L_makesure_divorce: + set @divorce_cost, @DIVORCE_FEE_PER_LEVEL * BaseLevel; + + mes "[Wedding Officiator]"; + mes "Resigned, Wendy looks down at her notes."; + mes "\"Okay. I suppose that if you are sure, I will get your divorce underway. But that will cost you " + @divorce_cost + " in administrative fees.\""; + next; + + menu "Let me think about this again.", L_end, + "HOW much? Never mind, then.", L_end, + "That's OK. I want the divorce.", L_do_divorce; + close; + +L_divorce_nomoney: + mes "[Wedding Officiator]"; + mes "\"I am sorry, but you can't seem to afford the " + @divorce_cost + " GP for a divorce at this time. Please come back later.\""; + next; + close; + +L_do_divorce: + if (zeny < @divorce_cost) + goto L_divorce_nomoney; + + set zeny, zeny - @divorce_cost; + divorce; + + mes "[Wedding Officiator]"; + mes "After collecting her fee, Wendy licks her quill and writes down some notes."; + mes "Then she sighs heavily."; + mes "\"You are divorced now. Thank you for your business.\""; + next; + close; +} diff --git a/npc/014-3_Cave/_import.txt b/npc/014-3_Cave/_import.txt new file mode 100644 index 00000000..f18b6e02 --- /dev/null +++ b/npc/014-3_Cave/_import.txt @@ -0,0 +1,4 @@ +map: 014-3.gat +npc: npc/014-3_Cave/monsters.txt +npc: npc/014-3_Cave/_warps.txt +npc: npc/014-3_Cave/_mobs.txt diff --git a/npc/014-3_Cave/_mobs.txt b/npc/014-3_Cave/_mobs.txt new file mode 100644 index 00000000..417a4ef0 --- /dev/null +++ b/npc/014-3_Cave/_mobs.txt @@ -0,0 +1,7 @@ +// 014-3 Cave mobs + + + +014-3.gat,0,0,0 script Mob014-3 -1,{ + end; +} diff --git a/npc/014-3_Cave/_warps.txt b/npc/014-3_Cave/_warps.txt new file mode 100644 index 00000000..39704f98 --- /dev/null +++ b/npc/014-3_Cave/_warps.txt @@ -0,0 +1,6 @@ +// 014-3 Cave warps + +014-3.gat,35,32 warp ToOutside -1,-1,014-1.gat,76,39 +014-3.gat,57,173 warp ToOutside 0,-1,014-1.gat,93,59 +014-3.gat,91,108 warp ToCave -1,-1,014-3.gat,103,53 +014-3.gat,103,54 warp ToCave -1,-1,014-3.gat,91,109 diff --git a/npc/014-3_Cave/monsters.txt b/npc/014-3_Cave/monsters.txt new file mode 100644 index 00000000..b0620568 --- /dev/null +++ b/npc/014-3_Cave/monsters.txt @@ -0,0 +1,14 @@ +// Map: new_30-1 +// This is the caves beneath West Woodland. +// + +new_30-1.gat,0,0,0,0 monster Bat 1017,50,0,0,Mob30::OnBat + +new_30-1.gat,0,0,0 script Mob30 -1,{ +OnBat: + set @mobID, 1017; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/015-1_Woodland/_import.txt b/npc/015-1_Woodland/_import.txt new file mode 100644 index 00000000..e37b2791 --- /dev/null +++ b/npc/015-1_Woodland/_import.txt @@ -0,0 +1,5 @@ +map: 015-1.gat +npc: npc/015-1_Woodland/monsters.txt +npc: npc/015-1_Woodland/alice.txt +npc: npc/015-1_Woodland/_warps.txt +npc: npc/015-1_Woodland/_mobs.txt diff --git a/npc/015-1_Woodland/_mobs.txt b/npc/015-1_Woodland/_mobs.txt new file mode 100644 index 00000000..6ec8206f --- /dev/null +++ b/npc/015-1_Woodland/_mobs.txt @@ -0,0 +1,7 @@ +// 015-1 Woodland mobs + + + +015-1.gat,0,0,0 script Mob015-1 -1,{ + end; +} diff --git a/npc/015-1_Woodland/_warps.txt b/npc/015-1_Woodland/_warps.txt new file mode 100644 index 00000000..c6ca1856 --- /dev/null +++ b/npc/015-1_Woodland/_warps.txt @@ -0,0 +1,3 @@ +// 015-1 Woodland warps + +015-1.gat,93,55 warp ToWoodland -1,0,010-1.gat,15,55 diff --git a/npc/015-1_Woodland/alice.txt b/npc/015-1_Woodland/alice.txt new file mode 100644 index 00000000..e35f4802 --- /dev/null +++ b/npc/015-1_Woodland/alice.txt @@ -0,0 +1,46 @@ +//################################################################################# +//# # +//# A herb collector giving the players some hints about finding and brewing # +//# herbs # +//# # +//################################################################################# + + +new_31-1.gat,52,53,0 script Alice 106, { + mes "[Alice]"; + mes "\"Greeting, fellow wanderer."; + mes "Are you collecting herbs, too?\""; + next; + menu + "Yes, sure.", L_findmany, + "Herbs?", L_herbs, + "Nope, just enjoying the scenery.", close; + +L_findmany: + mes "[Alice]"; + mes "\"And? Did you already find a lot?\""; + next; + menu + "Yes, I already got plenty of them.", L_plenty, + "No, I am out of luck.", -; + mes "[Alice]"; + mes "\"Oooh, how sad. Let me give you a little tip:"; + mes "Herbs are often growing in places where they can't be spotted that easily. Don't forget to look behind the trees, too.\""; + close; + +L_plenty: + mes "[Alice]"; + mes "\"That's great."; + mes "When you are not that good at brewing you should consider letting someone else brew them for you."; + mes "Good brewers get much better healing potions from them."; + mes "The most important characteristic of a good brewer is intelligence.\""; + close; + + +L_herbs: + mes "[Alice]"; + mes "\"Yes, some powerful magic herbs started to grow around here and a mile to the southeast."; + mes "Caul in Hurnscald found a way to brew magical healing potions from them, and I have heard a rumor that they may also be good for making colors."; + mes "Now everyone is running around in the woods to harvest the herbs.\""; + close; +} diff --git a/npc/015-1_Woodland/monsters.txt b/npc/015-1_Woodland/monsters.txt new file mode 100644 index 00000000..0ce818c1 --- /dev/null +++ b/npc/015-1_Woodland/monsters.txt @@ -0,0 +1,46 @@ +// Map: new_31-1 +// This is South-West Woodland. +// + +new_31-1.gat,0,0,0,0 monster LogHead 1025,40,0,0,Mob31::OnLogHead +new_31-1.gat,0,0,0,0 monster SpikyMushroom 1019,20,0,0,Mob31::OnSpikyMushroom +new_31-1.gat,0,0,0,0 monster Flower 1014,20,0,0,Mob31::OnFlower + +new_31-1.gat,0,0,0,0 monster Gamboge 1031,3,0,0,Mob31::OnGamboge +new_31-1.gat,0,0,0,0 monster Alizarin 1032,3,0,0,Mob31::OnAlizarin + +new_31-1.gat,0,0,0,0 monster SilkWorm 1035,7,15000,7000,Mob31::onSilkWorm + +new_31-1.gat,0,0,0 script Mob31 -1,{ +OnLogHead: + set @mobID, 1025; + callfunc "MobPoints"; + break; + +OnSpikyMushroom: + set @mobID, 1019; + callfunc "MobPoints"; + break; + +OnFlower: + set @mobID, 1014; + callfunc "MobPoints"; + break; + +OnGamboge: + set @mobID, 1031; + callfunc "MobPoints"; + break; + +OnAlizarin: + set @mobID, 1032; + callfunc "MobPoints"; + break; + +OnSilkWorm: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/016-1_Woodland/_import.txt b/npc/016-1_Woodland/_import.txt new file mode 100644 index 00000000..5147cc8f --- /dev/null +++ b/npc/016-1_Woodland/_import.txt @@ -0,0 +1,4 @@ +map: 016-1.gat +npc: npc/016-1_Woodland/monsters.txt +npc: npc/016-1_Woodland/_warps.txt +npc: npc/016-1_Woodland/_mobs.txt diff --git a/npc/016-1_Woodland/_mobs.txt b/npc/016-1_Woodland/_mobs.txt new file mode 100644 index 00000000..dd0a4eca --- /dev/null +++ b/npc/016-1_Woodland/_mobs.txt @@ -0,0 +1,7 @@ +// 016-1 Woodland mobs + + + +016-1.gat,0,0,0 script Mob016-1 -1,{ + end; +} diff --git a/npc/016-1_Woodland/_warps.txt b/npc/016-1_Woodland/_warps.txt new file mode 100644 index 00000000..a9c59657 --- /dev/null +++ b/npc/016-1_Woodland/_warps.txt @@ -0,0 +1,3 @@ +// 016-1 Woodland warps + +016-1.gat,56,20 warp ToWoodland 1,-1,010-1.gat,56,103 diff --git a/npc/016-1_Woodland/monsters.txt b/npc/016-1_Woodland/monsters.txt new file mode 100644 index 00000000..8075550c --- /dev/null +++ b/npc/016-1_Woodland/monsters.txt @@ -0,0 +1,40 @@ +// Map: new_32-1 +// This is Southernmost Woodlands. +// + +new_32-1.gat,0,0,0,0 monster Mouboo 1028,5,0,0,Mob32::OnMouboo +new_32-1.gat,0,0,0,0 monster Scorpion 1003,15,0,0,Mob32::OnScorpion + +new_32-1.gat,0,0,0,0 monster Mauve 1029,3,0,0,Mob32::OnMauve +new_32-1.gat,0,0,0,0 monster Cobalt 1030,3,0,0,Mob32::OnCobalt + +new_32-1.gat,0,0,0,0 monster SilkWorm 1035,7,15000,7000,Mob32::onSilkWorm + +new_32-1.gat,0,0,0 script Mob32 -1,{ +OnMouboo: + set @mobID, 1028; + callfunc "MobPoints"; + break; + +OnScorpion: + set @mobID, 1003; + callfunc "MobPoints"; + break; + +OnMauve: + set @mobID, 1029; + callfunc "MobPoints"; + break; + +OnCobalt: + set @mobID, 1030; + callfunc "MobPoints"; + break; + +OnSilkWorm: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/017-1_Woodland_hills/_import.txt b/npc/017-1_Woodland_hills/_import.txt new file mode 100644 index 00000000..a447c2d4 --- /dev/null +++ b/npc/017-1_Woodland_hills/_import.txt @@ -0,0 +1,4 @@ +map: 017-1.gat +npc: npc/017-1_Woodland_hills/monsters.txt +npc: npc/017-1_Woodland_hills/_warps.txt +npc: npc/017-1_Woodland_hills/_mobs.txt diff --git a/npc/017-1_Woodland_hills/_mobs.txt b/npc/017-1_Woodland_hills/_mobs.txt new file mode 100644 index 00000000..c14e5e2f --- /dev/null +++ b/npc/017-1_Woodland_hills/_mobs.txt @@ -0,0 +1,7 @@ +// 017-1 Woodland hills mobs + + + +017-1.gat,0,0,0 script Mob017-1 -1,{ + end; +} diff --git a/npc/017-1_Woodland_hills/_warps.txt b/npc/017-1_Woodland_hills/_warps.txt new file mode 100644 index 00000000..26917709 --- /dev/null +++ b/npc/017-1_Woodland_hills/_warps.txt @@ -0,0 +1,3 @@ +// 017-1 Woodland hills warps + +017-1.gat,46,105 warp toWoodland 2,-1,013-1.gat,45,22 diff --git a/npc/017-1_Woodland_hills/monsters.txt b/npc/017-1_Woodland_hills/monsters.txt new file mode 100644 index 00000000..8ec54d78 --- /dev/null +++ b/npc/017-1_Woodland_hills/monsters.txt @@ -0,0 +1,76 @@ +// Map: new_33-1 +// This is North Woodlands Mountains. +// + +new_33-1.gat,0,0,0,0 monster Bat 1017,5,0,0,Mob33::OnBat +new_33-1.gat,0,0,0,0 monster FireGoblin 1011,5,0,0,Mob33::OnFireGoblin +new_33-1.gat,0,0,0,0 monster Mouboo 1028,5,0,0,Mob33::OnMouboo +new_33-1.gat,0,0,0,0 monster Flower 1014,5,0,0,Mob33::OnFlower +new_33-1.gat,0,0,0,0 monster SpikyMushroom 1019,5,0,0,Mob33::OnSpikyMushroom +new_33-1.gat,0,0,0,0 monster EvilMushshroom 1013,10,0,0,Mob33::OnEvilMushroom + +new_33-1.gat,0,0,0,0 monster Alizarin 1032,2,0,0,Mob33::OnAlizarin +new_33-1.gat,0,0,0,0 monster Gamboge 1031,2,0,0,Mob33::OnGamboge +new_33-1.gat,0,0,0,0 monster Cobalt 1030,2,0,0,Mob33::OnCobalt +new_33-1.gat,0,0,0,0 monster Mauve 1029,2,0,0,Mob33::OnMauve + +new_33-1.gat,0,0,0,0 monster SilkWorm 1035,10,0,0,Mob33::OnSilkWorm + +new_33-1.gat,0,0,0 script Mob33 -1,{ +OnBat: + set @mobID, 1017; + callfunc "MobPoints"; + break; + +OnFireGoblin: + set @mobID, 1011; + callfunc "MobPoints"; + break; + +OnMouboo: + set @mobID, 1028; + callfunc "MobPoints"; + break; + +OnFlower: + set @mobID, 1014; + callfunc "MobPoints"; + break; + +OnSpikyMushroom: + set @mobID, 1019; + callfunc "MobPoints"; + break; + +OnEvilMushroom: + set @mobID, 1013; + callfunc "MobPoints"; + break; + +OnAlizarin: + set @mobID, 1032; + callfunc "MobPoints"; + break; + +OnGamboge: + set @mobID, 1031; + callfunc "MobPoints"; + break; + +OnCobalt: + set @mobID, 1030; + callfunc "MobPoints"; + break; + +OnMauve: + set @mobID, 1029; + callfunc "MobPoints"; + break; + +OnSilkWorm: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/018-1_Woodland_mining_camp/_import.txt b/npc/018-1_Woodland_mining_camp/_import.txt new file mode 100644 index 00000000..c8cd0a44 --- /dev/null +++ b/npc/018-1_Woodland_mining_camp/_import.txt @@ -0,0 +1,5 @@ +map: 018-1.gat +npc: npc/018-1_Woodland_mining_camp/monsters.txt +npc: npc/018-1_Woodland_mining_camp/miners.txt +npc: npc/018-1_Woodland_mining_camp/_warps.txt +npc: npc/018-1_Woodland_mining_camp/_mobs.txt diff --git a/npc/018-1_Woodland_mining_camp/_mobs.txt b/npc/018-1_Woodland_mining_camp/_mobs.txt new file mode 100644 index 00000000..df2cf445 --- /dev/null +++ b/npc/018-1_Woodland_mining_camp/_mobs.txt @@ -0,0 +1,104 @@ +// 018-1 Woodland mining camp mobs + +018-1.gat,136,79,9,41 monster Sea Slime 1033,10,0,0,Mob018-1::On1033 +018-1.gat,108,87,53,25 monster Log Head 1025,10,0,0,Mob018-1::On1025 +018-1.gat,116,44,6,7 monster Sea Slime 1033,3,0,0,Mob018-1::On1033 +018-1.gat,119,56,13,6 monster Flower 1014,2,0,0,Mob018-1::On1014 +018-1.gat,175,28,17,19 monster Jack O 1022,1,300000,240000,Mob018-1::On1022 +018-1.gat,78,59,3,1 monster Yellow Slime 1007,1,0,0,Mob018-1::On1007 +018-1.gat,57,63,14,7 monster Silk Worm 1035,2,0,0,Mob018-1::On1035 +018-1.gat,43,63,31,28 monster Bat 1017,10,0,0,Mob018-1::On1017 +018-1.gat,134,39,18,10 monster Grass Snake 1034,4,0,0,Mob018-1::On1034 +018-1.gat,124,42,9,11 monster Grass Snake 1034,2,0,0,Mob018-1::On1034 +018-1.gat,124,19,22,9 monster Mountain Snake 1026,3,0,0,Mob018-1::On1026 +018-1.gat,122,29,19,9 monster Mountain Snake 1026,2,0,0,Mob018-1::On1026 +018-1.gat,149,45,10,8 monster Bat 1017,5,0,0,Mob018-1::On1017 +018-1.gat,169,47,20,10 monster Pinkie 1018,4,0,0,Mob018-1::On1018 +018-1.gat,136,49,13,8 monster Fluffy 1020,4,0,0,Mob018-1::On1020 +018-1.gat,111,62,5,2 monster Silk Worm 1035,1,0,0,Mob018-1::On1035 +018-1.gat,117,50,4,3 monster Sea Slime 1033,1,0,0,Mob018-1::On1033 +018-1.gat,96,47,18,11 monster Mouboo 1028,3,0,0,Mob018-1::On1028 +018-1.gat,106,52,15,6 monster Mouboo 1028,1,0,0,Mob018-1::On1028 +018-1.gat,78,55,37,6 monster Fire Goblin 1011,7,0,0,Mob018-1::On1011 +018-1.gat,145,24,10,9 monster Green Slime 1005,3,0,0,Mob018-1::On1005 +018-1.gat,68,89,14,17 monster Scorpion 1003,3,0,0,Mob018-1::On1003 + + +018-1.gat,0,0,0 script Mob018-1 -1,{ +On1003: + set @mobID, 1003; + callfunc "MobPoints"; + break; + +On1005: + set @mobID, 1005; + callfunc "MobPoints"; + break; + +On1007: + set @mobID, 1007; + callfunc "MobPoints"; + break; + +On1011: + set @mobID, 1011; + callfunc "MobPoints"; + break; + +On1014: + set @mobID, 1014; + callfunc "MobPoints"; + break; + +On1017: + set @mobID, 1017; + callfunc "MobPoints"; + break; + +On1018: + set @mobID, 1018; + callfunc "MobPoints"; + break; + +On1020: + set @mobID, 1020; + callfunc "MobPoints"; + break; + +On1022: + set @mobID, 1022; + callfunc "MobPoints"; + break; + +On1025: + set @mobID, 1025; + callfunc "MobPoints"; + break; + +On1026: + set @mobID, 1026; + callfunc "MobPoints"; + break; + +On1028: + set @mobID, 1028; + callfunc "MobPoints"; + break; + +On1033: + set @mobID, 1033; + callfunc "MobPoints"; + break; + +On1034: + set @mobID, 1034; + callfunc "MobPoints"; + break; + +On1035: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/018-1_Woodland_mining_camp/_warps.txt b/npc/018-1_Woodland_mining_camp/_warps.txt new file mode 100644 index 00000000..c8d4c8d6 --- /dev/null +++ b/npc/018-1_Woodland_mining_camp/_warps.txt @@ -0,0 +1,17 @@ +// 018-1 Woodland mining camp warps + +018-1.gat,79,59 warp toMine 0,-1,018-3.gat,100,130 +018-1.gat,112,61 warp toCave -1,-1,018-3.gat,44,36 +018-1.gat,115,40 warp toCave -1,-1,013-3.gat,22,114 +018-1.gat,128,56 warp toCave -1,-1,018-3.gat,49,97 +018-1.gat,90,42 warp toCave -1,-1,018-3.gat,123,164 +018-1.gat,69,54 warp toCave -1,-1,018-3.gat,70,103 +018-1.gat,127,36 warp toCave -1,-1,013-3.gat,139,44 +018-1.gat,134,45 warp toCave -1,-1,013-3.gat,61,178 +018-1.gat,147,40 warp toCave -1,-1,013-3.gat,81,102 +018-1.gat,153,46 warp toCave -1,-1,018-3.gat,146,160 +018-1.gat,158,34 warp toCave -1,-1,018-3.gat,64,101 +018-1.gat,162,44 warp toCave -1,-1,018-3.gat,29,164 +018-1.gat,177,20 warp toCave -1,-1,013-1.gat,177,90 +018-1.gat,65,73 warp toIndoor -1,-1,018-2.gat,50,28 +018-1.gat,79,98 warp toHurnscald 2,-1,008-1.gat,79,18 diff --git a/npc/018-1_Woodland_mining_camp/miners.txt b/npc/018-1_Woodland_mining_camp/miners.txt new file mode 100644 index 00000000..99bba7fb --- /dev/null +++ b/npc/018-1_Woodland_mining_camp/miners.txt @@ -0,0 +1,6 @@ +// + +new_37-1.gat,78,59,0 script Miner 109,1,1,{ + mes "[Miner]"; + mes "\"I'm sorry, but this area is closed off.\""; +} diff --git a/npc/018-1_Woodland_mining_camp/monsters.txt b/npc/018-1_Woodland_mining_camp/monsters.txt new file mode 100644 index 00000000..d38d2695 --- /dev/null +++ b/npc/018-1_Woodland_mining_camp/monsters.txt @@ -0,0 +1,39 @@ +// Map: new_37-1 +// This is the Woodland Mines. +// + +new_37-1.gat,0,0,0,0 monster LogHead 1025,5,500,600,Mob37::OnLogHead +new_37-1.gat,136,77,20,35 monster SeaSlime 1033,5,1000,500,Mob37::OnSeaSlime +new_37-1.gat,0,0,0,0 monster Bat 1017,2,4000,3000,Mob37::OnBat +new_37-1.gat,79,59,0,0 monster YellowSlime 1007,1,120000,60000,Mob37::OnYellowSlime + +new_37-1.gat,57,63,4,4 monster SilkWorm 1035,2,60000,30000,Mob37::OnSilkWorm + +new_37-1.gat,0,0,0 script Mob37 -1,{ +OnLogHead: + set @mobID, 1025; + callfunc "MobPoints"; + break; + +OnSeaSlime: + set @mobID, 1033; + callfunc "MobPoints"; + break; + +OnBat: + set @mobID, 1017; + callfunc "MobPoints"; + break; + +OnYellowSlime: + set @mobID, 1007; + callfunc "MobPoints"; + break; + +OnSilkWorm: + set @mobID, 1035; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/018-2_Woodland_minning_camp/_import.txt b/npc/018-2_Woodland_minning_camp/_import.txt new file mode 100644 index 00000000..0f2ce698 --- /dev/null +++ b/npc/018-2_Woodland_minning_camp/_import.txt @@ -0,0 +1,9 @@ +map: 018-2.gat +npc: npc/018-2_Woodland_minning_camp/receptionist.txt +npc: npc/018-2_Woodland_minning_camp/monsters.txt +npc: npc/018-2_Woodland_minning_camp/miners.txt +npc: npc/018-2_Woodland_minning_camp/caul.txt +npc: npc/018-2_Woodland_minning_camp/books.txt +npc: npc/018-2_Woodland_minning_camp/angus.txt +npc: npc/018-2_Woodland_minning_camp/_warps.txt +npc: npc/018-2_Woodland_minning_camp/_mobs.txt diff --git a/npc/018-2_Woodland_minning_camp/_mobs.txt b/npc/018-2_Woodland_minning_camp/_mobs.txt new file mode 100644 index 00000000..756b1956 --- /dev/null +++ b/npc/018-2_Woodland_minning_camp/_mobs.txt @@ -0,0 +1,13 @@ +// 018-2 Woodland minning camp mobs + +018-2.gat,114,21,4,3 monster Yellow Slime 1007,1,0,0,Mob018-2::On1007 + + +018-2.gat,0,0,0 script Mob018-2 -1,{ +On1007: + set @mobID, 1007; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/018-2_Woodland_minning_camp/_warps.txt b/npc/018-2_Woodland_minning_camp/_warps.txt new file mode 100644 index 00000000..a4252c53 --- /dev/null +++ b/npc/018-2_Woodland_minning_camp/_warps.txt @@ -0,0 +1,9 @@ +// 018-2 Woodland minning camp warps + +018-2.gat,50,29 warp toOutside -1,-1,018-1.gat,65,74 +018-2.gat,41,20 warp toOutside -1,-1,018-1.gat,65,69 +018-2.gat,20,24 warp toBasement -1,-1,018-2.gat,112,27 +018-2.gat,112,26 warp toFirstFloor -1,-1,018-2.gat,20,23 +018-2.gat,21,28 warp toSecondFloor 0,-1,018-2.gat,79,25 +018-2.gat,79,26 warp toFirstFloor 0,-1,018-2.gat,21,29 +018-2.gat,114,20 warp toCave -1,-1,018-3.gat,177,53 diff --git a/npc/018-2_Woodland_minning_camp/angus.txt b/npc/018-2_Woodland_minning_camp/angus.txt new file mode 100644 index 00000000..7be183f4 --- /dev/null +++ b/npc/018-2_Woodland_minning_camp/angus.txt @@ -0,0 +1,19 @@ +// Angus the craftsman + +new_38-1.gat,31,39,0 script Angus 147,{ + set @honorific$, "lad"; + if (Sex == 0) set @honorific$, "lass"; + + if (Inspector == 10) goto L_NohMask; + + mes "[Angus]"; + mes "Angus is tinkering with some mechanical concoction."; + mes "\"It keeps breakin' left an' right... fortunat'ly I put in redundancies everywhere, but I haf' to keep repairin'.\""; + next; + close; + +L_NohMask: + mes "[Angus]"; + mes "\"I'm sorry, " + @honorific$ + ", I truely am, but I stay in the town. One o' the miners might have heard something.\""; + close; +} diff --git a/npc/018-2_Woodland_minning_camp/books.txt b/npc/018-2_Woodland_minning_camp/books.txt new file mode 100644 index 00000000..dfd4ecda --- /dev/null +++ b/npc/018-2_Woodland_minning_camp/books.txt @@ -0,0 +1,18 @@ +// + +new_38-1.gat,112,19,0 script #Bookcase38 127,0,1{ + if (Inspector == 11) goto L_NohMask; + + mes "Looking over the bookcase, you find nothing strange or out of order."; + close; + +L_NohMask: + mes "Looking over the bookcase closely, you find a book is upside down."; + next; + + mes "The book has been hollowed out. Inside is a theater mask and a note that you cannot even begin to read."; + next; + + set Inspector, 12; + close; +} diff --git a/npc/018-2_Woodland_minning_camp/caul.txt b/npc/018-2_Woodland_minning_camp/caul.txt new file mode 100644 index 00000000..e84b507d --- /dev/null +++ b/npc/018-2_Woodland_minning_camp/caul.txt @@ -0,0 +1,479 @@ +//################################################################################# +//# +//# this script file contains the script for the NPC which allows the +//# PCs to create potions from herbs. +//# +//# Participates in the monster oil subquest (cf. Nicholas' Setzer quest) +//# +//################################################################################# + +new_38-1.gat,37,22,0 script Caul 107,{ + set @SETZER_INITIAL, 0; + set @SETZER_KNOWS_OIL, 1; + set @SETZER_KNOWS_STINGER, 2; + set @SETZER_FLAG_MADE_OIL, 4; + + set @PEARL, 700; + set @SNAKE_SKIN, 641; + set @BLACK_STINGER, 709; + set @ASH_PILE, 701; + set @GOLDEN_STINGER, 706; + set @MONSTER_OIL, 707; + set @MONSTER_OIL_XP, 100000; + + set @Q_MASK, NIBBLE_3_MASK; + set @Q_SHIFT, NIBBLE_3_SHIFT; + + set @MAUVE, 680; + set @COBALT, 681; + set @GAMBOGE, 682; + set @ALIZARIN, 683; + + set @Q_status, (QUEST_Forestbow_state & @Q_MASK) >> @Q_SHIFT; + + mes "[Caul]"; + mes "\"I can help you to brew healing potions out of mauve, cobalt, gamboge and alizarin herbs."; + mes "How many potions do you want to brew?\""; + next; + + + if (@Q_status && Inspector == 10) + menu + "One", L_1, + "Five", L_5, + "Ten", L_10, + "Fifty", L_50, + "I would like to brew monster oil.", L_monster_oil_start, + "Actually...", L_NohMask, + "Never mind", L_close; + if (@Q_status && Inspector != 10) + menu + "One", L_1, + "Five", L_5, + "Ten", L_10, + "Fifty", L_50, + "I would like to brew monster oil.", L_monster_oil_start, + "Never mind", L_close; + if (!@Q_status && Inspector == 10) + menu + "One", L_1, + "Five", L_5, + "Ten", L_10, + "Fifty", L_50, + "Actually...", L_NohMask, + "Never mind", L_close; + if (!@Q_status && Inspector != 10) + menu + "One", L_1, + "Five", L_5, + "Ten", L_10, + "Fifty", L_50, + "Never mind", L_close; + +L_1: + set @num, 1; + goto L_brew; + +L_5: + set @num, 5; + goto L_brew; + +L_10: + set @num, 10; + goto L_brew; + +L_50: + set @num, 50; + goto L_brew; + + +L_brew: + mes "[Caul]"; + mes "\"Now put " + @num + " herbs of each kind into the cauldron, stir, and concentrate all your mental energy on it.\""; + next; + + if (countitem(@MAUVE) < @num) goto L_NotEnough; + if (countitem(@COBALT) < @num) goto L_NotEnough; + if (countitem(@GAMBOGE) < @num) goto L_NotEnough; + if (countitem(@ALIZARIN) < @num) goto L_NotEnough; + + set @a, @num; + set @result1, 0; + set @result2, 0; + set @result3, 0; + set @result4, 0; + +L_CraftLoop: + set @throw, rand(readparam(bInt)); + set @result, 1; + if (@throw >= 5) set @result, 2; + if (@throw >= 15) set @result, 3; + if (@throw >= 35) set @result, 4; + + if (@result == 1) set @result1, @result1 + 1; + if (@result == 2) set @result2, @result2 + 1; + if (@result == 3) set @result3, @result3 + 1; + if (@result == 4) set @result4, @result4 + 1; + + set @a, @a - 1; + if (@a > 0) goto L_CraftLoop; + + delitem @MAUVE, @num; + delitem @COBALT, @num; + delitem @GAMBOGE, @num; + delitem @ALIZARIN, @num; + + getitem 684, @result1; + getitem 685, @result2; + getitem 686, @result3; + getitem 687, @result4; + + mes "[Caul]"; + mes "\"Well done! You made:"; + if (@result1 > 0) mes @result1 + " tiny potions"; + if (@result2 > 0) mes @result2 + " small potions"; + if (@result3 > 0) mes @result3 + " medium potions"; + if (@result4 > 0) mes @result4 + " large potions"; + mes "Come again.\""; + close; + +L_NotEnough: + mes "[Caul]"; + mes "\"Oh, it seems like you don't have enough herbs. You can find herbs in deep forests.\""; + close; + +L_monster_oil_start: + mes "[Caul]"; + mes "\"Monster oil? Hmm, I have heard of it, but I don't remember the precise recipe to make it...\""; + next; + if (@Q_status == @SETZER_KNOWS_OIL) + menu "OK, I'll ask around, perhaps someone else knows.", L_close; + if (@Q_status > @SETZER_KNOWS_OIL) + menu "Rauk told me the recipe.", L_monster_oil_knows_recipe; + close; + +L_monster_oil_knows_recipe: + mes "[Caul]"; + mes "\"Ah, but of course! Yes, we should be able to brew that here. Except that... hmm. Pearl and three black scorpion stingers? This sounds very dangerous;"; + mes "I fear that I will have to ask you to do this yourself.\""; + next; + +L_monster_oil_main_menu: + set @main_menu, 1; + menu + "What do you mean by 'dangerous'?", L_monster_oil_why_dangerous, + "What do I need, again?", L_monster_oil_ingredients, + "How does this work?", L_monster_oil_explain, + "Let's start!", L_monster_oil_start_brew, + "Where can I get a golden scorpion stinger?", L_monster_oil_where_gold, + "I've changed my mind.", L_close; + close; + +L_monster_oil_why_dangerous: + mes "[Caul]"; + mes "\"Well, with those two reagents in there at that ratio, you risk an explosion-- quite possibly a fatal one. So be prepared to duck if the brew gets too bubbly-- it's better to lose the ingredients than your head!\""; + next; + goto L_monster_oil_main_menu; + +L_monster_oil_ingredients: + mes "[Caul]"; + mes "\"You will need one pearl, two snake skins, three black scorpion stingers, two piles of ash, and a golden scorpion stinger. The golden stinger goes in last, after the dangerous part, so you won't lose if if your brew blows up.\""; + next; + mes "[Caul]"; + mes "\"You should also bring gamboge, mauve, alizarin and cobalt leaves. You will have to stabilize the brew, and they will help with that.\""; + next; + goto L_monster_oil_main_menu; + +L_monster_oil_explain: + mes "[Caul]"; + mes "\"After you have put in the monster parts-- except for the golden stinger-- the brew will take on some random color; this can be a light, dark, or medium color. You have to stabilize this color by adding leaves to it.\""; + next; + mes "[Caul]"; + mes "\"Of course, with such a violent brew the mixture will change color by itself, too, probably faster than your leaves can affect it. It will randomly add or remove colors, and might even get lighter.\""; + next; + mes "[Caul]"; + mes "\"From what I have seen, it seems to go through phases-- for each alternate leaf it adds a colour, then removes a color, then adds again and so on. Of course, if the color is there already it can't add any more.\""; + next; + mes "[Caul]"; + mes "\"I haven't figured out yet precisely when it gets lighter, though.\""; + next; + mes "[Caul]"; + mes "\"By adding Mauve, you can make it darker. Alizarin adds red, Gamboge yellow, Cobalt blue. To make it a proper black, you have to get it to be dark gray, then add one Mauve leaf.\""; + next; + mes "[Caul]"; + mes "\"Unfortunately the brew changes randomly before your leaves dissolve, so sometimes you can't help but add the wrong color...\""; + next; + mes "[Caul]"; + mes "\"Since the brew changes its color first, you might want to add the Mauve when your color is a dark purple or dark green or dark orange and hope for the best.\""; + next; + mes "[Caul]"; + mes "\"But don't add too much! If you add a color that is already there, or try to make it darker at the wrong spot, it may backfire.\""; + next; + if (@main_menu) + goto L_monster_oil_main_menu; + goto L_monster_oil_loop; + +L_monster_oil_where_gold: + mes "[Caul]"; + mes "\"Good question. There aren't any golden scorpions nearby. Perhaps you can find a trader or an adventurer who have travelled further south and ask them to help?\""; + next; + goto L_monster_oil_main_menu; + +L_monster_oil_start_brew: + set @main_menu, 0; + if (countitem (@PEARL) < 1) goto L_monster_oil_missing; + if (countitem (@SNAKE_SKIN) < 2) goto L_monster_oil_missing; + if (countitem (@BLACK_STINGER) < 3) goto L_monster_oil_missing; + if (countitem (@ASH_PILE) < 2) goto L_monster_oil_missing; + if (countitem (@GOLDEN_STINGER) < 1) goto L_monster_oil_missing_gold; + + delitem @PEARL, 1; + delitem @SNAKE_SKIN, 2; + delitem @BLACK_STINGER, 3; + delitem @ASH_PILE, 2; + + set @bubble_mode, 0; + setarray @bubble_modes$, + "The brew is calm.", + "The brew is bubbling.", + "The brew is bubbling violently."; + + set @color, 1 << (rand(3)); + setarray @colors$, + "white", + "red", + "yellow", + "orange", + "blue", + "purple", + "green", + "gray"; + + set @intensity, 1; + setarray @intensities$, + "light", + "medium", + "dark"; + + set @auto_mode, 0; // Start by adding a colour or going lighter + + goto L_monster_oil_loop; + +L_monster_oil_missing: + mes "[Caul]"; + mes "\"You don't seem to have all of the ingredients. You need one pearl, two snake skins, three black stingers, two piles of ash, and one golden stinger.\""; + next; + close; + +L_monster_oil_missing_gold: + mes "[Caul]"; + mes "\"You seem to have everything except for the golden stinger. I understand that this one is hard to get, but I'm sure that you can find one somewhere.\""; + next; + close; + +L_monster_oil_loop: + mes "[Brewing monster oil]"; + mes @bubble_modes$[@bubble_mode]; + mes "It is currently a " + @intensities$[@intensity] + " " + @colors$[@color] + "."; + next; + + menu + "Add alizarin leaf", L_monster_oil_alizarin, + "Add gamboge leaf", L_monster_oil_gamboge, + "Add cobalt leaf", L_monster_oil_cobalt, + "Add mauve leaf", L_monster_oil_mauve, + "Ask Caul for advice", L_monster_oil_explain, + "Duck!", -; + + mes "[Brewing monster oil]"; + mes "You throw yourself onto the ground. Seconds later, the cauldron shakes, and your entire mixture explodes upwards."; + mes "Caul crawls out from underneath a char."; + next; + mes "[Caul]"; + mes "\"I'm glad to see that you chose to brew another day... perhaps it might be best if you give up on this dangerous concoction, though!\""; + next; + close; + +L_monster_oil_out_of_leaves: + mes "[Brewing monster oil]"; + mes "You don't have any of these leaves left!"; + next; + goto L_monster_oil_loop; + +L_monster_oil_alizarin: + set @use_leaf, @ALIZARIN; + set @use_color, 1; + goto L_monster_oil_leaf_color; + +L_monster_oil_gamboge: + set @use_leaf, @GAMBOGE; + set @use_color, 2; + goto L_monster_oil_leaf_color; + +L_monster_oil_cobalt: + set @use_leaf, @COBALT; + set @use_color, 4; + goto L_monster_oil_leaf_color; + +L_monster_oil_leaf_color: + if (countitem (@use_leaf) < 1) goto L_monster_oil_out_of_leaves; + + callsub S_monster_oil_random_move; + if (@color & @use_color) goto L_monster_oil_pc_bad; + set @color, @color | @use_color; + delitem @use_leaf, 1; + + mes "The brew changes its hue as your leaf dissolves."; + next; + goto L_monster_oil_loop; + +L_monster_oil_mauve: + if (countitem(@MAUVE) < 1) goto L_monster_oil_out_of_leaves; + delitem @MAUVE, 1; + + callsub S_monster_oil_random_move; + if (@intensity == 2 && @color == 7) goto L_monster_oil_done; + if (@intensity == 2) goto L_monster_oil_pc_bad; + + set @intensity, @intensity + 1; + mes "The brew darkens as your mauve leaf dissolves."; + next; + goto L_monster_oil_loop; + +S_monster_oil_random_move: + mes "[Brewing monster oil]"; + mes "You throw in a leaf and stir."; + + if (@auto_mode == 1) + goto L_monster_oil_random_1; + +L_monster_oil_random_0: // mode 0: add colour or lighten up + set @auto_mode, 1; + if (rand(3) == 0) + goto L_monster_oil_random_0_lighten; + + set @choice, 1 << (rand(3)); + if (@color & @choice) + goto L_monster_oil_auto_bad; + set @color, @color | @choice; + + mes "Before your leaf has a chance to dissolve, the brew changes to a " + @colors$[@color] + " hue."; + return; + +L_monster_oil_random_0_lighten: + if (@intensity == 0) + goto L_monster_oil_auto_bad; + set @intensity, @intensity - 1; + mes "Before your leaf has a chance to dissolve, the brew takes on a lighter shade of " + @colors$[@color] + "."; + return; + +L_monster_oil_random_1: // mode 1: remove colour + set @auto_mode, 0; + set @choice, 1 << (rand(3)); + if (!(@color & @choice)) + goto L_monster_oil_auto_bad; + set @color, @color & (~@choice); + mes "Before your leaf has a chance to dissolve, the brew changes to a " + @colors$[@color] + " hue."; + return; + +L_monster_oil_pc_bad: + if (rand(readparam(bInt) + 100) > 60) goto L_monster_oil_pc_bad_ok; + if (@bubble_mode) + mes "As your leaf dissolves, the intensity of the bubbling increases."; + if (!@bubble_mode) + mes "As your leaf dissolves, the brew begins to bubble."; + next; + set @bubble_mode, @bubble_mode + 1; + if (@bubble_mode > 2) + goto L_monster_oil_explode; + goto L_monster_oil_loop; + +L_monster_oil_pc_bad_ok: + mes "Your leaf dissolves but seems to have no effect."; + next; + goto L_monster_oil_loop; + +L_monster_oil_auto_bad: + if (rand(3) == 0) + return; + if (rand(readparam(bInt) + 100) > 70) + return; + mes "The brew begins to bubble more violently."; + set @bubble_mode, @bubble_mode + 1; + if (@bubble_mode > 2) + next; + if (@bubble_mode > 2) + goto L_monster_oil_explode; + return; + +L_monster_oil_explode: + mes "[Exploding monster oil]"; + mes "Your brew explodes!"; + if (rand(readparam(bAgi)) > 40) + goto L_monster_oil_explode_dodge; + mes "The burst of boiling monster brew hits you."; + next; + itemheal (15 * rand(readparam(bVit))) - 1500, 0; + close; + +L_monster_oil_explode_dodge: + mes "You throw yourself to the ground at the very last moment, barely avoiding the burst of boiling monster brew."; + next; + mes "[Caul]"; + mes "Caul nods at you from underneath a chair."; + mes "\"I told you, it's dangerous!!\""; + next; + close; + +L_monster_oil_done: + mes "As you throw in another mauve leaf, the brew takes on a deep black color and calms down."; + next; + + mes "[Brewing monster oil]"; + mes "As instructed, you toss in your golden scorpion stinger."; + + if (countitem (@GOLDEN_STINGER) < 1) goto L_monster_oil_no_gold_end; + + mes "The brew bubbles once more, then calms completely."; + + delitem @GOLDEN_STINGER, 1; + getitem @MONSTER_OIL, 1; + + if (!(@Q_status & @SETZER_FLAG_MADE_OIL)) + getexp @MONSTER_OIL_XP, 0; + if (!(@Q_status & @SETZER_FLAG_MADE_OIL)) + mes "[" + @MONSTER_OIL_XP + " experience points]"; + + set @Q_status, @Q_status | @SETZER_FLAG_MADE_OIL; + callsub S_Update_Var; + next; + + mes "[Caul]"; + mes "Caul gets up from underneath the cover he was taking and looks at your brew. He is visibly impressed."; + mes "\"Well done! This should be just enough for one potion of monster oil. Let me get you a bottle.\""; + mes "He hands you the monster oil."; + next; + close; + +L_monster_oil_no_gold_end: + mes "But where is your golden stinger? Didn't you have one earlier?"; + mes "Frustrated, you give up."; + next; + close; + +L_close: + close; + +S_Update_Var: + set QUEST_Forestbow_state, + (QUEST_Forestbow_state & ~(@Q_MASK) + | (@Q_status << @Q_SHIFT)); + return; + +L_NohMask: + mes "[Caul]"; + mes "\"I'm sorry, but I didn't. I'm staying in town. Try asking one of the miners.\""; + close; +} + + diff --git a/npc/018-2_Woodland_minning_camp/miners.txt b/npc/018-2_Woodland_minning_camp/miners.txt new file mode 100644 index 00000000..92261cb5 --- /dev/null +++ b/npc/018-2_Woodland_minning_camp/miners.txt @@ -0,0 +1,15 @@ +// + +new_38-1.gat,85,23,0 script Miner 109,{ + if (Inspector == 10) goto L_NohMask; + + mes "[Miner]"; + mes "\"Hello.\""; + close; + +L_NohMask: + set Inspector, 11; + mes "[Miner]"; + mes "\"Yeah, we did hear a commotion. We thought we heard someone go down to the basement, but we checked the whole place over and didn't see anything out of the ordinary.\""; + close; +} diff --git a/npc/018-2_Woodland_minning_camp/monsters.txt b/npc/018-2_Woodland_minning_camp/monsters.txt new file mode 100644 index 00000000..7eb44908 --- /dev/null +++ b/npc/018-2_Woodland_minning_camp/monsters.txt @@ -0,0 +1,14 @@ +// Map: new_38-1 +// This is the Woodland Mines -- level 1. +// + +new_38-1.gat,114,21,4,3 monster YellowSlime 1007,1,120000,60000,Mob38::OnYellowSlime + +new_38-1.gat,0,0,0 script Mob38 -1,{ +OnYellowSlime: + set @mobID, 1007; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/018-2_Woodland_minning_camp/receptionist.txt b/npc/018-2_Woodland_minning_camp/receptionist.txt new file mode 100644 index 00000000..822d09a3 --- /dev/null +++ b/npc/018-2_Woodland_minning_camp/receptionist.txt @@ -0,0 +1,65 @@ +// + +new_38-1.gat,50,24,0 script Receptionist 108,{ + mes "[Receptionist]"; + mes "\"Welcome to the mining camp!"; + mes "Do you need anything?\""; + next; + +L_Menu: + if (Inspector == 10) + menu + "Why was a mine setup here?", L_Mine, + "Can I go into the mine?", L_Enter, + "Did the company build this building?", L_Building, + "Did you hear a commotion here the other night?", L_NohMask, + "Thank you, no.", -; + if (Inspector != 10) + menu + "Why was a mine setup here?", L_Mine, + "Can I go into the mine?", L_Enter, + "Did the company build this building?", L_Building, + "Thank you, no.", -; + close; + +L_Mine: + mes "[Receptionist]"; + mes "\"Minerals have been easy to find in this area historically. The mine entrance we're using collapsed from the mountain side when the volcano errupted. Plenty of minerals were exposed then.\""; + next; + goto L_Question_End; + +L_Enter: + mes "[Receptionist]"; + mes "\"I'm sorry, but the mine is very active. Entrance is restricted to miners only.\""; + next; + goto L_Question_End; + +L_Building: + mes "[Receptionist]"; + mes "\"No, the company bought this building. It's been abandoned for a while. The villagers think it's haunted, but we haven't seen anything, except for the basement. None of us have been able to stay there for very long.\""; + next; + + menu + "Why not?", -, + "Not my problem", L_Question_End; + + mes "[Receptionist]"; + mes "\"I haven't been down there myself, and the ones who have haven't been able to describe why at all.\""; + next; + + goto L_Question_End; + +L_NohMask: + mes "[Receptionist]"; + mes "\"I stay in town, and so couldn't have heard anything over here. One of the miners might be able to help you.\""; + next; + + goto L_Question_End; + +L_Question_End: + mes "[Receptionist]"; + mes "\"Do you need anything else?\""; + next; + + goto L_Menu; +} diff --git a/npc/018-3_Cave/_import.txt b/npc/018-3_Cave/_import.txt new file mode 100644 index 00000000..c716a259 --- /dev/null +++ b/npc/018-3_Cave/_import.txt @@ -0,0 +1,3 @@ +map: 018-3.gat +npc: npc/018-3_Cave/_warps.txt +npc: npc/018-3_Cave/_mobs.txt diff --git a/npc/018-3_Cave/_mobs.txt b/npc/018-3_Cave/_mobs.txt new file mode 100644 index 00000000..f18b58ab --- /dev/null +++ b/npc/018-3_Cave/_mobs.txt @@ -0,0 +1,7 @@ +// 018-3 Cave mobs + + + +018-3.gat,0,0,0 script Mob018-3 -1,{ + end; +} diff --git a/npc/018-3_Cave/_warps.txt b/npc/018-3_Cave/_warps.txt new file mode 100644 index 00000000..9228c2d6 --- /dev/null +++ b/npc/018-3_Cave/_warps.txt @@ -0,0 +1,23 @@ +// 018-3 Cave warps + +018-3.gat,100,131 warp toOutside 0,-1,018-1.gat,79,60 +018-3.gat,44,37 warp toOutside -1,-1,018-1.gat,112,62 +018-3.gat,49,98 warp toOutside -1,-1,018-1.gat,128,57 +018-3.gat,123,165 warp toOutside -1,-1,018-1.gat,98,43 +018-3.gat,70,104 warp toOutside -1,-1,018-1.gat,69,55 +018-3.gat,50,88 warp toCave -1,-1,013-3.gat,69,142 +018-3.gat,146,161 warp toOutside 0,-1,018-1.gat,153,47 +018-3.gat,64,102 warp toOutside -1,-1,018-1.gat,158,35 +018-3.gat,29,165 warp toOutside -1,-1,018-1.gat,162,45 +018-3.gat,97,69 warp toCave -1,-1,013-3.gat,178,43 +018-3.gat,27,54 warp toCave -1,-1,013-3.gat,169,44 +018-3.gat,134,61 warp toCave -1,-1,013-3.gat,152,29 +018-3.gat,177,54 warp toBasement -1,-1,018-2.gat,114,20 +018-3.gat,172,21 warp toCave -1,-1,013-3.gat,123,103 +018-3.gat,177,21 warp toCave -1,-1,013-3.gat,147,103 +018-3.gat,27,91 warp toCave -1,-1,013-3.gat,158,67 +018-3.gat,90,50 warp toCave -1,-1,013-3.gat,67,50 +018-3.gat,71,122 warp toCave -1,-1,013-3.gat,111,41 +018-3.gat,174,85 warp toCave -1,-1,013-3.gat,62,99 +018-3.gat,102,69 warp toCave -1,-1,013-3.gat,68,86 +018-3.gat,179,179 warp toCave -1,-1,009-3.gat,157,31 diff --git a/npc/019-1_Snow_field/_import.txt b/npc/019-1_Snow_field/_import.txt new file mode 100644 index 00000000..3db5780c --- /dev/null +++ b/npc/019-1_Snow_field/_import.txt @@ -0,0 +1,7 @@ +map: 019-1.gat +npc: npc/019-1_Snow_field/taro.txt +npc: npc/019-1_Snow_field/snowman.txt +npc: npc/019-1_Snow_field/santa.txt +npc: npc/019-1_Snow_field/monsters.txt +npc: npc/019-1_Snow_field/_warps.txt +npc: npc/019-1_Snow_field/_mobs.txt diff --git a/npc/019-1_Snow_field/_mobs.txt b/npc/019-1_Snow_field/_mobs.txt new file mode 100644 index 00000000..bdc591a7 --- /dev/null +++ b/npc/019-1_Snow_field/_mobs.txt @@ -0,0 +1,7 @@ +// 019-1 Snow field mobs + + + +019-1.gat,0,0,0 script Mob019-1 -1,{ + end; +} diff --git a/npc/019-1_Snow_field/_warps.txt b/npc/019-1_Snow_field/_warps.txt new file mode 100644 index 00000000..63b04561 --- /dev/null +++ b/npc/019-1_Snow_field/_warps.txt @@ -0,0 +1,3 @@ +// 019-1 Snow field warps + +019-1.gat,70,21 warp ToVillage 2,-1,020-1.gat,70,126 diff --git a/npc/019-1_Snow_field/monsters.txt b/npc/019-1_Snow_field/monsters.txt new file mode 100644 index 00000000..b4515cf2 --- /dev/null +++ b/npc/019-1_Snow_field/monsters.txt @@ -0,0 +1,20 @@ +// Map: new_10-1 +// This is the Snow Fields. +// + +new_10-1.gat,0,0,0,0 monster SantaSlime 1015,10,0,0,Mob10::OnSantaSlime +new_10-1.gat,0,0,0,0 monster RudolphSlime 1016,25,0,0,Mob10::OnRudolphSlime + +new_10-1.gat,0,0,0 script Mob10 -1,{ +OnSantaSlime: + set @mobID, 1015; + callfunc "MobPoints"; + break; + +OnRudolphSlime: + set @mobID, 1016; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/019-1_Snow_field/santa.txt b/npc/019-1_Snow_field/santa.txt new file mode 100644 index 00000000..c53ce55f --- /dev/null +++ b/npc/019-1_Snow_field/santa.txt @@ -0,0 +1,50 @@ +new_10-1.gat,74,75,0 script Santa 105,{ +if (ChristmasQuest2 == 1) goto done; +mes "[Santa]"; +mes "Ho ho ho."; +mes "Hello my young friend."; +mes "Would you like to help me?"; +next; +mes "Those monsters stolen my presents."; +mes "If you help me, I'll give you something very nice"; +next; +L_M: +menu "I have some present boxes",L_Y,"Hmm, see you later",L_N,"What you need exactly?",L_R; + L_Y: + mes "[Santa]"; + mes "Hmm, let me check what you have."; + next; + if(countitem(515)<25) goto NoItem; + if(countitem(516)<20) goto NoItem; + if(countitem(538)<5) goto NoItem; + mes "Great! Here is something for you"; + delitem 515,25; + delitem 516,20; + delitem 538,5; + getitem 563+rand(2),1; + set ChristmasQuest2,1; + close; + L_R: + mes "[Santa]"; + mes "I need:"; + mes "25 purple present boxes"; + mes "20 blue present boxes"; + mes "5 green present boxes"; + next; + goto L_M; + L_N: + mes "[Santa]"; + mes "Enjoy your holidays and I wish you an happy Christmas!"; + close; + NoItem: + mes "[Santa]"; + mes "You dont seem to have enough presents."; + close; + done: + mes "[Santa]"; + mes "All the children got their Christmas presents."; + mes "Thank you for your help."; + close; + +} + diff --git a/npc/019-1_Snow_field/snowman.txt b/npc/019-1_Snow_field/snowman.txt new file mode 100644 index 00000000..1e5ba412 --- /dev/null +++ b/npc/019-1_Snow_field/snowman.txt @@ -0,0 +1,52 @@ +new_10-1.gat,77,44,0 script Snowman 129,{ + if( ChristmasQuest == 1) goto L_Done; + + mes "[Snowman]"; + mes "\"Hello there young man."; + mes "Would you like a Christmas hat?\""; + next; + +L_Menu: + menu + "Yes", L_Sure, + "No", -, + "What do you need?", L_Need; + mes "[Snowman]"; + mes "\"Well, thats too bad, but make sure to have the holiday spirit!\""; + close; + +L_Sure: + mes "[Snowman]"; + mes "\"Hmm, let me see what you have.\""; + next; + if(countitem(510) < 15) goto L_NoItem; + if(countitem(509) < 10) goto L_NoItem; + if(countitem(502) < 5) goto L_NoItem; + delitem 510, 15; + delitem 509, 10; + delitem 502, 5; + mes "\"Here you go, enjoy your new hat!\""; + getitem 511, 1; + set ChristmasQuest, 1; + close; + +L_Need: + mes "[Snowman]"; + mes "\"For this special hat, I need a pint of magic and a little help."; + mes "Just kidding. I would like to get some food:"; + mes "15 Candies"; + mes "10 Chocolate bars"; + mes "5 Cactus potions\""; + next; + goto L_Menu; + +L_NoItem: + mes "[Snowman]"; + mes "\"Well, I am interested in some food and you don't have enought to get a hat.\""; + close; + +L_Done: + mes "[Snowman]"; + mes "\"Thank you for help!\""; + close; +} diff --git a/npc/019-1_Snow_field/taro.txt b/npc/019-1_Snow_field/taro.txt new file mode 100644 index 00000000..c5ab3289 --- /dev/null +++ b/npc/019-1_Snow_field/taro.txt @@ -0,0 +1,73 @@ +// Snow Taro + +new_10-1.gat,57,61,0 script Taro 114,{ + if (getequipid(equip_head) == 511 || getequipid(equip_head) == 1206) goto L_Santa; + if (getequipid(equip_head) == 633) goto L_Elf; + if (getequipid(equip_head) == 628) goto L_NearElf; + if (getequipid(equip_head) == 1204) goto L_Antlers; + if (getequipid(equip_head) == 1205) goto L_Tree; + + mes "[Taro]"; + mes "\"I'm scared!!!"; + mes "Take me back, pleeeease!!!\""; + next; + menu + "Ok", L_Warp, + "Just give me one more minute.", close; + close; + +L_Santa: + mes "[Taro]"; + mes "\"SANTA! Will you take me back home?\""; + next; + + menu + "Of course!", L_Warp, + "No, I need to finish some stuff up here.", -; + close; + +L_Elf: + mes "[Taro]"; + mes "\"Aren't you one of Santa's elves? Can you help me back home?\""; + next; + + menu + "Yes", L_Warp, + "No. I'm too busy.", -; + close; + +L_NearElf: + mes "[Taro]"; + mes "\"Aren't you one of Santa's elves? Oh, you're not. Will you help me get home anyways?\""; + next; + + menu + "Yes", L_Warp, + "No", -; + close; + +L_Antlers: + mes "[Taro]"; + mes "\"Mister reindeer? Will you take me home?\""; + next; + + menu + "Yes", L_Warp, + "No", -; + close; + +L_Tree: + mes "[Taro]"; + mes "\"Oh Christmas tree, I wish I could go home now!\""; + next; + + menu + "Let me take you", L_Warp, + "Sorry, I'm not a magic tree", -; + close; + +L_Warp: + warp "new_29-1.gat", 52, 45; + close; +} + diff --git a/npc/020-1/_import.txt b/npc/020-1/_import.txt new file mode 100644 index 00000000..bae7c91f --- /dev/null +++ b/npc/020-1/_import.txt @@ -0,0 +1,8 @@ +map: 020-1.gat +npc: npc/020-1/startrek.txt +npc: npc/020-1/soul-menhir.txt +npc: npc/020-1/sexchanger.txt +npc: npc/020-1/monsters.txt +npc: npc/020-1/amrak.txt +npc: npc/020-1/_warps.txt +npc: npc/020-1/_mobs.txt diff --git a/npc/020-1/_mobs.txt b/npc/020-1/_mobs.txt new file mode 100644 index 00000000..fa94c232 --- /dev/null +++ b/npc/020-1/_mobs.txt @@ -0,0 +1,7 @@ +// 020-1 mobs + + + +020-1.gat,0,0,0 script Mob020-1 -1,{ + end; +} diff --git a/npc/020-1/_warps.txt b/npc/020-1/_warps.txt new file mode 100644 index 00000000..36e0449a --- /dev/null +++ b/npc/020-1/_warps.txt @@ -0,0 +1,9 @@ +// 020-1 warps + +020-1.gat,76,38 warp ToIceCave 1,-1,020-3.gat,31,28 +020-1.gat,47,48 warp ToClothesShop -1,-1,020-2.gat,25,33 +020-1.gat,66,52 warp ToHouse -1,-1,020-2.gat,72,68 +020-1.gat,70,127 warp toSnowField 2,-1,019-1.gat,70,22 +020-1.gat,64,82 warp toInn -1,-1,020-2.gat,111,31 +020-1.gat,86,46 warp toWeaponShop -1,-1,020-2.gat,32,72 +020-1.gat,56,90 warp ToPotionsShop -1,-1,020-2.gat,66,25 diff --git a/npc/020-1/amrak.txt b/npc/020-1/amrak.txt new file mode 100644 index 00000000..b5b52962 --- /dev/null +++ b/npc/020-1/amrak.txt @@ -0,0 +1,17 @@ +// + +new_11-1.gat,66,90,0 script Amrak 103, { + mes "[Amrak]"; + mes "\"This... stone..."; + mes "I have never seen a mineral like this"; + mes "before."; + mes "And some strange... aura... seems to"; + mes "emit from it.\""; + next; + mes "[Amrak]"; + mes "\"Where did it come from?"; + mes "How did it got here?"; + mes "What's its purpose?"; + mes "I will solve its riddle for sure.\""; + close; +} diff --git a/npc/020-1/monsters.txt b/npc/020-1/monsters.txt new file mode 100644 index 00000000..92c95f81 --- /dev/null +++ b/npc/020-1/monsters.txt @@ -0,0 +1,14 @@ +// Map: new_11-1 +// This is Snow Town. +// + +new_11-1.gat,56,63,1,1 monster Maggot 1002,2,0,0,Mob11::OnMaggot + +new_11-1.gat,0,0,0 script Mob11 -1,{ +OnMaggot: + set @mobID, 1002; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/020-1/sexchanger.txt b/npc/020-1/sexchanger.txt new file mode 100644 index 00000000..b26f9e14 --- /dev/null +++ b/npc/020-1/sexchanger.txt @@ -0,0 +1,27 @@ +new_11-1.gat,50,49,0 script Xanith 136,{ + mes "[Xanith the Surgeon]"; + mes "\"No sex changes right now, sorry.\""; + close; + + mes "[Xanith the Surgeon]"; + mes "\"Are you tired of being what you are?\""; + next; + + mes "[Xanith the Surgeon]"; + mes "\"Would you maybe be interested in a sex change?\""; + next; + + mes "[Server]"; + mes "\"Warning: All the character in your account will get the sex changed.\""; + mes "\"Also you probably will require to restart the client to notice a change.\""; + next; + + menu + "Please do, my dear...", L_Change, + "Leave alone my family treasure!", -; + close; + +L_Change: +// changesex; + close; +} diff --git a/npc/020-1/soul-menhir.txt b/npc/020-1/soul-menhir.txt new file mode 100644 index 00000000..7769530c --- /dev/null +++ b/npc/020-1/soul-menhir.txt @@ -0,0 +1,6 @@ +new_11-1.gat,64,89,0 script Soul Menhir 144, { + set @map$, "new_11-1.gat"; + set @x, 64; + set @y, 90; + callfunc "SoulMenhir"; +} diff --git a/npc/020-1/startrek.txt b/npc/020-1/startrek.txt new file mode 100644 index 00000000..72afe5e3 --- /dev/null +++ b/npc/020-1/startrek.txt @@ -0,0 +1,18 @@ +new_11-1.gat,79,77,0 script Kirk 133,{ + mes "[Capt. Kirk]"; + mes "\"Spock: We're breaking the prime directive."; + mes "This is not the right way to have the first contact.\""; + close; +} + +new_11-1.gat,81,77,0 script Spock 134,{ + mes "[Spock]"; + mes "\"Live long and prosper captain.\""; + next; + + mes "[Spock]"; + mes "\"trr...Spock to Scotty..."; + mes "Beam me to the elves village..."; + mes "I will hide there.\""; + close; +} diff --git a/npc/020-2/_import.txt b/npc/020-2/_import.txt new file mode 100644 index 00000000..2190955a --- /dev/null +++ b/npc/020-2/_import.txt @@ -0,0 +1,5 @@ +map: 020-2.gat +npc: npc/020-2/shops.txt +npc: npc/020-2/furquest.txt +npc: npc/020-2/_warps.txt +npc: npc/020-2/_mobs.txt diff --git a/npc/020-2/_mobs.txt b/npc/020-2/_mobs.txt new file mode 100644 index 00000000..4289bb7e --- /dev/null +++ b/npc/020-2/_mobs.txt @@ -0,0 +1,7 @@ +// 020-2 mobs + + + +020-2.gat,0,0,0 script Mob020-2 -1,{ + end; +} diff --git a/npc/020-2/_warps.txt b/npc/020-2/_warps.txt new file mode 100644 index 00000000..2306316d --- /dev/null +++ b/npc/020-2/_warps.txt @@ -0,0 +1,7 @@ +// 020-2 warps + +020-2.gat,25,35 warp ToOutside -1,-1,020-1.gat,47,50 +020-2.gat,64,25 warp ToOutside -1,-1,020-1.gat,55,90 +020-2.gat,111,32 warp ToOutside -1,-1,020-1.gat,64,83 +020-2.gat,32,73 warp ToOutside -1,-1,020-1.gat,84,48 +020-2.gat,72,70 warp ToOutside -1,-1,020-1.gat,66,54 diff --git a/npc/020-2/furquest.txt b/npc/020-2/furquest.txt new file mode 100644 index 00000000..01b6c546 --- /dev/null +++ b/npc/020-2/furquest.txt @@ -0,0 +1,329 @@ +//################################################################################# +// Script by Shaili and QOAL +//################################################################################# + +// Santa's Inn - Agostine, The Legendary Tailor +new_13-1.gat,102,28,0 script Agostine 137, { + if (QUEST_WG_state == 1) goto L_State_0_3; + if (QUEST_WG_state == 2) goto L_State_1; + if (QUEST_WG_state == 3) goto L_State_2; + if (QUEST_WG_state == 4) goto L_State_4; + if (QUEST_WG_state == 5) goto L_State_4_success; + if (QUEST_WG_state == 6) goto L_State_6; + if (QUEST_WG_state == 7) goto L_State_11; + if (QUEST_WG_state == 8) goto L_State_12; + if (QUEST_WG_state >= 9) goto L_State_13; + + mes "\"This goes up, this goes left...\""; + next; + mes "\"Mmmm...?\""; + next; + mes "[Agostine, The Legendary Tailor]"; + mes "\"Oh, a customer! Let me introduce myself! My name is Agostine!"; + mes "Some people say that I am the best tailor in the world,"; + mes "but I think I am the best one in the universe!"; + mes "So, What can I do for you, my friend?\""; + next; + menu + "I want something new for my wardrobe!", L_State_0_1, + "Oh, nothing, thanks!", -; + close; + +// Quest #0 - Beginning - Needed: Iron Potion + +L_State_0_1: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Well.. you know... working so hard makes me so tired!"; + mes "Can you bring me something tasty to drink, my friend?\""; + next; + menu + "Sure, what kind of drink you like?", L_State_0_2, + "I'm not your waiter!", -; + close; + +L_State_0_2: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Here we do not have a bar. Let me taste different beverages."; + mes "I want something new to drink.\""; + next; + menu + "I'll bring you different drinks to try!", L_State_Accept, + "Maybe a bar will open soon, wait for it.", -; + close; + +L_State_Accept: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Thanks so much.\""; + set QUEST_WG_state, 1; + close; + +L_State_0_3: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Well, what have you brought me?\""; + next; + menu + "A Cactus Drink.", L_State_0_4, + "A Cactus Potion.", L_State_0_5, + "Some milk.", L_State_0_6, + "A pint of beer.", L_State_0_7, + "A Iron potion.", L_State_0_9, + "A Concentration Potion.", L_State_0_8, + "Nothing, at the moment.", -; + close; + +L_State_0_4: + mes "[Agostine, The Legendary Tailor]"; + mes "\"So, a Cactus Drink?\""; + if (countitem(501) < 1) goto L_State_neg; + next; + delitem 501, 1; + goto L_State_bad; + close; + +L_State_0_5: + mes "[Agostine, The Legendary Tailor]"; + mes "\"So, a Cactus Potion?\""; + if (countitem(502) < 1) goto L_State_neg; + next; + delitem 502, 1; + goto L_State_bad; + close; + +L_State_0_6: + mes "[Agostine, The Legendary Tailor]"; + mes "\"So, some milk for me?\""; + if (countitem(527) < 1) goto L_State_neg; + delitem 527, 1; + goto L_State_bad; + close; + +L_State_0_7: + mes "[Agostine, The Legendary Tailor]"; + mes "\"So, a beer?\""; + if (countitem(539) < 1) goto L_State_neg; + next; + delitem 539, 1; + goto L_State_bad; + close; + +L_State_0_8: + mes "[Agostine, The Legendary Tailor]"; + mes "\"So, a Concentration Potion?\""; + if (countitem(568) < 1) goto L_State_neg; + next; + delitem 568, 1; + goto L_State_bad; + close; + +L_State_0_9: + mes "[Agostine, The Legendary Tailor]"; + mes "\"So, an Iron Potion?\""; + if (countitem(567) < 1) goto L_State_neg; + next; + delitem 567, 1; + mes "Agostine looks pleased as he drinks the potion."; + next; + mes "[Agostine, The Legendary Tailor]"; + mes "\"Oh! This is damn good! I feel a new man, my friend!\""; + next; + set zeny, zeny+500; + mes "[Agostine, The Legendary Tailor]"; + mes "\"This is a little reward for your help. Take 500 GP, my friend!\""; + set QUEST_WG_state, 2; + close; + +L_State_neg: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Seems that you lied. You don't have the drink you told me.\""; + close; + +L_State_bad: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Well, I don't like it so much. Bring me something else.\""; + close; + +// First Quest: edited version of Forest Bow Quest - Needed: about 30 White Furs and 15.000 GP + +L_State_1: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Mmmm... Let me see... This year light colours are fashionable!"; + mes "Would you like a pair of snow-white Winter Gloves?\""; + next; + menu + "No, thanks. I love dark clothes...", -, + "You really can do this for me?", L_State_2; + close; + +L_State_2: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Well, Winter Gloves are so fashionable for their lovable fur!"; + mes "Only the best furs can be saw for these gloves!"; + mes "But, as you see, I am a tailor, not a hunter! So, why don't you bring me the best fluffy's fur you can see?\""; + set QUEST_WG_state, 3; + next; + menu + "You are crazy! I won't kill any animal for this!", -, + "Sure, I will be back soon!", L_State_3; + close; + +L_State_3: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Remember, I want the best of fur!\""; + set QUEST_WG_state, 4; + next; + close; + +L_State_4: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Oh, my friend! Have you brought me some good furs?\""; + if (countitem(611) < 1) close; + next; + menu + "Here, take a look!", L_State_4_try, + "Yes, but I need it for something else.", -; + close; + +L_State_4_try: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Let me see, my friend! It needs to be perfect for my gloves!\""; + mes "Agostine examines the patch of fur."; + next; + delitem 611, 1; + set @Temp1,rand(30); + if (@Temp1 == 0) goto L_State_4_success; + mes "Agostine throws away the white fur."; + next; + mes "[Agostine, The Legendary Tailor]"; + mes "\"It was awfully cut! You should pay more attention when you kill fluffies!\""; + if (countitem(611) < 1) close; + next; + menu + "Here I have another one!", L_State_4_try, + "Sorry, I will be careful...", -; + close; + +L_State_4_success: + mes "Agostine turns into a smile"; + next; + mes "[Agostine, The Legendary Tailor]"; + mes "\"It's perfect! Perfect! Good job, my friend! I will prepare your gloves right now!\""; + next; + set QUEST_WG_state, 5; + goto L_State_5; + +L_State_5: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Ehm, my friend, my work is not free. I need 15,000 GP for the work.\""; + next; + menu + "You are not a tailor, you are a thief!!", -, + "I think it's a reasonable price...", L_State_5_pay; + close; + +L_State_5_pay: + if (zeny < 15000) goto L_State_5_nocash; + set zeny, zeny-15000; + getitem 563, 1; + set QUEST_WG_state, 6; + mes "[Agostine, The Legendary Tailor]"; + mes "\"Here they are. You will have the more fashionable hands in the world!\""; + close; + +L_State_5_nocash: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Seems like you are out of cash. Come back when you have the money.\""; + close; + +L_State_6: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Oh, I remember you! Your gloves are sooo fashionable, my friend!"; + mes "Well, I have a good news for you. In this issue of 'TMW Fashion'"; + mes "I saw a pretty accessory, a pair of Furry Boots, my friend."; + mes "I can make your own pair, if you want!\""; + next; + menu + "It's a great idea!", L_State_10, + "I'm glamourous enough, thanks", -; + close; + +// Start of Second Quest: Furry Boots - Needed: About 30 White Furs, 1 pair of Boots and 15.000 GP +L_State_10: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Perfect! For satisfying your request I need another perfect White Fur"; + mes "and a pair of Boots, like those you can find in the mines."; + mes "They will make you lovely, my friend!\""; + set QUEST_WG_state, 7; + close; + +L_State_11: + mes "[Agostine, The Legendary Tailor]"; + mes "\"So, my friend, have you brought me the right Fur?\""; + if (countitem(611) < 1) close; + next; + menu + "Sure, I'm a fluffy hunter!", L_State_11_try, + "Not yet, sorry.", -; + close; + +L_State_11_try: + mes "[Agostine, The Legendary Tailor]"; + mes "\"I'd rather see the patch of fur, first.\""; + next; + mes "Agostine examines the patch of fur."; + next; + delitem 611, 1; + set @Temp2,rand(30); + if (@Temp2 == 0) goto L_State_11_success; + mes "Agostine rips the white fur."; + next; + mes "[Agostine, The Legendary Tailor]"; + mes "\"That fur was terrible. I won't work with it!\""; + if (countitem(611) < 1) close; + next; + menu + "Well, maybe this is better!", L_State_11_try, + "I will hunt other fluffies...", -; + close; + +L_State_11_success: + mes "Agostine turns into a smile"; + next; + mes "[Agostine, The Legendary Tailor]"; + mes "\"This one is good enough, my friend. Good job.\""; + delitem 611, 1; + set QUEST_WG_state, 8; + goto L_State_12; + +L_State_12: + mes "[Agostine, The Legendary Tailor]"; + mes "\"I need also a pair of Boots for the work."; + mes "And my payment, obviously. 15,000 GP is right.\""; + next; + menu + "Sure, here it is all.", L_State_12_pay, + "I missed something, I will be back soon!", -; + close; + +L_State_12_pay: + if (zeny < 15000) goto L_State_12_missing; + if (countitem(528) < 1) goto L_State_12_missing; + set zeny, zeny-15000; + delitem 528, 1; + getitem 655, 1; + set QUEST_WG_state, 9; + mes "[Agostine, The Legendary Tailor]"; + mes "\"Enjoy your new boots, my friend!\""; + close; + +L_State_12_missing: + mes "[Agostine, The Legendary Tailor]"; + mes "\"Seems you have forgotten something. Check your inventory"; + mes "and your pockets!\""; + close; + +L_State_13: + mes "[Agostine, The Legendary Tailor]"; + mes "\"You are so glamourous, my dear friend!"; + mes "I have done a very good job on your clothes!\""; + close; +} diff --git a/npc/020-2/shops.txt b/npc/020-2/shops.txt new file mode 100644 index 00000000..eb84181e --- /dev/null +++ b/npc/020-2/shops.txt @@ -0,0 +1,19 @@ +// Clothes shop +new_13-1.gat,27,26,0 shop Taylor 137,523:2000,524:1600,543:800,544:5000,546:10000,586:1000,610,2000 +// Weapons shop +new_13-1.gat,25,65,0 shop Bracco 135,1201:50,521:1000,522:100,545:20000,529:5 +// Potions shop +new_13-1.gat,75,26,0 shop Mede 103,501:50,502:70,567:500,568:500 + +// INN +new_13-1.gat,111,23,0 script Kane 120,{ + set @npcName$, "Kane the Inn Keeper"; + set @cost, 100; + + mes "[" + @npcName$ + "]"; + mes "\"Welcome strangers."; + mes "What? You've already seen an INN like mine?"; + mes "That's impossible!\""; + next; + callfunc "Inn"; +} diff --git a/npc/020-3_Ice_cave/_import.txt b/npc/020-3_Ice_cave/_import.txt new file mode 100644 index 00000000..98550f66 --- /dev/null +++ b/npc/020-3_Ice_cave/_import.txt @@ -0,0 +1,4 @@ +map: 020-3.gat +npc: npc/020-3_Ice_cave/monsters.txt +npc: npc/020-3_Ice_cave/_warps.txt +npc: npc/020-3_Ice_cave/_mobs.txt diff --git a/npc/020-3_Ice_cave/_mobs.txt b/npc/020-3_Ice_cave/_mobs.txt new file mode 100644 index 00000000..12acdfe0 --- /dev/null +++ b/npc/020-3_Ice_cave/_mobs.txt @@ -0,0 +1,19 @@ +// 020-3 Ice cave mobs + +020-3.gat,40,36,29,4 monster Bat 1017,1,0,0,Mob020-3::On1017 +020-3.gat,40,49,34,7 monster Violet 1018,1,0,0,Mob020-3::On1018 + + +020-3.gat,0,0,0 script Mob020-3 -1,{ +On1017: + set @mobID, 1017; + callfunc "MobPoints"; + break; + +On1018: + set @mobID, 1018; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/020-3_Ice_cave/_warps.txt b/npc/020-3_Ice_cave/_warps.txt new file mode 100644 index 00000000..51539391 --- /dev/null +++ b/npc/020-3_Ice_cave/_warps.txt @@ -0,0 +1,4 @@ +// 020-3 Ice cave warps + +020-3.gat,31,25 warp toOutside -1,-1,020-1.gat,76,37 +020-3.gat,25,22 warp toIceCave2 -1,-1,020-4.gat,36,34 diff --git a/npc/020-3_Ice_cave/monsters.txt b/npc/020-3_Ice_cave/monsters.txt new file mode 100644 index 00000000..b9dce5f5 --- /dev/null +++ b/npc/020-3_Ice_cave/monsters.txt @@ -0,0 +1,20 @@ +// Map: new_12-1 +// This is the Ice Cave below Snow Town. +// + +new_12-1.gat,0,0,0,0 monster Bat 1017,20,0,0,Mob12::OnBat +new_12-1.gat,0,0,0,0 monster Pinkie 1018,10,0,0,Mob12::OnPinkie + +new_12-1.gat,0,0,0 script Mob12 -1,{ +OnBat: + set @mobID, 1017; + callfunc "MobPoints"; + break; + +OnPinkie: + set @mobID, 1018; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/020-4_Ice_cave/_import.txt b/npc/020-4_Ice_cave/_import.txt new file mode 100644 index 00000000..925010e5 --- /dev/null +++ b/npc/020-4_Ice_cave/_import.txt @@ -0,0 +1,4 @@ +map: 020-4.gat +npc: npc/020-4_Ice_cave/monsters.txt +npc: npc/020-4_Ice_cave/_warps.txt +npc: npc/020-4_Ice_cave/_mobs.txt diff --git a/npc/020-4_Ice_cave/_mobs.txt b/npc/020-4_Ice_cave/_mobs.txt new file mode 100644 index 00000000..99c21fea --- /dev/null +++ b/npc/020-4_Ice_cave/_mobs.txt @@ -0,0 +1,7 @@ +// 020-4 Ice cave mobs + + + +020-4.gat,0,0,0 script Mob020-4 -1,{ + end; +} diff --git a/npc/020-4_Ice_cave/_warps.txt b/npc/020-4_Ice_cave/_warps.txt new file mode 100644 index 00000000..a02cadc4 --- /dev/null +++ b/npc/020-4_Ice_cave/_warps.txt @@ -0,0 +1,3 @@ +// 020-4 Ice cave warps + +020-4.gat,36,33 warp toIceCave1 -1,-1,020-3.gat,25,23 diff --git a/npc/020-4_Ice_cave/monsters.txt b/npc/020-4_Ice_cave/monsters.txt new file mode 100644 index 00000000..b1a238b3 --- /dev/null +++ b/npc/020-4_Ice_cave/monsters.txt @@ -0,0 +1,20 @@ +// Map: new_21-1 +// This is the second level of the Ice Cave beneath Snow Town. +// + +new_21-1.gat,0,0,0,0 monster Bat 1017,5,0,0,Mob21::OnBat +new_21-1.gat,0,0,0,0 monster Fluffy 1020,15,0,0,Mob21::OnFluffy + +new_21-1.gat,0,0,0 script Mob21 -1,{ +OnBat: + set @mobID, 1017; + callfunc "MobPoints"; + break; + +OnFluffy: + set @mobID, 1020; + callfunc "MobPoints"; + break; + + end; +} diff --git a/npc/021-1_Tulimshar/_import.txt b/npc/021-1_Tulimshar/_import.txt new file mode 100644 index 00000000..27ebcad7 --- /dev/null +++ b/npc/021-1_Tulimshar/_import.txt @@ -0,0 +1,3 @@ +map: 021-1.gat +npc: npc/021-1_Tulimshar/_warps.txt +npc: npc/021-1_Tulimshar/_mobs.txt diff --git a/npc/021-1_Tulimshar/_mobs.txt b/npc/021-1_Tulimshar/_mobs.txt new file mode 100644 index 00000000..e488bf54 --- /dev/null +++ b/npc/021-1_Tulimshar/_mobs.txt @@ -0,0 +1,7 @@ +// 021-1 Tulimshar mobs + + + +021-1.gat,0,0,0 script Mob021-1 -1,{ + end; +} diff --git a/npc/021-1_Tulimshar/_warps.txt b/npc/021-1_Tulimshar/_warps.txt new file mode 100644 index 00000000..7e907749 --- /dev/null +++ b/npc/021-1_Tulimshar/_warps.txt @@ -0,0 +1,2 @@ +// 021-1 Tulimshar warps + diff --git a/npc/_import.txt b/npc/_import.txt new file mode 100644 index 00000000..7a74dfed --- /dev/null +++ b/npc/_import.txt @@ -0,0 +1,41 @@ +import: npc/001-1_Tulimshar/_import.txt +import: npc/001-2_Tulimshar/_import.txt +import: npc/001-3_Tulimshar_arena/_import.txt +import: npc/002-1_Sandstorm/_import.txt +import: npc/002-3_Desert_mines/_import.txt +import: npc/002-4_Desert_mines/_import.txt +import: npc/003-1_Beach/_import.txt +import: npc/004-1_Beach/_import.txt +import: npc/005-1_Snake_desert/_import.txt +import: npc/005-3_Snake_pit/_import.txt +import: npc/006-1_Desert_mountains/_import.txt +import: npc/006-3_Desert_mountain_caves/_import.txt +import: npc/007-1_Woodland/_import.txt +import: npc/008-1_Hurnscald_outskirts/_import.txt +import: npc/009-1_Hurnscald/_import.txt +import: npc/009-2_Hurnscald/_import.txt +import: npc/009-3_Cave_beneath_Hurnscald/_import.txt +import: npc/010-1_Woodland/_import.txt +import: npc/010-2_Dimond's_Cove/_import.txt +import: npc/011-1_Woodland/_import.txt +import: npc/011-3_Hermit's_cave/_import.txt +import: npc/011-4_Lake_cave/_import.txt +import: npc/012-1_Woodland_Hills/_import.txt +import: npc/012-3_Cave/_import.txt +import: npc/013-1_Woodland_hills/_import.txt +import: npc/013-2_Magic_house/_import.txt +import: npc/013-3_Cave/_import.txt +import: npc/014-1_Woodland/_import.txt +import: npc/014-3_Cave/_import.txt +import: npc/015-1_Woodland/_import.txt +import: npc/016-1_Woodland/_import.txt +import: npc/017-1_Woodland_hills/_import.txt +import: npc/018-1_Woodland_mining_camp/_import.txt +import: npc/018-2_Woodland_minning_camp/_import.txt +import: npc/018-3_Cave/_import.txt +import: npc/019-1_Snow_field/_import.txt +import: npc/020-1/_import.txt +import: npc/020-2/_import.txt +import: npc/020-3_Ice_cave/_import.txt +import: npc/020-4_Ice_cave/_import.txt +import: npc/021-1_Tulimshar/_import.txt diff --git a/npc/new_1-1-western-desert/dark_mage.txt b/npc/new_1-1-western-desert/dark_mage.txt deleted file mode 100644 index 1bf8df8c..00000000 --- a/npc/new_1-1-western-desert/dark_mage.txt +++ /dev/null @@ -1,46 +0,0 @@ -new_1-1.gat,24,24,0 script SoulThief 103,{ - - if (class == 1) goto L_Soul; - mes "[Dark Mage]"; - mes "\"Psss hey would you like to have more power?\""; - next; - - menu - "You fool, that's not possible", -, - "I'm listening...", L_Go; - close; - -L_Go: - mes "[Dark Mage]"; - mes "\"I can give you ancient powers that will let you become the greatest warrior in The Mana World, or the best merchant."; - mes "But everything has got his price...\""; - next; - - mes "[Dark Mage]"; - mes "\"Oh nothing important nor expensive."; - mes "Just your soul!\""; - next; - - menu - "My soul? Here it is", L_Soul, - "I need a better explanation!", -; - - mes "[Dark Mage]"; - mes "Well there's a very small possibility that your player will be translated into the new server."; - mes "I said a very, very small possibility."; - mes "Players without a soul instead will be lost forever..."; - mes "Come on, you won't loose that much!\""; - next; - - menu - "Hmmm ok, I guess you can take it.", L_Soul, - "Maybe I'll think about it a bit more", -; - mes "\"I know you'll come here again when you'll get killed by a maggot, begging me to help you\""; - close; - -L_Soul: - mes "[Dark Mage]"; - mes "\"Hrhrhr, your soul is finally mine!\""; - jobchange 1; - close; -} \ No newline at end of file diff --git a/npc/new_1-1-western-desert/merchant.txt b/npc/new_1-1-western-desert/merchant.txt deleted file mode 100644 index d01a9164..00000000 --- a/npc/new_1-1-western-desert/merchant.txt +++ /dev/null @@ -1 +0,0 @@ -new_1-1.gat,19,99,0 shop Ishyah 109,525:800,531:3000,530:8000,1199:3,603:-1 diff --git a/npc/new_1-1-western-desert/monsters.txt b/npc/new_1-1-western-desert/monsters.txt deleted file mode 100644 index a98c8406..00000000 --- a/npc/new_1-1-western-desert/monsters.txt +++ /dev/null @@ -1,24 +0,0 @@ -// Map: new_1-1 -// This is the Desert (Sandstorm) south of Tulimshar. -// - -new_1-1.gat,0,0,0,0 monster GreenSlime 1005,50,0,0,Mob1::OnGreenSlime -new_1-1.gat,0,0,0,0 monster GiantMaggot 1006,30,0,0,Mob1::OnGiantMaggot -new_1-1.gat,0,0,0,0 monster RedScorpion 1004,20,0,0,Mob1::OnRedScorpion - -new_1-1.gat,0,0,0 script Mob1 -1,{ -OnGreenSlime: - set @mobID, 1005; - callfunc "MobPoints"; - break; - -OnGiantMaggot: - set @mobID, 1006; - callfunc "MobPoints"; - break; - -OnRedScorpion: - set @mobID, 1004; - callfunc "MobPoints"; - break; -} diff --git a/npc/new_1-1-western-desert/nomads.txt b/npc/new_1-1-western-desert/nomads.txt deleted file mode 100644 index 13edea35..00000000 --- a/npc/new_1-1-western-desert/nomads.txt +++ /dev/null @@ -1,14 +0,0 @@ -new_1-1.gat,15,67,0 script Samuel 132,{ - mes "[Samuel the Nomad]"; - mes "\"This is really a nice place.\""; - - mes "Don't you think so?\""; - close; -} - -new_1-1.gat,18,68,0 script Elijah 128,{ - mes "[Elijah the Nomad]"; - mes "\"If I only had a tent...\""; - - close; -} diff --git a/npc/new_1-1-western-desert/passages.txt b/npc/new_1-1-western-desert/passages.txt deleted file mode 100644 index 61212ec0..00000000 --- a/npc/new_1-1-western-desert/passages.txt +++ /dev/null @@ -1,5 +0,0 @@ -new_1-1.gat,19,94 warp caveentrance 1,1,new_2-1.gat,37,31 -new_1-1.gat,111,79 warp eastdesert 2,2,new_7-1.gat,23,40 -new_1-1.gat,11,66 warp tobeach 1,2,new_15-1.gat,168,76 -new_1-1.gat,56,12 warp totown 5,1,new_3-1.gat,44,80 -new_1-1.gat,27,12 warp tobeach 3,1,new_34-1.gat,84,111 diff --git a/npc/new_1-1-western-desert/rogue.txt b/npc/new_1-1-western-desert/rogue.txt deleted file mode 100644 index 87ec45fa..00000000 --- a/npc/new_1-1-western-desert/rogue.txt +++ /dev/null @@ -1,84 +0,0 @@ -new_1-1.gat,22,21,0 script Malivox 103,{ - -// if (ResetA_charstate == 1) goto L_Multiple; - -// set @cost, 10000000 / ($ResetA_uses + 1); - - set @cost, baselevel * 100; - - mes "[Rogue Mage]"; - mes "\"I have come across a spell that will"; - mes "reset your status points."; - mes "Normally this spell is expensive, but"; - mes "due to an unusual constellation of the"; - mes "stars I can cast it very cheaply!"; - mes "For you it will cost only "+@cost+" gp.\""; - next; - - menu "Reset my stats",-,"Forget about it",L_Pass; - - if (zeny<@cost) goto L_NoMoney; - -// set $ResetA_uses, $ResetA_uses + 1; -// set ResetA_charstate, 1; - -L_Reset: - - set zeny, zeny-@cost; - - resetstatus; - - // even though statusup2 takes a number, it does not - // decrease chars statspoint, hence the repeating. - - statusup bStr; - statusup bStr; - statusup bStr; - statusup bStr; - - statusup bvit; - statusup bvit; - statusup bvit; - statusup bvit; - - statusup bInt; - statusup bInt; - statusup bInt; - statusup bInt; - - statusup bAgi; - statusup bAgi; - statusup bAgi; - statusup bAgi; - - statusup bDex; - statusup bDex; - statusup bDex; - statusup bDex; - - statusup bLuk; - statusup bLuk; - statusup bLuk; - statusup bLuk; - - mes "[Rogue Mage]"; - mes "\"There you are."; - mes ""; - mes "Good as new!\""; - next; - close; - -L_Pass: - mes "[Rogue Mage]"; - mes "\"Very well then, see you.\""; - next; - close; - -L_NoMoney: - mes "[Rogue Mage]"; - mes "\"Oh dear, the price cannot be bargained."; - mes ""; - mes "Perhaps you can borrow from a friend?\""; - next; - close; -} diff --git a/npc/new_10-1-xmas/monsters.txt b/npc/new_10-1-xmas/monsters.txt deleted file mode 100644 index b4515cf2..00000000 --- a/npc/new_10-1-xmas/monsters.txt +++ /dev/null @@ -1,20 +0,0 @@ -// Map: new_10-1 -// This is the Snow Fields. -// - -new_10-1.gat,0,0,0,0 monster SantaSlime 1015,10,0,0,Mob10::OnSantaSlime -new_10-1.gat,0,0,0,0 monster RudolphSlime 1016,25,0,0,Mob10::OnRudolphSlime - -new_10-1.gat,0,0,0 script Mob10 -1,{ -OnSantaSlime: - set @mobID, 1015; - callfunc "MobPoints"; - break; - -OnRudolphSlime: - set @mobID, 1016; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_10-1-xmas/passages.txt b/npc/new_10-1-xmas/passages.txt deleted file mode 100644 index 6a879b95..00000000 --- a/npc/new_10-1-xmas/passages.txt +++ /dev/null @@ -1 +0,0 @@ -new_10-1.gat,69,19 warp tovillage 4,1,new_11-1.gat,69,127 \ No newline at end of file diff --git a/npc/new_10-1-xmas/santa.txt b/npc/new_10-1-xmas/santa.txt deleted file mode 100644 index c53ce55f..00000000 --- a/npc/new_10-1-xmas/santa.txt +++ /dev/null @@ -1,50 +0,0 @@ -new_10-1.gat,74,75,0 script Santa 105,{ -if (ChristmasQuest2 == 1) goto done; -mes "[Santa]"; -mes "Ho ho ho."; -mes "Hello my young friend."; -mes "Would you like to help me?"; -next; -mes "Those monsters stolen my presents."; -mes "If you help me, I'll give you something very nice"; -next; -L_M: -menu "I have some present boxes",L_Y,"Hmm, see you later",L_N,"What you need exactly?",L_R; - L_Y: - mes "[Santa]"; - mes "Hmm, let me check what you have."; - next; - if(countitem(515)<25) goto NoItem; - if(countitem(516)<20) goto NoItem; - if(countitem(538)<5) goto NoItem; - mes "Great! Here is something for you"; - delitem 515,25; - delitem 516,20; - delitem 538,5; - getitem 563+rand(2),1; - set ChristmasQuest2,1; - close; - L_R: - mes "[Santa]"; - mes "I need:"; - mes "25 purple present boxes"; - mes "20 blue present boxes"; - mes "5 green present boxes"; - next; - goto L_M; - L_N: - mes "[Santa]"; - mes "Enjoy your holidays and I wish you an happy Christmas!"; - close; - NoItem: - mes "[Santa]"; - mes "You dont seem to have enough presents."; - close; - done: - mes "[Santa]"; - mes "All the children got their Christmas presents."; - mes "Thank you for your help."; - close; - -} - diff --git a/npc/new_10-1-xmas/snowman.txt b/npc/new_10-1-xmas/snowman.txt deleted file mode 100644 index 1e5ba412..00000000 --- a/npc/new_10-1-xmas/snowman.txt +++ /dev/null @@ -1,52 +0,0 @@ -new_10-1.gat,77,44,0 script Snowman 129,{ - if( ChristmasQuest == 1) goto L_Done; - - mes "[Snowman]"; - mes "\"Hello there young man."; - mes "Would you like a Christmas hat?\""; - next; - -L_Menu: - menu - "Yes", L_Sure, - "No", -, - "What do you need?", L_Need; - mes "[Snowman]"; - mes "\"Well, thats too bad, but make sure to have the holiday spirit!\""; - close; - -L_Sure: - mes "[Snowman]"; - mes "\"Hmm, let me see what you have.\""; - next; - if(countitem(510) < 15) goto L_NoItem; - if(countitem(509) < 10) goto L_NoItem; - if(countitem(502) < 5) goto L_NoItem; - delitem 510, 15; - delitem 509, 10; - delitem 502, 5; - mes "\"Here you go, enjoy your new hat!\""; - getitem 511, 1; - set ChristmasQuest, 1; - close; - -L_Need: - mes "[Snowman]"; - mes "\"For this special hat, I need a pint of magic and a little help."; - mes "Just kidding. I would like to get some food:"; - mes "15 Candies"; - mes "10 Chocolate bars"; - mes "5 Cactus potions\""; - next; - goto L_Menu; - -L_NoItem: - mes "[Snowman]"; - mes "\"Well, I am interested in some food and you don't have enought to get a hat.\""; - close; - -L_Done: - mes "[Snowman]"; - mes "\"Thank you for help!\""; - close; -} diff --git a/npc/new_10-1-xmas/taro.txt b/npc/new_10-1-xmas/taro.txt deleted file mode 100644 index c5ab3289..00000000 --- a/npc/new_10-1-xmas/taro.txt +++ /dev/null @@ -1,73 +0,0 @@ -// Snow Taro - -new_10-1.gat,57,61,0 script Taro 114,{ - if (getequipid(equip_head) == 511 || getequipid(equip_head) == 1206) goto L_Santa; - if (getequipid(equip_head) == 633) goto L_Elf; - if (getequipid(equip_head) == 628) goto L_NearElf; - if (getequipid(equip_head) == 1204) goto L_Antlers; - if (getequipid(equip_head) == 1205) goto L_Tree; - - mes "[Taro]"; - mes "\"I'm scared!!!"; - mes "Take me back, pleeeease!!!\""; - next; - menu - "Ok", L_Warp, - "Just give me one more minute.", close; - close; - -L_Santa: - mes "[Taro]"; - mes "\"SANTA! Will you take me back home?\""; - next; - - menu - "Of course!", L_Warp, - "No, I need to finish some stuff up here.", -; - close; - -L_Elf: - mes "[Taro]"; - mes "\"Aren't you one of Santa's elves? Can you help me back home?\""; - next; - - menu - "Yes", L_Warp, - "No. I'm too busy.", -; - close; - -L_NearElf: - mes "[Taro]"; - mes "\"Aren't you one of Santa's elves? Oh, you're not. Will you help me get home anyways?\""; - next; - - menu - "Yes", L_Warp, - "No", -; - close; - -L_Antlers: - mes "[Taro]"; - mes "\"Mister reindeer? Will you take me home?\""; - next; - - menu - "Yes", L_Warp, - "No", -; - close; - -L_Tree: - mes "[Taro]"; - mes "\"Oh Christmas tree, I wish I could go home now!\""; - next; - - menu - "Let me take you", L_Warp, - "Sorry, I'm not a magic tree", -; - close; - -L_Warp: - warp "new_29-1.gat", 52, 45; - close; -} - diff --git a/npc/new_10-1-xmas/xmas1.txt b/npc/new_10-1-xmas/xmas1.txt deleted file mode 100644 index 814dd9cc..00000000 --- a/npc/new_10-1-xmas/xmas1.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_1-1.gat,41,60,0 script Xmas1 105,{ - if(XMASQUEST1 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST1,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas10.txt b/npc/new_10-1-xmas/xmas10.txt deleted file mode 100644 index 8ba50ae0..00000000 --- a/npc/new_10-1-xmas/xmas10.txt +++ /dev/null @@ -1,243 +0,0 @@ -new_2-1.gat,57,64,0 script Xmas10 105,{ - if(XMASQUEST10 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas. The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me. The kind will depend on whether you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST10,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas11.txt b/npc/new_10-1-xmas/xmas11.txt deleted file mode 100644 index 212a5225..00000000 --- a/npc/new_10-1-xmas/xmas11.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_3-1.gat,73,51,0 script Xmas11 105,{ - if(XMASQUEST11 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST11,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas12.txt b/npc/new_10-1-xmas/xmas12.txt deleted file mode 100644 index a8527eaf..00000000 --- a/npc/new_10-1-xmas/xmas12.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_4-1.gat,26,51,0 script Xmas12 105,{ - if(XMASQUEST12 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST12,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas13.txt b/npc/new_10-1-xmas/xmas13.txt deleted file mode 100644 index 534403da..00000000 --- a/npc/new_10-1-xmas/xmas13.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_5-1.gat,68,95,0 script Xmas13 105,{ - if(XMASQUEST13 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST13,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas14.txt b/npc/new_10-1-xmas/xmas14.txt deleted file mode 100644 index 2f1269a4..00000000 --- a/npc/new_10-1-xmas/xmas14.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_7-1.gat,46,46,0 script Xmas14 105,{ - if(XMASQUEST14 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST14,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas15.txt b/npc/new_10-1-xmas/xmas15.txt deleted file mode 100644 index 32dc490c..00000000 --- a/npc/new_10-1-xmas/xmas15.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_6-1.gat,112,54,0 script Xmas15 105,{ - if(XMASQUEST15 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST15,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas16.txt b/npc/new_10-1-xmas/xmas16.txt deleted file mode 100644 index c072684b..00000000 --- a/npc/new_10-1-xmas/xmas16.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_8-1.gat,37,24,0 script Xmas16 105,{ - if(XMASQUEST16 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST16,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas17.txt b/npc/new_10-1-xmas/xmas17.txt deleted file mode 100644 index 292744ef..00000000 --- a/npc/new_10-1-xmas/xmas17.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_9-1.gat,106,58,0 script Xmas17 105,{ - if(XMASQUEST17 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST17,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas18.txt b/npc/new_10-1-xmas/xmas18.txt deleted file mode 100644 index e78e1b0c..00000000 --- a/npc/new_10-1-xmas/xmas18.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_1-1.gat,97,18,0 script Xmas18 105,{ - if(XMASQUEST18 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST18,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas19.txt b/npc/new_10-1-xmas/xmas19.txt deleted file mode 100644 index 3c60aab7..00000000 --- a/npc/new_10-1-xmas/xmas19.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_11-1.gat,90,83,0 script Xmas19 105,{ - if(XMASQUEST19 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST19,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas2.txt b/npc/new_10-1-xmas/xmas2.txt deleted file mode 100644 index bba2b0c8..00000000 --- a/npc/new_10-1-xmas/xmas2.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_10-1.gat,99,42,0 script Xmas2 105,{ - if(XMASQUEST2 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST2,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas20.txt b/npc/new_10-1-xmas/xmas20.txt deleted file mode 100644 index 0bc045db..00000000 --- a/npc/new_10-1-xmas/xmas20.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_3-1.gat,55,28,0 script Xmas20 105,{ - if(XMASQUEST20 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST20,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas3.txt b/npc/new_10-1-xmas/xmas3.txt deleted file mode 100644 index 28dbc605..00000000 --- a/npc/new_10-1-xmas/xmas3.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_11-1.gat,67,62,0 script Xmas3 105,{ - if(XMASQUEST3 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST3,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas4.txt b/npc/new_10-1-xmas/xmas4.txt deleted file mode 100644 index c9f13e3e..00000000 --- a/npc/new_10-1-xmas/xmas4.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_12-1.gat,24,50,0 script Xmas4 105,{ - if(XMASQUEST4 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST4,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas5.txt b/npc/new_10-1-xmas/xmas5.txt deleted file mode 100644 index 7269717c..00000000 --- a/npc/new_10-1-xmas/xmas5.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_13-1.gat,22,32,0 script Xmas5 105,{ - if(XMASQUEST5 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST5,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas6.txt b/npc/new_10-1-xmas/xmas6.txt deleted file mode 100644 index da47ca1f..00000000 --- a/npc/new_10-1-xmas/xmas6.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_14-1.gat,92,37,0 script Xmas6 105,{ - if(XMASQUEST6 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST6,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas7.txt b/npc/new_10-1-xmas/xmas7.txt deleted file mode 100644 index 7bcc2983..00000000 --- a/npc/new_10-1-xmas/xmas7.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_15-1.gat,130,66,0 script Xmas7 105,{ - if(XMASQUEST7 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST7,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas8.txt b/npc/new_10-1-xmas/xmas8.txt deleted file mode 100644 index 47752239..00000000 --- a/npc/new_10-1-xmas/xmas8.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_16-1.gat,125,37,0 script Xmas8 105,{ - if(XMASQUEST8 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST8,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_10-1-xmas/xmas9.txt b/npc/new_10-1-xmas/xmas9.txt deleted file mode 100644 index f27629d8..00000000 --- a/npc/new_10-1-xmas/xmas9.txt +++ /dev/null @@ -1,246 +0,0 @@ -new_17-1.gat,71,34,0 script Xmas9 105,{ - if(XMASQUEST9 == 1) goto L_only_once; - mes "[Helper Santa]"; - mes "It's Christmas."; - mes "The time for gifts and family reunions"; - next; - - mes "[Helper Santa]"; - mes "You get a gift from me."; - mes "The kind will depend on whether"; - mes "you've been nice or naughty."; - next; - - menu "Want one?",L_nicenaughty,"No thanks.",L_no; - -L_nicenaughty: - set XMASQUEST9,1; - mes "[Helper Santa]"; - mes "In my book you're marked as..."; - next; - set @TEMP,rand(9); - if(@TEMP == 6) goto L_naughty; - goto L_nice; - -L_nice: - mes "[Helper Santa]"; - mes "...nice!"; - set @TEMP,rand(17); - next; - if(@TEMP == 0) goto L_nice_0; - if(@TEMP == 1) goto L_nice_1; - if(@TEMP == 2) goto L_nice_2; - if(@TEMP == 3) goto L_nice_3; - if(@TEMP == 4) goto L_nice_4; - if(@TEMP == 5) goto L_nice_5; - if(@TEMP == 6) goto L_nice_6; - if(@TEMP == 7) goto L_nice_7; - if(@TEMP == 8) goto L_nice_8; - if(@TEMP == 9) goto L_nice_9; - if(@TEMP == 10) goto L_nice_10; - if(@TEMP == 11) goto L_nice_11; - if(@TEMP == 12) goto L_nice_12; - if(@TEMP == 13) goto L_nice_13; - if(@TEMP == 14) goto L_nice_14; - if(@TEMP == 15) goto L_nice_15; - if(@TEMP == 16) goto L_nice_16; - if(@TEMP == 17) goto L_nice_17; - -L_naughty: - mes "[Helper Santa]"; - mes "...naughty!"; - set @TEMP,rand(6); - next; - if(@TEMP == 0) goto L_naughty_0; - if(@TEMP == 1) goto L_naughty_1; - if(@TEMP == 2) goto L_naughty_2; - if(@TEMP == 3) goto L_naughty_3; - if(@TEMP == 4) goto L_naughty_4; - if(@TEMP == 5) goto L_naughty_5; - if(@TEMP == 6) goto L_naughty_6; - -L_naughty_0: - mes "[Helper Santa]"; - mes "Ho ho ho!"; - mes "I borrowed some of your money for"; - mes "my present budget this year."; - set Zeny,Zeny-rand(500,1500); - close; - -L_naughty_1: - mes "[Helper Santa]"; - mes "You will get a spanking"; - next; - mes "[Helper Santa]"; - mes "Remember to be nice to people!"; - gmcommand strcharinfo(0)+":@die "; - close; - -L_naughty_2: - mes "[Helper Santa]"; - mes "But I won't mind!"; - mes "Have a char reset as a present." - next; - mes "[Helper Santa]"; - mes "Abracadabra!"; - gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); - gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); - close; - -L_naughty_3: - mes "[Helper Santa]"; - mes "You will now get randomly warped!"; - next; - gmcommand strcharinfo(0)+":@jump "; - mes "[Helper Santa]"; - mes "Merry Christmas!"; - close; - -L_naughty_4: - mes "[Helper Santa]"; - mes "Your sex will now change!"; - mes "You always get naughty things for naughty things."; - mes "It's karma!"; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); - close; - -L_naughty_5: - mes "[Helper Santa]"; - mes "I'll now kill all monsters on this map."; - next; - mes "[Helper Santa]"; - mes "Done!"; - gmcommand strcharinfo(0)+":@killmonster2 "; - close; - -L_naughty_6: - mes "[Helper Santa]"; - mes "I'll diss you around the server."; - next; - mes "[Helper Santa]"; - mes "Ho ho ho!"; - gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; - close; - -L_nice_0: - mes "[Helper Santa]"; - mes "So you wanted money?."; - set Zeny,Zeny+rand(1,1000000); - close; - -L_nice_1: - mes "[Helper Santa]"; - mes "These hats are really hot now!"; - getitem 1205,1; - close; - -L_nice_2: - mes "[Helper Santa]"; - mes "Axe Hats are always on the cutting edge!"; - getitem 616,1; - close; - -L_nice_3: - mes "[Helper Santa]"; - mes "You just won a Pirate Hat!"; - getitem 617,1; - close; - -L_nice_4: - mes "[Helper Santa]"; - mes "Now you can Goggle all you want."; - getitem 618,1; - close; - -L_nice_5: - mes "[Helper Santa]"; - mes "Let's Goggle all night long!"; - getitem 619,1; - close; - -L_nice_6: - mes "[Helper Santa]"; - mes "You just won a Circlet!"; - getitem 620,1; - close; - -L_nice_7: - mes "[Helper Santa]"; - mes "This patch is not an eyesore."; - getitem 621,1; - close; - -L_nice_8: - mes "[Helper Santa]"; - mes "Bandana time!"; - getitem 622,1; - close; - -L_nice_9: - mes "[Helper Santa]"; - mes "5000 exp!"; - getexp 5000,0; - close; - -L_nice_10: - mes "[Helper Santa]"; - mes "Soft packages are always nice."; - getitem 1202,1; - close; - -L_nice_11: - mes "[Helper Santa]"; - mes "Chuck Norris style!"; - getitem 1203,1; - close; - -L_nice_12: - mes "[Helper Santa]"; - mes "Even Rudolph would be envious now."; - getitem 1204,1; - close; - -L_nice_13: - mes "[Helper Santa]"; - mes "Now you can become a Santa too!"; - getitem 1206,1; - close; - -L_nice_14: - mes "[Helper Santa]"; - mes "Now you can became a Santa too!"; - getitem 511,1; - close; - -L_nice_15: - mes "[Helper Santa]"; - mes "These gloves should keep you warm."; - getitem 564,1; - close; - -L_nice_16: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 624,1; - close; - -L_nice_17: - mes "[Helper Santa]"; - mes "This should keep you warm."; - getitem 564,1; - close; - -L_only_once: - mes "[Helper Santa]"; - mes "You already got one from me."; - close; - -L_no: - mes "[Helper Santa]"; - mes "You're not in the Christmas spirit?"; - mes "I hope you get into this gift extravaganza soon."; - close; -} diff --git a/npc/new_11-1-snow-village/amrak.txt b/npc/new_11-1-snow-village/amrak.txt deleted file mode 100644 index b5b52962..00000000 --- a/npc/new_11-1-snow-village/amrak.txt +++ /dev/null @@ -1,17 +0,0 @@ -// - -new_11-1.gat,66,90,0 script Amrak 103, { - mes "[Amrak]"; - mes "\"This... stone..."; - mes "I have never seen a mineral like this"; - mes "before."; - mes "And some strange... aura... seems to"; - mes "emit from it.\""; - next; - mes "[Amrak]"; - mes "\"Where did it come from?"; - mes "How did it got here?"; - mes "What's its purpose?"; - mes "I will solve its riddle for sure.\""; - close; -} diff --git a/npc/new_11-1-snow-village/monsters.txt b/npc/new_11-1-snow-village/monsters.txt deleted file mode 100644 index 92c95f81..00000000 --- a/npc/new_11-1-snow-village/monsters.txt +++ /dev/null @@ -1,14 +0,0 @@ -// Map: new_11-1 -// This is Snow Town. -// - -new_11-1.gat,56,63,1,1 monster Maggot 1002,2,0,0,Mob11::OnMaggot - -new_11-1.gat,0,0,0 script Mob11 -1,{ -OnMaggot: - set @mobID, 1002; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_11-1-snow-village/passages.txt b/npc/new_11-1-snow-village/passages.txt deleted file mode 100644 index b42939ec..00000000 --- a/npc/new_11-1-snow-village/passages.txt +++ /dev/null @@ -1,13 +0,0 @@ -new_11-1.gat,76,38 warp tocave 0,0,new_12-1.gat,31,28 -new_11-1.gat,69,128 warp tomap 3,0,new_10-1.gat,69,21 - -// outside -> Clothes shop -new_11-1.gat,47,49 warp inside1 0,0,new_13-1.gat,25,33 -// outside -> Potions shop -new_11-1.gat,57,90 warp inside2 0,0,new_13-1.gat,66,25 -// outside -> INN -new_11-1.gat,64,83 warp inside3 0,0,new_13-1.gat,111,30 -// outside -> Weapons shop -new_11-1.gat,87,47 warp inside4 0,0,new_13-1.gat,32,71 -// outside -> House -new_11-1.gat,66,53 warp inside5 0,0,new_13-1.gat,72,68 \ No newline at end of file diff --git a/npc/new_11-1-snow-village/sexchanger.txt b/npc/new_11-1-snow-village/sexchanger.txt deleted file mode 100644 index b26f9e14..00000000 --- a/npc/new_11-1-snow-village/sexchanger.txt +++ /dev/null @@ -1,27 +0,0 @@ -new_11-1.gat,50,49,0 script Xanith 136,{ - mes "[Xanith the Surgeon]"; - mes "\"No sex changes right now, sorry.\""; - close; - - mes "[Xanith the Surgeon]"; - mes "\"Are you tired of being what you are?\""; - next; - - mes "[Xanith the Surgeon]"; - mes "\"Would you maybe be interested in a sex change?\""; - next; - - mes "[Server]"; - mes "\"Warning: All the character in your account will get the sex changed.\""; - mes "\"Also you probably will require to restart the client to notice a change.\""; - next; - - menu - "Please do, my dear...", L_Change, - "Leave alone my family treasure!", -; - close; - -L_Change: -// changesex; - close; -} diff --git a/npc/new_11-1-snow-village/soul-menhir.txt b/npc/new_11-1-snow-village/soul-menhir.txt deleted file mode 100644 index 7769530c..00000000 --- a/npc/new_11-1-snow-village/soul-menhir.txt +++ /dev/null @@ -1,6 +0,0 @@ -new_11-1.gat,64,89,0 script Soul Menhir 144, { - set @map$, "new_11-1.gat"; - set @x, 64; - set @y, 90; - callfunc "SoulMenhir"; -} diff --git a/npc/new_11-1-snow-village/startrek.txt b/npc/new_11-1-snow-village/startrek.txt deleted file mode 100644 index 72afe5e3..00000000 --- a/npc/new_11-1-snow-village/startrek.txt +++ /dev/null @@ -1,18 +0,0 @@ -new_11-1.gat,79,77,0 script Kirk 133,{ - mes "[Capt. Kirk]"; - mes "\"Spock: We're breaking the prime directive."; - mes "This is not the right way to have the first contact.\""; - close; -} - -new_11-1.gat,81,77,0 script Spock 134,{ - mes "[Spock]"; - mes "\"Live long and prosper captain.\""; - next; - - mes "[Spock]"; - mes "\"trr...Spock to Scotty..."; - mes "Beam me to the elves village..."; - mes "I will hide there.\""; - close; -} diff --git a/npc/new_12-1-ice-cave/monsters.txt b/npc/new_12-1-ice-cave/monsters.txt deleted file mode 100644 index b9dce5f5..00000000 --- a/npc/new_12-1-ice-cave/monsters.txt +++ /dev/null @@ -1,20 +0,0 @@ -// Map: new_12-1 -// This is the Ice Cave below Snow Town. -// - -new_12-1.gat,0,0,0,0 monster Bat 1017,20,0,0,Mob12::OnBat -new_12-1.gat,0,0,0,0 monster Pinkie 1018,10,0,0,Mob12::OnPinkie - -new_12-1.gat,0,0,0 script Mob12 -1,{ -OnBat: - set @mobID, 1017; - callfunc "MobPoints"; - break; - -OnPinkie: - set @mobID, 1018; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_12-1-ice-cave/passages.txt b/npc/new_12-1-ice-cave/passages.txt deleted file mode 100644 index 3db46ebe..00000000 --- a/npc/new_12-1-ice-cave/passages.txt +++ /dev/null @@ -1,2 +0,0 @@ -new_12-1.gat,31,25 warp totown 2,1,new_11-1.gat,76,36 -new_12-1.gat,26,23 warp toice2 1,0,new_21-1.gat,37,36 diff --git a/npc/new_13-1-snow-village-shops/furquest.txt b/npc/new_13-1-snow-village-shops/furquest.txt deleted file mode 100644 index 01b6c546..00000000 --- a/npc/new_13-1-snow-village-shops/furquest.txt +++ /dev/null @@ -1,329 +0,0 @@ -//################################################################################# -// Script by Shaili and QOAL -//################################################################################# - -// Santa's Inn - Agostine, The Legendary Tailor -new_13-1.gat,102,28,0 script Agostine 137, { - if (QUEST_WG_state == 1) goto L_State_0_3; - if (QUEST_WG_state == 2) goto L_State_1; - if (QUEST_WG_state == 3) goto L_State_2; - if (QUEST_WG_state == 4) goto L_State_4; - if (QUEST_WG_state == 5) goto L_State_4_success; - if (QUEST_WG_state == 6) goto L_State_6; - if (QUEST_WG_state == 7) goto L_State_11; - if (QUEST_WG_state == 8) goto L_State_12; - if (QUEST_WG_state >= 9) goto L_State_13; - - mes "\"This goes up, this goes left...\""; - next; - mes "\"Mmmm...?\""; - next; - mes "[Agostine, The Legendary Tailor]"; - mes "\"Oh, a customer! Let me introduce myself! My name is Agostine!"; - mes "Some people say that I am the best tailor in the world,"; - mes "but I think I am the best one in the universe!"; - mes "So, What can I do for you, my friend?\""; - next; - menu - "I want something new for my wardrobe!", L_State_0_1, - "Oh, nothing, thanks!", -; - close; - -// Quest #0 - Beginning - Needed: Iron Potion - -L_State_0_1: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Well.. you know... working so hard makes me so tired!"; - mes "Can you bring me something tasty to drink, my friend?\""; - next; - menu - "Sure, what kind of drink you like?", L_State_0_2, - "I'm not your waiter!", -; - close; - -L_State_0_2: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Here we do not have a bar. Let me taste different beverages."; - mes "I want something new to drink.\""; - next; - menu - "I'll bring you different drinks to try!", L_State_Accept, - "Maybe a bar will open soon, wait for it.", -; - close; - -L_State_Accept: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Thanks so much.\""; - set QUEST_WG_state, 1; - close; - -L_State_0_3: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Well, what have you brought me?\""; - next; - menu - "A Cactus Drink.", L_State_0_4, - "A Cactus Potion.", L_State_0_5, - "Some milk.", L_State_0_6, - "A pint of beer.", L_State_0_7, - "A Iron potion.", L_State_0_9, - "A Concentration Potion.", L_State_0_8, - "Nothing, at the moment.", -; - close; - -L_State_0_4: - mes "[Agostine, The Legendary Tailor]"; - mes "\"So, a Cactus Drink?\""; - if (countitem(501) < 1) goto L_State_neg; - next; - delitem 501, 1; - goto L_State_bad; - close; - -L_State_0_5: - mes "[Agostine, The Legendary Tailor]"; - mes "\"So, a Cactus Potion?\""; - if (countitem(502) < 1) goto L_State_neg; - next; - delitem 502, 1; - goto L_State_bad; - close; - -L_State_0_6: - mes "[Agostine, The Legendary Tailor]"; - mes "\"So, some milk for me?\""; - if (countitem(527) < 1) goto L_State_neg; - delitem 527, 1; - goto L_State_bad; - close; - -L_State_0_7: - mes "[Agostine, The Legendary Tailor]"; - mes "\"So, a beer?\""; - if (countitem(539) < 1) goto L_State_neg; - next; - delitem 539, 1; - goto L_State_bad; - close; - -L_State_0_8: - mes "[Agostine, The Legendary Tailor]"; - mes "\"So, a Concentration Potion?\""; - if (countitem(568) < 1) goto L_State_neg; - next; - delitem 568, 1; - goto L_State_bad; - close; - -L_State_0_9: - mes "[Agostine, The Legendary Tailor]"; - mes "\"So, an Iron Potion?\""; - if (countitem(567) < 1) goto L_State_neg; - next; - delitem 567, 1; - mes "Agostine looks pleased as he drinks the potion."; - next; - mes "[Agostine, The Legendary Tailor]"; - mes "\"Oh! This is damn good! I feel a new man, my friend!\""; - next; - set zeny, zeny+500; - mes "[Agostine, The Legendary Tailor]"; - mes "\"This is a little reward for your help. Take 500 GP, my friend!\""; - set QUEST_WG_state, 2; - close; - -L_State_neg: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Seems that you lied. You don't have the drink you told me.\""; - close; - -L_State_bad: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Well, I don't like it so much. Bring me something else.\""; - close; - -// First Quest: edited version of Forest Bow Quest - Needed: about 30 White Furs and 15.000 GP - -L_State_1: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Mmmm... Let me see... This year light colours are fashionable!"; - mes "Would you like a pair of snow-white Winter Gloves?\""; - next; - menu - "No, thanks. I love dark clothes...", -, - "You really can do this for me?", L_State_2; - close; - -L_State_2: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Well, Winter Gloves are so fashionable for their lovable fur!"; - mes "Only the best furs can be saw for these gloves!"; - mes "But, as you see, I am a tailor, not a hunter! So, why don't you bring me the best fluffy's fur you can see?\""; - set QUEST_WG_state, 3; - next; - menu - "You are crazy! I won't kill any animal for this!", -, - "Sure, I will be back soon!", L_State_3; - close; - -L_State_3: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Remember, I want the best of fur!\""; - set QUEST_WG_state, 4; - next; - close; - -L_State_4: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Oh, my friend! Have you brought me some good furs?\""; - if (countitem(611) < 1) close; - next; - menu - "Here, take a look!", L_State_4_try, - "Yes, but I need it for something else.", -; - close; - -L_State_4_try: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Let me see, my friend! It needs to be perfect for my gloves!\""; - mes "Agostine examines the patch of fur."; - next; - delitem 611, 1; - set @Temp1,rand(30); - if (@Temp1 == 0) goto L_State_4_success; - mes "Agostine throws away the white fur."; - next; - mes "[Agostine, The Legendary Tailor]"; - mes "\"It was awfully cut! You should pay more attention when you kill fluffies!\""; - if (countitem(611) < 1) close; - next; - menu - "Here I have another one!", L_State_4_try, - "Sorry, I will be careful...", -; - close; - -L_State_4_success: - mes "Agostine turns into a smile"; - next; - mes "[Agostine, The Legendary Tailor]"; - mes "\"It's perfect! Perfect! Good job, my friend! I will prepare your gloves right now!\""; - next; - set QUEST_WG_state, 5; - goto L_State_5; - -L_State_5: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Ehm, my friend, my work is not free. I need 15,000 GP for the work.\""; - next; - menu - "You are not a tailor, you are a thief!!", -, - "I think it's a reasonable price...", L_State_5_pay; - close; - -L_State_5_pay: - if (zeny < 15000) goto L_State_5_nocash; - set zeny, zeny-15000; - getitem 563, 1; - set QUEST_WG_state, 6; - mes "[Agostine, The Legendary Tailor]"; - mes "\"Here they are. You will have the more fashionable hands in the world!\""; - close; - -L_State_5_nocash: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Seems like you are out of cash. Come back when you have the money.\""; - close; - -L_State_6: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Oh, I remember you! Your gloves are sooo fashionable, my friend!"; - mes "Well, I have a good news for you. In this issue of 'TMW Fashion'"; - mes "I saw a pretty accessory, a pair of Furry Boots, my friend."; - mes "I can make your own pair, if you want!\""; - next; - menu - "It's a great idea!", L_State_10, - "I'm glamourous enough, thanks", -; - close; - -// Start of Second Quest: Furry Boots - Needed: About 30 White Furs, 1 pair of Boots and 15.000 GP -L_State_10: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Perfect! For satisfying your request I need another perfect White Fur"; - mes "and a pair of Boots, like those you can find in the mines."; - mes "They will make you lovely, my friend!\""; - set QUEST_WG_state, 7; - close; - -L_State_11: - mes "[Agostine, The Legendary Tailor]"; - mes "\"So, my friend, have you brought me the right Fur?\""; - if (countitem(611) < 1) close; - next; - menu - "Sure, I'm a fluffy hunter!", L_State_11_try, - "Not yet, sorry.", -; - close; - -L_State_11_try: - mes "[Agostine, The Legendary Tailor]"; - mes "\"I'd rather see the patch of fur, first.\""; - next; - mes "Agostine examines the patch of fur."; - next; - delitem 611, 1; - set @Temp2,rand(30); - if (@Temp2 == 0) goto L_State_11_success; - mes "Agostine rips the white fur."; - next; - mes "[Agostine, The Legendary Tailor]"; - mes "\"That fur was terrible. I won't work with it!\""; - if (countitem(611) < 1) close; - next; - menu - "Well, maybe this is better!", L_State_11_try, - "I will hunt other fluffies...", -; - close; - -L_State_11_success: - mes "Agostine turns into a smile"; - next; - mes "[Agostine, The Legendary Tailor]"; - mes "\"This one is good enough, my friend. Good job.\""; - delitem 611, 1; - set QUEST_WG_state, 8; - goto L_State_12; - -L_State_12: - mes "[Agostine, The Legendary Tailor]"; - mes "\"I need also a pair of Boots for the work."; - mes "And my payment, obviously. 15,000 GP is right.\""; - next; - menu - "Sure, here it is all.", L_State_12_pay, - "I missed something, I will be back soon!", -; - close; - -L_State_12_pay: - if (zeny < 15000) goto L_State_12_missing; - if (countitem(528) < 1) goto L_State_12_missing; - set zeny, zeny-15000; - delitem 528, 1; - getitem 655, 1; - set QUEST_WG_state, 9; - mes "[Agostine, The Legendary Tailor]"; - mes "\"Enjoy your new boots, my friend!\""; - close; - -L_State_12_missing: - mes "[Agostine, The Legendary Tailor]"; - mes "\"Seems you have forgotten something. Check your inventory"; - mes "and your pockets!\""; - close; - -L_State_13: - mes "[Agostine, The Legendary Tailor]"; - mes "\"You are so glamourous, my dear friend!"; - mes "I have done a very good job on your clothes!\""; - close; -} diff --git a/npc/new_13-1-snow-village-shops/passages.txt b/npc/new_13-1-snow-village-shops/passages.txt deleted file mode 100644 index afae9fe4..00000000 --- a/npc/new_13-1-snow-village-shops/passages.txt +++ /dev/null @@ -1,10 +0,0 @@ -// Clothes shop -> outside -new_13-1.gat,25,36 warp outside1 0,0,new_11-1.gat,47,50 -// Potions shop -> outside -new_13-1.gat,64,25 warp outside2 1,1,new_11-1.gat,55,90 -// INN -> outside -new_13-1.gat,111,33 warp outside3 0,0,new_11-1.gat,64,84 -// Weapons shop -> outside -new_13-1.gat,32,74 warp outside4 0,0,new_11-1.gat,86,48 -// House -> outside -new_13-1.gat,72,71 warp outside5 0,0,new_11-1.gat,66,54 diff --git a/npc/new_13-1-snow-village-shops/shops.txt b/npc/new_13-1-snow-village-shops/shops.txt deleted file mode 100644 index eb84181e..00000000 --- a/npc/new_13-1-snow-village-shops/shops.txt +++ /dev/null @@ -1,19 +0,0 @@ -// Clothes shop -new_13-1.gat,27,26,0 shop Taylor 137,523:2000,524:1600,543:800,544:5000,546:10000,586:1000,610,2000 -// Weapons shop -new_13-1.gat,25,65,0 shop Bracco 135,1201:50,521:1000,522:100,545:20000,529:5 -// Potions shop -new_13-1.gat,75,26,0 shop Mede 103,501:50,502:70,567:500,568:500 - -// INN -new_13-1.gat,111,23,0 script Kane 120,{ - set @npcName$, "Kane the Inn Keeper"; - set @cost, 100; - - mes "[" + @npcName$ + "]"; - mes "\"Welcome strangers."; - mes "What? You've already seen an INN like mine?"; - mes "That's impossible!\""; - next; - callfunc "Inn"; -} diff --git a/npc/new_14-1-south-woodland/monsters.txt b/npc/new_14-1-south-woodland/monsters.txt deleted file mode 100644 index f371e497..00000000 --- a/npc/new_14-1-south-woodland/monsters.txt +++ /dev/null @@ -1,40 +0,0 @@ -// Map: new_14-1 -// This is South Woodland. -// - -new_14-1.gat,0,0,0,0 monster Scorpion 1003,50,0,0,Mob14::OnScorpion -new_14-1.gat,0,0,0,0 monster SpikyMushroom 1019,50,0,0,Mob14::OnSpikyMushroom -new_14-1.gat,0,0,0,0 monster LogHead 1025,50,0,0,Mob14::OnLogHead - -new_14-1.gat,0,0,0,0 monster Cobalt 1030,1,2700000,1800000,Mob14::OnCobalt - -new_14-1.gat,0,0,0,0 monster SilkWorm 1035,2,60000,30000,Mob14::OnSilkWorm - -new_14-1.gat,0,0,0 script Mob14 -1,{ -OnScorpion: - set @mobID, 1003; - callfunc "MobPoints"; - break; - -OnSpikyMushroom: - set @mobID, 1019; - callfunc "MobPoints"; - break; - -OnLogHead: - set @mobID, 1025; - callfunc "MobPoints"; - break; - -OnCobalt: - set @mobID, 1030; - callfunc "MobPoints"; - break; - -OnSilkWorm: - set @mobID, 1035; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_14-1-south-woodland/passages.txt b/npc/new_14-1-south-woodland/passages.txt deleted file mode 100644 index 787de46c..00000000 --- a/npc/new_14-1-south-woodland/passages.txt +++ /dev/null @@ -1,4 +0,0 @@ -new_14-1.gat,131,53 warp tofield 2,2,new_16-1.gat,25,53 -new_14-1.gat,48,23 warp tofield 1,1,new_9-1.gat,46,99 -new_14-1.gat,14,54 warp tomap31 0,2,new_31-1.gat,92,54 -new_14-1.gat,55,104 warp tomap32 3,1,new_32-1.gat,56,21 \ No newline at end of file diff --git a/npc/new_15-1-woodland-desert/monsters.txt b/npc/new_15-1-woodland-desert/monsters.txt deleted file mode 100644 index 81246489..00000000 --- a/npc/new_15-1-woodland-desert/monsters.txt +++ /dev/null @@ -1,20 +0,0 @@ -// Map: new_15-1 -// This is the Desert Beach. -// - -new_15-1.gat,0,0,0,0 monster BlackScorpion 1009,20,0,0,Mob15::OnBlackScorpion -new_15-1.gat,0,0,0,0 monster Snake 1010,10,0,0,Mob15::OnSnake - -new_15-1.gat,0,0,0 script Mob15 -1,{ -OnBlackScorpion: - set @mobID, 1009; - callfunc "MobPoints"; - break; - -OnSnake: - set @mobID, 1010; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_15-1-woodland-desert/passages.txt b/npc/new_15-1-woodland-desert/passages.txt deleted file mode 100644 index b9969e9b..00000000 --- a/npc/new_15-1-woodland-desert/passages.txt +++ /dev/null @@ -1,3 +0,0 @@ -new_15-1.gat,170,75 warp todesert 2,2,new_1-1.gat,15,66 -new_15-1.gat,20,23 warp towoodland 2,0,new_16-1.gat,120,112 -new_15-1.gat,140,19 warp tobeach 2,0,new_34-1.gat,37,109 diff --git a/npc/new_16-1-south-east-woodland/monsters.txt b/npc/new_16-1-south-east-woodland/monsters.txt deleted file mode 100644 index e384b02b..00000000 --- a/npc/new_16-1-south-east-woodland/monsters.txt +++ /dev/null @@ -1,35 +0,0 @@ -// Map: new_16-1 -// This is South-East Woodland. -// - -new_16-1.gat,0,0,0,0 monster Fluffy 1020,50,0,0,Mob16::OnFluffy -new_16-1.gat,0,0,0,0 monster Flower 1014,40,0,0,Mob16::OnFlower - -new_16-1.gat,0,0,0,0 monster Gamboge 1031,1,2700000,1800000,Mob16::OnGamboge - -new_16-1.gat,0,0,0,0 monster SilkWorm 1035,2,60000,30000,Mob16::OnSilkWorm - -new_16-1.gat,0,0,0 script Mob16 -1,{ -OnFluffy: - set @mobID, 1020; - callfunc "MobPoints"; - break; - -OnFlower: - set @mobID, 1014; - callfunc "MobPoints"; - break; - -OnGamboge: - set @mobID, 1031; - callfunc "MobPoints"; - break; - -OnSilkWorm: - set @mobID, 1035; - callfunc "MobPoints"; - break; - - - end; -} diff --git a/npc/new_16-1-south-east-woodland/passages.txt b/npc/new_16-1-south-east-woodland/passages.txt deleted file mode 100644 index 4696b482..00000000 --- a/npc/new_16-1-south-east-woodland/passages.txt +++ /dev/null @@ -1,4 +0,0 @@ -new_16-1.gat,120,114 warp todesert 3,0,new_15-1.gat,20,24 -new_16-1.gat,22,54 warp towoodland 2,2,new_14-1.gat,127,53 -new_16-1.gat,68,22 warp warp2 3,1,new_18-1.gat,78,100 -new_16-1.gat,122,21 warp warp2 1,1,new_18-1.gat,132,98 diff --git a/npc/new_17-1-cave-big/monsters.txt b/npc/new_17-1-cave-big/monsters.txt deleted file mode 100644 index 95d09026..00000000 --- a/npc/new_17-1-cave-big/monsters.txt +++ /dev/null @@ -1,20 +0,0 @@ -// Map: new_17-1 -// This is the Lake Cave, second level of the Hermit's Cave. -// - -new_17-1.gat,0,0,0,0 monster CaveSnake 1021,40,0,0,Mob17::OnCaveSnake -new_17-1.gat,0,0,0,0 monster SpikyMushroom 1019,15,0,0,Mob17::OnSpikyMushroom - -new_17-1.gat,0,0,0 script Mob17 -1,{ -OnCaveSnake: - set @mobID, 1021; - callfunc "MobPoints"; - break; - -OnSpikyMushroom: - set @mobID, 1019; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_17-1-cave-big/passages.txt b/npc/new_17-1-cave-big/passages.txt deleted file mode 100644 index 8192c69e..00000000 --- a/npc/new_17-1-cave-big/passages.txt +++ /dev/null @@ -1,2 +0,0 @@ -new_17-1.gat,71,10 warp firstlvl 3,0,new_4-1.gat,31,24 -new_17-1.gat,129,87 warp cave 0,0,new_35-1.gat,21,55 diff --git a/npc/new_18-1-woodland-village/george.txt b/npc/new_18-1-woodland-village/george.txt deleted file mode 100644 index 42966bf8..00000000 --- a/npc/new_18-1-woodland-village/george.txt +++ /dev/null @@ -1,25 +0,0 @@ -// - -new_18-1.gat,136,36,0 script George 138,{ - if (getequipid(equip_head) == 617) goto L_Pirate; - if (getequipid(equip_head) == 622) goto L_Bandana; - if (getequipid(equip_head) == 621) goto L_EyePatch; - mes "[George the Pirate]"; - mes "\"Arrrrh! 'Tis some kind of treasure map!\""; - close; - -L_Pirate: - mes "[George the Pirate]"; - mes "\"Arrrrh! Ye be wearing a pirate's hat!\""; - close; - -L_Bandana: - mes "[George the Pirate]"; - mes "\"Arrrrh! Ye remind me of my old first mate!\""; - close; - -L_EyePatch: - mes "[George the Pirate]"; - mes "\"Arrrrh! Looks like ye lost an eye there!\""; - close; -} diff --git a/npc/new_18-1-woodland-village/hinnak.txt b/npc/new_18-1-woodland-village/hinnak.txt deleted file mode 100644 index 39f4bc5a..00000000 --- a/npc/new_18-1-woodland-village/hinnak.txt +++ /dev/null @@ -1,100 +0,0 @@ -//################################################################################# -//# # -//# this script file contains the npc scripts for the quest to obtain a scythe. # -//# # -//# Needed: 10 Pink Antenna # -//# # -//# Reward: Scythe # -//# # -//################################################################################# - -//Farmer - -new_18-1.gat,101,30,0 script Hinnak 142, { - if (Inspector == 10) goto L_NohMask; - if (QUEST_Scythe_state == 1) goto L_Exchange; - if (QUEST_Scythe_state == 2) goto L_ThanksAgain; - mes "[Farmer Hinnak]"; - mes "\"Argh! I hate them! I @#$% hate them! I @#$% hate these @#$% pinkies!\""; - next; - - menu - "You need some anger control therapy.", -, - "Why do you hate them?", L_Reason; - close; - -L_Reason: - mes "[Farmer Hinnak]"; - mes "\"These @#$% beasts are jumping around in my fields destroying all my harvest."; - mes "But they are too fast. I can't catch them.\""; - next; - - menu - "Want me to help you?", L_Help, - "Well, life ain't fair.", -; - close; - -L_Help: - mes "[Farmer Hinnak]"; - mes "\"Yes, you look quite fast. Maybe you can catch some of them. That will pay them a lesson."; - mes "Slay some of them and bring me 10 of their antennae.\""; - set QUEST_Scythe_state, 1; - next; - - menu - "Sure, I'm on my way", -, - "How much is this worth to you?", L_Reward; - close; - -L_Reward: - mes "[Farmer Hinnak]"; - mes "\"Well, I can't offer you much. But I got an old scythe laying around. Maybe you can use it as a weapon.\""; - close; - -L_Exchange: - mes "[Farmer Hinnak]"; - mes "Have you got the 10 antennae?"; - next; - - if (countitem(614) < 10) goto L_Exchange_Notenough; - - menu - "Not yet, but I am working on it.", -, - "Sure, here they are!", L_Exchange_Exchange; - close; - -L_Exchange_Exchange: - delitem 614, 10; - getitem 623, 1; - set QUEST_Scythe_state, 2; - mes "[Farmer Hinnak]"; - mes "\"Thank you very much. I've got something for you. My old scythe. Maybe you can use it as a weapon. It is a bit cumbersome but its strikes are deadly.\""; - close; - -L_Exchange_Notenough: - menu - "Not yet, but I am working on it.", -; - close; - -L_ThanksAgain: - mes "[Farmer Hinnak]"; - mes "Thanks again for helping me with the pinkies."; - close; - -L_NohMask: - menu - "Did you see anyone in a mask come by here at night?", L_NohMask_Mask, - "Did you see anyone with a large satchel come by here at night?", L_NohMask_Satchel, - "Nothing...", -; - close; - -L_NohMask_Mask: - mes "[Farmer Hinnak]"; - mes "\"No. It tends to be too dark to see a mask.\""; - close; - -L_NohMask_Satchel: - mes "[Farmer Hinnak]"; - mes "\"Yes, I saw someone with a large sack on their back go to the minning camp.\""; - close; -} \ No newline at end of file diff --git a/npc/new_18-1-woodland-village/monsters.txt b/npc/new_18-1-woodland-village/monsters.txt deleted file mode 100644 index 8755285c..00000000 --- a/npc/new_18-1-woodland-village/monsters.txt +++ /dev/null @@ -1,34 +0,0 @@ -// Map: new_18-1 -// This is Woodland around Hurnscald. -// - -new_18-1.gat,0,0,0,0 monster Pinkie 1018,20,0,0,Mob18::OnPinkie -new_18-1.gat,0,0,0,0 monster SpikyMushroom 1019,20,0,0,Mob18::OnSpikyMushroom - -new_18-1.gat,0,0,0,0 monster Mauve 1029,1,2700000,1800000,Mob18::OnMauve - -new_18-1.gat,0,0,0,0 monster SilkWorm 1035,2,60000,30000,Mob18::OnSilkWorm - -new_18-1.gat,0,0,0 script Mob18 -1,{ -OnPinkie: - set @mobID, 1018; - callfunc "MobPoints"; - break; - -OnSpikyMushroom: - set @mobID, 1019; - callfunc "MobPoints"; - break; - -OnMauve: - set @mobID, 1029; - callfunc "MobPoints"; - break; - -OnSilkWorm: - set @mobID, 1035; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_18-1-woodland-village/passages.txt b/npc/new_18-1-woodland-village/passages.txt deleted file mode 100644 index d8fdecb9..00000000 --- a/npc/new_18-1-woodland-village/passages.txt +++ /dev/null @@ -1,19 +0,0 @@ -// West gate -new_18-1.gat,54,61 warp warp1 0,1,new_19-1.gat,26,36 - -// South gate -new_18-1.gat,78,80 warp warp1 3,0,new_19-1.gat,48,54 - -// East gate -new_18-1.gat,128,60 warp warp1 0,1,new_19-1.gat,96,35 - -// North gate -new_18-1.gat,78,49 warp warp1 3,0,new_19-1.gat,48,24 - -// To woodland -new_18-1.gat,78,101 warp warp1 3,1,new_16-1.gat,68,23 - -new_18-1.gat,132,100 warp warp1 1,1,new_16-1.gat,122,23 - -// Mine -new_18-1.gat,79,17 warp woodland 2,-1,new_37-1.gat,78,96 diff --git a/npc/new_19-1-woodland-village/jack.txt b/npc/new_19-1-woodland-village/jack.txt deleted file mode 100644 index 721c4cce..00000000 --- a/npc/new_19-1-woodland-village/jack.txt +++ /dev/null @@ -1,252 +0,0 @@ -//################################################################################# -//# # -//# This script file contains the npc scripts for two quests: # -//# # -//# Quest1: Obtaining a Forest bow # -//# Needed: About 20 Raw logs, 5000gp, some chatting and running # -//# Reward: Forest bow # -//# # -//# Quest2: Obtaining a Wooden shield # -//# Needed: 40 Raw logs, 5000gp # -//# Reward: Wooden shield and 2500exp # -//# # -//# Variables used: @QUEST_Forestbow_state, nibbles 0 and 1 # -//################################################################################# - -// Lumberjack -new_19-1.gat,40,45,0 script Jack 141, { - set @RAWLOG, 569; - set @RAWLOGS_AMOUNT, 40; - set @WOODENSHIELD, 602; - set @SHIELD_COST, 5000; - set @QUEST_SHIELD_EXP, 2500; - - set @Q_Forestbow_MASK, NIBBLE_0_MASK; - set @Q_Forestbow_SHIFT, NIBBLE_0_SHIFT; - - set @Q_Woodenshield_MASK, NIBBLE_1_MASK; - set @Q_Woodenshield_SHIFT, NIBBLE_1_SHIFT; - - set @Q_Forestbow, ((QUEST_Forestbow_state & @Q_Forestbow_MASK) >> @Q_Forestbow_SHIFT); - set @Q_Woodenshield, ((QUEST_Forestbow_state & @Q_Woodenshield_MASK) >> @Q_Woodenshield_SHIFT); - - if (@Q_Woodenshield >= 3) goto L_Shield_state_3; - if (@Q_Woodenshield == 2) goto L_Shield_state_2; - if (@Q_Woodenshield == 1) goto L_Shield_state_1; - if (@Q_Forestbow > 1) goto L_Bow_state_2; - - mes "[Jack Lumber]"; - mes "\"Hello there, my name is Jack Lumber, the enemy of all trees. If you need some firewood just let me know.\""; - next; - if (Inspector == 1) callsub S_NohMask_Ask; - if (@Q_Forestbow < 1) close; - - menu - "I heard you aren't delivering any more living wood. Why that?", -; - - mes "[Jack Lumber]"; - mes "\"Why not?! I value my life, that's why!.\""; - - next; - menu - "What do you mean?", -; - - mes "[Jack Lumber]"; - mes "\"A week ago I was going to chop down one of those twigleaf trees in the forest to the southwest. These twigleafs are the trees that give me the living wood you speak of. I was just chopping away with my axe and what happened? One of its branches hit me! I thought it fell down or the wind blew it. It hurt! I shook it off and struck it again with my axe and another branch hit me! I got angry and started to chop off all the branches near the ground so this couldn't happen anymore. But I still can't believe what happened next.\""; - - next; - menu - "What happened? ", -; - - mes "[Jack Lumber]"; - mes "\"You'll think I am insane when I tell you.\""; - - next; - menu - "I won't. I promise.", -; - - mes "[Jack Lumber]"; - mes "\"OK. After I chopped off a few branches the whole tree started to move. Its roots tore out of the earth, all the branches started to wave around and a face appeared on the trunk. The whole tree CAME TO LIFE! It was mad!\""; - next; - menu - "Did you run away?", -, - "Did you fight it?", -; - - mes "[Jack Lumber]"; - mes "\"I fought, of course! I took my axe and attacked the beast! It hit me here *points at a bruise at his shoulder*, here *lifts his trouser leg to show another bruise* and here *lifts his shirt and reveals some even worse bruises*. But i didn't give up. I chopped away at it, branch after branch, and in the end I chopped off its roots and it fell to the ground motionless.\""; - - next; - menu - "So you beat the monster? Then why are you so scared?", -; - - mes "[Jack Lumber]"; - mes "\"Well, I was exhausted and had to rest. A few minutes passed and suddenly I was surrounded by a dozen or more of these living trees!\""; - - next; - menu - "Did you fight them, too? ", -; - - mes "[Jack Lumber]"; - mes "\"Are you crazy? I barely destroyed one of those beasts. I was in no shape to fight again. I ran away as fast as i could. Lucky for me the monsters aren't that fast on their tiny root legs. Ha!\""; - - next; - menu - "So you aren't chopping down trees anymore?", -; - - mes "[Jack Lumber]"; - mes "\"I still do. It's my job. But I no longer chop those twigleafs, I'll tell you that. I know the bowyer master wants some wood from them, but I don't care. I won't risk my life for a few gold pieces. If you want to, just go to the southwest. But i won't go there ever again.\""; - - next; - menu - "Southwest you say? OK, thank you.", -; - - set @Q_Forestbow, 2; - callsub S_Update_Mask; - - close; - -L_Bow_state_2: - // Bow state 4: The player has found a perfect piece of wood. - if (@Q_Forestbow > 3) goto L_Bow_state_4; - - mes "\"Good luck hunting those tree monsters - you will need it.\""; - if (Inspector == 1) goto L_NohMask_Ask; - close; - -L_Bow_state_4: - mes "[Jack Lumber]"; - mes "\"You've finally found that perfect piece of living wood Alan needs to make a Forest bow, haven't you?\""; - - next; - menu - "I couldn't afford the bow, though...", L_Shield_state_0, - "No, I'm still looking.", L_Bow_state_4_reaffirm, - "Yes, I've got the Forest bow now.", -, - "I'm a melee warrior, I don't need bows.", L_Shield_state_0; - - // Check if the player tells the truth (continue on in any case) - if (@Q_Forestbow > 4) goto L_Shield_state_0; - - mes "[Jack Lumber]"; - mes "\"Hrmph. I'm someone who respects those speaking the truth.\""; - - next; - goto L_Shield_state_0; - -L_Bow_state_4_reaffirm: - mes "[Jack Lumber]"; - mes "\"You should go talk to Alan again.\""; - close; - -L_Shield_state_0: - set @Q_Woodenshield, 1; - callsub S_Update_Mask; - - if (Sex == 0) set @child_of_jack$, "daughter"; - if (Sex == 1) set @child_of_jack$, "son"; - - mes "[Jack Lumber]"; - mes "\"You no doubt remember how I struggled with those beasts, fighting for my life. Scared me, those seven-branched little stumps did! Never since that day have I strayed near them. And here comes you, cutting them down one by one. I'm proud of you, to dare those trunks a fight. You're strong as if you were my own " + @child_of_jack$ + "!\""; - next; - goto L_Shield_state_1; - -L_Shield_state_1: - mes "[Jack Lumber]"; - mes "\"I have an idea. What would you say about a new shield?\""; - next; - - if (Inspector == 1) - menu - "No thanks.", L_End, - "Yes, please!", -, - "Actually, I'd like to know if you've seen any strange happenings in town.", L_NohMask_Answer; - if (Inspector != 1) - menu - "No thanks.", L_End, - "Yes, please!", -; - - mes "[Jack Lumber]"; - mes "\"All I need is " + @RAWLOGS_AMOUNT + " raw logs. This needn't be highest-quality wood; pretty much any log you can find should work. Oh, and I'll also need " + @SHIELD_COST + " GP for other materials.\""; - next; - - set @Q_Woodenshield, 2; - callsub S_Update_Mask; - close; - -L_End: - close; - -L_Shield_state_2: - mes "[Jack Lumber]"; - mes "\"Let's see if you have enough of everything.\""; - next; - - if (countitem(@RAWLOG) < @RAWLOGS_AMOUNT) goto L_Not_enough_logs; - if (zeny < @SHIELD_COST) goto L_Not_enough_money; - - delitem @RAWLOG, @RAWLOGS_AMOUNT; - set zeny, zeny - @SHIELD_COST; - getexp @QUEST_SHIELD_EXP, 0; - getitem @WOODENSHIELD, 1; - - set @Q_Woodenshield, 3; - callsub S_Update_Mask; - mes "[Jack Lumber]"; - mes "\"Have a seat.\""; - mes "Jack saws the logs into pieces, then shaves them until they are smooth to the touch."; - mes "Applying some strong-smelling liquid, he tans them in darker hues."; - next; - - mes "[Jack Lumber]"; - mes "Grabbing one of two leftover pieces, he begins to carve it into a round shape, then repeats this with the second piece-- shield handles, from what you can tell."; - next; - - mes "[Jack Lumber]"; - mes "Meanwhile, the sun has dried the other pieces. Jack places them next to each other, adds a frame, and nails everything together."; - mes "The resulting shield looks usable already, but Jack applies another liquid to it and leaves it to dry for a few moments."; - next; - - mes "[Jack Lumber]"; - mes "Finally, he hands the shield to you."; - mes "\"Enjoy your new shield!\""; - mes "[" + @QUEST_SHIELD_EXP + " experience points]"; - next; - goto L_End; - -L_Not_enough_logs: - mes "[Jack Lumber]"; - mes "\"You don't have enough wood for me to craft this shield; I need a total of " + @RAWLOGS_AMOUNT + " raw logs.\""; - close; - -L_Not_enough_money: - mes "[Jack Lumber]"; - mes "\"You don't have enough gold, I'm afraid. I need " + @SHIELD_COST + " GP to finish your shield.\""; - close; - -L_Shield_state_3: - mes "[Jack Lumber]"; - mes "\"I hope that my shield will serve you well!\""; - if (Inspector == 1) - menu - "Me too.", -, - "Have you seen anything that might be connected to the recent robberies in town?", L_NohMask_Answer; - close; - -L_NohMask_Ask: - menu - "I'll keep that in mind.", -, - "Have you seen anything that might be connected to the recent robberies in town?", L_NohMask_Answer; - return; - -L_NohMask_Answer: - mes "[Jack Lumber]"; - mes "\"Sorry, no.\""; - close; - -S_Update_Mask: - set QUEST_Forestbow_state, - (QUEST_Forestbow_state & ~(@Q_Forestbow_MASK | @Q_Woodenshield_MASK)) - | (@Q_Forestbow << @Q_Forestbow_SHIFT) - | (@Q_Woodenshield << @Q_Woodenshield_SHIFT); - return; -} diff --git a/npc/new_19-1-woodland-village/milly.txt b/npc/new_19-1-woodland-village/milly.txt deleted file mode 100644 index b8bf7460..00000000 --- a/npc/new_19-1-woodland-village/milly.txt +++ /dev/null @@ -1,25 +0,0 @@ -new_19-1.gat,81,41,0 script Milly 114, { - mes "[Milly]"; - mes "\"Hello.\""; - next; - if (Inspector == 1) goto L_NohMask; - close; - -L_NohMask: - menu - "Have you seen anything strange lately?", L_NohMask_Strange, - "Do you know anything about the recent robberies?", L_NohMask_Robbery, - "Yes, it is.", -; - close; - -L_NohMask_Strange: - mes "[Milly]"; - mes "\"I haven't seen anything strange.\""; - close; - -L_NohMask_Robbery: - mes "[Milly]"; - mes "\"No, sorry.\""; - close; -} - diff --git a/npc/new_19-1-woodland-village/old_man.txt b/npc/new_19-1-woodland-village/old_man.txt deleted file mode 100644 index 55812260..00000000 --- a/npc/new_19-1-woodland-village/old_man.txt +++ /dev/null @@ -1,34 +0,0 @@ -// Old man - -new_19-1.gat,85,51,0 script Old Man 159,{ - mes "[Old Man]"; - mes "\"Don't let those monsters get to you.\""; - next; - if (Inspector == 1) goto L_NohMask_Ask; - if (Inspector == 6) goto L_NohMask_Accuse; - close; - -L_NohMask_Ask: - menu - "Have you seen anything strange lately?", L_NohMask_Ask_Nothing, - "Do you know anything about the recent robberies?", L_NohMask_Ask_Nothing, - "I won't, thank you.", -; - close; - -L_NohMask_Ask_Nothing: - mes "[Old Man]"; - mes "\"I'm sorry, but I didn't see anything. You should ask my old woman.\""; - close; - -L_NohMask_Accuse: - menu - "The leader of the troupe said you hung around them a lot while they were in town.", L_NohMask_Accuse_Respond, - "I won't, thank you.", -; - close; - -L_NohMask_Accuse_Respond: - mes "[Old Man]"; - mes "\"Yes, I hung around the theater a lot. I was an actor when I was younger. But I wasn't there that night. Me and the wife were at home all night.\""; - set Inspector, 7; - close; -} diff --git a/npc/new_19-1-woodland-village/old_woman.txt b/npc/new_19-1-woodland-village/old_woman.txt deleted file mode 100644 index c94fe63f..00000000 --- a/npc/new_19-1-woodland-village/old_woman.txt +++ /dev/null @@ -1,56 +0,0 @@ -// Old woman - -new_19-1.gat,29,43,0 script Old Woman 154,{ - mes "[Old Woman]"; - mes "\"Hello deary.\""; - next; - if ((Inspector >= 1 && Inspector <= 7) || Inspector == 9) goto L_NohMask; - close; - -L_NohMask: - if (Inspector == 7) goto L_NohMask_Alibi; - callfunc "ProcessEquip"; - if (@torsoC == cDarkBlue && @legsC == cDarkBlue) goto L_NohMask_Fake; - if (Inspector >= 3 && Inspector <= 6) close; - - menu - "Have you seen anything strange lately?", L_NohMask_FirstAsk, - "Do you know anything about the recent robberies?", L_NohMask_FirstAsk, - "Hello", -; - close; - -L_NohMask_FirstAsk: - mes "[Old Woman]"; - mes "\"Yes, but I'm only talking to the inspector himself!\""; - if (Inspector == 1) set Inspector, 2; - close; - -L_NohMask_Alibi: - menu - "Was your husband with you at home all night the last night that the troupe was in town?", -; - - mes "[Old Woman]"; - mes "\"Yes, we were both at home all night.\""; - set Inspector, 8; - close; - -L_NohMask_Fake: - if (Inspector == 9) goto L_NohMask_Fake_Satchel; - if (Inspector >= 3 && Inspector <= 6) got L_NohMask_Filler; - - mes "[Old Woman]"; - mes "\"I saw someone sneaking around town wearing a theater mask. It looked like one of the masks used by the troupe that was in town recently.\""; - set Inspector, 3; - close; - -L_NohMask_Filler: - mes "[Old Woman]"; - mes "\"I hope you castch that naughty person!\""; - close; - -L_NohMask_Fake_Satchel: - mes "[Old Woman]"; - mes "\"I've remembered something else. The night the troupe left, I saw someone with a theater mask take a large satchel out of town. He was heading north.\""; - set Inspector, 10; - close; -} diff --git a/npc/new_19-1-woodland-village/passages.txt b/npc/new_19-1-woodland-village/passages.txt deleted file mode 100644 index 990b50e7..00000000 --- a/npc/new_19-1-woodland-village/passages.txt +++ /dev/null @@ -1,30 +0,0 @@ -// West gate -new_19-1.gat,23,36 warp warp2 1,1,new_18-1.gat,53,61 - -// South gate -new_19-1.gat,48,56 warp warp2 3,1,new_18-1.gat,78,82 - -// East gate -new_19-1.gat,97,36 warp warp2 1,1,new_18-1.gat,129,60 - -// North gate -new_19-1.gat,48,23 warp warp2 3,1,new_18-1.gat,78,48 - -// indoor <-> outdoor and indoor <-> indoor - -// Inn -new_19-1.gat,35,29 warp out-in 1,1,new_20-1.gat,50,55 - -// Archer Shop -new_19-1.gat,59,33 warp out-in 0,0,new_20-1.gat,95,29 - -// Potion Shop -new_19-1.gat,71,30 warp out-in 0,0,new_20-1.gat,130,25 - -// Doctor -new_19-1.gat,80,31 warp out-in 0,0,new_20-1.gat,149,66 - -// Blacksmith - -// Mayor -new_19-1.gat,72,44 warp out-in 0,0,new_20-1.gat,113,77 diff --git a/npc/new_19-1-woodland-village/sabine.txt b/npc/new_19-1-woodland-village/sabine.txt deleted file mode 100644 index e45ae7a8..00000000 --- a/npc/new_19-1-woodland-village/sabine.txt +++ /dev/null @@ -1,26 +0,0 @@ -// Girl sitting on bench - -new_19-1.gat,89,27,0 script Sabine 106,{ - mes "[Sabine]"; - mes "\"Isn't this place pretty? I love hanging out here!\""; - next; - if (Inspector == 1) goto L_NohMask; - close; - -L_NohMask: - menu - "Have you seen anything strange lately?", L_NohMask_Strange, - "Do you know anything about the recent robberies?", L_NohMask_Robbery, - "Yes, it is.", -; - close; - -L_NohMask_Strange: - mes "[Sabine]"; - mes "\"I haven't seen anything strange.\""; - close; - -L_NohMask_Robbery: - mes "[Sabine]"; - mes "\"No, sorry.\""; - close; -} diff --git a/npc/new_19-1-woodland-village/soul-menhir.txt b/npc/new_19-1-woodland-village/soul-menhir.txt deleted file mode 100644 index 152f05be..00000000 --- a/npc/new_19-1-woodland-village/soul-menhir.txt +++ /dev/null @@ -1,8 +0,0 @@ -new_19-1.gat,53,40,0 script Soul Menhir 144, { - set @map$, "new_19-1.gat"; - set @x, 53; - set @y, 41; - callfunc "SoulMenhir"; -} - - diff --git a/npc/new_2-1-cave1/miners.txt b/npc/new_2-1-cave1/miners.txt deleted file mode 100644 index 1bbb1637..00000000 --- a/npc/new_2-1-cave1/miners.txt +++ /dev/null @@ -1,39 +0,0 @@ -// - -new_2-1.gat,35,35,6 script Nathan 109,{ - mes "[Nathan the Miner]"; - mes "\"It's very dangerous in here."; - mes "We had a big earthquake here"; - mes "just recently, too... so be"; - mes "careful!\""; - close; -} - -new_5-1.gat,32,94,6 script Naem 109,{ - mes "[Naem the Miner]"; - mes "\"Do you want me to lift you to the upper level?\""; - next; - menu - "Sure", L_Sure, - "Not yet!", -; - close; - -L_Sure: - warp "new_2-1.gat", 87, 99; - close; -} - -new_2-1.gat,85,97,6 script Naem 109,{ - mes "[Naem the Miner]"; - mes "\"We discovered an underground palace."; - mes "Do you want me to let you in?\""; - next; - menu - "Sure", L_Sure, - "Not yet!", -; - close; - -L_Sure: - warp "new_5-1.gat", 34, 92; - close; -} diff --git a/npc/new_2-1-cave1/monsters.txt b/npc/new_2-1-cave1/monsters.txt deleted file mode 100644 index b673ef65..00000000 --- a/npc/new_2-1-cave1/monsters.txt +++ /dev/null @@ -1,20 +0,0 @@ -// Map: new_2-1 -// This is the Desert mines south of Tulimshar -- level 1. -// - -new_2-1.gat,0,0,0,0 monster RedSlime 1008,30,2500,0,Mob2::OnRedSlime -new_2-1.gat,0,0,0,0 monster BlackScorpion 1009,15,2500,0,Mob2::OnBlackScorpion - -new_2-1.gat,0,0,0 script Mob2 -1,{ -OnRedSlime: - set @mobID, 1008; - callfunc "MobPoints"; - break; - -OnBlackScorpion: - set @mobID, 1009; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_2-1-cave1/passages.txt b/npc/new_2-1-cave1/passages.txt deleted file mode 100644 index e11badd6..00000000 --- a/npc/new_2-1-cave1/passages.txt +++ /dev/null @@ -1 +0,0 @@ -new_2-1.gat,36,30 warp caveexit 3,0,new_1-1.gat,25,95 diff --git a/npc/new_20-1-woodland-village/alan.txt b/npc/new_20-1-woodland-village/alan.txt deleted file mode 100644 index fc779676..00000000 --- a/npc/new_20-1-woodland-village/alan.txt +++ /dev/null @@ -1,211 +0,0 @@ -//################################################################################# -//# # -//# This script file contains the npc scripts for the quest to obtain a forestbow # -//# # -//# Needed: 10 Raw Logs, 5000gp, some chatting and running. # -//# # -//# Reward: Forest Bow # -//################################################################################# - -// Archer Shop Master -new_20-1.gat,99,23,0 script Alan 125, { - set @Q_MASK, NIBBLE_0_MASK; - set @Q_SHIFT, NIBBLE_0_SHIFT; - - set @Q_status, ((QUEST_Forestbow_state) & @Q_MASK) >> @Q_SHIFT; - - if (@Q_status == 1) goto L_State_1; - if (@Q_status == 2) goto L_State_2; - if (@Q_status == 3) goto L_State_3; - if (@Q_status == 4) goto L_State_4; - if (@Q_status == 5) goto L_State_5; - - mes "[Alan]"; - mes "\"When you want to buy something then please speak to my apprentice. I am only doing special requests.\""; - next; - if (Inspector == 1) - menu - "OK, thanks", -, - "Can you make me a really good bow?", L_State_0_1, - "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; - if (Inspector != 1) - menu - "OK, thanks", -, - "Can you make me a really good bow?", L_State_0_1; - close; - -L_State_0_1: - mes "[Alan]"; - mes "\"You mean like one of my legendary forest bows?\""; - next; - menu - "Yes, that would be nice.", -; - mes "[Alan]"; - mes "\"Sorry, I am not making these anymore.\""; - next; - menu - "Oh, too bad.", -, - "What? Why that?", L_State_0_2; - close; - -L_State_0_2: - mes "[Alan]"; - mes "\"The problem is that I am short of material. My forestbows are not made of regular wood, you know."; - mes "They are made of special living wood. And only the best logs of living wood are good enough for them."; - mes "I used to get these logs from Jack, the lumberjack. But the last time I asked him for a new delivery he said that he would never again get any for me.\""; - - set @Q_status, 1; - callsub S_Update_Var; - - next; - menu - "Too bad.", -, - "Did you ask him why?", L_State_0_3; - close; - -L_State_0_3: - mes "[Alan]"; - mes "\"Sure I did. But he just told me to leave him alone. Maybe you could ask him what's wrong?\""; - next; - menu - "OK, I'll ask him.", -, - "I am sure he got his reasons.", -; - close; - -L_State_1: - mes "[Alan]"; - mes "\"Did you already ask Jack why he won't deliver me any more living wood?\""; - next; - if (Inspector == 1) - menu - "No, I haven't had the time yet", -, - "No, I didn't find him yet.", L_State_1_1, - "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; - if (Inspector != 1) - menu - "No, I haven't had the time yet", -, - "No, I didn't find him yet.", L_State_1_1; - close; - -L_State_1_1: - mes "[Alan]"; - mes "\"When you leave my shop just go southwest over the village plaza. You can't miss it.\""; - close; - -L_State_2: - mes "[Alan]"; - mes "\"Did you already ask Jack why he won't deliver me any more living wood?\""; - next; - if (Inspector == 1) - menu - "Yes, I did. He said that the trees turned into dangerous monsters.", -, - "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; - if (Inspector != 1) - menu - "Yes, I did. He said that the trees turned into dangerous monsters.", -; - mes "[Alan]"; - mes "\"Oh, that's really bad news. Maybe you can do his job?"; - mes "When you kill some of these tree monsters and bring me their wood I can take a look at them."; - mes "Maybe you will find a piece of wood that is strong enough to become one of my forest bows.\""; - - set @Q_status, 3; - callsub S_Update_Var; - - close; - -L_State_3: - mes "[Alan]"; - mes "\"How is the hunt going? Did you bring me any wood?\""; - if (countitem(569) < 1) close; - next; - if (Inspector == 1) - menu - "Here, take a look!", L_State_3_try, - "Yes, but I need it for something else.", -, - "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; - if (Inspector != 1) - menu - "Here, take a look!", L_State_3_try, - "Yes, but I need it for something else.", -; - close; - -L_State_3_try: - mes "[Alan]"; - mes "\"Hmmm... looks ok, but is it strong enough?\""; - mes "Alan bends the log over his knee."; - next; - delitem 569, 1; - set @Temp1, rand(20); - if (@Temp1 == 0) goto L_State_3_success; - mes "The log breaks with a loud crack"; - next; - mes "[Alan]"; - mes "\"Sorry, this log was too weak for one of my forest bows. Now it is junk. Give me another.\""; - if (countitem(569) < 1) close; - next; - menu - "Sure, here you go.", L_State_3_try, - "Hey! Stop breaking my stuff!", -; - close; - -L_State_3_success: - mes "Alan tries as hard as he can but the log won't bend."; - next; - mes "[Alan]"; - mes "\"Aaah! Yes! That is a really fine piece of wood you bought me. It will make an excelent bow!\""; - next; - set @Q_status, 4; - callsub S_Update_Var; - -L_State_4: - mes "[Alan]"; - mes "\"I can make you a really nice forest bow out of this. I just need 10,000 GP for material and work time.\""; - next; - if (Inspector == 1) - menu - "10,000??? What a ripoff!", -, - "Sure, here you go!", L_State_4_pay, - "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; - if (Inspector != 1) - menu - "10,000??? What a ripoff!", -, - "Sure, here you go!", L_State_4_pay; - close; - -L_State_4_pay: - if (zeny < 10000) goto L_State_4_nocash; - set zeny, zeny - 10000; - getitem 545, 1; - set @Q_status, 5; - callsub S_Update_Var; - mes "[Alan]"; - mes "\"Here you go - have fun with it.\""; - close; - -L_State_4_nocash: - mes "[Alan]"; - mes "\"Seems like you are out of cash.\""; - close; - -L_State_5: - mes "[Alan]"; - mes "\"I hope you are statisfied with your forest bow. It is one of my best works.\""; - next; - - if (Inspector == 1) - menu - "I am!", -, - "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; - close; - -L_NohMask_Answer: - mes "[Alan]"; - mes "\"No.\""; - close; - -S_Update_Var: - set QUEST_Forestbow_state, - (QUEST_Forestbow_state & ~(@Q_MASK) - | (@Q_status << @Q_SHIFT)); - return; -} diff --git a/npc/new_20-1-woodland-village/doctor.txt b/npc/new_20-1-woodland-village/doctor.txt deleted file mode 100644 index 825db4cc..00000000 --- a/npc/new_20-1-woodland-village/doctor.txt +++ /dev/null @@ -1,67 +0,0 @@ -// Doctor - -new_20-1.gat,148,25,0 script Doctor 107,{ - if (getequipid(equip_head) == 616) goto L_Axe; - if (getequipid(equip_head) == 621) goto L_Eyepatch; - - mes "[Doctor]"; - mes "\"Hello, can I help you?\""; - next; - - if (Inspector == 1) - menu - "I think I am sick!", L_Cure, - "No, I feel fine.", -, - "Have you seen anything strange in town? Anything that might have to do with the robberies?", L_NohMask; - if (Inspector != 1) - menu - "I think I am sick!", L_Cure, - "No, I feel fine.", -; - - mes "[Doctor]"; - mes "\"Then please stop wasting my precious time.\""; - close; - -L_Cure: - mes "[Doctor]"; - mes "\"That is impossible. Status ailments aren't ingame yet!\""; - close; - -L_Axe: - mes "[Doctor]"; - mes "\"Oh my, what happened to you?\""; - next; - mes "[Doctor]"; - mes "\"Wait. Thats just a fake. Shame on you!\""; - next; - close; - -L_Eyepatch: - mes "[Doctor]"; - mes "\"Would you like a glass eye to replace that eye patch you have? We just got a whole load of them in today. I'll even let you keep the patch as a souvenir.\""; - next; - menu - "Yes, please.", L_Eyepatch_GlassEye, - "No thank you", -; - - mes "[Doctor]"; - mes "\"If you change you're mind, please come back and see me.\""; - next; - close; - -L_Eyepatch_GlassEye: - mes "[Doctor]"; - mes "\"Now, where did I put that box of eyes...\""; - mes "He goes off to look for them and comes back empty handed."; - next; - - mes "[Doctor]"; - mes "\"I can't seem to find where I put that box. YOu should come back later, I may have found them by then.\""; - next; - close; - -L_NohMask: - mes "[Doctor]"; - mes "\"No, I haven't seen anything.\""; - close; -} diff --git a/npc/new_20-1-woodland-village/drunks.txt b/npc/new_20-1-woodland-village/drunks.txt deleted file mode 100644 index 410bb081..00000000 --- a/npc/new_20-1-woodland-village/drunks.txt +++ /dev/null @@ -1,16 +0,0 @@ -//Left drinking contest guy - -new_20-1.gat,65,55,0 script Drinker 121, { - mes "[Binge Drinker]"; - mes "\"Ha! I'll drink muuuch mo.. more than you! Im not ooone biiit dr...dr..unk!\""; - close; -} - -//Right drinking contest guy - -new_20-1.gat,68,55,0 script Drinker 121, { - mes "[Binge Drinker]"; - mes "\"I can still drink more! Better give up you... you... teelotaler! MORE BEER MELINDA!\""; - //I know it's called "teetotaler". That error is on purpose. - close; -} diff --git a/npc/new_20-1-woodland-village/inspector.txt b/npc/new_20-1-woodland-village/inspector.txt deleted file mode 100644 index 89192104..00000000 --- a/npc/new_20-1-woodland-village/inspector.txt +++ /dev/null @@ -1,127 +0,0 @@ -// - -new_20-1.gat,24,99,0 script Inspector#Hurnscald 150,{ - if (Inspector == 0 && BaseLevel >= 30) goto L_NohMask_Start; - if (Inspector == 1) goto L_NohMask_AskVillage; - if (Inspector == 2) goto L_NohMask_OldWoman; - if (Inspector == 3) goto L_NohMask_TheaterMask; - if (Inspector == 4) goto L_NohMask_TravelingTroupe; - if (Inspector == 5) goto L_NohMask_OldMan; - if (Inspector == 6) goto L_NohMask_OldMan_2; - if (Inspector == 7) goto L_NohMask_Alibi; - if (Inspector == 8) goto L_NohMask_Alibi_2; - if (Inspector == 9) goto L_NohMask_Alibi_3; - if (Inspector == 10) goto L_NohMask_Satchel; - if (Inspector == 11) goto L_NohMask_Basement; - if (Inspector == 12) goto L_NohMask_Note; - if (Inspector == 13) goto L_NohMask_TravelingTroupe_2; - if (Inspector == 14) goto L_NohMask_Over; - if (Inspector == 15) goto L_NohMask_End; - mes "[Inspector]"; - mes "\"I'm sorry, but I'm busy looking into this string of robberies.\""; - close; - -L_NohMask_Start: - mes "\"Hmm...what to do.\""; - mes "He looks up and into your face."; - next; - - mes "[Inspector]"; - mes "\"You look capable, will you help me solve these robberies?\""; - next; - - menu - "Yes", L_NohMask_Accept, - "No", -; - close; - -L_NohMask_Accept: - set Inspector, 1; - mes "[Inspector]"; - mes "\"Ok then. I'd like you to ask the villagers about the recent string of robberies.\""; - close; - -L_NohMask_AskVillage: - mes "[Inspector]"; - mes "\"Please continue talking to the villagers.\""; - close; - -L_NohMask_OldWoman: - mes "[Inspector]"; - mes "\"Hm...I don't know if I trust her eyesight or memory. See if someone else knows anything.\""; - close; - -L_NohMask_TheaterMask: - set Inspector, 4; - mes "[Inspector]"; - mes "\"Someone in a theater mask, eh? There was a traveling theater troupe in town recently, but they've moved on to Tulimshar. Please go talk to their leader about this.\""; - close; - -L_NohMask_TravelingTroupe: - mes "[Inspector]"; - mes "\"Please go talk to the leader of the traveling troupe about the theater mask.\""; - close; - -L_NohMask_OldMan: - set Inspector, 6; - mes "[Inspector]"; - mes "\"Hm...an old man? Could you interrogate him for me?\""; - close; - -L_NohMask_OldMan_2: - mes "[Inspector]"; - mes "\"Have you talked with the old man yet?\""; - close; - -L_NohMask_Alibi: - mes "[Inspector]"; - mes "\"Can you verify that with his wife?\""; - close; - -L_NohMask_Alibi_2: - set Inspector, 9; - mes "[Inspector]"; - mes "\"Hm...then it couldn't be him. I'm not sure where to go from here, maybe you can find something else. Try talking to everyone again.\""; - close; - -L_NohMask_Alibi_3: - mes "[Inspector]"; - mes "\"Made any progress yet?\""; - close; - -L_NohMask_Satchel: - mes "[Inspector]"; - mes "\"Then go north and investigate!\""; - close; - -L_NohMask_Basement: - mes "[Inspector]"; - mes "\"Did you look over the basement?\""; - close; - -L_NohMask_Note: - set Inspector, 13; - mes "[Inspector]"; - mes "\"What a strange note. I'll keep track of this, while you return the mask to the troupe.\""; - mes ""; - mes "\"By the way, stay sharp! I may call upon you again.\""; - close; - -L_NohMask_TravelingTroupe_2: - mes "[Inspector]"; - mes "\"Please return the mask to the traveling troupe.\""; - close; - -L_NohMask_Over: - set Inspector, 15; - mes "[Inspector]"; - mes "\"My men have found all of the stolen items. They were all in the mining camp. We still don't know who did it.\""; - mes "[2500 experience points]"; - getexp 2500, 0; - close; - -L_NohMask_End: - mes "[Inspector]"; - mes "\"Remember to stay sharp. I might need your help on another case.\""; - close; -} diff --git a/npc/new_20-1-woodland-village/kfahr.txt b/npc/new_20-1-woodland-village/kfahr.txt deleted file mode 100644 index 3ca72226..00000000 --- a/npc/new_20-1-woodland-village/kfahr.txt +++ /dev/null @@ -1,1224 +0,0 @@ -//################################################################################# -//# -//# Kfahr the Desert Warrior. -//# Participates in two quests: -//# - Sole participant in the Bone Knife quest: -//# (10 black scorpion stingers + 10 small mushrooms + level 40) -> Bone Knife -//# - Sole participant in the Golden Stinger subquest -//# (subquest for the Monster Oil subquest, cf. Nicholas' Setzer Quest) -//# (win arm-wrestling + bring 10 snake skins + level 60) -> golden stinger -//# -//# Variables used: @QUEST_Forestbow_state, nibble 2 (knife quest) -//# @QUEST_Forestbow_state, nibble 3 (monster oil subquest) -//# -//################################################################################# - -new_20-1.gat,67,57,0 script Kfahr 125,{ - - set @QS_NEWBIE, 0; - set @QS_MET_KFAHR, 1; - set @QS_KNOWS_KFAHR, 2; - set @QS_KNIFE_QUEST, 3; - set @QS_KNIFE_QUEST_DONE, 4; - set @QS_LOST_WRESTLING, 5; - set @QS_STINGER_QUEST, 6; - set @QS_STINGER_QUEST_DONE, 7; - - set @BEER, 539; - - set @BLACK_STINGER, 709; - set @BLACK_STINGERS_NR, 10; - set @MUSHROOM, 566; - set @MUSHROOMS_NR, 10; - set @SNAKE_SKIN, 641; - set @SNAKE_SKINS_NR, 10; - - set @KNIFE_QUEST_XP, 50000; - set @STINGER_QUEST_XP, 80000; - - set @BONE_KNIFE, 570; - set @GOLDEN_STINGER, 706; - - set @Q_MASK, NIBBLE_2_MASK; - set @Q_SHIFT, NIBBLE_2_SHIFT; - - set @Q_status, (QUEST_Forestbow_state & @Q_MASK) >> @Q_SHIFT; - - set @Q_needs_stinger, ((QUEST_Forestbow_state & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT) > 1; - - if (@Q_status == @QS_KNIFE_QUEST) - goto L_knife_quest_check; - - if (@Q_status == @QS_STINGER_QUEST) - goto L_stinger_quest_check; - - if (@Q_status > @QS_NEWBIE) - goto L_meet_again; - - mes "[Warrior]"; - mes "You stand before a battle-scarred, darkly tanned warrior, brimming with muscles."; - mes "Just looking at him you smell danger, adventure, excitement..."; - next; - - mes "[Warrior]"; - mes "On second thought, he really could use a bath."; - mes ""; - mes "The warrior turns towards you, grinning broadly."; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Why, hello there! Come to visit Kfahr the Warrior to hear of my exploits, have you?\""; - mes "He laughs heartily and gives you a slap on the back."; - mes "\"Can't blame you, can't blame you at all! Here, take a seat!\""; - next; - - set @has_beer, 0; - set @beer_count, 0; - set @last_story, 0; - - set @Q_status, @QS_MET_KFAHR; - callsub L_Update_Var; - - goto L_main_menu; - -L_meet_again: - mes "[Kfahr the Warrior]"; - mes "Kfahr nods and grins as you greet him."; - mes "\"Came back for more stories? Have a seat!\""; - next; - goto L_main_menu; - -L_main_menu: - if (@Q_status >= @QS_KNOWS_KFAHR) - goto L_real_main_menu; - menu "Who are you?", -, - "Goodbye.", L_end; - - mes "[Kfahr the Warrior]"; - mes "Kfahr laughs again."; - mes "\"Surely you jest! You must have heard of Kfahr, Slayer of Toby Rick the Desert Worm, Raider of the Lost Temple, Hero of Tulimshar?\""; - next; - - menu "Uhm...", -, - "Well...", -, - "To be quite honest...", -, - "Excuse me, someone is, er, whispering me...", L_end; - - mes "[Kfahr the Warrior]"; - mes "\"Ah, I knew it! So you have come to hear some tales about the dangers of the desert? You've come to the right man!\""; - next; - - set @Q_status, @QS_KNOWS_KFAHR; - callsub L_Update_Var; - goto L_real_main_menu; - -L_tale_sub: - if (@current_story == @last_story) - goto L_same_story_abort; - if (@has_beer == 0) - goto L_out_of_beer_abort; - set @last_story, @current_story; - set @has_beer, 0; - set @story_abort, 0; - return; - -L_same_story_abort: - mes "[Kfahr the Warrior]"; - mes "Kfahr frowns."; - mes "\"I only just told you that story. Trust me, the others are worth hearing, too!\""; - next; - set @story_abort, 1; - return; - -L_out_of_beer_abort: - mes "[Kfahr the Warrior]"; - if (@beer_count > 4) - mes "\"I think I've talked 'nuff for now... but thanks for lis'ning!\""; - if (@beer_count <= 4) - mes "\"Now that's one of my favorite tales, but my throat is just a little too dry to talk about something like that... could you help me out a little here?\""; - next; - set @story_abort, 1; - return; - -L_real_main_menu: - if (@Q_needs_stinger) - goto L_long_main_menu; - - menu "What's a Desert Worm?", L_tale_desert_worm, - "Desert Temple?", L_tale_desert_temple, - "Hero of Tulimshar?", L_tale_hero_tulimshar, - "Tell me about the desert!", L_tale_desert, - "I want to become as powerful as you!", L_gain_power, - "Here, have a beer!", L_give_beer, - "Goodbye!", L_end; - - close; - -L_long_main_menu: - - menu "What's a Desert Worm?", L_tale_desert_worm, - "Desert Temple?", L_tale_desert_temple, - "Hero of Tulimshar?", L_tale_hero_tulimshar, - "Tell me about the desert!", L_tale_desert, - "I want to become as powerful as you!", L_gain_power, - "Have you fought any Golden Scorpions?", L_golden_scorpion, - "Here, have a beer!", L_give_beer, - "Goodbye!", L_end; - - close; - -L_tale_desert_worm: - set @current_story, 1; - callsub L_tale_sub; - if (@story_abort) goto L_main_menu; - - mes "[Kfahr the Warrior]"; - mes "Kfahr smiles and leans back."; - mes "\"A desert worm is probably the largest creature you will ever see, larger even than most dragons. It spans a good twenty chains (or six box tosses if you're used to the Imperial system) in length, has a thick, rubbery skin, and teeth as long as my legs.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Most are a darkish gray, except for the young ones; those are more purplish, I've been told. Well, anyway, you hardly ever see one of them in their entirety, you only see the head, if they decide to come out and fight-- they tend to burrow under the ground.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"They are terrifying beasts, but lack any intelligent thought whatsoever. They just eat whatever gets in their way. There's nothing out there that can kill one, I think, and they can grow hundreds of years old.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Fortunately, they're kind of rare these days, and mostly roam in the empty deserts far, far south of Tulimshar. They don't like the area too close to the mountains, I think; probably too rocky underground.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "Kfahr takes a sip from his beer."; - mes "\"Anyway. Desert worms are dangerous, as I said, but there was one particularly terrifying one, called Toby Rick. You must've heard of it-- the greatest and most dangerous worm, scourge of the trade routes. It could smell humans from miles away.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Most desert worms don't smell or see or feel much, you see. They just notice when something's walking nearby, then jump up and swallow it. But Toby Rick was different. He was a terrifying beast, three times as long as a regular worm.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"So to feed itself, it had learned to smell. That's right, the beast had grown nostrils and learned how to use 'em!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"One day I was hired to protect a caravan going north to Tulimshar, with a friend of mine, old Arvek. He only came along for the fun, of course; it's not as if I really need much help defending a caravan... or at least normally it isn't.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Arvek's fun to have about. His manners are as bad as his breath, but he knows how to make a laugh out of everything. One thing you musnt't ever do with him, though, and that is to try his `homebrew'-- some kind of ale he makes out of maggot slime...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "Kfahr takes another sip of beer, momentarily irritated as if surprised by the taste."; - mes "\"Anyway, This time was different. We were barely three days out in the desert, when we spotted him-- `the Black Worm!', the Caravan Master cried, `Over there; it will kill us all!'\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"I had barely enough time to draw out my sword, and the beast was upon us! The caravan people were fleeing for their lives, so it was up to me and Arvek to stop it.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"That was madness, of course; no-one takes on a desert worm, if they have a choice. But we didn't; you see, with most desert worms you can just stand still and it won't notice you and pass by. But not with this one!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "Kfahr leans forward."; - mes "\"So this humongous beast came roaring towards us, a big back hole where the mouth is, spiky fins sticking out to the side, all ready to swallow us all! My sword felt like a toothpick against that monster!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "He pauses, then leans back a little to take another long sip from his beer."; - mes "\"So it seemed that our last hour was at hand, that we'd be swallowed and never heard from again!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Aha, but Kfahr doesn't die quite so easily. What happened was this: Me and Arvek charged towards that thing, slashing and stabbing, but our blows would just glance off. The beast roared and just slid by us, slapping us to the side with its fins like maggots, knocking us to the ground.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"It bolted up into the air, and tore down on the caravan, swallowing each and everyone in there in a single big gulp!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Then it turned around towards us. Those fins had hit us pretty badly; I had lost my shield and Arvek his backpack. Better for him, I suppose, but I had been rather fond of that shield-- not that it would have helped me much here...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "Kfahr leans foward again, nearly knocking over his beer."; - mes "\"So the beast charges at the two of us again and we dodge-- Arvek left, me right. The beast is smarter than the average desert worm, though, and had expected that-- so it bends to the side and swallows poor Arvek, hair and hide and all.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "Kfahr's eyes sparkle with excitement."; - mes "\"It turns around, trying to get me too. I dodge it-- left, then the same again, I dodge it right. But it can't go on like that, the beast isn't tiring, but I am...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"So for one instant I think that this might be it, that I might die out here! A worthy death, I suppose, against the king of desert worms! And just as I think that, I bump against something\""; - next; - - mes "[Kfahr the Warrior]"; - mes "Kfahr slaps on the table."; - mes "\"Arvek's backpack! Doesn't sound terribly exciting, of course-- what am I going to do, toss it at the beast and hope that it chokes on it?\""; - next; - - mes "[Kfahr the Warrior]"; - mes "He grins."; - mes "\"But I remember something better. That beast had grown nostrils, right? So it can smell and taste! So I tear open his backpack and pull out that big snakeskin of that disgusting maggot ale of his. It's still filled to the brim.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"I quickly put on my gloves again, because I don't want to touch that stuff with my bare skin. The beast is almost upon me, but I have only that one chance-- so I squeeze the skin while sticking my thumb into the opening, until I can see the black of its nostrils...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"...and when I think it's almost too late already, I shoot out that revolting brew at the beast's smelling holes, and I hit! Two at once, and up and sideways it rolls, away from me, and roaring and bellowing in pain!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"It roared for a good five minutes, then convulsed... and first it spat out old Arvek, who was a bit irritated at all that because, as he told me, he had `almost pierced the pancreas', whatever that means...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Next it spat out the caravan, and then some other caravan it had plucked off from elswehere. Somehow, everyone from there was still alive, too.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Then it slid away from us, away to the north, but we could see it getting slower and slower.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Two days later we caught up with it, but it was already dead then and had started to smell. We looked around and inside of it, found treasures and remnants of some less fortunate caravans and split them up appropriately.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"(I never told Arvek that it was his brew that killed it; he'd never have forgiven me.)\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"One of the nomads that had been travelling with the other caravan then told me that you could make special kinds of knives and swords and armor out of desert worm bones.\""; - next; - - menu "Hang on... bones in a... worm?", L_worm_bones, - "That's neat! Do you have any that I could see?", L_worm_see_bones, - "And then?", L_worm_final, - "Zzzzzzzz.......", L_end; - -L_worm_final: - mes "[Kfahr the Warrior]"; - mes "\"Nothing much else happened on that trip. When we arrived in Tulimshar, people at first didn't believe the story, of course, until we showed them the treasures and the bones. Ah, those were wonderful days...\""; - mes "He sighs and leans back, a nostalgic look on his face."; - next; - - goto L_main_menu; - -L_worm_bones: - mes "[Kfahr the Warrior]"; - mes "\"Weren't you listening? A desert worm is not a regular worm; a worm couldn't survive in the desert.\""; - next; - - menu "Do you have any bones that I could see?", L_worm_see_bones, - "Never mind that, what happened then?", L_worm_final, - "Zzzzzzzz.......", L_end; - -L_worm_see_bones: - if (@Q_status == @QS_KNIFE_QUEST) - goto L_boneknife_quest_ip; - - if (@Q_status > @QS_KNIFE_QUEST) - goto L_worm_continue2; - - if (baselevel >= 40) - goto L_boneknife_quest; - - mes "[Kfahr the Warrior]"; - mes "\"Of course!\""; - mes "He pulls out a strangely curved knife with a yellow-whiteish blade that is almost transparent at the edge."; - next; - - mes "[Kfahr the Warrior]"; - mes "\"When hardened properly, this bone knife can last a lifetime! One of the best knives you will find, too.\""; - mes "He puts the knife back into his pocket."; - next; - - goto L_main_menu; - - -L_worm_continue2: - mes "[Kfahr the Warrior]"; - mes "Kfahr laughs."; - mes "\"Just have a look at the knife I gave you if you don't believe me!\""; - next; - - goto L_main_menu; - -L_tale_desert_temple: - set @current_story, 2; - callsub L_tale_sub; - if (@story_abort) goto L_main_menu; - - mes "[Kfahr the Warrior]"; - mes "\"Ah, that...\""; - mes "Kfahr leans back and takes a sip from his beer."; - next; - - mes "[Kfahr the Warrior]"; - mes "\"That was many years ago, when George and I were just kids. George later became a pirate, you see; he always loved hunting for treasure. But back in those days it was all on level ground.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"George had found a treasure map somewhere... and when I say `found', I mean that in a fairly liberal sense; he always loved those maps, almost as much as the excitement of hunting for treasure.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Anyway, that map pointed to a spot in the desert a good day's walk south of Tulimshar. So we grabbed our satchels and coats and packed food and water, and headed there in the evening.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"We walked all night. As you know, it's best not to travel during the day if you can avoid it, and we were young and energetic in those days, so that was easily avoided.\""; - mes "He sighs and takes another sip."; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Anyway, when the sun rose in the morning, we still hadn't found the place. So we climbed up on the nearest dune and looked all around to find it.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"But there was nothing, nothing at all. We looked and looked-- and suddenly George screamed: While we weren't paying attention to nearby things, scorpions had crept up on us!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"The scorpions had smelled the food we had brought and cut open our satchels, tearing our waterskins and making a mess of our food-- and now that they were done with that, they were coming for us!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"We didn't have any suitable weapons, and not much of a choice either, so we made a break for it. We ran into the desert, fast as our legs would carry us, and the scorpions after us.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"We very nearly didn't make it. There was nothing around but sand, and we had no water, no food-- at least we'd had our breakfast already-- and the sun kept burning, and burning, and trying to cook us alive.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"We had long lost the scorpions, but we were dry like parchment, and exhausted from all the sun and running. So we sat down in the shades of a dune and contemplated our options.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Without water we couldn't last during the day. So our only hope was to find shelter somewhere-- except that the only thing around was sand, and the mid-day sun would rob that of all shelter.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"So we resigned to continuing to search for something, anything-- it was either that, or die of thirst for sure. The only problem was that we were already so thirsty and it was so bright that we couldn't see nor walk straight anymore.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"So we had barely made it to the top of the next dune when George slipped and rolled down the other side. I wanted to catch him, but I was too dizzy myself, and so I rolled after him.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"We seemed to roll down for hours, and I kept feeling dizzier and dizzier; I didn't have the strength to stop. When we arrived at the bottom, I just wanted to lie down and let the sun dry me up.\""; - mes "Kfahr takes a deep sip of beer. \"Aaah.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"I was being foolish, of course. You should never give up, no matter how hopeless the situation may seem. Anyway, I finally did decide to get up on my knees and look around again...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"...and what I saw right before me, believe it or not, was a giant face of a man, carved into rock-- there, in the middle of the desert, half-sunk, a shattered visage!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"I pulled George up-- I didn't have the strength to speak, but walking seemed to work-- and we slowly made our way over to it. We weren't thinking much, just trying to find some shade, so we climbed into that thing's ear.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Inside it felt moist, as if it was a real ear-- not that I've climbed inside a real ear, mind you! But that feeling of cool and dampness and water was like a magical healing potion; we suddenly felt strength in our legs again.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"When we looked aorund, we noticed that there was a passage leading further underground, and long-spent torches on the wall. Fortunately I still had my tinderbox, so I wrapped my shirt around a torch and lighted it.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"We climbed down, and soon we heard the dripping of water-- we had found an underground water-hole! More than that, we had found a gigantic underground cave, and, at the end of it, a huge portal.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"We first drenched ourselves in water-- somehow managing not to douse the torch-- and drank until we were ready to burst. When we had rested, we went to the portal to have a closer look.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"The portal was made out of bronze, or some similar metal, with images of snakes engraved all over. Curious as we were, we pulled the door open-- it wasn't locked or barred in any way-- and had a look inside.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"The passages in there were cool and dark, with a ceiling high enough to swallow the light of my torch. There were snakes, quite a few of them, but we were both quick-footed and managed to avoid them.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"There were chambers and inscriptions and more torches, but not a living being besides us and the snakes. Hmm. Though I could have sworn that some of the statues there were following us with their eyes...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"All went well, until George stepped into a trap. A piece of ground just caved in, and if I hadn't grabbed his hand at the last second, he would have ended up on some rusty and probably poisoned spikes on the bottom...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"But I moved too fast, and slipped, and let go of the torch to catch myself with the other hand-- and the torch ended up in the bottom of the pit! Well, better the torch than George, I suppose...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Still, we no longer had any light. Being careless, I had gotten my tinderbox wet while we were at the water-hole, so we couldn't make another torch either.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"We had the choice between staying by our torch and watching it die, and then follow suit at the hands, or, well, fangs of the snakes, or wandering off in the dark, to be eaten by snakes someplace else.\""; - mes "Kfahr empties his beer, looking a bit disappointed."; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Anyway, we took the latter option. We wandered through the dark, somehow barely avoiding the snakes and the traps, running into walls and hitting our heads on archways, until, suddenly, we saw something shining up ahead.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"That thing was on some kind of pedestal, and it looked like a golden tablet of sorts. We clambered towards it-- the only source of light in here, the only thing that could save us-- and hesitated.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Should we just take it? This was clearly some kind of temple, so it might be something sacred. George and I argued about it for a while, until I decided to end the discussion-- so I simply grabbed it: we needed light.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"At that point, a terrible grinding noise started all around us, as the pedestal began to sink into the ground. We had triggered some ancient trap!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Holes on the walls were opening up, and snakes began to gush out-- only now did we realise that we were in a huge, opulent chamber, with gold and gems and images all around! But now it was too late for any looting; we had to run for our lives!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"So we ran from that slithering mass, faster than we ever had! We had no idea where we were going of course, but at least we had light again...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Somehow we got lucky, somehow we escaped. It was evening again when we climbed out of that ear into the desert again, with only our lives and that golden tablet. We only barely made it back to Tulimshar in the morning.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"But we did have the tablet as a proof of what happened.\""; - mes "He grins."; - mes "\"That was my first real adventure, I think. Ah, those were exciting days.\""; - next; - - menu "Wow.", -, - "What happened to the tablet?", L_tale_tablet, - "Did you go there again?", L_tale_temple_again, - "Zzzzzzz.....", L_end; - - goto L_main_menu; - -L_tale_tablet: - - mes "[Kfahr the Warrior]"; - mes "\"Well, we couldn't read it. We later sold it for a good price, to a young travelling archeologist, Doctor Nohlidge or something like that. She said that the engravings described sacrifical practices of an ancient snake cult...\""; - mes "He shrugs."; - next; - goto L_main_menu; - -L_tale_temple_again: - - mes "[Kfahr the Warrior]"; - mes "Kfahr laughs."; - mes "\"Of course we tried to go there again. After seeing all that treasure, George wouldn't give up on it. We tried many times-- as did others, from what I've heard-- but we never found it again.\""; - next; - goto L_main_menu; - -L_tale_hero_tulimshar: - set @current_story, 3; - callsub L_tale_sub; - if (@story_abort) goto L_main_menu; - - mes "[Kfahr the Warrior]"; - mes "\"Yes, Hero of Tulimshar. That was many years"; - mes "ago, but I did save the city of Tulimshar from a deadly drought.\""; - mes "He grins broadly."; - mes "\"And quite a feat that was, let me tell you!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Back in those days, there wasn't much trade with Hurnscald, and Tulimshar was dependent on its own water supply-- critically dependent, even.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Now, one day the water people drew from the wells started smelling. The smell was nauseating, and people who drank from it became violently sick.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"So the entire town was without water, except for the water reserves in the cistern. Someone had to act quickly-- and of course that someone was me.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"With nothing more than a torch, some light armor and a sword, I climbed down one of the wells. It was a long climb; the wells go down fairly deep.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"I noticed that there were some holes in the walls of the wells, with hollow spaces on the sides... Hmm, that reminds me that I still have to check whether the rumors of a labyrinth underneath Tulimshar are true.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Anyway, it took me a long time to get down, and every minute the stench was getting worse-- something really bad was down there. I had to stop and tie a wet piece of cloth over my mouth so that I wouldn't inhale all of that nasty stuff.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"My torch was in an even poorer shape-- whatever was making that smell had killed the flame, so I soon had to rely on the light from above to see anything.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Finally I arrived at the water level. All Tulimshar wells dip into the same underground lake, which is on the side of a huge underground cavern. And in the midst of that cavern lay-- hardly visible through the greenish mist coming from it-- a Stinkewyrm!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Stinkewyrms are smaller cousins of dragons, but just as dangerous. They have a green, sticky skin, and, well, they stink. A lot. This one was particularly bad-- it had filled up the entire cave with stinkiness!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"I climbed down and swam to the shore. The stench was terrible; I had to hold my breath to get closer to the monster. There it was, lying on the ground, snoring, poisoning all our water! So I tried to wake it up to scare it away.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"I kicked it. I yelled at it. (Bad mistake, I got some of that stinky stuff in my lungs.) I poked at it with my sword. I even tried to poke it in the eyes, but I couldn't get that close to its mouth-- that was where most of the smell was coming from.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"After a few attempts I couldn't take it anymore, so I had myself be pulled up again. It took me a while to recover and to tell the tale. We talked about what could be done, but no-one had an idea.\""; - mes "Kfahr takes a deep sip from his beer."; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Finally, I came up with something. Stinkewyrms love that terrible stench of theirs, so what should be their natural enemy? Why, soap, of course!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"We couldn't just dump all the soap into the underground lake, of course; the water would be undrinkable again. So we collected some of the soap, and I climbed down again with it.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Having arrived at the bottom, I cut off the biggest of the water buckets and filled it with water-- and that was a really big one, I could hardly carry it when it was full. Then I dissolved most the soap, and poured that onto the Stinkewyrm's head.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "Kfahr laughs."; - mes "\"Ah, that caught its attention! You should have seen that dragon roar, as it jumped to its feet and tried to find out who had soaped it! I rushed back to the water and made another bucket of soap water.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"But it had noticed me! And as soon as it had realized where I was, it came after me. Then it stopped, towering right before me, its stench nearly killing me, and grinned that broad, crooked-teeth dragon smile of its kind.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Then it took a deep breath-- and I realised that that was probably `it' for me; Stinkewyrms can breathe fire like real dragons, and I didn't have the time to run back to the water.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"But when it breathed out, only a tiny little flame came out-- and a lot of terrible smell that nearly knocked me off my feet.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"For you see, it had generated so much of the deadly smell around itself that even its own fire breath couldn't survive!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"So it stared at me, wide agape-- the perfect opening!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"I stormed at it and before it could even blink, it had a huge load of bubbly soap water down its throat.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"You should have heard the coughing and shaking! I swear, I thought the roof would collapse as it was jumping and choking...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Bubbles were coming out of its mouth, its nostrils, even its ears! The poor wyrm must have never felt so clean in its life!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"I was out of soap, but the beast didn't know that-- so I quickly grabbed another bucket and charged it again.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"And it worked! Seeing me like this again, it ran, squealing, back into the underground caves from where it must have come.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "Kfahr roars with laughter and slaps his hands on the table."; - mes "\"So we defeated it with hygiene! Ah, that was wonderful. After a day, the stench had worn off enough that we could drink the water again, and a week later it was almost completely gone. And of course I was the hero of the day.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "Kfahr downs the rest of his beer."; - mes "\"And from that day on they called me the `Hero of Tulimshar'.\""; - next; - - goto L_main_menu; - -L_tale_desert: - set @current_story, 4; - callsub L_tale_sub; - if (@story_abort) goto L_main_menu; - - mes "[Kfahr the Warrior]"; - mes "Kfahr leans back, trying to find the right words to describe the desert."; - mes "\"The desert... a cold and lonely place at night, and a hot and lonely place during the day.\""; - mes "For someone who apparently spent most of his life in the desert, his insights sometimes seem less than profound."; - next; - - mes "[Kfahr the Warrior]"; - mes "\"The desert is a living hell during some times of the year. Filled with black scorpions and snakes, except for the shadier areas, and mountain snakes if you go further east.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"South of Tulimshar is a fairly protected region; the nomads keep the snakes out of there and you'll find only relatively harmless monsters. But go west from there, to the beach, and it's scorpions and snakes...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"...and east of there you find the old Hatmaker cave, now filled to the brim with snakes! Rumors have it that this was once an oasis, in centuries long gone by, but as far as I'm concerned that pit is just a dump that you best avoid.\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Go further to the east and you'll find ol' Pachua up on the mountain. He seems to have some kind of power over the mountain snakes there; they never attack him. I think he's a bit creepy, personally...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "\"...but if he offers you some of his tobacco, then by all means give it a try! That stuff is amazing.\""; - mes "He laughs, then begins to cough."; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Not terribly healthy, though, I s'pose...\""; - next; - - goto L_main_menu; - -L_gain_power: - if ((@beer_count - @has_beer) < 1) - goto L_listen_to_a_story_first; - - if (@Q_status < @QS_KNIFE_QUEST) - goto L_boneknife_quest; - - mes "[Kfahr the Warrior]"; - mes "\"Yeees, yes... doesn't everyone?\""; - mes "He laughs briefly."; - mes "\"Don't worry-- you can't become as powerful as I, of course, but if you keep practicing, you can get pretty damn close! Just make sure to pick your opponents carefully, and know when to run to live another day!\""; - next; - - goto L_main_menu; - -L_listen_to_a_story_first: - mes "[Kfahr the Warrior]"; - mes "\"That's the spirit! Perhaps you better listen to one of my tales, then!\""; - next; - goto L_main_menu; - -L_boneknife_quest: - if (@Q_status == @QS_KNIFE_QUEST) - goto L_boneknife_quest_ip; - - if (@Q_status > @QS_KNIFE_QUEST) - goto L_boneknife_quest_completed; - - if (baselevel < 40) - goto L_boneknife_quest_tooweak; - - mes "[Kfahr the Warrior]"; - mes "Kfahr stares at you for a moment, then nods."; - mes "\"You seem reasonably skilled. I think I may have something that I no longer need, but I don't want to give it to just anyone...\""; - mes "He hesitates, obviously trying to make up his mind about something, then continues."; - - set @Q_status, @QS_KNIFE_QUEST; - callsub L_Update_Var; - next; - -L_boneknife_quest_ip: - mes "[Kfahr the Warrior]"; - mes "\"Bring me " + @BLACK_STINGERS_NR + " black scorpion stingers and " + @MUSHROOMS_NR + " small mushrooms to prove that you are a competent warrior, and I'll see if I have something for you.\""; - mes "He grins."; - next; - - mes "[Kfahr the Warrior]"; - mes "\"But while you are here... perhaps you would like to listen to another story?\""; - next; - - goto L_main_menu; - -L_boneknife_quest_completed: - mes "[Kfahr the Warrior]"; - mes "\"I really don't have anything else I'd want to give away to make you stronger. Look around a bit yourself! You won't become a hero if you keep begging for help!\""; - next; - goto L_main_menu; - -L_boneknife_quest_tooweak: - mes "[Kfahr the Warrior]"; - mes "\"You know, little one, if you keep practicing a little and come back once you're a bit stronger, I might have something for you...\""; - mes "He winks."; - next; - goto L_main_menu; - - -L_knife_quest_check: - mes "[Kfahr the Warrior]"; - mes "Kfahr eyes you with unconcealed amusement."; - mes "\"Welcome back! Did you bring me the things I asked for?\""; - next; - - menu "Yes, here they are!", L_knife_quest_completecheck, - "Er, what were those things again?", L_boneknife_quest_ip, - "No, sorry, I didn't have the time.", L_main_menu, - "I forgot! Let me get them right now.", L_end; - close; - -L_knife_quest_completecheck: - if (countitem(@BLACK_STINGER) < @BLACK_STINGERS_NR) - goto L_knife_quest_missing_stingers; - - if (countitem(@MUSHROOM) < @MUSHROOMS_NR) - goto L_knife_quest_missing_mushrooms; - - - mes "[Kfahr the Warrior]"; - mes "Kfahr is delighted."; - mes "\"Well done, well done! Now that's what I call Warrior spirit!\""; - mes "He laughs, then suddenly stops, turning to you with suspicion in his eyes."; - mes "\"You DID get those yourself, didn't you? Not buy them or somesuch...?\""; - next; - - mes "[Kfahr the Warrior]"; - mes "Before you can answer, he laughs and slaps you on the back again."; - mes "\"Ah, what am I thinking! Too many years in the desert make you a little suspicious of everyone and everything! Naah, I believe you.\""; - mes "He pulls a strangely curved knife out of a side pocket and holds it up to the light. The blade is partly transparent, and looks quite sharp."; - next; - - mes "[Kfahr the Warrior]"; - mes "\"It's a bone knife, carved out of the umplex bone of a desert worm... you can probably guess which one.\""; - mes "He grins broadly again, weighing the weapon."; - mes "\"It's a little heavy, but one of the best knives you can get. Certainly beats a short sword any time of day.\""; - mes "I had the nomads make me a few of them, and I hardly use them nowadays, so I think I can part with this one."; - next; - - mes "[Kfahr the Warrior]"; - mes "He hands you the knife."; - mes "\"Oh, and I think I'll keep those in return; I know someone who will trade them for antidote potions.\""; - mes "He pockets the stingers and mushrooms."; - mes "[" + @KNIFE_QUEST_XP + " experience points]"; - next; - - set @Q_status, @QS_KNIFE_QUEST_DONE; - callsub L_Update_Var; - - delitem @BLACK_STINGER, @BLACK_STINGERS_NR; - delitem @MUSHROOM, @MUSHROOMS_NR; - getexp @KNIFE_QUEST_XP, 0; - getitem @BONE_KNIFE, 1; - - - goto L_main_menu; - -L_knife_quest_missing_stingers: - mes "[Kfahr the Warrior]"; - mes "\"No, no... I said " + @BLACK_STINGERS_NR + " black scorpion stingers."; - if (countitem(@BLACK_STINGER)) - mes "You will need " + (@BLACK_STINGERS_NR - (countitem (@BLACK_STINGER))) + " more of those.\""; - if (countitem(@BLACK_STINGER) == 0) - mes "You didn't bring even a single one!\""; - next; - close; - -L_knife_quest_missing_mushrooms: - mes "[Kfahr the Warrior]"; - mes "\"No, no... I said " + @MUSHROOMS_NR + " small mushrooms."; - if (countitem(@MUSHROOM)) - mes "You will need " + (@MUSHROOMS_NR - (countitem (@MUSHROOM))) + " more of those.\""; - if (countitem(@MUSHROOM) == 0) - mes "You didn't bring me even a single little mushroom!\""; - next; - close; - -L_stinger_quest_check: - mes "[Kfahr the Warrior]"; - mes "Kfahr grins at you."; - mes "\"Welcome, welcome! Did you bring me my snake skins?\""; - next; - - menu "Yes, here they are!", L_snakeskins_completecheck, - "No, sorry, I didn't have the time.", L_main_menu, - "I forgot! Let me get them right now.", L_end; - close; - - -L_snakeskins_completecheck: - if (countitem(@SNAKE_SKIN) < @SNAKE_SKINS_NR) - goto L_snakeskins_missing; - - delitem @SNAKE_SKIN, @SNAKE_SKINS_NR; - getitem @GOLDEN_STINGER, 1; - - set @Q_status, @QS_STINGER_QUEST_DONE; - callsub L_Update_Var; - - getexp @STINGER_QUEST_XP, 0; - - mes "[Kfahr the Warrior]"; - mes "Kfahr takes the skins and pulls a golden scorpion stinger out of his pocket."; - mes "\"Well, you've earned it. But be careful-- the poison in there is still lethal, after all those years.\""; - mes "He hands you the scorpion stinger."; - mes "[" + @STINGER_QUEST_XP + " experience points]"; - next; - goto L_main_menu; - -L_snakeskins_missing: - mes "[Kfahr the Warrior]"; - mes "\"No, no... I said " + @SNAKE_SKINS_NR + " snake skins."; - if (countitem(@SNAKE_SKIN)) - mes "You will need " + (@SNAKE_SKINS_NR - (countitem (@SNAKE_SKIN))) + " more of those.\""; - if (countitem(@SNAKE_SKIN) == 0) - mes "You didn't bring even a single skin!\""; - next; - close; - - -L_give_beer: - if (countitem(@BEER) < 1) - goto L_player_out_of_beer; - - if (@has_beer) - goto L_enough_beer_for_now; - - if @beer_count > 4 - goto L_too_much_beer; - - setarray @beermessages$, - "Ah yes... a warrior's drink!", - "Generous, generous! I like that!", - "Hahah! That's just what I needed!", - "I love this town! Hurnscaldian hospitality! Mrahahahah!", - "A'ight, one more can't hurt, eh?"; - - set @mesg$, @beermessages$[@beer_count]; - - delitem @BEER, 1; - - set @has_beer, 1; - set @beer_count, @beer_count + 1; - - mes "[Kfahr the Warrior]"; - mes "Kfahr is visibly delighted."; - mes "\"" + @mesg$ + "\""; - mes "He takes a deep sip."; - mes "\"Aaah, magnificent!\""; - - if (@beer_count > 4) - mes "Kfahr seems quite relaxed now."; - - next; - - goto L_main_menu; - -L_enough_beer_for_now: - mes "[Kfahr the Warrior]"; - mes "\"Generous, generous! But I still have plenty in here!\""; - mes "He laughs and takes a sip from the beer you gave him earlier."; - next; - goto L_main_menu; - -L_too_much_beer: - mes "[Kfahr the Warrior]"; - mes "Kfahr leans back and sighs heavily."; - mes "\"Very, very generous... bu' I think I'm fine for now.\""; - mes "He suppresses a burp."; - next; - goto L_main_menu; - -L_player_out_of_beer: - mes "[Kfahr the Warrior]"; - mes "Kfahr stares at you, then begins to laugh."; - mes "\"Mrahahahahaha! Here's the beer! Right, right! Naah, I get it! Save your gold for whatever you need it for! But if you have some spare and want to share a beer, you know where to find me!\""; - next; - goto L_main_menu; - -L_golden_scorpion: - if (@Q_status > @QS_STINGER_QUEST) - goto L_golden_scorpion_over_ask; - - if (@Q_status == @QS_STINGER_QUEST) - goto L_golden_scorpion_ask_again; - - if (@Q_status == @QS_LOST_WRESTLING) - goto L_golden_scorpion_wrestle_again; - - mes "[Kfahr the Warrior]"; - mes "He grins."; - mes "\"Fought any? I single-handedly raided a nest of those beasts! Ah, but golden scorpions are almost unheard of in these parts. Why do you ask?\""; - next; - - menu "Never mind, I was just curious.", L_main_menu, - "I need a golden scorpion stinger.", -; - - mes "[Kfahr the Warrior]"; - mes "\"A golden scorpion stinger? Those are rare and valuable, I hope that you know that!\""; - - if (baselevel < 60) - goto L_too_lowlevel_for_stinger; - - if (@Q_status < @QS_KNIFE_QUEST) - goto L_golden_requires_knife_quest; - - if (@Q_status < @QS_KNIFE_QUEST_DONE) - goto L_golden_requires_knife_quest_done; - - mes "\"Still, you are a warrior of repute. I'll consider giving it to you...\""; - next; - - mes "[Kfahr the Warrior]"; - mes "A mischievous sparkle lightens up in his eyes."; - mes "\"...if you arm-wrestle me for it!\""; - next; - -L_golden_scorpion_wrestle_intro: - - menu "Never!", L_main_menu, - "Wait... what?", L_wrestle_explain, - "Bring it on!", L_golden_scorpion_wrestle; - close; - -L_golden_requires_knife_quest_done: - mes "He hesitates."; - mes "\"But no, this is too valuable. Perhaps if you finish that other quest I gave you...?\"."; - next; - goto L_main_menu; - -L_golden_requires_knife_quest: - mes "He hesitates."; - mes "\"But no, this is too valuable. I think I should have you prove your worthiness with another quest first...\""; - next; - goto L_boneknife_quest; - -L_wrestle_explain: - mes "[Kfahr the Warrior]"; - mes "\"Arm wrestling! Arm against arm! And whoever is stronger wins! If you manage to defeat me, I'll give you a little quest for the stinger. How about it?\""; - next; - goto L_golden_scorpion_wrestle_intro; - -L_too_lowlevel_for_stinger: - mes "\"Well, I have one, but I can't just give it to anyone. Maybe if you train a little and become a worthy warrior I will consider giving it away...\""; - next; - goto L_main_menu; - -L_golden_scorpion_over_ask: - mes "[Kfahr the Warrior]"; - mes "\"Is this about the stingers again? I already gave you a golden stinger, I'm not going to part with any more.\""; - next; - goto L_main_menu; - -L_golden_scorpion_ask_again: - mes "[Kfahr the Warrior]"; - mes "\"This is about the stinger again, right? Well, just bring me " + @SNAKE_SKINS_NR + " snake skins, and you can have one.\""; - next; - goto L_main_menu; - -L_golden_scorpion_wrestle_again: - mes "[Kfahr the Warrior]"; - mes "\"This is about the stinger again, eh? So you want to give it another try?\""; - mes "He grins broadly."; - next; - goto L_golden_scorpion_wrestle; - -L_golden_scorpion_wrestle: - mes "[Kfahr the Warrior]"; - mes "You sit down. Both of you place your arms on the table, on opposing sides, and grab each other's hands."; - next; - - set @KFAHR_STR, 70 + @beer_count * 6; - set @KFAHR_AGI, 60 - @beer_count * 5; - set @kfahr_stamina, 120; - - set @PC_STR, readparam(bStr); - set @PC_AGI, readparam(bAgi); - set @PC_MAX_STAMINA, readparam(bVit) + 20; - set @pc_stamina, @PC_MAX_STAMINA; - - setarray @positions$, - "Kfahr's hand is almost on the table.", - "Kfahr's hand is pushed back.", - "Kfahr and your hands are centered.", - "Your hand is pushed back.", - "Your hand is almost on the table."; - - set @position, 2; - set @first_round, 1; - -L_wrestle_loop: - mes "[Arm-wrestling with Kfahr]"; - - mes @positions$[@position]; - - if ((@PC_STAMINA * 2 <= @PC_MAX_STAMINA) && (@PC_STAMINA * 4 > @PC_MAX_STAMINA)) - mes "You feel a little exhausted."; - if (@PC_STAMINA * 4 <= @PC_MAX_STAMINA) - mes "You feel very exhausted."; - next; - - menu "Push!", L_wrestle_push, - "Hold!", L_wrestle_hold, - "Slam!", L_wrestle_slam, - "Consider your options", L_wrestle_info; - close; - -L_wrestle_info: - mes "[Arm-wrestling with Kfahr]"; - mes "Kfahr is a strong arm-wrestling opponent. Winning against him won't be easy."; - mes "Each round you have to choose an action; what you choose determines both your chances of moving each other's arms and how much weaker you get."; - next; - mes "[Arm-wrestling with Kfahr]"; - mes "If you PUSH, you may be able to push him back, but if you fail, you will lose more stamina than if you had succeeded."; - next; - mes "[Arm-wrestling with Kfahr]"; - mes "If you HOLD, you lose little stamina and may be able to hold him and drain his stength, but you cannot win just by holding."; - next; - mes "[Arm-wrestling with Kfahr]"; - mes "If you SLAM, you try to move against him quickly-- if you are successful, you may push him back quite a bit, but losing this will drain you badly."; - next; - goto L_wrestle_loop; - - -L_wrestle_push: - set @kfahr_def, @KFAHR_STR; - set @attack, @PC_STR; - set @cost_factor, 2; - callsub L_wrestle_attack; - if (@result < -1) - set @result, -1; // can't push back further than one - goto L_wrestle_next; - -L_wrestle_hold: - set @kfahr_def, @KFAHR_STR; - set @attack, @PC_STR; - set @cost_factor, 1; - callsub L_wrestle_attack; - if (@result < 0) - set @result, 0; // hold only - goto L_wrestle_next; - -L_wrestle_slam: - if (@beer_count == 5 && @first_round) goto L_quick_slam; - set @kfahr_def, @KFAHR_AGI; - set @attack, @PC_AGI; - set @cost_factor, 4; - callsub L_wrestle_attack; - goto L_wrestle_next; - - -L_wrestle_attack: - set @kfahr_stamina_bonus, @kfahr_stamina; - set @pc_stamina_bonus, @kfahr_stamina; - - if (@kfahr_stamina_bonus > 40) - set @kfahr_stamina_bonus, 40; - - if (@pc_stamina_bonus > 40) - set @pc_stamina_bonus, 40; - - set @score, @kfahr_def + @kfahr_stamina_bonus - @attack - @pc_stamina_bonus + rand(20) - rand(20); - - set @result, @score / 10; - - if (@result > 1) - set @result, 1; - - if (@result > 0) set @kfahr_stamina, @kfahr_stamina - 12; - if (@result == 0) set @kfahr_stamina, @kfahr_stamina - 16; - if (@result < 0) set @kfahr_stamina, @kfahr_stamina - 8; - - if (@result < 0) set @pc_stamina, @pc_stamina - (6 * @cost_factor); - if (@result == 0) set @pc_stamina, @pc_stamina - (8 * @cost_factor); - if (@result > 0) set @pc_stamina, @pc_stamina - (4 * @cost_factor); - - if (@kfahr_stamina < 0) - set @kfahr_stamina, 0; - - if (@kfahr_stamina < 0) - set @pc_stamina, 0; - - return; - -L_wrestle_next: - set @first_round, 0; - - mes "[Arm-wrestling with Kfahr]"; - if (@result < 0) mes "You manage to push him back!"; - if (@result == 0) mes "You hold your position!"; - if (@result > 0) mes "Kfahr pushes you back!"; - next; - - set @position, @position + @result; - if (@position < 0) goto L_wrestle_win; - if (@position > 4) goto L_wrestle_lose; - - goto L_wrestle_loop; - -L_wrestle_lose: - mes "[Arm-wrestling with Kfahr]"; - mes "Kfahr slams your hand on the table."; - next; - - mes "[Kfahr the Warrior]"; - mes "\"Don't worry! It was a good attempt-- but beating Kfahr is not quite so easy!\""; - mes "He laughs and slaps you on the shoulder."; - mes "\"But come back any time you want to try again!\""; - next; - - set @Q_status, @QS_LOST_WRESTLING; - callsub L_Update_Var; - - goto L_main_menu; - -L_quick_slam: - mes "[Arm-wrestling with Kfahr]"; - mes "Your hands have barely touched as you push against him with all your might. His reactions slowed by the beer, Kfahr doesn't stand a chance."; - next; - goto L_wrestle_win; - -L_wrestle_win: - mes "[Arm-wrestling with Kfahr]"; - mes "You slam Kfahr's hand on the table."; - next; - - mes "[Kfahr the Warrior]"; - mes "Kfahr stares first at the hand, then at you, incredulously."; - mes "Then he begins to roar with laughter, slapping you on the shoulder."; - mes "\"Excellent, excellent! Caught me in a weak moment there, did ya!\""; - next; - - mes "[Kfahr the Warrior]"; - mes "After calming down, Kfahr outlines your quest."; - mes "\"As I promised, I will give you the stinger if you do something for me. Get me " + @SNAKE_SKINS_NR + " snake skins, and I'll let you have it.\""; - next; - - set @Q_status, @QS_STINGER_QUEST; - callsub L_Update_Var; - - goto L_main_menu; - -L_end: - close; - -L_Update_Var: - set QUEST_Forestbow_state, - (QUEST_Forestbow_state & ~(@Q_MASK) - | (@Q_status << @Q_SHIFT)); - return; -} diff --git a/npc/new_20-1-woodland-village/misc.txt b/npc/new_20-1-woodland-village/misc.txt deleted file mode 100644 index b2cfe9da..00000000 --- a/npc/new_20-1-woodland-village/misc.txt +++ /dev/null @@ -1,11 +0,0 @@ -//Note in bar - -new_20-1.gat,54,49,0 script Note 127, { - mes "[Note]"; - mes "\"We refuse service to anyone who:\""; - mes "\"-Has a bubblehead\""; - mes "\"-Is not properly shaded\""; - mes "\"-Can't walk without stopping after every step\""; - close; - // In case you don't get the joke - it's a parody on Illutia. -} diff --git a/npc/new_20-1-woodland-village/nicholas.txt b/npc/new_20-1-woodland-village/nicholas.txt deleted file mode 100644 index 7d21ab0f..00000000 --- a/npc/new_20-1-woodland-village/nicholas.txt +++ /dev/null @@ -1,404 +0,0 @@ -//################################################################################# -//# -//# Nicholas the Smith. -//# Participates in iron ore smithery and the following quests: -//# - Together with Pachua: Iron Shield quest (repeatable) -//# (10 iron ores, 2 infantry helmets, 20000 GP, leather patch) -> iron shield -//# - Primary participant in the Setzer quest (monster oil/golden stinger subquests) -//# -//# Variables used: @QUEST_Forestbow_state, nibble 3 (setzer quest) -//# @QUEST_Forestbow_state, nibble 4 (iron shield quest) -//# -//################################################################################# - -new_20-1.gat,185,55,0 script Nicholas 135,{ - - set @IRON_ORE, 640; - set @INFANTRY, 638; - set @LEATHER_PATCH, 708; - set @SHORT_SWORD, 536; - set @MONSTER_OIL, 707; - set @SETZER, 571; - set @STEEL_SHIELD, 601; - - set @SETZER_XP, 100000; - set @SHIELD_XP, 20000; - - set @SHIELD_INITIAL, 0; - set @SHIELD_KNOWS_PATCH, 1; // knows that a leather patch is needed - set @SHIELD_COMPLETED, 2; // shield completed once - - set @SETZER_INITIAL, 0; - set @SETZER_KNOWS_OIL, 1; - set @SETZER_KNOWS_STINGER, 2; - set @SETZER_FLAG_MADE_OIL, 4; - set @SETZER_FLAG_MADE_SETZER, 8; - - set @Q_SETZER_MASK, NIBBLE_3_MASK; - set @Q_SETZER_SHIFT, NIBBLE_3_SHIFT; - - set @Q_SHIELD_MASK, NIBBLE_4_MASK; - set @Q_SHIELD_SHIFT, NIBBLE_4_SHIFT; - - set @Q_SETZER_status, (QUEST_Forestbow_state & @Q_SETZER_MASK) >> @Q_SETZER_SHIFT; - set @Q_SHIELD_status, (QUEST_Forestbow_state & @Q_SHIELD_MASK) >> @Q_SHIELD_SHIFT; - - mes "[Nicholas]"; - mes "\"Hello there,"; - mes "I'm an expert blacksmith."; - mes "If you get me some Iron Ore"; - mes "I could make you a very valuable shield"; - mes "or helmet.\""; - next; - menu - "I have some Iron Ore!", L_Check, - "Where can I get this Iron Ore?", L_Info, - "I'm okay, thanks.", L_Pass; - -L_Check: - mes "[Nicholas]"; - mes "\"Let me take at look at how much you have...\""; - next; - if(countitem(@IRON_ORE)<5) goto L_NoItem; - if(countitem(@IRON_ORE)<10) goto L_StageA; - if(countitem(@IRON_ORE)<15) goto L_StageB; - goto L_StageC; - -L_Info: - mes "[Nicholas]"; - mes "\"You can find Iron Ore in mines."; - mes "It is quite hard to come by though.\""; - close; - -L_Pass: - mes "[Nicholas]"; - mes "\"Oh, okay"; - mes "Come back any time.\""; - close; - -L_StageA: - mes "[Nicholas]"; - mes "\"That's just enough for me to make you"; - mes "a winged Knight's Helmet."; - mes "But it'll cost you 10,000GP"; - mes "and 5 lumps of Iron Ore.\""; - next; - goto L_main_menu; - -L_StageB: - mes "[Nicholas]"; - mes "\"Ahh, with that much Iron Ore I can"; - mes "make you one of two helmets,"; - mes "for only 10,000GP, or I can"; - mes "make you a shield, for 20,000GP.\""; - mes ""; - mes "\"What would you like?\""; - next; - goto L_main_menu; - -L_StageC: - mes "[Nicholas]"; - mes "\"Excellent, that's enough to make"; - mes "three different types of helmet."; - mes "My fee is 10,000GP."; - mes "I can also make a shield, but that"; - mes "that will cost you 20,000 GP.\""; - mes ""; - mes "\"Which helmet or shield will it be?\""; - next; - goto L_main_menu; - -L_main_menu: - - set @CHOICE_KNIGHT, 1; - set @CHOICE_CRUSADE, 2; - set @CHOICE_WARLORD, 3; - set @CHOICE_SHIELD, 4; - set @CHOICE_SETZER, 5; - - setarray @choice$, "", "", "", "", ""; - set @choices_nr, 0; - setarray @choice_idx, 0, 0, 0, 0, 0; - - if (countitem(@SHORT_SWORD) < 1) goto L_main_menu_post_setzer; - set @choice$[@choices_nr], "Can you make my short sword better?"; - set @choice_idx[@choices_nr], @CHOICE_SETZER; - set @choices_nr, 1 + @choices_nr; - -L_main_menu_post_setzer: - - if (countitem(@IRON_ORE)<5) goto L_no_more_helmets; - set @choice$[@choices_nr], "Knight's Helmet. (5 Iron Ores)"; - set @choice_idx[@choices_nr], @CHOICE_KNIGHT; - set @choices_nr, 1 + @choices_nr; - - if (countitem(@IRON_ORE)<10) goto L_no_more_helmets; - - set @choice$[@choices_nr], "Crusade Helmet. (10 Iron Ores)"; - set @choice_idx[@choices_nr], @CHOICE_CRUSADE; - set @choices_nr, 1 + @choices_nr; - - set @choice$[@choices_nr], "Steel Shield. (10 Iron Ores)"; - set @choice_idx[@choices_nr], @CHOICE_SHIELD; - set @choices_nr, 1 + @choices_nr; - - if (countitem(@IRON_ORE)<15) goto L_no_more_helmets; - - set @choice$[@choices_nr], "Warlord Helmet. (15 Iron Ores)"; - set @choice_idx[@choices_nr], @CHOICE_WARLORD; - set @choices_nr, 1 + @choices_nr; -L_no_more_helmets: - - menu @choice$[0], -, - @choice$[1], -, - @choice$[2], -, - @choice$[3], -, - @choice$[4], -; - - set @menu, @menu - 1; - - if (@menu >= @choices_nr) - close; - - set @choice, @choice_idx[@menu]; - - if (@choice == @CHOICE_KNIGHT) goto L_YesKnight; - if (@choice == @CHOICE_CRUSADE) goto L_YesCrusade; - if (@choice == @CHOICE_WARLORD) goto L_YesWarlord; - if (@choice == @CHOICE_SHIELD) goto L_YesShield; - if (@choice == @CHOICE_SETZER) goto L_SetzerQuest; - - close; - - -L_NoItem: - mes "[Nicholas]"; - mes "\"It appears you don't have enough Iron Ore for me to work with."; - mes "Please do come back when you have more though.\""; - close; - -L_ComeBack: - mes "[Nicholas]"; - mes "\"Come back any time.\""; - close; - -L_NoMoney: - mes "[Nicholas]"; - mes "\"Oh dear, it seems you don't have enough money.\""; - close; - -L_YesKnight: - if (zeny < 10000) goto L_NoMoney; - set zeny, zeny-10000; - delitem @IRON_ORE,5; - getitem 637,1; - goto L_Done; - -L_YesCrusade: - if (zeny < 10000) goto L_NoMoney; - set zeny, zeny-10000; - delitem @IRON_ORE,10; - getitem 639,1; - goto L_Done; - -L_YesWarlord: - if (zeny < 10000) goto L_NoMoney; - set zeny, zeny-10000; - delitem @IRON_ORE,15; - getitem 636,1; - goto L_Done; - -L_YesShield: - mes "[Nicholas]"; - mes "Nicholas examines your iron ore."; - mes "\"No, this iron is too brittle; for something as large as a shield I need to mix in softer iron. Can I see if you have anything suitable?\""; - next; - - menu "Sure, have a look!", -, - "No.", L_Pass; - - if (countitem(@INFANTRY) == 1) goto L_MoreInfantry; - if (countitem(@INFANTRY) == 0) goto L_NoInfantry; - - mes "[Nicholas]"; - mes "Nicholas pulls out two of your infantry helmets."; - mes "\"I can use those... yes, that should work. Now all I need is a leather patch for the handle, and 20,000 GP.\""; - - if (@Q_SHIELD_status < @SHIELD_KNOWS_PATCH) - set @Q_SHIELD_status, @SHIELD_KNOWS_PATCH; - callsub L_Update_Var; - - next; - - menu "Here you are.", -, - "Where can I get a leather patch?", L_WhereLeather, - "No way.", L_Pass; - - if (zeny < 20000) goto L_ShieldNoZeny; - if (countitem(@INFANTRY) < 2) goto L_ShieldNoInfantry; - if (countitem(@IRON_ORE) < 10) goto L_ShieldNoOre; - if (countitem(@LEATHER_PATCH) < 1) goto L_ShieldNoLeatherPatch; - - mes "[Nicholas]"; - mes "\"Yes, it looks as if you have all that is needed!\""; - mes "You watch Nicholas melt the ore and helmets and form a shield out of the resulting iron. He then cuts your leather patch apart and adds it to the handles."; - mes "\"Here is your shield!\""; - - delitem @INFANTRY, 1; - delitem @INFANTRY, 1; - delitem @LEATHER_PATCH, 1; - delitem @IRON_ORE, 10; - set zeny, zeny - 20000; - - if (@Q_SHIELD_status < @SHIELD_COMPLETED) - getexp @SHIELD_XP, 0; - if (@Q_SHIELD_status < @SHIELD_COMPLETED) - mes "[" + @SHIELD_XP + " experience points]"; - - set @Q_SHIELD_status, @SHIELD_COMPLETED; // get XP only once - callsub L_Update_Var; - - getitem @STEEL_SHIELD, 1; - next; - close; - -L_ShieldNoZeny: - mes "[Nicholas]"; - mes "\"I am sorry, but I must ask that you pay 20,000 GP; this is qualty work.\""; - next; - close; - -L_ShieldNoInfantry: - mes "[Nicholas]"; - mes "\"Now this is strange... I could have sworn that you had two infantry helmets right here. Well, come back if you have some more!\""; - next; - close; - -L_ShieldNoOre: - mes "[Nicholas]"; - mes "\"How odd... didn't I put your iron ore on the table right here? Well, I will need it back to make the shield.\""; - next; - close; - -L_ShieldNoLeatherPatch: - mes "[Nicholas]"; - mes "\"You don't have a suitable leather patch. I'm sorry, but a shield without one would chafe terribly.\""; - next; - close; - -L_MoreInfantry: - mes "[Nicholas]"; - mes "Nicholas takes your infantry helmet and examines it."; - mes "\"Yes, this is perfect! If you can bring me another one of those, I can make your shield.\""; - next; - close; - -L_NoInfantry: - mes "[Nicholas]"; - mes "Nicholas shakes his head."; - mes "\"No, none of these items are suitable. Try looking for somewhat large metal things.\""; - next; - close; - -L_WhereLeather: - mes "[Nicholas]"; - mes "\"Hmm. You should look for someone who can work with some kind of leather. Rumor has it that there is someone in the eastern desert who can, but I haven't been there.\""; - next; - close; - - -L_SetzerQuest: - mes "[Nicholas]"; - if (@Q_SETZER_status & @SETZER_FLAG_MADE_SETZER) - mes "\"Another one? Sure, why not.\""; - mes "Nicholas examines your short sword, then nods."; - mes "\"This is good quality. I can make something special out of it, for five chunks of iron ore and 50,000 GP-- but I will also need a potion of monster oil.\""; - if (@Q_SETZER_status < @SETZER_KNOWS_OIL) - set @Q_SETZER_status, @SETZER_KNOWS_OIL; - callsub L_Update_Var; - next; - - menu "Here you are.", -, - "Monster oil? What's that?", L_ExplainMonsterOil, - "HOW much? Never mind.", L_Pass; - - if (zeny < 50000) goto L_SetzerNoZeny; - if (countitem(@IRON_ORE) < 5) goto L_SetzerNoOre; - if (countitem(@MONSTER_OIL) < 1) goto L_SetzerNoMonsterOil; - if (countitem(@SHORT_SWORD) < 1) goto L_SetzerNoSword; - - mes "[Nicholas]"; - mes "Nicholas takes the items, heats up your sword and pounds it with a heavy hammer. Before your eyes it turns thinner and flatter. Finally he pours the monster oil over it, heats it up again and douses it in water."; - - set zeny, zeny - 50000; - delitem @IRON_ORE, 5; - delitem @MONSTER_OIL, 1; - delitem @SHORT_SWORD, 1; - - getitem @SETZER, 1; - if (!(@Q_SETZER_status & @SETZER_FLAG_MADE_SETZER)) - mes "[" + @SETZER_XP + " experience points]"; - if (!(@Q_SETZER_status & @SETZER_FLAG_MADE_SETZER)) - getexp @SETZER_XP, 1; - set @Q_SETZER_status, @Q_SETZER_status | @SETZER_FLAG_MADE_SETZER; - callsub L_Update_Var; - next; - - mes "[Nicholas]"; - mes "Nicholas hands you the completed sword. It feels strangely light in your hands."; - mes "\"I made it lighter and faster, it should also cut a little better now. This kind of sword is called a Setzer, after a famous gambler who invented it as a weapon in between a knife and a sword.\""; - next; - - mes "[Nicholas]"; - mes "\"I'm quite happy with this one. Be careful around the edge, though, it is quite sharp.\""; - next; - - close; - -L_ExplainMonsterOil: - mes "[Nicholas]"; - mes "\"Monster oil is a special oil that can be used to harden thin sheets of metal, if used properly. Unfortunately it is very hard to get. Perhaps one of our local alchemists can help you with it?\""; - next; - close; - -L_SetzerNoZeny: - mes "[Nicholas]"; - mes "\"I am sorry, but I must ask that you pay 50,000 GP; the kind of weapon I am thinking of is not easy to make.\""; - next; - close; - -L_SetzerNoOre: - mes "[Nicholas]"; - mes "\"Without five chunks of iron ore I can't improve your sword.\""; - next; - close; - -L_SetzerNoMonsterOil: - mes "[Nicholas]"; - mes "\"I know that monster oil is hard to come by, but I can't do much without it. Ask an alchemist if you need help making it.\""; - next; - close; - -L_SetzerNoSword: - mes "[Nicholas]"; - mes "\"I will need your old short sword as a basis. Please bring it to me first.\""; - next; - close; - -L_end: - close; - -L_Done: - mes "[Nicholas]"; - mes "\"Here you go!\""; - mes ""; - mes "\"Come back any time.\""; - close; - -L_Update_Var: - set QUEST_Forestbow_state, - (QUEST_Forestbow_state & ~(@Q_SHIELD_MASK | Q_SETZER_MASK) - | (@Q_SHIELD_status << @Q_SHIELD_SHIFT) - | (@Q_SETZER_status << @Q_SETZER_SHIFT)); - return; -} diff --git a/npc/new_20-1-woodland-village/nurse.txt b/npc/new_20-1-woodland-village/nurse.txt deleted file mode 100644 index 2ea8acb1..00000000 --- a/npc/new_20-1-woodland-village/nurse.txt +++ /dev/null @@ -1,48 +0,0 @@ -// Nurse - -// heals player below level 10 for free and tells players about the doctor on the 3rd floor. -new_20-1.gat,147,65,0 script Nurse 119,{ - mes "[Nurse]"; - mes "\"Can I help you?\""; - next; - - if (Inspector == 1) - menu - "Oooh, these wounds! They hurts so much!", L_Heal, - "I don't feel so well, I might be sick.", L_Doctor, - "Have you seen anything out of the ordinary?", L_NohMask, - "No, I'm fine.", -; - if (Inspector != 1) - menu - "Oooh, these wounds! They hurts so much!", L_Heal, - "I don't feel so well, I might be sick.", L_Doctor, - "No, I'm fine.", -; - mes "[Nurse]"; - mes "\"Then I would ask you to leave. There are people who really need our help.\""; - close; - -L_Doctor: - mes "[Nurse]"; - mes "\"Then you should better see the doctor. He is usually in his office on the 3rd floor.\""; - close; - -L_Heal: - if (baselevel > 10) goto L_NoHeal; - mes "[Nurse]"; - mes "\"Here, let me heal you.\""; - next; - heal 10000, 10000; - close; - -L_NoHeal: - mes "[Nurse]"; - mes "\"I'm sorry but I'm here only to help young people."; - mes "Your level is already higher than 10."; - mes "You can get some rest in the inn near here.\""; - close; - -L_NohMask: - mes "[Nurse]"; - mes "\"I'm to busy here to observe the town.\""; - close; -} diff --git a/npc/new_20-1-woodland-village/passages.txt b/npc/new_20-1-woodland-village/passages.txt deleted file mode 100644 index fab35171..00000000 --- a/npc/new_20-1-woodland-village/passages.txt +++ /dev/null @@ -1,66 +0,0 @@ -// West gate -new_18-1.gat,54,61 warp warp1 0,1,new_19-1.gat,26,36 -new_19-1.gat,23,36 warp warp2 1,1,new_18-1.gat,53,61 - -// South gate -new_18-1.gat,78,80 warp warp1 3,0,new_19-1.gat,48,54 -new_19-1.gat,48,56 warp warp2 3,1,new_18-1.gat,78,82 - -// East gate -new_18-1.gat,128,60 warp warp1 0,1,new_19-1.gat,96,35 -new_19-1.gat,97,36 warp warp2 1,1,new_18-1.gat,129,60 - -// North gate -new_18-1.gat,78,49 warp warp1 3,0,new_19-1.gat,48,24 -new_19-1.gat,48,23 warp warp2 3,1,new_18-1.gat,78,48 - -// To woodland -new_18-1.gat,78,101 warp warp1 3,1,new_16-1.gat,68,23 -new_16-1.gat,68,22 warp warp2 3,1,new_18-1.gat,78,100 - -new_18-1.gat,132,100 warp warp1 1,1,new_16-1.gat,122,23 -new_16-1.gat,122,21 warp warp2 1,1,new_18-1.gat,132,98 - -new_9-1.gat,124,61 warp warp1 1,3,new_18-1.gat,27,61 -new_18-1.gat,25,61 warp warp2 1,3,new_9-1.gat,122,61 - -// indoor <-> outdoor and indoor <-> indoor - -// Inn -new_19-1.gat,35,29 warp out-in 1,1,new_20-1.gat,50,55 -new_20-1.gat,50,56 warp in-out 1,1,new_19-1.gat,35,31 -new_20-1.gat,73,45 warp in-1f 2,1,new_20-1.gat,74,23 -new_20-1.gat,74,24 warp 1f-in 2,1,new_20-1.gat,73,46 -new_20-1.gat,74,53 warp 1f-1b 0,0,new_20-1.gat,143,81 -new_20-1.gat,143,79 warp 1b-1f 0,0,new_20-1.gat,74,52 -new_20-1.gat,147,89 warp 1b-cv 0,0,new_35-1.gat,173,22 - -// Archer Shop -new_19-1.gat,59,33 warp out-in 0,0,new_20-1.gat,95,29 -new_20-1.gat,95,31 warp in-out 0,0,new_19-1.gat,59,34 - -// Potion Shop -new_19-1.gat,71,30 warp out-in 0,0,new_20-1.gat,130,25 -new_20-1.gat,130,27 warp in-out 0,0,new_19-1.gat,71,31 - -// Doctor -new_19-1.gat,80,31 warp out-in 0,0,new_20-1.gat,149,66 -new_20-1.gat,149,68 warp in-out 0,0,new_19-1.gat,80,32 -new_20-1.gat,154,62 warp in-1f 1,0,new_20-1.gat,154,46 -new_20-1.gat,154,47 warp 1f-in 1,0,new_20-1.gat,154,63 -new_20-1.gat,143,43 warp 1f-2f 1,0,new_20-1.gat,143,24 -new_20-1.gat,143,26 warp 2f-1f 1,0,new_20-1.gat,143,44 - -// Blacksmith -new_19-1.gat,91,46 warp out-in 0,0,new_20-1.gat,181,66 -new_20-1.gat,181,68 warp in-out 1,0,new_19-1.gat,91,47 - -// Mayor -new_19-1.gat,72,44 warp out-in 0,0,new_20-1.gat,113,77 -new_20-1.gat,113,79 warp in-out 1,0,new_19-1.gat,72,45 -new_20-1.gat,113,68 warp in-1f 1,0,new_20-1.gat,113,46 -new_20-1.gat,113,47 warp 1f-in 1,0,new_20-1.gat,113,69 - -// General Store -new_19-1.gat,58,46 warp out-in 0,0,new_20-1.gat,27,105 -new_20-1.gat,27,107 warp in-out 0,0,new_19-1.gat,58,47 diff --git a/npc/new_20-1-woodland-village/richard.txt b/npc/new_20-1-woodland-village/richard.txt deleted file mode 100644 index 17336ee7..00000000 --- a/npc/new_20-1-woodland-village/richard.txt +++ /dev/null @@ -1,6 +0,0 @@ -// - -new_20-1.gat,20, 99,0 script Richard 161,{ - set @npcName$, "Richard"; - callfunc "Banker"; -} diff --git a/npc/new_20-1-woodland-village/selim.txt b/npc/new_20-1-woodland-village/selim.txt deleted file mode 100644 index 952bac9e..00000000 --- a/npc/new_20-1-woodland-village/selim.txt +++ /dev/null @@ -1,139 +0,0 @@ -//################################################################################# -//# # -//# This script file contains the script for the cloth dyer. It has been # -//# revised to require dye items; collaborating NPCs are Selim and Angus. # -//# # -//################################################################################# - -new_20-1.gat,32,104,0 script Selim 142,{ - setarray @all_colours$, "red", "green", "dark blue", "yellow", "light blue", "pink", "black", "orange", "purple", "dark green"; - setarray @all_colours_cap$, "Red", "Green", "Dark Blue", "Yellow", "Light Blue", "Pink", "Black", "Orange", "Purple", "Dark Green"; - - mes "[Selim]"; - mes "\"What can I dye for you today?\""; - set QUEST_clothdyer_state, 3; - next; - -L_clothes_choice: - set @pronoun$, "it"; - set @is_verb$, "is"; - menu - "Cotton shirt", L_cottonshirt, - "V-Neck sweater", L_vneck, - "Turtleneck sweater", L_tneck, - "Cotton shorts", L_shorts, - "Cotton skirt", L_skirt, - "Tank top ", L_tanktop, - "Short tank top", L_tanktop_short, - "Silk robe", L_robe, - "I'm fine for now, thanks.", -; - close; - -L_cottonshirt: - set @del, 1202; - set @new, 2050; - set @name$, "cotton shirt"; - goto L_picked_item; - -L_vneck: - set @del, 624; - set @new, 2060; - set @name$, "V-neck sweater"; - goto L_picked_item; - -L_tneck: - set @del, 564; - set @new, 2070; - set @name$, "turtleneck sweater"; - goto L_picked_item; - -L_shorts: - set @del, 586; - set @new, 2110; - set @name$, "cotton shorts"; - set @pronoun$, "them"; - set @is_verb$, "are"; - goto L_picked_item; - -L_skirt: - set @del, 632; - set @new, 2100; - set @name$, "cotton skirt"; - goto L_picked_item; - -L_tanktop: - set @del, 688; - set @new, 2090; - set @name$, "tanktop"; - goto L_picked_item; - -L_tanktop_short: - set @del, 689; - set @new, 2120; - set @name$, "short tanktop"; - goto L_picked_item; - -L_robe: - set @del, 720; - set @new, 2080; - set @name$, "silk robe"; - goto L_picked_item; - -L_picked_item: - if (countitem(@del) == 0) goto L_havenone; -L_colour: - mes "[Selim]"; - mes "\"Excellent. Now, what color do you want?\""; - next; - menu - @all_colours_cap$[0], -, - @all_colours_cap$[1], -, - @all_colours_cap$[2], -, - @all_colours_cap$[3], -, - @all_colours_cap$[4], -, - @all_colours_cap$[5], -, - @all_colours_cap$[6], -, - @all_colours_cap$[7], -, - @all_colours_cap$[8], -, - @all_colours_cap$[9], -; - set @colour, @menu - 1; - set @vial, 690 + @colour; - if (countitem(@vial) == 0) goto L_no_dye; - goto L_finish; - -L_no_dye: - mes "[Selim]"; - mes "\"I would love to dye your " + @name$ + " for you, but you will have to bring me some " + @all_colours$[@colour] + " dye first.\""; - next; - menu - "Sorry, I meant a different color.", L_colour, - "I wanted to dye a different item anyway.", L_clothes_choice, - "What do you mean, `bring you dye'?", L_explain_dye, - "Where would I get dye?", L_explain_dye, - "Never mind.", -; - close; - -L_explain_dye: - if (QUEST_clothdyer_knowsdye < 1) set QUEST_clothdyer_knowsdye, 1; - mes "[Selim]"; - mes "\"Well, dye is very expensive, and since I don't charge adventurers anything, I can't give you any for free."; - mes "But most alchemists can make dye; perhaps you can find one around here.\""; - next; - close; - -L_finish: - if (countitem(@del) == 0) goto L_havenone; - delitem @vial, 1; - delitem @del, 1; - getitem @new + @colour, 1; - mes "[Selim]"; - mes "\"Here " + @is_verb$ + " your " + @all_colours$[@colour] + " " + @name$ + "! Please let " + @pronoun$ + " dry for a minute before you put " + @pronoun$ + " on.\""; - close; - -L_havenone: - mes "[Selim]"; - mes "\"You don't have any uncolored " + @name$ + "? That's unfortunate."; - mes "Would you like to dye something else?\""; - next; - goto L_clothes_choice; -} diff --git a/npc/new_20-1-woodland-village/shops.txt b/npc/new_20-1-woodland-village/shops.txt deleted file mode 100644 index d965cf68..00000000 --- a/npc/new_20-1-woodland-village/shops.txt +++ /dev/null @@ -1,34 +0,0 @@ -//################################################################################# -//# # -//# This script file contains all shops and other NPCs with important functions. # -//# # -//################################################################################# - -// Bartender -// sells beer, cake and steak -new_20-1.gat,65,49,0 shop Barkeeper 112,539:-1,513:-1,676:-1 - -// Receptionist -// Offers the player to rest at the inn for 100gp -new_20-1.gat,50,48,0 script Receptionist 108,{ - set @npcName$, "Receptionist"; - set @cost, 100; - callfunc "Inn"; -} - -// Archer Shop -// sells bow, short bow, arrows and iron arrows -new_20-1.gat,97,24,0 shop Apprentice 120,1199:3,529:5,1200:1000,530:3000 - -// Potion Shop -// sells cactus drink, cactus potion, iron potion and concentration potion -new_20-1.gat,121,26,0 shop Witch 103,501:50,502:70,567:500,568:500 - -// Blacksmith -// Sells all knives, chainmail armor, light platemail -new_20-1.gat,183,57,0 shop Blacksmith 135,625:20000,626:50000,658:100000,1201:25,522:100,521:1000 - - -// General Store -// Sells various things, many not sold elsewhere -new_20-1.gat,32,99,0 shop General Store 112,527:-1,541:-1,1202:-1,586:-1,528:-1,656:-1 diff --git a/npc/new_20-1-woodland-village/waitress.txt b/npc/new_20-1-woodland-village/waitress.txt deleted file mode 100644 index 6cf9791b..00000000 --- a/npc/new_20-1-woodland-village/waitress.txt +++ /dev/null @@ -1,51 +0,0 @@ -// Waitress - -new_20-1.gat,60,52,0 script Melinda 140,{ - if (zeny < 180) goto L_NoMoney; - mes "[Melinda]"; - mes "\"Hi sweety! Want a fresh beer for 170gp?\""; - next; - - menu - "\"Sure! [don't tip]\"", -, - "Sure! [tip 5gp]", L_5Tip, - "Sure! [tip 10gp]", L_10Tip, - "Nah, maybe later.", L_No; - - mes "[Melinda]"; - mes "Pff... nickel nurser!"; - next; - set zeny,zeny-170; - getitem 539,1; - close; - -L_5Tip: - mes "[Melinda]"; - mes "\"Here you go, sweethearth!\""; - next; - set zeny,zeny-175; - getitem 539,1; - close; - -L_10Tip: - mes "[Melinda]"; - mes "\"Thank you, sweety! Want me to hear a secret?\""; - next; - set zeny,zeny-180; - getitem 539,1; - menu - "What's it, darling?", -, - "Nah, I don't feel like chatting.", L_No; - mes "[Melinda]"; - mes "\"The bowmaking master in this village used to construct exceptional bows. When you want one you should go and ask him.\""; - close; - -L_No: - mes "[Melinda]"; - mes "\"Just call me when you've changed your mind.\""; - close; - -L_NoMoney: - mes "\"You look broke. Don't think that you can dine and dash here!\""; - close; -} diff --git a/npc/new_21-1-ice-cave2/monsters.txt b/npc/new_21-1-ice-cave2/monsters.txt deleted file mode 100644 index b1a238b3..00000000 --- a/npc/new_21-1-ice-cave2/monsters.txt +++ /dev/null @@ -1,20 +0,0 @@ -// Map: new_21-1 -// This is the second level of the Ice Cave beneath Snow Town. -// - -new_21-1.gat,0,0,0,0 monster Bat 1017,5,0,0,Mob21::OnBat -new_21-1.gat,0,0,0,0 monster Fluffy 1020,15,0,0,Mob21::OnFluffy - -new_21-1.gat,0,0,0 script Mob21 -1,{ -OnBat: - set @mobID, 1017; - callfunc "MobPoints"; - break; - -OnFluffy: - set @mobID, 1020; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_21-1-ice-cave2/passages.txt b/npc/new_21-1-ice-cave2/passages.txt deleted file mode 100644 index 6e419384..00000000 --- a/npc/new_21-1-ice-cave2/passages.txt +++ /dev/null @@ -1 +0,0 @@ -new_21-1.gat,36,34 warp toice1 1,0,new_12-1.gat,26,25 diff --git a/npc/new_22-1-snake-cave/monsters.txt b/npc/new_22-1-snake-cave/monsters.txt deleted file mode 100644 index 8d88def8..00000000 --- a/npc/new_22-1-snake-cave/monsters.txt +++ /dev/null @@ -1,14 +0,0 @@ -// Map: new_22-1 -// This is the Snake Pit, a cave in the Snake Desert. -// - -new_22-1.gat,0,0,0,0 monster Snake 1010,175,0,0,Mob22::OnSnake - -new_22-1.gat,0,0,0 script Mob22 -1,{ -OnSnake: - set @mobID, 1010; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_22-1-snake-cave/passages.txt b/npc/new_22-1-snake-cave/passages.txt deleted file mode 100644 index adf4468d..00000000 --- a/npc/new_22-1-snake-cave/passages.txt +++ /dev/null @@ -1,2 +0,0 @@ -new_22-1.gat,52,33 warp fromsnakecaveN 0,0,new_7-1.gat,89,24 -new_22-1.gat,33,82 warp fromsnakecaveS 0,0,new_7-1.gat,71,76 \ No newline at end of file diff --git a/npc/new_23-1-dimonds-cove/dimonds.txt b/npc/new_23-1-dimonds-cove/dimonds.txt deleted file mode 100644 index 05d83b5c..00000000 --- a/npc/new_23-1-dimonds-cove/dimonds.txt +++ /dev/null @@ -1,130 +0,0 @@ -// - -new_23-1.gat,34,38,0 script Dimond 165,{ - mes "[Dimond]"; - mes "\"Welcome to Dimond's Cove!\""; - mes ""; - mes "\"Talk to the waitress to get some Food.\""; - mes ""; - mes "\"We also have shops on the 2nd Floor,"; - mes "and an inn on the 3rd Floor.\""; - close; -} - -new_23-1.gat,40,34,0 script Phill 157,{ - mes "[Phil]"; - mes "\"We're having problems with our equipment!\""; - next; - mes "[Phil]"; - mes "\"I don't know if we can play any songs!\""; - close; -} - -new_23-1.gat,40,37,0 script Jerry 160,{ - mes "[Jerry]"; - mes "\"I don't know what's wrong.\""; - next; - mes "[Jerry]"; - mes "\"We should be able to play you music in the future!\""; - close; -} - -new_23-1.gat,42,36,0 script Robert 162,{ - mes "[Robert]"; - mes "\"I hope we can figure something out!\""; - next; - mes "[Robert]"; - mes "\"We are kinda useless if we can't play music.\""; - close; -} - -new_23-1.gat,27,30,0 script Bar Rules 127,{ - mes "Dimonds Cove Bar Rules"; - next; - mes "No excessive drinking!"; - mes "If your sprite starts to stagger we will ask you to leave."; - next; - mes "No offensive chat."; - mes "This is a nice establishment."; - mes "Crude and offensive behavior will be reported to TMW GM's."; - next; - mes "Please be respectful of others."; - mes "Not everyone has the same experience and should all be treated"; - mes "with equal respect."; - next; - mes "Thank You,"; - mes "Dimonds Cove Management"; - close; -} - -new_23-1.gat,71,38,0 script Store Policy 127,{ - mes "All sales are final."; - mes "Returns are subject to a 50% re-stocking fee."; - close; -} - -new_23-1.gat,77,38,0 script Store Policy 127,{ - mes "All sales are final."; - mes "Returns are subject to a 50% re-stocking fee."; - close; -} - -new_23-1.gat,36,30,0 script Directions 127,{ - mes "This way to the Dimonds Cove Inn."; - mes "Five star accommodation for the weary traveler!"; - close; -} - -new_23-1.gat,80,32,0 script Dimonds Cove 1 127,{ - mes "The Story of Dimonds Cove"; - next; - mes "One day Dimond D. Stone dreamed of her own restaurant."; - mes "Dimond sold her food alone in this spot for some time,"; - mes "longing for the day she would have a building."; - mes "She met an adventurer named Merlin outside of the"; - mes "desert mines one day."; - next; - mes "They became friends and Dimond told Merlin about her idea."; - mes "Merlin was a accomplished carpenter and wanted to make a new"; - mes "place in the world. He told Dimond that he would make her"; - mes "restaurant for her. He gathered the tools and after much"; - mes "hard work, Dimonds Cove was built."; - next; - mes "(See Dimonds Cove 2)"; - close; -} - -new_23-1.gat,85,32,0 script Dimonds Cove 2 127,{ - mes "List of Events at Dimonds Cove"; - mes "January 2008 - Construction of Dimonds Cove."; - close; -} - - -new_23-1.gat,71,30,0 script Inn 127,{ - mes "Welcome to the Dimonds Cove Inn"; - mes "Rooms are 200 gp a night."; - mes "Plese check in with Basil."; - close; -} - - -new_23-1.gat,24,27,0 shop Bartender 112,539:175,567:500,568:500 - -new_23-1.gat,32,34,0 shop Waitress 139,519:100,533:150,534:90,562:500,676:200 - -new_23-1.gat,85,41,0 shop Blacksmith 146,545:20000,529:5,625:20000,626:50000,603:-1 - -new_23-1.gat,65,41,0 shop General Store 137,586:1000,524:1600,544:10000,632:10000,528:1000 - -new_23-1.gat,75,68,0 script Basil 107,{ - set @npcName$, "[Basil the Inn Keeper]"; - set @cost, 200; - callfunc "Inn"; -} - -new_23-1.gat,33,25,0 script Chef 148,{ - mes "[Chef]"; - mes "I'm too busy right now to talk."; - close; -} diff --git a/npc/new_23-1-dimonds-cove/doug.txt b/npc/new_23-1-dimonds-cove/doug.txt deleted file mode 100644 index 301ae9a7..00000000 --- a/npc/new_23-1-dimonds-cove/doug.txt +++ /dev/null @@ -1,101 +0,0 @@ -new_23-1.gat,68,87,0 script Doug 113,{ - if(CaveSnakeLamp == 1) goto L_State2; - if(CaveSnakeLamp == 2) goto L_Done; - set @TEMP,rand(4); - if(@TEMP == 0) goto L_0; - if(@TEMP == 1) goto L_1; - if(@TEMP == 2) goto L_2; - if(@TEMP == 3) goto L_3; - -L_0: - mes "[Doug]"; - mes "\"I need 40 more [Cave Snake Lamps] to make my light!\""; - next; - goto L_Question; -L_1: - mes "[Doug]"; - mes "\"This lamp should light up this whole place! I just need [40 Cave Snake Lamps]\""; - next; - goto L_Question; -L_2: - mes "[Doug]"; - mes "\"This is gonna be bright! A must have for anyone! All i need is a few parts...\""; - goto main1; - -L_3: - mes "[Doug]"; - mes "\"Can you get me 40 [Cave Snake Lamps]? I need them to get this light finished.\""; - next; - goto L_Question; - -L_Question: - mes "[Doug]"; - mes "\"Will you help me find 40 [Cave Snake Lamps]?\""; - next; - menu - "Yes", L_Sure, - "No", close; - -L_Sure: - set CaveSnakeLamp, 1; - set @TEMP,rand(4); - if(@TEMP == 0) goto J_0; - if(@TEMP == 1) goto J_1; - if(@TEMP == 2) goto J_2; - if(@TEMP == 3) goto J_3; - -J_0: - mes "[Doug]"; - mes "\"Thank you!\""; - next; - goto L_Go; - -J_1: - mes "[Doug]"; - mes "\"I don't know how to thank you enough!\""; - next; - goto L_Go; - -J_2: - mes "[Doug]"; - mes "\"I will pay you when you get them!\""; - next; - goto L_Go; - -J_3: - mes "[Doug]"; - mes "\"I'm sure I will give a small reward. :D\""; - next; - goto L_Go; - -L_Go: - mes "[Doug]"; - mes "\"Now please go get me 40 [Cave Snake Lamps]\""; - close; - -L_State2: - if(countitem(612) >= 40) goto L_Have; - mes "[Doug]"; - mes "\"Please help me collect 40 [Cave Snake Lamps]!\""; - close; - -L_Have: - delitem 612, 40; - mes "[Doug]"; - mes "\"Cool! Now I can make this light!\""; - next; - - mes "[Doug]"; - mes "\"Here's what I got to give you!\""; - next; - - set zeny, zeny + 2000; - set CaveSnakeLamp, 2; - close; - -L_Done: - mes "[Doug]"; - mes "\"Thanks for your help! Those snakes sure have bright lamps!\""; - close; -} - diff --git a/npc/new_23-1-dimonds-cove/loratay.txt b/npc/new_23-1-dimonds-cove/loratay.txt deleted file mode 100644 index 744557e7..00000000 --- a/npc/new_23-1-dimonds-cove/loratay.txt +++ /dev/null @@ -1,632 +0,0 @@ -new_23-1.gat,85,85,0 script Lora Tay 151,{ - - set @COTTON, 660; - set @SILK_COCOON, 718; - - set @SILK_ROBE, 720; - set @ROBE_COCOONS_NR, 150; // must be multiple of ten - set @ROBE_ZENY, 10000; - - if (QUEST_WG_state == 10) - goto L_agostine_menu; - if (QUEST_WG_state >= 11) - goto L_regular_intro; - - set @t, rand(3); - if (@t == 0) goto L_intro_0; - if (@t == 1) goto L_intro_1; - - mes "You see a middle-aged woman furiously sewing away at what appears to be a very expensive dress. Her fingers are moving so nimbly that you find it near-impossible to follow the needle."; - - goto L_intro_over; -L_intro_0: - mes "You notice a middle-aged woman carefully drawing lines on a large sheet of cotton."; - - goto L_intro_over; -L_intro_1: - mes "You see a middle-aged woman cautiously but surprisingly swiftly cutting out shapes from a huge cotton sheet. The scissors glide along the cloth as if it were butter, never leaving the premarked lines."; - -L_intro_over: - next; - - mes "She suddenly stops and looks up."; - next; - - mes "\"Now who are you, and what are you doing here?\""; - mes "She squints, pushes her thick spectacles up the bridge of her nose and eyes you suspiciously."; - next; - - set @agostine_msg0$, ""; - set @agostine_msg1$, ""; - - if (QUEST_WG_state >= 1) - set @agostine_msg0$, "Do you know Agostine?"; - if ((QUEST_WG_state >= 9) && (countitem(655))) - set @agostine_msg1$, "Can you make fur boots, like Agostine?"; - - menu "Hello! My name is " + strcharinfo(0) + ".", L_hello_0, - "Hello; are you a tailor?", L_hello_1, - "Can you make something for me?", L_hello_2, - @agostine_msg0$, L_agostine_0, - @agostine_msg1$, L_agostine_1; - -L_hello_0: - mes "She raises an eyebrow."; - mes "\"That,\", she notes dryly, \"is hardly my fault. And now I would greatly appreciate it if you were to get out of here and leave me to my work!\""; - next; - close; - -L_hello_1: - mes "She frowns."; - mes "\"No, I am an accupuncturist, I just happen to practice on cloth! Get out of here with your silly questions!\""; - next; - close; - -L_hello_2: - mes "She glares at you indignantly."; - mes "\"Do you even know whom you are talking to? I am Lora Tay, greatest of the seven seamstresses of the South!\""; - next; - mes "[Lora Tay the Seamstress]"; - mes "\"I do not work for petty peasants or arrogant adventurers. Get out of my sight!\""; - mes "She waves you away and returns to her work."; - next; - close; - - -L_agostine_0: - if (QUEST_WG_state < 1) close; - mes "She shoots an incensed glare at you."; - mes "\"Ah, Agostine! The 'legendary tailor'! Now who has not heard of him, been inspired by him! Such charisma! Such popularity! Such unprecedented lack of talent!\""; - mes "You notice that she prononuces the 't's as if she were trying to slap someone."; - next; - mes "\"Please spare me your tales of this fool. He couldn't mend a sock without getting himself trapped inside!\""; - mes "She frowns and turns back to her work, clearly not interested in discussing the matter further."; - close; - -L_agostine_1: - if ((QUEST_WG_state < 9) || (countitem (655) == 0)) close; - mes "[Lora Tay the Seamstress]"; - mes "She glares at your boots, her lips forming barely more than a thin line. Deep furrows form above her brows."; - mes "\"I can't believe it! He copied Illana's design but used fluffy fur in place of ice wolf fur-- Fluffy fur! Of all things! Who would wear such an atrocity of fashion! Everyone knows that you need ice-white, not pale-white, to go with such leather!\""; - next; - mes "[Lora Tay the Seamstress]"; - mes "She looks at them more closely."; - mes "\"This insolent upstart! Even worse, he copied my very own double-backward cross-stitch pattern... I can't believe it!\""; - next; - mes "[Lora Tay the Seamstress]"; - mes "Angry red spots begin to form on her cheeks."; - mes "\"Get those... things out of my sight before I forget myself!\""; - - if (QUEST_WG_state == 9) - set QUEST_WG_state, 10; - - next; - close; - -L_agostine_menu: - mes "[Lora Tay the Seamstress]"; - mes "The seamstress looks up at you from her work."; - mes "\"I do hope that you have not had any more dealings with this... this lumberjack of a tailor?\""; - next; - - if (countitem(563) > 0) - menu "You mean Agostine?", L_agostine_3, - "Actually, he also made me gloves...", L_agostine_2, - "Why don't you like him?", L_agostine_4, - "No, none, really.", L_agostine_5; - - menu "You mean Agostine?", L_agostine_3, - "Why don't you like him?", L_agostine_4, - "No, none, really.", L_agostine_5; - -L_agostine_2: - if ((QUEST_WG_state < 9) || (countitem(563) == 0)) close; - mes "[Lora Tay the Seamstress]"; - mes "Lora inspects your gloves, shock apparent on her face."; - mes "\"Winter gloves? And he managed the join stitches without adding a single crease... no, that can't be the Agostine we were talking about...\""; - mes "Without asking, she takes your gloves and inspects them further."; - next; - - mes "[Lora Tay the Seamstress]"; - mes "\"Triple inverted crossbar... he stole another of my stitching patterns! Except... no, that couldn't hold... what kind of yarn...\""; - mes "Torn between excitement, worry, and latent disgust, she frantically turns the gloves from side to side, looking for obvious flaws, her face reddening."; - next; - - mes "[Lora Tay the Seamstress]"; - mes "\"No, it's perfect... Inconceivable! How could that little upstart... I don't believe it!\""; - mes "Breathing heavily with something that might be anger or confusion, she turns them inside out."; - next; - - mes "[Lora Tay the Seamstress]"; - mes "She slides her fingers over the now-exposed inside whilst the color of her face approaches that of an over-ripe tomato."; - mes "\"Almost perfectly smooth...\", she whispers."; - next; - - mes "[Lora Tay the Seamstress]"; - mes "She jumps up in a fit of sudden rage."; - mes "\"That's impossible! Where did he learn to sew like that! How did he cut the shapes so perfectly! When did he..."; - mes "Suddenly, she breaks into a cough."; - next; - - mes "[Lora Tay the Seamstress]"; - mes "\"*cough* ... can't possibly... *cough*...\""; - mes "Lora sinks back on her chair, trying to control her cough."; - next; - - if (countitem(541)) - menu "(sneak out of the room)", L_end, - "Are you alright?", -, - "Here, have a bottle of water...", L_give_water, - "Can I help you?", -; - - if (countitem(541) == 0) - menu "(sneak out of the room)", L_end, - "Are you alright?", -, - "Can I help you?", -; - - mes "[Lora Tay the Seamstress]"; - mes "She holds out your gloves for you to pick up, then waves you out of the room. Fortunately, her cough seems to be slowly subsiding."; - next; - close; - -L_agostine_3: - mes "[Lora Tay the Seamstress]"; - mes "She frowns at you."; - mes "\"What other self-absorbed tailor-pretends with the sewing skill of a mouboo are there around? Stop wasting my time.\""; - next; - close; - -L_agostine_4: - mes "[Lora Tay the Seamstress]"; - mes "\"Is it not obvious? We are talking about someone so self-absorbed that he chose to ignore the advice of myself, greatest of the seven southern seamstresses! I cannot stand such arrogance.\""; - next; - close; - -L_agostine_5: - mes "[Lora Tay the Seamstress]"; - mes "\"Good for you. That arrogant good-for-nothing couldn't tell a piece of cotton from chain mail if wiped his nose with it!\""; - close; - -L_no_water: - mes "Checking more closely, you realize that you are out of water."; - mes "You apologise to Lora, though it fortunately seems that her cough is subsiding."; - mes "She waves you out of the room."; - next; - close; - -L_regular_intro: - mes "[Lora Tay the Seamstress]"; - mes "\"Ah, you again. Is there anything in particular you need?\""; - next; - goto L_main_menu; - -L_give_water: - if (countitem(541) == 0) goto L_no_water; - delitem 541, 1; - set QUEST_WG_state, 11; - - set @xpval, 50000; - - getexp @xpval, 0; - mes "[Lora Tay the Seamstress]"; - - mes "Lora grabs your water bottle and take a deep sip. Slowly, her head regains a more natural color. As she puts the bottle down, her cough seems to have subsided."; - mes "\"Thank you, dear; that was just the right thing at the right time.\""; - mes "[You gain " + @xpval + " experience points]"; - next; - - mes "[Lora Tay the Seamstress]"; - mes "She hands you the winter gloves again."; - mes "\"Now what happened I don't know, but this wasn't made by the Agostine I remember. But I shan't be made a fool out of by one such as him.\""; - next; - - mes "[Lora Tay the Seamstress]"; - mes "\"If HE can sew petty every-day items for ordinary peasants, then so can I. Very well, is there anything in particular that you need made? I shall show you how a proper seamstress operates!\""; - next; - -L_main_menu: - menu "Can you trim something for me?", L_trim, - "Can you lengthen something for me?", L_lengthen, - "Can you make me a shirt?", L_shirt, - "Can you make me a tank top?", L_tanktop, - "Can you make me a cape?", L_cape, - "Can you make fur boots for me?", -, - "Can you make winter gloves me?", -, - "Can you sew a robe for me?", L_robe, - "Goodbye for now!", L_end; - - mes "[Lora Tay the Seamstress]"; - mes "\"From what? Fluffy fur? I won't work with such lowly materials.\""; - next; - goto L_main_menu; - -L_trim: - mes "[Lora Tay the Seamstress]"; - mes "\"Trimming... you mean that you can't do that yourself? Well, alright... I suppose I should charge 100 GP and do it.\""; - mes "\"Alright. What is it that you want trimmed?\""; - next; - - set @default_choice$, "Never mind."; - setarray @items, 1202, 2050, 2051, 2052, 2053, 2054, 2055, 2056, 2057, 2058, 2059, - 688, 2090, 2091, 2092, 2093, 2094, 2095, 2096, 2097, 2098, 2099; - setarray @item_names$, "cotton shirt", "red cotton shirt", "green cotton shirt", "dark blue cotton shirt", "yellow cotton shirt", "light blue cotton shirt", "pink cotton shirt", "black cotton shirt", "orange cotton shirt", "puple cotton shirt", "cotton shirt 9", - "tank top", "red tank top", "green tank top", "dark blue tank top", "yellow tank top", "light blue tank top", "pink tank top", "black tank top", "orange tank top", "purple tank top", "tank top 9"; - set @items_nr, 22; - callsub SUB_pick_one_of_many_items; - if (@item == 0) goto L_main_menu; - - set @delitem, @item; - set @genitem, 0; - if (@item == 1202) set @genitem, 688; - if (@item == 688) set @genitem, 689; - if (@item >= 2090 && @item <= 2099) set @genitem, @item + 30; - if (@item >= 2050 && @item <= 2059) set @genitem, @item + 40; - - if (@genitem == 0) goto L_trim_impossible; - if (zeny < 100) goto L_trim_nozeny; - - delitem @delitem, 1; - getitem @genitem, 1; - set zeny, zeny - 100; - mes "[Lora Tay the Seamstress]"; - mes ""; - mes "\"There you are, dear.\""; - next; - goto L_main_menu; - -L_trim_impossible: - mes "[Lora Tay the Seamstress]"; // INTERNAL ERROR - mes "\"I don't really want to shorten this any more.\""; - next; - - goto L_main_menu; - -L_trim_nozeny: - mes "[Lora Tay the Seamstress]"; - mes "\"Not enough GP? Well, just do it yourself-- trimming really is trivial.\""; - next; - - goto L_main_menu; - -L_lengthen: - mes "[Lora Tay the Seamstress]"; - mes "\"Naturally, I will need a piece of cotton to sew onto it; I must also charge you some... hmm... does 500 GP sound reasonable? Yes, I think I shall charge that.\""; - mes "\"Now, let me see. What is it that you want lengthened?\""; - next; - - set @default_choice$, "Never mind."; - setarray @items, 688, 2090, 2091, 2092, 2093, 2094, 2095, 2096, 2097, 2098, 2099, - 689, 2120, 2121, 2122, 2123, 2124, 2125, 2126, 2127, 2128, 2129; - setarray @item_names$, "tank top", "red tank top", "green tank top", "dark blue tank top", "yellow tank top", "light blue tank top", "pink tank top", "black tank top", "orange tank top", "purple tank top", "tank top 9", - "short tank top", "red short tank top", "green short tank top", "dark blue short tank top", "yellow short tank top", "light blue short tank top", "pink short tank top", "black short tank top", "orange short tank top", "purple short tank top", "short tank top 9"; - set @items_nr, 22; - callsub SUB_pick_one_of_many_items; - if (@item == 0) goto L_main_menu; - - set @delitem, @item; - set @genitem, 0; - if (@item == 688) set @genitem, 1202; - if (@item == 689) set @genitem, 688; - if (@item >= 2120 && @item <= 2129) set @genitem, @item - 30; - if (@item >= 2090 && @item <= 2099) set @genitem, @item - 40; - - if (@genitem == 0) goto L_lengthen_impossible; - if (zeny < 500) goto L_lengthen_nozeny; - if (countitem (@COTTON) < 1) goto L_lengthen_nocotton; - - delitem @delitem, 1; - delitem @COTTON, 1; - getitem @genitem, 1; - set zeny, zeny - 500; - mes "[Lora Tay the Seamstress]"; - mes "The seamstress cuts your piece of cotton cloth into stripes and sews them on. Using some odd liquid, she flattens the seams and borders."; - if (@delitem > 2000) // dyed - mes "She then applies another liquid-- smelling strangely of fermented apples-- to the result, wraps it up, and wrings it tightly. As she unwraps it, you observe to your amazement that the dye has spread to the newly attached area."; - mes "\"There you are, dear.\""; - next; - goto L_main_menu; - -L_lengthen_nocotton: - mes "[Lora Tay the Seamstress]"; - mes "\"Who do you think I am? The cotton fairy? Get yourself some cloth before you ask me to sew it on.\""; - next; - - goto L_main_menu; - -L_lengthen_nozeny: - mes "[Lora Tay the Seamstress]"; - mes "\"No gold, no sewing.\""; - next; - - goto L_main_menu; - -L_lengthen_impossible: - mes "[Lora Tay the Seamstress]"; // INTERNAL ERROR - mes "\"I really can't lengthen that any more.\""; - next; - - goto L_main_menu; - -L_shirt: - mes "[Lora Tay the Seamstress]"; - mes "\"Oh, how silly. You can by those everywhere. Please don't bore me with such trifles, dear.\""; - next; - - goto L_main_menu; - -L_tanktop: - mes "[Lora Tay the Seamstress]"; - mes "\"A tank top? Well, hardly a challenge, but I suppose I could do that. Please get me some cloth-- plain cotton will do-- and, let's see, how does 100,000 GP for my efforts sound?\""; - mes "\"Wait, I keep forgetting, you are just an adventurer... let's make that 1000 GP, then.\""; - next; - -L_tanktop_menu: - menu "I think I would like something else.", L_main_menu, - "A tank top, please (6 cotton)", L_tanktop_long, - "A short tank top, please (5 cotton)", L_tanktop_short, - "Goodbye for now.", L_end; - -L_tanktop_short: - if (countitem (@COTTON) < 5) goto L_tanktop_insufficient_cloth; - if (zeny < 1000) goto L_tanktop_insufficient_zeny; - set zeny, zeny - 1000; - delitem @COTTON, 5; - getitem 689, 1; - mes "[Lora Tay the Seamstress]"; - mes "You watch as Lora sews the pieces of cloth together, then flattens the seams and ends with some odd liquid."; - mes "Amazingly, the result looks like a single piece of cloth."; - mes "After little more than a few elegant cuts and folds, your tank top is ready."; - mes "\"Oh dear, it seems that I am done already. Do you need anything else?\""; - next; - goto L_tanktop_menu; - -L_tanktop_long: - if (countitem (@COTTON) < 6) goto L_tanktop_insufficient_cloth; - if (zeny < 1000) goto L_tanktop_insufficient_zeny; - set zeny, zeny - 1000; - delitem @COTTON, 6; - getitem 688, 1; - mes "[Lora Tay the Seamstress]"; - mes "After combining your pieces of cloth into one-- miraculously making the seams and stitches vanish-- the seamstress cuts out all that doesn't belong into a tank top, then folds and stabilises the edges with additional seam lines."; - mes "\"There you are. Don't worry, I have trimmed it to match your size perfectly.\""; - next; - goto L_tanktop_menu; - -L_tanktop_insufficient_cloth: - mes "[Lora Tay the Seamstress]"; - mes "\"No, no, no, count again-- how much cloth did I say I needed? That's not enough.\""; - next; - goto L_tanktop_menu; - -L_tanktop_insufficient_zeny: - mes "[Lora Tay the Seamstress]"; - mes "As you note that you don't have enough GP on you, Lora rolls her eyes."; - mes "\"I don't work for free, you know. I already gave you a discounted peasant price.\""; - next; - goto L_main_menu; - -L_cape: - mes "[Lora Tay the Seamstress]"; - mes "She shakes her head."; - mes "\"No capes. You're an adventurer, right? Do you want to get caught by a closing portcullis? Or strangled when your cape gets tangled in a tree? Or brought down by a mushroom stomping on your cape while you're trying to run away? No capes.\""; - next; - - goto L_main_menu; - -L_robe: - mes "[Lora Tay the Seamstress]"; - mes "\"A robe? Well, as long as you're not asking me to make it out of cotton...\""; - next; - - if (countitem(@SILK_COCOON) == 0) - goto L_robe_nosilk; - -L_robe_menu: - menu "Here, I have some silk cocoons!", -, - "Here, I have some silk sheets!", L_robe_nosilk, - "Where can I find silk?", L_where_silk, - "How much silk do you need?", L_how_much_silk, - "Oh, never mind.", L_main_menu; - - mes "[Lora Tay the Seamstress]"; - mes "The seamstress stares at you as if you had gone out of your mind."; - mes "\"And what precisely do you expect me to do with silk cocoons? String them together in some baubly chain? Somehow remove the thread and spin and weave it so that some random person can have their robe?\""; - next; - - menu "Will you trade cocoons for sheets?", -, - "Never mind.", L_main_menu; - - mes "[Lora Tay the Seamstress]"; - mes "Lora frowns."; - mes "\"It's not all that easy to get properly processed silk around here. Easier for me than for you, I admit...\""; - next; - - mes "[Lora Tay the Seamstress]"; - mes "She sighs."; - mes "\"All right, very well then. I have enough spare silk sheets right now, but you pay the silk processing for your cocoons.\""; - next; - - mes "[Lora Tay the Seamstress]"; - mes "\"Let's see... " + @ROBE_COCOONS_NR + " silk cocoons and " + @ROBE_ZENY + " GP should just about cover that.\""; - next; - - menu "I'm not interested.", L_main_menu, - "Very well then, here you are.", -; - - if (countitem(@SILK_COCOON) < @ROBE_COCOONS_NR) - goto L_robe_missing_cocoons; - - if (zeny < @ROBE_ZENY) - goto L_robe_missing_zeny; - - set zeny, zeny - @ROBE_ZENY; - delitem @SILK_COCOON, @ROBE_COCOONS_NR; - getitem @SILK_ROBE, 1; - mes "[Lora Tay the Seamstress]"; - mes "The seamstress puts your cocoons and GP away, takes your measurements and pulls out several silk sheets. She asks you to stretch out your arms, then pins the silk sheets in place all over your body."; - next; - - mes "[Lora Tay the Seamstress]"; - mes "She proceeds to make a number of mysterious marks on the sheets with a charcoal pen. Meanwhile, your arms are getting tired, but you're afraid to lower them-- she used a lot of pins to put everything into place, and you lost track of where they went..."; - next; - - mes "[Lora Tay the Seamstress]"; - mes "\"Splendid.\""; - mes "After removing the sheets (and pins!), she picks up a pair of scissors and plows through the cloth at her usual amazing pace, only stopping briefly to sew together parts here and there."; - next; - - mes "[Lora Tay the Seamstress]"; - mes "She then treats the seams with some odorless liquid, making them vanish completely. Finally she hands you the finished robe."; - mes "\"Here you are now, this will fit. And don't you dare tell anyone that I did this! I'm not about to start a silk cocoon collection!\""; - next; - - goto L_main_menu; - -L_robe_missing_cocoons: - mes "[Lora Tay the Seamstress]"; - mes "\"" + @ROBE_COCOONS_NR + " cocoons is what I said, not " + countitem(@SILK_COCOON) + "."; - mes @ROBE_COCOONS_NR + " is " + (@ROBE_COCOONS_NR / 10) + " as many times as you have fingers, in case that helps.\""; - next; - goto L_main_menu; - -L_robe_missing_zeny: - mes "[Lora Tay the Seamstress]"; - mes "\"No, no no. The way this works is that you give me the GP first and I give you the robe afterwards. You're " + (@ROBE_ZENY - zeny) + " GP short, so come back when you can afford the robe!\""; - next; - goto L_main_menu; - -L_where_silk: - mes "[Lora Tay the Seamstress]"; - mes "\"Oh, Hetchel on the Tulimshar Marketplace can weave them for you.\""; - next; - mes "[Lora Tay the Seamstress]"; - mes "She hesitates."; - mes "\"I didn't see her there the last time I visited, though. She may be visiting family. Tough luck.\""; - next; - goto L_robe_menu; - -L_how_much_silk: - mes "[Lora Tay the Seamstress]"; - mes "\"Six sheets should do fine, if they're the usual double-elbow squares.\""; - next; - goto L_robe_menu; - -L_robe_nosilk: - mes "[Lora Tay the Seamstress]"; - mes "\"What is that? You don't have any silk? Well, you're out of luck, I would say. I shan't make one out of those cotton rags; you might as well be wearing an apple sack.\""; - next; - goto L_main_menu; - -L_end: - close; - - - -// Input: @items (array of items you want to choose from) -// @item_names (names of the items in @items) -// @items_nr (number of entries in @items) -// @default_choice$ (default option) -// Return: @item (The selected item, or 0 if the default/something invalid was chosen) -SUB_pick_one_of_many_items: - set @c, 0; - set @i, 0; - - setarray @choice_n$, "", "", "", "", "", "", "", "", - "", "", "", "", "", "", "", "", - "", "", "", "", "", "", "", "", - "", "", "", "", "", "", "", ""; - -L_SUB_pick_choice_loop: - if (@i >= @items_nr) goto L_SUB_choice_init_done; - set @current, @items[@i]; - set @current_name$, @item_names$[@i]; - set @i, @i + 1; - - if (countitem(@current) == 0) goto L_SUB_pick_choice_loop; - set @choice_v[@c], @current; - set @choice_n$[@c], @current_name$; - set @c, @c + 1; - goto L_SUB_pick_choice_loop; - -L_SUB_choice_init_done: - set @choice_v[@c], 0; - set @choice_n$[@c], @default_choice$; - set @c, @c + 1; - - if (@c < 10) - menu @choice_n$[0], -, - @choice_n$[1], -, - @choice_n$[2], -, - @choice_n$[3], -, - @choice_n$[4], -, - @choice_n$[5], -, - @choice_n$[6], -, - @choice_n$[7], -, - @choice_n$[8], -, - @choice_n$[9], -; - if (@c < 10) goto L_SUB_choice_join; - - if (@c < 20) - menu @choice_n$[0], -, - @choice_n$[1], -, - @choice_n$[2], -, - @choice_n$[3], -, - @choice_n$[4], -, - @choice_n$[5], -, - @choice_n$[6], -, - @choice_n$[7], -, - @choice_n$[8], -, - @choice_n$[9], -, - @choice_n$[10], -, - @choice_n$[11], -, - @choice_n$[12], -, - @choice_n$[13], -, - @choice_n$[14], -, - @choice_n$[15], -, - @choice_n$[16], -, - @choice_n$[17], -, - @choice_n$[18], -, - @choice_n$[19], -; - if (@c < 20) goto L_SUB_choice_join; - - menu @choice_n$[0], -, - @choice_n$[1], -, - @choice_n$[2], -, - @choice_n$[3], -, - @choice_n$[4], -, - @choice_n$[5], -, - @choice_n$[6], -, - @choice_n$[7], -, - @choice_n$[8], -, - @choice_n$[9], -, - @choice_n$[10], -, - @choice_n$[11], -, - @choice_n$[12], -, - @choice_n$[13], -, - @choice_n$[14], -, - @choice_n$[15], -, - @choice_n$[16], -, - @choice_n$[17], -, - @choice_n$[18], -, - @choice_n$[19], -, - @choice_n$[20], -, - @choice_n$[21], -, - @choice_n$[22], -, - @choice_n$[23], -, - @choice_n$[24], -, - @choice_n$[25], -, - @choice_n$[26], -, - @choice_n$[27], -, - @choice_n$[28], -, - @choice_n$[29], -, - @choice_n$[30], -, - @choice_n$[31], -; - -L_SUB_choice_join: - set @menu, @menu - 1; - set @item, @choice_v[@menu]; - if (@menu >= @c) set @item, 0; - - return; -} - diff --git a/npc/new_23-1-dimonds-cove/passages.txt b/npc/new_23-1-dimonds-cove/passages.txt deleted file mode 100644 index 5d9fcc8b..00000000 --- a/npc/new_23-1-dimonds-cove/passages.txt +++ /dev/null @@ -1,21 +0,0 @@ -new_14-1.gat,36,94 warp toDimondsCove 0,0,new_23-1.gat,32,44 -new_23-1.gat,32,46 warp fromDimondsCove 0,0,new_14-1.gat,36,95 - - -new_23-1.gat,27,24 warp toBasement 0,1,new_23-1.gat,35,68 -new_23-1.gat,37,68 warp fromBasement 0,1,new_23-1.gat,28,24 - -new_23-1.gat,39,26 warp toSecond 0,0,new_23-1.gat,82,26 -new_23-1.gat,40,26 warp toSecond 0,0,new_23-1.gat,83,26 -new_23-1.gat,41,26 warp toSecond 0,0,new_23-1.gat,84,26 -new_23-1.gat,82,29 warp toFirst 0,0,new_23-1.gat,39,27 -new_23-1.gat,83,29 warp toFirst 0,0,new_23-1.gat,40,27 -new_23-1.gat,84,29 warp toFirst 0,0,new_23-1.gat,41,27 - -new_23-1.gat,66,27 warp toThird 0,0,new_23-1.gat,66,71 -new_23-1.gat,67,27 warp toThird 0,0,new_23-1.gat,67,71 -new_23-1.gat,68,27 warp toThird 0,0,new_23-1.gat,68,71 -new_23-1.gat,66,73 warp toSecond 0,0,new_23-1.gat,66,28 -new_23-1.gat,67,73 warp toSecond 0,0,new_23-1.gat,67,28 -new_23-1.gat,68,73 warp toSecond 0,0,new_23-1.gat,68,28 - diff --git a/npc/new_23-1-dimonds-cove/workers.txt b/npc/new_23-1-dimonds-cove/workers.txt deleted file mode 100644 index 5579dadd..00000000 --- a/npc/new_23-1-dimonds-cove/workers.txt +++ /dev/null @@ -1,11 +0,0 @@ -new_23-1.gat,23,70,0 script Josh 155,{ - mes "[Josh]"; - mes "\"We're working on getting the cellar pass open.\""; - close; -} - -new_23-1.gat,39,75,0 script Zack 155,{ - mes "[Zack]"; - mes "\"My brother and I are fixing the cellar pass.\""; - close; -} diff --git a/npc/new_24-1-eastern-desert-mountain-passage/mika.txt b/npc/new_24-1-eastern-desert-mountain-passage/mika.txt deleted file mode 100644 index 222accde..00000000 --- a/npc/new_24-1-eastern-desert-mountain-passage/mika.txt +++ /dev/null @@ -1,8 +0,0 @@ -new_24-1.gat,39,27,0 script Mika 114,{ - mes "[Mika]"; - mes "\"My father told me about a man living in this desert who makes clothes out of snake skin.\""; - next; - mes "[Mika]"; - mes "\"Maybe you can find him, but be careful you don't get lost in the tunnels!\""; - close; -} diff --git a/npc/new_24-1-eastern-desert-mountain-passage/monsters.txt b/npc/new_24-1-eastern-desert-mountain-passage/monsters.txt deleted file mode 100644 index 649abc39..00000000 --- a/npc/new_24-1-eastern-desert-mountain-passage/monsters.txt +++ /dev/null @@ -1,14 +0,0 @@ -// Map: new_24-1 -// This is the Desert Mountains. -// - -new_24-1.gat,0,0,0,0 monster MountainSnake 1026,60,0,0,Mob24::OnMountainSnake - -new_24-1.gat,0,0,0 script Mob24 -1,{ -OnMountainSnake: - set @mobID, 1026; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_24-1-eastern-desert-mountain-passage/pachua.txt b/npc/new_24-1-eastern-desert-mountain-passage/pachua.txt deleted file mode 100644 index a40c652c..00000000 --- a/npc/new_24-1-eastern-desert-mountain-passage/pachua.txt +++ /dev/null @@ -1,194 +0,0 @@ -new_24-1.gat,23,100,0 script Pachua 143,{ - - set @LEATHER_PATCH, 708; - set @SNAKE_SKIN, 641; - - set @LEATHER_PATCH_PRICE, 300; - - set @wants_leather_patch, QUEST_Forestbow_state & NIBBLE_4_MASK; - - mes "[Chief Pachua]"; - mes "\"How!\""; - next; - - if (getequipid(equip_head) == 643 || getequipid(equip_head) == 644) goto L_WearingCowboy; - if (getequipid(equip_legs) == 642) goto L_WearingChaps; - - mes "[Chief Pachua]"; - mes "\"For generations my tribe has been crafting special clothes out of different items.\""; - next; - -L_Check_Shops: - if((countitem(610) > 0 && countitem(@SNAKE_SKIN) > 9) && (countitem(524) > 0 && countitem(@SNAKE_SKIN) > 1)) goto L_Super_store; - if(countitem(610) > 0 && countitem(@SNAKE_SKIN) > 9) goto L_Chaps_store; - if(countitem(524) > 0 && countitem(@SNAKE_SKIN) > 1) goto L_Cowboy_store; - - mes "[Chief Pachua]"; - mes "\"Maybe if you bring me the right materials I can make something for you.\""; - next; - - if (@wants_leather_patch) - menu "Wait, can you make a leather patch for me?", L_leather_patch, - "OK, bye.", -; - - close; - -L_CheckStuff: - mes "[Chief Pachua]"; - mes "\"Let me see what you have there.\""; - next; - return; - -L_Super_store: - callsub L_CheckStuff; - mes "[Chief Pachua]"; - mes "\"Ahh you have lots of good items to work with.\""; - mes ""; - mes "\"With them I can make you either"; - mes "a Cowboy hat or Snake Skin Chaps\""; - next; - if (@wants_leather_patch) - menu - "Cowboy hat, please.", L_BuyCowboy, - "Snake Skin Chaps sound good.", L_BuyChaps, - "Can you make a leather patch?", L_leather_patch, - "Not now, maybe later.", L_NoDeal; - if (!@wants_leather_patch) - menu - "Cowboy hat, please.", L_BuyCowboy, - "Snake Skin Chaps sound good.", L_BuyChaps, - "Not now, maybe later.", L_NoDeal; - -L_Cowboy_store: - callsub L_CheckStuff; - mes "[Chief Pachua]"; - mes "\"To make you a Cowboy hat I will need:"; - mes "1 Fancy hat"; - mes "2 Snake skins"; - mes "5.000 GP\""; - mes ""; - mes "\"Do we have a deal?\""; - next; - if (@wants_leather_patch) - menu - "Yes, that's fine.", L_BuyCowboy, - "Can you make a leather patch?", L_leather_patch, - "On second thought, maybe later.", L_NoDeal; - if (!@wants_leather_patch) - menu - "Yes, that's fine.", L_BuyCowboy, - "On second thought, maybe later.", L_NoDeal; - -L_Chaps_store: - callsub L_CheckStuff; - mes "[Chief Pachua]"; - mes "\"To make you a pair of Snake Skin Chaps I will need:"; - mes "1 Jeans Shorts"; - mes "10 Snake skins"; - mes "10.000 GP\""; - mes ""; - mes "\"Do we have a deal?\""; - next; - if (!@wants_leather_patch) - menu - "Yes, that's fine.", L_BuyChaps, - "On second thought, maybe later.", L_NoDeal; - if (@wants_leather_patch) - menu - "Yes, that's fine.", L_BuyChaps, - "Can you make a leather patch?", L_leather_patch, - "On second thought, maybe later.", L_NoDeal; - -L_BuyChaps: - if (zeny < 10000) goto L_NoMoney; - if (countitem(610) < 1) goto L_NoJeans; - if (countitem(@SNAKE_SKIN) < 10) goto L_NoSkin; - set zeny, zeny - 10000; - delitem @SNAKE_SKIN, 10; - delitem 610, 1; - getitem 642, 1; - goto L_DealDone; - -L_BuyCowboy: - if (zeny < 5000) goto L_NoMoney; - if (countitem(524) < 1) goto L_NoFancy; - if (countitem(@SNAKE_SKIN) < 2) goto L_NoSkin; - set zeny, zeny - 5000; - delitem @SNAKE_SKIN, 2; - delitem 524, 1; - set @temp,rand(2); - if(@temp == 0) goto L_Cowboy_white; - goto L_Cowboy_black; - -L_Cowboy_white: - getitem 643, 1; - goto L_DealDone; - -L_Cowboy_black: - getitem 644, 1; - goto L_DealDone; - -L_leather_patch: - mes "[Chief Pachua]"; - mes "\"If you just want a piece of leather, then yes, I can make that. Bring me a snake skin and " + @LEATHER_PATCH_PRICE + " GP.\""; - next; - - menu "Here you are.", -, - "OK, I'll be back later.", L_end, - "That's too expensive!.", L_NoDeal; - - if (countitem(@SNAKE_SKIN) < 1) goto L_NoSkins; - if (zeny < @LEATHER_PATCH_PRICE) goto L_NoMoney; - - set zeny, zeny - @LEATHER_PATCH_PRICE; - delitem @SNAKE_SKIN, 1; - getitem @LEATHER_PATCH, 1; - goto L_DealDone; - -L_DealDone: - mes "[Chief Pachua]"; - mes "\"Here you are!\""; - mes ""; - mes "\"Come back any time.\""; - close; - -L_NoDeal: - mes "[Chief Pachua]"; - mes "\"Alright, but you wont get a better deal anywhere else!\""; - close; - -L_NoMoney: - mes "[Chief Pachua]"; - mes "\"Oh dear, it seems you don't have enough money.\""; - close; - -L_NoJeans: - mes "[Chief Pachua]"; - mes "\"Oh dear, it seems you don't have enough jeans shorts.\""; - close; - -L_NoFancy: - mes "[Chief Pachua]"; - mes "\"Oh dear, it seems you don't have enough fancy hats.\""; - close; - -L_NoSkins: - mes "[Chief Pachua]"; - mes "\"Oh dear, it seems you don't have enough snake skins.\""; - close; - -L_WearingCowboy: - mes "[Chief Pachua]"; - mes "\"Ah, I see that you are wearing a hat made with the ancient methods of my tribe.\""; - next; - goto L_Check_Shops; - -L_WearingChaps: - mes "[Chief Pachua]"; - mes "\"Ah, I see that you are wearing pants made by my tribe.\""; - next; - goto L_Check_Shops; - -L_end: - close; -} diff --git a/npc/new_24-1-eastern-desert-mountain-passage/passages.txt b/npc/new_24-1-eastern-desert-mountain-passage/passages.txt deleted file mode 100644 index ae6d5a01..00000000 --- a/npc/new_24-1-eastern-desert-mountain-passage/passages.txt +++ /dev/null @@ -1,32 +0,0 @@ -new_24-1.gat,19,32 warp toEastDesert 0,0,new_7-1.gat,160,101 -new_24-1.gat,20,31 warp toEastDesert 0,0,new_7-1.gat,161,100 -new_24-1.gat,21,30 warp toEastDesert 0,0,new_7-1.gat,162,99 -new_24-1.gat,22,29 warp toEastDesert 0,0,new_7-1.gat,163,98 -new_24-1.gat,23,28 warp toEastDesert 0,0,new_7-1.gat,164,97 -new_24-1.gat,24,27 warp toEastDesert 0,0,new_7-1.gat,165,96 -new_24-1.gat,25,26 warp toEastDesert 0,0,new_7-1.gat,166,95 -new_24-1.gat,26,25 warp toEastDesert 0,0,new_7-1.gat,167,94 -new_24-1.gat,27,24 warp toEastDesert 0,0,new_7-1.gat,168,93 -new_24-1.gat,28,23 warp toEastDesert 0,0,new_7-1.gat,169,92 -new_24-1.gat,29,22 warp toEastDesert 0,0,new_7-1.gat,170,91 -new_24-1.gat,30,21 warp toEastDesert 0,0,new_7-1.gat,171,90 -new_24-1.gat,31,20 warp toEastDesert 0,0,new_7-1.gat,172,89 -new_24-1.gat,40,26 warp toMountainCave 0,0,new_25-1.gat,40,27 -new_24-1.gat,55,27 warp toMountainCave 0,0,new_25-1.gat,55,28 -new_24-1.gat,62,30 warp toMountainCave 0,0,new_25-1.gat,62,31 -new_24-1.gat,86,24 warp toMountainCave 0,0,new_25-1.gat,86,25 -new_24-1.gat,91,24 warp toMountainCave 0,0,new_25-1.gat,91,25 -new_24-1.gat,122,24 warp toMountainCave 0,0,new_25-1.gat,122,25 -new_24-1.gat,77,44 warp toMountainCave 0,0,new_25-1.gat,77,45 -new_24-1.gat,104,44 warp toMountainCave 0,0,new_25-1.gat,104,45 -new_24-1.gat,114,49 warp toMountainCave 0,0,new_25-1.gat,114,50 -new_24-1.gat,110,56 warp toMountainCave 0,0,new_25-1.gat,110,57 -new_24-1.gat,125,59 warp toMountainCave 0,0,new_25-1.gat,125,60 -new_24-1.gat,60,58 warp toMountainCave 0,0,new_25-1.gat,60,69 -new_24-1.gat,92,63 warp toMountainCave 0,0,new_25-1.gat,92,64 -new_24-1.gat,112,74 warp toMountainCave 0,0,new_25-1.gat,112,75 -new_24-1.gat,51,90 warp toMountainCave 0,0,new_25-1.gat,51,91 -new_24-1.gat,74,90 warp toMountainCave 0,0,new_25-1.gat,74,91 -new_24-1.gat,38,121 warp toMountainCave 0,0,new_25-1.gat,38,122 -new_24-1.gat,79,120 warp toMountainCave 0,0,new_25-1.gat,79,121 -new_24-1.gat,121,110 warp toMountainCave 0,0,new_25-1.gat,121,111 diff --git a/npc/new_25-1-eastern-desert-cave/monsters.txt b/npc/new_25-1-eastern-desert-cave/monsters.txt deleted file mode 100644 index b24d2e7c..00000000 --- a/npc/new_25-1-eastern-desert-cave/monsters.txt +++ /dev/null @@ -1,14 +0,0 @@ -// Map: new_25-1 -// This is the Desert Mountains Caves. -// - -new_25-1.gat,0,0,0,0 monster MountainSnake 1026,50,0,0,Mob25::OnMountainSnake - -new_25-1.gat,0,0,0 script Mob25 -1,{ -OnMountainSnake: - set @mobID, 1026; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_25-1-eastern-desert-cave/passages.txt b/npc/new_25-1-eastern-desert-cave/passages.txt deleted file mode 100644 index 9fc66eff..00000000 --- a/npc/new_25-1-eastern-desert-cave/passages.txt +++ /dev/null @@ -1,19 +0,0 @@ -new_25-1.gat,40,26 warp toMountainPass 0,0,new_24-1.gat,40,27 -new_25-1.gat,55,27 warp toMountainPass 0,0,new_24-1.gat,55,28 -new_25-1.gat,62,30 warp toMountainPass 0,0,new_24-1.gat,62,31 -new_25-1.gat,86,24 warp toMountainPass 0,0,new_24-1.gat,86,25 -new_25-1.gat,91,24 warp toMountainPass 0,0,new_24-1.gat,91,25 -new_25-1.gat,122,24 warp toMountainPass 0,0,new_24-1.gat,122,25 -new_25-1.gat,77,44 warp toMountainPass 0,0,new_24-1.gat,77,45 -new_25-1.gat,104,44 warp toMountainPass 0,0,new_24-1.gat,104,45 -new_25-1.gat,114,49 warp toMountainPass 0,0,new_24-1.gat,114,50 -new_25-1.gat,110,56 warp toMountainPass 0,0,new_24-1.gat,110,57 -new_25-1.gat,125,59 warp toMountainPass 0,0,new_24-1.gat,125,60 -new_25-1.gat,60,68 warp toMountainPass 0,0,new_24-1.gat,60,59 -new_25-1.gat,92,63 warp toMountainPass 0,0,new_24-1.gat,92,64 -new_25-1.gat,112,74 warp toMountainPass 0,0,new_24-1.gat,112,75 -new_25-1.gat,51,90 warp toMountainPass 0,0,new_24-1.gat,51,91 -new_25-1.gat,74,90 warp toMountainPass 0,0,new_24-1.gat,74,91 -new_25-1.gat,38,121 warp toMountainPass 0,0,new_24-1.gat,38,122 -new_25-1.gat,79,120 warp toMountainPass 0,0,new_24-1.gat,79,121 -new_25-1.gat,121,110 warp toMountainPass 0,0,new_24-1.gat,121,111 diff --git a/npc/new_26-1-hill1/monsters.txt b/npc/new_26-1-hill1/monsters.txt deleted file mode 100644 index cc95281f..00000000 --- a/npc/new_26-1-hill1/monsters.txt +++ /dev/null @@ -1,52 +0,0 @@ -// Map: new_26-1 -// This is North Woodland. -// - -new_26-1.gat,0,0,0,0 monster Mouboo 1028,25,0,0,Mob26::OnMouboo -new_26-1.gat,0,0,0,0 monster SpikyMushroom 1019,30,0,0,Mob26::OnSpikyMushroom - -new_26-1.gat,0,0,0,0 monster Alizarin 1032,1,2700000,1800000,Mob26::OnAlizarin -new_26-1.gat,0,0,0,0 monster Gamboge 1031,1,2700000,1800000,Mob26::OnGamboge -new_26-1.gat,0,0,0,0 monster Cobalt 1030,1,2700000,1800000,Mob26::OnCobalt -new_26-1.gat,0,0,0,0 monster Mauve 1029,1,2700000,1800000,Mob26::OnMauve - -new_26-1.gat,0,0,0,0 monster SilkWorm 1035,5,6000,3000,Mob26::OnSilkWorm - -new_26-1.gat,0,0,0 script Mob26 -1,{ -OnMouboo: - set @mobID, 1028; - callfunc "MobPoints"; - break; - -OnSpikyMushroom: - set @mobID, 1019; - callfunc "MobPoints"; - break; - -OnAlizarin: - set @mobID, 1032; - callfunc "MobPoints"; - break; - -OnGamboge: - set @mobID, 1031; - callfunc "MobPoints"; - break; - -OnCobalt: - set @mobID, 1030; - callfunc "MobPoints"; - break; - -OnMauve: - set @mobID, 1029; - callfunc "MobPoints"; - break; - -OnSilkWorm: - set @mobID, 1035; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_26-1-hill1/passages.txt b/npc/new_26-1-hill1/passages.txt deleted file mode 100644 index 6d5cabe0..00000000 --- a/npc/new_26-1-hill1/passages.txt +++ /dev/null @@ -1,11 +0,0 @@ -new_26-1.gat,132,164 warp south 2,0,new_9-1.gat,72,16 -new_26-1.gat,98,99 warp lowtunnel1 0,0,new_27-1.gat,36,81 -new_26-1.gat,109,92 warp hightunnel1 0,0,new_27-1.gat,79,73 -new_26-1.gat,123,90 warp npccave 0,0,new_27-1.gat,38,156 -new_26-1.gat,92,104 warp lowtunnel2 0,0,new_27-1.gat,270,111 -new_26-1.gat,65,126 warp hightunnel2 0,0,new_27-1.gat,176,139 -new_26-1.gat,44,88 warp starttunnel3 0,0,new_27-1.gat,354,187 -new_26-1.gat,41,48 warp realhightunnel3 0,0,new_27-1.gat,353,78 -new_26-1.gat,51,39 warp high1tunnel3 0,0,new_27-1.gat,370,45 -new_26-1.gat,148,67 warp high2tunnel3 0,0,new_27-1.gat,475,104 -new_26-1.gat,150,59 warp map26to28 0,4,new_28-1.gat,21,75 diff --git a/npc/new_26-1-hill1/shops.txt b/npc/new_26-1-hill1/shops.txt deleted file mode 100644 index 4e2ce96e..00000000 --- a/npc/new_26-1-hill1/shops.txt +++ /dev/null @@ -1,3 +0,0 @@ -// - -new_26-1.gat,36,99,0 shop Blossom 163,661:100,664:100,665:50,662:100,667:50,663:100,671:75,673:25,669:75,672:25,674:25 diff --git a/npc/new_27-1-hill2/monsters.txt b/npc/new_27-1-hill2/monsters.txt deleted file mode 100644 index bb0799bb..00000000 --- a/npc/new_27-1-hill2/monsters.txt +++ /dev/null @@ -1,20 +0,0 @@ -// Map: new_27-1 -// This is the Caves beneath the North Woodland. -// - -new_27-1.gat,0,0,0,0 monster Bat 1017,100,0,0,Mob27::OnBat -new_27-1.gat,0,0,0,0 monster CaveSnake 1021,75,0,0,Mob27::OnCaveSnake - -new_27-1.gat,0,0,0 script Mob27 -1,{ -OnBat: - set @mobID, 1017; - callfunc "MobPoints"; - break; - -OnCaveSnake: - set @mobID, 1021; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_27-1-hill2/passages.txt b/npc/new_27-1-hill2/passages.txt deleted file mode 100644 index b85404fb..00000000 --- a/npc/new_27-1-hill2/passages.txt +++ /dev/null @@ -1,9 +0,0 @@ -new_27-1.gat,36,83 warp lowerexit 1,0,new_26-1.gat,98,100 -new_27-1.gat,79,75 warp higherexit 1,0,new_26-1.gat,109,93 -new_27-1.gat,38,157 warp caveexit 1,0,new_26-1.gat,123,91 -new_27-1.gat,270,112 warp lowerexit 0,1,new_26-1.gat,92,105 -new_27-1.gat,176,138 warp higherexit 0,0,new_26-1.gat,65,127 -new_27-1.gat,354,189 warp startexit 1,0,new_26-1.gat,44,89 -new_27-1.gat,353,80 warp realexit 1,0,new_26-1.gat,41,48 -new_27-1.gat,370,47 warp higher1exit 1,0,new_26-1.gat,51,40 -new_27-1.gat,474,104 warp higher2exit 0,1,new_26-1.gat,146,67 diff --git a/npc/new_28-1-hillwest/monsters.txt b/npc/new_28-1-hillwest/monsters.txt deleted file mode 100644 index fe216eae..00000000 --- a/npc/new_28-1-hillwest/monsters.txt +++ /dev/null @@ -1,63 +0,0 @@ -// Map: new_28-1 -// This is North-East Woodland. -// - -new_28-1.gat,0,0,0,0 monster Mouboo 1028,5,0,0,Mob28::OnMouboo -new_28-1.gat,0,0,0,0 monster SpikyMushroom 1019,15,0,0,Mob28::OnSpikyMushroom -new_28-1.gat,0,0,0,0 monster Flower 1014,15,0,0,Mob28::OnFlower - -new_28-1.gat,0,0,0,0 monster Alizarin 1032,1,0,0,Mob28::OnAlizarin -new_28-1.gat,0,0,0,0 monster Gamboge 1031,1,0,0,Mob28::OnGamboge -new_28-1.gat,0,0,0,0 monster Cobalt 1030,1,0,0,Mob28::OnCobalt -new_28-1.gat,0,0,0,0 monster Mauve 1029,1,0,0,Mob28::OnMauve - -new_28-1.gat,0,0,0,0 monster Alizarin 1032,2,2700000,1800000,Mob28::OnAlizarin -new_28-1.gat,0,0,0,0 monster Gamboge 1031,2,2700000,1800000,Mob28::OnGamboge -new_28-1.gat,0,0,0,0 monster Cobalt 1030,2,2700000,1800000,Mob28::OnCobalt -new_28-1.gat,0,0,0,0 monster Mauve 1029,2,2700000,1800000,Mob28::OnMauve - -new_28-1.gat,0,0,0,0 monster SilkWorm 1035,4,6000,3000,Mob28::OnSilkWorm - -new_28-1.gat,0,0,0 script Mob28 -1,{ -OnMouboo: - set @mobID, 1028; - callfunc "MobPoints"; - break; - -OnSpikyMushroom: - set @mobID, 1019; - callfunc "MobPoints"; - break; - -OnFlower: - set @mobID, 1014; - callfunc "MobPoints"; - break; - -OnAlizarin: - set @mobID, 1032; - callfunc "MobPoints"; - break; - -OnGamboge: - set @mobID, 1031; - callfunc "MobPoints"; - break; - -OnCobalt: - set @mobID, 1030; - callfunc "MobPoints"; - break; - -OnMauve: - set @mobID, 1029; - callfunc "MobPoints"; - break; - -OnSilkWorm: - set @mobID, 1035; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_28-1-hillwest/passages.txt b/npc/new_28-1-hillwest/passages.txt deleted file mode 100644 index ed0ea552..00000000 --- a/npc/new_28-1-hillwest/passages.txt +++ /dev/null @@ -1,3 +0,0 @@ -new_28-1.gat,20,74 warp map28to26 0,4,new_26-1.gat,148,60 -new_28-1.gat,45,21 warp map28to33 1,0,new_33-1.gat,46,104 -new_28-1.gat,43,90 warp map28to36 0,0,new_36-1.gat,63,41 diff --git a/npc/new_29-1-west-woodland/monsters.txt b/npc/new_29-1-west-woodland/monsters.txt deleted file mode 100644 index cbb9e182..00000000 --- a/npc/new_29-1-west-woodland/monsters.txt +++ /dev/null @@ -1,69 +0,0 @@ -// Map: new_29-1 -// This is West Woodland. -// - -new_29-1.gat,0,0,0,0 monster Mouboo 1028,5,0,0,Mob29::OnMouboo -new_29-1.gat,0,0,0,0 monster EvilMushroom 1013,15,0,0,Mob29::OnEvilMushroom -new_29-1.gat,0,0,0,0 monster Flower 1014,25,0,0,Mob29::OnFlower -new_29-1.gat,0,0,0,0 monster FireGoblin 1011,20,0,0,Mob29::OnFireGoblin - -new_29-1.gat,0,0,0,0 monster Alizarin 1032,1,0,0,Mob29::OnAlizarin -new_29-1.gat,0,0,0,0 monster Gamboge 1031,1,0,0,Mob29::OnGamboge -new_29-1.gat,0,0,0,0 monster Cobalt 1030,1,0,0,Mob29::OnCobalt -new_29-1.gat,0,0,0,0 monster Mauve 1029,1,0,0,Mob29::OnMauve - -new_29-1.gat,0,0,0,0 monster Alizarin 1032,1,2700000,1800000,Mob29::OnAlizarin -new_29-1.gat,0,0,0,0 monster Gamboge 1031,1,2700000,1800000,Mob29::OnGamboge -new_29-1.gat,0,0,0,0 monster Cobalt 1030,1,2700000,1800000,Mob29::OnCobalt -new_29-1.gat,0,0,0,0 monster Mauve 1029,1,2700000,1800000,Mob29::OnMauve - -new_29-1.gat,0,0,0,0 monster SilkWorm 1035,4,6000,3000,Mob29::OnSilkWorm - -new_29-1.gat,0,0,0 script Mob29 -1,{ -OnMouboo: - set @mobID, 1028; - callfunc "MobPoints"; - break; - -OnEvilMushroom: - set @mobID, 1013; - callfunc "MobPoints"; - break; - -OnFlower: - set @mobID, 1014; - callfunc "MobPoints"; - break; - -OnFireGoblin: - set @mobID, 1011; - callfunc "MobPoints"; - break; - -OnAlizarin: - set @mobID, 1032; - callfunc "MobPoints"; - break; - -OnGamboge: - set @mobID, 1031; - callfunc "MobPoints"; - break; - -OnCobalt: - set @mobID, 1030; - callfunc "MobPoints"; - break; - -OnMauve: - set @mobID, 1029; - callfunc "MobPoints"; - break; - -OnSilkWorm: - set @mobID, 1035; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_29-1-west-woodland/passages.txt b/npc/new_29-1-west-woodland/passages.txt deleted file mode 100644 index 1bfb67a7..00000000 --- a/npc/new_29-1-west-woodland/passages.txt +++ /dev/null @@ -1,3 +0,0 @@ -new_29-1.gat,109,90 warp map29to9 0,3,new_9-1.gat,31,60 -new_29-1.gat,93,58 warp map29to30low 0,0,new_30-1.gat,56,172 -new_29-1.gat,76,38 warp map29to30high 0,0,new_30-1.gat,35,33 \ No newline at end of file diff --git a/npc/new_29-1-west-woodland/taro.txt b/npc/new_29-1-west-woodland/taro.txt deleted file mode 100644 index db6b4551..00000000 --- a/npc/new_29-1-west-woodland/taro.txt +++ /dev/null @@ -1,74 +0,0 @@ - -// Woodland Taro - -new_29-1.gat,54,43,0 script Taro 114,{ - if (getequipid(equip_head) == 511 || getequipid(equip_head) == 1206) goto L_Santa; - if (getequipid(equip_head) == 633) goto L_Elf; - if (getequipid(equip_head) == 628) goto L_NearElf; - if (getequipid(equip_head) == 1204) goto L_Antlers; - if (getequipid(equip_head) == 1205) goto L_Tree; - - mes "[Taro]"; - mes "\"I saw Santa Claus going up this road."; - mes "Will you help me following him?\""; - next; - - menu - "Of course, I'll help you!", L_Warp, - "No, it's probably dangerous out there.", -; - close; - -L_Santa: - mes "[Taro]"; - mes "\"SANTA! Will you take me to your workshop?\""; - next; - - menu - "Of course!", L_Warp, - "No, getting there is too dangerous.", -; - close; - -L_Elf: - mes "[Taro]"; - mes "\"Aren't you one of Santa's elves? Will you take me to him?\""; - next; - - menu - "Yes", L_Warp, - "No. Santa is too busy.", -; - close; - -L_NearElf: - mes "[Taro]"; - mes "\"Aren't you one of Santa's elves? Oh, you're not. Will you help me see him anyways?\""; - next; - - menu - "Yes", L_Warp, - "No", -; - close; - -L_Antlers: - mes "[Taro]"; - mes "\"Mister reindeer? Will you take me to Santa Clause?\""; - next; - - menu - "Yes", L_Warp, - "No", -; - close; - -L_Tree: - mes "[Taro]"; - mes "\"Oh Christmas tree, I wish I could go see Santa!\""; - next; - - menu - "Let me take you", L_Warp, - "Sorry, I'm not a magic tree", -; - close; - -L_Warp: - warp "new_10-1.gat",56,61; - close; -} diff --git a/npc/new_29-1-west-woodland/wedding-officiator.txt b/npc/new_29-1-west-woodland/wedding-officiator.txt deleted file mode 100644 index 93a27c6d..00000000 --- a/npc/new_29-1-west-woodland/wedding-officiator.txt +++ /dev/null @@ -1,246 +0,0 @@ -// Wedding officiator: Marriages and divorces - -new_29-1.gat,31,31,0 script Wedding Officiator 164,{ - - set @WEDDING_FEE, 100; - set @DIVORCE_FEE_PER_LEVEL, 500; - set @WEDDING_MIN_LEVEL, 32; - - mes "[Wedding Officiator]"; - mes "A young lady in a long, green dress is overseeing the park. As she notices you looking at her, she gives you a broad and happy smile."; - mes "\"Hi there! I'm Wendy, here for all your marriage needs!\""; - next; - -L_main: - if (getpartnerid2(0)) - goto L_main_married; - - menu "What exactly do you do?", L_explain_self, - "How do I get married?", L_explain_marriage, - "I would like to get married.", L_get_married; - close; - -L_explain_self: - mes "[Wedding Officiator]"; - mes "\"I'm responsible for marriage and divorce proceedings. Every married couple must be registered, so I keep a looong list of couples and send that to the magistrates every now and then.\""; - next; - mes "[Wedding Officiator]"; - mes "\"So if you have a sweetheart and the two of you are getting along particularly well, and you think that you are ready to make that big final step-- well, then come here and talk to me!\""; - next; - goto L_main; - -L_explain_marriage: - mes "[Wedding Officiator]"; - mes "\"If you are sure that you are ready to get married, then first you come and talk to me here-- I need to register you, after all. You will first have to pay me a small fee of " + @WEDDING_FEE + " GP.\""; - next; - mes "[Wedding Officiator]"; - mes "\"Both you and your partner must be at least " + @WEDDING_MIN_LEVEL + " levels of age, though; the law is very firm on that. But if all of that works out, I will give you two wedding rings for the ceremony.\""; - next; - mes "[Wedding Officiator]"; - mes "\"To complete the marriage, each of you has to put on one of these rings, and you have to stand next to each other in the southern part of this park. Then one of you says `marry' and then the other person's name.\""; - next; - mes "[Wedding Officiator]"; - mes "\"So if you would want to marry me, for example, you would say `marry Wendy'. Just like that. Your partner then has to decide whether he or she wants that. And if you both agree, then you're married!\""; - mes "She again smiles that broad smile of hers."; - next; - goto L_main; - -L_get_married: - if (zeny < @WEDDING_FEE) - goto L_too_poor; - if (BaseLevel < @WEDDING_MIN_LEVEL) - goto L_too_young; - - mes "[Wedding Officiator]"; - mes "Wendy's eyes are sparkling."; - mes "\"Wow. So you and your sweetheart are ready to take the big step, then?\""; - next; - - menu "Yes, we are ready.", -, - "On second thought, perhaps not.", L_end; - - mes "[Wedding Officiator]"; - mes "She bounces."; - mes "\"That's so sweet! You must really love each other, then...?\""; - next; - - menu "We certainly do.", -, - "Yes, of course.", -, - "Please get on with it.", -, - "Hmm. Let me think about this some more.", L_end; - - mes "[Wedding Officiator]"; - mes "Wendy blushes."; - mes "\"Sorry if I am asking so many questions, but I have to make sure, you see... rules and all. Where were we...\""; - next; - - mes "[Wedding Officiator]"; - mes "She composes herself again."; - mes "\"OK. Now, what vows you exchange precisely is your choice. But a marriage is really something that is meant to last. So please take a moment to think.\""; - next; - - mes "[Wedding Officiator]"; - mes "\"Is your partner really someone you are serious about, someone you want to be with even when things get nasty, someone whom you will stick your head out for no matter how bad things get?"; - mes "And do both of you feel that you could spend the rest of your time in this mana world together?\""; - next; - - menu "Yes.", -, - "YES.", -, - "Absolutely.", -, - "Yes. We love each other.", -, - "This is taking too long.", L_end, - "No.", L_end; - - if (zeny < @WEDDING_FEE) - goto L_too_poor; - if (BaseLevel < @WEDDING_MIN_LEVEL) - goto L_too_young; - - set zeny, zeny - @WEDDING_FEE; - getitem 702, 1; - getitem 702, 1; - - mes "[Wedding Officiator]"; - mes "Wendy collects the fee."; - mes "\"Okay... here are your wedding rings. Each of you has to have one. Put them on, stand next to each other in the southern part of this park and say `marry ...' and the name of your partner."; - mes "So your partner might just say `marry " + strcharinfo(0) + "' to marry you.\""; - next; - - mes "[Wedding Officiator]"; - mes "Wendy hesitates, then gives you a quick hug. There are tears are in her eyes."; - mes "\"Sorry, I always get a bit... emotional, I think... but I'm so happy for you!\""; - mes "She smiles wipes the tears from her eyes."; - next; - - mes "[Wedding Officiator]"; - mes "\"So... I wish you the very, very best, a wonderful and happy and successful marriage!\""; - mes "She smiles at you again."; - next; - close; - -L_end: - close; - -L_too_young: - mes "[Wedding Officiator]"; - mes "Wendy looks at her notes, shaking her head; pain is evident in her eyes."; - mes "\"I'm really, really sorry-- I wish I could allow that, but you are still too young. You have to be at least " + @WEDDING_MIN_LEVEL + " levels of age.\""; - next; - close; - -L_too_poor: - mes "[Wedding Officiator]"; - mes "\"Oh, this is so sad... you want to get married but don't have the money!\""; - mes "Wendy is visibly unhappy."; - mes "\"I wish I could help you, but the rules... you see... Well, I'm afraid that you will just have to come back when you have " + @WEDDING_FEE + " GP.\""; - next; - close; - -L_main_married: - - mes "[Wedding Officiator]"; - mes "\"I hope that you and your partner are doing well?\""; - next; - - menu "We are very happy, thanks for asking!", L_farewell, - "Actually, things aren't so good...", L_talk_divorce; - close; - -L_farewell: - mes "[Wedding Officiator]"; - mes "Wendy is beaming."; - mes "\"That's wonderful! Please do say `hi' to your spouse from me!\""; - next; - close; - -L_talk_divorce: - mes "[Wedding Officiator]"; - mes "\"Oh... I am sorry to hear that. What's the problem, then?\""; - next; - - menu "We don't love each other anymore.", L_nolove, - "My partner loves someone else.", L_partner_otherlove, - "I think I love someone else.", L_self_otherlove, - "We can't agree on who carries the loot.", L_loot; - close; - -L_nolove: - mes "[Wedding Officiator]"; - mes "Wendy sighs."; - mes "\"I am really sorry to hear that. Have you tried talking to your partner? Tried some new dungeons? Solved some quests together?\""; - next; - - mes "[Wedding Officiator]"; - mes "\"I mean... I am sure that you have many things in common that you are not aware of. If you just do something new, perhaps you will learn something about each other that you will like?\""; - next; - - menu "We tried that, it didn't work.", L_makesure_divorce, - "Perhaps we should give it another try.", -; - close; - -L_partner_otherlove: - mes "[Wedding Officiator]"; - mes "Wendy frowns."; - mes "\"Are you really sure? Perhaps that other person is just a friend, or even if it isn't, perhaps it was just a small mistake on your partner's side... nobody is perfect, after all!\""; - next; - - menu "I'm sure. I want a divorce.", L_makesure_divorce, - "Perhaps we should discuss this some more first.", -; - close; - -L_self_otherlove: - mes "[Wedding Officiator]"; - mes "Wendy sighs."; - mes "\"Oh dear... well, I suppose that happens. You don't have any children, I think, but still, you made a promise to your partner.\""; - next; - mes "[Wedding Officiator]"; - mes "\"Are you really sure that you love the new person so much that you want to leave your partner? Perhaps it would be good to take some time off first to make sure that you are not making a mistake here.\""; - next; - - menu "I'm sure. I want a divorce.", L_makesure_divorce, - "Let me think about this more.", -; - close; - -L_loot: - mes "[Wedding Officiator]"; - mes "Wendy blinks."; - mes "\"Err... have you thought about just splitting it up?\""; - next; - - menu "No way. I want a divorce.", L_makesure_divorce, - "Oh... oh! But of course!", -; - close; - -L_makesure_divorce: - set @divorce_cost, @DIVORCE_FEE_PER_LEVEL * BaseLevel; - - mes "[Wedding Officiator]"; - mes "Resigned, Wendy looks down at her notes."; - mes "\"Okay. I suppose that if you are sure, I will get your divorce underway. But that will cost you " + @divorce_cost + " in administrative fees.\""; - next; - - menu "Let me think about this again.", L_end, - "HOW much? Never mind, then.", L_end, - "That's OK. I want the divorce.", L_do_divorce; - close; - -L_divorce_nomoney: - mes "[Wedding Officiator]"; - mes "\"I am sorry, but you can't seem to afford the " + @divorce_cost + " GP for a divorce at this time. Please come back later.\""; - next; - close; - -L_do_divorce: - if (zeny < @divorce_cost) - goto L_divorce_nomoney; - - set zeny, zeny - @divorce_cost; - divorce; - - mes "[Wedding Officiator]"; - mes "After collecting her fee, Wendy licks her quill and writes down some notes."; - mes "Then she sighs heavily."; - mes "\"You are divorced now. Thank you for your business.\""; - next; - close; -} diff --git a/npc/new_3-1-tulimshar/banker.txt b/npc/new_3-1-tulimshar/banker.txt deleted file mode 100644 index 9431f5cc..00000000 --- a/npc/new_3-1-tulimshar/banker.txt +++ /dev/null @@ -1,4 +0,0 @@ -new_3-1.gat,57,52,0 script Tybalt 107,{ - set @npcName$, "Tybalt"; - callfunc "Banker"; -} diff --git a/npc/new_3-1-tulimshar/barber.txt b/npc/new_3-1-tulimshar/barber.txt deleted file mode 100644 index bd6b148e..00000000 --- a/npc/new_3-1-tulimshar/barber.txt +++ /dev/null @@ -1,9 +0,0 @@ -new_3-1.gat,53,38,0 script Nicolas 100,{ - mes "[Nicolas the Barber]"; - mes "\"Do you need a barber?\""; - next; - callfunc "Barber"; - mes "[Nicolas the Barber]"; - mes "\"Come again!\""; - close; -} diff --git a/npc/new_3-1-tulimshar/bard.txt b/npc/new_3-1-tulimshar/bard.txt deleted file mode 100644 index dcb56424..00000000 --- a/npc/new_3-1-tulimshar/bard.txt +++ /dev/null @@ -1,10 +0,0 @@ -// - -new_3-1.gat,50,44,0 script Bard 152,{ - setarray @songs$, "\"There once was a bard, who had it hard, because a man in dark green, was very mean.\"", - "\"At Hurnscald inn, there was a person of fairest skin, declining wedding bands from quite a many hands.\"", - "\"As the Sun sets down in the forest's brown, she whom the fragrance holds counts her gold.\""; - set @id, rand(3); - mes @songs$[@id]; - close; -} diff --git a/npc/new_3-1-tulimshar/bleacher.txt b/npc/new_3-1-tulimshar/bleacher.txt deleted file mode 100644 index 6a15e273..00000000 --- a/npc/new_3-1-tulimshar/bleacher.txt +++ /dev/null @@ -1,126 +0,0 @@ -// - -new_3-1.gat,27,53,0 script Candide 156,{ - mes "[Candide]"; - mes "\"I've figured out how that volcanic ash bleaches cloth."; - mes "I could do it for you, but I'll need three piles of ash and 5,000 GP for supplies per item.\""; - next; - - if (countitem(701) < 3) goto L_no_ash; - - if (zeny < 5000) goto L_no_money; - - menu "I'd like to bleach something", -, - "No thanks", L_close; - -L_bleach_menu: - mes "[Candide]"; - mes "\"What would you like to bleach?\""; - next; - - menu "Cotton shirt", L_cottonshirt, - "V-Neck sweater", L_vneck, - "Turtleneck sweater", L_tneck, - "Cotton shorts", L_shorts, - "Cotton skirt", L_skirt, - "Tank top ", L_tanktop, - "Short tank top", L_tanktop_short, - "Silk robe", L_robe, - "Nevermind", -; - goto L_close; - -L_cottonshirt: set @normal, 1202; - set @dyeBase, 2050; - goto L_choose_color; - -L_vneck: set @normal, 624; - set @dyeBase, 2060; - goto L_choose_color; - -L_tneck: set @normal, 564; - set @dyeBase, 2070; - goto L_choose_color; - -L_shorts: set @normal, 586; - set @dyeBase, 2110; - goto L_choose_color; - -L_skirt: set @normal, 632; - set @dyeBase, 2100; - goto L_choose_color; - -L_tanktop: set @normal, 688; - set @dyeBase, 2090; - goto L_choose_color; - -L_tanktop_short: set @normal, 689; - set @dyeBase, 2120; - goto L_choose_color; - -L_robe: set @normal, 720; - set @dyeBase, 2080; - goto L_choose_color; - -L_choose_color: - mes "[Candide]"; - mes "\"And the color?\""; - next; - - menu "Red", -, - "Green", -, - "Dark Blue", -, - "Yellow", -, - "Light Blue", -, - "Pink", -, - "Black", -, - "Orange", -, - "Purple", -, - "Dark Green", -; - - set @del, @dyeBase + @menu - 1; - - if (countitem(@del) == 0) goto L_no_item; - - if (countitem(701) < 3) goto L_no_ash; - - if (zeny < 5000) goto L_no_money; - - delitem @del, 1; - getitem @normal, 1; - delitem 701, 3; - set zeny, zeny - 5000; - -L_again: - mes "[Candide]"; - mes "\"Would you like to bleach something else?\""; - next; - - menu "Yes", L_bleach_menu, - "No", L_close; - -L_no_item: - mes "[Candide]"; - mes "\"You don't have one of those.\""; - next; - - goto L_again; - -L_no_ash: - mes "[Candide]"; - mes "\"You don't have enough ash for me to bleach anything."; - mes "I need three piles.\""; - next; - - goto L_close; - -L_no_money: - mes "[Candide]"; - mes "\"You don't have enough gold for me to bleach anything."; - mes "I need 5,000 GP for supplies.\""; - next; - -L_close: - mes "[Candide]"; - mes "\"Come again.\""; - close; -} diff --git a/npc/new_3-1-tulimshar/children.txt b/npc/new_3-1-tulimshar/children.txt deleted file mode 100644 index 40efb233..00000000 --- a/npc/new_3-1-tulimshar/children.txt +++ /dev/null @@ -1,105 +0,0 @@ -new_3-1.gat,94,27,0 script Aisha 108,{ - set @TEMP,rand(9); - if(@TEMP == 0) goto L_1; - if(@TEMP == 1) goto L_1; - if(@TEMP == 2) goto L_2; - if(@TEMP == 3) goto L_3; - if(@TEMP == 4) goto L_4; - if(@TEMP == 5) goto L_5; - if(@TEMP == 6) goto L_6; - if(@TEMP == 7) goto L_7; - if(@TEMP == 8) goto L_8; - -L_1: - mes "[Aisha]"; - mes "\"Maggots are soo slimey!\""; - close; - -L_2: - mes "[Aisha]"; - mes "\"Want to play ball with me?\""; - close; - -L_3: - mes "[Aisha]"; - mes "\"There are so many monsters; I hate scorpions!\""; - close; - -L_4: - mes "[Aisha]"; - mes "\"When I grow up, I want to be strong enough to kill a scorpion!\""; - close; - -L_5: - mes "[Aisha]"; - mes "\"Mommy told me that you can drop the things that monsters sell.\""; - close; - -L_6: - mes "[Aisha]"; - mes "\"Have you tried to eat a roasted maggot? They are sooo yummy! And you feel much healthier afterwards, too!\""; - close; - -L_7: - mes "[Aisha]"; - mes "\"I want to be a Doctor when i grow up!\""; - close; - -L_8: - mes "[Aisha]"; - mes "\"That volcano was sooo scary! The earth was shaking and everything was breaking down... but now they have rebuilt everything.\""; - close; -} - -new_3-1.gat,39,67,0 script Nina 103,{ - set @TEMP,rand(8); - if(@TEMP == 0) goto L_1; - if(@TEMP == 1) goto L_1; - if(@TEMP == 2) goto L_2; - if(@TEMP == 3) goto L_3; - if(@TEMP == 4) goto L_4; - if(@TEMP == 5) goto L_5; - if(@TEMP == 6) goto L_6; - if(@TEMP == 7) goto L_7; - if(@TEMP == 8) goto L_8; - -L_1: - mes "[Nina]"; - mes "\"If I learned anything from school, Grenxen founded Tulimshar.\""; - close; - -L_2: - mes "[Nina]"; - mes "\"When I was picking rocks from the field, I saw a red scorpion.\""; - close; - -L_3: - mes "[Nina]"; - mes "\"Its polite to state your name before talking to anyone.\""; - close; - -L_4: - mes "[Nina]"; - mes "\"I have a Scorpion Doll!\""; - close; - -L_5: - mes "[Nina]"; - mes "\"I always take some spare Cactus Juices with me on the field. They are heavy, though.\""; - close; - -L_6: - mes "[Nina]"; - mes "\"When you are feeling bad, eating something can usually help you heal faster.\""; - close; - -L_7: - mes "[Nina]"; - mes "\"Grenxen is the Demon that founded Tulimshar.\""; - close; - -L_8: - mes "[Nina]"; - mes "That volcano eruption was terrifying; much of Tulimshar was destroyed. Fortunately the mayor had everything rebuilt quickly."; - close; -} diff --git a/npc/new_3-1-tulimshar/constable.txt b/npc/new_3-1-tulimshar/constable.txt deleted file mode 100644 index 673ff0a0..00000000 --- a/npc/new_3-1-tulimshar/constable.txt +++ /dev/null @@ -1,7 +0,0 @@ -// - -new_3-1.gat,37,35,0 script Constable Perry Graf 150,{ -// set @npcName$, "Constable Perry Graf"; - set @canSkip, 1; - callfunc "GameRules"; -} diff --git a/npc/new_3-1-tulimshar/elanore.txt b/npc/new_3-1-tulimshar/elanore.txt deleted file mode 100644 index cc474ca0..00000000 --- a/npc/new_3-1-tulimshar/elanore.txt +++ /dev/null @@ -1,90 +0,0 @@ -//Heal NPC costs 100 money - -new_3-1.gat,58,68,0 script Elanore 108,{ - - if (baselevel > 10) goto L_NoHeal; - - set @TEMP,rand(4); - - if(@TEMP == 0) goto Heal1; - if(@TEMP == 1) goto Heal2; - if(@TEMP == 2) goto Heal3; - if(@TEMP == 3) goto Heal4; - -Heal1: - - mes "[Elanore the Healer]"; - mes "\"You don't look too well; let me treat your wounds.\""; - next; - goto Heal_L; - -Heal2: - - mes "[Elanore the Healer]"; - mes "\"I will make quick work of your wounds.\""; - next; - goto Heal_L; - -Heal3: - - mes "[Elanore the Healer]"; - mes "\"Need a healing?\""; - next; - goto Heal_L; - -Heal4: - - mes "[Elanore the Healer]"; - mes "\"Sometimes you just need to run from battle.\""; - next; - goto Heal_L; - -Heal_L: - - set @TEMP,rand(3); - - if(@TEMP == 0) goto Heal_1; - if(@TEMP == 1) goto Heal_2; - if(@TEMP == 2) goto Heal_3; - if(@TEMP == 3) goto Heal_4; - -Heal_1: - - mes "[Elanore the Healer]"; - mes "\"Here you go!\""; - heal 10000,10000; - close; - -Heal_2: - - mes "[Elanore the Healer]"; - mes "\"Painless, wasn't it?"; - mes "Here you go!\""; - heal 10000,10000; - close; - -Heal_3: - - mes "[Elanore the Healer]"; - mes "\"You should be more careful.\""; - heal 10000,10000; - close; - -Heal_4: - - mes "[Elanore the Healer]"; - mes "\"Much better, right?!\""; - heal 10000,10000; - close; - -L_NoHeal: - - mes "[Elanore the Healer]"; - mes "\"I'm sorry but unless you are young and in need, I can't help you, and your level is already higher than ten."; - mes "With so many people still injured from the earthquake, I really have no time to help."; - mes "You can get some rest in the inn near here.\""; - - close; - -} - diff --git a/npc/new_3-1-tulimshar/guards.txt b/npc/new_3-1-tulimshar/guards.txt deleted file mode 100644 index 158a00a1..00000000 --- a/npc/new_3-1-tulimshar/guards.txt +++ /dev/null @@ -1,74 +0,0 @@ -new_3-1.gat,48,79,0 script Ekinu 104,{ - mes "[Ekinu the Town Guard]"; - mes "\"What a disaster... I can't believe that we managed to rebuild the town so fast, though.\""; - next; - menu "Can you give me any tips?", L_Tip, - "Do you have information?", L_Info, - "What disaster?", L_disaster; - -L_Tip: - set @TEMP,rand(7); - if(@TEMP == 0) goto L_0; - if(@TEMP == 1) goto L_1; - if(@TEMP == 2) goto L_2; - if(@TEMP == 3) goto L_3; - if(@TEMP == 4) goto L_4; - if(@TEMP == 5) goto L_5; - if(@TEMP == 6) goto L_6; -L_1: - mes "[Ekinu the Town Guard]"; - mes "\"Try to carry spare food when on fields or in dungeons, they will come in handy. I always take beer, but don't tell the Sergeant...\""; - close; -L_2: - mes "[Ekinu the Town Guard]"; - mes "\"Always carry a map of where you are, ask the Guides in most towns to get one.\""; - close; -L_3: - mes "[Ekinu the Town Guard]"; - mes "\"When in a dungeon, monsters are more aggressive than if they were outside.\""; - close; -L_4: - mes "[Ekinu the Town Guard]"; - mes "\"When gambling for money in casinos, make sure you have enough emergency money.\""; - close; -L_5: - mes "[Ekinu the Town Guard]"; - mes "\"Never underestimate the enemy.\""; - close; -L_6: - mes "[Ekinu the Town Guard]"; - mes "\"When fighting more than one enemy, try to focus on one at a time.\""; - close; -L_0: - mes "[Ekinu the Town Guard]"; - mes "\"Let me think of something... Oh! Do NOT attack Red scorpions unless you can kill it for sure!\""; - close; - -L_Info: - mes "[Ekinu the Town Guard]"; - mes "\"Everyone wants information... you won't get it, at least not here. I'm not even sure what you mean, to be honest.\""; - close; - -L_disaster: - mes "[Ekinu the Town Guard]"; - mes "\"What do you mean, `what disaster'? Weren't you there? That huge huge volcano ex...rusion... whatever they call it, and the earthquake!\""; - next; - - mes "[Ekinu the Town Guard]"; - mes "\"Half the town was reduced to rubble! Somehow, no-one was seriously injured though, so I guess we were lucky...\""; - next; - - mes "[Ekinu the Town Guard]"; - mes "\"Well, the mayor rebuilt everything quickly, but I have no idea where he got the GP from...\""; - close; -} - -new_3-1.gat,40,79,0 script Ryan 104,{ - mes "[Ryan the Town Guard]"; - mes "ZzzZzzZ..."; - next; - mes "[Ryan the Town Guard]"; - mes "\"Hmmmmmmh...?"; - mes "Oh, I wasn't sleeping, I was just resting my eyes!\""; -close; -} diff --git a/npc/new_3-1-tulimshar/guide.txt b/npc/new_3-1-tulimshar/guide.txt deleted file mode 100644 index b1458919..00000000 --- a/npc/new_3-1-tulimshar/guide.txt +++ /dev/null @@ -1,162 +0,0 @@ -new_3-1.gat,33,27,0 script Ian 102,{ - if (TUT_var & 1 == 1 && TUT_var & 2 == 0 && BaseLevel >= 10) callsub S_Grad; - mes "[Ian the Guide]"; - mes "\"Would you like to know about something?\""; - next; - -L_Menu_A: - menu "Fighting", L_Fight, - "Items", L_Items, - "Monsters", L_Monster, - "Stylist", L_Style, - "Quests", L_Quests, - "NPCs", L_NPC, - "Commands", L_Comm, - "Attributes", L_Stats, - "Magic", L_Magic, - "Quick Keys", L_Key, - "Laws", L_Laws, - "I know everything!", L_Know; - close; - -L_Fight: - mes "[Ian the Guide]"; - mes "\"People live in this world by living off of monsters."; - mes "You can fight monsters and even players by hitting the [CTRL] key, or left mouse click.\""; - next; - mes "[Ian the Guide]"; - mes "\"If you get tired of pressing the key too much, you can also type [SHIFT]+[CTRL]."; - mes "This will make your character attack continuously for the time you are inactive.\""; - next; - goto L_Menu_A; - -L_Items: - mes "[Ian the Guide]"; - mes "\"There are three types of items."; - mes "They can be Consumables, Equipment, or Miscellaneous\""; - next; - mes "[Ian the Guide]"; - mes "\"Consumable items such as Potions, can be used only once."; - mes "After use, they will disappear from your inventory.\""; - next; - mes "[Ian the Guide]"; - mes "\"Equipment items like Armors, Weapons, Accessories"; - mes "can be equipped for fashionable purposes or to raise your status.\""; - next; - mes "[Ian the Guide]"; - mes "\"Miscellaneous items such as maggot slime, are used"; - mes "in creating other items, or just to trade and sell.\""; - next; - goto L_Menu_A; - -L_Monster: - mes "[Ian the Guide]"; - mes "\"In every world, there are beasts. Monsters can be found almost anywhere!~"; - mes "To fight them, please read [Fighting] if you do not know how.\""; - next; - mes "\"There a several types of monsters, Aggressive, Neutral, and Assistants.\""; - next; - mes "[Ian the Guide]"; - mes "\"Aggressive monsters know that they are always in danger"; - mes "so therefore they always keep their guard up,"; - mes "making them attack anybody in sight.\""; - next; - mes "[Ian the Guide]"; - mes "\"Neutral monsters tend to just lounge around until attacked."; - mes "They will leave everything alone unless they are threatened.\""; - next; - mes "[Ian the Guide]"; - mes "\"Assistants are monsters who help each other."; - mes "You should always check how many are around you before attacking a single one!\""; - next; - goto L_Menu_A; - -L_Style: - mes "[Ian the Guide]"; - mes "\"The stylist NPCs will cut and perm your hair!"; - mes "They are known for their hair growth formula\""; - next; - goto L_Menu_A; - -L_Quests: - mes "[Ian the Guide]"; - mes "\"There are people in the world in need of help!"; - mes "Most of these people aren't afraid to give rewards to those who help them."; - mes "So be nice and help people along the way!\""; - next; - goto L_Menu_A; - -L_NPC: - mes "[Ian the Guide]"; - mes "\"NPCs [Non Playable Characters] are people who are always in the game,"; - mes "tending to many varieties of services from just chatting to helping others.\""; - next; - goto L_Menu_A; - -L_Comm: - mes "[Ian the Guide]"; - mes "\"/clear clears the text box.\""; - mes "\"/help displays the client commands (ones starting with a /) in the chat box.\""; - mes "\"/whisper [name] allows you to message someone privately.\""; - mes "\"/who displays the current number of online users.\""; - mes "\"/where displays the current map's name.\""; - next; - goto L_Menu_A; - -L_Stats: - mes "[Ian the Guide]"; - mes "\"People vary greatly by how much strength, agility, dexterity, intelligence, vitality, and luck they have.\""; - next; - mes "[Ian the Guide]"; - mes "\"Strength helps you carry items, and it also allows you to hit harder-- but it is not too helpful if you focus on missile weapons."; - mes "More agility allows you to attack faster, and to dodge attacks more easily."; - mes "Your dexterity determines how likely you are to hit a monster, and how effective you are with missile weapons.\""; - next; - mes "[Ian the Guide]"; - mes "\"Vitality determines how resistant to injuries you are, and how much damage you can take before you die."; - mes "Intelligence is useful for alchemy and magic, but there are few opportunities for either at the moment."; - mes "Luck determines many small things, but, to be honest, I don't think that it is very useful.\""; - next; - mes "[Ian the Guide]"; - mes "\"I recommend that you practice your dexterity, since some of the more dangerous monsters are very hard to hit otherwise."; - mes "Don't bother trying to work on your luck, and your intelligence is probably not something anyone cares about either.\""; - next; - goto L_Menu_A; - -L_Magic: - mes "[Ian the Guide]"; - mes "\"In decades past, there was a Mana Seed south of Tulimshar, from which people could draw magical energies. Unfortunately, the seed is gone."; - mes "Until we find a new Mana Seed, there will be no magic, except for those who already possess magical powers.\""; - next; - goto L_Menu_A; - -L_Key: - mes "[Ian the Guide]"; - mes "\"There are many key combinations, press F1 for a short list of them!\""; - next; - goto L_Menu_A; - -L_Laws: - mes "[Ian the Guide]"; - mes "\"Lady Platyna, the Overseer, has decreed the following rules:"; - mes "1. Do not abuse others (insult, swear etc.)"; - mes "2. No bots."; - mes "3. No spamming/flooding."; - mes "4. No begging."; - mes "5. Speak English."; - next; - goto L_Menu_A; - -L_Know: - close; - -S_Grad: - mes "[Ian the Guide]"; - mes "\"Hey, you've been doing good, let me give you this.\""; - next; - - getitem 675, 1; - set TUT_var, TUT_var | 2; - - return; -} diff --git a/npc/new_3-1-tulimshar/man.txt b/npc/new_3-1-tulimshar/man.txt deleted file mode 100644 index f2638a51..00000000 --- a/npc/new_3-1-tulimshar/man.txt +++ /dev/null @@ -1,22 +0,0 @@ -new_3-1.gat,108,55,0 script Luca 102,{ - mes "[Luca the Hunter]"; - mes "\"Ouch! It hurts, this wound I got from battle.\""; - next; - menu "Tell me about it",L_Exp,"Nevermind",L_Nev; - -L_Exp: - mes "[Luca the Hunter]"; - mes "\"I was fighting scorpions for experience and I bumped into a RED one. I had NEVER seen it before!\""; - next; - mes "[Luca the Hunter]"; - mes "\"Luckily i had a camera with me! Here's a picture of it... Let me find it, I put it in my pocket somewhere...\""; - next; - mes "[Luca the Hunter]"; - mes "\"Oh man! My pockets have been ripped clean off!\""; - close; - -L_Nev: - mes "[Luca the Hunter]"; - mes "\"Hmpf!\""; - close; -} diff --git a/npc/new_3-1-tulimshar/merchant.txt b/npc/new_3-1-tulimshar/merchant.txt deleted file mode 100644 index 186365d6..00000000 --- a/npc/new_3-1-tulimshar/merchant.txt +++ /dev/null @@ -1 +0,0 @@ -new_3-1.gat,39,52,0 shop Neko 101,501:50,502:60,1201:100,522:300,521:1000,656:250,1202:1000,523:8000,603:-1 diff --git a/npc/new_3-1-tulimshar/monster_guide.txt b/npc/new_3-1-tulimshar/monster_guide.txt deleted file mode 100644 index 3b2d8b6f..00000000 --- a/npc/new_3-1-tulimshar/monster_guide.txt +++ /dev/null @@ -1,35 +0,0 @@ -new_3-1.gat,48,52,0 script Aidan 102,{ - if(MPQUEST == 0) goto Register; - mes "[Aidan the Monster Guide]"; - mes "You currently have " +Mobpt+ " Monster Points. These points are acquired while killing monsters"; - close; -Register: - mes "[Aidan the Monster Guide]"; - mes "Oh my, you dont seem to be registered as a Quest Participant, would you like to register?"; - next; -Choice: - menu "Register",L_R,"Not at the moment",L_N,"Information",L_I; -L_R: - mes "[Aidan the Monster Guide]"; - mes "Give me a second to look over your paperwork."; - next; - mes "[Monster Guide]"; - mes "Well, looks like you qualify!"; - mes "Welcome to the questing world!"; - set MPQUEST,1; - close; -L_N: - mes "[Aidan the Monster Guide]"; - mes "Very well, you dont know what your missing."; - close; -L_I: - mes "[Aidan the Monster Guide]"; - mes "Here in The Mana World, there are certain rewards for your vanquishing of foes."; - mes "For example, there are Monster Points, every monster you kill has a certain amount of points that get added to your account."; - mes "The more points you have, the more expensive things you can buy using them."; - next; - mes "[Monster Guide]"; - mes "So whaddya say, sign up won't you?"; - next; - goto Choice; -} diff --git a/npc/new_3-1-tulimshar/monsters.txt b/npc/new_3-1-tulimshar/monsters.txt deleted file mode 100644 index 1a17628f..00000000 --- a/npc/new_3-1-tulimshar/monsters.txt +++ /dev/null @@ -1,26 +0,0 @@ -// Map: new_3-1 -// This is Tulimshar the city -- southern part with market and casino/inn. -// - -new_3-1.gat,0,0,0,0 monster Maggot 1002,35,2000,0,Mob3::OnMaggot -new_3-1.gat,0,0,0,0 monster Scorpion 1003,25,2500,0,Mob3::OnScorpion -new_3-1.gat,0,0,0,0 monster Firegoblin 1011,20,2500,0,Mob3::OnFireGoblin - -new_3-1.gat,0,0,0 script Mob3 -1,{ -OnMaggot: - set @mobID, 1002; - callfunc "MobPoints"; - break; - -OnScorpion: - set @mobID, 1003; - callfunc "MobPoints"; - break; - -OnFireGoblin: - set @mobID, 1011; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_3-1-tulimshar/passages.txt b/npc/new_3-1-tulimshar/passages.txt deleted file mode 100644 index 2ce31455..00000000 --- a/npc/new_3-1-tulimshar/passages.txt +++ /dev/null @@ -1,5 +0,0 @@ -// - -new_3-1.gat,42,88 warp tofield 5,2,new_1-1.gat,58,17 -new_3-1.gat,32,71 warp toinn 0,0,new_8-1.gat,25,34 -new_3-1.gat,75,41 warp tohouse 0,0,new_8-1.gat,71,72 diff --git a/npc/new_3-1-tulimshar/rewards_master.txt b/npc/new_3-1-tulimshar/rewards_master.txt deleted file mode 100644 index 9c0ddb43..00000000 --- a/npc/new_3-1-tulimshar/rewards_master.txt +++ /dev/null @@ -1,87 +0,0 @@ -new_3-1.gat,50,53,0 script Ishi 106,{ - if (MPQUEST == 0) goto L_Register; - if (tvis == 0) set tvis, 1; - if (Mobpt < tvis) goto L_NotEnough; - - setarray @Items, 502, 502, 503, 504, 505, 506, 507, 508, 509, 510, 586, 512, 513, 514, 515, 516, 517, 518, 519, 520; - - mes "[Ishi the Rewards Master]"; - mes "\"Welcome! I see you have " + Mobpt + " Monster Points. Would you like to exchange some of those for items?\""; - next; - - set @i, 0; - setarray @Menu$, "", "", "", "", "", "", "", "", "", "", ""; - callsub SUB_prep_menu; - - menu - @Menu$[0], -, - @Menu$[1], -, - @Menu$[2], -, - @Menu$[3], -, - @Menu$[4], -, - @Menu$[5], -, - @Menu$[6], -, - @Menu$[7], -, - @Menu$[8], -, - @Menu$[9], -, - @Menu$[10], -; - - if (@menu > @i) close; - - set @req, @menu; - set @rec, 0; - -L_Item_Loop: - if (@rec == @req || Mobpt < tvis) goto L_Item_Done; - - callsub SUB_give_item; - set @rec, @rec + 1; - goto L_Item_Loop; - -L_Item_Done: - if (@rec < @req) mes "It looks like your Monster Points were over estimated."; - close; - -L_Register: - mes "[Ishi the Rewards Master]"; - mes "\"Hey, it seems like you didn't register as a quest participant yet! You can sign up with Aidan.\""; - close; - -L_NotEnough: - mes "[Ishi the Rewards Master]"; - mes "\"You don't have enough Monster Points for a reward. You'll need to kill some more monsters first.\""; - close; - -////////////////////////////////////////////////// -// Subroutines -////////////////////////////////////////////////// - -SUB_prep_menu: - set @pts, Mobpt; - set @dif, tvis; - -L_Menu_Loop: - if (@pts < @dif || @i == 10) goto L_Menu_Done; - - set @Menu$[@i], @i + 1; - - set @i, @i + 1; - set @pts, @pts - @dif; - set @dif, @dif + 1; - - goto L_Menu_Loop; -L_Menu_Done: - set @Menu$[@i], "No thanks"; - return; - -SUB_give_item: - set Mobpt, Mobpt - tvis; - set tvis, tvis + 1; - set @ID, @Items[rand(getarraysize(@Items))]; - - getitem @ID, 1; - - mes "You received one " + getitemname(@ID) + "!"; - - return; -} diff --git a/npc/new_3-1-tulimshar/rules.txt b/npc/new_3-1-tulimshar/rules.txt deleted file mode 100644 index 70917804..00000000 --- a/npc/new_3-1-tulimshar/rules.txt +++ /dev/null @@ -1,7 +0,0 @@ -// - -new_3-1.gat,29,28,0 script #Rules 127,1,1,{ - if (TUT_var & 1 == 1) close; - callfunc "GameRules"; - mes "Ian, the trainer, can help you get to know the game."; -} diff --git a/npc/new_3-1-tulimshar/sandra.txt b/npc/new_3-1-tulimshar/sandra.txt deleted file mode 100644 index 4922bd60..00000000 --- a/npc/new_3-1-tulimshar/sandra.txt +++ /dev/null @@ -1,81 +0,0 @@ -new_3-1.gat,110,71,0 script Sandra 114,{ - if(Scorp == 2) goto done; - if(Scorp == 1) goto reas; - set @TEMP,rand(3); - if(@TEMP == 1) goto L_1; - if(@TEMP == 2) goto L_2; - if(@TEMP == 3) goto L_3; - if(@TEMP == 0) goto L_4; -L_1: - mes "[Sandra]"; - mes "\"In the outskirts of Tulimshar, there wanders a red scorpion. I need a favor, please help me.\""; - next; - goto red; -L_2: - mes "[Sandra]"; - mes "\"When you venture in the outskirts of Tulimshar, you can spot a red scorpion. Will you help me kill one?\""; - next; - goto red; -L_3: - mes "[Sandra]"; - mes "\"The red scorpion stinger carries many properties used in potions.\""; - next; - goto red; -L_4: - mes "[Sandra]"; - mes "\"You look sturdy enough, will you help me get something?\""; - next; - goto red; -red: - menu "Yes",L_kl,"No",L_N; -L_kl: - if(@TEMP == 1) goto K_1; - if(@TEMP == 2) goto K_2; - if(@TEMP == 3) goto K_3; - if(@TEMP == 0) goto K_1; -K_1: - mes "[Sandra]"; - mes "\"I need you to slaughter the red scorpion found outside of Tulimshar and bring me 5 [Red Stingers].\""; - next; - goto set1; -K_2: - mes "[Sandra]"; - mes "\"I heard a while ago that the stinger of a red scorpion can be used for medical purposes. I need you to help me get 5 [Red Stingers].\""; - next; - goto set1; -K_3: - mes "[Sandra]"; - mes "\"Bring me 5 [Red Stingers] and i will reward you greatly.\""; - next; - goto set1; -set1: - set Scorp,1; - mes "[Sandra]"; - mes "\"Please bring me them!\""; - close; -reas: - if(countitem(517) >= 5) goto have; - mes "[Sandra]"; - mes "\"Please hurry and bring me 5 [Red Stingers].\""; - close; -have: - mes "[Sandra]"; - mes "\"Excellent!"; - mes "You brought me 5 [Red Stingers]!\""; - delitem 517,5; - next; - mes "[Sandra]"; - mes "\"Here you go, your reward!\""; - mes "+Got Bow"; - mes "+Got Arrows 100"; - getitem 1200,1; - getitem 1199,100; - set Scorp,2; - close; -done: - mes "[Sandra]"; - mes "\"Thank you for all your help!\""; - close; -L_N: - close; -} diff --git a/npc/new_3-1-tulimshar/soul-menhir.txt b/npc/new_3-1-tulimshar/soul-menhir.txt deleted file mode 100644 index 147ed63d..00000000 --- a/npc/new_3-1-tulimshar/soul-menhir.txt +++ /dev/null @@ -1,6 +0,0 @@ -new_3-1.gat,38,69,0 script Soul Menhir 144, { - set @map$, "new_3-1.gat"; - set @x, 38; - set @y, 70; - callfunc "SoulMenhir"; -} diff --git a/npc/new_3-1-tulimshar/vincent.txt b/npc/new_3-1-tulimshar/vincent.txt deleted file mode 100644 index 4e2a0926..00000000 --- a/npc/new_3-1-tulimshar/vincent.txt +++ /dev/null @@ -1,102 +0,0 @@ -new_3-1.gat,135,42,0 script Vincent 113,{ - if(Bugleg == 1) goto L_Reas; - if(Bugleg == 2) goto L_Done; - set @TEMP, rand(4); - if(@TEMP == 0) goto L_1; - if(@TEMP == 1) goto L_2; - if(@TEMP == 2) goto L_3; - if(@TEMP == 3) goto L_4; - -L_1: - mes "[Vincent]"; - mes "\"I just need 30 more [Bug Legs] to finish my action figure!\""; - next; - goto L_Ask; - -L_2: - mes "[Vincent]"; - mes "\"This maggot action figure is awesome! I just need to attach [30 Part A{Bug Leg}]\""; - next; - goto L_Ask; - -L_3: - mes "[Vincent]"; - mes "\"This is a great action figure! A must have! All I need is a few parts...\""; - goto L_Ask; - -L_4: - mes "[Vincent]"; - mes "\"Can you get me 30 [Bug Legs]? I need them to replace the action figure parts.\""; - next; - goto L_Ask; - -L_Ask: - mes "[Vincent]"; - mes "\"Will you help me find 30 [Bug Legs]?\""; - next; - menu - "Yes", L_Sure, - "No", -; - close; - -L_Sure: - set Bugleg, 1; - set @TEMP,rand(4); - if(@TEMP == 0) goto J_1; - if(@TEMP == 1) goto J_2; - if(@TEMP == 2) goto J_3; - if(@TEMP == 3) goto J_4; - -J_1: - mes "[Vincent]"; - mes "\"Thank you!\""; - next; - goto L_Wait; - -J_2: - mes "[Vincent]"; - mes "\"I don't know how to thank you enough!\""; - next; - goto L_Wait; - -J_3: - mes "[Vincent]"; - mes "\"I will thank you when I get them!\""; - next; - goto L_Wait; - -J_4: - mes "[Vincent]"; - mes "\"I'm sure I will give a small reward. :D\""; - next; - goto L_Wait; - -L_Wait: - mes "[Vincent]"; - mes "\"Now please go get me 30 [Bug Legs]\""; - close; - -L_Reas: - if(countitem(518) >= 30) goto L_Have; - mes "[Vincent]"; - mes "\"Please help me collect 30 [Bug Legs]!\""; - close; - -L_Have: - delitem 518, 30; - mes "[Vincent]"; - mes "\"Excellent! Finally I can complete the model!!\""; - next; - mes "[Vincent]"; - mes "\"Here you go, a little of my appreciation!\""; - next; - set zeny, zeny + 1000; - set Bugleg, 2; - close; - -L_Done: - mes "[Vincent]"; - mes "\"Thanks for your help!\""; - close; -} - diff --git a/npc/new_3-1-tulimshar/workers.txt b/npc/new_3-1-tulimshar/workers.txt deleted file mode 100644 index 31c6afa3..00000000 --- a/npc/new_3-1-tulimshar/workers.txt +++ /dev/null @@ -1,13 +0,0 @@ -// - -new_3-1.gat,45,21,0 script Construction Worker 155,{ - mes "[Construction worker]"; - mes "\"I can't let you beyond this gate. The area is closed for renovation; most of it was destroyed during the earthquake.\""; - close; -} - -new_3-1.gat,124,21,0 script Construction Worker 155,{ - mes "[Construction worker]"; - mes "\"Move along.\""; - close; -} diff --git a/npc/new_30-1-west-woodland-cave/monsters.txt b/npc/new_30-1-west-woodland-cave/monsters.txt deleted file mode 100644 index b0620568..00000000 --- a/npc/new_30-1-west-woodland-cave/monsters.txt +++ /dev/null @@ -1,14 +0,0 @@ -// Map: new_30-1 -// This is the caves beneath West Woodland. -// - -new_30-1.gat,0,0,0,0 monster Bat 1017,50,0,0,Mob30::OnBat - -new_30-1.gat,0,0,0 script Mob30 -1,{ -OnBat: - set @mobID, 1017; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_30-1-west-woodland-cave/passages.txt b/npc/new_30-1-west-woodland-cave/passages.txt deleted file mode 100644 index 9ef108a2..00000000 --- a/npc/new_30-1-west-woodland-cave/passages.txt +++ /dev/null @@ -1,4 +0,0 @@ -new_30-1.gat,91,108 warp lowtohigh 0,0,new_30-1.gat,103,52 -new_30-1.gat,101,54 warp hightolow 5,0,new_30-1.gat,91,109 -new_30-1.gat,56,174 warp tomap29low 2,0,new_29-1.gat,93,59 -new_30-1.gat,35,32 warp tomap29high 0,0,new_29-1.gat,76,39 \ No newline at end of file diff --git a/npc/new_31-1-southwest-woodland/alice.txt b/npc/new_31-1-southwest-woodland/alice.txt deleted file mode 100644 index e35f4802..00000000 --- a/npc/new_31-1-southwest-woodland/alice.txt +++ /dev/null @@ -1,46 +0,0 @@ -//################################################################################# -//# # -//# A herb collector giving the players some hints about finding and brewing # -//# herbs # -//# # -//################################################################################# - - -new_31-1.gat,52,53,0 script Alice 106, { - mes "[Alice]"; - mes "\"Greeting, fellow wanderer."; - mes "Are you collecting herbs, too?\""; - next; - menu - "Yes, sure.", L_findmany, - "Herbs?", L_herbs, - "Nope, just enjoying the scenery.", close; - -L_findmany: - mes "[Alice]"; - mes "\"And? Did you already find a lot?\""; - next; - menu - "Yes, I already got plenty of them.", L_plenty, - "No, I am out of luck.", -; - mes "[Alice]"; - mes "\"Oooh, how sad. Let me give you a little tip:"; - mes "Herbs are often growing in places where they can't be spotted that easily. Don't forget to look behind the trees, too.\""; - close; - -L_plenty: - mes "[Alice]"; - mes "\"That's great."; - mes "When you are not that good at brewing you should consider letting someone else brew them for you."; - mes "Good brewers get much better healing potions from them."; - mes "The most important characteristic of a good brewer is intelligence.\""; - close; - - -L_herbs: - mes "[Alice]"; - mes "\"Yes, some powerful magic herbs started to grow around here and a mile to the southeast."; - mes "Caul in Hurnscald found a way to brew magical healing potions from them, and I have heard a rumor that they may also be good for making colors."; - mes "Now everyone is running around in the woods to harvest the herbs.\""; - close; -} diff --git a/npc/new_31-1-southwest-woodland/monsters.txt b/npc/new_31-1-southwest-woodland/monsters.txt deleted file mode 100644 index 0ce818c1..00000000 --- a/npc/new_31-1-southwest-woodland/monsters.txt +++ /dev/null @@ -1,46 +0,0 @@ -// Map: new_31-1 -// This is South-West Woodland. -// - -new_31-1.gat,0,0,0,0 monster LogHead 1025,40,0,0,Mob31::OnLogHead -new_31-1.gat,0,0,0,0 monster SpikyMushroom 1019,20,0,0,Mob31::OnSpikyMushroom -new_31-1.gat,0,0,0,0 monster Flower 1014,20,0,0,Mob31::OnFlower - -new_31-1.gat,0,0,0,0 monster Gamboge 1031,3,0,0,Mob31::OnGamboge -new_31-1.gat,0,0,0,0 monster Alizarin 1032,3,0,0,Mob31::OnAlizarin - -new_31-1.gat,0,0,0,0 monster SilkWorm 1035,7,15000,7000,Mob31::onSilkWorm - -new_31-1.gat,0,0,0 script Mob31 -1,{ -OnLogHead: - set @mobID, 1025; - callfunc "MobPoints"; - break; - -OnSpikyMushroom: - set @mobID, 1019; - callfunc "MobPoints"; - break; - -OnFlower: - set @mobID, 1014; - callfunc "MobPoints"; - break; - -OnGamboge: - set @mobID, 1031; - callfunc "MobPoints"; - break; - -OnAlizarin: - set @mobID, 1032; - callfunc "MobPoints"; - break; - -OnSilkWorm: - set @mobID, 1035; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_31-1-southwest-woodland/passages.txt b/npc/new_31-1-southwest-woodland/passages.txt deleted file mode 100644 index 4adfcdcd..00000000 --- a/npc/new_31-1-southwest-woodland/passages.txt +++ /dev/null @@ -1 +0,0 @@ -new_31-1.gat,93,54 warp map31to14 0,1,new_14-1.gat,15,54 \ No newline at end of file diff --git a/npc/new_32-1-south-woodland-2/monsters.txt b/npc/new_32-1-south-woodland-2/monsters.txt deleted file mode 100644 index 8075550c..00000000 --- a/npc/new_32-1-south-woodland-2/monsters.txt +++ /dev/null @@ -1,40 +0,0 @@ -// Map: new_32-1 -// This is Southernmost Woodlands. -// - -new_32-1.gat,0,0,0,0 monster Mouboo 1028,5,0,0,Mob32::OnMouboo -new_32-1.gat,0,0,0,0 monster Scorpion 1003,15,0,0,Mob32::OnScorpion - -new_32-1.gat,0,0,0,0 monster Mauve 1029,3,0,0,Mob32::OnMauve -new_32-1.gat,0,0,0,0 monster Cobalt 1030,3,0,0,Mob32::OnCobalt - -new_32-1.gat,0,0,0,0 monster SilkWorm 1035,7,15000,7000,Mob32::onSilkWorm - -new_32-1.gat,0,0,0 script Mob32 -1,{ -OnMouboo: - set @mobID, 1028; - callfunc "MobPoints"; - break; - -OnScorpion: - set @mobID, 1003; - callfunc "MobPoints"; - break; - -OnMauve: - set @mobID, 1029; - callfunc "MobPoints"; - break; - -OnCobalt: - set @mobID, 1030; - callfunc "MobPoints"; - break; - -OnSilkWorm: - set @mobID, 1035; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_32-1-south-woodland-2/passages.txt b/npc/new_32-1-south-woodland-2/passages.txt deleted file mode 100644 index 06fba664..00000000 --- a/npc/new_32-1-south-woodland-2/passages.txt +++ /dev/null @@ -1 +0,0 @@ -new_32-1.gat,55,20 warp map32to14 3,0,new_14-1.gat,56,103 diff --git a/npc/new_33-1-hill-northwest/monsters.txt b/npc/new_33-1-hill-northwest/monsters.txt deleted file mode 100644 index 8ec54d78..00000000 --- a/npc/new_33-1-hill-northwest/monsters.txt +++ /dev/null @@ -1,76 +0,0 @@ -// Map: new_33-1 -// This is North Woodlands Mountains. -// - -new_33-1.gat,0,0,0,0 monster Bat 1017,5,0,0,Mob33::OnBat -new_33-1.gat,0,0,0,0 monster FireGoblin 1011,5,0,0,Mob33::OnFireGoblin -new_33-1.gat,0,0,0,0 monster Mouboo 1028,5,0,0,Mob33::OnMouboo -new_33-1.gat,0,0,0,0 monster Flower 1014,5,0,0,Mob33::OnFlower -new_33-1.gat,0,0,0,0 monster SpikyMushroom 1019,5,0,0,Mob33::OnSpikyMushroom -new_33-1.gat,0,0,0,0 monster EvilMushshroom 1013,10,0,0,Mob33::OnEvilMushroom - -new_33-1.gat,0,0,0,0 monster Alizarin 1032,2,0,0,Mob33::OnAlizarin -new_33-1.gat,0,0,0,0 monster Gamboge 1031,2,0,0,Mob33::OnGamboge -new_33-1.gat,0,0,0,0 monster Cobalt 1030,2,0,0,Mob33::OnCobalt -new_33-1.gat,0,0,0,0 monster Mauve 1029,2,0,0,Mob33::OnMauve - -new_33-1.gat,0,0,0,0 monster SilkWorm 1035,10,0,0,Mob33::OnSilkWorm - -new_33-1.gat,0,0,0 script Mob33 -1,{ -OnBat: - set @mobID, 1017; - callfunc "MobPoints"; - break; - -OnFireGoblin: - set @mobID, 1011; - callfunc "MobPoints"; - break; - -OnMouboo: - set @mobID, 1028; - callfunc "MobPoints"; - break; - -OnFlower: - set @mobID, 1014; - callfunc "MobPoints"; - break; - -OnSpikyMushroom: - set @mobID, 1019; - callfunc "MobPoints"; - break; - -OnEvilMushroom: - set @mobID, 1013; - callfunc "MobPoints"; - break; - -OnAlizarin: - set @mobID, 1032; - callfunc "MobPoints"; - break; - -OnGamboge: - set @mobID, 1031; - callfunc "MobPoints"; - break; - -OnCobalt: - set @mobID, 1030; - callfunc "MobPoints"; - break; - -OnMauve: - set @mobID, 1029; - callfunc "MobPoints"; - break; - -OnSilkWorm: - set @mobID, 1035; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_33-1-hill-northwest/passages.txt b/npc/new_33-1-hill-northwest/passages.txt deleted file mode 100644 index f026428c..00000000 --- a/npc/new_33-1-hill-northwest/passages.txt +++ /dev/null @@ -1 +0,0 @@ -new_33-1.gat,46,105 warp map33to28 2,-1,new_28-1.gat,45,22 diff --git a/npc/new_34-1-north-beach/monsters.txt b/npc/new_34-1-north-beach/monsters.txt deleted file mode 100644 index 89fcbda7..00000000 --- a/npc/new_34-1-north-beach/monsters.txt +++ /dev/null @@ -1,26 +0,0 @@ -// Map: new_34-1 -// This is the Beach west of Tulimshar. -// - -new_34-1.gat,0,0,0,0 monster SeaSlime 1033,30,0,0,Mob34::OnSeaSlime -new_34-1.gat,0,0,0,0 monster GiantMaggot 1006,10,0,0,Mob34::OnGiantMaggot -new_34-1.gat,0,0,0,0 monster RedScorpion 1004,12,0,0,Mob34::OnRedScorpion - -new_34-1.gat,0,0,0 script Mob34 -1,{ -OnSeaSlime: - set @mobID, 1033; - callfunc "MobPoints"; - break; - -OnGiantMaggot: - set @mobID, 1006; - callfunc "MobPoints"; - break; - -OnRedScorpion: - set @mobID, 1004; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_34-1-north-beach/passages.txt b/npc/new_34-1-north-beach/passages.txt deleted file mode 100644 index 198c55b4..00000000 --- a/npc/new_34-1-north-beach/passages.txt +++ /dev/null @@ -1,2 +0,0 @@ -new_34-1.gat,83,113 warp todesert 3,1,new_1-1.gat,29,15 -new_34-1.gat,36,111 warp tobeach 3,1,new_15-1.gat,141,21 diff --git a/npc/new_35-1-woodland-village/monsters.txt b/npc/new_35-1-woodland-village/monsters.txt deleted file mode 100644 index 9b108f5f..00000000 --- a/npc/new_35-1-woodland-village/monsters.txt +++ /dev/null @@ -1,26 +0,0 @@ -// Map: new_35-1 -// This is the cave beneath Hurnscald. -// - -new_35-1.gat,0,0,0,0 monster YellowSlime 1007,20,0,0,Mob35::OnYellowSlime -new_35-1.gat,0,0,0,0 monster RedSlime 1008,35,0,0,Mob35::OnRedSlime -new_35-1.gat,0,0,0,0 monster BlackScorpion 1009,25,0,0,Mob35::OnBlackScorpion - -new_35-1.gat,0,0,0 script Mob35 -1,{ -OnYellowSlime: - set @mobID, 1007; - callfunc "MobPoints"; - break; - -OnRedSlime: - set @mobID, 1008; - callfunc "MobPoints"; - break; - -OnBlackScorpion: - set @mobID, 1009; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_35-1-woodland-village/passages.txt b/npc/new_35-1-woodland-village/passages.txt deleted file mode 100644 index c72af585..00000000 --- a/npc/new_35-1-woodland-village/passages.txt +++ /dev/null @@ -1,5 +0,0 @@ -// To village -new_35-1.gat,173,20 warp cv-1b 0,0,new_20-1.gat,147,88 - -// To cave snake cave -new_35-1.gat,20,57 warp cave 0,1,new_17-1.gat,129,88 diff --git a/npc/new_36-1-magic-house/apprentice.txt b/npc/new_36-1-magic-house/apprentice.txt deleted file mode 100644 index b27d271d..00000000 --- a/npc/new_36-1-magic-house/apprentice.txt +++ /dev/null @@ -1,58 +0,0 @@ -new_36-1.gat,25,37,0 script Fabius 115,{ - mes "\"Hey! Wanna have a drink or something? High quality, low cost. A poor fella like me needs a bit of extra cash, ye know.\""; - next; - menu - "Yes please!",yes, - "No thanks.",no, - "No way, I thought it was for free!",not_free; -yes: - mes "\"So what would ya like, then?\""; - next; - menu - "A beer",beer, - "A milk",milk; -no: - mes "\"Suit yourself.\""; - next; - goto at_end; -not_free: - mes "\"Oh, you stupid git! ... But hey, let me tell ya something...\""; - next; - mes "\"There's notes flying around in the room up there. Did ya try reading some?\""; - close; -beer: - mes "\"That'll be 175 GP.\""; - next; - menu "Here you are",beer_yes, - "No thanks",beer_no; -milk: - mes "\"That'll be 300 GP.\""; - next; - menu "Here you are",milk_yes, - "No thanks",milk_no; -beer_yes: - if (zeny < 175) goto low_money; - getitem 539, 1; - set zeny, zeny - 175; - goto at_end; -beer_no: - mes "\"No beer, no civilization!\""; - next; - goto at_end; -milk_yes: - if (zeny < 300) goto low_money; - getitem 527, 1; - set zeny, zeny - 300; - goto at_end; -milk_no: - mes "\"Oh alright. Milk is a deadly poison anyway...\""; - next; - goto at_end; -low_money: - mes "\"Aw, you don't have enough gold on you!\""; - next; -at_end: - mes "\"By the way, have you seen those flying notes and the mirror in the room next door? They're WAY COOL! Try reading some of the notes!\""; - close; -} - diff --git a/npc/new_36-1-magic-house/notes.txt b/npc/new_36-1-magic-house/notes.txt deleted file mode 100644 index dbcb1209..00000000 --- a/npc/new_36-1-magic-house/notes.txt +++ /dev/null @@ -1,102 +0,0 @@ -new_36-1.gat,23,32,0 script Motto 127,{ - mes "Mid pleasures and palaces though we may roam,"; - mes "Be it ever so humble, there's no place like home."; - close; -} - -new_36-1.gat,30,32,0 script Note 127,{ - mes "Please do not open."; - close; -} - -new_36-1.gat,38,20,0 script Saying 127,{ - mes "The early bird catcheth the worm."; - close; -} - -new_36-1.gat,27,21,0 script Mirror 127,{ - mes "You say: \"Mirror mirror on the wall, who has the nicest haircut of them all?\""; - next; - mes "\"Oh fair adventurer, your hair indeed looks nice. But wouldn't it look much better, after I have rolled my dice?\""; - next; - mes "Your looks suddenly change..."; - next; - set @style,rand(6); - set @color,rand(9); - setlook 1,@style+1; - setlook 6,@color; - close; -} - -// Warp to north-eastern woods -new_36-1.gat,25,23,0 script Spell 127,{ - mes "You read: \"I see trees of green, red roses too. I see them bloom for me and you. And I think to myself: \'What a wonderful world\'\""; - next; - mes "You think: \"Huh?\""; - next; - mes "The spell fulfills its inevitable purpose..."; - next; - warp "new_28-1.gat",128,28; - close; -} - -// Warp to Indian in south-eastern desert -new_36-1.gat,27,24,0 script Spell 127,{ - mes "You read: \"A red-coloured fellow smoking his pipe - down in the desert - that's what I like!\""; - next; - mes "You feel the floor disappear below your feet..."; - next; - warp "new_24-1.gat",33,93; - close; -} - -// Warp to snow land -new_36-1.gat,25,27,0 script Spell 127,{ - mes "You read: \"Snow-white flakes and eminent frost - I'll go there, whatever the cost!\""; - next; - mes "You feel yourself getting lighter..."; - next; - warp "new_11-1.gat",84,68; - close; -} - -// Warp to Dimond -new_36-1.gat,27,27,0 script Spell 127,{ - mes "You read: \"People and cosiness, lively and fun - that's where I've gone!\""; - next; - mes "The world around you slowly dissolves..."; - next; - warp "new_23-1.gat",34,42; - close; -} - -// Warp to mines level 2 -new_36-1.gat,26,28,0 script Spell 127,{ - mes "You read: \"Darkness and legs, eight of them each - I'd rather not go there, but now it's too late...\""; - next; - mes "For a moment everything turns black..."; - next; - warp "new_5-1.gat",91,41; - close; -} - -// Death -new_36-1.gat,21,29,0 script Spell 127,{ - mes "You read: \"Heart stops pumping, breath begone - life is stopping, death has come!\""; - next; - mes "You're losing control of your body... everything turns black... while slipping to the floor, you hear a faraway scream... suddenly, you see THE LIGHT!"; - next; - gmcommand strcharinfo(0)+":@die "; - close; -} - -// Naked -new_36-1.gat,28,29,0 script Spell 127,{ - mes "You read: \"Cotton, steel, leather and wool - have I ever seen a greater fool?\""; - next; - mes "You suddenly feel naked; you ARE naked!"; - next; - nude; - close; -} - diff --git a/npc/new_36-1-magic-house/passages.txt b/npc/new_36-1-magic-house/passages.txt deleted file mode 100644 index d5376f5b..00000000 --- a/npc/new_36-1-magic-house/passages.txt +++ /dev/null @@ -1,3 +0,0 @@ -new_36-1.gat,63,43 warp map36to28 0,1,new_28-1.gat,42,91 -new_36-1.gat,67,35 warp tobigroom 0,0,new_36-1.gat,21,40 -new_36-1.gat,21,42 warp tosmallroom 0,1,new_36-1.gat,67,37 diff --git a/npc/new_36-1-magic-house/wizard.txt b/npc/new_36-1-magic-house/wizard.txt deleted file mode 100644 index ec7deb36..00000000 --- a/npc/new_36-1-magic-house/wizard.txt +++ /dev/null @@ -1,25 +0,0 @@ -new_36-1.gat,66,39,0 script Old Wizard 116,{ - mes "\"Welcome, dear wanderer! Come into my humble home. Take a rest, eat and drink.\""; - next; - menu - "Thanks, that's very kind of you!",thanks, - "Oh, shut up!",shutup; -shutup: - mes "\"That attitude isn't going to get you very far, my dear.\""; - close; -thanks: - mes "\"Behind this door, my apprentice will serve you.\""; - next; - menu - "Alright.",ok, - "Your apprentice? ... No thanks.",nothx; -nothx: - mes "\"Goodbye, then!\""; - close; -ok: - mes "\"Beware the flying notes though, some of them are really dangerous. I haven't been able to persuade them to get back into their book. And avoid the mirror, it's been acting strange lately.\""; - next; - mes "\"Oh, and please don't take my apprentice too seriously. He still has a lot to learn.\""; - close; -} - diff --git a/npc/new_37-1-woodland-mine/miners.txt b/npc/new_37-1-woodland-mine/miners.txt deleted file mode 100644 index 99bba7fb..00000000 --- a/npc/new_37-1-woodland-mine/miners.txt +++ /dev/null @@ -1,6 +0,0 @@ -// - -new_37-1.gat,78,59,0 script Miner 109,1,1,{ - mes "[Miner]"; - mes "\"I'm sorry, but this area is closed off.\""; -} diff --git a/npc/new_37-1-woodland-mine/monsters.txt b/npc/new_37-1-woodland-mine/monsters.txt deleted file mode 100644 index d38d2695..00000000 --- a/npc/new_37-1-woodland-mine/monsters.txt +++ /dev/null @@ -1,39 +0,0 @@ -// Map: new_37-1 -// This is the Woodland Mines. -// - -new_37-1.gat,0,0,0,0 monster LogHead 1025,5,500,600,Mob37::OnLogHead -new_37-1.gat,136,77,20,35 monster SeaSlime 1033,5,1000,500,Mob37::OnSeaSlime -new_37-1.gat,0,0,0,0 monster Bat 1017,2,4000,3000,Mob37::OnBat -new_37-1.gat,79,59,0,0 monster YellowSlime 1007,1,120000,60000,Mob37::OnYellowSlime - -new_37-1.gat,57,63,4,4 monster SilkWorm 1035,2,60000,30000,Mob37::OnSilkWorm - -new_37-1.gat,0,0,0 script Mob37 -1,{ -OnLogHead: - set @mobID, 1025; - callfunc "MobPoints"; - break; - -OnSeaSlime: - set @mobID, 1033; - callfunc "MobPoints"; - break; - -OnBat: - set @mobID, 1017; - callfunc "MobPoints"; - break; - -OnYellowSlime: - set @mobID, 1007; - callfunc "MobPoints"; - break; - -OnSilkWorm: - set @mobID, 1035; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_37-1-woodland-mine/passages.txt b/npc/new_37-1-woodland-mine/passages.txt deleted file mode 100644 index be98b28c..00000000 --- a/npc/new_37-1-woodland-mine/passages.txt +++ /dev/null @@ -1,5 +0,0 @@ -// To village -new_37-1.gat,79,97 warp woodland 2,-1,new_18-1.gat,78,18 - -// To camp building -new_37-1.gat,65,73 warp inside -1,-1,new_38-1.gat,50,27 diff --git a/npc/new_38-1-woodland-mine/angus.txt b/npc/new_38-1-woodland-mine/angus.txt deleted file mode 100644 index 7be183f4..00000000 --- a/npc/new_38-1-woodland-mine/angus.txt +++ /dev/null @@ -1,19 +0,0 @@ -// Angus the craftsman - -new_38-1.gat,31,39,0 script Angus 147,{ - set @honorific$, "lad"; - if (Sex == 0) set @honorific$, "lass"; - - if (Inspector == 10) goto L_NohMask; - - mes "[Angus]"; - mes "Angus is tinkering with some mechanical concoction."; - mes "\"It keeps breakin' left an' right... fortunat'ly I put in redundancies everywhere, but I haf' to keep repairin'.\""; - next; - close; - -L_NohMask: - mes "[Angus]"; - mes "\"I'm sorry, " + @honorific$ + ", I truely am, but I stay in the town. One o' the miners might have heard something.\""; - close; -} diff --git a/npc/new_38-1-woodland-mine/books.txt b/npc/new_38-1-woodland-mine/books.txt deleted file mode 100644 index dfd4ecda..00000000 --- a/npc/new_38-1-woodland-mine/books.txt +++ /dev/null @@ -1,18 +0,0 @@ -// - -new_38-1.gat,112,19,0 script #Bookcase38 127,0,1{ - if (Inspector == 11) goto L_NohMask; - - mes "Looking over the bookcase, you find nothing strange or out of order."; - close; - -L_NohMask: - mes "Looking over the bookcase closely, you find a book is upside down."; - next; - - mes "The book has been hollowed out. Inside is a theater mask and a note that you cannot even begin to read."; - next; - - set Inspector, 12; - close; -} diff --git a/npc/new_38-1-woodland-mine/caul.txt b/npc/new_38-1-woodland-mine/caul.txt deleted file mode 100644 index e84b507d..00000000 --- a/npc/new_38-1-woodland-mine/caul.txt +++ /dev/null @@ -1,479 +0,0 @@ -//################################################################################# -//# -//# this script file contains the script for the NPC which allows the -//# PCs to create potions from herbs. -//# -//# Participates in the monster oil subquest (cf. Nicholas' Setzer quest) -//# -//################################################################################# - -new_38-1.gat,37,22,0 script Caul 107,{ - set @SETZER_INITIAL, 0; - set @SETZER_KNOWS_OIL, 1; - set @SETZER_KNOWS_STINGER, 2; - set @SETZER_FLAG_MADE_OIL, 4; - - set @PEARL, 700; - set @SNAKE_SKIN, 641; - set @BLACK_STINGER, 709; - set @ASH_PILE, 701; - set @GOLDEN_STINGER, 706; - set @MONSTER_OIL, 707; - set @MONSTER_OIL_XP, 100000; - - set @Q_MASK, NIBBLE_3_MASK; - set @Q_SHIFT, NIBBLE_3_SHIFT; - - set @MAUVE, 680; - set @COBALT, 681; - set @GAMBOGE, 682; - set @ALIZARIN, 683; - - set @Q_status, (QUEST_Forestbow_state & @Q_MASK) >> @Q_SHIFT; - - mes "[Caul]"; - mes "\"I can help you to brew healing potions out of mauve, cobalt, gamboge and alizarin herbs."; - mes "How many potions do you want to brew?\""; - next; - - - if (@Q_status && Inspector == 10) - menu - "One", L_1, - "Five", L_5, - "Ten", L_10, - "Fifty", L_50, - "I would like to brew monster oil.", L_monster_oil_start, - "Actually...", L_NohMask, - "Never mind", L_close; - if (@Q_status && Inspector != 10) - menu - "One", L_1, - "Five", L_5, - "Ten", L_10, - "Fifty", L_50, - "I would like to brew monster oil.", L_monster_oil_start, - "Never mind", L_close; - if (!@Q_status && Inspector == 10) - menu - "One", L_1, - "Five", L_5, - "Ten", L_10, - "Fifty", L_50, - "Actually...", L_NohMask, - "Never mind", L_close; - if (!@Q_status && Inspector != 10) - menu - "One", L_1, - "Five", L_5, - "Ten", L_10, - "Fifty", L_50, - "Never mind", L_close; - -L_1: - set @num, 1; - goto L_brew; - -L_5: - set @num, 5; - goto L_brew; - -L_10: - set @num, 10; - goto L_brew; - -L_50: - set @num, 50; - goto L_brew; - - -L_brew: - mes "[Caul]"; - mes "\"Now put " + @num + " herbs of each kind into the cauldron, stir, and concentrate all your mental energy on it.\""; - next; - - if (countitem(@MAUVE) < @num) goto L_NotEnough; - if (countitem(@COBALT) < @num) goto L_NotEnough; - if (countitem(@GAMBOGE) < @num) goto L_NotEnough; - if (countitem(@ALIZARIN) < @num) goto L_NotEnough; - - set @a, @num; - set @result1, 0; - set @result2, 0; - set @result3, 0; - set @result4, 0; - -L_CraftLoop: - set @throw, rand(readparam(bInt)); - set @result, 1; - if (@throw >= 5) set @result, 2; - if (@throw >= 15) set @result, 3; - if (@throw >= 35) set @result, 4; - - if (@result == 1) set @result1, @result1 + 1; - if (@result == 2) set @result2, @result2 + 1; - if (@result == 3) set @result3, @result3 + 1; - if (@result == 4) set @result4, @result4 + 1; - - set @a, @a - 1; - if (@a > 0) goto L_CraftLoop; - - delitem @MAUVE, @num; - delitem @COBALT, @num; - delitem @GAMBOGE, @num; - delitem @ALIZARIN, @num; - - getitem 684, @result1; - getitem 685, @result2; - getitem 686, @result3; - getitem 687, @result4; - - mes "[Caul]"; - mes "\"Well done! You made:"; - if (@result1 > 0) mes @result1 + " tiny potions"; - if (@result2 > 0) mes @result2 + " small potions"; - if (@result3 > 0) mes @result3 + " medium potions"; - if (@result4 > 0) mes @result4 + " large potions"; - mes "Come again.\""; - close; - -L_NotEnough: - mes "[Caul]"; - mes "\"Oh, it seems like you don't have enough herbs. You can find herbs in deep forests.\""; - close; - -L_monster_oil_start: - mes "[Caul]"; - mes "\"Monster oil? Hmm, I have heard of it, but I don't remember the precise recipe to make it...\""; - next; - if (@Q_status == @SETZER_KNOWS_OIL) - menu "OK, I'll ask around, perhaps someone else knows.", L_close; - if (@Q_status > @SETZER_KNOWS_OIL) - menu "Rauk told me the recipe.", L_monster_oil_knows_recipe; - close; - -L_monster_oil_knows_recipe: - mes "[Caul]"; - mes "\"Ah, but of course! Yes, we should be able to brew that here. Except that... hmm. Pearl and three black scorpion stingers? This sounds very dangerous;"; - mes "I fear that I will have to ask you to do this yourself.\""; - next; - -L_monster_oil_main_menu: - set @main_menu, 1; - menu - "What do you mean by 'dangerous'?", L_monster_oil_why_dangerous, - "What do I need, again?", L_monster_oil_ingredients, - "How does this work?", L_monster_oil_explain, - "Let's start!", L_monster_oil_start_brew, - "Where can I get a golden scorpion stinger?", L_monster_oil_where_gold, - "I've changed my mind.", L_close; - close; - -L_monster_oil_why_dangerous: - mes "[Caul]"; - mes "\"Well, with those two reagents in there at that ratio, you risk an explosion-- quite possibly a fatal one. So be prepared to duck if the brew gets too bubbly-- it's better to lose the ingredients than your head!\""; - next; - goto L_monster_oil_main_menu; - -L_monster_oil_ingredients: - mes "[Caul]"; - mes "\"You will need one pearl, two snake skins, three black scorpion stingers, two piles of ash, and a golden scorpion stinger. The golden stinger goes in last, after the dangerous part, so you won't lose if if your brew blows up.\""; - next; - mes "[Caul]"; - mes "\"You should also bring gamboge, mauve, alizarin and cobalt leaves. You will have to stabilize the brew, and they will help with that.\""; - next; - goto L_monster_oil_main_menu; - -L_monster_oil_explain: - mes "[Caul]"; - mes "\"After you have put in the monster parts-- except for the golden stinger-- the brew will take on some random color; this can be a light, dark, or medium color. You have to stabilize this color by adding leaves to it.\""; - next; - mes "[Caul]"; - mes "\"Of course, with such a violent brew the mixture will change color by itself, too, probably faster than your leaves can affect it. It will randomly add or remove colors, and might even get lighter.\""; - next; - mes "[Caul]"; - mes "\"From what I have seen, it seems to go through phases-- for each alternate leaf it adds a colour, then removes a color, then adds again and so on. Of course, if the color is there already it can't add any more.\""; - next; - mes "[Caul]"; - mes "\"I haven't figured out yet precisely when it gets lighter, though.\""; - next; - mes "[Caul]"; - mes "\"By adding Mauve, you can make it darker. Alizarin adds red, Gamboge yellow, Cobalt blue. To make it a proper black, you have to get it to be dark gray, then add one Mauve leaf.\""; - next; - mes "[Caul]"; - mes "\"Unfortunately the brew changes randomly before your leaves dissolve, so sometimes you can't help but add the wrong color...\""; - next; - mes "[Caul]"; - mes "\"Since the brew changes its color first, you might want to add the Mauve when your color is a dark purple or dark green or dark orange and hope for the best.\""; - next; - mes "[Caul]"; - mes "\"But don't add too much! If you add a color that is already there, or try to make it darker at the wrong spot, it may backfire.\""; - next; - if (@main_menu) - goto L_monster_oil_main_menu; - goto L_monster_oil_loop; - -L_monster_oil_where_gold: - mes "[Caul]"; - mes "\"Good question. There aren't any golden scorpions nearby. Perhaps you can find a trader or an adventurer who have travelled further south and ask them to help?\""; - next; - goto L_monster_oil_main_menu; - -L_monster_oil_start_brew: - set @main_menu, 0; - if (countitem (@PEARL) < 1) goto L_monster_oil_missing; - if (countitem (@SNAKE_SKIN) < 2) goto L_monster_oil_missing; - if (countitem (@BLACK_STINGER) < 3) goto L_monster_oil_missing; - if (countitem (@ASH_PILE) < 2) goto L_monster_oil_missing; - if (countitem (@GOLDEN_STINGER) < 1) goto L_monster_oil_missing_gold; - - delitem @PEARL, 1; - delitem @SNAKE_SKIN, 2; - delitem @BLACK_STINGER, 3; - delitem @ASH_PILE, 2; - - set @bubble_mode, 0; - setarray @bubble_modes$, - "The brew is calm.", - "The brew is bubbling.", - "The brew is bubbling violently."; - - set @color, 1 << (rand(3)); - setarray @colors$, - "white", - "red", - "yellow", - "orange", - "blue", - "purple", - "green", - "gray"; - - set @intensity, 1; - setarray @intensities$, - "light", - "medium", - "dark"; - - set @auto_mode, 0; // Start by adding a colour or going lighter - - goto L_monster_oil_loop; - -L_monster_oil_missing: - mes "[Caul]"; - mes "\"You don't seem to have all of the ingredients. You need one pearl, two snake skins, three black stingers, two piles of ash, and one golden stinger.\""; - next; - close; - -L_monster_oil_missing_gold: - mes "[Caul]"; - mes "\"You seem to have everything except for the golden stinger. I understand that this one is hard to get, but I'm sure that you can find one somewhere.\""; - next; - close; - -L_monster_oil_loop: - mes "[Brewing monster oil]"; - mes @bubble_modes$[@bubble_mode]; - mes "It is currently a " + @intensities$[@intensity] + " " + @colors$[@color] + "."; - next; - - menu - "Add alizarin leaf", L_monster_oil_alizarin, - "Add gamboge leaf", L_monster_oil_gamboge, - "Add cobalt leaf", L_monster_oil_cobalt, - "Add mauve leaf", L_monster_oil_mauve, - "Ask Caul for advice", L_monster_oil_explain, - "Duck!", -; - - mes "[Brewing monster oil]"; - mes "You throw yourself onto the ground. Seconds later, the cauldron shakes, and your entire mixture explodes upwards."; - mes "Caul crawls out from underneath a char."; - next; - mes "[Caul]"; - mes "\"I'm glad to see that you chose to brew another day... perhaps it might be best if you give up on this dangerous concoction, though!\""; - next; - close; - -L_monster_oil_out_of_leaves: - mes "[Brewing monster oil]"; - mes "You don't have any of these leaves left!"; - next; - goto L_monster_oil_loop; - -L_monster_oil_alizarin: - set @use_leaf, @ALIZARIN; - set @use_color, 1; - goto L_monster_oil_leaf_color; - -L_monster_oil_gamboge: - set @use_leaf, @GAMBOGE; - set @use_color, 2; - goto L_monster_oil_leaf_color; - -L_monster_oil_cobalt: - set @use_leaf, @COBALT; - set @use_color, 4; - goto L_monster_oil_leaf_color; - -L_monster_oil_leaf_color: - if (countitem (@use_leaf) < 1) goto L_monster_oil_out_of_leaves; - - callsub S_monster_oil_random_move; - if (@color & @use_color) goto L_monster_oil_pc_bad; - set @color, @color | @use_color; - delitem @use_leaf, 1; - - mes "The brew changes its hue as your leaf dissolves."; - next; - goto L_monster_oil_loop; - -L_monster_oil_mauve: - if (countitem(@MAUVE) < 1) goto L_monster_oil_out_of_leaves; - delitem @MAUVE, 1; - - callsub S_monster_oil_random_move; - if (@intensity == 2 && @color == 7) goto L_monster_oil_done; - if (@intensity == 2) goto L_monster_oil_pc_bad; - - set @intensity, @intensity + 1; - mes "The brew darkens as your mauve leaf dissolves."; - next; - goto L_monster_oil_loop; - -S_monster_oil_random_move: - mes "[Brewing monster oil]"; - mes "You throw in a leaf and stir."; - - if (@auto_mode == 1) - goto L_monster_oil_random_1; - -L_monster_oil_random_0: // mode 0: add colour or lighten up - set @auto_mode, 1; - if (rand(3) == 0) - goto L_monster_oil_random_0_lighten; - - set @choice, 1 << (rand(3)); - if (@color & @choice) - goto L_monster_oil_auto_bad; - set @color, @color | @choice; - - mes "Before your leaf has a chance to dissolve, the brew changes to a " + @colors$[@color] + " hue."; - return; - -L_monster_oil_random_0_lighten: - if (@intensity == 0) - goto L_monster_oil_auto_bad; - set @intensity, @intensity - 1; - mes "Before your leaf has a chance to dissolve, the brew takes on a lighter shade of " + @colors$[@color] + "."; - return; - -L_monster_oil_random_1: // mode 1: remove colour - set @auto_mode, 0; - set @choice, 1 << (rand(3)); - if (!(@color & @choice)) - goto L_monster_oil_auto_bad; - set @color, @color & (~@choice); - mes "Before your leaf has a chance to dissolve, the brew changes to a " + @colors$[@color] + " hue."; - return; - -L_monster_oil_pc_bad: - if (rand(readparam(bInt) + 100) > 60) goto L_monster_oil_pc_bad_ok; - if (@bubble_mode) - mes "As your leaf dissolves, the intensity of the bubbling increases."; - if (!@bubble_mode) - mes "As your leaf dissolves, the brew begins to bubble."; - next; - set @bubble_mode, @bubble_mode + 1; - if (@bubble_mode > 2) - goto L_monster_oil_explode; - goto L_monster_oil_loop; - -L_monster_oil_pc_bad_ok: - mes "Your leaf dissolves but seems to have no effect."; - next; - goto L_monster_oil_loop; - -L_monster_oil_auto_bad: - if (rand(3) == 0) - return; - if (rand(readparam(bInt) + 100) > 70) - return; - mes "The brew begins to bubble more violently."; - set @bubble_mode, @bubble_mode + 1; - if (@bubble_mode > 2) - next; - if (@bubble_mode > 2) - goto L_monster_oil_explode; - return; - -L_monster_oil_explode: - mes "[Exploding monster oil]"; - mes "Your brew explodes!"; - if (rand(readparam(bAgi)) > 40) - goto L_monster_oil_explode_dodge; - mes "The burst of boiling monster brew hits you."; - next; - itemheal (15 * rand(readparam(bVit))) - 1500, 0; - close; - -L_monster_oil_explode_dodge: - mes "You throw yourself to the ground at the very last moment, barely avoiding the burst of boiling monster brew."; - next; - mes "[Caul]"; - mes "Caul nods at you from underneath a chair."; - mes "\"I told you, it's dangerous!!\""; - next; - close; - -L_monster_oil_done: - mes "As you throw in another mauve leaf, the brew takes on a deep black color and calms down."; - next; - - mes "[Brewing monster oil]"; - mes "As instructed, you toss in your golden scorpion stinger."; - - if (countitem (@GOLDEN_STINGER) < 1) goto L_monster_oil_no_gold_end; - - mes "The brew bubbles once more, then calms completely."; - - delitem @GOLDEN_STINGER, 1; - getitem @MONSTER_OIL, 1; - - if (!(@Q_status & @SETZER_FLAG_MADE_OIL)) - getexp @MONSTER_OIL_XP, 0; - if (!(@Q_status & @SETZER_FLAG_MADE_OIL)) - mes "[" + @MONSTER_OIL_XP + " experience points]"; - - set @Q_status, @Q_status | @SETZER_FLAG_MADE_OIL; - callsub S_Update_Var; - next; - - mes "[Caul]"; - mes "Caul gets up from underneath the cover he was taking and looks at your brew. He is visibly impressed."; - mes "\"Well done! This should be just enough for one potion of monster oil. Let me get you a bottle.\""; - mes "He hands you the monster oil."; - next; - close; - -L_monster_oil_no_gold_end: - mes "But where is your golden stinger? Didn't you have one earlier?"; - mes "Frustrated, you give up."; - next; - close; - -L_close: - close; - -S_Update_Var: - set QUEST_Forestbow_state, - (QUEST_Forestbow_state & ~(@Q_MASK) - | (@Q_status << @Q_SHIFT)); - return; - -L_NohMask: - mes "[Caul]"; - mes "\"I'm sorry, but I didn't. I'm staying in town. Try asking one of the miners.\""; - close; -} - - diff --git a/npc/new_38-1-woodland-mine/miners.txt b/npc/new_38-1-woodland-mine/miners.txt deleted file mode 100644 index 92261cb5..00000000 --- a/npc/new_38-1-woodland-mine/miners.txt +++ /dev/null @@ -1,15 +0,0 @@ -// - -new_38-1.gat,85,23,0 script Miner 109,{ - if (Inspector == 10) goto L_NohMask; - - mes "[Miner]"; - mes "\"Hello.\""; - close; - -L_NohMask: - set Inspector, 11; - mes "[Miner]"; - mes "\"Yeah, we did hear a commotion. We thought we heard someone go down to the basement, but we checked the whole place over and didn't see anything out of the ordinary.\""; - close; -} diff --git a/npc/new_38-1-woodland-mine/monsters.txt b/npc/new_38-1-woodland-mine/monsters.txt deleted file mode 100644 index 7eb44908..00000000 --- a/npc/new_38-1-woodland-mine/monsters.txt +++ /dev/null @@ -1,14 +0,0 @@ -// Map: new_38-1 -// This is the Woodland Mines -- level 1. -// - -new_38-1.gat,114,21,4,3 monster YellowSlime 1007,1,120000,60000,Mob38::OnYellowSlime - -new_38-1.gat,0,0,0 script Mob38 -1,{ -OnYellowSlime: - set @mobID, 1007; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_38-1-woodland-mine/passages.txt b/npc/new_38-1-woodland-mine/passages.txt deleted file mode 100644 index 8ab42aa4..00000000 --- a/npc/new_38-1-woodland-mine/passages.txt +++ /dev/null @@ -1,12 +0,0 @@ -// Outside -new_38-1.gat,50,28 warp outside -1,-1,new_37-1.gat,65,74 -new_38-1.gat,41,21 warp outside -1,-1,new_37-1.gat,64,69 - -// Basement -new_38-1.gat,20,24 warp 1b -1,-1,new_38-1.gat,112,27 -new_38-1.gat,112,26 warp 1f -1,-1,new_38-1.gat,20,23 - -// Second floor -new_38-1.gat,21,28 warp 2f 0,-1,new_38-1.gat,79,25 -new_38-1.gat,79,26 warp 1f 0,-1,new_38-1.gat,21,29 - \ No newline at end of file diff --git a/npc/new_38-1-woodland-mine/receptionist.txt b/npc/new_38-1-woodland-mine/receptionist.txt deleted file mode 100644 index 822d09a3..00000000 --- a/npc/new_38-1-woodland-mine/receptionist.txt +++ /dev/null @@ -1,65 +0,0 @@ -// - -new_38-1.gat,50,24,0 script Receptionist 108,{ - mes "[Receptionist]"; - mes "\"Welcome to the mining camp!"; - mes "Do you need anything?\""; - next; - -L_Menu: - if (Inspector == 10) - menu - "Why was a mine setup here?", L_Mine, - "Can I go into the mine?", L_Enter, - "Did the company build this building?", L_Building, - "Did you hear a commotion here the other night?", L_NohMask, - "Thank you, no.", -; - if (Inspector != 10) - menu - "Why was a mine setup here?", L_Mine, - "Can I go into the mine?", L_Enter, - "Did the company build this building?", L_Building, - "Thank you, no.", -; - close; - -L_Mine: - mes "[Receptionist]"; - mes "\"Minerals have been easy to find in this area historically. The mine entrance we're using collapsed from the mountain side when the volcano errupted. Plenty of minerals were exposed then.\""; - next; - goto L_Question_End; - -L_Enter: - mes "[Receptionist]"; - mes "\"I'm sorry, but the mine is very active. Entrance is restricted to miners only.\""; - next; - goto L_Question_End; - -L_Building: - mes "[Receptionist]"; - mes "\"No, the company bought this building. It's been abandoned for a while. The villagers think it's haunted, but we haven't seen anything, except for the basement. None of us have been able to stay there for very long.\""; - next; - - menu - "Why not?", -, - "Not my problem", L_Question_End; - - mes "[Receptionist]"; - mes "\"I haven't been down there myself, and the ones who have haven't been able to describe why at all.\""; - next; - - goto L_Question_End; - -L_NohMask: - mes "[Receptionist]"; - mes "\"I stay in town, and so couldn't have heard anything over here. One of the miners might be able to help you.\""; - next; - - goto L_Question_End; - -L_Question_End: - mes "[Receptionist]"; - mes "\"Do you need anything else?\""; - next; - - goto L_Menu; -} diff --git a/npc/new_4-1-cave-small/hermit.txt b/npc/new_4-1-cave-small/hermit.txt deleted file mode 100644 index 2ef32941..00000000 --- a/npc/new_4-1-cave-small/hermit.txt +++ /dev/null @@ -1,16 +0,0 @@ -// - -new_4-1.gat,30,30,0 script Arkim 116,{ - mes "[Arkim the Hermit]"; - mes "\"Do you want to go back outside?\""; - next; - menu - "Yes please", L_Sure, - "Not yet", -; - close; - -L_Sure: - warp "new_9-1.gat", 60, 95; - close; - -} diff --git a/npc/new_4-1-cave-small/monsters.txt b/npc/new_4-1-cave-small/monsters.txt deleted file mode 100644 index f51d010d..00000000 --- a/npc/new_4-1-cave-small/monsters.txt +++ /dev/null @@ -1,21 +0,0 @@ -// Map: new_4-1 -// This is the Hermit's Cave -- level 1. -// - -new_4-1.gat,0,0,0,0 monster Bat 1017,10,0,0,Mob4::OnBat - -new_4-1.gat,0,0,0,0 monster SilkWorm 1035,3,60000,30000,Mob4::OnSilkWorm - -new_4-1.gat,0,0,0 script Mob4 -1,{ -OnBat: - set @mobID, 1017; - callfunc "MobPoints"; - break; - -OnSilkWorm: - set @mobID, 1035; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_4-1-cave-small/passages.txt b/npc/new_4-1-cave-small/passages.txt deleted file mode 100644 index 200ab60f..00000000 --- a/npc/new_4-1-cave-small/passages.txt +++ /dev/null @@ -1 +0,0 @@ -new_4-1.gat,31,22 warp secondlvl 3,0,new_17-1.gat,72,11 diff --git a/npc/new_5-1-cave2/chest.txt b/npc/new_5-1-cave2/chest.txt deleted file mode 100644 index 865c0f7e..00000000 --- a/npc/new_5-1-cave2/chest.txt +++ /dev/null @@ -1,31 +0,0 @@ -// - -new_5-1.gat,93,37,0 script Treasure 111,{ - if( ChestQuest == 1) goto L_Finished; - - mes "[Chest]"; - mes "Would you try to open it?"; - next; - menu - "Yes", L_Yes, - "No", -; - close; - -L_Yes: - if(countitem(537) < 3) goto L_Not_Enough; - delitem 537, 3; - getitem 536, 1; - mes "[Chest]"; - mes "You opened it and found a short sword!"; - set ChestQuest, 1; - 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; -} diff --git a/npc/new_5-1-cave2/monsters.txt b/npc/new_5-1-cave2/monsters.txt deleted file mode 100644 index 0b8f967b..00000000 --- a/npc/new_5-1-cave2/monsters.txt +++ /dev/null @@ -1,20 +0,0 @@ -// Map: new_5-1 -// This is the Desert Mines south of Tulimshar -- level 2. -// - -new_5-1.gat,0,0,0,0 monster Spider 1012,10,2500,0,Mob5::OnSpider -new_5-1.gat,0,0,0,0 monster YellowSlime 1007,25,2500,0,Mob5::OnYellowSlime - -new_5-1.gat,0,0,0 script Mob5 -1,{ -OnSpider: - set @mobID, 1012; - callfunc "MobPoints"; - break; - -OnYellowSlime: - set @mobID, 1007; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_5-1-cave2/passages.txt b/npc/new_5-1-cave2/passages.txt deleted file mode 100644 index ec363db0..00000000 --- a/npc/new_5-1-cave2/passages.txt +++ /dev/null @@ -1,4 +0,0 @@ -new_2-1.gat,36,30 warp caveexit 3,0,new_1-1.gat,25,95 -new_1-1.gat,19,94 warp caveentrance 1,1,new_2-1.gat,37,31 -new_1-1.gat,111,79 warp eastdesert 2,2,new_7-1.gat,23,40 -new_7-1.gat,18,39 warp westdesert 3,4,new_1-1.gat,106,78 \ No newline at end of file diff --git a/npc/new_6-1-arena/guards.txt b/npc/new_6-1-arena/guards.txt deleted file mode 100644 index 065ed765..00000000 --- a/npc/new_6-1-arena/guards.txt +++ /dev/null @@ -1,28 +0,0 @@ -// - -new_6-1.gat,77,37,0 script Phaet 125,{ - mes "[Phaet the Royal Guard]"; - mes "\"Do you want to go back?\""; - next; - - menu - "Yes", L_Sure, - "No", -; - mes "Have fun."; - close; - -L_Sure: - mes "[Phaet the Royal Guard]"; - mes "\"Ok.\""; - next; - - warp "new_8-1.gat", 25, 23; - close; -} - -new_6-1.gat,69,37,0 script Aradin 126,{ - mes "[Aradin the Royal Guard]"; - mes "\"Don't touch me..."; - mes "You wouldn't enjoy the consequences.\""; - close; -} diff --git a/npc/new_6-1-arena/monsters.txt b/npc/new_6-1-arena/monsters.txt deleted file mode 100644 index 51d72132..00000000 --- a/npc/new_6-1-arena/monsters.txt +++ /dev/null @@ -1,14 +0,0 @@ -// Map: new_6-1 -// This is the Tulimshar Arena -- below Tulimshar. -// - -new_6-1.gat,0,0,0,0 monster Maggot 1002,10,0,0,Mob6::OnMaggot - -new_6-1.gat,0,0,0 script Mob6 -1,{ -OnMaggot: - set @mobID, 1002; - callfunc "MobPoints"; - break; - - end; -} \ No newline at end of file diff --git a/npc/new_6-1-arena/pvpflag.txt b/npc/new_6-1-arena/pvpflag.txt deleted file mode 100644 index 361e062b..00000000 --- a/npc/new_6-1-arena/pvpflag.txt +++ /dev/null @@ -1 +0,0 @@ -new_6-1.gat mapflag pvp diff --git a/npc/new_7-1-eastern-desert/monsters.txt b/npc/new_7-1-eastern-desert/monsters.txt deleted file mode 100644 index c2ec4c71..00000000 --- a/npc/new_7-1-eastern-desert/monsters.txt +++ /dev/null @@ -1,20 +0,0 @@ -// Map: new_7-1 -// This is the Snake Desert. -// - -new_7-1.gat,0,0,0,0 monster Maggot 1002,20,0,0,Mob7::OnMaggot -new_7-1.gat,0,0,0,0 monster Snake 1010,20,0,0,Mob7::OnSnake - -new_7-1.gat,0,0,0 script Mob7 -1,{ -OnMaggot: - set @mobID, 1002; - callfunc "MobPoints"; - break; - -OnSnake: - set @mobID, 1010; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_7-1-eastern-desert/npcs.txt b/npc/new_7-1-eastern-desert/npcs.txt deleted file mode 100644 index 8b3d1d0a..00000000 --- a/npc/new_7-1-eastern-desert/npcs.txt +++ /dev/null @@ -1,17 +0,0 @@ -// - -new_7-1.gat,69,76,0 shop George 115,530:3000,1199:3,529:5,539:175,562:500 - -new_7-1.gat,66,75,0 script Kieron 132,{ - mes "[Kieron]"; - mes "\"Be careful if you're going in that cave,"; - mes "it's packed full of monsters.\""; - close; -} - -new_7-1.gat,91,23,0 script William 131,{ - mes "[William]"; - mes "\"Going in the cave?"; - mes "You better watch your step, last time I checked it was full of monsters!\""; - close; -} diff --git a/npc/new_7-1-eastern-desert/passages.txt b/npc/new_7-1-eastern-desert/passages.txt deleted file mode 100644 index f0850ca1..00000000 --- a/npc/new_7-1-eastern-desert/passages.txt +++ /dev/null @@ -1,21 +0,0 @@ -new_2-1.gat,36,30 warp caveexit 3,0,new_1-1.gat,25,95 -new_1-1.gat,19,94 warp caveentrance 1,1,new_2-1.gat,37,31 -new_1-1.gat,111,79 warp eastdesert 2,2,new_7-1.gat,23,40 -new_7-1.gat,18,39 warp westdesert 3,4,new_1-1.gat,106,78 -new_7-1.gat,89,23 warp tosnakecaveN 0,0,new_22-1.gat,52,34 -new_7-1.gat,71,75 warp tosnakecaveS 0,0,new_22-1.gat,33,83 -new_7-1.gat,162,103 warp toMountainPass 0,0,new_24-1.gat,20,33 -new_7-1.gat,163,102 warp toMountainPass 0,0,new_24-1.gat,21,32 -new_7-1.gat,164,101 warp toMountainPass 0,0,new_24-1.gat,22,31 -new_7-1.gat,165,100 warp toMountainPass 0,0,new_24-1.gat,23,30 -new_7-1.gat,166,99 warp toMountainPass 0,0,new_24-1.gat,24,29 -new_7-1.gat,167,98 warp toMountainPass 0,0,new_24-1.gat,25,28 -new_7-1.gat,168,97 warp toMountainPass 0,0,new_24-1.gat,26,27 -new_7-1.gat,169,96 warp toMountainPass 0,0,new_24-1.gat,27,26 -new_7-1.gat,170,95 warp toMountainPass 0,0,new_24-1.gat,28,25 -new_7-1.gat,171,94 warp toMountainPass 0,0,new_24-1.gat,29,24 -new_7-1.gat,172,93 warp toMountainPass 0,0,new_24-1.gat,30,23 -new_7-1.gat,173,92 warp toMountainPass 0,0,new_24-1.gat,31,22 -new_7-1.gat,174,91 warp toMountainPass 0,0,new_24-1.gat,32,21 -new_22-1.gat,52,33 warp fromsnakecaveN 0,0,new_7-1.gat,89,24 -new_22-1.gat,33,82 warp fromsnakecaveS 0,0,new_7-1.gat,71,76 \ No newline at end of file diff --git a/npc/new_8-1-tulimshar/casino.txt b/npc/new_8-1-tulimshar/casino.txt deleted file mode 100644 index 58f99ea5..00000000 --- a/npc/new_8-1-tulimshar/casino.txt +++ /dev/null @@ -1,172 +0,0 @@ -// - -new_8-1.gat,134,23,0 script Valdo 117,{ - mes "[Valdo the Worker]"; - mes "\"Please let me work, I'm really in a hurry!\""; - close; -} - -new_8-1.gat,37,65,0 script Slot1 127,{ - callfunc "SlotMachine"; -} - -new_8-1.gat,39,65,0 script Slot2 127,{ - callfunc "SlotMachine"; -} - -new_8-1.gat,41,65,0 script Slot3 127,{ - callfunc "SlotMachine"; -} - -new_8-1.gat,32,67,0 shop MoneyChanger 124,503:10 - -new_8-1.gat,28,63,0 script BlackJack 107,{ - mes "[Croupier]"; - mes "\"Would you like to play Black Jack?"; - mes "You will need 15 casino coins.\""; - next; - - menu - "Yes", L_Begin, - "No", -; - mes "\"As you wish.\""; - close; - -L_Begin: - if(countitem(503) < 15) goto L_NoCoin; - delitem 503, 15; - set @croupier, rand(0, 4); - set @croupier, @croupier + 17; - set @player, rand(4, 21); - mes "\"You got " + @player + " with your cards."; - if(@player == 21) goto L_End; - mes "Do you want another card?\""; - next; - - menu - "Yes", L_Another, - "No", L_End; - -L_Another: - set @tempace, rand(2, 11); - if (@tempace == 11) goto L_Ace; - set @player, @player + @tempace; - if (@player > 21) goto L_Lost; - if (@player == 21) goto L_End; - mes "\"You got " + @player + " with your cards."; - mes "Do you want another card?\""; - next; - - menu - "Yes", L_Another, - "No", L_End; -L_End: - if (@player <= @croupier) goto L_Lost; - mes "\"Congratulations, you won!"; - mes "I had " + @croupier + "."; - mes "You get 45 casino coins.\""; - getitem 503, 45; - close; - -L_NoCoin: - mes "\"You need at least 15 coins.\""; - close; - -L_Lost: - mes "\"I'm sorry but you lost."; - mes "You got " + @player + " with your cards."; - mes "I had " + @croupier + ".\""; - close; - -L_Ace: - set @player, @player + 11; - if (@player > 21) set @player, @player - 10; - if (@player > 21) goto L_Lost; - if (@player == 21) goto L_End; - mes "You got " + @player + " with your cards."; - mes "Do you want another card?"; - next; - - menu - "Yes", L_Another, - "No", L_End; - -} - -new_8-1.gat,22,69,0 script Roulette 107,{ - mes "\"Good evening monsieur..."; - mes "How much would you like to bet?\""; - next; - - menu - "1 coin", L_b1, - "5 coins", L_b5, - "10 coins", L_b10, - "50 coins", L_b50, - "100 coins", L_b100, - "Maybe I'll play later", L_Later; - mes "\"Rien ne va plus...\""; - close; - -L_b1: - set @bet, 1; - goto L_Check; - -L_b5: - set @bet, 5; - goto L_Check; - -L_b10: - set @bet, 10; - goto L_Check; - -L_b50: - set @bet, 50; - goto L_Check; - -L_b100: - set @bet, 100; - goto L_Check; - -L_Check: - if(countitem(503) < @bet) goto L_NoCoin; - delitem 503, @bet; - menu - "Choose a color", -, - "Choose a number", L_Number; - menu - "Black", -, - "Red", -; - set @color,rand(2); - if(@color == 1) goto L_Lost; - mes "You won!"; - getitem 503, @bet * 2; - close; - -L_Number: - menu - "0", -, "00", -, "1", -, "2", -, "3", -, "4", -, "5", -, "6", -, "7", -, "8", -, - "9", -, "10", -, "11", -, "12", -, "13", -, "14", -, "15", -, "16", -, "17", -, "18", -, - "19", -, "20", -, "21", -, "22", -, "23", -, "24", -, "25", -, "26", -, "27", -, "28", -, - "29", -, "30", -, "31", -, "32", -, "33", -, "34", -, "35", -, "36", -; - - if (@menu == 1) set @number, 0; - if (@menu == 2) set @number, 37; - if (@menu >= 3) set @number, @menu - 2; - - set @roulette, rand(38); - if (@roulette == 37) mes "The ball stopped on 00"; - if (@roulette < 37) mes "The ball stopped on " + @roulette; - if (@number != @roulette) goto L_Lost; - mes "\"You won!\""; - getitem 503, @bet * 10; - close; - -L_NoCoin: - mes "\"You don't have enough coins.\""; - close; - -L_Lost: - mes "\"I'm sorry, you lost.\""; - close; -} diff --git a/npc/new_8-1-tulimshar/omar.txt b/npc/new_8-1-tulimshar/omar.txt deleted file mode 100644 index 25865e5f..00000000 --- a/npc/new_8-1-tulimshar/omar.txt +++ /dev/null @@ -1,6 +0,0 @@ -// - -new_8-1.gat,70,60,0 script Omar 162,{ - mes "[Omar]"; - mes "\"Welcome to my humble abode.\""; -} diff --git a/npc/new_8-1-tulimshar/passages.txt b/npc/new_8-1-tulimshar/passages.txt deleted file mode 100644 index 43a7f9f7..00000000 --- a/npc/new_8-1-tulimshar/passages.txt +++ /dev/null @@ -1,28 +0,0 @@ -/////////////// -// Inn/Casino -/////////////// - -// Warps room 1 -new_8-1.gat,45,24 warp upstairs 0,2,new_8-1.gat,65,25 -new_8-1.gat,25,35 warp outside 0,0,new_3-1.gat,32,72 - -// Warps room 2 -new_8-1.gat,65,25 warp downstairs 0,1,new_8-1.gat,42,25 -new_8-1.gat,68,22 warp tocasino 2,0,new_8-1.gat,32,72 -new_8-1.gat,67,31 warp tobedroom1 1,1,new_8-1.gat,102,23 -new_8-1.gat,76,31 warp tobedroom2 1,1,new_8-1.gat,130,23 - -// Warps room 3 -new_8-1.gat,102,22 warp bedroom1tohall 2,0,new_8-1.gat,67,29 - -// Warps room 4 -new_8-1.gat,130,22 warp bedroom2tohall 2,0,new_8-1.gat,76,29 - -// Warps room 5 -new_8-1.gat,32,74 warp tohall 1,0,new_8-1.gat,68,23 - -/////////////// -// Houses -/////////////// - -new_8-1.gat,71,73 warp outside 0,0,new_3-1.gat,75,42 diff --git a/npc/new_8-1-tulimshar/phaet.txt b/npc/new_8-1-tulimshar/phaet.txt deleted file mode 100644 index 4cc13e9a..00000000 --- a/npc/new_8-1-tulimshar/phaet.txt +++ /dev/null @@ -1,30 +0,0 @@ -// - -new_8-1.gat,24,23,0 script Phaet 125,{ - mes "[Phaet the Royal Guard]"; - mes "\"Hey, you seem tough enough! Would you like to prove your skills? I'll let you in the arena if you give me 50 gp. You can fight against other players there.\""; - next; - - menu - "Yes", L_Sure, - "No", -; - - mes "[Phaet the Royal Guard]"; - mes "\"Ha ha, coward.\""; - close; - -L_Sure: - if (zeny < 50) goto L_NoMoney; - set zeny, zeny - 50; - - mes "[Phaet the Royal Guard]"; - mes "\"Get ready!\""; - next; - - warp "new_6-1.gat", 0, 0; - close; - -L_NoMoney: - mes "\"Wait a second, you don't have enough money.\""; - close; -} diff --git a/npc/new_8-1-tulimshar/shops.txt b/npc/new_8-1-tulimshar/shops.txt deleted file mode 100644 index 8482edd9..00000000 --- a/npc/new_8-1-tulimshar/shops.txt +++ /dev/null @@ -1,9 +0,0 @@ -// - -new_8-1.gat,26,26,0 shop InnKeeper 112,539:175,513:20,519 - -new_8-1.gat,103,26,0 script Rebecca 118,{ - set @npcName$, "Rebecca the Inn Keeper"; - set @cost, 100; - callfunc "Inn"; -} diff --git a/npc/new_8-1-tulimshar/troupe_leader.txt b/npc/new_8-1-tulimshar/troupe_leader.txt deleted file mode 100644 index a602b1d2..00000000 --- a/npc/new_8-1-tulimshar/troupe_leader.txt +++ /dev/null @@ -1,43 +0,0 @@ -// - -new_8-1.gat,34,25,0 script Troupe Leader 165,{ - if (Inspector == 4) goto L_NohMask_Troupe; - if (Inspector == 13) goto L_NohMask_Found; - - mes "[Troupe Leader]"; - mes "\"Hello. I'm the leader of a traveling theater troupe. We'll be staying here in Tulimshar for a while.\""; - close; - -L_NohMask_Troupe: - mes "[Troupe Leader]"; - mes "\"Yes, a mask was stolen from us the last night we were in Hurnscald.\""; - next; - menu - "Any ideas on who might have taken it?", L_NohMask_Idea, - "Are you sure one of your troupe members didn't hide it and commit those robberies?", L_NohMask_Accuse, - "Hmm...", -; - close; - -L_NohMask_Idea: - set Inspector, 5; - mes "[Troupe Leader]"; - mes "\"Hm...I did see an old man hang out near the theater after our last show.\""; - close; - -L_NohMask_Accuse: - mes "[Troupe Leader]"; - mes "\"I am absolutely positive. None of my troupe have left the city since we got here. Good day!\""; - close; - -L_NohMask_Found: - mes "[Troupe Leader]"; - mes "\"Thank you for finding the mask. You did such a good job, you should keep it.\""; - mes "[1500 experience points]"; - getexp 1500, 0; - next; - set Inspector, 14; - getitem 678, 1; - mes "[Troupe Leader]"; - mes "\"We don't need it anymore. We're doing different shows here.\""; - close; -} diff --git a/npc/new_9-1-woodland/alchemist.txt b/npc/new_9-1-woodland/alchemist.txt deleted file mode 100644 index ed6582fa..00000000 --- a/npc/new_9-1-woodland/alchemist.txt +++ /dev/null @@ -1,717 +0,0 @@ -// This NPC makes potions and dyes -new_9-1.gat,117,77,0 script Rauk 103,{ - - // Setzer quest/monster oil quest participation - set @SETZER_INITIAL, 0; - set @SETZER_KNOWS_OIL, 1; - set @SETZER_KNOWS_STINGER, 2; - - set @Q_MASK, NIBBLE_3_MASK; - set @Q_SHIFT, NIBBLE_3_SHIFT; - - set @Q_status, (QUEST_Forestbow_state & @Q_MASK) >> @Q_SHIFT; - // End of Setzer quest/monster oil quest participation - - set @RED, 683; - set @YELLOW, 682; - set @BLUE, 681; - set @MAUVE, 680; - set @PETAL, 565; - set @PEARL, 700; - set @ORE, 640; - set @MAGGOTSLIME, 505; - - set @QUEST_CAN_GET_DYE_HERE, 2; - set @QUEST_HAS_SOLVED_DYE_PUZZLE, 3; - set @QUEST_GUESS_BASE, 4; - - set @CHOICE_IRON, 0; - set @CHOICE_CONCENTRATION, 1; - set @CHOICE_DYEING_INTRO, 2; - set @CHOICE_DYE, 3; - set @CHOICE_MONSTER_OIL, 4; - set @CHOICE_ABORT, 5; - - setarray @menuitems$, "", "", "", "", ""; - set @c, 0; - - set @menuitems$[@c], "Iron potion."; - set @menuID[@c], @CHOICE_IRON; - set @c, @c + 1; - - set @menuitems$[@c], "Concentration potion."; - set @menuID[@c], @CHOICE_CONCENTRATION; - set @c, @c + 1; - - if (QUEST_clothdyer_knowsdye >= @QUEST_CAN_GET_DYE_HERE) - goto L_skip_introducing; - - mes "[Rauk the Alchemist]"; - mes "\"I'm learning the ancient science of the alchemy."; - mes "I already know how to create a couple of potions!!\""; - next; - - mes "[Rauk the Alchemist]"; - mes "\"Do you want me to create one for you?\""; - next; - - if (QUEST_clothdyer_knowsdye == 1) - goto L_pre_dyeing; - - goto L_certain_condition; - -L_skip_introducing: - mes "[Rauk the Alchemist]"; - mes "\"Hello, welcome back! Are you interested in dyes again, or in one of my potions?\""; - next; - - set @menuitems$[@c], "Dye, please."; - set @menuID[@c], @CHOICE_DYE; - set @c, @c + 1; - - goto L_certain_condition; - -L_pre_dyeing: - set @menuitems$[@c], "Actually, can you make dye?"; - set @menuID[@c], @CHOICE_DYEING_INTRO; - set @c, @c + 1; - -L_certain_condition: - if (@Q_status == @SETZER_INITIAL) - goto L_main_menu; - set @menuitems$[@c], "Can you make monster oil?"; - set @menuID[@c], @CHOICE_MONSTER_OIL; - set @c, @c + 1; - -L_main_menu: - set @menuitems$[@c], "No thanks."; - set @menuID[@c], @CHOICE_ABORT; - set @c, @c + 1; - - menu - @menuitems$[0], -, - @menuitems$[1], -, - @menuitems$[2], -, - @menuitems$[3], -, - @menuitems$[4], -; - - set @menu, @menu - 1; - - if (@menu >= @c) goto L_abort; - if (@menuID[@menu] == @CHOICE_IRON) goto L_iron; - if (@menuID[@menu] == @CHOICE_CONCENTRATION) goto L_concentration; - if (@menuID[@menu] == @CHOICE_DYEING_INTRO) goto L_dyeing_intro; - if (@menuID[@menu] == @CHOICE_DYE) goto L_pick_colour; - if (@menuID[@menu] == @CHOICE_MONSTER_OIL) goto L_monster_oil; - if (@menuID[@menu] == @CHOICE_ABORT) goto L_abort; - -L_iron: - if(countitem(566) < 20) goto L_no_iron; - mes "[Rauk the Alchemist]"; - mes "\"Great! You brought me exactly what I need!"; - mes "Here is your Iron potion.\""; - delitem 566,20; - getitem 567,1; - close; - -L_concentration: - if(countitem(565) < 20) goto L_no_concentration; - mes "[Rauk the Alchemist]"; - mes "\"Great! You brought me exactly what I need!"; - mes "Here is your Concentration potion.\""; - delitem 565,20; - getitem 568,1; - close; - -L_no_iron: - mes "\"You have to bring me 20 small mushrooms.\""; - close; - -L_no_concentration: - mes "\"You have to bring me 20 petals.\""; - close; - -L_dyeing_intro: - mes "[Rauk the Alchemist]"; - mes "Rauk pauses for a moment."; - mes "\"Hmm, I'm not very good at that... I can only make simple dyes, the ones that you can use for cotton and wool.\""; - next; - mes "[Rauk the Alchemist]"; - mes "\"For the truly powerful ones that you can use to dye a person or an entire lake with, I would need a powerful catalyst, like an Obsidian Spork or a Wumpus Egg...\""; - mes "Rauk seems to be lost in his thoughts."; - next; - menu "I only want to dye clothes, though...", -, - "What's a 'Wumpus egg'?", L_wumpus_egg_intro, - "What's an 'Obsidian Spork'?", L_obsidian_spork_intro, - "Er, never mind...", L_abort; - mes "[Rauk the Alchemist]"; - mes "\"Oh, just for clothes? Well, that is easy. I can make red, yellow, light blue, orange, pink, green, dark blue, black and purple dye, if you can get me the ingredients for it.\""; - next; - set QUEST_clothdyer_knowsdye, 2; - goto L_pick_colour; - -L_wumpus_egg_intro: - mes "[Rauk the Alchemist]"; - mes "Rauk's eyes brighten up."; - mes "\"Ah, a wumpus egg is one of the most powerful catalysts out there, useful for transmutation and transchromation! Unfortunately the Common Wumpus is almost completely extinct these days, so they are hard to find."; - mes "Should you find one, please let me know-- I will pay well for one!\""; - next; - close; - -L_obsidian_spork_intro: - mes "[Rauk the Alchemist]"; - mes "Rauk scratches his head."; - mes "\"Hm, obsidian is a dark, glass-like material that you can normally find near volcanos. Shaping it isn't too hard, but shaping it without it losing its magical properties is almost impossible.\""; - next; - mes "[Rauk the Alchemist]"; - mes "\"Obsidian sporks are therefore hard to make, but they are said to be very useful in certain kinds of alchemy."; - mes "Should you find one, please let me know!\""; - next; - close; - -L_pick_colour: - menu "What are the ingredients you need?", L_description, - "Red", L_red, - "Yellow", L_yellow, - "Light blue", L_light_blue, - "Green", L_green, - "Orange", L_orange, - "Pink", L_pink, - "Dark blue", L_dark_blue, - "Black", L_black, - "Purple", L_purple, - "Dark Green", L_dark_green, - "Nothing, really.", L_abort; - close; - -L_description: - mes "[Rauk the Alchemist]"; - mes "\"The kinds of dyes I know are made from herbs-- alizarin for red, gamboge for yellow, cobalt for blue, and mauve as binding agent for dark colors.\""; - next; - mes "[Rauk the Alchemist]"; - mes "\"Some of the colors need more ingredients, including some that you can't find here, so I have to charge money for them."; - mes "Oh, and for a proper dark blue and purple I also need a pearl; without pearl dust they would not shimmer properly.\""; - next; - -L_description_quick: - menu "What do you need for red dye?", L_d_red, - "What do you need for yellow dye?", L_d_yellow, - "What do you need for light blue dye?", L_d_light_blue, - "What do you need for green dye?", L_d_green, - "What do you need for orange dye?", L_d_orange, - "What do you need for pink dye?", L_d_pink, - "What do you need for dark blue dye?", L_d_dark_blue, - "What do you need for black dye?", L_d_black, - "What do you need for purple dye?", L_d_purple, - "What do you need for dark green dye?", L_d_dark_green, - "Actually...", -; - - menu "Can you make some dye for me, please?", L_pick_colour, - "Where can I get the herbs?", L_d_herbs, - "Where can I find petals?", L_d_petals, - "Where can I find iron ore?", L_d_ore, - "Where can I find a pearl?", L_d_pearl, - "Where can I find maggot slime?", L_d_maggot_slime, - "I see. Thank you, and a good day to you!", L_abort; - close; - -L_d_herbs: - mes "[Rauk the Alchemist]"; - mes "\"Alizarin, mauve, cobalt and gamboge bushes grow in this general area. I haven't seen them nearby, but take a look around; I am sure you will find some.\""; - next; - goto L_description_quick; - -L_d_petals: - mes "[Rauk the Alchemist]"; - mes "\"Just take some from the flowers around here. But be careful, they seem to be a bit fond of them.\""; - next; - goto L_description_quick; - -L_d_ore: - mes "[Rauk the Alchemist]"; - mes "\"Iron ore you should be able to find in some mine, I think. That's where people usually get it from, I have been told.\""; - next; - goto L_description_quick; - -L_d_pearl: - mes "[Rauk the Alchemist]"; - mes "\"A pearl... hm, that might be tricky. You normally find them in clams, but I haven't seen many of those here in the woodlands.\""; - next; - goto L_description_quick; - -L_d_maggot_slime: - mes "[Rauk the Alchemist]"; - mes "\"As the name might have given away already, maggot slime is most easily obtained from maggots. Still, there are some other creatures-- such as bats-- that secrete a similar kind of slime that for alchemistic purposes is equivalent.\""; - next; - goto L_description_quick; - -L_intermediate: - menu "Can you make some dye for me?", L_pick_colour, - "Can you describe the ingredients?", L_description_quick, - "Never mind.", L_abort; - close; - -L_ok: - mes "[Rauk the Alchemist]"; - mes "\"Here is your dye. Remember to use all of it at once or the color may bleach out.\""; - next; - goto L_pick_colour; - -L_red: - if (countitem(@RED) < 10) goto L_red_fail; - delitem @RED, 10; - getitem 690, 1; - goto L_ok; - -L_red_fail: - mes "[Rauk the Alchemist]"; - mes "\"Hmm, sorry, but I do need ten alizarin leaves to make red dye.\""; - next; - goto L_intermediate; - -L_d_red: - mes "[Rauk the Alchemist]"; - mes "\"Red dye is fairly simple to make. Bring me ten leaves of alizarin, and I can brew it for you right away.\""; - next; - goto L_intermediate; - -L_yellow: - if (countitem(@YELLOW) < 10) goto L_yellow_fail; - delitem @YELLOW, 10; - getitem 693, 1; - goto L_ok; - -L_yellow_fail: - mes "[Rauk the Alchemist]"; - mes "\"Without enough gamboge leaves-- I would need at least ten--, I can't make yellow dye for you.\""; - next; - goto L_intermediate; - -L_d_yellow: - mes "[Rauk the Alchemist]"; - mes "\"Yellow dye is no more than gamboge extract. If you get me ten gamboge leaves, I can make it easily.\""; - next; - goto L_intermediate; - -L_light_blue: - if (countitem(@BLUE) < 10) goto L_light_blue_fail; - delitem @BLUE, 10; - getitem 694, 1; - goto L_ok; - -L_light_blue_fail: - mes "[Rauk the Alchemist]"; - mes "\"Sorry, but I won't give it to you for less than ten cobalt leaves.\""; - next; - goto L_intermediate; - -L_d_light_blue: - mes "[Rauk the Alchemist]"; - mes "\"Light blue dye is what you get if you let cobalt leaves sit in alcohol over night. I have some here and will trade it for ten fresh cobalt leaves.\""; - next; - goto L_intermediate; - -L_green: - if (countitem(@BLUE) < 20) goto L_green_fail; - if (countitem(@YELLOW) < 20) goto L_green_fail; - if (zeny < 1000) goto L_green_fail; - delitem @BLUE, 20; - delitem @YELLOW, 20; - set zeny, zeny - 1000; - getitem 691, 1; - goto L_ok; - -L_green_fail: - mes "[Rauk the Alchemist]"; - mes "\"No... I need enough gamboge and cobalt to make your dye.\""; - mes "\"Twenty gamboge leaves, twenty cobalt leaves, and 1000 GP should be sufficient.\""; - next; - goto L_intermediate; - -L_d_green: - mes "[Rauk the Alchemist]"; - mes "\"Green dye is a little tricky to make, since you have to boil gamboge leaves at just the right temperature while stirring in a cobalt ester."; - mes "Making the cobalt ester is not easy, and every time I try I end up melting a crystal flask beyond repair...\""; - next; - mes "[Rauk the Alchemist]"; - mes "\"Thus, I will need twenty gamboge leaves, twenty cobalt leaves, and 1000 GP for materials."; - next; - goto L_intermediate; - -L_orange: - if (countitem(@RED) < 10) goto L_orange_fail; - if (countitem(@YELLOW) < 10) goto L_orange_fail; - if (countitem(@ORE) < 2) goto L_orange_fail; - if (zeny < 1000) goto L_orange_fail; - delitem @RED, 10; - delitem @YELLOW, 10; - delitem @ORE, 2; - set zeny, zeny - 1000; - getitem 697, 1; - goto L_ok; - -L_orange_fail: - mes "[Rauk the Alchemist]"; - mes "\"I'm sorry, but I need 1000 GP, two chunks of iron ore, and twenty each of gamboge and alizarin leaves.\""; - next; - goto L_intermediate; - -L_d_orange: - mes "[Rauk the Alchemist]"; - mes "\"Orange dye is fun to make, but it requires some burnt iron, and also consummate sulphur powder, which you cannot get here easily."; - mes "\"Still, for 1000 GP, two pieces of iron ore, ten alizarin leaves and ten gamboge leaves, I can make you a vial of orange dye.\""; - next; - goto L_intermediate; - -L_pink: - if (countitem(@RED) < 10) goto L_pink_fail; - if (countitem(@PETAL) < 6) goto L_pink_fail; - if (zeny < 1000) goto L_pink_fail; - delitem @RED, 10; - delitem @PETAL, 6; - set zeny, zeny - 1000; - getitem 695, 1; - goto L_ok; - -L_pink_fail: - mes "[Rauk the Alchemist]"; - mes "\"No, you don't have all I need, and that would be ten alizarin leaves, six flower petals, and 1000 GP.\""; - next; - goto L_intermediate; - -L_d_pink: - mes "[Rauk the Alchemist]"; - mes "\"Pink dye... that's a funny one: you can't get proper pink out of the usual herbs. You do need ten leaves of alizarin, but you also need six pink flower petals."; - mes "To properly extract the pink from the petals, you have to boil it in concentrated utenum; I will have to charge 1000 GP for that.\""; - next; - goto L_intermediate; - -L_dark_blue: - if (countitem(@BLUE) < 100) goto L_dark_blue_fail; - if (countitem(@MAUVE) < 50) goto L_dark_blue_fail; - if (countitem(@PEARL) < 1) goto L_dark_blue_fail; - if (zeny < 10000) goto L_dark_blue_fail; - delitem @BLUE, 100; - delitem @MAUVE, 50; - delitem @PEARL, 1; - set zeny, zeny - 10000; - getitem 692, 1; - goto L_ok; - -L_dark_blue_fail: - mes "[Rauk the Alchemist]"; - mes "\"I will need all of the ingredients to make dark blue dye for you.\""; - mes "\"I need 100 cobalt leaves, 50 mauve leaves, one pearl, and 10,000 GP.\""; - next; - goto L_intermediate; - -L_d_dark_blue: - mes "[Rauk the Alchemist]"; - mes "\"Dark blue dye is one of the trickiest ones. You need concentrated extract from 100 leaves of cobalt and 50 mauve leaves for proper binding."; - mes "For the right shimmer, a pearl is indispensible, and the most expensive part is a rare kind of ayanamian sapphire dust that I have to charge 10,000 GP for.\""; - next; - goto L_intermediate; - -L_purple: - if (countitem(@BLUE) < 100) goto L_purple_fail; - if (countitem(@RED) < 100) goto L_purple_fail; - if (countitem(@MAUVE) < 20) goto L_purple_fail; - if (countitem(@PEARL) < 1) goto L_purple_fail; - if (zeny < 40000) goto L_purple_fail; - delitem @BLUE, 100; - delitem @RED, 100; - delitem @MAUVE, 20; - delitem @PEARL, 1; - set zeny, zeny - 40000; - getitem 698, 1; - goto L_ok; - -L_purple_fail: - mes "[Rauk the Alchemist]"; - mes "\"No... I don't think that you have enough ingredients for this. Let me check my notes.\""; - mes "\"What I need are 100 cobalt leaves, 100 alizarin leaves, 20 mauve leaves, one pearl, and 40,000 GP.\""; - next; - goto L_intermediate; - -L_d_purple: - mes "[Rauk the Alchemist]"; - mes "\"Hm, Purple dye... proper Tritan Purple is hard to make. Fortunately, the correct recipe has survived... but some ingredients are quite costly."; - mes "I can't even tell you why, unfortunately, since this is a bit of an alchemistic secret, and I really don't want to argue this out with people who can turn my nose into a rhubarb.\""; - next; - mes "[Rauk the Alchemist]"; - mes "\"Still, I can make it for you, out of 100 cobalt leaves, 100 alizarin leaves, 20 mauve leaves, one pearl, and 40,000 GP. Some other ingredients are covered by the GP.\""; - next; - goto L_intermediate; - -L_black: - if (countitem(@BLUE) < 40) goto L_black_fail; - if (countitem(@RED) < 40) goto L_black_fail; - if (countitem(@YELLOW) < 40) goto L_black_fail; - if (countitem(@MAUVE) < 40) goto L_black_fail; - if (zeny < 20000) goto L_black_fail; - delitem @BLUE, 40; - delitem @RED, 40; - delitem @YELLOW, 40; - delitem @MAUVE, 40; - set zeny, zeny - 20000; - getitem 696, 1; - goto L_ok; - -L_black_fail: - mes "[Rauk the Alchemist]"; - mes "\"I am sorry, but you don't have all the items I need to make black dye. I need fourty leaves of alizarin, cobalt, gamboge and mauve each, and 20,000 GP.\""; - next; - goto L_intermediate; - -L_d_black: - mes "[Rauk the Alchemist]"; - mes "\"Black? Ah! such a wonderful choice of color. It's my favorite! Well, if you too want something black, I would be delighted to make you some black dye."; - mes "Just bring me 40 leaves each of cobalt, alizarin, gamboge and mauve.\""; - next; - mes "[Rauk the Alchemist]"; - mes "\"Oh, and 20,000 GP for the charcoal and diamond dust mixture you need to keep the mauve smell out.\""; - next; - goto L_intermediate; - -L_dark_green: - if (QUEST_clothdyer_knowsdye != @QUEST_HAS_SOLVED_DYE_PUZZLE) - goto L_d_dark_green; - if (countitem(@BLUE) < 10) goto L_dark_green_fail; - if (countitem(@YELLOW) < 10) goto L_dark_green_fail; - if (countitem(@MAUVE) < 10) goto L_dark_green_fail; - if (countitem(@MAGGOTSLIME) < 1) goto L_dark_green_fail; - if (zeny < 1000) goto L_dark_green_fail; - delitem @BLUE, 10; - delitem @MAUVE, 10; - delitem @YELLOW, 10; - delitem @MAGGOTSLIME, 1; - set zeny, zeny - 1000; - getitem 699, 1; - goto L_ok; - -L_dark_green_fail: - mes "[Rauk the Alchemist]"; - mes "Rauk frowns as he examines the items you hand him."; - mes "\"No, this will not do. I need ten gamboge leaves, ten cobalt leaves, ten mauve leaves, slime from one maggot, and 1000 GP.\""; - next; - goto L_intermediate; - -L_d_dark_green: - mes "[Rauk the Alchemist]"; - if (QUEST_clothdyer_knowsdye != @QUEST_HAS_SOLVED_DYE_PUZZLE) - goto L_d_dark_green_quest; - mes "\"Since we have figured out how much maggot slime we need for you, all you have to bring me are 1000 GP, one maggot slime, and ten leaves each of mauve, cobalt, and gamboge.\""; - next; - goto L_intermediate; - -L_d_dark_green_quest: - mes "\"Ah, dark green... dark green dye is actually simple to make, except for one tiny little problem: dark green clothes fade very quickly when they touch human skin. By far the best way to fixate the color is argentum powder, mixed with dark green dye essence extracted from maggot slime.\""; - next; - mes "[Rauk the Alchemist]"; - mes "\"But just how much maggot slime goes into the fixative and how much into the rest of the mixture varies completely for every individual. We will have to figure out just how many thousandth ounces it is for you before I can make dark green dye for you.\""; - next; - if (QUEST_clothdyer_knowsdye == @QUEST_CAN_GET_DYE_HERE) - set QUEST_clothdyer_knowsdye, (rand(1000) + @QUEST_GUESS_BASE); - -L_d_dark_green_q_main: - menu "Uh... no thanks.", L_intermediate, - "So nobody else can wear clothes I dye?", L_dark_green_q_wear, - "OK, what should I do?", L_dark_green_q_explain, - "Let's figure it out!", L_dark_green_q_guess_0; - close; - -L_dark_green_q_wear: - mes "[Rauk the Alchemist]"; - mes "\"The color stabilises after a week or so."; - mes "Others can wear the clothes you have dyed-- just make sure that you wear those clothes for a week before passing them on.\""; - next; - goto L_d_dark_green_q_main; - -L_dark_green_q_explain2: - mes "[Rauk the Alchemist]"; - mes "Rauk blinks."; - mes "\"Very well. It works like this: you give me a maggot slime and tell me how many thousandth parts go into one part of the dye potion.\""; - next; - mes "[Rauk the Alchemist]"; - mes "\"Then we try whether that was the right ratio. I will tell you if you guessed right, but if you were wrong, I will tell you whether you guessed too high or too low.\""; - next; - mes "[Rauk the Alchemist]"; - mes "\"With enough slimes and enough tries we should be able to figure out just how much you need.\""; - next; - menu "Er... can you explain that again?", L_dark_green_q_explain2, - "Let's do it!", L_dark_green_q_guess_0, - "I don't have time for this.", L_intermediate; - close; - -L_dark_green_q_explain: - mes "[Rauk the Alchemist]"; - mes "\"We have to measure the balance between your light and your dark bile-- two of your humors-- and use that as the maggot slime concentration.\""; - mes "\"This will probably take several tries; for each try we need maggot slime from one maggot.\""; - next; - mes "[Rauk the Alchemist]"; - mes "\"Each time you tell me how many thousandth parts of one ounce of the concentrate you want to use in the fixative. I will stir the mixture appropriately and put the rest of the slime into the base mixture. We then put the two together, and you dip your finger in.\""; - next; - mes "[Rauk the Alchemist]"; - mes "\"If the mixture is too dark, then that means that we put too much maggot slime into the fixative. If it discolours, we put in too little. But if it retains its color, we are done.\""; - next; - mes "[Rauk the Alchemist]"; - mes "Rauk smiles."; - mes "\"But don't worry, I will happily do all this for free-- I rather enjoy these little games.\""; - next; - - menu "Er... can you explain that again?", L_dark_green_q_explain, - "Errr... what?", L_dark_green_q_explain2, - "Let's do it!", -, - "I don't have time for this.", L_intermediate; - -L_dark_green_q_guess_0: - if (countitem(@MAGGOTSLIME) < 1) - goto L_dark_green_q_noslime; - delitem @MAGGOTSLIME, 1; - - mes "[Rauk the Alchemist]"; - mes "Rauk fills your maggot slime into a small bottle and picks a glass bottle from within his robe."; - mes "\"Now we need to figure out just how many thousandths you need. First, tell me how many tenths of an ounce you want to put in.\""; - next; - - menu "none", -, - "1 tenth", -, - "2 tenths", -, - "3 tenths", -, - "4 tenths", -, - "5 tenths", -, - "6 tenths", -, - "7 tenths", -, - "8 tenths", -, - "9 tenths", -; - - set @menu, @menu - 1; - set @guess_accumulator, @menu * 100; - - mes "[Rauk the Alchemist]"; - if (@menu) - mes "Rauk pours a good-sized portion of maggot slime from the small bottle into the glass bottle."; - mes "\"We now have " + @guess_accumulator + " thousandths of an ounce. How many hundredths of an ounce should I add?\""; - next; - - menu "none", -, - "1 hundredth", -, - "2 hundredths", -, - "3 hundredths", -, - "4 hundredths", -, - "5 hundredths", -, - "6 hundredths", -, - "7 hundredths", -, - "8 hundredths", -, - "9 hundredths", -; - - set @menu, @menu - 1; - set @guess_accumulator, @guess_accumulator + (@menu * 10); - - mes "[Rauk the Alchemist]"; - if (@menu) - mes "Rauk pours a portion of maggot slime from the small bottle into the glass bottle."; - mes "\"These are now " + @guess_accumulator + " thousandths of an ounce. How many thousands more?\""; - next; - - menu "none", -, - "1 thousandth", -, - "2 thousandths", -, - "3 thousandths", -, - "4 thousandths", -, - "5 thousandths", -, - "6 thousandths", -, - "7 thousandths", -, - "8 thousandths", -, - "9 thousandths", -; - - set @menu, @menu - 1; - set @guess_accumulator, @guess_accumulator + @menu; - - mes "[Rauk the Alchemist]"; - if (@menu) - mes "Rauk pours a tiny amount of maggot slime from the small bottle into the glass bottle."; - mes "Rauk mixes some more ingredients into the bottles, stirs them, heats one of them and mixes the results together."; - next; - - mes "[Rauk the Alchemist]"; - mes "\"Please put your finger in.\""; - mes "Hesitantly. you stick your finger into the resulting brew. The mixture feels warm and smooth to the touch."; - next; - mes "[Rauk the Alchemist]"; - mes "You pull your finger out again."; - - if (@guess_accumulator + @QUEST_GUESS_BASE > QUEST_clothdyer_knowsdye) - goto L_dark_green_q_toomuch; - - if (@guess_accumulator + @QUEST_GUESS_BASE < QUEST_clothdyer_knowsdye) - goto L_dark_green_q_toolittle; - - // otherwise correct guess - - mes "Nothing seems to be happening with the mixture. Rauk's eyes lighten up."; - mes "\"This is it! You need precisely " + @guess_accumulator + " thousandts. Let me write this down...\""; - next; - mes "[Rauk the Alchemist]"; - mes "Rauk is beaming."; - mes "\"I can now make dark green dye for you. All I need will be slime from one maggot, ten gamboge leaves, ten cobalt leaves, ten mauve leaves, and 1000 GP for other ingredients.\""; - mes "[You gain 20,000 experience points]"; - getexp 20000, 0; - set QUEST_clothdyer_knowsdye, @QUEST_HAS_SOLVED_DYE_PUZZLE; - next; - goto L_intermediate; - -L_dark_green_q_toomuch: - mes "After only a second, the mixture begins to blacken. Rauk frowns."; - mes "\"That was too much... you need fewer than " + @guess_accumulator + " thousandths, I think."; - goto L_dark_green_q_again; - -L_dark_green_q_toolittle: - mes "Almost instantaneously, the mixture loses its colour and turns transparent. Rauk sighs."; - mes "\"That was too little. Next time, try more than " + @guess_accumulator + " thousandths."; - goto L_dark_green_q_again; - -L_dark_green_q_again: - mes "\"Should we try again?\""; - next; - menu "Yes!", L_dark_green_q_guess_0, - "No, I've had enough.", -; - close; - -L_dark_green_q_noslime: - mes "[Rauk the Alchemist]"; - mes "\"Oh, you don't have any maggot slime? That's unfortunate; I am out of it myself. Still it should be easy enough to find, just bring me one and we can continue testing.\""; - next; - goto L_intermediate; - -L_monster_oil: - mes "[Rauk the Alchemist]"; - mes "Rauk locks his eyes with you and continues in more serious tone."; - mes "\"I know how to create it, but you won't get it from me. It's far too dangerous; even the best alchemist may need multiple attempts and will risk blowing up! I can give you a recipe though, if you still are wanton.\""; - next; - menu - "Yes, tell me!", -, - "No, that sounds too dangerous.", L_abort; - mes "[Rauk the Alchemist]"; - mes "You will need a pearl, a pair of snake skins, two piles of volcanic ash, three black scorpion stingers-- and a golden scorpion stinger. In addition you must have plenty of herbs to stabilise the concoction; mauve, alizarin, cobalt and gamboge will do just fine."; - next; - mes "[Rauk the Alchemist]"; - mes "\"Take the pearl, skins, black stingers, ash, and cook briefly in a cauldron. Next add the mauve/alizarin/cobalt/gamboge as needed to stabilise into a black brew. Lastly, add the golden scorpion stinger and let boil briefly. And it's done.\""; - next; - mes "[Rauk the Alchemist]"; - mes "\"Good luck not blowing up!\""; - - set @Q_status, @Q_status | @SETZER_KNOWS_STINGER; - callsub L_Update_Var; - close; - -L_abort: - close; - - -L_Update_Var: - set QUEST_Forestbow_state, - (QUEST_Forestbow_state & ~(@Q_MASK) - | (@Q_status << @Q_SHIFT)); - return; -} diff --git a/npc/new_9-1-woodland/monsters.txt b/npc/new_9-1-woodland/monsters.txt deleted file mode 100644 index 52f1bc74..00000000 --- a/npc/new_9-1-woodland/monsters.txt +++ /dev/null @@ -1,34 +0,0 @@ -// Map: new_9-1 -// This is Central Woodland. -// - -new_9-1.gat,0,0,0,0 monster EvilMushroom 1013,25,0,0,Mob9::OnEvilMushroom -new_9-1.gat,0,0,0,0 monster Flower 1014,40,0,0,Mob9::OnFlower - -new_9-1.gat,0,0,0,0 monster Alizarin 1032,1,2700000,1800000,Mob9::OnAlizarin - -new_9-1.gat,0,0,0,0 monster SilkWorm 1035,2,60000,30000,Mob9::OnSilkWorm - -new_9-1.gat,0,0,0 script Mob9 -1,{ -OnEvilMushroom: - set @mobID, 1013; - callfunc "MobPoints"; - break; - -OnFlower: - set @mobID, 1014; - callfunc "MobPoints"; - break; - -OnAlizarin: - set @mobID, 1032; - callfunc "MobPoints"; - break; - -OnSilkWorm: - set @mobID, 1035; - callfunc "MobPoints"; - break; - - end; -} diff --git a/npc/new_9-1-woodland/oscar.txt b/npc/new_9-1-woodland/oscar.txt deleted file mode 100644 index f33e0e47..00000000 --- a/npc/new_9-1-woodland/oscar.txt +++ /dev/null @@ -1 +0,0 @@ -new_9-1.gat,87,34,0 shop Oscar 142,535:25,657:40 \ No newline at end of file diff --git a/npc/new_9-1-woodland/passages.txt b/npc/new_9-1-woodland/passages.txt deleted file mode 100644 index fa980cae..00000000 --- a/npc/new_9-1-woodland/passages.txt +++ /dev/null @@ -1,5 +0,0 @@ -new_9-1.gat,58,91 warp tofield 1,1,new_4-1.gat,15,15 -new_9-1.gat,47,102 warp tosouth 2,2,new_14-1.gat,50,25 -new_9-1.gat,124,61 warp warp1 1,3,new_18-1.gat,27,61 -new_9-1.gat,30,60 warp tomap29 0,3,new_29-1.gat,108,90 -new_9-1.gat,72,15 warp tomap26 2,1,new_26-1.gat,131,162 diff --git a/npc/scripts.conf b/npc/scripts.conf new file mode 100644 index 00000000..e10705cd --- /dev/null +++ b/npc/scripts.conf @@ -0,0 +1,51 @@ +// This is the main script import file + +// NPC Functions +npc: npc/functions/banker.txt +npc: npc/functions/barber.txt +npc: npc/functions/game_rules.txt +npc: npc/functions/inn.txt +npc: npc/functions/mob_points.txt +npc: npc/functions/process_equip.txt +npc: npc/functions/slot_machine.txt +npc: npc/functions/soul_menhir.txt + +import: npc/_import.txt + +// Christmas 2006 +// npc: npc/xmas/2006/xmas1.txt +// npc: npc/xmas/2006/xmas2.txt +// npc: npc/xmas/2006/xmas3.txt +// npc: npc/xmas/2006/xmas4.txt +// npc: npc/xmas/2006/xmas5.txt +// npc: npc/xmas/2006/xmas6.txt +// npc: npc/xmas/2006/xmas7.txt +// npc: npc/xmas/2006/xmas8.txt +// npc: npc/xmas/2006/xmas9.txt +// npc: npc/xmas/2006/xmas10.txt +// npc: npc/xmas/2006/xmas11.txt +// npc: npc/xmas/2006/xmas12.txt +// npc: npc/xmas/2006/xmas13.txt +// npc: npc/xmas/2006/xmas14.txt +// npc: npc/xmas/2006/xmas15.txt +// npc: npc/xmas/2006/xmas16.txt +// npc: npc/xmas/2006/xmas17.txt +// npc: npc/xmas/2006/xmas18.txt +// npc: npc/xmas/2006/xmas19.txt +// npc: npc/xmas/2006/xmas20.txt + +// Halloween 2007 +// npc: npc/halloween/2007/monsters.txt +// npc: npc/halloween/2007/summon.txt + +// Christmas 2007 +// npc: npc/xmas2007/pre-xmas.txt +// npc: npc/xmas2007/after-xmas.txt + +// Easter 2008 +// npc: npc/easter2008/monsters.txt +// npc: npc/easter2008/npc.txt + +// Halloween 2008 +// npc: npc/halloween/2008/monsters.txt +// npc: npc/halloween/2008/prize_master.txt diff --git a/npc/scripts.txt b/npc/scripts.txt deleted file mode 100644 index 4418817b..00000000 --- a/npc/scripts.txt +++ /dev/null @@ -1,320 +0,0 @@ -// This is the main script import file - -// Maps -map: new_39-1.gat -map: new_38-1.gat -map: new_37-1.gat -map: new_36-1.gat -map: new_35-1.gat -map: new_34-1.gat -map: new_33-1.gat -map: new_32-1.gat -map: new_31-1.gat -map: new_30-1.gat -map: new_29-1.gat -map: new_28-1.gat -map: new_27-1.gat -map: new_26-1.gat -map: new_25-1.gat -map: new_24-1.gat -map: new_23-1.gat -map: new_22-1.gat -map: new_21-1.gat -map: new_20-1.gat -map: new_19-1.gat -map: new_18-1.gat -map: new_17-1.gat -map: new_16-1.gat -map: new_15-1.gat -map: new_14-1.gat -map: new_13-1.gat -map: new_12-1.gat -map: new_11-1.gat -map: new_10-1.gat -map: new_9-1.gat -map: new_8-1.gat -map: new_7-1.gat -map: new_6-1.gat -map: new_5-1.gat -map: new_4-1.gat -map: new_3-1.gat -map: new_2-1.gat -map: new_1-1.gat - -// NPC Functions -npc: npc/functions/banker.txt -npc: npc/functions/barber.txt -npc: npc/functions/game_rules.txt -npc: npc/functions/inn.txt -npc: npc/functions/mob_points.txt -npc: npc/functions/process_equip.txt -npc: npc/functions/slot_machine.txt -npc: npc/functions/soul_menhir.txt - -// NPCs (ordered by map number). - -// new_1-1 Western desert -// npc: npc/western-desert/dark_mage.txt -npc: npc/new_1-1-western-desert/rogue.txt -npc: npc/new_1-1-western-desert/merchant.txt -npc: npc/new_1-1-western-desert/monsters.txt -npc: npc/new_1-1-western-desert/nomads.txt -npc: npc/new_1-1-western-desert/passages.txt - -// new-2_1 Cave level 1 -npc: npc/new_2-1-cave1/miners.txt -npc: npc/new_2-1-cave1/monsters.txt -npc: npc/new_2-1-cave1/passages.txt - -// new_3-1 Tulimshar -npc: npc/new_3-1-tulimshar/banker.txt -npc: npc/new_3-1-tulimshar/barber.txt -npc: npc/new_3-1-tulimshar/bard.txt -npc: npc/new_3-1-tulimshar/bleacher.txt -npc: npc/new_3-1-tulimshar/children.txt -npc: npc/new_3-1-tulimshar/constable.txt -npc: npc/new_3-1-tulimshar/elanore.txt -npc: npc/new_3-1-tulimshar/guards.txt -npc: npc/new_3-1-tulimshar/guide.txt -npc: npc/new_3-1-tulimshar/man.txt -npc: npc/new_3-1-tulimshar/merchant.txt -npc: npc/new_3-1-tulimshar/monster_guide.txt -npc: npc/new_3-1-tulimshar/monsters.txt -npc: npc/new_3-1-tulimshar/passages.txt -npc: npc/new_3-1-tulimshar/rewards_master.txt -npc: npc/new_3-1-tulimshar/rules.txt -npc: npc/new_3-1-tulimshar/sandra.txt -npc: npc/new_3-1-tulimshar/vincent.txt -npc: npc/new_3-1-tulimshar/soul-menhir.txt -npc: npc/new_3-1-tulimshar/workers.txt - -// new_4-1 Small bat cave -npc: npc/new_4-1-cave-small/hermit.txt -npc: npc/new_4-1-cave-small/monsters.txt -npc: npc/new_4-1-cave-small/passages.txt - -// new_5-1 Cave level 2 (Underground Palace) -npc: npc/new_5-1-cave2/chest.txt -npc: npc/new_5-1-cave2/monsters.txt -npc: npc/new_5-1-cave2/passages.txt - -// new_6-1 Arena -npc: npc/new_6-1-arena/guards.txt -npc: npc/new_6-1-arena/monsters.txt -npc: npc/new_6-1-arena/pvpflag.txt - -// new_7-1 Eastern desert -npc: npc/new_7-1-eastern-desert/monsters.txt -npc: npc/new_7-1-eastern-desert/passages.txt -npc: npc/new_7-1-eastern-desert/npcs.txt - -// new_8-1 Tulimshar indoor -npc: npc/new_8-1-tulimshar/casino.txt -npc: npc/new_8-1-tulimshar/omar.txt -npc: npc/new_8-1-tulimshar/passages.txt -npc: npc/new_8-1-tulimshar/phaet.txt -npc: npc/new_8-1-tulimshar/shops.txt -npc: npc/new_8-1-tulimshar/troupe_leader.txt - -// new_9-1 Woodland -npc: npc/new_9-1-woodland/alchemist.txt -npc: npc/new_9-1-woodland/monsters.txt -npc: npc/new_9-1-woodland/passages.txt -npc: npc/new_9-1-woodland/oscar.txt - -// new_10-1 Xmas snow map -npc: npc/new_10-1-xmas/monsters.txt -npc: npc/new_10-1-xmas/passages.txt -// npc: npc/new_10-1-xmas/santa.txt -npc: npc/new_10-1-xmas/snowman.txt -npc: npc/new_10-1-xmas/taro.txt - -// new_11-1 Snow village -// npc: npc/new_11-1-snow-village/monsters.txt -npc: npc/new_11-1-snow-village/sexchanger.txt -npc: npc/new_11-1-snow-village/startrek.txt -npc: npc/new_11-1-snow-village/passages.txt -npc: npc/new_11-1-snow-village/soul-menhir.txt -npc: npc/new_11-1-snow-village/amrak.txt - -// new_12-1 Ice cave -npc: npc/new_12-1-ice-cave/monsters.txt -npc: npc/new_12-1-ice-cave/passages.txt - -// new_13-1 Snow village shops. -npc: npc/new_13-1-snow-village-shops/shops.txt -npc: npc/new_13-1-snow-village-shops/passages.txt -npc: npc/new_13-1-snow-village-shops/furquest.txt - -// new_14-1 South-woodland -npc: npc/new_14-1-south-woodland/monsters.txt -npc: npc/new_14-1-south-woodland/passages.txt - -// new_15-1 Woodland-desert link -npc: npc/new_15-1-woodland-desert/monsters.txt -npc: npc/new_15-1-woodland-desert/passages.txt - -// new_16-1 South-west woodland -npc: npc/new_16-1-south-east-woodland/monsters.txt -npc: npc/new_16-1-south-east-woodland/passages.txt - -// new_17-1 Big cave -npc: npc/new_17-1-cave-big/monsters.txt -npc: npc/new_17-1-cave-big/passages.txt - -// new_18-1 Woodland village surroundings -npc: npc/new_18-1-woodland-village/monsters.txt -npc: npc/new_18-1-woodland-village/passages.txt -npc: npc/new_18-1-woodland-village/george.txt -npc: npc/new_18-1-woodland-village/hinnak.txt - -// new_19-1 Woodland village -npc: npc/new_19-1-woodland-village/jack.txt -npc: npc/new_19-1-woodland-village/milly.txt -npc: npc/new_19-1-woodland-village/old_man.txt -npc: npc/new_19-1-woodland-village/old_woman.txt -npc: npc/new_19-1-woodland-village/passages.txt -npc: npc/new_19-1-woodland-village/sabine.txt -npc: npc/new_19-1-woodland-village/soul-menhir.txt - -// new_20-1 Woodland village indoor -npc: npc/new_20-1-woodland-village/alan.txt -npc: npc/new_20-1-woodland-village/doctor.txt -npc: npc/new_20-1-woodland-village/drunks.txt -npc: npc/new_20-1-woodland-village/inspector.txt -npc: npc/new_20-1-woodland-village/kfahr.txt -npc: npc/new_20-1-woodland-village/misc.txt -npc: npc/new_20-1-woodland-village/nicholas.txt -npc: npc/new_20-1-woodland-village/nurse.txt -npc: npc/new_20-1-woodland-village/passages.txt -npc: npc/new_20-1-woodland-village/richard.txt -npc: npc/new_20-1-woodland-village/selim.txt -npc: npc/new_20-1-woodland-village/shops.txt -npc: npc/new_20-1-woodland-village/waitress.txt - -// new_21-1 Ice cave 2 -npc: npc/new_21-1-ice-cave2/monsters.txt -npc: npc/new_21-1-ice-cave2/passages.txt - -// new_22-1 Snake cave -npc: npc/new_22-1-snake-cave/monsters.txt -npc: npc/new_22-1-snake-cave/passages.txt - -// new_23-1 Dimonds Cove -npc: npc/new_23-1-dimonds-cove/passages.txt -npc: npc/new_23-1-dimonds-cove/dimonds.txt -npc: npc/new_23-1-dimonds-cove/doug.txt -npc: npc/new_23-1-dimonds-cove/loratay.txt -npc: npc/new_23-1-dimonds-cove/workers.txt - -// new_24-1 Eastern desert mountain passage -npc: npc/new_24-1-eastern-desert-mountain-passage/mika.txt -npc: npc/new_24-1-eastern-desert-mountain-passage/monsters.txt -npc: npc/new_24-1-eastern-desert-mountain-passage/pachua.txt -npc: npc/new_24-1-eastern-desert-mountain-passage/passages.txt - -// new_25-1 Eastern desert cave -npc: npc/new_25-1-eastern-desert-cave/monsters.txt -npc: npc/new_25-1-eastern-desert-cave/passages.txt - -// new_26-1 Forest Hill 1 -npc: npc/new_26-1-hill1/monsters.txt -npc: npc/new_26-1-hill1/passages.txt -npc: npc/new_26-1-hill1/shops.txt - -// new_27-1 Forest Hill 2 (Cave) -npc: npc/new_27-1-hill2/monsters.txt -npc: npc/new_27-1-hill2/passages.txt - -// new_28-1 Forest east of map 26 -npc: npc/new_28-1-hillwest/passages.txt -npc: npc/new_28-1-hillwest/monsters.txt - -// new_29-1 Forest west of map 9 -npc: npc/new_29-1-west-woodland/passages.txt -npc: npc/new_29-1-west-woodland/monsters.txt -npc: npc/new_29-1-west-woodland/taro.txt -npc: npc/new_29-1-west-woodland/wedding-officiator.txt - -// new_30-1 Caves for map 29 -npc: npc/new_30-1-west-woodland-cave/passages.txt -npc: npc/new_30-1-west-woodland-cave/monsters.txt - -// new_31-1 Forest west of map 14 -npc: npc/new_31-1-southwest-woodland/passages.txt -npc: npc/new_31-1-southwest-woodland/monsters.txt -npc: npc/new_31-1-southwest-woodland/alice.txt - -// new_32-1 Forest south of map 14 -npc: npc/new_32-1-south-woodland-2/passages.txt -npc: npc/new_32-1-south-woodland-2/monsters.txt - -// new_33-1 Forest north of map 28 -npc: npc/new_33-1-hill-northwest/passages.txt -npc: npc/new_33-1-hill-northwest/monsters.txt - -// new_34-1 Beach west of Tulimshar -npc: npc/new_34-1-north-beach/passages.txt -npc: npc/new_34-1-north-beach/monsters.txt - -// new_35-1 Cave beneath Hurnscald -npc: npc/new_35-1-woodland-village/passages.txt -npc: npc/new_35-1-woodland-village/monsters.txt - -// new_36-1 Magic house in forest 28 -npc: npc/new_36-1-magic-house/passages.txt -npc: npc/new_36-1-magic-house/wizard.txt -npc: npc/new_36-1-magic-house/apprentice.txt -npc: npc/new_36-1-magic-house/notes.txt - -// new_37-1 Mine north of Hurnscald -npc: npc/new_37-1-woodland-mine/miners.txt -npc: npc/new_37-1-woodland-mine/monsters.txt -npc: npc/new_37-1-woodland-mine/passages.txt - -// new_38-1 Mines north of Hurnscald (indoor) -npc: npc/new_38-1-woodland-mine/angus.txt -npc: npc/new_38-1-woodland-mine/books.txt -npc: npc/new_38-1-woodland-mine/caul.txt -npc: npc/new_38-1-woodland-mine/miners.txt -npc: npc/new_38-1-woodland-mine/monsters.txt -npc: npc/new_38-1-woodland-mine/passages.txt -npc: npc/new_38-1-woodland-mine/receptionist.txt - -// Christmas 2006 -// npc: npc/xmas/xmas1.txt -// npc: npc/xmas/xmas2.txt -// npc: npc/xmas/xmas3.txt -// npc: npc/xmas/xmas4.txt -// npc: npc/xmas/xmas5.txt -// npc: npc/xmas/xmas6.txt -// npc: npc/xmas/xmas7.txt -// npc: npc/xmas/xmas8.txt -// npc: npc/xmas/xmas9.txt -// npc: npc/xmas/xmas10.txt -// npc: npc/xmas/xmas11.txt -// npc: npc/xmas/xmas12.txt -// npc: npc/xmas/xmas13.txt -// npc: npc/xmas/xmas14.txt -// npc: npc/xmas/xmas15.txt -// npc: npc/xmas/xmas16.txt -// npc: npc/xmas/xmas17.txt -// npc: npc/xmas/xmas18.txt -// npc: npc/xmas/xmas19.txt -// npc: npc/xmas/xmas20.txt - -// Halloween 2007 -// npc: npc/halloween/2007/monsters.txt -// npc: npc/halloween/2007/summon.txt - -// Christmas 2007 -// npc: npc/xmas2007/pre-xmas.txt -// npc: npc/xmas2007/after-xmas.txt - -// Easter 2008 -// npc: npc/easter2008/monsters.txt -// npc: npc/easter2008/npc.txt - -// Halloween 2008 -// npc: npc/halloween/2008/monsters.txt -// npc: npc/halloween/2008/prize_master.txt diff --git a/npc/xmas/2006/xmas1.txt b/npc/xmas/2006/xmas1.txt new file mode 100644 index 00000000..814dd9cc --- /dev/null +++ b/npc/xmas/2006/xmas1.txt @@ -0,0 +1,246 @@ +new_1-1.gat,41,60,0 script Xmas1 105,{ + if(XMASQUEST1 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST1,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas10.txt b/npc/xmas/2006/xmas10.txt new file mode 100644 index 00000000..8ba50ae0 --- /dev/null +++ b/npc/xmas/2006/xmas10.txt @@ -0,0 +1,243 @@ +new_2-1.gat,57,64,0 script Xmas10 105,{ + if(XMASQUEST10 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas. The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me. The kind will depend on whether you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST10,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas11.txt b/npc/xmas/2006/xmas11.txt new file mode 100644 index 00000000..212a5225 --- /dev/null +++ b/npc/xmas/2006/xmas11.txt @@ -0,0 +1,246 @@ +new_3-1.gat,73,51,0 script Xmas11 105,{ + if(XMASQUEST11 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST11,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas12.txt b/npc/xmas/2006/xmas12.txt new file mode 100644 index 00000000..a8527eaf --- /dev/null +++ b/npc/xmas/2006/xmas12.txt @@ -0,0 +1,246 @@ +new_4-1.gat,26,51,0 script Xmas12 105,{ + if(XMASQUEST12 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST12,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas13.txt b/npc/xmas/2006/xmas13.txt new file mode 100644 index 00000000..534403da --- /dev/null +++ b/npc/xmas/2006/xmas13.txt @@ -0,0 +1,246 @@ +new_5-1.gat,68,95,0 script Xmas13 105,{ + if(XMASQUEST13 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST13,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas14.txt b/npc/xmas/2006/xmas14.txt new file mode 100644 index 00000000..2f1269a4 --- /dev/null +++ b/npc/xmas/2006/xmas14.txt @@ -0,0 +1,246 @@ +new_7-1.gat,46,46,0 script Xmas14 105,{ + if(XMASQUEST14 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST14,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas15.txt b/npc/xmas/2006/xmas15.txt new file mode 100644 index 00000000..32dc490c --- /dev/null +++ b/npc/xmas/2006/xmas15.txt @@ -0,0 +1,246 @@ +new_6-1.gat,112,54,0 script Xmas15 105,{ + if(XMASQUEST15 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST15,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas16.txt b/npc/xmas/2006/xmas16.txt new file mode 100644 index 00000000..c072684b --- /dev/null +++ b/npc/xmas/2006/xmas16.txt @@ -0,0 +1,246 @@ +new_8-1.gat,37,24,0 script Xmas16 105,{ + if(XMASQUEST16 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST16,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas17.txt b/npc/xmas/2006/xmas17.txt new file mode 100644 index 00000000..292744ef --- /dev/null +++ b/npc/xmas/2006/xmas17.txt @@ -0,0 +1,246 @@ +new_9-1.gat,106,58,0 script Xmas17 105,{ + if(XMASQUEST17 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST17,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas18.txt b/npc/xmas/2006/xmas18.txt new file mode 100644 index 00000000..e78e1b0c --- /dev/null +++ b/npc/xmas/2006/xmas18.txt @@ -0,0 +1,246 @@ +new_1-1.gat,97,18,0 script Xmas18 105,{ + if(XMASQUEST18 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST18,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas19.txt b/npc/xmas/2006/xmas19.txt new file mode 100644 index 00000000..3c60aab7 --- /dev/null +++ b/npc/xmas/2006/xmas19.txt @@ -0,0 +1,246 @@ +new_11-1.gat,90,83,0 script Xmas19 105,{ + if(XMASQUEST19 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST19,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas2.txt b/npc/xmas/2006/xmas2.txt new file mode 100644 index 00000000..bba2b0c8 --- /dev/null +++ b/npc/xmas/2006/xmas2.txt @@ -0,0 +1,246 @@ +new_10-1.gat,99,42,0 script Xmas2 105,{ + if(XMASQUEST2 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST2,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas20.txt b/npc/xmas/2006/xmas20.txt new file mode 100644 index 00000000..0bc045db --- /dev/null +++ b/npc/xmas/2006/xmas20.txt @@ -0,0 +1,246 @@ +new_3-1.gat,55,28,0 script Xmas20 105,{ + if(XMASQUEST20 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST20,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas3.txt b/npc/xmas/2006/xmas3.txt new file mode 100644 index 00000000..28dbc605 --- /dev/null +++ b/npc/xmas/2006/xmas3.txt @@ -0,0 +1,246 @@ +new_11-1.gat,67,62,0 script Xmas3 105,{ + if(XMASQUEST3 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST3,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas4.txt b/npc/xmas/2006/xmas4.txt new file mode 100644 index 00000000..c9f13e3e --- /dev/null +++ b/npc/xmas/2006/xmas4.txt @@ -0,0 +1,246 @@ +new_12-1.gat,24,50,0 script Xmas4 105,{ + if(XMASQUEST4 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST4,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas5.txt b/npc/xmas/2006/xmas5.txt new file mode 100644 index 00000000..7269717c --- /dev/null +++ b/npc/xmas/2006/xmas5.txt @@ -0,0 +1,246 @@ +new_13-1.gat,22,32,0 script Xmas5 105,{ + if(XMASQUEST5 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST5,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas6.txt b/npc/xmas/2006/xmas6.txt new file mode 100644 index 00000000..da47ca1f --- /dev/null +++ b/npc/xmas/2006/xmas6.txt @@ -0,0 +1,246 @@ +new_14-1.gat,92,37,0 script Xmas6 105,{ + if(XMASQUEST6 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST6,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas7.txt b/npc/xmas/2006/xmas7.txt new file mode 100644 index 00000000..7bcc2983 --- /dev/null +++ b/npc/xmas/2006/xmas7.txt @@ -0,0 +1,246 @@ +new_15-1.gat,130,66,0 script Xmas7 105,{ + if(XMASQUEST7 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST7,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas8.txt b/npc/xmas/2006/xmas8.txt new file mode 100644 index 00000000..47752239 --- /dev/null +++ b/npc/xmas/2006/xmas8.txt @@ -0,0 +1,246 @@ +new_16-1.gat,125,37,0 script Xmas8 105,{ + if(XMASQUEST8 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST8,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2006/xmas9.txt b/npc/xmas/2006/xmas9.txt new file mode 100644 index 00000000..f27629d8 --- /dev/null +++ b/npc/xmas/2006/xmas9.txt @@ -0,0 +1,246 @@ +new_17-1.gat,71,34,0 script Xmas9 105,{ + if(XMASQUEST9 == 1) goto L_only_once; + mes "[Helper Santa]"; + mes "It's Christmas."; + mes "The time for gifts and family reunions"; + next; + + mes "[Helper Santa]"; + mes "You get a gift from me."; + mes "The kind will depend on whether"; + mes "you've been nice or naughty."; + next; + + menu "Want one?",L_nicenaughty,"No thanks.",L_no; + +L_nicenaughty: + set XMASQUEST9,1; + mes "[Helper Santa]"; + mes "In my book you're marked as..."; + next; + set @TEMP,rand(9); + if(@TEMP == 6) goto L_naughty; + goto L_nice; + +L_nice: + mes "[Helper Santa]"; + mes "...nice!"; + set @TEMP,rand(17); + next; + if(@TEMP == 0) goto L_nice_0; + if(@TEMP == 1) goto L_nice_1; + if(@TEMP == 2) goto L_nice_2; + if(@TEMP == 3) goto L_nice_3; + if(@TEMP == 4) goto L_nice_4; + if(@TEMP == 5) goto L_nice_5; + if(@TEMP == 6) goto L_nice_6; + if(@TEMP == 7) goto L_nice_7; + if(@TEMP == 8) goto L_nice_8; + if(@TEMP == 9) goto L_nice_9; + if(@TEMP == 10) goto L_nice_10; + if(@TEMP == 11) goto L_nice_11; + if(@TEMP == 12) goto L_nice_12; + if(@TEMP == 13) goto L_nice_13; + if(@TEMP == 14) goto L_nice_14; + if(@TEMP == 15) goto L_nice_15; + if(@TEMP == 16) goto L_nice_16; + if(@TEMP == 17) goto L_nice_17; + +L_naughty: + mes "[Helper Santa]"; + mes "...naughty!"; + set @TEMP,rand(6); + next; + if(@TEMP == 0) goto L_naughty_0; + if(@TEMP == 1) goto L_naughty_1; + if(@TEMP == 2) goto L_naughty_2; + if(@TEMP == 3) goto L_naughty_3; + if(@TEMP == 4) goto L_naughty_4; + if(@TEMP == 5) goto L_naughty_5; + if(@TEMP == 6) goto L_naughty_6; + +L_naughty_0: + mes "[Helper Santa]"; + mes "Ho ho ho!"; + mes "I borrowed some of your money for"; + mes "my present budget this year."; + set Zeny,Zeny-rand(500,1500); + close; + +L_naughty_1: + mes "[Helper Santa]"; + mes "You will get a spanking"; + next; + mes "[Helper Santa]"; + mes "Remember to be nice to people!"; + gmcommand strcharinfo(0)+":@die "; + close; + +L_naughty_2: + mes "[Helper Santa]"; + mes "But I won't mind!"; + mes "Have a char reset as a present." + next; + mes "[Helper Santa]"; + mes "Abracadabra!"; + gmcommand strcharinfo(0)+":@charstreset "+strcharinfo(0); + gmcommand strcharinfo(0)+":@charskreset "+strcharinfo(0); + close; + +L_naughty_3: + mes "[Helper Santa]"; + mes "You will now get randomly warped!"; + next; + gmcommand strcharinfo(0)+":@jump "; + mes "[Helper Santa]"; + mes "Merry Christmas!"; + close; + +L_naughty_4: + mes "[Helper Santa]"; + mes "Your sex will now change!"; + mes "You always get naughty things for naughty things."; + mes "It's karma!"; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@charchangesex "+strcharinfo(0); + close; + +L_naughty_5: + mes "[Helper Santa]"; + mes "I'll now kill all monsters on this map."; + next; + mes "[Helper Santa]"; + mes "Done!"; + gmcommand strcharinfo(0)+":@killmonster2 "; + close; + +L_naughty_6: + mes "[Helper Santa]"; + mes "I'll diss you around the server."; + next; + mes "[Helper Santa]"; + mes "Ho ho ho!"; + gmcommand strcharinfo(0)+":@kami "+strcharinfo(0)+" is not in the holiday mood."; + close; + +L_nice_0: + mes "[Helper Santa]"; + mes "So you wanted money?."; + set Zeny,Zeny+rand(1,1000000); + close; + +L_nice_1: + mes "[Helper Santa]"; + mes "These hats are really hot now!"; + getitem 1205,1; + close; + +L_nice_2: + mes "[Helper Santa]"; + mes "Axe Hats are always on the cutting edge!"; + getitem 616,1; + close; + +L_nice_3: + mes "[Helper Santa]"; + mes "You just won a Pirate Hat!"; + getitem 617,1; + close; + +L_nice_4: + mes "[Helper Santa]"; + mes "Now you can Goggle all you want."; + getitem 618,1; + close; + +L_nice_5: + mes "[Helper Santa]"; + mes "Let's Goggle all night long!"; + getitem 619,1; + close; + +L_nice_6: + mes "[Helper Santa]"; + mes "You just won a Circlet!"; + getitem 620,1; + close; + +L_nice_7: + mes "[Helper Santa]"; + mes "This patch is not an eyesore."; + getitem 621,1; + close; + +L_nice_8: + mes "[Helper Santa]"; + mes "Bandana time!"; + getitem 622,1; + close; + +L_nice_9: + mes "[Helper Santa]"; + mes "5000 exp!"; + getexp 5000,0; + close; + +L_nice_10: + mes "[Helper Santa]"; + mes "Soft packages are always nice."; + getitem 1202,1; + close; + +L_nice_11: + mes "[Helper Santa]"; + mes "Chuck Norris style!"; + getitem 1203,1; + close; + +L_nice_12: + mes "[Helper Santa]"; + mes "Even Rudolph would be envious now."; + getitem 1204,1; + close; + +L_nice_13: + mes "[Helper Santa]"; + mes "Now you can become a Santa too!"; + getitem 1206,1; + close; + +L_nice_14: + mes "[Helper Santa]"; + mes "Now you can became a Santa too!"; + getitem 511,1; + close; + +L_nice_15: + mes "[Helper Santa]"; + mes "These gloves should keep you warm."; + getitem 564,1; + close; + +L_nice_16: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 624,1; + close; + +L_nice_17: + mes "[Helper Santa]"; + mes "This should keep you warm."; + getitem 564,1; + close; + +L_only_once: + mes "[Helper Santa]"; + mes "You already got one from me."; + close; + +L_no: + mes "[Helper Santa]"; + mes "You're not in the Christmas spirit?"; + mes "I hope you get into this gift extravaganza soon."; + close; +} diff --git a/npc/xmas/2007/after-xmas.txt b/npc/xmas/2007/after-xmas.txt new file mode 100644 index 00000000..0d39f858 --- /dev/null +++ b/npc/xmas/2007/after-xmas.txt @@ -0,0 +1,140 @@ +new_11-1.gat,78,85,0 script Santa 105,{ + if (QUEST_xmas07_state == 2) goto L_State2; + mes "[Santa Clause]"; + mes "Ho! Ho! Ho!"; + mes "You people from The Mana World"; + mes "were very nice to me. So many"; + mes "milk and cookies for me..."; + next; + + if (QUEST_xmas07_milk + QUEST_xmas07_cookies == 0) goto L_Nothing; + if (QUEST_xmas07_milk + QUEST_xmas07_cookies < 10) goto L_Notenough; + + set @leastItems, $QUEST_xmas07_milk; + if ($QUEST_xmas07_milk > $QUEST_xmas07_cookies) set @leastItems, $QUEST_xmas07_cookies; + if (@leastItems >= 100) set @presents, 1; + if (@leastItems >= 200) set @presents, 2; + if (@leastItems >= 400) set @presents, 3; + if (@leastItems >= 800) set @presents, 4; + if (@leastItems >= 1600) set @presents, 5; + if (@leastItems >= 3200) set @presents, 6; + if (@leastItems >= 6400) set @presents, 7; + if (@leastItems >= 12800) set @presents, 8; + if (@leastItems >= 25600) set @presents, 9; + if (@leastItems >= 51200) set @presents, 10; + if (@leastItems >= 102400) set @presents, 11; + if (@leastItems >= 204800) set @presents, 12; + if (@leastItems >= 409600) set @presents, 13; + if (@leastItems >= 819200) set @presents, 14; + + + mes "[Santa Clause]"; + mes "Now you deserve your presents. I got"; + mes @presents + " presents for you. Do you"; + mes "want them now?"; + next; + menu "Yes! Presents! Presents! Presents!", -, "No, maybe later.", L_Close; + + + L_Givepresent: + if (@presents == QUEST_xmas07_presents) goto L_Enoughpresents; + + mes "[Santa Clause]"; + mes "Let's see what I got for you in my sack...."; + next; + + set QUEST_xmas07_presents, QUEST_xmas07_presents + 1; + set @TEMP,rand(7); + if(@TEMP == 0) goto L_present_0; + if(@TEMP == 1) goto L_present_1; + if(@TEMP == 2) goto L_present_2; + if(@TEMP == 3) goto L_present_3; + if(@TEMP == 4) goto L_present_4; + if(@TEMP == 5) goto L_present_5; + if(@TEMP == 6) goto L_present_6; + + + L_Enoughpresents: + mes "[Santa Clause]"; + mes "That's all I got for you."; + mes "Merry Christmas!"; + set QUEST_xmas07_state, 2; + close; + + L_present_0: + mes "[Santa Clause]"; + mes "Here you got a new funky hat!"; + getitem 628, 1; + next; + goto L_Givepresent; + + L_present_1: + mes "[Santa Clause]"; + mes "Here you got a pompouse top hat!"; + getitem 627, 1; + next; + goto L_Givepresent; + + L_present_2: + mes "[Santa Clause]"; + mes "Here you got a funny elven hat!"; + getitem 633, 1; + next; + goto L_Givepresent; + + L_present_3: + mes "[Santa Clause]"; + mes "Here you got a creepy face mask!"; + getitem 634, 1; + next; + goto L_Givepresent; + + L_present_4: + mes "[Santa Clause]"; + mes "Here you got a stylish mushroom hat!"; + getitem 629, 1; + next; + goto L_Givepresent; + + L_present_5: + mes "[Santa Clause]"; + mes "Here you got an evil mushroom hat!"; + getitem 630, 1; + next; + goto L_Givepresent; + + L_present_6: + mes "[Santa Clause]"; + mes "Here you got a beautiful skirt!"; + getitem 632, 1; + next; + goto L_Givepresent; + + L_State2: + mes "[Santa Clause]"; + mes "Ho! Ho! Ho!"; + mes "I hope you like your presents."; + mes "See you next year."; + close; + + L_Notenough: + mes "[Santa Clause]"; + mes "But you did nothing to help. You"; + mes "only donated " + (QUEST_xmas07_milk + QUEST_xmas07_cookies) + " items and now you"; + mes "want a present while others did"; + mes "all the work? get lost!"; + close; + + L_Nothing: + mes "[Santa Clause]"; + mes "But you did nothing to help. You"; + mes "did not donate one item while"; + mes "others did all the work."; + mes "Get lost!"; + close; + + L_Close: + close; + + +} \ No newline at end of file diff --git a/npc/xmas/2007/pre-xmas.txt b/npc/xmas/2007/pre-xmas.txt new file mode 100644 index 00000000..8516f7e7 --- /dev/null +++ b/npc/xmas/2007/pre-xmas.txt @@ -0,0 +1,224 @@ +new_11-1.gat,76,85,0 script Assistant 105,{ + if (QUEST_xmas07_state == 1) goto L_State1; + + mes "[Santas Assistant]"; + mes "I got really bad news."; + mes "Santa Clause won't come to"; + mes "The Mana World this year."; + next; + menu "Who cares? I don't want any presents.", L_Close, "Why not?", -; + mes "[Santas Assistant]"; + mes "Well, he is in some kind of"; + mes "depression. He says people"; + mes "love him only for his presents"; + mes "and don't really care about"; + mes "him as a person."; + next; + menu "Well, not my problem.", L_Close, "Can't we do something for him?", -; + mes "[Santas Assistant]"; + mes "Well, he really loves milk"; + mes "and cookies. When we would"; + mes "collect a really large pile"; + mes "of milk and cookies he will"; + mes "maybe come and pay us a visit."; + next; + menu "Sorry, I got no time for that.", L_Close, "Great idea! Let's begin.", -; + set QUEST_xmas07_state, 1; + + L_State1: + menu "I got some milk.", L_Exchange_Milk, "I got some cookies.", L_Exchange_Cookies, "How is the collecting going?", L_Status, "Where can I find milk and cookies?", L_Help; + + L_Exchange_Milk: + if (countitem(527) == 0) goto L_Exchange_Gotnothing; + mes "[Santas Assistant]"; + mes "Aaaaah, " + countitem(527) + " milk."; + mes "Thanks for your contribution."; + set QUEST_xmas07_milk, QUEST_xmas07_milk + countitem(527); + set $QUEST_xmas07_milk, $QUEST_xmas07_milk + countitem(527); + delitem(527), countitem(527); + close; + + L_Exchange_Cookies: + if (countitem(635) == 0) goto L_Exchange_Gotnothing; + mes "[Santas Assistant]"; + mes "Aaaaah, " + countitem(635) + " cookies."; + mes "Thanks for your contribution."; + set QUEST_xmas07_cookies, QUEST_xmas07_cookies + countitem(635); + set $QUEST_xmas07_cookies, $QUEST_xmas07_cookies + countitem(635); + delitem(635), countitem(635); + close; + + L_Help: + mes "[Santas Assistant]"; + mes "Milk is dropped by santa slimes and fluffies."; + mes "You can find Santa slimes on the"; + mes "snow field to the south and fluffies"; + mes "at the coast south of Hurnscald."; + next; + mes "[Santas Assistant]"; + mes "Rudolph and Santa slimes"; + mes "always bring some cookies with them."; + close; + + L_Exchange_Gotnothing: + mes "[Santas Assistant]"; + mes "Actually, you don't seem to have any."; + close; + + L_Status: + mes "[Santas Assistant]"; + mes "OK, thus far you brought me"; + mes QUEST_xmas07_milk + " packets of milk and"; + mes QUEST_xmas07_cookies + " christmas cookies."; + mes "All people together brought"; + mes $QUEST_xmas07_milk + " packets of milk and"; + mes $QUEST_xmas07_cookies + " christmas cookies."; + next; + mes "[Santas Assistant]"; + set @leastItems, $QUEST_xmas07_milk; + if ($QUEST_xmas07_milk > $QUEST_xmas07_cookies) set @leastItems, $QUEST_xmas07_cookies; + if (@leastItems >= 819200) goto L_Present14; + if (@leastItems >= 409600) goto L_Present13; + if (@leastItems >= 204800) goto L_Present12; + if (@leastItems >= 102400) goto L_Present11; + if (@leastItems >= 51200) goto L_Present10; + if (@leastItems >= 25600) goto L_Present9; + if (@leastItems >= 12800) goto L_Present8; + if (@leastItems >= 6400) goto L_Present7; + if (@leastItems >= 3200) goto L_Present6; + if (@leastItems >= 1600) goto L_Present5; + if (@leastItems >= 800) goto L_Present4; + if (@leastItems >= 400) goto L_Present3; + if (@leastItems >= 200) goto L_Present2; + if (@leastItems >= 100) goto L_Present1; + mes "I guess that won't impress santa"; + mes "much. We need at least 100 of"; + mes "both to make him come to us."; + close; + + L_Present1: + mes "This means santa will bring"; + mes "everyone a present. When we"; + mes "can collect 200 of each he"; + mes "will maybe give everyone two"; + mes "presents."; + close; + + L_Present2: + mes "This means santa will bring"; + mes "everyone two presents. When we"; + mes "can collect 400 of each he"; + mes "will maybe give everyone three"; + mes "presents."; + close; + + L_Present3: + mes "This means santa will bring"; + mes "everyone three presents. When we"; + mes "can collect 800 of each he"; + mes "will maybe give everyone four"; + mes "presents."; + close; + + L_Present4: + mes "This means santa will bring"; + mes "everyone four presents. When we"; + mes "can collect 1600 of each he"; + mes "will maybe give everyone five"; + mes "presents."; + close; + + L_Present5: + mes "This means santa will bring"; + mes "everyone five presents. When we"; + mes "can collect 3200 of each he"; + mes "will maybe give everyone six"; + mes "presents."; + close; + + L_Present6: + mes "This means santa will bring"; + mes "everyone six presents. When we"; + mes "can collect 6400 of each he"; + mes "will maybe give everyone seven"; + mes "presents."; + close; + + L_Present7: + mes "This means santa will bring"; + mes "everyone seven presents. When we"; + mes "can collect 12800 of each he"; + mes "will maybe give everyone eight"; + mes "presents."; + close; + + L_Present8: + mes "This means santa will bring"; + mes "everyone eight presents. When we"; + mes "can collect 25600 of each he"; + mes "will maybe give everyone nine"; + mes "presents."; + close; + + L_Present9: + mes "This means santa will bring"; + mes "everyone nine presents. When we"; + mes "can collect 51200 of each he"; + mes "will maybe give everyone ten"; + mes "presents."; + close; + + L_Present10: + mes "Over fiftythousand of both?"; + mes "Did you guys hire some chinese"; + mes "gold farmers?"; + mes "This means santa will bring"; + mes "everyone ten presents. When we"; + mes "can collect 102400 of each he"; + mes "will maybe give everyone eleven"; + mes "presents."; + close; + + L_Present11: + mes "What? You guys broke the"; + mes "hundredthousand item limit??"; + mes "This means santa will bring"; + mes "everyone eleven presents. When we"; + mes "can collect 204800 of each he"; + mes "will maybe give everyone twelve"; + mes "presents."; + close; + + L_Present12: + mes "Another hundredthousand of each?"; + mes "You guys really have no live!"; + mes "This means santa will bring"; + mes "everyone twelfe presents. When we"; + mes "can collect 404800 of each he"; + mes "will maybe give everyone thirteen"; + mes "presents."; + close; + + L_Present13: + mes "What the f...? Four Hundred Thousand???"; + mes "There is no way people collected"; + mes "that many stuff in just a week."; + mes "This means santa will bring"; + mes "everyone thirteen presents. When we"; + mes "can collect 819200 of each he"; + mes "will maybe give everyone fourteen"; + mes "presents."; + close; + + L_Present14: + mes "OK, OK, you guys found a bug"; + mes "to cheat the christmas event"; + mes "this year. You will each get"; + mes "fourteen presents."; + mes "But this is really enough."; + mes "Are you happy now?"; + close; + + L_Close: + close; +} diff --git a/npc/xmas2007/after-xmas.txt b/npc/xmas2007/after-xmas.txt deleted file mode 100644 index 0d39f858..00000000 --- a/npc/xmas2007/after-xmas.txt +++ /dev/null @@ -1,140 +0,0 @@ -new_11-1.gat,78,85,0 script Santa 105,{ - if (QUEST_xmas07_state == 2) goto L_State2; - mes "[Santa Clause]"; - mes "Ho! Ho! Ho!"; - mes "You people from The Mana World"; - mes "were very nice to me. So many"; - mes "milk and cookies for me..."; - next; - - if (QUEST_xmas07_milk + QUEST_xmas07_cookies == 0) goto L_Nothing; - if (QUEST_xmas07_milk + QUEST_xmas07_cookies < 10) goto L_Notenough; - - set @leastItems, $QUEST_xmas07_milk; - if ($QUEST_xmas07_milk > $QUEST_xmas07_cookies) set @leastItems, $QUEST_xmas07_cookies; - if (@leastItems >= 100) set @presents, 1; - if (@leastItems >= 200) set @presents, 2; - if (@leastItems >= 400) set @presents, 3; - if (@leastItems >= 800) set @presents, 4; - if (@leastItems >= 1600) set @presents, 5; - if (@leastItems >= 3200) set @presents, 6; - if (@leastItems >= 6400) set @presents, 7; - if (@leastItems >= 12800) set @presents, 8; - if (@leastItems >= 25600) set @presents, 9; - if (@leastItems >= 51200) set @presents, 10; - if (@leastItems >= 102400) set @presents, 11; - if (@leastItems >= 204800) set @presents, 12; - if (@leastItems >= 409600) set @presents, 13; - if (@leastItems >= 819200) set @presents, 14; - - - mes "[Santa Clause]"; - mes "Now you deserve your presents. I got"; - mes @presents + " presents for you. Do you"; - mes "want them now?"; - next; - menu "Yes! Presents! Presents! Presents!", -, "No, maybe later.", L_Close; - - - L_Givepresent: - if (@presents == QUEST_xmas07_presents) goto L_Enoughpresents; - - mes "[Santa Clause]"; - mes "Let's see what I got for you in my sack...."; - next; - - set QUEST_xmas07_presents, QUEST_xmas07_presents + 1; - set @TEMP,rand(7); - if(@TEMP == 0) goto L_present_0; - if(@TEMP == 1) goto L_present_1; - if(@TEMP == 2) goto L_present_2; - if(@TEMP == 3) goto L_present_3; - if(@TEMP == 4) goto L_present_4; - if(@TEMP == 5) goto L_present_5; - if(@TEMP == 6) goto L_present_6; - - - L_Enoughpresents: - mes "[Santa Clause]"; - mes "That's all I got for you."; - mes "Merry Christmas!"; - set QUEST_xmas07_state, 2; - close; - - L_present_0: - mes "[Santa Clause]"; - mes "Here you got a new funky hat!"; - getitem 628, 1; - next; - goto L_Givepresent; - - L_present_1: - mes "[Santa Clause]"; - mes "Here you got a pompouse top hat!"; - getitem 627, 1; - next; - goto L_Givepresent; - - L_present_2: - mes "[Santa Clause]"; - mes "Here you got a funny elven hat!"; - getitem 633, 1; - next; - goto L_Givepresent; - - L_present_3: - mes "[Santa Clause]"; - mes "Here you got a creepy face mask!"; - getitem 634, 1; - next; - goto L_Givepresent; - - L_present_4: - mes "[Santa Clause]"; - mes "Here you got a stylish mushroom hat!"; - getitem 629, 1; - next; - goto L_Givepresent; - - L_present_5: - mes "[Santa Clause]"; - mes "Here you got an evil mushroom hat!"; - getitem 630, 1; - next; - goto L_Givepresent; - - L_present_6: - mes "[Santa Clause]"; - mes "Here you got a beautiful skirt!"; - getitem 632, 1; - next; - goto L_Givepresent; - - L_State2: - mes "[Santa Clause]"; - mes "Ho! Ho! Ho!"; - mes "I hope you like your presents."; - mes "See you next year."; - close; - - L_Notenough: - mes "[Santa Clause]"; - mes "But you did nothing to help. You"; - mes "only donated " + (QUEST_xmas07_milk + QUEST_xmas07_cookies) + " items and now you"; - mes "want a present while others did"; - mes "all the work? get lost!"; - close; - - L_Nothing: - mes "[Santa Clause]"; - mes "But you did nothing to help. You"; - mes "did not donate one item while"; - mes "others did all the work."; - mes "Get lost!"; - close; - - L_Close: - close; - - -} \ No newline at end of file diff --git a/npc/xmas2007/pre-xmas.txt b/npc/xmas2007/pre-xmas.txt deleted file mode 100644 index 8516f7e7..00000000 --- a/npc/xmas2007/pre-xmas.txt +++ /dev/null @@ -1,224 +0,0 @@ -new_11-1.gat,76,85,0 script Assistant 105,{ - if (QUEST_xmas07_state == 1) goto L_State1; - - mes "[Santas Assistant]"; - mes "I got really bad news."; - mes "Santa Clause won't come to"; - mes "The Mana World this year."; - next; - menu "Who cares? I don't want any presents.", L_Close, "Why not?", -; - mes "[Santas Assistant]"; - mes "Well, he is in some kind of"; - mes "depression. He says people"; - mes "love him only for his presents"; - mes "and don't really care about"; - mes "him as a person."; - next; - menu "Well, not my problem.", L_Close, "Can't we do something for him?", -; - mes "[Santas Assistant]"; - mes "Well, he really loves milk"; - mes "and cookies. When we would"; - mes "collect a really large pile"; - mes "of milk and cookies he will"; - mes "maybe come and pay us a visit."; - next; - menu "Sorry, I got no time for that.", L_Close, "Great idea! Let's begin.", -; - set QUEST_xmas07_state, 1; - - L_State1: - menu "I got some milk.", L_Exchange_Milk, "I got some cookies.", L_Exchange_Cookies, "How is the collecting going?", L_Status, "Where can I find milk and cookies?", L_Help; - - L_Exchange_Milk: - if (countitem(527) == 0) goto L_Exchange_Gotnothing; - mes "[Santas Assistant]"; - mes "Aaaaah, " + countitem(527) + " milk."; - mes "Thanks for your contribution."; - set QUEST_xmas07_milk, QUEST_xmas07_milk + countitem(527); - set $QUEST_xmas07_milk, $QUEST_xmas07_milk + countitem(527); - delitem(527), countitem(527); - close; - - L_Exchange_Cookies: - if (countitem(635) == 0) goto L_Exchange_Gotnothing; - mes "[Santas Assistant]"; - mes "Aaaaah, " + countitem(635) + " cookies."; - mes "Thanks for your contribution."; - set QUEST_xmas07_cookies, QUEST_xmas07_cookies + countitem(635); - set $QUEST_xmas07_cookies, $QUEST_xmas07_cookies + countitem(635); - delitem(635), countitem(635); - close; - - L_Help: - mes "[Santas Assistant]"; - mes "Milk is dropped by santa slimes and fluffies."; - mes "You can find Santa slimes on the"; - mes "snow field to the south and fluffies"; - mes "at the coast south of Hurnscald."; - next; - mes "[Santas Assistant]"; - mes "Rudolph and Santa slimes"; - mes "always bring some cookies with them."; - close; - - L_Exchange_Gotnothing: - mes "[Santas Assistant]"; - mes "Actually, you don't seem to have any."; - close; - - L_Status: - mes "[Santas Assistant]"; - mes "OK, thus far you brought me"; - mes QUEST_xmas07_milk + " packets of milk and"; - mes QUEST_xmas07_cookies + " christmas cookies."; - mes "All people together brought"; - mes $QUEST_xmas07_milk + " packets of milk and"; - mes $QUEST_xmas07_cookies + " christmas cookies."; - next; - mes "[Santas Assistant]"; - set @leastItems, $QUEST_xmas07_milk; - if ($QUEST_xmas07_milk > $QUEST_xmas07_cookies) set @leastItems, $QUEST_xmas07_cookies; - if (@leastItems >= 819200) goto L_Present14; - if (@leastItems >= 409600) goto L_Present13; - if (@leastItems >= 204800) goto L_Present12; - if (@leastItems >= 102400) goto L_Present11; - if (@leastItems >= 51200) goto L_Present10; - if (@leastItems >= 25600) goto L_Present9; - if (@leastItems >= 12800) goto L_Present8; - if (@leastItems >= 6400) goto L_Present7; - if (@leastItems >= 3200) goto L_Present6; - if (@leastItems >= 1600) goto L_Present5; - if (@leastItems >= 800) goto L_Present4; - if (@leastItems >= 400) goto L_Present3; - if (@leastItems >= 200) goto L_Present2; - if (@leastItems >= 100) goto L_Present1; - mes "I guess that won't impress santa"; - mes "much. We need at least 100 of"; - mes "both to make him come to us."; - close; - - L_Present1: - mes "This means santa will bring"; - mes "everyone a present. When we"; - mes "can collect 200 of each he"; - mes "will maybe give everyone two"; - mes "presents."; - close; - - L_Present2: - mes "This means santa will bring"; - mes "everyone two presents. When we"; - mes "can collect 400 of each he"; - mes "will maybe give everyone three"; - mes "presents."; - close; - - L_Present3: - mes "This means santa will bring"; - mes "everyone three presents. When we"; - mes "can collect 800 of each he"; - mes "will maybe give everyone four"; - mes "presents."; - close; - - L_Present4: - mes "This means santa will bring"; - mes "everyone four presents. When we"; - mes "can collect 1600 of each he"; - mes "will maybe give everyone five"; - mes "presents."; - close; - - L_Present5: - mes "This means santa will bring"; - mes "everyone five presents. When we"; - mes "can collect 3200 of each he"; - mes "will maybe give everyone six"; - mes "presents."; - close; - - L_Present6: - mes "This means santa will bring"; - mes "everyone six presents. When we"; - mes "can collect 6400 of each he"; - mes "will maybe give everyone seven"; - mes "presents."; - close; - - L_Present7: - mes "This means santa will bring"; - mes "everyone seven presents. When we"; - mes "can collect 12800 of each he"; - mes "will maybe give everyone eight"; - mes "presents."; - close; - - L_Present8: - mes "This means santa will bring"; - mes "everyone eight presents. When we"; - mes "can collect 25600 of each he"; - mes "will maybe give everyone nine"; - mes "presents."; - close; - - L_Present9: - mes "This means santa will bring"; - mes "everyone nine presents. When we"; - mes "can collect 51200 of each he"; - mes "will maybe give everyone ten"; - mes "presents."; - close; - - L_Present10: - mes "Over fiftythousand of both?"; - mes "Did you guys hire some chinese"; - mes "gold farmers?"; - mes "This means santa will bring"; - mes "everyone ten presents. When we"; - mes "can collect 102400 of each he"; - mes "will maybe give everyone eleven"; - mes "presents."; - close; - - L_Present11: - mes "What? You guys broke the"; - mes "hundredthousand item limit??"; - mes "This means santa will bring"; - mes "everyone eleven presents. When we"; - mes "can collect 204800 of each he"; - mes "will maybe give everyone twelve"; - mes "presents."; - close; - - L_Present12: - mes "Another hundredthousand of each?"; - mes "You guys really have no live!"; - mes "This means santa will bring"; - mes "everyone twelfe presents. When we"; - mes "can collect 404800 of each he"; - mes "will maybe give everyone thirteen"; - mes "presents."; - close; - - L_Present13: - mes "What the f...? Four Hundred Thousand???"; - mes "There is no way people collected"; - mes "that many stuff in just a week."; - mes "This means santa will bring"; - mes "everyone thirteen presents. When we"; - mes "can collect 819200 of each he"; - mes "will maybe give everyone fourteen"; - mes "presents."; - close; - - L_Present14: - mes "OK, OK, you guys found a bug"; - mes "to cheat the christmas event"; - mes "this year. You will each get"; - mes "fourteen presents."; - mes "But this is really enough."; - mes "Are you happy now?"; - close; - - L_Close: - close; -} -- cgit v1.2.3-70-g09d2