diff options
Diffstat (limited to 'world/map/npc/009-2/alan.txt')
-rw-r--r-- | world/map/npc/009-2/alan.txt | 354 |
1 files changed, 175 insertions, 179 deletions
diff --git a/world/map/npc/009-2/alan.txt b/world/map/npc/009-2/alan.txt index f19990d9..1eeb51f0 100644 --- a/world/map/npc/009-2/alan.txt +++ b/world/map/npc/009-2/alan.txt @@ -8,217 +8,213 @@ //################################################################################# // Archer Shop Master -009-2.gat,99,23,0 script Alan 125, { - set @Q_MASK, NIBBLE_0_MASK; - set @Q_SHIFT, NIBBLE_0_SHIFT; - - set @Q_status, ((QUEST_Forestbow_state) & @Q_MASK) >> @Q_SHIFT; - - if (@Q_status == 1) goto L_State_1; - if (@Q_status == 2) goto L_State_2; - if (@Q_status == 3) goto L_State_3; - if (@Q_status == 4) goto L_State_4; - if (@Q_status == 5) goto L_State_5; - - mes "[Alan]"; - mes "\"When you want to buy something then please speak to my apprentice. I am only doing special requests.\""; - next; - if (Inspector == 1) - menu - "OK, thanks.", -, - "Can you make me a really good bow?", L_State_0_1, - "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; - if (Inspector != 1) - menu - "OK, thanks.", -, - "Can you make me a really good bow?", L_State_0_1; - close; +009-2.gat,99,23,0|script|Alan|125,{ + set @Q_MASK, NIBBLE_0_MASK; + set @Q_SHIFT, NIBBLE_0_SHIFT; + + set @Q_status, ((QUEST_Forestbow_state) & @Q_MASK) >> @Q_SHIFT; + + if (@Q_status == 1) goto L_State_1; + if (@Q_status == 2) goto L_State_2; + if (@Q_status == 3) goto L_State_3; + if (@Q_status == 4) goto L_State_4; + if (@Q_status == 5) goto L_State_5; + + mes "[Alan]"; + mes "\"When you want to buy something then please speak to my apprentice. I am only doing special requests.\""; + next; + if (Inspector == 1) + menu + "OK, thanks.", -, + "Can you make me a really good bow?", L_State_0_1, + "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; + if (Inspector != 1) + menu + "OK, thanks.", -, + "Can you make me a really good bow?", L_State_0_1; + close; L_State_0_1: - mes "[Alan]"; - mes "\"You mean like one of my legendary forest bows?\""; - next; - menu - "Yes, that would be nice.", -; - mes "[Alan]"; - mes "\"Sorry, I am not making these anymore.\""; - next; - menu - "Oh, too bad.", -, - "What? Why not?", L_State_0_2; - close; + mes "[Alan]"; + mes "\"You mean like one of my legendary forest bows?\""; + next; + menu + "Yes, that would be nice.", -; + mes "[Alan]"; + mes "\"Sorry, I am not making these anymore.\""; + next; + menu + "Oh, too bad.", -, + "What? Why not?", L_State_0_2; + close; L_State_0_2: - mes "[Alan]"; - mes "\"The problem is that I am short of material. My forestbows are not made of regular wood, you know."; - mes "They are made of special living wood. And only the best logs of living wood are good enough for them."; - mes "I used to get these logs from Jack, the lumberjack. But the last time I asked him for a new delivery he said that he would never again get any for me.\""; - - set @Q_status, 1; - callsub S_Update_Var; - - next; - menu - "Too bad.", -, - "Did you ask him why?", L_State_0_3; - close; + mes "[Alan]"; + mes "\"The problem is that I am short of material. My forestbows are not made of regular wood, you know."; + mes "They are made of special living wood. And only the best logs of living wood are good enough for them."; + mes "I used to get these logs from Jack, the lumberjack. But the last time I asked him for a new delivery he said that he would never again get any for me.\""; + set @Q_status, 1; + callsub S_Update_Var; + next; + menu + "Too bad.", -, + "Did you ask him why?", L_State_0_3; + close; L_State_0_3: - mes "[Alan]"; - mes "\"Sure I did. But he just told me to leave him alone. Maybe you could ask him what's wrong?\""; - next; - menu - "OK, I'll ask him.", -, - "I am sure he got his reasons.", -; - close; + mes "[Alan]"; + mes "\"Sure I did. But he just told me to leave him alone. Maybe you could ask him what's wrong?\""; + next; + menu + "OK, I'll ask him.", -, + "I am sure he got his reasons.", -; + close; L_State_1: - mes "[Alan]"; - mes "\"Did you already ask Jack why he won't deliver me any more living wood?\""; - next; - if (Inspector == 1) - menu - "No, I haven't had the time yet.", -, - "No, I didn't find him yet.", L_State_1_1, - "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; - if (Inspector != 1) - menu - "No, I haven't had the time yet.", -, - "No, I didn't find him yet.", L_State_1_1; - close; + mes "[Alan]"; + mes "\"Did you already ask Jack why he won't deliver me any more living wood?\""; + next; + if (Inspector == 1) + menu + "No, I haven't had the time yet.", -, + "No, I didn't find him yet.", L_State_1_1, + "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; + if (Inspector != 1) + menu + "No, I haven't had the time yet.", -, + "No, I didn't find him yet.", L_State_1_1; + close; L_State_1_1: - mes "[Alan]"; - mes "\"When you leave my shop just go southwest over the village plaza. You can't miss it.\""; - close; + mes "[Alan]"; + mes "\"When you leave my shop just go southwest over the village plaza. You can't miss it.\""; + close; L_State_2: - mes "[Alan]"; - mes "\"Did you already ask Jack why he won't deliver me any more living wood?\""; - next; - if (Inspector == 1) - menu - "Yes, I did. He said that the trees turned into dangerous monsters.", -, - "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; - if (Inspector != 1) - menu - "Yes, I did. He said that the trees turned into dangerous monsters.", -; - mes "[Alan]"; - mes "\"Oh, that's really bad news. Maybe you can do his job?"; - mes "When you kill some of these tree monsters and bring me their wood I can take a look at them."; - mes "Maybe you will find a piece of wood that is strong enough to become one of my forest bows.\""; - - set @Q_status, 3; - callsub S_Update_Var; - - close; + mes "[Alan]"; + mes "\"Did you already ask Jack why he won't deliver me any more living wood?\""; + next; + if (Inspector == 1) + menu + "Yes, I did. He said that the trees turned into dangerous monsters.", -, + "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; + if (Inspector != 1) + menu + "Yes, I did. He said that the trees turned into dangerous monsters.", -; + mes "[Alan]"; + mes "\"Oh, that's really bad news. Maybe you can do his job?"; + mes "When you kill some of these tree monsters and bring me their wood I can take a look at them."; + mes "Maybe you will find a piece of wood that is strong enough to become one of my forest bows.\""; + set @Q_status, 3; + callsub S_Update_Var; + close; L_State_3: - mes "[Alan]"; - mes "\"How is the hunt going? Did you bring me any wood?\""; - if (countitem(569) < 1) close; - next; - if (Inspector == 1) - menu - "Here, take a look!", L_State_3_try, - "Yes, but I need it for something else.", -, - "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; - if (Inspector != 1) - menu - "Here, take a look!", L_State_3_try, - "Yes, but I need it for something else.", -; - close; + mes "[Alan]"; + mes "\"How is the hunt going? Did you bring me any wood?\""; + if (countitem(569) < 1) close; + next; + if (Inspector == 1) + menu + "Here, take a look!", L_State_3_try, + "Yes, but I need it for something else.", -, + "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; + if (Inspector != 1) + menu + "Here, take a look!", L_State_3_try, + "Yes, but I need it for something else.", -; + close; L_State_3_try: - if (countitem(569) < 1) goto L_No_Log; - delitem "RawLog", 1; - mes "[Alan]"; - mes "\"Hmmm... looks ok, but is it strong enough?\""; - mes "Alan bends the log over his knee."; - next; - set @Temp1, rand(20); - if (@Temp1 == 0) goto L_State_3_success; - mes "The log breaks with a loud crack."; - next; - mes "[Alan]"; - mes "\"Sorry, this log was too weak for one of my forest bows. Now it is junk. Give me another.\""; - if (countitem(569) < 1) close; - next; - menu - "Sure, here you go.", L_State_3_try, - "Hey! Stop breaking my stuff!", -; - close; + if (countitem(569) < 1) + goto L_No_Log; + delitem "RawLog", 1; + mes "[Alan]"; + mes "\"Hmmm... looks ok, but is it strong enough?\""; + mes "Alan bends the log over his knee."; + next; + set @Temp1, rand(20); + if (@Temp1 == 0) goto L_State_3_success; + mes "The log breaks with a loud crack."; + next; + mes "[Alan]"; + mes "\"Sorry, this log was too weak for one of my forest bows. Now it is junk. Give me another.\""; + if (countitem(569) < 1) close; + next; + menu + "Sure, here you go.", L_State_3_try, + "Hey! Stop breaking my stuff!", -; + close; L_State_3_success: - mes "Alan tries as hard as he can but the log won't bend."; - next; - mes "[Alan]"; - mes "\"Aaah! Yes! That is a really fine piece of wood you brought me. It will make an excellent bow!\""; - next; - set @Q_status, 4; - callsub S_Update_Var; + mes "Alan tries as hard as he can but the log won't bend."; + next; + mes "[Alan]"; + mes "\"Aaah! Yes! That is a really fine piece of wood you brought me. It will make an excellent bow!\""; + next; + set @Q_status, 4; + callsub S_Update_Var; L_State_4: - mes "[Alan]"; - mes "\"I can make you a really nice forest bow out of this. I just need 10,000 GP for material and work time.\""; - next; - if (Inspector == 1) - menu - "10,000??? What a ripoff!", -, - "Sure, here you go!", L_State_4_pay, - "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; - if (Inspector != 1) - menu - "10,000??? What a ripoff!", -, - "Sure, here you go!", L_State_4_pay; - close; + mes "[Alan]"; + mes "\"I can make you a really nice forest bow out of this. I just need 10,000 GP for material and work time.\""; + next; + if (Inspector == 1) + menu + "10,000??? What a ripoff!", -, + "Sure, here you go!", L_State_4_pay, + "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; + if (Inspector != 1) + menu + "10,000??? What a ripoff!", -, + "Sure, here you go!", L_State_4_pay; + close; L_State_4_pay: - if (zeny < 10000) goto L_State_4_nocash; - getinventorylist; - if (@inventorylist_count == 100) goto L_State_4_TooMany; - set zeny, zeny - 10000; - getitem "ForestBow", 1; - set @Q_status, 5; - callsub S_Update_Var; - mes "[Alan]"; - mes "\"Here you go - have fun with it.\""; - close; + if (zeny < 10000) + goto L_State_4_nocash; + getinventorylist; + if (@inventorylist_count == 100) + goto L_State_4_TooMany; + set zeny, zeny - 10000; + getitem "ForestBow", 1; + set @Q_status, 5; + callsub S_Update_Var; + mes "[Alan]"; + mes "\"Here you go - have fun with it.\""; + close; L_State_4_nocash: - mes "[Alan]"; - mes "\"Seems like you are out of cash.\""; - close; + mes "[Alan]"; + mes "\"Seems like you are out of cash.\""; + close; L_State_4_TooMany: - mes "[Alan]"; - mes "\"Seems like you don't have room for this bow. Come back later.\""; - close; + mes "[Alan]"; + mes "\"Seems like you don't have room for this bow. Come back later.\""; + close; L_State_5: - mes "[Alan]"; - mes "\"I hope you are satisfied with your forest bow. It is one of my best works.\""; - next; - - if (Inspector == 1) - menu - "I am!", -, - "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; - close; + mes "[Alan]"; + mes "\"I hope you are satisfied with your forest bow. It is one of my best works.\""; + next; + if (Inspector == 1) + menu + "I am!", -, + "Have you seen anything strange recently that might be connected to the robberies?", L_NohMask_Answer; + close; L_NohMask_Answer: - mes "[Alan]"; - mes "\"No.\""; - close; + mes "[Alan]"; + mes "\"No.\""; + close; L_No_Log: - mes "[Alan]"; - mes "\"Where should I look at? You don't have a raw log.\""; - close; + mes "[Alan]"; + mes "\"Where should I look at? You don't have a raw log.\""; + close; S_Update_Var: - set QUEST_Forestbow_state, - (QUEST_Forestbow_state & ~(@Q_MASK) - | (@Q_status << @Q_SHIFT)); - return; + set QUEST_Forestbow_state, (QUEST_Forestbow_state & ~(@Q_MASK) | (@Q_status << @Q_SHIFT)); + return; } |