033-1.gat,72,27,0 script Birrod 217, { //TODO: minimum level for quests? set @Q_Barbarians_MASK, NIBBLE_0_MASK; set @Q_Barbarians_SHIFT, NIBBLE_0_SHIFT; set @state, ((QUEST_Barbarians & @Q_Barbarians_MASK) >> @Q_Barbarians_SHIFT); //TODO: think about amount set @candy, 25; set @chocolate, 20; set @candycane, 15; set @sweet_exp, 10000; //TODO set @wolfdrop, ; //TODO set @wolf_exp, ; set @minigame_exp, 5000; if (@state >= 6) goto L_Impressed; if (@state == 5) goto L_Questions; if (@state == 4) goto L_Warrior; if (@state == 3) goto L_Sweets; if (@state == 2) goto L_Kimarr; if (@state == 1) goto L_Fluffy; mes "[Barbarian]"; mes "\"Welcome. My name is Birrod, warrior of the Mangarr.\""; next; mes "\"We usually live high up in the snowy mountains, but we need to solve a problem, so we came down here.\""; next; mes "\"But this shouldn't concern you.\""; close; L_Fluffy: mes "[Birrod]"; mes "\"Kimarr asked you to perform the fluffy hunting? I'm curious how you're going to do it.\""; mes "He grins."; close; L_Kimarr: mes "[Birrod]"; mes "\"Great! Very well done! Welcome to our tribe.\""; next; mes "\"But I think, Kimarr has something for you.\""; close; L_Sweets: mes "Birrod speaks with a lowered voice."; mes "[Birrod]"; mes "\"" + strcharinfo(0) + ", can I ask you for a favor?\""; next; mes "\"I noticed those slime things with the funny hats. And they have so tasty stuff with them!\""; next; mes "He blushes."; mes "[Birrod]"; mes "\"A warrior shouldn't get excited about sweets, so ahm, it would be great if you don't tell Yerrnk and Kimarr about it.\""; next; mes "\"Do you have " + @candy + " Candys, " + @chocolate + " Chocolate Bars and " + @candycane + " Candy Canes for me?\""; menu "Sure.",-, "I'll see what I can do.",L_Close, "I'm a great warrior, I don't have sweets with me!",L_Close; if ((countitem("Candy") < @candy) || (countitem("ChocolateBar") < @chocolate) || (countitem("CandyCane") < @candycane)) goto L_No_Items; delitem "Candy", @candy; delitem "ChocolateBar", @chocolate; delitem "CandyCane", @candycane; getexp @sweet_exp, 0; set @state, 4; callsub S_Update_Mask; mes "[Birrod]"; mes "\"Thank you!\""; mes "He puts the sweets in his pockets covertly."; mes "Then takes one candy and eats it with such a delighted look on his face that's really hard not to burst out in laughter."; close; L_Warrior: //TODO: player can show his fighting abilities by bringing some drop of wolve monsters // wolve monsters are more dangerous and harder to hunt than fluffies -> harder task // reason to hunt them: there unusual aggressive and are a danger for the people living in that area // also use of the items the drop (e.g. fur -> clothes) mes "[Birrod]"; mes "\"Hello, " + strcharinfo(0) + "! Would you like to prove your hunting skills again?\""; next; //TODO: check name of monster mes "\"I noticed many wolverns in this area. When there are so many of them, they reduce the fluffy population too much."; mes "Also they are dangerous to all the small people who live in the town nearby.\""; next; mes "\"Bring me (amount) (TODO:drop of wolvern)."; mes "TODO: add story about what useful can be done with that drop."; menu "Debug succes",-, "Debug no succes",L_Close; set @state, 5; callsub S_Update_Mask; mes "[Birrod]"; mes "\"TODO: impressed, player is ready to become a fully accepted warrior of the tribe. Shall come back when ready for initiation ritual. (that means getting the skill pool skill)\""; close; L_Questions: //TODO: minigame idea: barbarian asks some questions with three possible answers, player needs to always choose the right answer //question are about how the player would act in certain situations and about his attitude // give raging skill if successfull //TODO: find out the problem if (getskilllv(SKILL_POOL) == 0) goto L_Not_Ready; mes "Birrod has a very ceremonial look on his face."; mes "[Birrod]"; mes "\"" + strcharinfo(0) + ", are you ready to become a full-fledged member of our tribe, the Mangarr?\""; menu "Yes, what do I need to do?",-, "That's why I'm here.",-, "Sorry, I have to go. See you.",L_No_Member; mes "Birrod nods earnestly."; mes "[Birrod]"; mes "\"I will ask you some questions."; mes "Think well and be honest, because it will depend on your answers if you will be considered worthily.\""; next; mes "\"What's the most important thing for a true warrior?\""; menu "Strength!",L_Fail11, "A good weapon.",L_Fail12, "Braveness.",L_Success11; L_Fail11: mes "[Birrod]"; mes "\"Strength is indeed important for a warrior. But before you can show strength, you need to have something else.\""; next; goto L_No_Member; L_Fail12: mes "[Birrod]"; mes "\"Are you kidding?\""; next; goto L_No_Member; L_Success11: mes "[Birrod]"; mes "\"Wise words.\""; next; mes "\"What would you do if you are wounded but Yetis are attacking our tribe?\""; menu "Run as fast as I can.",L_Fail21, "Fight no matter what.",L_Fail22, "Try to hold them back until everyone is safe, then retreat.",L_Success21; L_Fail21: mes "[Birrod]"; mes "\"You will never get a accepted member of our tribe with that attitude.\""; next; goto L_No_Member; L_Fail22: mes "[Birrod]"; mes "\"Honorably but stupid.\""; next; goto L_No_Member; L_Success21: mes "[Birrod]"; mes "\"Right.\""; next; mes "\"When you are on a hunting trip with your comrades and it's time to set up a camp in the evening, what things do you do?\""; menu "Take care of everyone who got wounded.",L_Success31, "Pitch the tent and make a fire.",L_Success32, "Lay down and rest.",L_Fail31; L_Success31: mes "[Birrod]"; mes "\"You're a caring person. Good.\""; next; goto L_Success3; L_Success32: mes "[Birrod]"; mes "\"You're diligent, good.\""; next; goto L_Success3; L_Fail31: mes "[Birrod]"; mes "\"You wouldn't make friends that way.\""; next; goto L_No_Member; L_Success3: mes "\"What is your goal in life?\""; menu "Learning new things and see the world.",L_Success41, "Becoming as powerful as I can.",L_Fail41, "Protect the ones I love.",L_Success42; L_Success41: mes "[Birrod]"; mes "\"You're curious. An attribute we appreciate.\""; next; goto L_Success4; L_Fail41: mes "[Birrod]"; mes "\"You're seeking power? For what?\""; next; goto L_No_Member; L_Success42: mes "[Birrod]"; mes "\"An honorable goal.\""; next; L_Success4: mes "\"What do you think is a good reason to fight and kill?\""; menu "Because I want it.",L_Fail51, "To survive.",L_Success51, "To protect someone in need.",L_Success52; L_Fail51: mes "[Birrod]"; mes "\"You think so?\""; next; goto L_No_Member; L_Success51: mes "[Birrod]"; mes "\"Right.\""; next; goto L_Success5; L_Success52: mes "[Birrod]"; mes "\"Yes, that's the most honorable reason.\""; next; L_Success5: getexp @minigame_exp, 0; mes "TODO: some introductionw words to the skill"; setskill SKILL_WARRIOR_RAGING, 1; set @state, 6; callsub S_Update_Mask; close; L_Impressed: mes "\"I'm very proud of you being a member of the tribe.\""; close; L_No_Items: mes "\"" + strcharinfo(0) + ", remember that a member of our tribe is candid and honest.\""; close; L_Not_Ready: mes "[Birrod]"; mes "TODO: not ready, some hint to skill pool"; close; L_No_Member: mes "Birrod shakes his head."; mes "[Birrod]"; mes "\"Think again about your position in our tribe and what you want to achieve."; mes "Come back when you feel better prepared.\""; close; L_Close: close; S_Update_Mask: set QUEST_Barbarians, (QUEST_Barbarians & ~(@Q_Barbarians_MASK)) | (@state << @Q_Barbarians_SHIFT); return; }