//===== eAthena Script ======================================= 
//= Inn Npcs
//===== By: ================================================== 
//= Darkchild (1.1)
//= Playtester (1.2)
//===== Current Version: ===================================== 
//= 3.0a
//===== Compatible With: ===================================== 
//= eAthena 1.0+
//===== Description: ========================================= 
//= Inn Npcs, Save and Heal
//============================================================
//= variables:
//= arg0 - name of npc
//= arg1 - name of the inn
//= arg2 - map to save at
//= arg3, arg4 - x and y cord. to save at
//= @cost - cost of renting a room
//===== Additional Comments: ================================= 
//= 1.1 Blind Effect By Kobra_k88 (Taken from his old script)
//= I added it to all of them though [Darkchild]
//= 1.1a Minor bug fixes and optimizations. Switched from @variables 
//= to arguments.[kobra_k88]
//= 1.2 Rewrote inn script [Playtester]
//= 1.3 Added (finally) Rachel Inn Maid. Official warp
//=	  and save points[erKURITA]
//= 1.4 Added Hugel inn [erKurita]
//= 1.5 Added "end;" after warping the player. [L0ne_W0lf]
//=	- Small corrections to the prontera Inns.
//=	- Removed the Cancel dialog.
//= 1.6 More fixes, changed progression of "Rest"ing.
//=	- Corrected Morroc NPCs. [L0ne_W0lf]
//= 1.7 Corrected Payon NPC. [L0ne_W0lf] 
//= 1.8 Corrected Geffen NPC. [L0ne_W0lf] 
//= 1.9 Added the Inn for Al De baran. [L0ne_W0lf]
//= 2.0 Added Inn for the Town of Veins. [L0ne_W0lf]
//= 2.1 Corrected NPC names to fall within proper restrictions. [L0ne_W0lf]
//= 2.1a Corrected a little Typo error. (bugreport:536 & 537) [Samuray22]
//= 2.2 Small update to Vein's Inn Master. [L0ne_W0lf]
//= 2.3 Added Lighthalzen Inn from Lighthalzen town file. [L0ne_W0lf]
//= 2.4 Fixed Inn Employee#Ahlma warping to same destination as save point, bugreport: 191.
//= 2.5 Added Moskovia Gostinitsa (Inn) from jA
//= 2.6 Updated Alberta inn to official. [L0ne_W0lf]
//= 2.7 Removed Morroc Inns as per episode 12.1. [L0ne_W0lf]
//= 2.8 Removed Moscovia Inn; Its in quests/quest_moscovia.txt [Kisuka]
//= 2.9 Added switch menus, updated to match AEGIS scripts. [Kisuka]
//= 3.0 Added Brasilis inn receptionist. [L0ne_W0lf]
//= 3.0a Updated dialog for Brasilis inn. [L0ne_W0lf]
//============================================================ 


//======================== Prontera ===================================
// West Side Inn -------------------
prt_in,244,135,2	script	Inn Employee#Sammy	53,{

	callfunc "F_InnMaid","[Employee Sammy]","Nenkaras","prt_in",238,130;
	warp "prt_in",247,104; end;
}
// East Side Inn ------------------
prt_in,61,141,2	script	Inn Employee#Ahlma	53,{

	callfunc "F_InnMaid","[Employee Ahlma]","Nenkaras","prt_in",64,136;
	warp "prt_in",60,166; end;
}

//======================== Alberta ====================================
alberta_in,32,142,3	script	Inn Employee#Jennie	53,{

	callfunc "F_InnMaid","[Employee Jennie]","'Fisherman Inn'!","alberta_in",26,142;
	warp "alberta_in",18,188; end;
}

//====================== Geffen ======================================
geffen_in,70,64,5	script	Inn Employee#Cena	53,{

	callfunc "F_InnMaid","[Employee Cena]","'Ifrit,' the only Inn in the city of Geffen.","geffen_in",70,59;
	warp "geffen_in",31,31; end;
}

//======================= Payon ======================================
payon_in01,132,62,5	script	Inn Employee#Ahee	53,{

	callfunc "F_InnMaid","[Employee Ahee]","Payon Inn","payon_in01",136,61;
	warp "payon_in01",132,11; end;
}

//======================== Morocc ====================================
// North East --------------------------
/*
morocc_in,147,141,3	script	Inn Employee#Hasna	53,{

	callfunc "F_InnMaid","[Employee Hasna]","Morroc Inn","morocc_in",142,140;
	warp "morocc_in",173,135; end;
}
// South --------------------------------
morocc_in,80,100,5	script	Inn Employee#Manar	53,{

	callfunc "F_InnMaid","[Employee Manar]","Morroc Inn","morocc_in",78,95;
	warp "morocc_in",79,123; end;
}
*/

//====================== Aldebaran ===================================
aldeba_in,92,58,5	script	Inn Maid#Rilim	53,{

	callfunc "F_InnMaid","[Rilim]","Al De Baran Inn","aldeba_in",92,50;
	warp "aldeba_in",92,112; end;
}

//======================== Rachel ====================================
ra_in01,376,69,4	script	Inn Keeper#Annie	931,{

	callfunc "F_InnMaid","[Annie]","Rachel Inn","ra_in01",375,58;
	warp "ra_in01",384,128; end;
}

//====================== Lighthalzen =================================
lhz_in02,230,284,4	script	Hotel Employee#01	86,{
	mes "[Hotel Employee]";
	mes "Welcome to";
	mes "the Royal Dragon,";
	mes "where you can find the";
	mes "finest accomodations";
	mes "and the best service.";
	next;
	switch(select("Save Point:Rest - 5,000 zeny:Cancel")) {
	case 1:
		savepoint "lhz_in02",209,275;
		mes "[Hotel Employee]";
		mes "Thank you, your";
		mes "Respawn Point has";
		mes "been saved here in";
		mes "the Royal Dragon.";
		close;
	case 2:
		if(Zeny < 5000) {
			mes "[Hotel Employee]";
			mes "I'm sorry, but";
			mes "you need 5,000 zeny";
			mes "in order to check in.";
			close;
		}
		set Zeny,Zeny - 5000;
		mes "[Hotel Employee]";
		mes "Thank you~";
		mes "I hope you enjoy";
		mes "your stay in the";
		mes "Royal Dragon.";
		close2;
		warp "lhz_in02",219,150;
		percentheal 100,100;
		sc_start SC_BLESSING,240000,10;
		skilleffect AL_BLESSING,0;
		end;
	case 3:
		mes "[Hotel Employee]";
		mes "Thank you and";
		mes "have a nice day.";
		close;
	}
}

//======================== Hugel ====================================
hu_in01,246,107,3	script	Inn Maid#Receptionist	53,{

	callfunc "F_InnMaid","[Receptionist]","Hugel Inn","hu_in01",263,95;
	warp "hu_in01",267,5; end;
}

//======================== Veins ====================================
ve_in,157,219,5	script	Inn Master#Receptionist	709,{
	mes "[Inn Master]";
	mes "Good day~";
	mes "Welcome to the";
	mes "most comfortable";
	mes "inn here in Veins~";
	next;
	switch(select("Save:Take a Rest -> 5000 zeny:Quit")) {
	case 1:
		mes "[Inn Master]";
		mes "Your Respawn Point";
		mes "has been saved in Veins.";
		mes "Enjoy your stay in town~";
		savepoint "ve_in",157,209;
		close;
	case 2:
		mes "[Inn Master]";
		if(Zeny < 5000){
			mes "I'm sorry, but I don't";
			mes "think you have enough";
			mes "money to check in. The";
			mes "service charge is 5,000 zeny.";
			close;
		}
		mes "Enjoy your stay~";
		close2;
		set Zeny,Zeny - 5000;
		percentheal 100,100;
		warp "ve_in",184,228;
		end;
	case 3:
		mes "[Inn Master]";
		mes "Please come again.";
		close;
	}
}

//======================== Brasilis =================================
bra_in01,27,24,3	script	Hotel Keeper#bra1	478,{
	mes "[Hotel Keeper]";
	mes "Welcome to the beautiful Brasilis Hotel.";
	next;
	switch(select("Save:Rest -5000 zeny")) {
	case 1:
		mes "[Hotel Keeper]";
		mes "Do you want to save here at the Brasilis Hotel?";
		next;
		switch(select("No thank you.:Absolutely.")) {
		case 1:
			mes "[Hotel Keeper]";
			mes "Ok then, enjoy your stay.";
			close;
		case 2:
			mes "[Hotel Keeper]";
			mes "Your respawn has been saved here at the hotel. I hope that you enjoy your stay here in Brasilis.";
			savepoint "bra_in01",144,69;
			close;
		}
	case 2:
		if (Zeny > 4999) {
			mes "[Hotel Keeper]";
			mes "I will show you a great room.";
			close2;
			set zeny,zeny-5000;
			percentheal 100,100;
			warp "bra_in01",144,69;
			end;
		}
		else {
			mes "[Hotel Keeper]";
			mes "I'm sorry, but the service charge is 5,000 zeny per night.";
			close;
		}
	}
}

//======================= Inn Function ==============================
function	script	F_InnMaid	{
	mes getarg(0);
	mes "Welcome to";
	mes getarg(1) + ".";
	mes "How may I help you?";
	next;
	switch(select("Save:Take a Rest -> 5000 zeny:Cancel")) {
	case 1:
		mes getarg(0);
		mes "Your respawn point";
		mes "has been saved.";
		mes "Thank you,";
		mes "please come again.";
		savepoint getarg(2),getarg(3),getarg(4);
		close;
	case 2:
		mes getarg(0);
		if(Zeny < 5000){
			mes "I'm sorry, but the service charge is 5,000 zeny. Please make sure that you have enough money to check in next time, okay?";
			close;
		}
		mes "Thank you.";
		mes "I hope you";
		mes "enjoy your rest~";
		close2;
		set Zeny,Zeny - 5000;
		percentheal 100,100;
		return;
	case 3:
		close;
	}
}
