008-1,101,30,0 script Hinnak NPC142,{
@inspector = ((QUEST_Hurnscald & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT);
if (@inspector == 10) goto L_NohMask;
goto L_No_NohMask;
L_No_NohMask:
@state = ((QUEST_Hurnscald & NIBBLE_1_MASK) >> NIBBLE_1_SHIFT);
if (@state == 1) goto L_Exchange;
if (@state == 2) goto L_ThanksAgain;
if (getequipid(equip_head) == 751) goto L_Intro_Hat;
mesn l("Farmer Hinnak");
mes "\"Argh! I hate them! I @#$% hate them! I @#$% hate these @#$% pinkies!\"";
next;
menu
"You need some anger control therapy.", L_close,
"Why do you hate them?", L_Reason;
L_Intro_Hat:
mes "The farmer lunges at you with a farming implement.";
next;
heal -50, 0;
menu
"I'm out of here.", L_close,
"Whoa, what are you doing?", L_Intro_Hat_Explain;
L_Intro_Hat_Explain:
mesn l("Farmer Hinnak");
mes "\"Sorry, you look like a pinkie. They've been destroying my fields, and I guess I got a bit worked up.\"";
next;
goto L_Help;
L_Reason:
mesn l("Farmer Hinnak");
mes "\"These @#$% beasts are jumping around in my fields destroying all my harvest.";
mes "But they are too fast. I can't catch them.\"";
next;
menu
"Want me to help you?", L_Help,
"Well, life ain't fair.", L_close;
L_Help:
mesn l("Farmer Hinnak");
mes "\"Yes, you look quite fast. Maybe you can catch some of them. That will pay them a lesson.";
mes "Slay some of them and bring me 10 of their antennae.\"";
@state = 1;
callsub S_Update_Mask;
next;
menu
"Sure, I'm on my way", L_close,
"How much is this worth to you?", L_Reward;
L_Reward:
mesn l("Farmer Hinnak");
mes "\"Well, I can't offer you much. But I got an old scythe laying around. Maybe you can use it as a weapon.\"";
goto L_close;
L_Exchange:
if (getequipid(equip_head) != 751)
goto L_Exchange_Start;
mes "The farmer glares at your hat.";
next;
goto L_Exchange_Start;
L_Exchange_Start:
mesn l("Farmer Hinnak");
mes "\"Have you got the 10 antennae?\"";
next;
menu
"Not yet, but I am working on it.", L_close,
"Sure, here they are!", L_Exchange_Exchange;
L_Exchange_Exchange:
if (countitem("PinkAntenna") < 10)
goto L_Exchange_Notenough;
getinventorylist;
if (@inventorylist_count == 100 && countitem("PinkAntenna") > 10)
goto L_Exchange_TooMany;
delitem "PinkAntenna", 10;
getitem "Scythe", 1;
@state = 2;
callsub S_Update_Mask;
mesn l("Farmer Hinnak");
mes "\"Thank you very much. I've got something for you. My old scythe. Maybe you can use it as a weapon. It is a bit cumbersome but its strikes are deadly.\"";
goto L_close;
L_Exchange_Notenough:
mesn l("Farmer Hinnak");
mes "\"It doesn't look like you do.\"";
goto L_close;
L_Exchange_TooMany:
mesn l("Farmer Hinnak");
mes "\"Looks like you don't have room for this. Come back later to receive your reward. Hold on to the antennea until then.\"";
goto L_close;
L_ThanksAgain:
if (getequipid(equip_head) == 751)
goto L_ThanksHat;
mesn l("Farmer Hinnak");
mes "\"Good to see you again, and thanks again for helping me with the pinkies!\"";
next;
goto L_ThanksMenu;
L_ThanksHat:
mesn l("Farmer Hinnak");
mes "\"That better be a trophy on your head.\"";
menu
"It is.", L_Next;
L_Next:
mesn l("Farmer Hinnak");
mes "\"Good then. Thanks for your help with the pinkies.\"";
goto L_ThanksMenu;
L_ThanksMenu:
menu
"Sure, any time!", L_Next1,
"Anything else you want me to do?", L_Next1,
"You're welcome. Bye!", L_Bye;
L_Next1:
mesn l("Farmer Hinnak");
mes "\"Actually, it's been a long day. If it's no trouble, could you get me a beer?\"";
next;
menu
"Here you are.", L_GiveBeer,
"Sure, I'll go get one. Bye!", L_Bye,
"You shouldn't drink while working!", L_Next2;
L_Next2:
mesn l("Farmer Hinnak");
mes "\"Well, I'm done for the day, and I'm quite old enough to decide when I can have a beer, thank you!\"";
next;
menu
"Sorry... here you are.", L_GiveBeer,
"I don't have any.", L_NoBeer;
L_GiveBeer:
if (countitem("Beer") < 1)
goto L_NoBeer;
delitem "Beer", 1;
mesn l("Farmer Hinnak");
mes "Hinnak takes a sip.";
mes "\"Aaah! Nothing like a well-deserved beer after a long day of tending the crops!\"";
mes "\"Thanks, that was very kind of you!\"";
next;
mesn l("Farmer Hinnak");
mes "He takes another sip.";
mes "\"Thanks! You know, I had the strangest thing happen to me. I had this patch of ground that was really clumpy; lots of clay, you see.\"";
next;
mesn l("Farmer Hinnak");
mes "\"Right over there.\"";
mes "He points to a stretch of soft, raked ground.";
mes "\"Looks much better now, doesn't it? But how I got there is kind-a scary...\"";
next;
mesn l("Farmer Hinnak");
mes "\"I'd been trying to break it up for a while, but that kind of work is a pain. So my wife said that I should go and see the witch, just in case she knows something.\"";
next;
mesn l("Farmer Hinnak");
mes "\"And sure enough I ask the witch, and she has a look at it. 'Nothing I can do', she says, 'but I can ask a friend'.\"";
next;
mesn l("Farmer Hinnak");
mes "\"So the next day another witch shows up. Gorgeous woman, but when she looked at me, the scares went scuttling down my spine....\"";
mes "\"First thing she asked was if I'm a farmer. Said her friend had told her that I needed help.\"";
next;
mesn l("Farmer Hinnak");
mes "\"I show her what the problem is, and she tells me to go inside and wait.\"";
next;
mesn l("Farmer Hinnak");
mes "\"Hinnak drains his beer in one long sip, then hesitates.";
next;
mesn l("Farmer Hinnak");
mes "\"So I go inside. I'm barely in when it starts raining outside, pouring cats and mouboos!\"";
next;
mesn l("Farmer Hinnak");
mes "\"Not so weird, perhaps, except that it was been bright and sunny just a second before! So I rush out, my wife telling me to leave the witch alone, and I see her standing there in the middle of the rain...\"";
next;
mesn l("Farmer Hinnak");
mes "\"None of the raindrops touched her, as if they was afraid!\"";
next;
mesn l("Farmer Hinnak");
mes "\"Then she yells out some gobbledygook word, and out of the ground there comes a swarm of maggots, crawling and digging and climbing over each other's backs...\"";
next;
mesn l("Farmer Hinnak");
mes "\"And then she turns to me! Seeing her stare, for a moment there I think that she'll turn me into a pinkie, for sure...\"";
next;
mesn l("Farmer Hinnak");
mes "\"But all she says is, 'if you'd stayed inside, you wouldn't be wet now'.\"";
next;
menu
"Hahaha!", L_Sagatha_hahaha,
"Whoah, scary...", L_Sagatha_scary,
"What was that gobbledygook word?", L_Sagatha_word,
"I better go now.", L_Bye;
L_Sagatha_hahaha:
mesn l("Farmer Hinnak");
mes "\"Yeah, funny now... But you should've seen that stare! Ah, well, never mind.\"";
goto L_close;
L_Sagatha_scary:
mesn l("Farmer Hinnak");
mes "\"Yeah, you could say that...\"";
mes "He stares into his empty beer jug, as if wishing it weren't empty yet.";
goto L_close;
L_Sagatha_word:
mesn l("Farmer Hinnak");
mesq l("Oh, I can't be sure... but something like '%s', I think.", b("kalmurk"));
if (getskilllv(SKILL_MAGIC)) {
learnskill SKILL_KALMURK;
} else {
mesc l("You wonder if you could do the same, had you more magic power.");
mesc l("Actually... Didn't you heard rumors about a Mana Seed somewhere nearby?");
}
goto L_close;
L_NoBeer:
mesn l("Farmer Hinnak");
mesq l("Ah... no beer? Oh well.");
goto L_close;
L_Bye:
mesn l("Farmer Hinnak");
mesq l("Bye!");
goto L_close;
L_NohMask:
menu
"Did you see anyone in a mask come by here at night?", L_NohMask_Mask,
"Did you see anyone with a large satchel come by here at night?", L_NohMask_Satchel,
"Hello.", L_No_NohMask;
L_NohMask_Mask:
mesn l("Farmer Hinnak");
mes "\"No. It tends to be too dark to see a mask.\"";
goto L_close;
L_NohMask_Satchel:
mesn l("Farmer Hinnak");
mes "\"Yes, I saw someone with a large sack on their back go to the mining camp.\"";
goto L_close;
L_close:
@state = 0;
@inspector = 0;
close;
S_Update_Mask:
QUEST_Hurnscald = (QUEST_Hurnscald & ~(NIBBLE_1_MASK)) | (@state << NIBBLE_1_SHIFT);
return;
}