diff options
Diffstat (limited to 'world/map/npc/027-2/crying_child.txt')
-rw-r--r-- | world/map/npc/027-2/crying_child.txt | 186 |
1 files changed, 186 insertions, 0 deletions
diff --git a/world/map/npc/027-2/crying_child.txt b/world/map/npc/027-2/crying_child.txt new file mode 100644 index 00000000..d7cbeac3 --- /dev/null +++ b/world/map/npc/027-2/crying_child.txt @@ -0,0 +1,186 @@ +// author: alastrim +// love triangle quest, involved npcs: Reid's Ghost, Hamond, Savaric, Aldred, Golbenez + +027-2.gat,50,92,0 script Aldred 314,{ + +// Crying Child subquest +// Variable states: +// 1 = You agree to help the child to find the ring outside +// 2 = You found the ring (see 027-1.../monsters.txt) +// 3 = You gave the ring to the child +// 4 = You decided to help the child again, by investigating what the ring means to them. +// 5 = The father/husband told you what he thinks of the ring +// 6 = The mother/wife told you what he thinks of the ring +// 7 = The kid decided that the ring has no value to their parents, so you can have it. + + set @Graveyard_Inn_MASK, NIBBLE_2_MASK; + set @Graveyard_Inn_SHIFT, NIBBLE_2_SHIFT; + + set @state, ((QUEST_Graveyard_Inn & @Graveyard_Inn_MASK) >> @Graveyard_Inn_SHIFT); + + if (Sex == 0) set @madamsir$, "Madam"; + if (Sex == 1) set @madamsir$, "Sir"; + if (@state == 7) goto L_return5; + if (@state == 6) goto L_return4; + if (@state == 4 || @state == 5) goto L_return3; + if (@state == 3) goto L_return2; + if (@state == 2) goto L_return1; + if (@state == 1) goto L_return; + if (BaseLevel >= 80) goto L_intro; + +L_cry: + mes "[Crying Child]"; + mes "\"Waaahhhhh! *sniffle*\""; + close; + +L_intro: + mes "[Crying Child]"; + mes "\"Waaah!\""; + next; + mes "\"*Sniffle*\""; + next; + mes "You bend your knees near the child, trying to gain his confidence and ask why he is crying. But looking closely, you are surprised to see that his skin color is an awful cadaveric grey..."; + menu + "Calm down kid, what happened?",-, + "Leave the kid alone.",L_close; + mes "[Crying Child]"; + mes "\"Oh, what? Who are you "+@madamsir$+", what are you doing here?\""; + next; + menu + "My name is "+strcharinfo(0)+". I heard you cry and decided to ask if you need help.",-; + mes "The child looks at you from head to toe and says: \"" +@madamsir$+ ", aren't you scared of me?\""; + next; + menu + "No... Why would I be scared of you?",-; + mes "[Crying Child]"; + mes "\"I am, you know... dead. And Mom and dad, and a lot of people in this inn... But most of them don't like to talk about it.\""; + menu + "You are a brave and smart kid... I have nothing to be afraid of.",-; + mes "[Crying Child]"; + mes "\"It is nice to talk to you. I don't have any friends and Mom is always sad and Dad is always angry with something I don't know... and... Did you see the man in the room next to me? The one with horns? Ohh, I don't like him! \""; + next; + mes "[Crying Child]"; + mes "\"My parents told me not to talk to strangers... But you look nice... I guess I can trust you... I'm Aldred and we live here, my parents and me. This is our inn.\""; + next; + mes "[Aldred]"; + mes "\"You asked why I was crying. My problem is... I don't know what to do... My dad will be so angry with me... He used to be very nice, but now... if you do something wrong... he... Waaaaa!\""; + next; + menu + "Here, here, don't cry... What did you do?",-; + mes "[Aldred]"; + mes "\"Err.. I was looking at my parents stuff and I found this funny thing! It looked like a normal ring, but with a round empty space... I thought it would be fun to take it with me and maybe look for a stone or a gem to fill the empty space. But I... *sniffle*... I lost it...\""; + next; + mes "\"I don't know what happened. I was in this room and... I heard some very loud noises, people screaming, cracking sounds... and a smell, a terrible smell, like something rotten. And then I can't remember anything else!\""; + next; + mes "\"I think it was something very bad, because, after all that, I woke up the way I am now and I couldn't find the ring in my pocket. Oh, and my parents are acting like they are not themselves. I don't know what happened, maybe it was my fault... I shouldn't have played with that ring... *sniffle*... \""; + next; + menu + "Don't worry, I will look around. Maybe I can find it for you...",-, + "Hey, you messed up, now you deal with this.",L_close; + + mes "[Aldred]"; + mes "\"Thank you " +strcharinfo(0)+"! Find it for me, pleeeease! Ohh, and don't tell my parents I lost their ring, okay?\""; + set @state, 1; + callsub S_Update_Mask; + close; + +L_return: + mes "[Aldred]"; + mes "\"Please, help me " +@madamsir$+ ". If you find that ring I think things can be a little better between me and my parents.\""; + close; + + +L_return1: + menu + "Hi Aldred. I found the ring!",-; + mes "[Aldred]"; + mes "\"Great! You are the best! Where did you find it?\""; + next; + menu + "It was easy, it was with one of the monsters outside.",-; + mes "[Aldred]"; + mes "\"Ohh.. a monster? He must be a fine monster since he returned it so easily to you!\""; + next; + menu + "Err... kind of...",-; + mes "[Aldred]"; + mes "\"Now I will put this thing back in its proper place... Thank you!\""; + set @state, 3; + callsub S_Update_Mask; + close; + + +L_return2: + mes "[Aldred]"; + mes "\"Hi "+strcharinfo(0)+ "! I was thinking... you were sooo nice helping me find the ring... I think I should give you a gift, but I'm just a dead kid, I have nothing to give you!\""; + next; + menu + "Don't worry, you don't need to give me anything...",-; + mes "[Aldred]"; + mes "\"Are you serious? That is why you are so great! But hey, I have an idea. What if you talk to my parents about this thing? If it is not important or valuable, I don't think it would be a problem to let you keep it. And I really want to know if they are acting all weird because I lost it. Would you do this for me?\""; + next; + menu + "Sounds interesting... But who are your parents?",-, + "Bad idea, it will only bring more problems...",L_close; + set @state, 4; + callsub S_Update_Mask; + mes "[Aldred]"; + mes "\"Ok, great... But please, don't tell them about it. I don't want my parents to know I was playing with their stuff. My father is always carrying a lantern... I guess he is still afraid of the dark. My mother is the innkeeper. She is very beautiful and she is wearing a red dress.\""; + next; + mes "\"Don't forget to come back with the ring after you talk to my parents.\""; + message strcharinfo(0), "Aldred hands you the ring and you keep it in a small pocket of your backpack"; + close; + +L_return3: + mes "[Aldred]"; + mes "\"I hope this ring doesn't mean a lot to my parents. This way you can keep it as a gift and I won't feel guilty about taking it.\""; + close; + +L_return4: + menu + "Hi, I talked to your parents.",-; + mes "[Aldred]"; + mes "\"Really? What did my father say about it?\""; + menu + "He said it is just a cheap ring. And it does not belong to him.",-; + mes "[Aldred]"; + mes "\"And what did my mother say?\""; + menu + "She said it was a gift to her, but she doesn't want it anymore.",-; + mes "[Aldred]"; + mes "\"Really? A gift? And why she doesn't want it?\""; + next; + menu + "She said it makes her sad.",-; + mes "\"Ohh... really? I don't like when my mother gets sad... If this ring is making her feel bad, I should keep it away from her. \""; + next; + mes "\"Well, I guess you can keep it, but don't show it to my mother again, she is already very sad. But now I am really curious, who else would give a gift to my mother? There are so many strange things happening lately...\""; + getinventorylist; + if (@inventorylist_count == 100) goto L_full; + getitem "RingSimple", 1; + set @state, 7; + callsub S_Update_Mask; + mes "\"I will tell my parents how great and helpful you are. Maybe they can even let you stay here at the inn for free!\""; + close; + +L_return5: + mes "[Aldred]"; + mes "\"Thank you for all your help.\""; + close; + +L_full: + mes "[Aldred]"; + mes "\"I dont think you can carry this ring... Your backpack is full! Throw something away and come back to get it.\""; + close; + + +L_close: + close; + +S_Update_Mask: + set QUEST_Graveyard_Inn, + (QUEST_Graveyard_Inn & ~(@Graveyard_Inn_MASK)) + | (@state << @Graveyard_Inn_SHIFT); + return; + +} |