027-2.gat,118,23,0 script Werewolf 305,{
set @Graveyard_Inn_MASK, NIBBLE_5_MASK;
set @Graveyard_Inn_SHIFT, NIBBLE_5_SHIFT;
set @state, ((QUEST_Graveyard_Inn & @Graveyard_Inn_MASK) >> @Graveyard_Inn_SHIFT);
set @ANIMALBONES_AMOUNT, 30;
set @ANIMALBONES_EXP, 75000;
if (@state > 1) goto L_Happy;
if (@state == 1) goto L_Bones;
mes "[Werewolf]";
mes "\"What a nice place here, isn't it?\"";
next;
mes "\"Just the stuff they call 'food' in here is awful, bah.\"";
if (baselevel < 80) goto L_Close;
next;
mes "\"I like bones from big animals, the best would be with some raw flesh at it. But only the bones are fine too.\"";
next;
mes "\"Can you bring me " + @ANIMALBONES_AMOUNT + " of them?\"";
set @state, 1;
callsub S_Update_Mask;
close;
L_Bones:
mes "[Werewolf]";
mes "\"Do you have " + @ANIMALBONES_AMOUNT + " bones of an animal for me?\"";
next;
if ((countitem("Bone") > 0) && (countitem("AnimalBones") >= @ANIMALBONES_AMOUNT))
menu
"Yes, here they are.",L_Bring,
"What about this normal bone?",L_Human,
"Not yet.",L_Close;
if (countitem("Bone") > 0)
menu
"What about this normal bone?",L_Human,
"Not yet.",L_Close;
if (countitem("AnimalBones") >= @ANIMALBONES_AMOUNT)
menu
"Yes, here they are.",L_Bring,
"Not yet.",L_Close;
menu
"Not yet.",-;
close;
L_Bring:
if (countitem("AnimalBones") < @ANIMALBONES_AMOUNT)
goto L_Not_Enough;
delitem "AnimalBones", @ANIMALBONES_AMOUNT;
getexp @ANIMALBONES_EXP, 0;
mes "[Werewolf]";
mes "\"Ah! Wonderful! Thank you.\"";
set @state, 2;
callsub S_Update_Mask;
close;
L_Human:
mes "[Werewolf]";
mes "\"What?! That's a humans bone! I don't eat humans. That brings only trouble.\"";
next;
mes "\"Beside of that I heard, they taste is bad.\"";
close;
L_Not_Enough:
mes "[Werewolf]";
mes "\"Are you trying to kid me? I do can count.\"";
close;
L_Happy:
mes "You see the werewolf happily crunching the bones you brought him.";
mes "[Werewolf]";
mes "\"Delicious. Thanks again.\"";
next;
mes "\"By the way... would you be interested in a little round of black jack?\"";
mes "He pulls a card game out of his pocket.";
next;
mes "[Werewolf]";
mes "\"You will need TODO: how much? GP.\"";
menu
"Sure, why not?",L_Game,
"No, thanks.",-;
close;
L_Game:
//TODO: add
close;
L_Close:
close;
S_Update_Mask:
set QUEST_Graveyard_Inn,
(QUEST_Graveyard_Inn & ~(@Graveyard_Inn_MASK))
| (@state << @Graveyard_Inn_SHIFT);
return;
}