// The Mana World scripts. // Author: // Jesusalva // Description: // Tiki is the sandwich maker of Candor 012-1,116,118,0 script Tiki NPC_TIKI,{ function tikiSubmit; function tikiMenu; function tikiShop; mesn; mesq l("Hey there, shady fella. Whaddaya want in Candor shores?"); next; if (getq(General_Cooking) == 7) tikiMenu(); if (getq(General_Cooking) == 8) tikiSubmit(); tikiShop(); end; function tikiShop { closeclientdialog; shop .name$; return; } function tikiMenu { .@q2=getq2(General_Cooking); select l("Just wanted to purchase ingredients for cooking."), l("Actually, I would like to learn some recipes."), l("Actually I'm lost. Sorry."); mes ""; // Explode script as requested if (@menu == 3) close; // Return so shop can take over if (@menu == 1) return; // @menu == 2, "I would like to learn some recipes" mesn strcharinfo(0); mesc l("You quickly explain the situation and request the %s sandwich.", getitemlink(.@q2 == VEGAN ? MananaSandwich : PioulegSandwich)); next; mesn; mesq l("Ahh, I see! Very shady indeed, almost as shady as you are!"); next; mesn; mesq l("I would like to help, but I can't. I'm busy, you see! Candor's Sandwich Making Contest is coming up, and I never lost a single instance of it!"); next; select l("Ah, too bad, I'll ask Yannika for more ideas, bye."), l("How come you never lost before?"), l("Perhaps I can help?"); mes ""; if (@menu == 1) close; if (@menu == 2) { mesn; mesq l("Because I'm so great! I am so good, that the other challengers doesn't even show up in fear of losing to me!"); next; mesn; mesq l("Anyway, perhaps you could help me, and I'll help you in exchange. Whaddaya think?"); next; } mesn; mesq l("It is really easy - I need an idea. Bring me something NEW, revolutionary, to make a sandwich out of it. And I'll teach you the recipe!"); next; setq1 General_Cooking, 8; return; } function tikiSubmit { mesc "[" + .name$ + "]"; mesc l("\"Bring me something NEW, revolutionary, to make a sandwich out of it.\""); mes "##B" + l("Drag and drop an item from your inventory.") + "##b"; .@id = requestitem(); // If ID is invalid if (.@id < 1) close; // If there's not enough items, it is bound, it cannot be traded/dropped/sold, etc. // TODO: Prevent plates/bowls from being destroyed this way!! if (countitem(.@id) < 1 || checkbound(.@id) || getiteminfo(.@id, ITEMINFO_TYPE) != IT_HEALING) { mesc l("This item cannot be given."); close; } mesc l("Are you sure you want to give %s to %s? Item will be lost!", getitemlink(.@id), .name$), 1; if (askyesno() == ASK_NO) close; mesn; mesq l("%s puts %s on between two bread slices and try it.", .name$, getitemname(.@id)); next; delitem .@id, 1; if (.@id != MoubooSteak) { mesn; mesc l("%s starts shouting insults at you!", .name$); next; mesn; mesq l("This is the worst. sandwich. ever! How do you dare to give me such thing?!"); next; mesn; mesq l("Go get me something else, go do it NOW!!"); mesc l("...Maybe if he put the cheese and lettuce as you usually do, it would have tasted great... *sigh*"); close; } setq1 General_Cooking, 9; setq1 General_SmearedHands, 3; RECIPES[(.@q2 == VEGAN ? CraftMananaSandwich : CraftPioulegSandwich)]=true; mesn; mesq l("Uh - Oh. This is... Actually good!"); next; mesn; mesq l("I'm sure I'll win this year's contest as well! Hah, just wait and see!"); next; mesn; mesq l("What? Still want that shady recipe? Meh, just cut a bread, throw in three lettuce leaves, two cheese, and put the special ingredient - A %s!", getitemname(.@q2 == VEGAN ? Manana : PiouLegs)); next; mesq l("And vói-la, you have your sandwich done. Now go, I have a contest to win! Hahaha!"); close; } OnInit: .sex = GENDER_MALE; .distance = 4; tradertype(NST_MARKET); sellitem Bread, -1, 35; sellitem PiouLegs, -1, 25; sellitem Manana, -1, 20; sellitem Cheese, -1, 12; sellitem LettuceLeaf, -1, 10; sellitem CommonCarp, -1, 8; sellitem GrassCarp, -1, 7; end; OnClock0001: restoreshopitem Bread, 35; restoreshopitem PiouLegs, 25; restoreshopitem Manana, 20; restoreshopitem Cheese, 12; restoreshopitem LettuceLeaf, 10; restoreshopitem CommonCarp, 8; restoreshopitem GrassCarp, 7; end; }