//================= Hercules Script =======================================
//=       _   _                     _
//=      | | | |                   | |
//=      | |_| | ___ _ __ ___ _   _| | ___  ___
//=      |  _  |/ _ \ '__/ __| | | | |/ _ \/ __|
//=      | | | |  __/ | | (__| |_| | |  __/\__ \
//=      \_| |_/\___|_|  \___|\__,_|_|\___||___/
//================= License ===============================================
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
//= Copyright (C) 2012-2015  Hercules Dev Team
//= Copyright (C)  Euphy
//= Copyright (C)  L0ne_W0lf
//=
//= Hercules is free software: you can redistribute it and/or modify
//= it under the terms of the GNU General Public License as published by
//= the Free Software Foundation, either version 3 of the License, or
//= (at your option) any later version.
//=
//= This program is distributed in the hope that it will be useful,
//= but WITHOUT ANY WARRANTY; without even the implied warranty of
//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//= GNU General Public License for more details.
//=
//= You should have received a copy of the GNU General Public License
//= along with this program.  If not, see <http://www.gnu.org/licenses/>.
//=========================================================================
//= Gemstone Trader
//================= Description ===========================================
//= Trade various colors of gemstones for other color gemstones.
//================= Current Version =======================================
//= 1.3
//=========================================================================

payon,173,238,5	script	Jade#pay	4_M_SAGE_A,{
	if (checkweight(Knife,1) == 0) {
		mes "^3355FFWait a second! Right now, you're carrying too many items with you. Please come back after putting some of your things into Kafra Storage.^000000";
		close;
	}
	mes "[Jade]";
	mes "Bring me two";
	mes "Gemstones of the";
	mes "same color, and I will";
	mes "change them to Gemstones";
	mes "of a different color.";
	next;
	switch(select("Blue Gemstones into Red ones!", "Red Gemstones into Yellow ones!", "Yellow Gemstones into Blue ones!")) {
	case 1: callsub S_TradeGems,717,716;
	case 2: callsub S_TradeGems,716,715;
	case 3: callsub S_TradeGems,715,717;
	}

S_TradeGems:
	if (countitem(getarg(0)) < 2) {
		mes "[Jade]";
		mes "Hah...!";
		mes "You're kidding me, right?";
		mes "I can't provide you with this";
		mes "service if you don't";
		mes "give me at least";
		mes "2 "+getitemname(getarg(0))+"s!";
		close;
	}
	else {
		.@gems = countitem(getarg(0))/2;
		mes "[Jade]";
		mes "I believe I can create";
		mes "a total of " + .@gems + " " + getitemname(getarg(1)) + "s";
		mes "using the "+getitemname(getarg(0))+"s";
		mes "that you currently have.";
		mes "What do you want to do?";
		next;
		switch(select("Give me as many as you can.", "I want to set the amount.", "I quit.")) {
		case 1:
			delitem getarg(0),.@gems * 2;
			getitem getarg(1),.@gems;
			break;
		case 2:
			mes "[Jade]";
			mes "So how many";
			mes "do you want?";
			mes "The maximum number";
			mes "that you can enter is 100.";
			next;
			while(1) {
				input .@input,0,101;
				if (.@input == 0) {
					mes "[Jade]";
					mes "None at all?";
					mes "I guess you";
					mes "changed your mind...";
					close;
				}
				else if (.@input > 100) {
					mes "[Jade]";
					mes "Errm...";
					mes "I asked you to enter";
					mes "an amount no greater";
					mes "than 100, remember...?";
					next;
				}
				else if (.@gems < .@input) {
					// Custom dialogue
					mes "[Jade]";
					mes "Errm...";
					mes "You don't have that";
					mes "many gems to trade...";
					next;
				}
				else break;
			}
			delitem getarg(0),.@input * 2;
			getitem getarg(1),.@input;
			break;
		case 3:
			mes "[Jade]";
			mes "Sure, no problem.";
			mes "Come back any time.";
			close;
		}
		mes "[Jade]";
		mes "There you go.";
		mes "Feel free to come";
		mes "back any time.";
		mes "Hm, what's that look for?";
		mes "Is there something on my face?";
		close;
	}
}
