diff options
author | Jesusaves <cpntb1@ymail.com> | 2021-04-09 13:33:57 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2021-04-09 13:33:57 -0300 |
commit | cf18ce071c79ae37e14ea38943e0b1d88da70a7b (patch) | |
tree | f9159c9b60b3018300dd22ffba0d797bc5e828e5 /npc/009-2/selim.txt | |
parent | 8a4bf716002a017de77fe7df301ef8e4aaf00a2e (diff) | |
download | serverdata-cf18ce071c79ae37e14ea38943e0b1d88da70a7b.tar.gz serverdata-cf18ce071c79ae37e14ea38943e0b1d88da70a7b.tar.bz2 serverdata-cf18ce071c79ae37e14ea38943e0b1d88da70a7b.tar.xz serverdata-cf18ce071c79ae37e14ea38943e0b1d88da70a7b.zip |
Override
Diffstat (limited to 'npc/009-2/selim.txt')
-rwxr-xr-x | npc/009-2/selim.txt | 173 |
1 files changed, 173 insertions, 0 deletions
diff --git a/npc/009-2/selim.txt b/npc/009-2/selim.txt new file mode 100755 index 00000000..f7f41b72 --- /dev/null +++ b/npc/009-2/selim.txt @@ -0,0 +1,173 @@ +009-2,32,104,0 script Selim NPC326,{ + goto L_Main; + +L_Main: + mes "[Selim]"; + mes "\"Greetings, fair traveler. With what may I help you?\""; + menu + "Greetings, are you the store merchant?", L_Ask_selim, + "But what are dyes and what purpose do they serve?", L_Ask_dye, + "Can you dye something for me?", L_clothes_choice, + "Can you also remove color from clothing?", L_Ask_bleach, + "About these sorcerer robes...", L_Asksorcererrobe, + "Can you change my appearance?", L_barber, + "Never mind.", L_close; + +L_barber: + callfunc "Barber"; + goto L_Main; + +L_Ask_bleach: + mes "[Selim]"; + mes "\"I'm afraid no."; + mes "For that, you would need to visit Candide in the Tulimshar marketplace.\""; + goto L_Main; + +L_Ask_selim: + mes "[Selim]"; + mes "\"That is an honest mistake you have made."; + mes "However I am not the merchant, but rather a Master Dyer here to serve the good people of this town."; + mes "I dye things, upon request.\""; + menu + "But what are dyes and where can I get them?", L_Ask_dye, + "Can you dye something for me?", L_clothes_choice, + "Can you also remove color from clothing?", L_Ask_bleach, + "Good bye.", L_close; + +L_Ask_dye: + mes "[Selim]"; + mes "\"Dyes are special liquids used to add color to clothing. If you want me to dye something for you you will have to bring me some dye first."; + mes "Those behind me are nearly empty and won't last for your item.\""; + menu + "What do you mean, `bring you dye'?", L_explain_dye, + "Where would I get dye?", L_explain_dye, + "Good bye.", L_close; + +L_clothes_choice: + cleararray @items$, "", getarraysize(@items$); + cleararray @item_names$, "", getarraysize(@item_names$); + @r = 0; + @j = getarraysize($@DYE_items$); + goto L_CloneArray; // clone the array from DyeConfig + +L_CloneArray: + @items$[@r] = $@DYE_items$[@r]; + @item_names$[@r] = $@DYE_item_names$[@r]; + @r = @r + 1; + if(@r < @j) goto L_CloneArray; + @r = 0; + @j = 0; + goto L_clothes_choice2; + +L_clothes_choice2: + mes "[Selim]"; + mes "\"What can I dye for you today?\""; + next; + callfunc "DynamicItemMenu$"; + @default_choice$ = ""; + @item_del$ = @item$; + @name$ = @item_names$[@index]; + cleararray @items$, "", getarraysize(@items$); + cleararray @item_names$, "", getarraysize(@item_names$); + if(@item$ == "") goto L_close; + goto L_picked_item; + + +L_Asksorcererrobe: + mes "[Selim]"; + mes "\"Yes?\""; + next; + menu + "Do you think you can dye that line to a different color?", L_Next1; + +L_Next1: + mes "[Selim]"; + mes "\"Hum, I fear I can't do that. The area is too small and I can operate only on large ones."; + mes "But with the appropriate materials, maybe a talented tailor can make the change.\""; + next; + menu + "Oh, I see!", L_Next; + +L_Next: + mes "[Selim]"; + mes "\"Of course I can help you by dyeing the materials your tailor will want."; + mes "All I need is a piece of Cotton Cloth.\""; + @item_del$ = "CottonCloth"; + @name$ = "Cotton Cloth"; + menu + "Sure. Here is one.", L_picked_item, + "I have to go pick that.", L_close; + +L_picked_item: + if (countitem(@item_del$) == 0) goto L_havenone; + goto L_colour; + +L_colour: + mes "[Selim]"; + mes "\"Excellent. Now, what color do you want?\""; + next; + @r = 0; + @j = getarraysize($@DYE_colors$); + cleararray @items$, "", getarraysize(@items$); + cleararray @item_names$, "", getarraysize(@item_names$); + callsub S_CloneColors; + @default_choice$ = "I have no dye."; + callfunc "DynamicItemMenu$"; + cleararray @items$, "", getarraysize(@items$); + cleararray @item_names$, "", getarraysize(@item_names$); + @default_choice$ = ""; + if (@item$ == "") goto L_No_dye; + @colour = @index; + goto L_Finish; + +S_CloneColors: + @items$[@r] = $@DYE_colors$[@r] + "Dye"; + @item_names$[@r] = $@DYE_color_names$[@r]; + @r = @r + 1; + if(@r < @j) goto S_CloneColors; + @r = 0; + @j = 0; + return; + +L_No_dye: + mes "[Selim]"; + mes "\"I would love to dye your " + @name$ + " for you, but you will have to bring me some dye first."; + mes "Those behind me are nearly empty and won't last for your item.\""; + next; + menu + "I wanted to dye a different item anyway.", L_clothes_choice, + "What do you mean, `bring you dye'?", L_explain_dye, + "Where would I get dye?", L_explain_dye, + "Never mind.", L_close; + +L_explain_dye: + if (QUEST_clothdyer_knowsdye < 1) + QUEST_clothdyer_knowsdye = 1; + mes "[Selim]"; + mes "\"Well, dye is very expensive, and since I don't charge adventurers anything, I can't give you any for free."; + mes "But most alchemists can make dye; perhaps you can find one around here.\""; + goto L_close; + +L_Finish: + if(getitemlink($@DYE_colors$[@colour] + @item_del$) == "Unknown Item") mapexit; + if(countitem(@item_del$) < 1) goto L_havenone; + delitem @item$, 1; + delitem @item_del$, 1; + getitem $@DYE_colors$[@colour] + @item_del$, 1; + mes "[Selim]"; + mes "\"Here's your " + $@DYE_color_names$[@colour] + " " + @name$ + "! Please let dry for a minute.\""; + goto L_close; + +L_havenone: + mes "[Selim]"; + mes "\"You don't have any uncolored " + @name$ + "? That's unfortunate."; + mes "Would you like to dye something else?\""; + next; + goto L_clothes_choice; + +L_close: + mes "\"Farewell and good luck in your journeys!\""; + close2; + emotion EMOTE_WINK, strcharinfo(0); + end; +} |