From beea050d4600732d51d5a293f690b50f8cb9db94 Mon Sep 17 00:00:00 2001 From: Jessica Tölke Date: Sun, 28 Aug 2011 16:58:30 +0200 Subject: Barbarians: Birrod and Yerrnk changed to new scripting guidelines and some dialogue about the Raging Skill added. --- world/map/npc/033-1/birrod.txt | 412 +++++++++++++++++++++-------------------- 1 file changed, 211 insertions(+), 201 deletions(-) (limited to 'world/map/npc/033-1/birrod.txt') diff --git a/world/map/npc/033-1/birrod.txt b/world/map/npc/033-1/birrod.txt index 24b5bd8f..f560b0d0 100644 --- a/world/map/npc/033-1/birrod.txt +++ b/world/map/npc/033-1/birrod.txt @@ -1,252 +1,262 @@ -033-1.gat,72,27,0 script Birrod 217, { +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 @Q_Barbarians_MASK, NIBBLE_0_MASK; + set @Q_Barbarians_SHIFT, NIBBLE_0_SHIFT; - set @state, ((QUEST_Barbarians & @Q_Barbarians_MASK) >> @Q_Barbarians_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; + set @candy, 25; + set @chocolate, 20; + set @candycane, 15; + set @sweet_exp, 10000; + +// different idea: wolf ambushs on 034-1 +//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; + 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; + mes "[Birrod]"; + mes "\"Great! Very well done! Welcome to our tribe.\""; + next; + mes "\"But I think, Kimarr has something for you.\""; + close; +// TODO: decide whether to leave out this part or not 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; + 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 +// TODO: player can show his fighting abilities by bringing some drop of wolve monsters +// different idea: wolf ambushs on 034-1 // 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; + 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 "alternative: hunt (amount) of the aggressive wolverns in forest in the west."; + 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; + if (getskilllv(SKILL_POOL) == 0) goto L_Not_Ready; + mes "[Birrod]"; + mes "\"Your skills are impressing. You are worthy to be called a warrior of the Mangarr, if you accept.\""; + next; 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; + 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; + 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; + 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; + 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; + 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; + 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; + 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; + 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; + 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; + 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; + 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; + 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; + mes "[Birrod]"; + mes "\"You're seeking power? For what?\""; + next; + goto L_No_Member; L_Success42: - mes "[Birrod]"; - mes "\"An honorable goal.\""; - next; + 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; + 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; + mes "[Birrod]"; + mes "\"You think so?\""; + next; + goto L_No_Member; L_Success51: - mes "[Birrod]"; - mes "\"Right.\""; - next; - goto L_Success5; + mes "[Birrod]"; + mes "\"Right.\""; + next; + goto L_Success5; L_Success52: - mes "[Birrod]"; - mes "\"Yes, that's the most honorable reason.\""; - next; + 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; + getexp @minigame_exp, 0; + setskill SKILL_WARRIOR_RAGING, 1; + set @state, 6; + callsub S_Update_Mask; + mes "You feel an exciting vim inside of you."; + mes "[Birrod]"; + mes "\"You are now a warrior of the Mangarr.\""; + next; + mes "\"Therefore you gain the ability to put back your own safety for Raging in battle with a tremendous power."; + mes "This power now lies within you, waiting for someone to help you focusing on it.\""; + close; L_Impressed: - mes "\"I'm very proud of you being a member of the tribe.\""; - close; + 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; + 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; + mes "[Birrod]"; + mes "\"" + strcharinfo(0) + ", you've shown that you have great hunting skills and are an enrichment to our tribe."; + mes "But you still lack the needed mental skills to become a full member of our tribe.\""; + next; + mes "\"Roam this world to find more experienced persons than yourself to learn new things."; + mes "Then come back when you've gained the ability to focus your mind.\""; + 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; + 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; + close; S_Update_Mask: set QUEST_Barbarians, - (QUEST_Barbarians & ~(@Q_Barbarians_MASK)) + (QUEST_Barbarians & ~(@Q_Barbarians_MASK)) | (@state << @Q_Barbarians_SHIFT); return; } -- cgit v1.2.3-60-g2f50