summaryrefslogtreecommitdiff
path: root/npc/003-6/cyndala.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/003-6/cyndala.txt')
-rw-r--r--npc/003-6/cyndala.txt249
1 files changed, 0 insertions, 249 deletions
diff --git a/npc/003-6/cyndala.txt b/npc/003-6/cyndala.txt
deleted file mode 100644
index 9dd039f..0000000
--- a/npc/003-6/cyndala.txt
+++ /dev/null
@@ -1,249 +0,0 @@
-// TMW2 Script.
-// Author:
-// Saulc
-// Jesusalva
-// Dye Quest added by:
-// Povo
-// Description:
-// Will be with dye functions for a while... May be wrong. Only Card2 is available per hercules rules
-
-// Original code from evol
-// Authors:
-// Reid
-
-003-6,33,30,0 script Cyndala NPC_FEMALE_ARGAES,{
- function explain_dyes;
- function item_is_bleachable;
- function remove_cards_from_item;
- function give_yellow_dye;
- function deny_yellow_dye;
- function craft_yellow_dye;
-
- mesn;
- mesq l("Hello, darling!");
- mes "";
-
- do
- {
- .@q = getq(TulimsharQuest_Cyndala);
- select
- l("Excuse me."),
- l("Could you bleach my equipment?"),
- l("What can you say about dyes?"),
- rif(.@q > 0, l("I would like to order some dye.")),
- rif(is_staff(), "Technical problem, gimme info about an item.");
-
- switch (@menu) {
- case 2:
- remove_cards_from_item();
- break;
- case 3:
- explain_dyes();
- break;
- case 4:
- craft_yellow_dye();
- break;
- case 5:
- .@item = requestitemindex();
- mes "Item index selected: " + str(.@item);
- mes "slots=" + str(MAX_SLOTS);
- for (.@i = 0; .@i < MAX_SLOTS; .@i++)
- {
- mes "slot " + str(.@i) + " = " + str(getcardbyindex(.@item, .@i));
- }
- mes str(@inventorylist_card1[.@item]);
- mes str(YellowDye);
- mes "item options:";
- for (.@i = 0; .@i < 5; .@i ++)
- {
- mes sprintf("%d: Option: %d, Value: %d", .@i, getitemoptionidbyindex(.@item, .@i),
- getitemoptionvaluebyindex(.@item, .@i));
- }
- mes "Note named items (Card1 254 and 255) have Card3 and Card4 reserved";
- break;
- default:
- mes "";
- mesn;
- mesq l("I wish you a good time in town.");
- next;
- break;
- }
-
- } while (@menu != 1);
-
-
- closeclientdialog;
- goodbye;
- close;
-
-/////////////////////////////////////////////////////////////////////////////////
-function explain_dyes {
- .@q = getq(TulimsharQuest_Cyndala);
- speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
- l("Dyes are a special kind of ink to make certain objects fancier."),
- l("Once you have the appropriate colorant for the item, ##bdrag the colorant##b to the material."),
- l("Example:"),
- l("Drag and drop a %s in a %s, and you will obtain a %s.", getitemlink(YellowDye),
- getitemlink(ArtisTankTop), getitemlink(ArtisTankTop, YellowDye)),
- l("Dye cards are not the only thing which exist, but they are the coolest!");
- if (.@q < 1) {
- speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
- l("By the way, did you know that the official color of Tulimshar is yellow?"),
- l("In fact, the Tulimshar Noble District is world-renowned for crafting high-quality yellow garments!"),
- l("Normally I would offer to make you some %s, but economic problems in Halinarzo have caused a shortage of supplies...",
- getitemlink(YellowDye));
- if (BaseLevel > 20 &&
- .@q < 1) {
- speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
- l("Wait a minute! I have an idea!"),
- l("You look like you have enough experience to know your way around town..."),
- l("If you can manage to gather the supplies I need, I can surely craft some %s for you!",
- getitemlink(YellowDye)),
- l("Of course, I do charge a nominal fee of for the service. %s GP to be exact.", fnum(50)),
- l("In addition to my fee, I will also need the following items:");
- mesq l("%d/%d %s", countitem(BottleOfSewerWater), 1, getitemlink(BottleOfSewerWater));
- mesq l("%d/%d %s", countitem(PiouFeathers), 50, getitemlink(PiouFeathers));
- next;
- mesq l("I am sure that an adventurer like you can gather everything in no time at all!");
- setq TulimsharQuest_Cyndala, 1;
- }
- }
-}
-
-function item_is_bleachable
-{
- .@item_index = getarg(0);
- if (.@item_index < 0)
- return false;
-
- // Collect the item ID
- delinventorylist();
- getinventorylist();
- .@x=@inventorylist_id[.@id];
-
- // Debug info
- if (is_staff())
- mesf "Item Index %d (%s) - ID %d", .@item_index,
- getitemlink(@inventorylist_id[.@item_index]),
- @inventorylist_id[.@item_index];
-
- // No duplicates
- if (countitem(.@x) > 1) {
- mesc l("You are carrying duplicates of the same item. Sorry, but I have no idea which one you want to tweak."), 1;
- return false;
- }
-
- // Must have a card, d'oh
- if (@inventorylist_card1[.@item_index] == 0)
- return false;
-
- return true;
-}
-
-function remove_cards_from_item
-{
- .@item_index = -1;
-
- speech S_FIRST_BLANK_LINE,
- l("What item would you like to bleach?");
-
- narrator S_FIRST_BLANK_LINE | S_LAST_NEXT,
- l("You can drag and drop an item to the NPC window or select an item through your inventory.");
-
- .@item_index = requestitemindex();
- if (!item_is_bleachable(.@item_index)) {
- speech S_LAST_NEXT,
- l("You should know this, an item like this can't be bleached.");
-
- return;
- }
- .@item_id = @inventorylist_id[.@item_index];
-
- speech S_LAST_NEXT,
- l("Your mind is set? You will probably lose all the dyes and/or cards during on the item during this process. You're bleaching a %s by the way.", getitemlink(.@item_id));
-
- switch (askyesno()) {
- case ASK_YES:
- speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
- l("Ok, let me see..."),
- l("...");
-
- // FIXME: Register this on picklog
- if (rand2(1, 800) > readparam2(bLuk)) {
- failedremovecardsindex .@item_index, 1;
- logmes("Deleted Cards from item: "+.@item_id);
- } else {
- successremovecardsindex(.@item_index);
- logmes("Removed Cards from item: "+.@item_id);
- }
-
- // First option slot of weapon: Raises STR in 5
- // setequipoption(EQI_HAND_R, 1, VAR_STRAMOUNT, 5);
- // This is an option :3
-
- speech S_LAST_NEXT | S_NO_NPC_NAME,
- l("..."),
- l("Here it is, clean like a whistle!");
- break;
- default:
- speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
- l("Is it truly a hard choice to make?");
- break;
- }
- return;
-}
-
-function give_yellow_dye {
- .@q = getq(TulimsharQuest_Cyndala);
-
- inventoryplace YellowDye, 1, EmptyBottle, 1;
- Zeny = Zeny - 50;
- delitem BottleOfSewerWater, 1;
- delitem PiouFeathers, 50;
-
- mesn;
- mesq l("Here you are, you won't find a dye more yellow than this!");
- getitem(YellowDye, 1);
- getitem(EmptyBottle, 1);
-
- if (.@q == 1) {
- setq TulimsharQuest_Cyndala, 2;
- getexp 80, 0;
- }
- return;
-}
-
-function deny_yellow_dye {
- mesn;
- mesc l("I am sorry, but it does not look like you have everything. You will need to bring:");
- next;
- mesc l("%d/%d %s", countitem(BottleOfSewerWater), 1, getitemlink(BottleOfSewerWater));
- mesc l("%d/%d %s", countitem(PiouFeathers), 50, getitemlink(PiouFeathers));
- mesc l("%s/%s GP", fnum(Zeny), fnum(50));
- next;
- return;
-}
-
-function craft_yellow_dye {
- if (countitem(BottleOfSewerWater) < 1 ||
- countitem(PiouFeathers) < 50 ||
- Zeny < 50)
- deny_yellow_dye();
- else
- give_yellow_dye();
- return;
-}
-
-OnInit:
- .@npcId = getnpcid(.name$);
- setunitdata(.@npcId, UDT_HEADTOP, NPCEyesD);
- setunitdata(.@npcId, UDT_HEADMIDDLE, ValentineDress); //TODO
- setunitdata(.@npcId, UDT_HEADBOTTOM, CottonTrousers);
- setunitdata(.@npcId, UDT_WEAPON, DeepBlackBoots); // Boots
- setunitdata(.@npcId, UDT_HAIRSTYLE, 16);
- setunitdata(.@npcId, UDT_HAIRCOLOR, 11);
-
- .sex = G_FEMALE;
- .distance = 5;
- end;
-}