summaryrefslogtreecommitdiff
path: root/npc/012-1
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2021-04-09 13:33:57 -0300
committerJesusaves <cpntb1@ymail.com>2021-04-09 13:33:57 -0300
commitcf18ce071c79ae37e14ea38943e0b1d88da70a7b (patch)
treef9159c9b60b3018300dd22ffba0d797bc5e828e5 /npc/012-1
parent8a4bf716002a017de77fe7df301ef8e4aaf00a2e (diff)
downloadserverdata-cf18ce071c79ae37e14ea38943e0b1d88da70a7b.tar.gz
serverdata-cf18ce071c79ae37e14ea38943e0b1d88da70a7b.tar.bz2
serverdata-cf18ce071c79ae37e14ea38943e0b1d88da70a7b.tar.xz
serverdata-cf18ce071c79ae37e14ea38943e0b1d88da70a7b.zip
Override
Diffstat (limited to 'npc/012-1')
-rw-r--r--npc/012-1/_import.txt21
-rw-r--r--npc/012-1/_mobs.txt23
-rw-r--r--npc/012-1/_warps.txt20
-rw-r--r--npc/012-1/aahna.txt17
-rw-r--r--npc/012-1/aidan.txt19
-rwxr-xr-xnpc/012-1/amrak.txt9
-rw-r--r--npc/012-1/ayasha.txt17
-rw-r--r--npc/012-1/crasmande.txt18
-rwxr-xr-xnpc/012-1/flowerpentagram2.txt95
-rw-r--r--npc/012-1/hasan.txt18
-rwxr-xr-xnpc/012-1/injured-mouboo.txt226
-rw-r--r--npc/012-1/ishi.txt20
-rw-r--r--npc/012-1/kaan.txt19
-rw-r--r--npc/012-1/liana.txt25
-rwxr-xr-xnpc/012-1/mapflags.txt1
-rw-r--r--npc/012-1/marine.txt17
-rw-r--r--npc/012-1/prawors.txt18
-rwxr-xr-xnpc/012-1/shops.txt75
-rw-r--r--npc/012-1/tiki.txt150
-rw-r--r--npc/012-1/vincent.txt18
-rw-r--r--npc/012-1/wateranimation.txt12
-rw-r--r--npc/012-1/zegas.txt36
22 files changed, 436 insertions, 438 deletions
diff --git a/npc/012-1/_import.txt b/npc/012-1/_import.txt
index 118dc1b3..bc85c0c4 100644
--- a/npc/012-1/_import.txt
+++ b/npc/012-1/_import.txt
@@ -1,18 +1,9 @@
-// Map 012-1: Candor Island
+// Map 012-1: Woodland Hills
// This file is generated automatically. All manually added changes will be removed when running the Converter.
"npc/012-1/_mobs.txt",
"npc/012-1/_warps.txt",
-"npc/012-1/aahna.txt",
-"npc/012-1/aidan.txt",
-"npc/012-1/ayasha.txt",
-"npc/012-1/crasmande.txt",
-"npc/012-1/hasan.txt",
-"npc/012-1/ishi.txt",
-"npc/012-1/kaan.txt",
-"npc/012-1/liana.txt",
-"npc/012-1/marine.txt",
-"npc/012-1/prawors.txt",
-"npc/012-1/tiki.txt",
-"npc/012-1/vincent.txt",
-"npc/012-1/wateranimation.txt",
-"npc/012-1/zegas.txt",
+"npc/012-1/amrak.txt",
+"npc/012-1/flowerpentagram2.txt",
+"npc/012-1/injured-mouboo.txt",
+"npc/012-1/mapflags.txt",
+"npc/012-1/shops.txt",
diff --git a/npc/012-1/_mobs.txt b/npc/012-1/_mobs.txt
index ce3a3234..bc36c7ab 100644
--- a/npc/012-1/_mobs.txt
+++ b/npc/012-1/_mobs.txt
@@ -1,12 +1,13 @@
// This file is generated automatically. All manually added changes will be removed when running the Converter.
-// Map 012-1: Candor Island mobs
-012-1,77,78,30,25 monster Mana Bug 1035,8,10000,10000
-012-1,62,95,19,15 monster Butterfly 1032,5,100000,10000
-012-1,78,103,38,12 monster Maggot 1026,10,500,10000
-012-1,57,57,20,14 monster Grass Snake 1042,5,3000,12000
-012-1,106,42,16,7 monster Scorpion 1043,4,15000,50000
-012-1,115,123,14,7 monster Scorpion 1043,4,15000,40000
-012-1,91,81,10,15 monster Small Frog 1086,4,3000,30000
-012-1,86,86,7,11 monster Big Frog 1087,2,6000,75000
-012-1,103,55,14,13 monster Spiky Mushroom 1049,2,3000,6000
-012-1,43,51,3,4 monster Wicked Mushroom 1050,1,6000,12000
+// Map 012-1: Woodland Hills mobs
+012-1,0,0,0,0 monster CroconutMob 1014,13,0,100
+012-1,0,0,0,0 monster PumpkinMob 1019,25,0,10
+012-1,0,0,0,0 monster Forest Maggot 1028,20,0,10
+012-1,0,0,0,0 monster Bee 1029,5,2700000,1800000
+012-1,0,0,0,0 monster Pinkie 1030,2,2700000,1800000
+012-1,0,0,0,0 monster Log Head 1031,2,2700000,1800000
+012-1,0,0,0,0 monster Butterfly 1032,2,2700000,1800000
+012-1,0,0,0,0 monster Mana Bug 1035,5,60000,30000
+012-1,0,0,0,0 monster Alizarin Plant 1037,2,0,1000
+012-1,0,0,0,0 monster Gamboge Plant 1038,25,30,20
+012-1,0,0,0,0 monster Amethyst Vein 1055,20,30,20
diff --git a/npc/012-1/_warps.txt b/npc/012-1/_warps.txt
index e7f8b126..e05cf52f 100644
--- a/npc/012-1/_warps.txt
+++ b/npc/012-1/_warps.txt
@@ -1,9 +1,13 @@
// This file is generated automatically. All manually added changes will be removed when running the Converter.
-// Map 012-1: Candor Island warps
-012-1,38,115,0 warp #012-1_38_115 0,0,012-2-1,52,38
-012-1,50,104,0 warp #012-1_50_104 0,0,012-2-6,26,38
-012-1,65,105,0 warp #012-1_65_105 0,0,012-2-5,29,43
-012-1,64,95,0 warp #012-1_64_95 0,0,012-2-3,33,36
-012-1,51,93,0 warp #012-1_51_93 0,0,012-2-7,30,34
-012-1,57,101,0 warp #012-1_57_101 0,0,012-2-4,31,43
-012-1,49,67,0 warp #012-1_49_67 1,0,012-3-1,37,40
+// Map 012-1: Woodland Hills warps
+012-1,51,39,0 warp #012-1_51_39 0,0,012-3,370,43
+012-1,147,67,0 warp #012-1_147_67 0,0,012-3,474,106
+012-1,41,48,0 warp #012-1_41_48 0,0,012-3,353,78
+012-1,44,88,0 warp #012-1_44_88 0,0,012-3,355,187
+012-1,92,104,0 warp #012-1_92_104 0,0,012-3,270,111
+012-1,98,99,0 warp #012-1_98_99 0,0,012-3,37,81
+012-1,109,92,0 warp #012-1_109_92 0,0,012-3,80,73
+012-1,123,90,0 warp #012-1_123_90 0,0,012-3,38,156
+012-1,150,61,0 warp #012-1_150_61 0,3,013-1,21,75
+012-1,132,176,0 warp #012-1_132_176 1,0,011-1,73,10
+012-1,65,126,0 warp #012-1_65_126 0,0,012-3,176,140
diff --git a/npc/012-1/aahna.txt b/npc/012-1/aahna.txt
deleted file mode 100644
index 39ad8192..00000000
--- a/npc/012-1/aahna.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-// Evol scripts.
-// Author:
-// Micksha
-// Description:
-// Aahna, a low quality NPC ;)
-// TODO: Ask for random drops from Mana Bugs (daily quest)
-
-012-1,99,64,0 script Aahna NPC_AAHNA,{
- speech
- l("Welcome."),
- l("I am looking at Mana Bugs. They always drop a bug leg, it is weird.");
- close;
-
-OnInit:
- .distance = 4;
- end;
-}
diff --git a/npc/012-1/aidan.txt b/npc/012-1/aidan.txt
deleted file mode 100644
index 06776be3..00000000
--- a/npc/012-1/aidan.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-// Evol scripts.
-// Author:
-// Micksha
-// Description:
-// Aidan, a dawdler in Candor.
-// THIS IS A PLACEHOLDER!
-
-012-1,52,114,0 script Aidan NPC_AIDAN,{
- speech
- l("Welcome. I am Aidan, from the Monster Hunting Association."),
- l("We host daily and weekly monster hunting objectives to adventurers based on their level."),
- l("We aren't open yet because Ishi still can't decide how she will hand out the rewards."),
- l("But once we open, remember to come to me to sign in our tasks and also to claim rewards with Ishi before they expire!");
- close;
-
-OnInit:
- .distance = 4;
- end;
-}
diff --git a/npc/012-1/amrak.txt b/npc/012-1/amrak.txt
new file mode 100755
index 00000000..a088a512
--- /dev/null
+++ b/npc/012-1/amrak.txt
@@ -0,0 +1,9 @@
+
+012-1,137,104,0 script Amrak NPC103,{
+ mes "[Amrak]";
+ mes "\"I'm studying this waterfall. The water seems to flow from it like magic.\"";
+ next;
+ mes "[Amrak]";
+ mes "\"Unfortunately, I've had trouble getting up there. The monsters in these caves scare me.\"";
+ close;
+}
diff --git a/npc/012-1/ayasha.txt b/npc/012-1/ayasha.txt
deleted file mode 100644
index ae47556a..00000000
--- a/npc/012-1/ayasha.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-// Evol scripts.
-// Author:
-// Micksha
-// Description:
-// Vincent, a child at the Candor beach.
-// THIS IS A PLACEHOLDER!
-
-012-1,65,111,0 script Ayasha NPC_AYASHA,{
- speech
- l("Hey adventurer!"),
- l("I lost Liana, she was taking care of me; Have you seen her around? %%i");
- close;
-
-OnInit:
- .distance = 4;
- end;
-}
diff --git a/npc/012-1/crasmande.txt b/npc/012-1/crasmande.txt
deleted file mode 100644
index 85d9308e..00000000
--- a/npc/012-1/crasmande.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-// Evol scripts.
-// Author:
-// Micksha
-// Description:
-// Crasmande, the scared man.
-// THIS IS A PLACEHOLDER!
-
-012-1,41,44,0 script Crasmande NPC_CRASMANDE,{
- speech
- l("I'm scared!"),
- l("Hasan is bullying me!"),
- l("%%i");
- close;
-
-OnInit:
- .distance = 4;
- end;
-}
diff --git a/npc/012-1/flowerpentagram2.txt b/npc/012-1/flowerpentagram2.txt
new file mode 100755
index 00000000..92de4de5
--- /dev/null
+++ b/npc/012-1/flowerpentagram2.txt
@@ -0,0 +1,95 @@
+
+012-1,143,70,0 script #FlowerPentagram2 NPC400,{
+ if (OrumQuest >= 31) goto L_PlacedFifthFlower;
+
+ if (OrumQuest > 20) goto L_PlacedSecondFlower;
+ if (OrumQuest == 20) goto L_SecondFlower;
+
+ message strcharinfo(0), "There is something odd about this place.";
+ end;
+
+L_SecondFlower:
+ mes "Orum described this place. You have to place the second magical flower here.";
+ menu
+ "Place the flower.", L_Next,
+ "Leave.", L_close;
+
+L_Next:
+ if (isin("012-1", 142, 69, 144, 71))
+ goto L_Place;
+
+ mes "This isn't working, you're too far away.";
+ goto L_close;
+
+L_Place:
+ set @localMonsterCount,
+ mobcount("012-1", "#FlowerPentagram2::OnSquirrelDeath") +
+ mobcount("012-1", "#FlowerPentagram2::OnMushroomDeath") +
+ mobcount("012-1", "#FlowerPentagram2::OnScorpionDeath") +
+ mobcount("012-1", "#FlowerPentagram2::OnRScorpionDeath") +
+ 4; // the mobcount function has an offset of -1, so we add 4 to have the actual amount of monsters
+ if (@localMonsterCount > 2)
+ goto L_MonstersAlive;
+
+ if (countitem("PurpleSummonFlower") < 1)
+ goto L_NoFlower;
+ delitem "PurpleSummonFlower", 1;
+ mes "Remembering what happened the last time, you take a careful look around. Everything's calm. You proceed to place the second flower.";
+ mes "Sensing a certain tension build up around you, you can't help but feel alarmed.";
+ OrumQuest = 21;
+ close2;
+ areamonster "012-1", 140, 64, 146, 73, "", 1105, 2, "#FlowerPentagram2::OnSquirrelDeath";
+ areamonster "012-1", 140, 64, 146, 73, "", 1106, 2, "#FlowerPentagram2::OnMushroomDeath";
+ areamonster "012-1", 140, 64, 146, 73, "", 1003, 2, "#FlowerPentagram2::OnScorpionDeath";
+ areamonster "012-1", 140, 64, 146, 73, "", 1004, 2, "#FlowerPentagram2::OnRScorpionDeath";
+ @value = 15;
+ callfunc "QuestSagathaAnnoy";
+ @value = 0;
+ end;
+
+OnSquirrelDeath:
+ @mobId = 1105;
+ callfunc "MobPoints";
+ end;
+
+OnMushroomDeath:
+ @mobId = 1106;
+ callfunc "MobPoints";
+ end;
+
+OnScorpionDeath:
+ @mobId = 1003;
+ callfunc "MobPoints";
+ end;
+
+OnRScorpionDeath:
+ @mobId = 1004;
+ callfunc "MobPoints";
+ end;
+
+L_MonstersAlive:
+ mes "As you get closer to the place, you feel an unnerving presence.";
+ mes "This place has recently been used to summon something! And the beings are still nearby!";
+ next;
+ mes "You should get rid of them before attempting the summoning yourself.";
+ goto L_close;
+
+L_NoFlower:
+ mes "You look into your pocket, but the flower isn't there. Where did you put it?";
+ mes "If you can't find it, you should talk to Orum again.";
+ goto L_close;
+
+L_PlacedSecondFlower:
+ mes "You placed the second of Orum's magical flowers on this spot.";
+ mes "You can still feel the magical power shimmering around this place, waiting to be unleashed.";
+ goto L_close;
+
+L_PlacedFifthFlower:
+ mes "This is where you placed the second of Orum's magical flowers.";
+ mes "However, now that the summoning spell has been cast, everything is back to normal here.";
+ goto L_close;
+
+L_close:
+ @localMonsterCount = 0;
+ close;
+}
diff --git a/npc/012-1/hasan.txt b/npc/012-1/hasan.txt
deleted file mode 100644
index 79cf9023..00000000
--- a/npc/012-1/hasan.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-// Evol scripts.
-// Author:
-// Micksha
-// Description:
-// Hasan, the bad guy.
-// THIS IS A PLACEHOLDER!
-
-012-1,39,44,0 script Hasan NPC_HASAN,{
- speech
- l("Hey. I did nothing, I swear."),
- l("Crasmande has been this way since I got here."),
- l("Don't you have more important business to attend to, anyway?");
- close;
-
-OnInit:
- .distance = 4;
- end;
-}
diff --git a/npc/012-1/injured-mouboo.txt b/npc/012-1/injured-mouboo.txt
new file mode 100755
index 00000000..167e91d8
--- /dev/null
+++ b/npc/012-1/injured-mouboo.txt
@@ -0,0 +1,226 @@
+
+function script QuestMoubooHeal {
+ @Q_MASK = NIBBLE_2_MASK;
+ @Q_SHIFT = NIBBLE_2_SHIFT;
+
+ @Q_status = (QUEST_MAGIC & @Q_MASK) >> @Q_SHIFT;
+ @Q_status_upper = @Q_status & 12;
+ @Q_status = @Q_status & 3;
+
+ @STATE_INITIAL = 0;
+ @STATE_HEALED_MOUBOO = 3;
+
+ if (@Q_status != @STATE_INITIAL)
+ goto L_Nothing;
+
+ @Q_status = @STATE_HEALED_MOUBOO;
+ callsub S_Update_Var;
+ mes "[Injured Mouboo]";
+ mes "A soft white glow surrounds the mouboo's leg, which slowly shifts back into place.";
+ mes "As the glow subsides, the mouboo gets up, carefully, and takes a few steps. It seems to be fully healed!";
+ mes "[5000 experience points]";
+ getexp 5000, 0;
+ next;
+ mes "[Injured Mouboo]";
+ mes "Visibly happy, the mouboo lies down on the ground and snuggles with a black piece of cloth it had been lying on.";
+ mes "The healing process must have been exhausting, for it is asleep in an instant.";
+ next;
+ @value = 15;
+ callfunc "QuestSagathaHappy";
+ close2;
+ return;
+
+L_Nothing:
+ mes "Your spell has no effect.";
+ close2;
+ return;
+
+S_Update_Var:
+ @Q_wr_status = @Q_status | @Q_status_upper;
+ set QUEST_MAGIC,
+ (QUEST_MAGIC & ~(@Q_MASK)
+ | (@Q_wr_status << @Q_SHIFT));
+ return;
+}
+
+012-1,57,153,0 script Mouboo NPC171,{
+ @Q_MASK = NIBBLE_2_MASK;
+ @Q_SHIFT = NIBBLE_2_SHIFT;
+
+ @Q_status = (QUEST_MAGIC & @Q_MASK) >> @Q_SHIFT;
+ @Q_status_upper = @Q_status & 12;
+ @Q_status = @Q_status & 3;
+
+ @STATE_INITIAL = 0;
+ @STATE_KILLED_MOUBOO = 1;
+ @STATE_TOOK_KILL_REWARD = 2;
+ @STATE_HEALED_MOUBOO = 3;
+
+ if (@Q_status == @STATE_KILLED_MOUBOO)
+ goto L_Dead;
+ if (@Q_status == @STATE_TOOK_KILL_REWARD)
+ goto L_took_reward;
+ if (@Q_status == @STATE_HEALED_MOUBOO)
+ goto L_healed;
+
+ mes "[Injured Mouboo]";
+ mes "You notice a mouboo lying on the ground, groaning, as if in pain.";
+ next;
+ goto L_Menu;
+
+L_Menu:
+ menu
+ "Examine the mouboo", L_examine,
+ "Give the mouboo something", L_Give,
+ "Kill the mouboo", L_Kill,
+ "Leave", L_close;
+
+L_examine:
+ mes "[Injured Mouboo]";
+ mes "Looking closer, you notice that the mouboo's left hind leg is bent at a very unnatural angle – that seems to be the cause for its pain.";
+ next;
+ mes "[Injured Mouboo]";
+ mes "You also notice that the mouboo is lying on top of what appears to be a black turtleneck sweater.";
+ mes "Do you want to pick up the sweater?";
+ next;
+ menu
+ "Yes.", L_pickup_alive,
+ "No.", L_Menu;
+
+L_pickup_alive:
+ mes "[Injured Mouboo]";
+ mes "The Mouboo groans and pushes your hand away. It seems to be rather fond of the sweater.";
+ next;
+ goto L_Menu;
+
+L_Give:
+ @items_nr = 12;
+ setarray @items$, "CactusDrink", "CactusPotion", "ChocolateBar", "Milk", "OrangeCupcake", "RedApple", "Beer", "BottleOfWater", "TinyHealingPotion", "SmallHealingPotion", "MediumHealingPotion", "LargeHealingPotion";
+ setarray @itemnames$, "Cactus Drink", "Cactus Potion", "Chocolate Bar", "Milk", "Orange Cupcake", "Red Apple", "Beer", "Bottle of Water", "Tiny Healing Potion", "Small Healing Potion", "Medium Healing Potion", "Large Healing Potion";
+ setarray @itemeat, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0;
+
+ setarray @menuitems$, "", "", "", "", "", "", "", "", "", "", "", "", "";
+ @choices_nr = 0;
+ setarray @menuNames$, "", "", "", "", "", "", "", "", "", "", "", "", "";
+ setarray @choice_eat, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0;
+
+ @n = 0;
+ @ct = 0;
+ goto L_nloop;
+
+L_nloop:
+ @k$ = @items$[@n];
+ if (countitem(@k$) == 0)
+ goto L_nloop_skip;
+
+ @menuitems$[@ct] = @itemnames$[@n];
+ @menuNames$[@ct] = @k$;
+ @choice_eat[@ct] = @itemeat[@n];
+ @ct = @ct + 1;
+ goto L_nloop_skip;
+
+L_nloop_skip:
+ @n = @n+1;
+ if (@n < @items_nr)
+ goto L_nloop;
+
+ @menuitems$[@ct] = "Nevermind";
+
+ menu
+ @menuitems$[0], L_MenuItems,
+ @menuitems$[1], L_MenuItems,
+ @menuitems$[2], L_MenuItems,
+ @menuitems$[3], L_MenuItems,
+ @menuitems$[4], L_MenuItems,
+ @menuitems$[5], L_MenuItems,
+ @menuitems$[6], L_MenuItems,
+ @menuitems$[7], L_MenuItems,
+ @menuitems$[8], L_MenuItems,
+ @menuitems$[9], L_MenuItems,
+ @menuitems$[10], L_MenuItems,
+ @menuitems$[11], L_MenuItems,
+ @menuitems$[12], L_MenuItems;
+
+L_MenuItems:
+ @menu = @menu - 1;
+ if (@menu == @ct)
+ goto L_Menu;
+ @choice$ = @menuNames$[@menu];
+ @verb$ = "drinks";
+ if (@choice_eat[@menu])
+ @verb$ = "eats";
+ if (@choice$ != "" && countitem(@choice$))
+ goto L_consume;
+ goto L_Menu;
+
+L_consume:
+ mes "[Injured Mouboo]";
+ mes "The mouboo " + @verb$ + " your " + getitemlink(@choice$) + ".";
+ delitem @choice$, 1;
+ next;
+ if (@choice$ == "LargeHealingPotion")
+ goto L_do_heal;
+ mes "[Injured Mouboo]";
+ mes "Unfortunately, it seems to have had no effect.";
+ next;
+ goto L_Menu;
+
+L_do_heal:
+ callfunc "QuestMoubooHeal";
+ end;
+
+L_Kill:
+ mes "[Injured Mouboo]";
+ if (BaseLevel > 44)
+ goto L_Kill_success;
+ mes "The mouboo deflects your attack and counterattacks!";
+ mes "It misses you only barely.";
+ mes "Injured though it may be, this mouboo is still more than a match for you!";
+ next;
+ goto L_Menu;
+
+L_Kill_success:
+ mes "After some wrestling, the mouboo succumbs to your attacks.";
+ mes "[100 experience points]";
+ getexp 100, 0;
+ @Q_status = @STATE_KILLED_MOUBOO;
+ callsub S_Update_Var;
+ next;
+ goto L_Dead;
+
+L_Dead:
+ mes "[Dead Mouboo]";
+ mes "The dead mouboo is lying on top of a black T-neck sweater.";
+ getinventorylist;
+ if (@inventorylist_count == 100)
+ goto L_Nopickup;
+ getitem "BlackTurtleneck", 1;
+ mes "You pull out the sweater and stuff it into your backpack.";
+ @Q_status = @STATE_TOOK_KILL_REWARD;
+ callsub S_Update_Var;
+ close;
+
+L_took_reward:
+ mes "[Dead Mouboo]";
+ mes "You see a dead mouboo.";
+ close;
+
+L_Nopickup:
+ mes "Unfortunately, you can't carry any more.";
+ close;
+
+L_healed:
+ mes "[Mouboo]";
+ mes "The mouboo is sleeping soundly, smiling in its dreams.";
+ close;
+
+L_close:
+ close;
+
+S_Update_Var:
+ @Q_wr_status = @Q_status | @Q_status_upper;
+ set QUEST_MAGIC,
+ (QUEST_MAGIC & ~(@Q_MASK)
+ | (@Q_wr_status << @Q_SHIFT));
+ return;
+}
diff --git a/npc/012-1/ishi.txt b/npc/012-1/ishi.txt
deleted file mode 100644
index a7322978..00000000
--- a/npc/012-1/ishi.txt
+++ /dev/null
@@ -1,20 +0,0 @@
-// Evol scripts.
-// Author:
-// Micksha
-// Description:
-// Ishi, former trade-in for monster points.
-// THIS IS A PLACEHOLDER!
-
-012-1,53,114,0 script Ishi NPC_ISHI,{
- speech
- l("Welcome. I am Ishi, from the Monster Hunting Association."),
- l("I only follow Aidan around, so make your questions to him instead.");
- next;
- mesn;
- mesc l("Ishi seems to be very pensative of something, it is better if we don't disturb her.");
- close;
-
-OnInit:
- .distance = 4;
- end;
-}
diff --git a/npc/012-1/kaan.txt b/npc/012-1/kaan.txt
deleted file mode 100644
index 2ea7ad2a..00000000
--- a/npc/012-1/kaan.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-// Evol scripts.
-// Author:
-// Micksha
-// Description:
-// Kaan, a guy good for nothing.
-// THIS IS A PLACEHOLDER!
-
-012-1,53,110,0 script Kaan NPC_KAAN,{
- speech
- l("Welcome to Candor!"),
- l("Such a bright shine day! I would love to tell you stories about this town."),
- l("But not now, I'm in the mood to stay under the sun for a while longer."),
- l("I hope Tanisha is not slacking off. I would hate having to go check on her.");
- close;
-
-OnInit:
- .distance = 4;
- end;
-}
diff --git a/npc/012-1/liana.txt b/npc/012-1/liana.txt
deleted file mode 100644
index ac2ceb9b..00000000
--- a/npc/012-1/liana.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-// Evol scripts.
-// Author:
-// Micksha
-// Description:
-// Liana.
-// THIS IS A PLACEHOLDER!
-
-012-1,65,117,0 script Liana NPC_LIANA,{
- mesn;
- mesc l("*sighs*");
- next;
- mesn;
- mesq l("Ayasha went to explore the caves in Candor. They said there was a pretty tree there.");
- next;
- mesn;
- mesq l("...But then she saw the spiders and got scared.");
- next;
- mesn;
- mesq l("Now she is crying looking for me. The poor kid.");
- close;
-
-OnInit:
- .distance = 4;
- end;
-}
diff --git a/npc/012-1/mapflags.txt b/npc/012-1/mapflags.txt
new file mode 100755
index 00000000..8cbd7e72
--- /dev/null
+++ b/npc/012-1/mapflags.txt
@@ -0,0 +1 @@
+//012-1 mapflag resave 012-1,88,141
diff --git a/npc/012-1/marine.txt b/npc/012-1/marine.txt
deleted file mode 100644
index db261fd0..00000000
--- a/npc/012-1/marine.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-// Moubootaur Legends scripts.
-// Authors:
-// Jesusalva
-// Description:
-// This script controls access to Ships, fixing variables.
-
-// Use NPC_LA_MARINE if needed
-012-1,64,133,0 script La Marine#C NPC_HIDDEN,0,0,{
- end;
-
-OnTouch:
- EnterTown("Candor");
-
- warp "marine@"+LOCATION$, 42, 26;
- closedialog;
- close;
-}
diff --git a/npc/012-1/prawors.txt b/npc/012-1/prawors.txt
deleted file mode 100644
index 8acf73a1..00000000
--- a/npc/012-1/prawors.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-// Evol scripts.
-// Author:
-// Micksha
-// Description:
-// Prawors, the captain in Candor.
-// THIS IS A PLACEHOLDER!
-
-012-1,53,122,0 script Prawors NPC_PRAWORS,{
- speech
- l("Arrhoy!"),
- l("Saluc Golden Beard, the greediest of all ship captains, charges money for trips. so if you don't have money to pay him, you're stranded here FOREVER!"),
- l("I hope you enjoy this town! Meanwhile, I wonder where I put my %s...", getitemlink(TreasureMap));
- close;
-
-OnInit:
- .distance = 4;
- end;
-}
diff --git a/npc/012-1/shops.txt b/npc/012-1/shops.txt
new file mode 100755
index 00000000..909e70c6
--- /dev/null
+++ b/npc/012-1/shops.txt
@@ -0,0 +1,75 @@
+
+012-1,36,99,0 shop #FlowerShop NPC32767,661:20,664:20,665:20,662:20,667:20,663:20,671:20,673:20,669:20,672:20,674:20
+
+012-1,36,99,0 script Blossom NPC163,{
+ mes "[Blossom]";
+ mes "\"Hello, would you like to buy some flowers?\"";
+ menu
+ "Sure.", L_Shop,
+ "Not right now.", L_close,
+ "Can I trade this Rose Hat for a differently colored one?", L_RoseHat;
+
+L_Shop:
+ close2;
+ shop "#FlowerShop";
+
+L_RoseHat:
+ @base_id = 897;
+ mes "[Blossom]";
+ mes "\"Certainly, which color do you have?\"";
+ menu
+ "A red one.", L_MenuItems,
+ "A white one.", L_MenuItems,
+ "A pink one.", L_MenuItems,
+ "A yellow one.", L_MenuItems,
+ "An orange one.", L_MenuItems,
+ "A blue one.", L_MenuItems;
+
+L_MenuItems:
+ @have_id = @base_id + @menu - 1;
+
+ mes "[Blossom]";
+ mes "\"And which color would you like?\"";
+ menu
+ "A red one.", L_MenuItems1,
+ "A white one.", L_MenuItems1,
+ "A pink one.", L_MenuItems1,
+ "A yellow one.", L_MenuItems1,
+ "An orange one.", L_MenuItems1,
+ "A blue one.", L_MenuItems1;
+
+L_MenuItems1:
+ @receive_id = @base_id + @menu - 1;
+
+ if (@have_id == @receive_id)
+ goto L_SameColor;
+ if (countitem(@have_id) < 1)
+ goto L_NoItem;
+ delitem @have_id, 1;
+ getitem @receive_id, 1;
+ mes "[Blossom]";
+ mes "\"Here it is.\"";
+ goto L_close;
+
+L_NoItem:
+ mes "[Blossom]";
+ mes "\"Oh, you don't have a Rose Hat in that color.";
+ mes "Did you mean a different color?\"";
+ menu
+ "Yes, I meant a different color.", L_RoseHat,
+ "No, I changed my mind.", L_close;
+
+L_SameColor:
+ mes "[Blossom]";
+ mes "\"Oh, you already have a hat in that color.";
+ mes "Did you want something else?\"";
+ menu
+ "Yes, let me pick a different color.", L_RoseHat,
+ "No, I changed my mind.", L_close;
+
+L_close:
+ @base_id = 0;
+ @have_id = 0;
+ @receive_id = 0;
+ close;
+}
diff --git a/npc/012-1/tiki.txt b/npc/012-1/tiki.txt
deleted file mode 100644
index 5596c2ad..00000000
--- a/npc/012-1/tiki.txt
+++ /dev/null
@@ -1,150 +0,0 @@
-// The Mana World scripts.
-// Author:
-// Jesusalva
-// Description:
-// Tiki is the sandwich maker of Candor
-
-012-1,116,118,0 script Tiki NPC_TIKI,{
- function tikiSubmit;
- function tikiMenu;
- function tikiShop;
- mesn;
- mesq l("Hey there, shady fella. Whaddaya want in Candor shores?");
- next;
- if (getq(General_Cooking) == 7)
- tikiMenu();
- if (getq(General_Cooking) == 8)
- tikiSubmit();
- tikiShop();
- end;
-
-function tikiShop {
- closeclientdialog;
- shop .name$;
- return;
-}
-
-function tikiMenu {
- .@q2=getq2(General_Cooking);
- select
- l("Just wanted to purchase ingredients for cooking."),
- l("Actually, I would like to learn some recipes."),
- l("Actually I'm lost. Sorry.");
- mes "";
- // Explode script as requested
- if (@menu == 3)
- close;
- // Return so shop can take over
- if (@menu == 1)
- return;
- // @menu == 2, "I would like to learn some recipes"
- mesn strcharinfo(0);
- mesc l("You quickly explain the situation and request the %s sandwich.", getitemlink(.@q2 == VEGAN ? MananaSandwich : PioulegSandwich));
- next;
- mesn;
- mesq l("Ahh, I see! Very shady indeed, almost as shady as you are!");
- next;
- mesn;
- mesq l("I would like to help, but I can't. I'm busy, you see! Candor's Sandwich Making Contest is coming up, and I never lost a single instance of it!");
- next;
- select
- l("Ah, too bad, I'll ask Yannika for more ideas, bye."),
- l("How come you never lost before?"),
- l("Perhaps I can help?");
- mes "";
- if (@menu == 1)
- close;
- if (@menu == 2) {
- mesn;
- mesq l("Because I'm so great! I am so good, that the other challengers doesn't even show up in fear of losing to me!");
- next;
- mesn;
- mesq l("Anyway, perhaps you could help me, and I'll help you in exchange. Whaddaya think?");
- next;
- }
- mesn;
- mesq l("It is really easy - I need an idea. Bring me something NEW, revolutionary, to make a sandwich out of it. And I'll teach you the recipe!");
- next;
- setq1 General_Cooking, 8;
- return;
-}
-
-function tikiSubmit {
- mesc "[" + .name$ + "]";
- mesc l("\"Bring me something NEW, revolutionary, to make a sandwich out of it.\"");
- mes "##B" + l("Drag and drop an item from your inventory.") + "##b";
-
- .@id = requestitem();
-
- // If ID is invalid
- if (.@id < 1)
- close;
-
- // If there's not enough items, it is bound, it cannot be traded/dropped/sold, etc.
- // TODO: Prevent plates/bowls from being destroyed this way!!
- if (countitem(.@id) < 1 || checkbound(.@id) || getiteminfo(.@id, ITEMINFO_TYPE) != IT_HEALING) {
- mesc l("This item cannot be given.");
- close;
- }
-
- mesc l("Are you sure you want to give %s to %s? Item will be lost!",
- getitemlink(.@id), .name$), 1;
- if (askyesno() == ASK_NO)
- close;
-
- mesn;
- mesq l("%s puts %s on between two bread slices and try it.", .name$, getitemname(.@id));
- next;
- delitem .@id, 1;
- if (.@id != MoubooSteak) {
- mesn;
- mesc l("%s starts shouting insults at you!", .name$);
- next;
- mesn;
- mesq l("This is the worst. sandwich. ever! How do you dare to give me such thing?!");
- next;
- mesn;
- mesq l("Go get me something else, go do it NOW!!");
- mesc l("...Maybe if he put the cheese and lettuce as you usually do, it would have tasted great... *sigh*");
- close;
- }
- setq1 General_Cooking, 9;
- setq1 General_SmearedHands, 3;
- RECIPES[(.@q2 == VEGAN ? CraftMananaSandwich : CraftPioulegSandwich)]=true;
- mesn;
- mesq l("Uh - Oh. This is... Actually good!");
- next;
- mesn;
- mesq l("I'm sure I'll win this year's contest as well! Hah, just wait and see!");
- next;
- mesn;
- mesq l("What? Still want that shady recipe? Meh, just cut a bread, throw in three lettuce leaves, two cheese, and put the special ingredient - A %s!", getitemname(.@q2 == VEGAN ? Manana : PiouLegs));
- next;
- mesq l("And vói-la, you have your sandwich done. Now go, I have a contest to win! Hahaha!");
- close;
-}
-
-OnInit:
- .distance = 4;
- tradertype(NST_MARKET);
-
- sellitem Bread, -1, 35;
- sellitem PiouLegs, -1, 25;
- sellitem Manana, -1, 20;
- sellitem Cheese, -1, 12;
- sellitem LettuceLeaf, -1, 10;
- sellitem CommonCarp, -1, 8;
- sellitem GrassCarp, -1, 7;
- end;
-
-OnClock0001:
- restoreshopitem Bread, 35;
- restoreshopitem PiouLegs, 25;
- restoreshopitem Manana, 20;
- restoreshopitem Cheese, 12;
- restoreshopitem LettuceLeaf, 10;
- restoreshopitem CommonCarp, 8;
- restoreshopitem GrassCarp, 7;
- end;
-}
-
diff --git a/npc/012-1/vincent.txt b/npc/012-1/vincent.txt
deleted file mode 100644
index e859d02e..00000000
--- a/npc/012-1/vincent.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-// Evol scripts.
-// Author:
-// Micksha
-// Description:
-// Vincent, a child at the Candor beach.
-// THIS IS A PLACEHOLDER!
-
-012-1,121,126,0 script Vincent NPC_VINCENT,{
- speech
- l("Scorpions everywhere!"),
- l("Why do they show up, anyway? I thought Scorpions prefered deserts, not beaches."),
- l("I need to study more... But... I want to play! And I want to make figurines!");
- close;
-
-OnInit:
- .distance = 4;
- end;
-}
diff --git a/npc/012-1/wateranimation.txt b/npc/012-1/wateranimation.txt
deleted file mode 100644
index ad1b41e4..00000000
--- a/npc/012-1/wateranimation.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-// The Mana World scripts.
-// Description:
-// Water animations, splash, fishes, etc...
-
-012-1,87,92,0 duplicate(#fish_river2) #candor_fish01 NPC_WATER_SPLASH
-012-1,86,85,0 duplicate(#fish_river2) #candor_fish02 NPC_WATER_SPLASH
-012-1,98,74,0 duplicate(#fish_river2) #candor_fish03 NPC_WATER_SPLASH
-012-1,94,76,0 duplicate(#fish_river2) #candor_fish04 NPC_WATER_SPLASH
-012-1,61,73,0 duplicate(#fish_river2) #candor_fish05 NPC_WATER_SPLASH
-012-1,65,74,0 duplicate(#fish_river2) #candor_fish06 NPC_WATER_SPLASH
-012-1,58,64,0 duplicate(#fish_river2) #candor_fish07 NPC_WATER_SPLASH
-
diff --git a/npc/012-1/zegas.txt b/npc/012-1/zegas.txt
deleted file mode 100644
index 29f72a5d..00000000
--- a/npc/012-1/zegas.txt
+++ /dev/null
@@ -1,36 +0,0 @@
-// Evol scripts.
-// Author:
-// Micksha
-// Description:
-// Zegas, the guy who want you to clean storage room.
-// THIS IS A PLACEHOLDER!
-
-012-1,48,105,0 script Zegas NPC_ZEGAS,{
- mesn;
- mesc l("*sighs*");
- next;
- mesn;
- mesq l("I need someone to clean the storage room...");
- next;
- mesn;
- mesq l("Hey, you! Don't you want to clean the storage room for me?");
- next;
- select
- l("Yes, of course!"),
- l("'course not!");
- mes "";
- mesn;
- if (@menu == 2) {
- mesq l("Nobody ever does...");
- } else {
- mesc l("Zegas hands you a broom.");
- mesq l("Good, now start cleaning it!");
- // TODO: Maybe we actually could have you cleaning the room boxes.
- // Then you find a peculiar dusty utensil inside. Then, some quest begins.
- }
- close;
-
-OnInit:
- .distance = 4;
- end;
-}