diff options
Diffstat (limited to 'npc/009-2/bernard.txt')
-rwxr-xr-x | npc/009-2/bernard.txt | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/npc/009-2/bernard.txt b/npc/009-2/bernard.txt new file mode 100755 index 00000000..f9eac878 --- /dev/null +++ b/npc/009-2/bernard.txt @@ -0,0 +1,124 @@ +009-2,67,79,0 script Bernard NPC117,{ + if (QL_SOUP >= 6) goto L_Done3; + if (QL_SOUP >= 4) goto L_Done2; + if (QL_SOUP == 3) goto L_Progress2; + if (QL_SOUP == 2) goto L_Done1; + if (QL_SOUP == 1) goto L_Progress; + + @temp = rand(2); + if(@temp == 1) goto L_Opening1; + goto L_Opening0; + +L_Opening0: + mes "[Bernard]"; + mes "\"The fields are crawling with maggots. Where is Mikhail? What is taking them so long?"; + mes "Could I ask a favor of you?\""; + next; + goto L_Ask; + +L_Opening1: + mes "[Bernard]"; + mes "\"The taste of maggots in soup is... unforgettable, they taste simply divine!"; + mes "I sent someone to kill me some maggots and they have yet to return. Would you help me kill some?\""; + next; + goto L_Ask; + +L_Ask: + menu + "Yes.", L_Yes, + "No.", L_close; + +L_Yes: + @temp = rand(2); + if(@temp == 1) goto L_Req1; + goto L_Req0; + +L_Req0: + mes "[Bernard]"; + mes "\"Great! I need a Roasted Maggot for my soup.\""; + next; + goto L_Set; + +L_Req1: + mes "[Bernard]"; + mes "\"Bring me a Roasted Maggot. I'll give you something if you do.\""; + next; + goto L_Set; + +L_Set: + QL_SOUP = 1; + mes "[Bernard]"; + mes "\"Please bring it to me!\""; + goto L_close; + +L_Progress: + if (countitem("RoastedMaggot") < 1) goto L_NotEnough; + mes "[Bernard]"; + mes "\"Oooh, perfect! It's perfect!"; + mes "You brought me my Roasted Maggot! Here, have some cake for your troubles.\""; + getinventorylist; + if (@inventorylist_count - (countitem("RoastedMaggot") == 1) > 99 - (countitem("CherryCake") == 0) ) goto L_TooMany; + delitem "RoastedMaggot", 1; + getexp 100, 0; + getitem "CherryCake", 5; + QL_SOUP = 2; + next; + mes "\"Now let's see...\""; + goto L_close; + +L_Progress2: + if (countitem("MaggotSlime") < 3) goto L_NotEnough1; + mes "[Bernard]"; + mes "\"Nice! They're perfect, just perfect!"; + mes "You brought me the 3 Maggot Slimes! Here, have some beer as reward.\""; + getinventorylist; + if ((@inventorylist_count - (countitem("MaggotSlime") == 3) > 99 - (countitem("Beer") == 0) )) goto L_TooMany; + delitem "MaggotSlime", 3; + getexp 100, 0; + getitem "Beer", 3; + QL_SOUP = 4; + goto L_close; + +L_NotEnough: + mes "[Bernard]"; + mes "\"Oh, please hurry and bring me a Roasted Maggot. I'm yearning for maggot soup!\""; + goto L_close; + +L_NotEnough1: + mes "[Bernard]"; + mes "\"Please do hurry and bring me 3 Maggot Slimes, so I can finish my soup!\""; + goto L_close; + +L_Done1: + mes "[Bernard]"; + mes "\"Thank you so much!\""; + mes "\"But... something is missing to make the soup creamy.\""; + next; + mes "\"I need 3 Maggot Slimes for that.\""; + mes "\"Bring them to me, and I'll give you something nice.\""; + QL_SOUP = 3; + goto L_close; + +L_Done2: + mes "[Bernard]"; + mes "\"I didn't mention it before, but I also put beer in my soup. I hope you like beer as much as I do, because, you see...\""; + next; + mes "\"Beer is life!\""; + goto L_close; + +L_Done3: + mes "[Bernard]"; + mes "\"My help, Mikhail, finally returned with the slimes I needed."; + mes "I wonder what took him so long?\""; + goto L_close; + +L_close: + @temp = 0; + close; + +L_TooMany: + next; + mes "[Bernard]"; + mes "\"You don't have room for my reward. I'll wait until you do.\""; + goto L_close; +} |