// TMW2 Script.
// Author:
// Saulc
// Jesusalva
003-1,109,150,0 script Silvia NPC_FEMALE_ARGAES,{
if (strcharinfo(0) == $MOST_HEROIC$) npctalk l("Oh my, the great @@ has come to talk to me!", $MOST_HEROIC$);
if (getq(TulimsharQuest_Swezanne) == 4) goto L_Message;
.@q2=getq2(TulimsharQuest_Swezanne);
if (.@q2 < santime()) goto L_Unallowed;
if (getq(TulimsharQuest_Swezanne) == 1 && getq(TulimsharQuest_Lifestone) < 2) goto L_Lifestone;
if (strcharinfo(0) != $MOST_HEROIC$) hello;
if (getq(MineQuest_Naem) == 1) goto L_Hubby;
end;
L_Message:
mesn strcharinfo(0);
mesq l("Your mother asked me to say that she loves you.");
next;
mesn;
mesq l("Oh no, not another stranger she sends me to tell that!");
next;
mesn;
mesq l("She never leaves the shade of that tree, she is always sending messages by other people!!");
next;
mesn;
mesq l("Oh well... That's my mother, and this is why I love her.");
next;
inventoryplace CottonGloves, 1;
getitem CottonGloves, 1;
getexp 105,0;
setq1 TulimsharQuest_Swezanne, 1;
mesn;
mesq l("Thank you, @@. Please take this pair of gloves as a thank you.", strcharinfo(0));
close;
L_Lifestone:
mesn;
mesq l("Hey! Good to see you. I was thinking how I could repay for what you've done for my mother.");
next;
mesn;
mesq l("I can make you a @@, and for that I will want a @@ and 500 GP.", getitemlink(LifestonePendant), getitemlink(Lifestone));
if (getq(TulimsharQuest_Lifestone) == 0) {
next;
mesn;
mesq l("I am not sure of who makes or haves Lifestones. Try looking outside the city. Who knows.");
close;
}
menu
rif(Zeny >= 500 && countitem(Lifestone) > 0, l("Yes, I accept the pendant!")), -,
l("Not now, but I may be back later."), L_Close;
// Whaaaat, this is a major error affecting several scripts!
if (Zeny < 500 || countitem(Lifestone) < 0) {
atcommand("@request Someone is cheating, call Jesusalva at once!");
atcommand("@ban \""+strcharinfo(0)+"\" 15mn"); // I truly hope they bother Jesusalva they were banned
disablenpc "Silvia";
close;
}
Zeny-=500;
delitem Lifestone, 1;
getitem LifestonePendant, 1;
setq(TulimsharQuest_Lifestone, 2);
mes "";
mesn;
mesq l("There you go! Thanks for all the help!");
close;
L_Unallowed:
mesn;
mesq l("Ah, I wonder how my mother Swezanne is faring...");
next;
mesn;
mesq l("She must be thristy, fighting monsters on this sun... If somebody could give her Cactus Potions...");
close;
L_Hubby:
mesc l("Did we brought everything Naem asked?");
mesf l("%d/%d %s",countitem(Aquada), 7, getitemlink(Aquada));
mesf l("%d/%d %s",countitem(PiouLegs), 6, getitemlink(PiouLegs));
mesf l("%d/%d %s",countitem(Cheese), 3, getitemlink(Cheese));
mesf l("%d/%d %s",countitem(HalfCroconut), 3, getitemlink(HalfCroconut));
mesf l("%d/%d %s",countitem(PurpleBlobime), 1, getitemlink(PurpleBlobime));
next;
if (askyesno() == ASK_NO) { closeclientdialog; end; }
if (countitem(Aquada) < 7 ||
countitem(PiouLegs) < 6 ||
countitem(Cheese) < 3 ||
countitem(HalfCroconut) < 3 ||
countitem(PurpleBlobime) < 1) {
mesc l("You lied, and this caused a headache! You should NEVER lie to NPCs, because they may steal your items!");
callfunc("SC_Bonus", 15, SC_POISON, 10);
close;
}
inventoryplace IcedBottle, 1;
delitem Aquada, 7;
delitem PiouLegs, 6;
delitem Cheese, 3;
delitem HalfCroconut, 3;
delitem PurpleBlobime, 1;
getitembound IcedBottle, 1, 4;
setq MineQuest_Naem, 2;
mesn;
mesq l("Hm, groceries? Well, figure out Naem would ask someone to deliver them.");
next;
mesn;
mesq l("Thanks, please tell him I'll make his favorite dish. Oh, could you also deliver him this %s?", getitemlink(IcedBottle));
next;
mesn;
mesq l("The mines are over a Volcano. Unless you're a Redy, the heat will slowly chip away your health if you go deep. But drinking iced water can improve temporarily your situation.");
close;
L_Close:
closedialog;
goodbye;
close;
OnInit:
.@npcId = getnpcid(.name$);
setunitdata(.@npcId, UDT_HEADTOP, NPCEyesD);
setunitdata(.@npcId, UDT_HEADMIDDLE, SilkRobe);
//setunitdata(.@npcId, UDT_HEADBOTTOM, LeatherTrousers); // TODO
setunitdata(.@npcId, UDT_WEAPON, LousyMoccasins);
setunitdata(.@npcId, UDT_HAIRSTYLE, 21);
setunitdata(.@npcId, UDT_HAIRCOLOR, 11);
.sex = G_FEMALE;
.distance = 5;
end;
}