summaryrefslogtreecommitdiff
path: root/npc/008-2-4/bernard.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/008-2-4/bernard.txt')
-rw-r--r--npc/008-2-4/bernard.txt222
1 files changed, 0 insertions, 222 deletions
diff --git a/npc/008-2-4/bernard.txt b/npc/008-2-4/bernard.txt
deleted file mode 100644
index a7cd2382..00000000
--- a/npc/008-2-4/bernard.txt
+++ /dev/null
@@ -1,222 +0,0 @@
-// Evol scripts.
-// Author:
-// gumi
-// Quest states:
-// [1] 0 - cannot do the quest
-// [1] 1 - can do the quest
-// [1] 2 - bernard wants roasted maggot
-// [1] 3 - brought maggot
-// [1] 4 - bernard wants maggot slime
-// [1] 5 - brought maggot slime
-// [1] 6 - mikhail needs maggot slime
-// [1] 7 - brought maggot slime
-// [2] unused
-// [3] unused
-// [t] unused
-// Description:
-// Bernard wants to make a maggot slime soup
-
-008-2-4,34,29,0 script Bernard NPC_BERNARD,{
-
- if (BaseLevel < .min_level)
- {
- npctalk3 generic(16 | 32);
- end;
- }
-
- function soup_intro {
- if (rand(2) == 1)
- {
- speech 4,
- l("The fields are crawling with maggots."),
- l("Where is Mikhail?"),
- l("What is taking them so long?"),
- l("Could I ask a favor of you?");
- }
- else
- {
- speech 4,
- l("The taste of maggots in soup is... unforgettable."),
- l("They taste simply divine!"),
- l("I sent someone to kill me some maggots and they have yet to return."),
- l("Would you help me kill some?");
- }
-
- if (selectd(l("Yes."), l("No.")) == 2)
- {
- return;
- }
-
- if (rand(2) == 1)
- {
- speech 4,
- l("Great!"),
- l("I need a %s for my soup.", getitemlink(.first_item));
- }
- else
- {
- speech 4,
- l("Bring me a %s.", getitemlink(.first_item)),
- l("I'll give you something if you do.");
- }
-
- speech 8,
- l("Please bring it to me!");
-
- setq .quest, 2;
- close;
- }
-
- function soup_reminder_roasted {
- speech
- l("Oh, please hurry and bring me a %s.", getitemlink(.first_item)),
- l("I'm yearning for maggot soup!");
- close;
- }
-
- function soup_no_room {
- speech 1 | 8,
- "...",
- l("It seems you don't have room for my reward."),
- l("I'll wait until you do.");
- close;
- }
-
- function soup_reward_roasted {
- speech 4,
- l("Oooh, perfect! It's perfect!"),
- l("You brought me my %s!", getitemlink(.first_item)),
- l("Here, have some %s for your troubles.",
- getitemlink(.first_reward_item));
-
- if (checkweight(.first_reward_item, .first_reward_amount) != true)
- soup_no_room;
-
- if (countitem(.first_item) < 1)
- close;
-
- delitem .first_item, 1;
- quest_item(.maxLevel, .first_reward_item, .first_reward_amount);
- quest_xp(.maxLevel, .first_reward_exp);
- setq .quest, 3;
-
- speech 8,
- l("Now let's see...");
- close;
- }
-
- function soup_ask_slime {
- speech
- l("Thank you so much!"),
- l("But... something is missing to make the soup creamy."),
- l("I need %d %s for that.",
- .second_item_qty, getitemlink(.second_item)),
- l("Bring them to me, and I'll give you something nice.");
-
- setq .quest, 4;
- close;
- }
-
- function soup_reminder_slime {
- speech
- l("Please do hurry and bring me %d %s, so I can finish my soup!",
- .second_item_qty, getitemlink(.second_item));
- close;
- }
-
- function soup_reward_slime {
- speech
- l("Nice!"),
- l("They're perfect, just perfect!"),
- l("You brought me the %d %s!",
- .second_item_qty, getitemlink(.second_item)),
- l("Here, have some %s as reward.",
- getitemlink(.second_reward_item));
-
- if (checkweight(.second_reward_item, .second_reward_amount) != true)
- soup_no_room;
-
- if (countitem(.second_item) < .second_item_qty)
- close;
-
- delitem .second_item, .second_item_qty;
- quest_item(.maxLevel, .second_reward_item, .second_reward_amount);
- quest_xp(.maxLevel, .second_reward_exp);
- setq .quest, 5;
-
- close;
- }
-
- function soup_thanks_slime {
- speech
- l("I didn't mention it before, but I also put beer in my soup."),
- l("I hope you like beer as much as I do, because, you see..."),
- l("Beer is life!");
- close;
- }
-
- function soup_thanks_mikhail {
- speech
- l("My help, Mikhail, finally returned with the slimes I needed."),
- l("I wonder what took him so long?");
- close;
- }
-
-
- // OnTalk:
- switch (getq(.quest))
- {
- case 0:
- case 1: soup_intro; break;
- case 2:
- if (countitem(.first_item) < 1)
- soup_reminder_roasted;
- else
- soup_reward_roasted;
- break;
- case 3: soup_ask_slime; break;
- case 4:
- if (countitem(.second_item) < .second_item_qty)
- soup_reminder_slime;
- else
- soup_reward_slime;
- break;
- case 5:
- case 6: soup_thanks_slime; break;
- default: soup_thanks_mikhail;
- }
-
- closeclientdialog();
- close;
-
-OnPCLoginEvent:
-OnPCBaseLvUpEvent:
- if (BaseLevel >= .min_level && getq(.quest) < 1)
- {
- setq .quest, 1; // allow the player to do the quest
- dispbottom l("New quest available: %s (level %d+)",
- getquestlink(.quest), .min_level); // XXX: requires new manaplus versions, maybe show a different message for old versions?
- }
- end;
-
-OnInit:
- .min_level = 10; // min level to do the quest
- .maxLevel = 30;
-
- .first_item = RoastedMaggot;
- .first_reward_item = CherryCake;
- .first_reward_amount = 5;
- .first_reward_exp = 100;
-
- .second_item = MaggotSlime;
- .second_item_qty = 3;
- .second_reward_item = Beer;
- .second_reward_amount = 3;
- .second_reward_exp = 100;
-
- .quest = HurnscaldQuests_Soup;
- .quest_debug = .quest;
- .distance = 3;
-
- end;
-}