summaryrefslogblamecommitdiff
path: root/npc/027-2_Caretakers_House/husband.txt
blob: f53c63865951ca0b339679ae303e8bedf2404384 (plain) (tree)
1
2
3
4
5
6
7
8
9
10






                                                                                          


                                                       

                                                                                                      












                                                                                                     
                                              



                                            
                                                                                                                                                                                                                      


                                         

                                                                                       

                                                    
                                                                                                                             



                                                              
                                                                                                                                                 


                                                                                                                        
                                                                          
                       
                                                                                   
             
                                                                                                
             
                                                                                                                                                        



                                           
                                                                                                                                            









                                                                                                     










                                                                                                      













                                                                            

                                






















                                                                                                                                      
                                                                                                                                                  
             
                                                                                                                                
             
                                                                                                                                                     









                                                                                       

                            




                              
                                                                                                                     

             



                                                                                                      
                                                   



                                                                                                     
                                                   



                                                                                      
                                            





                                                
                                                        



                                             

                                                         


                                                                                                                                                                                                                                                                                                                                                  






                                 


                                                                                                                                                                                                                                            


                       
                                                                                      
             
                                                                                                                                                                                                                                    

              



                                                                                                                                          










                                                                                                                                                                                                                                


                                             
                                                                               
                                               
                                                                                



                       
                                                                                                        


              






                                                                  






                                                              
027-2.gat,22,84,0	script	Hamond	319,{

	set @Graveyard_Inn_MASK, NIBBLE_3_MASK;
	set @Graveyard_Inn_SHIFT, NIBBLE_3_SHIFT;

	set @state, ((QUEST_Graveyard_Inn & @Graveyard_Inn_MASK) >> @Graveyard_Inn_SHIFT);
	
	set @Graveyard_Inn_Woman_MASK, NIBBLE_0_MASK;
	set @Graveyard_Inn_Woman_SHIFT, NIBBLE_0_SHIFT;

	set @woman, ((QUEST_Graveyard_Inn & @Graveyard_Inn_Woman_MASK) >> @Graveyard_Inn_Woman_SHIFT);

	set @Graveyard_Inn_Kid_MASK, NIBBLE_2_MASK;
	set @Graveyard_Inn_Kid_SHIFT, NIBBLE_2_SHIFT;

	set @kidstate, ((QUEST_Graveyard_Inn & @Graveyard_Inn_Kid_MASK) >> @Graveyard_Inn_Kid_SHIFT);
	
	//TODO: determine sane values
	set @ICE_CUBE_AMOUNT, 100;
	set @ICE_CUBE_EXP, 10000;
	//TODO: determine sane values
	set @BONE_AMOUNT, 100;
	set @SKULL_AMOUNT, 50;
	set @BONE_EXP, 30000;
	
	if (@state >= 3) goto L_Brought_Bones;
	if (@state == 2) goto L_Check_Bones;
	if (@state == 1) goto L_Ice_Cube;
	
	mes "[Pale Man]";
	mes "\"Hello, I hope you're enjoying your time in Reid's Inn. My name is Hamond, and I'm running this inn together with my beautiful wife Reid. If there is anything I can do for you, please let me know.\"";
	if (baselevel < 85) goto L_Close;
	next;
	menu
		"I'd like to know why all the people in here are dead.",-,
		"Are you feeling well? You look very pale... In fact, deathly pale.",-,
		"Thank you, but I'm fine.", L_Close;
	
	mes "Hamond seems very confused. Then he notices the grey color of his hands and begins to shake his head in panic.";
	mes "[Hamond]";
	mes "\"WHAT IS THIS?\"";
	next;
	//TODO: ask a native speaker if this is understandable
	mes "Because of the fast movement of his head, it bends back in his neck along a cut in his throat, a deep cut you haven't seen before.";
	next;
	mes "You're trying hard not to run away screaming. Instead, you grab his hair and pull his head back in place.";
	next;
	mes "Hamond blinks a few times, with a puzzled look on his face.";
	mes "[Hamond]";
	mes "\"That was uncomfortable! I guess you are right. I am dead. Weird.\"";
	next;
	mes "\"How can I be dead, if I am walking around and talking? This is very strange. \"";
	next;
	mes "\"But nevertheless, I will continue to run this inn and do my best to make all our patrons happy and satisfied - be they alive or dead.\"";
	next;	
	menu
		"Can I help with that?", -;
	mes "[Hamond]";
	mes "\"Help me? I would never ask you for this, but actually, I need something to cool the drinks. Maybe you can find something.\"";
	
	set @state, 1;
	callsub S_Update_Mask;
	
	close;	

L_Ice_Cube:
	mes "[Hamond]";
	mes "\"Hello my friend! Good to see you again. Did you find something to cool the drinks?\"";
	next;
	
	if ((@kidstate == 4) && countitem("IceCube") > 0)
		menu
			"Maybe this never melting Ice Cubes?", L_Check_Ice, 
			"I found this in the main hall. Do you know to whom it belongs?", L_Bracelet, 
			"I'm still searching.", L_Close;
	
	if (@kidstate == 4)
		menu
			"I found this in the main hall. Do you know to whom it belongs?", L_Bracelet,
			"I'm still searching.", L_Close;

	if (countitem("IceCube") > 0)
		menu
			"Maybe this never melting Ice Cubes?", L_Check_Ice, 
			"I'm still searching.", L_Close;
	
	mes "\"You didn't? Too bad.\"";
	close;
	
L_Check_Ice:
	if (countitem("IceCube") < @ICE_CUBE_AMOUNT)
		goto L_Not_Enough_Cubes;
	delitem "IceCube", @ICE_CUBE_AMOUNT;
	
	getexp @ICE_CUBE_EXP, 0;
	
	set @state, 2;
	callsub S_Update_Mask;
	
	mes "[Hamond]";
	mes "\"Yes, wonderfull! That's exactly what I need.\"";
	next;
	mes "\"I put all my effort in making this inn a well running place for my beloved Reid.\"";
	next;
	mes "\"You know, she had a very hard childhood.\"";
	next;
	mes "\"Her parents were the former owners of the inn. But they had some problems and the inn wasn't running well.\"";
	next;
	mes "\"Also they died very early and Reid was so lonely and sad. She is such a wonderful woman, I'd do everything for her.\"";
	next;
	mes "He is mumbling to himself the next sentence.";
	next;
	mes "\"And I won't let a wannabe mage take her away from me...\"";
	next;
	menu
		"What do you mean?",-;
	mes "[Hamond]";
	mes "\"Nevermind, nevermind. I'd like to ask you for another favor, if I might.\"";
	next;
	mes "\"A patron asked for - uhm, bones. He said he need it to replace some of his bones, which were damaged in a scuffle with mortals.\"";
	next;
	mes "\"I know, this is a bit strange - I'm still getting used to being dead. But a patron's wish is a patron's wish!\"";
	next;
	mes "\"Can you bring me a huge amount of bones and skulls? This way I can fulfill that peculilar wish and make another patron very happy!\"";
	close;
	
L_Check_Bones:
	mes "[Hamond]";
	mes "\"Welcome back! Let me see what you have.\"";
	if ((countitem("Bone") < @BONE_AMOUNT) || (countitem("Skull") < @SKULL_AMOUNT))
		goto L_Not_Enough_B;
	delitem "Bone", @BONE_AMOUNT;
	delitem "Skull", @SKULL_AMOUNT;
	
	getexp @BONE_EXP, 0;
	
	set @state, 3;
	callsub S_Update_Mask;

L_Brought_Bones:
	mes "[Hamond]";
	mes "\"Thanks for your help! Now I'll be able to satisfy another strange request from one of our patrons.\"";
	next;
	
	if ((@kidstate == 4) && (@woman > 5))
		menu
			"Would you tell me about this mage named Savaric?", L_Savaric,
			"I found this in the main hall. Do you know to whom it belongs?", L_Bracelet, 
			"You're welcome.", L_Close;
	
	if (@kidstate == 4)
		menu
			"I found this in the main hall. Do you know to whom it belongs?", L_Bracelet,
			"You're welcome.", L_Close;
	
	if (@woman > 5)	
		menu
			"Would you tell me about this mage named Savaric?", L_Savaric,
			"You're welcome.",-;
	mes "[Hamond]";
	mes "\"Please make yourself at home.\"";
	
	close;
	
L_Savaric:
	mes "Hamond's face turns into an ugly grimace.";
	mes "[Hamond]";
	mes "\"This egomaniac cheekily - \"";
	next;
	
	//TODO: think, if gender change should be checked
	//TODO: determine correct value for kidstate
	if ((Sex == 0) && (@kidstate < 7)) goto L_Woman;
	if ((Sex == 1) && (@kidstate < 7)) goto L_Man;	
	mes "\"Well, I have been thinking about you. You seem to be a very helpful and wise person. Even my son told me good things about you, making a long speech about how great you are and your ability to comprehend and deal with delicate matters. I wonder how he reached that conclusion... But anyway, I'll tell you about savaric.\"";

L_Jealousy:
//TODO: go on here
	mes "TODO: add story :P";
	close;
L_Man:
	mes "[Hamond]";
	mes "\"You're a man - I think you would understand what is happening to me.\"";
	mes "\"But, to be honest, I think I will only be able to talk about such a complicated matter if I am sure I am sharing my feelings with a good, wise and understanding person. No offense, it is just that I barely know you...\"";
	close;

L_Woman:
	mes "[Hamond]";
	mes "\"Hrm - I don't think you'll understand. It is a problem between men.\"";
	next;
	mes "\"And, to be honest, I will only be able to talk about such a complicated matter if I am sure I am sharing my feelings with a good, wise and understanding person. No offense, it is just that I barely know you...\"";
	close;

//L_Helped_Kid:
//	mes "[Hamond]";
//	mes "\"It was very nice of you to help my son. He told me, you found something he lost. I think, I can tell you about Savaric.\"";
//	goto L_Jealousy;
	
L_Bracelet:
	mes "[Hamond]";
	mes "\"Well.. this is just a cheap bracelet, it is very popular with the young kids these days, specially the magic students. They call it 'Scarab Armlet'. Fancy name, huh? But for me it is just a cheap bracelet.\"";
	next;
	mes "\"They also say it increases 'magic atack'. But, in fact, I think these kids are delusional. Magic, pah.\"";
	next;
	mes "\"Anyway, you can easily find one of these in a lot of small shops in this town. I am pretty sure that whoever lost it won't bother coming all the way back to get it.\"";
	set @kidstate, 5;
	callsub S_Update_Mask_Kid;
	close;
		
L_Not_Enough_B:
	if (countitem("Bone") < @BONE_AMOUNT)
		mes "\"I'm not sure, but I think more bones will be better.\"";
	if (countitem("Skull") < @SKULL_AMOUNT)
		mes "\"Maybe you should bring more skulls. It is not enough.\"";
	close;

L_Not_Enough_Cubes:
	mes "[Hamond]";
	mes "\"Yes, they look good! But I think I need more of them. Maybe " + @ICE_CUBE_AMOUNT + "?\"";
	close;

L_Close:
	close;	

S_Update_Mask_Kid:
        set QUEST_Graveyard_Inn,
        	(QUEST_Graveyard_Inn & ~(@Graveyard_Inn_Kid_MASK))
                | (@kidstate << @Graveyard_Inn_Kid_SHIFT);
        return;

S_Update_Mask:
        set QUEST_Graveyard_Inn,
        	(QUEST_Graveyard_Inn & ~(@Graveyard_Inn_MASK))
                | (@state << @Graveyard_Inn_SHIFT);
        return;
}