// TMW2 Script
// Author:
// Saulc
// Jesusalva
// Description:
// Part of Anwar Field quest
003-1,66,30,0 script Tinris NPC_ELF,{
.@q=getq(TulimsharQuest_AnwarField);
// Results: 6 - nothing. 7- bug feast.
// On status 7, you need to talk to Eomie.
// Then Eomie will finish stuff for you, and it's reward time.
if (.@q == 10) goto L_Gift;
if (.@q == 7) goto L_Success;
if (.@q == 6) goto L_Fail;
if (.@q == 4) goto L_Craft;
if (.@q == 3) goto L_Back;
if (.@q == 2) goto L_Start;
if (.@q == 1) goto L_Refuse;
// Placeholder dialog
if (.@q == 5)
mesc l("I still have Anwar's fertilizer with me.");
mesn;
mesq l("We elves have greater affinity for magic than humans.");
next;
mesq l("However, our skill growth rate is much smaller than those of humans.");
next;
mesq l("In the end, elves would have quite the age to rivalize with human wizards.");
close;
// READ THE HOLY DIALOGS!!
L_Refuse:
mesn strcharinfo(0);
mesq l("Hello! Anwar sent me to get fertilizer to save Tulimshar from famine, could you help me?");
next;
mesn;
mesq l("No.");
close;
L_Start:
mesn strcharinfo(0);
mesq l("Hello, could I help you in exchanger of fertilizer?");
next;
mesn;
mesq l("I like people like you, straight to the subject.");
next;
mesn;
mesq l("The birthday of me and my girlfriend is coming up. Bring me 12 @@ and I'll make the fertilizer for you.", getitemlink(CherryCake));
setq TulimsharQuest_AnwarField, 3;
close;
L_Back:
mesn;
mesq l("So, did you brought me the twelve cherry cakes?");
mes "";
mesn strcharinfo(0);
if (askyesno() != ASK_YES) {
close;
}
mes "";
if (countitem("CherryCake") < 12)
goto L_Lying;
delitem CherryCake, 12;
getexp 200, 5;
setq TulimsharQuest_AnwarField, 4;
mesn;
mesq l("Okay, that is very useful. However, I do need a few reagents to make it.");
next;
mesn;
mesq l("Please, come back later. I'll see whatever I can fetch for that.");
close;
L_Craft:
mesn;
mesq l("So, for the fertilizer. The thing is, all that thing is unstable.");
next;
mesn;
mesq l("This fertilizer is projected to protect the plants from plagues, bugs, scorpions and maggots, trying to not be a plague itself.");
next;
mesn;
mesq l("That's very, very risky. I need @@ @@ and @@ @@ to make a Potion to you, and I won't warrant it will work.", 3, getitemlink(Plushroom), 9, getitemlink(MaggotSlime));
next;
mesn;
mesq l("Give that to whoever needs them, and see if it works. Then come tell me the result. Do you have the reagents?");
if (askyesno() != ASK_YES)
close;
mes "";
if (countitem(Plushroom) < 3||
countitem(MaggotSlime) < 9)
goto L_Lying;
delitem Plushroom, 3;
delitem MaggotSlime, 9;
setq1 TulimsharQuest_AnwarField, 5;
mesn;
mesq l("Here it is. Come back to report the results.");
close;
L_Fail:
setq1 TulimsharQuest_AnwarField, 4;
.@q2=getq2(TulimsharQuest_AnwarField);
if (.@q2 < 10)
getexp 180-(.@q2*10), 0;
else
getexp 90, 0;
mesn;
switch (.@q2) {
case 1:
mesq l("Well, that could fail, I said. Here is some experience.");
break;
case 2:
mesq l("Don't worry, third time is the charm. Here is some experience. Let's try again.");
break;
case 3:
mesq l("Okay, here is some experience, and forgot what I've said before. We can try again.");
break;
case 4:
mesq l("Don't worry, I've tweaked my formula this time. Here is some experience and let's try again!");
break;
case 5:
mesq l("I'm sorry, I just... Maybe if...? Aha! Here's the EXP, ready for a next go?");
break;
case 6:
mesq l("Uhm, maybe I mashed the Plushroom too hard this time. Here's EXP as usual, let's try again?");
break;
case 7:
mesq l("I shall not fail any further, I think my new formula is perfect! Here's the EXP, but I need material to use it!");
break;
case 8:
mesq l("I never knew you could fail THAT hard. I've took Saulc's Fertilizer's recipe, success chance is of 100% if you want to try again.");
break;
default:
mesq l("Well, that could fail, I said. Here is some experience.");
break;
}
next;
if (countitem(Plushroom) >= 3 &&
countitem(MaggotSlime) >= 9)
goto L_Craft;
mesn;
mesq l("Now go, and fetch the materials again. I'll make another fertilizer for you.");
close;
L_Success:
mesn;
mesq l("WHAT? The farm is plagued with insects?!");
next;
mesn;
mesq l("Quick, tell that to Eomie. She knows how to do Bug Bombs which won't harm the plants!");
close;
L_Gift:
.@q2=getq2(TulimsharQuest_AnwarField);
if (.@q2 & 1) {
mesn;
mesq l("Thanks for the nice gift!");
close;
}
// Tip. WHAT DID YOU DID WITH THE BOUND ITEM? IT SHOULD BE HARD TO GET RID OF IT...
if (countitem(TortugaShell) < 1) {
mesn;
mesq l("Ah, I wish I got something for helping people out...");
close;
}
mesn strcharinfo(0);
mesq l("Anwar sent you this, erm, hum... @@.", getitemlink(TortugaShell));
next;
setq2 TulimsharQuest_AnwarField, .@q2+1;
delitem TortugaShell, 1;
getexp 95, 1;
mesn;
mesq l("WOW, THIS IS AWESOME! Many, many thanks!!");
close;
L_Lying:
mesn;
mesq l("Ah, so you think you can fool me?");
next;
percentheal -5, -5;
warp "Save", 0, 0;
dispbottom l("Ah... Was I warped?");
closedialog;
close;
OnInit:
.@npcId = getnpcid(.name$);
//setunitdata(.@npcId, UDT_HEADTOP, 2929); // TODO: This NPC is an Elf and therefore, CANNOT use NPCEyes.
setunitdata(.@npcId, UDT_HEADMIDDLE, ForestArmor);
setunitdata(.@npcId, UDT_HEADBOTTOM, CottonTrousers);
setunitdata(.@npcId, UDT_WEAPON, DeepBlackBoots); // Boots
setunitdata(.@npcId, UDT_HAIRSTYLE, 3);
setunitdata(.@npcId, UDT_HAIRCOLOR, 19);
.sex = G_MALE;
.distance = 5;
end;
}