//===== rAthena Script ======================================= 
//= Valkyrie Realm
//===== By: ==================================================
//= Nana, fixes by Poki
//= finished, optimized and tested by Lupus
//= L0ne_W0lf
//===== Current Version: ===================================== 
//= 3.1
//===== Compatible With: ===================================== 
//= rAthena SVN
//===== Description: ========================================= 
//= [Official Conversion]
//= Quest to become a Tranceded Class. (Advanced/Rebirthed)
//===== Additional Comments: ================================= 
//= 1.1 Made all into functions,additional checks,quest skills,now Valhallana can return you back. She also makes reborn process only when you got no Zeny/items (as in kRO) [Lupus]
//= 1.2 now alternative classes can use their 1-1 job NPC to become Advanced 1st Class [Lupus]
//= 1.4 added Baby Class support [Lupus]
//= 1.5 Fixed loads of gramatical errors. [Mass Zero]
//= 1.6 Added a func which prevent advanced classes passing 2nd Job Quests again. It also guides adv classes where to go. [Lupus]
//= 1.7 On reborn reset some Job Quest Vars and Reset Girls Counter [Lupus]
//= 1.8 Added Taekwondo classes check [Lupus]
//= 1.9 Added support for Job NPC Fase pics, sorrected one dialogue stuff [Lupus]
//= 2.0 Removed callfunc Is_####_Class in favor of baseClass [Silentdragon]
//= 2.1 Changed all numbers into constants. [Vicious]
//= 2.2 Now ALL quests skills are saved/restored [Lupus]
//= 2.3 Removed Duplicates [Silent]
//= 2.4 Fixed typos, optimized [Lupus]
//= 2.5 Fixed a stuck bug [Lupus]
//= 2.6a Adding proper dialogues [Lupus]
//= 2.7 Rescripted to Aegis 10.3 standards. [L0ne_W0;f]
//=     Removed all functions as they are no longer required.
//=     Correct job level requirements for 1-1 -> 2-x.
//= 2.7a Added Function "F_BlockHigh" back in until rewriteing of the 2-x [L0ne_W0lf]
//=     scripts are comepleted.
//= 2.7b Removed function "F_BlockHigh" as it's no longer used. [L0ne_W0lf]
//= 2.8 Corrected NPC names to fall within proper restrictions. [L0ne_W0lf]
//= 2.9 Corrected Valkyrie case spicifying where to warp after rebirthing. [L0ne_W0lf]
//= 2.9b Fixed Verdandi typo, fixed resetting vars [Lupus]
//= 3.0 Added quest log commands. [L0ne_W0lf]
//= 3.1 Added Izlude Renewal coordinates.
//============================================================ 

valkyrie,48,86,4	script	ͻ#	811,{
	if (ADVJOB != 0 || Upper == 1) {
		mes "[ͻ]";
		mes "ӭ";
		mes "߶,";
		mes "ҫĵ.";
		next;
		mes "[ͻ]";
		mes "뱣";
		mes "ķ";
		mes ".";
		mes "ҫʿ!";
		close;
	}
	else if (Baselevel > 98 && JobLevel > 49 && Class >= Job_Knight && Class <= Job_Crusader2) {
		mes "[ͻ]";
		mes "ӭ";
		mes "߶,";
		mes "ҫĵ.";
		next;
		mes "[ͻ]";
		mes "㽫Ҫе";
		mes "Ȼʼµ";
		mes "ҫʿ.";
		next;
		if (Weight > 0 || Zeny > 0 || checkcart() != 0 || checkfalcon() != 0 || checkriding() != 0) {
			mes "[ͻ]";
			mes "ڿʼ֮ǰ,һЩҪ.";
			mes ",ϴ.";
			mes "е˽.";
			mes "ӭҫĵ...";
			next;
			mes "[ͻ]";
			mes "ͨĵ·, 㲻Яκζ. Ʒ, Ǯ, , ȫ.";
			next;
			mes "[ͻ]";
			mes "׼";
			mes "ٻ,";
			mes "¸ҵðռ.";
			close2;
			warp "yuno_in02",93,205;
			end;
		}
		else {
			mes "[ͻ]";
			mes "ȥѾ׼";
			mes "ͷԼе";
			mes ""+ strcharinfo(0) +".";
			next;
			mes "[ͻ]";
			mes "ðռ, ̬. и˵˽ʱ, ҫ֮ռ.";
			next;
			if (SkillPoint) {
				mes "[ͻ]";
				mes "... Ҹо";
				mes "ĿǰһЩ֮ȥ,";
				mes "һЩδҵ.";
				mes "Ҫ֪,";
				mes "ڵʧ.";
				close2;
				warp "yuno_in02",93,205;
				end;
			}
			mes "[ͻ]";
			mes ", ҰȫƳ";
			mes "ڵļ...";
			mes "Ȼ, ";
			mes "ܹסԵʱ";
			next;
			mes "[ͻ]";
			mes "һ,";
			mes "һ";
			mes "ŮĨȥеļ.";
			next;
			mes "[ͻ]";
			mes "ڶ,";
			mes "һ";
			mes "ά";
			mes "ܹסԵʱ.";
			next;
			mes "[ͻ]";
			mes ",";
			mes "һ";
			mes "ʫܵ";
			mes "Ϊ.";
			next;
			mes "[ͻ]";
			mes "1...";
			callfunc "F_ClearJobVar";
			next;
			mes "[ͻ]";
			mes "1...";
			mes "2......";
			next;
			mes "[ͻ]";
			mes "1...";
			mes "2......";
			mes "3.";
			set ADVJOB, Class+Job_Novice_High; //memo the target 3rd Job ID
			if(ADVJOB == Job_Lord_Knight2) set ADVJOB,Job_Lord_Knight;
			if(ADVJOB == Job_Paladin2) set ADVJOB,Job_Paladin;
			jobchange Job_Novice_High;
			resetlvl(1);
			set MISC_QUEST,MISC_QUEST | 1024; //<-reset Skill Reset Event
			skill 142,1,0;
			skill 143,1,0;
			completequest 1000;
			next;
			mes "[ͻ]";
			mes "ף.";
			mes "";
			mes "һȫµ.";
			mes "Щ΢";
			mes "׼ʼð.";
			getitem 1202,1; //Knife_
			getitem 2302,1; //Cotton_Shirt_
			next;
			mes "[ͻ]";
			mes "ڴŮܹ͸. ϣάܹԶǵҫʱ.";
			next;
			mes "[ͻ]";
			mes "ʫܵŮ, ǰ.";
			close2;
			switch (ADVJOB) {
			case 4008:
			case 4015:
				if (checkre(0))
					warp "izlude",129,97;
				else
					warp "izlude",94,103;
				break;
			case 4009:
			case 4016:
				warp "prontera",273,354; break;
			case 4010:
			case 4017:
				warp "geffen",120,60; break;
			case 4011:
			case 4019:
				warp "alberta",116,57; break;
			case 4012:
			case 4020:
			case 4021:
				warp "payon",69,100; break;
			case 4013:
			case 4018:
				warp "morocc",154,50; break;
			default:
				warp "yuno_in02",93,205; break;
			}
			end;
		}
	}
	else {
		mes "[ͻ]";
		mes "ӭ";
		mes "߶,";
		mes "ҫĵ.";
		next;
		mes "[ͻ]";
		mes "ǳ, δ. 뾡뿪. ʿ!";
		close2;
		warp "yuno_in02",93,205;
		end;
	}
}

yuno_in02,88,164,5	script	÷غ˹ #Library	742,{
	if (Baselevel > 98 && JobLevel > 49 && Class >= Job_Knight && Class <= Job_Crusader2) {
		if (valkyrie_Q == 0) {
			mes "[÷غ˹ ]";
			mes "ӭ˹άбħѧԺͼ.";
			mes "֪";
			mes "'׶֮'.";
			next;
			mes "[÷غ˹ ]";
			mes "ǳ, ԶⱾԭѾƾɲ. ֻṩڸ.";
			next;
			mes "[÷غ˹ ]";
			mes ", Ϊ˱'׶֮'ԭ, ǾҪĶĶȡ.";
			next;
			mes "[÷غ˹ ]";
			mes "";
			mes "1,285,000 zeny.";
			next;
			if (select("- .:- ȡ.") == 1) {
				if (Zeny >= 1285000) {
					set zeny,zeny-1285000;
					set valkyrie_Q,1;
					mes "[÷غ˹ ]";
					mes "ǳл, ľڴҵ. ";
					mes "ԼĶ.";
					close;
				}
				mes "[÷غ˹ ]";
				mes "ǳ, ȥûд㹻Ǯ. ׼.";
				close;
			}
			mes "[÷غ˹ ]";
			mes ", ";
			mes "г̰.";
			close;
		}
		mes "[÷غ˹ ]";
		mes "ٴθлľ. Ͼʱʱȡ '׶֮' ĸ.";
		close;
	}
	mes "[÷غ˹ ]";
	mes "ӭ˹άбħѧԺͼ.";
	mes ", ĵ伮. 뻨ЩʱĴ.";
	close;
}

yuno_in02,93,207,1	script	׶֮	111,{
	if (ADVJOB != 0 || Upper == 1) {
		mes "[׶֮]";
		mes "...õΪ˿. ܹЩӢԼľ, ͬʱܹǵϵκһط.";
		next;
		mes "[׶֮]";
		mes "ҫ, ΪӢ׼һ. ʵ޷ɵԸ, ҫжʵ.";
		next;
		if (select("- ֹͣĶ.:- Ķ.") == 1) {
			mes "[׶֮]";
			mes ".....";
			close;
		}
		mes "[׶֮]";
		mes "һ·, ӵ, ӽõĵط. ͨԶᷢط...";
		close2;
		warp "valkyrie",48,8;
		end;
	}
	else if (Baselevel > 98 && JobLevel > 49 && Class >= Job_Knight && Class <= Job_Crusader2) {
		if (valkyrie_Q != 0) {
			mes "[׶֮]";
			mes "..., ŴӢʹ֮";
			mes "֪ԼǷ,";
			mes "޷ӹ.";
			next;
			mes "[׶֮]";
			mes "ûĵ,";
			mes ", ߴ˵ һЩϢ . , һɵľ.";
			mes "ڰͻ...";
			next;
			mes "[׶֮]";
			mes "ͻ...";
			mes "˵е";
			mes "ػʹ.";
			mes "ɾ˵еʹ.";
			next;
			mes "[׶֮]";
			mes "ӵΰðռ";
			mes "ڰͻ쵼,";
			mes "߶, .";
			mes "ǽµ.";
			next;
			mes "[׶֮]";
			mes "ת, ǻ.";
			mes "ЩΰӢ, .";
			mes "ǵ彫޲,";
			mes "ʹ³...";
			next;
			mes "[׶֮]";
			mes "ǵ꽫׶֮Ļõ. Ȼ, ׶֮¬׵¼֮սȫݻ, ɢ.";
			next;
			mes "[׶֮]";
			mes "˺ܳܳһʱ䣬";
			mes "Ѿҵ׶֮ĵƬ.";
			mes "޷ȷϰͻ߶";
			mes "ǲĴ.";
			next;
			mes "[׶֮]";
			mes ", ҳȥѰǼδϣĵط.";
			mes "ȷ, ͻ߶ʵʴڵ...";
			next;
			set valkyrie_Q,2;
			if(checkquest(1000) == -1) {
				setquest 1000;
			}
			mes "[׶֮]";
			mes "Ӣǵ";
			mes "ܹ";
			mes "Զ. ...";
			close;
		}
		mes "[׶֮]";
		mes "...";
		close;
	}
	mes "[׶֮]";
	mes "...";
	close;
}

yuno_in05,49,43,1	script	׶֮	111,{
	if (Baselevel > 98 && JobLevel > 49 && Class >= Job_Knight && Class <= Job_Crusader2) {
		if (valkyrie_Q == 2) warp "valkyrie",48,8;
	}
	end;
}

valkyrie,44,33,5	script		124,{
	if (Upper != 1) {
		set .@karma_d,rand(1,10);
		if (.@karma_d > 4) {
			mes "[]";
			mes "ϲ.";
			mes "ҫʿ!";
			close;
		}
		mes "[]";
		mes "벻Ҫ";
		mes "κƷ";
		mes "..........";
		close;
	}
	else {
		mes "[]";
		mes "ҫһ,";
		mes "ȥĸط?";
		next;
		switch(select("- ¡:- ޿:- :- :- :- ˹³:- :- ħ:- ŵ")) {
		case 1: callsub S_Warpchar,"prontera",116,72;
		case 2: callsub S_Warpchar,"morocc",156,46;
		case 3: callsub S_Warpchar,"payon",69,100;
		case 4: callsub S_Warpchar,"geffen",120,39;
		case 5: callsub S_Warpchar,"alberta",117,56;
		case 6:
			if (checkre(0))
				callsub S_Warpchar,"izlude",129,97;
			else
				callsub S_Warpchar,"izlude",94,103;
		case 7: callsub S_Warpchar,"aldebaran",91,105;
		case 8: callsub S_Warpchar,"comodo",209,143;
		case 9: callsub S_Warpchar,"yuno",328,101;
		}
	}
S_WarpChar:
	mes "[]";
	mes ";.";
	close2;
	savepoint getarg(0),getarg(1),getarg(2);
	warp getarg(0),getarg(1),getarg(2);
	end;
}

// Warps
//============================================================ 
valkyrie,48,73,0	warp	valk01#1	1,1,valkyrie,48,64
valkyrie,48,66,0	warp	valk01#2	1,1,valkyrie,48,75

