From 8ba54244eb2842b9182b143d804d4bdba5343476 Mon Sep 17 00:00:00 2001 From: Jessica Tölke Date: Sun, 6 Feb 2011 12:03:37 +0100 Subject: gy inn: lovetriangle quest, adding last part. Now missing: rewards and right values for needed items --- npc/027-2_Caretakers_House/golbanez.txt | 71 +++++++++++++++++++++++++++++++- npc/027-2_Caretakers_House/husband.txt | 10 ++++- npc/027-2_Caretakers_House/innkeeper.txt | 10 ++++- npc/027-2_Caretakers_House/lover.txt | 34 ++++++++++++++- 4 files changed, 120 insertions(+), 5 deletions(-) (limited to 'npc') diff --git a/npc/027-2_Caretakers_House/golbanez.txt b/npc/027-2_Caretakers_House/golbanez.txt index 1fb4bfc5..b466bccf 100644 --- a/npc/027-2_Caretakers_House/golbanez.txt +++ b/npc/027-2_Caretakers_House/golbanez.txt @@ -28,6 +28,8 @@ set @UNDEADEYE_AMOUNT, 50; set @UNDEADEYE_EXP, 50000; + if (@state >= 7) goto L_Done; + if (@state == 6) goto L_Soul; if (@state == 5) goto L_All; if (@state == 4) goto L_Savaric; if (@state == 3) goto L_Hamond; @@ -220,7 +222,7 @@ L_Savaric: close; L_All: - //TODO: add asking for Savarics soul + if (@lover == 6) goto L_Negotiate; mes "[Golbanez]"; mes "\"Did you come back to see the memories again?\""; menu @@ -230,6 +232,73 @@ L_All: "Nevermind.",L_Close; close; +L_Negotiate: + mes "Golbanez eyes are glowing greedily"; + mes "[Golbanez]"; + mes "\"Did you come back to see the memories again? Or are you going to offer me another deal?\""; + menu + "I want Savarics soul back.",-, + "I want to see Reids memory again.",L_R_Again, + "I want to see Hamonds memory again.",L_H_Again, + "I want to see Savarics memory again.",L_S_Again, + "Nevermind.",L_Close; + + mes "[Golbanez]"; + mes "\"Savarics soul, yes. It is a pretty nice soul, you know. From a mage, no, even better, from a loving mage. It is valuable.\""; + next; + mes "\"Why do you think it would be easy to get it back? Do you have anything of equal worth to offer?\""; + next; + menu + "What about another cake?",L_Cake, + "I'm not sure. What do you want?",-, + "No.",L_Close; + + mes "[Golbanez]"; + mes "\"Bring me a soul of at least equal power as the mages one. I don't care where you get it.\""; + set @state, 6; + callsub S_Update_Mask; + close; + +L_Soul: + mes "[Golbanez]"; + mes "\"So, did you get a soul for me?\""; +L_Soul_Try: + if (countitem("JackOSoul") < 1) + menu + "I'll go and get one.",L_Close; + menu + "What about this Jack O Soul?",-, + "I'll go and try to find a soul.",L_Close; + + if (countitem("JackOSoul") < 1) goto L_Betray; + delitem "JackOSoul", 1; + set @soul, rand(50); + if (@soul == 0) goto L_Soul_Success; + mes "[Golbanez]"; + mes "\"No, this one isn't as powerful as the mage ones. Bring me another.\""; + goto L_Soul_Try; + +L_Soul_Success: + mes "Golbanez suddenly gets excited."; + mes "[Golbanez]"; + mes "\"Yes! This one is full of energy.\""; + next; + mes "\"So be it, mortal. I'll release Savarics soul in exchange for this one.\""; + set @state, 7; + callsub S_Update_Mask; + close; + +L_Done: + mes "[Golbanez]"; + mes "\"I hope you enjoyed your little detective game. I certainly did.\""; + close; + +L_Cake: + mes "Golbanez laughs."; + mes "[Golbanez]"; + mes "\"That's why I like you - also you're a human, you have a nice sense of humor.\""; + close; + L_S_Again: callsub S_Savaricsmem; mes "[Golbanez]"; diff --git a/npc/027-2_Caretakers_House/husband.txt b/npc/027-2_Caretakers_House/husband.txt index 39ce10e6..44b94f9f 100644 --- a/npc/027-2_Caretakers_House/husband.txt +++ b/npc/027-2_Caretakers_House/husband.txt @@ -23,7 +23,7 @@ set @BONE_EXP, 30000; set @RUBY_AMOUNT, 20; // caution, this value needs to be the same as in the innkeepers script! - if (@state == 7) goto L_Thanks; + if (@state >= 7) goto L_Thanks; if (@state == 6) goto L_Apologize; if (@state == 5) goto L_Waiting; if (@state == 4) goto L_News; @@ -271,7 +271,10 @@ L_Apologize: mes "\"And frankly, it gives me a bitter satisfaction that they long for each other but can't touch each other.\""; next; mes "\"However, you are a great friend and did a lot for me. I want you to have this.\""; + getinventorylist; + if (@inventorylist_count == 100) goto L_Full_Inv; //TODO: determine reward and give it, idea: different bowler hat? + getitem "Acorn", 1; set @state, 7; callsub S_Update_Mask; close; @@ -293,6 +296,11 @@ L_Not_Enough_Cubes: mes "\"Yes, they look good! But I think I need more of them. Maybe " + @ICE_CUBE_AMOUNT + "?\""; close; +L_Full_Inv: + mes "[Hamond]"; + mes "\"You have a really full backpack, haven't you? Come back when you have some room in there.\""; + close; + L_Close: close; diff --git a/npc/027-2_Caretakers_House/innkeeper.txt b/npc/027-2_Caretakers_House/innkeeper.txt index 26631f7f..c0969998 100644 --- a/npc/027-2_Caretakers_House/innkeeper.txt +++ b/npc/027-2_Caretakers_House/innkeeper.txt @@ -31,7 +31,7 @@ set @DIAMOND_AMOUNT, 10; // caution, this value needs to be the same as in the lovers script! set @RUBY_AMOUNT, 20; // caution, this value needs to be the same as in the husbands script! - if (@state == 11) goto L_Happy; + if (@state >= 11) goto L_Happy; if (@state == 10) goto L_Thanks; if ((@state == 8) || (@state == 9)) goto L_Sorry; if (@state == 7) goto L_Savaric; @@ -336,7 +336,10 @@ L_Tease: L_Thanks: mes "[Reid's Ghost]"; mes "\"I'm so glad, now I know what happened and spoke to Savaric and Hamond. Thank you so much. Please take this.\""; + getinventorylist; + if (@inventorylist_count == 100) goto L_Full_Inv; //TODO: determine reward and give it + getitem "Acorn", 1; set @state, 11; callsub S_Update_Mask; close; @@ -378,6 +381,11 @@ L_Bracelet: callsub S_Update_Mask_Kid; close; +L_Full_Inv: + mes "[Reid's Ghost]"; + mes "\"Dear, you're carrying so much stuff, you can't take my present. Come back later to take it.\""; + close; + L_Close: close; diff --git a/npc/027-2_Caretakers_House/lover.txt b/npc/027-2_Caretakers_House/lover.txt index d780c562..c6d1d2ee 100644 --- a/npc/027-2_Caretakers_House/lover.txt +++ b/npc/027-2_Caretakers_House/lover.txt @@ -20,7 +20,7 @@ set @CRYSTAL_EXP, 100000; set @DIAMOND_AMOUNT, 10; // caution, this value needs to be the same as in the innkeepers script! - if (@state == 7) goto L_Have_Soul; + if (@state >= 7) goto L_Have_Soul; if (@state == 6) goto L_Want_Soul; if (@state == 5) goto L_Apologize; if (@state == 4) goto L_Waiting; @@ -201,19 +201,49 @@ L_Apologize: close; L_Want_Soul: + if (@golbanez >= 7) goto L_Soul; + mes "[Savaric]"; + mes "\"Welcome back! Are you still working on getting my soul back?\""; + menu + "I'm doing my best",-, + "Yes, but it isn't easy.",-; + + mes "[Savaric]"; + mes "\"Thank you so much! I'm counting on you!\""; + close; + +L_Soul: + mes "[Savaric]"; + mes "\"My soul came back! Oh thank you!\""; + next; + mes "\"Please take this as a symbol of my gratitude.\""; + getinventorylist; + if (@inventorylist_count == 100) goto L_Full_Inv; + //TODO: determine and give reward + getitem "Acorn", 1; + set @state, 7; + callsub S_Update_Mask; close; L_Have_Soul: + mes "[Savaric]"; + mes "\"I'll be in your debt forever. Thank you so much.\""; close; L_Reid: mes "[Savaric]"; - mes "\"Relationship? Well, she the innkeeper of this inn and I'm a patron. There is nothing more about this to say.\""; + mes "\"Relationship? Well, she is the innkeeper of this inn and I'm a patron. There is nothing more about this to say.\""; close; L_Not_Enough_Crystals: mes "It seems, you managed to get some, but not enough. Can you bring me more?"; close; + +L_Full_Inv: + mes "[Savaric]"; + mes "\"Oh, you can't carry anything more. Come back when you can take it.\""; + close; + L_Close: close; -- cgit v1.2.3-60-g2f50