//===== eAthena Script ======================================= 
//= Rogue Job Quest
//===== By: ================================================== 
//= kobra_k88
//===== Current Version: ===================================== 
//= 2.0
//===== Compatible With: ===================================== 
//= eAthena 1.0 +
//===== Description: ========================================= 
//= Rogue job quest based off of official iRO Rogue quest.
//= There are some differences from official quest due to scripting issues.
//= Missing some message text.  
//===== Additional Comments: ================================= 
//= 1.1 fixed 3 wrong questions, added missing lines [Lupus]
//= 1.3 Baby Class Support + 40/50 JobLevel Item fix [Lupus]
//= 1.5 Fixed possible EXP abuse [Lupus]
//= 1.6 Added a func which prevent advanced classes passing
//= 2nd Job Quests again. It also guides adv classes where
//= to go. [Lupus]
//= 2.0 Changed numbers to constants. [Vicious]
//============================================================ 


//=======================================================================================================//
//					Markie: Test 1 and Jobchange						//
//***********************************************************************************************************************************************************//
in_rogue.gat,363,123,3	script	Markie	747,{
	callfunc "F_BlockHigh",Job_Thief_High,"Thief High",Job_Stalker,"Stalker","Markie";

	mes "[Markie]";
	if(BaseJob == Job_Thief) goto L_Thief;
	if(BaseJob == Job_Rogue) goto L_Rogue;

L_JobOther:
	mes "I don't know how you found this place, but I think you better leave..........";
	close;

L_Rogue:
	mes "Nice to see you again sweetie.  You must be having so much fun as Rogue huh? Teh he he....";
	close;

L_Thief:
	if(JobLevel >= 40) goto L_Start;
	mes "Oh hi there.  If you want to become a Rogue I'm afraid you'll have to come back after you've trained a little more.";
	mes "Only Thieves with a ^5533FFJob level of at least 40^000000 can become Rogues.";
	close;

L_Start:
	if(ROGUE_Q == 1) goto L_ReTest;
	if(ROGUE_Q == 2) goto L_Test2;
	if(ROGUE_Q == 3) goto L_Test3;
	if(ROGUE_Q == 4) goto L_Test4;
	if(ROGUE_Q == 5) goto L_Change;
	mes "Hmm? What brings you down here? Oh I see now... You want to become a rogue don't you sweetie?";
	next;
	mes "[Markie]";
	mes "Well it's nice to meet you.  My name is Markie, what's yours?";
	next;
	mes "[Markie]";
	mes strcharinfo(0) + "..... Te he, you've got a nice name there honey.  By the way, how come you decided to become a Rogue?";
	next;
	mes "[Markie]";
	mes "Well since you were honest with me and gave me your real name I guess it doesn't really matter.";
	mes "But for future reference, a Rogue never reveals his/her true identity to anybody.";
	next;
	mes "[Markie]";
	mes "It's a Rogue's number 1 rule shuga, so from now on you'd better be careful about that.";
	mes "By the way, here's an application form.....  please fill out all the necessary information.....";
	next;
	mes "(you fill out the form and hand it back)";
	set JBLVL, 40;			// used to determine what item to get at the end
	if(JobLevel == 50) set JBLVL, 50;	// used to determine what item to get at the end
	next;
	mes "[Markie]";
	mes "Okay honey.... looks good, I'll accept your application.";
	mes "Now that that's been taken care of, how about I conduct a short interview with you?";
	next;
	mes "[Markie]";
	mes "Oh, you don't have to be nervous about it sweetie.... I'm just want to find out how much you know about Rogues.";
	mes "I do this with all of the Rogue candidates.  Shall we begin?";
	next;
	menu "Ok.",L_Test1, "Hold on... I need some time.",-;

		mes "[Markie]";
		mes "Okay honey, just take your time.  When you're ready come back.";
		close;


//=================================================================
L_Test1:
//=======
	mes "[Markie]";
	mes "I am going to ask you a few questions.  Listen carefully and choose what you think is the best answer okay?";
	next;
	callfunc "RogQ_check";
		if(@score< 90) goto sL_Failed;
		if(@score<100) goto sL_Passed;

		sL_Perfect:
			mes "A perfect score!  I knew you had what it takes to be a Rogue.....";
			mes "But don't get ahead of yourself honey cause there is still plenty more.....";
			next;
			mes "[Markie]";
			set ROGUE_Q, 2;
			goto L_Test2;

		sL_Passed:
			mes "Good, good.  You did a good job shuga.  But there is still more so don't get excited just yet.....";
			next;
			mes "[Markie]";
			set ROGUE_Q, 2;
			goto L_Test2;
			return;

		sL_Failed:
			mes "*sigh*..... this is not the type of score I was expecting......";
			mes "What can I say excecpt, with a score like this you're definitely not cut out to be a Rogue..........";
			emotion e_swt;
			next;
			mes "[Markie]";
			mes "Why don't you go do some more training shuga..... you need it..... *mumbles ( what a waste of my time...)*";
			close;

L_ReTest:
	mes "You again? Are you sure you're ready this time?...... Okay honey, just relax....";
	next;
	goto L_Test1;

L_Test2:
	mes "Your second test will be given by ^5533FFMr. Smith^000000.";
	mes "I have to warn you though, Mr. Smith can be difficult and hard to please.  So be careful how you act around him.";
	close;
L_Test3:
	mes "I know those guys are hard to find.  Just be patient and keep on searching.  Make sure you have the correct password as well..";
	close;
L_Test4:
	mes "What are you doing here? I hope your not trying to skip the last test?.........";
	emotion e_what;
	next;
	mes "[Markie]";
	mes "Your almost finished so just keep trying.  I know you can do it.";
	close;


//=======================================================================
L_Change:
//===========
	mes "Oh, you're back and your in one piece! It looks like you've passed all of the tests sweetie.";
	mes "You have proven that you are ready to become a Rogue!";
	emotion e_ic;
	next;
	if(SkillPoint != 0) goto L_SkillP;
	mes "[Markie]";
	mes "Tada! Congratulations on becoming a Rogue.  You showed a lot of effort and deserve a reward for it......";
	setlook 7,0;
	callfunc "Job_Change",Job_Rogue;
	emotion e_grat;
	next;
	mes "[Markie]";
	mes "Now that you are a Rogue you are free to go where ever you want to and do what ever you want.";
	if(JBLVL != 50) getitem 1219,1;		// 2 slott gladius
	if(JBLVL == 50) getitem 1220,1;		// 3 slott gladius
	callfunc "F_ClearJobVar";
	next;
	mes "[Markie]";
	mes "Just keep in mind that freedom requires responsibility.  Treat people the way you expect to be treated.";
	next;
	mes "[Markie]";
	mes "Have fun shuga! See ya around!";
	close;

//=======================================================================
L_SkillP:
//===========
	mes "[Markie]";
	mes "Oh but one thing honey... you have leftover skill points!";
	mes "Finish them first and come back, 'kay?";
	close;
}



//=======================================================================================================//
//					Mr. Smith: Tests 2 and 3						//
//***********************************************************************************************************************************************************//
in_rogue.gat,376,23,3	script	Mr. Smith	57,{

	mes "[Mr. Smith]";
	if(BaseJob == Job_Thief) goto L_Thief;
	if(BaseJob == Job_Rogue) goto L_Rogue;

L_OtherJob:
	mes "Go away! I'm busy.....";
	close;
L_Rogue:
	mes "Looking good there my Rogue friend";
	close;
L_Thief:
	if(ROGUE_Q == 2) goto L_Test2;
	if(ROGUE_Q == 3) goto L_Test3;
	if(ROGUE_Q > 3) goto L_Done;
	mes "Ok ok.... one... two.... three.... Where do you do you business... is it.... Morroc... Geffen.... Comodo??.......";
	next;
	mes "[Mr. Smith]";
	mes "Uhh..... this is giving me a headache.......";
	next;
	mes "[Mr. Smith]";
	mes "Huh? Who are you? If you want to become a rogue go talk to ^5533FFMarkie^000000....";
	next;
	mes "[Mr. Smith]";
	mes "...... CRAP! I forgot what I was counting!!";
	emotion e_wah;
	close;

//----------------------------------------------------------------------------------------------------
L_Test2:
//--------------
	if(ROGUE_Q2 > 0) goto L_Check2;
	mes "So you're here to take the second test.... good.......";
	next;
	mes "[Mr. Smith]";
	mes "Before we get started, let me tell you about the test application fee.";
	mes "Our guild is involved in alot of business *cough* 'transactions' *cough* and therefore we are in constant needs of funds.";
	next;
	mes "[Mr. Smith]";
	mes "This is why we require a fee of ^5533FF10,000 zeny^000000 to be paid when taking the Rogue tests.";
	mes "The fee will be collected when you have completed this second test so don't have to worry if you don't have it now.";
	next;
	mes "[Mr. Smith]";
	mes "Now for your test..... You will be required to collect the following items:";
	next;
	mes "[Mr. Smith]";
	set ROGUE_Q2, rand(1,3);
	if(ROGUE_Q2 == 1) callsub sF2_R1;
	if(ROGUE_Q2 == 2) callsub sF2_R2;
	if(ROGUE_Q2 == 3) callsub sF2_R3;
	next;
	mes "[Mr. Smith]";
	mes "Once you have ALL of these items and 10,000 zeny, come back and see me okay? Good.";
	close;

	sF2_R1:
		mes "^5533FF6 Blue Herbs,";
		mes "10 Skel Bones,";
		mes "10 Decayed Nails,";
		mes "10 Horrendous Mouths^000000.";
		return;
	sF2_R2:
		mes "^5533FF10 Green Herbs,";
		mes "10 Garlets,";
		mes "10 Snake Scales";
		mes "10 Crab Shells.^000000";
		return;
	sF2_R3:
		mes "^5533FF10 Yellow Herbs,";
		mes "10 Bear's Footskin,";
		mes "10 Shells";
		mes "10 Grasshopper's Legs^000000.";
		return;

L_Check2:
	set @count, 0;
	if(ROGUE_Q2 == 2) goto L_2;
	if(ROGUE_Q2 == 3) goto L_3;

	L_1:
		set @R, 1;
		if(countitem(510)<6 || countitem(932)<10 || countitem(957)<10 || countitem(958)<10 || Zeny < 10000) goto L_NotEnuf;
		delitem 510,6;
		delitem 932,10;
		delitem 957,10;
		delitem 958,10;
		goto L_Done2;

	L_2:
		set @R, 2;
		if(countitem(511)<10 || countitem(910)<10 || countitem(926)<10 || countitem(964)<10 || Zeny < 10000) goto L_NotEnuf;
		delitem 511,10;
		delitem 910,10;
		delitem 926,10;
		delitem 964,10;
		goto L_Done2;

	L_3:
		set @R, 3;
		if(countitem(508)<10 || countitem(948)<10 || countitem(935)<10 || countitem(940)<10 || Zeny < 10000) goto L_NotEnuf;
		delitem 508,10;
		delitem 948,10;
		delitem 935,10;
		delitem 940,10;

	L_Done2:
		mes "Let's see here.... application fee.... check..... items....... check...... Alright, everything looks in order.  You've passed the second test.";
		next;
		mes "[Mr. Smith]";
		mes "When you are ready to take the next test let me know.";
		set Zeny, Zeny - 10000;
		set ROGUE_Q, 3;
		set ROGUE_Q2, 0;
		close;

	L_NotEnuf:
		mes ".... What the f@&#!?!? You don't have all of the items? Then why did you come back?? Don't tell me you forgot what to get.....";
		emotion e_what;
		next;
		mes "[Mr. Smith]";
		mes "Write this down! You need ^5533FF10,000^000000 zeny and:";
		if(ROGUE_Q2 == 1) callsub sF2_R1;
		if(ROGUE_Q2 == 2) callsub sF2_R2;
		if(ROGUE_Q2 == 3) callsub sF2_R3;
		next;
		mes "[Mr. Smith]";
		mes "Got it? DON'T come back until you have everything.........";
		emotion e_pif;
		close;


//----------------------------------------------------------------------------------------------
L_Test3:
//---------------
	if(ROGUE_Q2 > 0) goto L_Check3;
	mes "Let me see..... Who should I have you go find........ hmm.........";
	emotion e_hmm;
	next;
	mes "[Mr. Smith]";
	mes "Ah I know! Alright, in the previous test I had you go find some items.  For this test you will need to find a specific person.";
	emotion e_ic;
	next;
	mes "[Mr. Smith]";
	set ROGUE_Q2, rand(1,3);
	if(ROGUE_Q2 == 1) callsub sF3_R1;
	if(ROGUE_Q2 == 2) callsub sF3_R2;
	if(ROGUE_Q2 == 3) callsub sF3_R3;
	next;
	mes "[Mr. Smith]";
	mes "Good luck to you.  Try to finish this test as soon as possible.  Getting things done quickly is one of a Rogue's traits.";
	close;

	sF3_R1:
		mes "You will have to go and find ^5533FFAragham Junior^000000.";
		next;
		mes "[Mr. Smith]";
		mes "He lives in a little house somewhere ^5533FFSouthWest^000000 of the Fortress of Sandarman.";
		mes "That area is located ^5533FFone map East^000000 from here and is on the ^000000SouthWestern land mass^000000.";
		next;
		mes "[Mr. Smith]";
		mes "He's a really nice guy who works real hard and is very good at collecting unpaid debts.";
		mes "Unfortunately people were trying to kill him because of something his father had done in the past.";
		next;
		mes "[Mr. Smith]";
		mes "When he joined the Rogue guild, he decided he was going to keep low which is why he's in his current hiding place.";
		mes "No one is supposed to know where he is except for those of us at the Rogue Guild.";
		next;
		mes "[Mr. Smith]";
		mes "That's why you will need this password in order to talk to him.";
		mes "The password is: '^5533FFAragham never hoarded upgrade items.^000000'";
		return;
	sF3_R2:
		mes "You will have to go and find ^5533FFHollgrehen Junior^000000.";
		next;
		mes "[Mr. Smith]";
		mes "He lives in a little house somewhere ^5533FFSouthEast^000000 of the Fortress of Sandarman.";
		mes "That area is located ^5533FFone map East^000000 from here and is on the ^5533FFEastern land mass^000000.";
		next;
		mes "[Mr. Smith]";
		mes "He's a really nice guy who works real hard and is very good at collecting unpaid debts.";
		mes "Unfortunately people were trying to kill him because of something his father had done in the past.";
		next;
		mes "[Mr. Smith]";
		mes "When he joined the Rogue guild, he decided he was going to keep low which is why he's in his current hiding place.";
		mes "No one is supposed to know where he is except for those of us at the Rogue Guild.";
		next;
		mes "[Mr. Smith]";
		mes "That's why you will need this password in order to talk to him.";
		mes "The password is: '^5533FFMy Father never hoarded upgrade items.^000000'";
		return;
	sF3_R3:
		mes "You will have to go and find ^5533FFAntonio Junior.^000000.";
		next;
		mes "[Mr. Smith]";
		mes "He lives in a little hut somewhere on the ^5533FFEastern end of Kokomo Beach^000000.";
		mes "That area is located ^5533FF1 map North, and 1 map West^000000 from here.";
		next;
		mes "[Mr. Smith]";
		mes "He's a really nice guy who works real hard and is very good at collecting unpaid debts.";
		mes "Unfortunately people were trying to kill him because of something his father had done in the past.";
		next;
		mes "[Mr. Smith]";
		mes "When he joined the Rogue guild, he decided he was going to keep low which is why he's in his current hiding place.";
		mes "No one is supposed to know where he is except for those of us at the Rogue Guild.";
		next;
		mes "[Mr. Smith]";
		mes "That's why you will need this password in order to talk to him.";
		mes "The password is: '^5533FFAntonio doesn't like breaking refining material.^000000'";
		return;


L_Check3:
	mes "What!?! Did you just say you forgot where to go?........";
	emotion e_what;
	next;
	mes "[Mr. Smith]";
	mes "GRRRR!!! That's why you need to WRITE down important things! Geez......";
	emotion e_an;
	next;
	mes "[Mr. Smith]";
	if(ROGUE_Q2 == 1) callsub sF3_R1;
	if(ROGUE_Q2 == 2) callsub sF3_R2;
	if(ROGUE_Q2 == 3) callsub sF3_R3;
	close;

//-------------------------------------------------------------------------------------------------
L_Done:
//----------------
	mes "I have no more busisness with you.........";
	close;
}


//===========================================================
// Guildsman that need to be found
//===========================================================

//------------------------------------------------------------------------------
in_rogue.gat,272,136,3	script	Hermanthorn Jr.	85,{
	mes "[Hermanthorn Jr.]";
	mes "Huh? Wha.... who are you?! You're not from the Rogue guild!! Get out of here!";
	emotion e_what;
	next;
	mes "[Hermanthorn Jr.]";
	mes "You're..... I see! You're one of them!!! You've come here to kill me haven't you??!! No... NO!! I'm not ready to die yet!";
	emotion e_gasp;
	next;
	mes "[Hermanthorn Jr.]";
	mes "Aaaaaaaaaaaaaahhhh!! Go away! Get lost! Otherwise I am gonna KILL YOU!!!";
	emotion e_wah;
	close;
}

// --------------------------------------------------------------------------
cmd_fild09.gat,106,195,0	script	Aragham Junior	45,1,1,{
	callfunc "F_RogueTest3", 1, "Aragham", "never", "hoarded", "upgrade items.", 244, 24;
}

// -----------------------------------------------------------------------------
cmd_fild09.gat,335,143,0	script	Hollgrehen Junior	45,1,1,{
	callfunc "F_RogueTest3", 2, "My father", "never", "hoarded", "upgrade items.", 168, 34;
}

// ------------------------------------------------------------------------------
cmd_fild04.gat,304,179,0	script	Antonio Junior	45,1,1,{
	callfunc "F_RogueTest3", 3, "Antonio", "doesn't like", "breaking", "refining materials.", 165, 104;
}

// Function for Guildsman ===================================
function	script	F_RogueTest3	{

	mes "[???]";
	mes "Who's there?!!!";
	mes "Who dares to trespass on my territory?";
	if(BaseJob!=Job_Thief || ROGUE_Q<3 || ROGUE_Q2==0) close;
L_Start:
	deletearray @choice$[1], 4;
	next;
	menu "My father",M_1a, "Aragham",M_1b, "Antonio",M_1c, "Legolas",M_1d;

	M_1a:
		set @choice$[1], "My father";
		goto M_Menu2;
	M_1b:
		set @choice$[1], "Aragham";
		goto M_Menu2;
	M_1c:
		set @choice$[1], "Antonio";
		goto M_Menu2;
	M_1d:
		set @choice$[1], "Legolas";

	M_Menu2:
	callsub sF_Password;
	menu "did not",M_2a, "doesn't like",M_2b, "never",M_2c, "ever",M_2d;

	M_2a:
		set @choice$[2], "did not";
		goto M_Menu3;
	M_2b:
		set @choice$[2], "doesn't like";
		goto M_Menu3;
	M_2c:
		set @choice$[2], "never";
		goto M_Menu3;
	M_2d:
		set @choice$[2], "ever";

	M_Menu3:
	callsub sF_Password;
	menu "hoard",M_3a, "hoarded",M_3b, "hide",M_3c, "took",M_3d, "breaking",M_3e;

	M_3a:
		set @choice$[3], "hoard";
		goto M_Menu4;
	M_3b:
		set @choice$[3], "hoarded";
		goto M_Menu4;
	M_3c:
		set @choice$[3], "hide";
		goto M_Menu4;
	M_3d:
		set @choice$[3], "took";
		goto M_Menu4;
	M_3e:
		set @choice$[3], "breaking";

	M_Menu4:
	callsub sF_Password;
	menu "upgrade items.",M_4a, "forging items.",M_4b, "refining materials.",M_4c, "upgrade equipment.",M_4d;

	M_4a:
		set @choice$[4], "upgrade items.";
		goto L_Check;
	M_4b:
		set @choice$[4], "forging items.";
		goto L_Check;
	M_4c:
		set @choice$[4], "refining materials.";
		goto L_Check;
	M_4d:
		set @choice$[4], "upgrade equipment.";

L_Check:
	callsub sF_Password;
	if(ROGUE_Q2 != getarg(0)) goto L_Wrong;
	if((@choice$[1] != getarg(1)) || (@choice$[2] != getarg(2)) || (@choice$[3] != getarg(3)) || (@choice$[4] != getarg(4))) goto L_Wrong;
	mes "~ creeek ~";
	mes "You hear the door begining to open........";
	next;
	deletearray @choice$[1], 4;
	warp "in_rogue.gat", getarg(5), getarg(6);
	end;

	L_Wrong:
		mes "[???]";
		mes "Get lost!!";
		close;
sF_Password:
	mes "[^5533FF" + strcharinfo(0) + "^000000]";
	mes @choice$[1];
	mes @choice$[2];
	mes @choice$[3];
	mes @choice$[4];
	next;
	return;
}


//=======================================================================================================//
//						Test 4: Last Test						//
//***********************************************************************************************************************************************************//
// Other path
// warp "in_rogue.gat", 11, 388;
// 390,389 end warp
// 9,9 -> 9,21
//===============================================
// Guildsman
//===============================================
//---------------------------------------------------------------------------
in_rogue.gat,244,39,4	script	Aragham Junior	99,{
	callfunc "F_RogueTest4", "Aragham Junior", 245, 27;
}
//---------------------------------------------------------------------------
in_rogue.gat,152,27,6	script	Hollgrehen Junior	85,{
	callfunc "F_RogueTest4", "Hollgrehen Junior", 160, 32;
}
//---------------------------------------------------------------------------
in_rogue.gat,183,105,4	script	Antonio Junior	88,{
	callfunc "F_RogueTest4", "Antonio Junior", 175, 107;
}

// Function for Guildsman =============================
function	script	F_RogueTest4	{

	if(ROGUE_Q == 4) goto L_Restart;
	mes "[" + getarg(0) + "]";
	mes "Hello there... You must be from the Rogue guild.  My name is " + getarg(0) + "...... I am the Rogue of the Desert..............";
	next;
	mes "[" + getarg(0) + "]";
	mes "Aww who am I kidding...... Let's cut the crap.  So are you ready to become a rogue?";
	emotion e_swt;
	next;
	mes "[" + getarg(0) + "]";
	mes "You see, the Rogue motto is...... ^5533FF'Avoid the strong! Be malicious to the weak!'^000000";
	mes "This simple rule applys to fighting monsters as well.";
	next;
	mes "[" + getarg(0) + "]";
	mes "The very last thing you will have to do before you can become a Rogue, is to walk through an underground passage to the Rogue Guild.";
	next;
	mes "[" + getarg(0) + "]";
	mes "Sounds easy huh? Well it's not! But don't worry....";
	mes "If you stay true to the Rogue motto and use a lot of hide, and do a lot of running, you should be just fine.";

	M_Menu:
	next;
	mes "[" + getarg(0) + "]";
	mes "Ok, are you ready to go?";
	next;
	menu "As ready as I'll ever be.",-, "Actually I'm kinda scared...",M_End;

		mes "[" + getarg(0) + "]";
		mes "Good luck then.";
		next;
		set ROGUE_Q, 4;
		killmonsterall "in_rogue.gat";
		savepoint "in_rogue.gat", getarg(1), getarg(2);
		warp "in_rogue.gat", 15, 105;
		end;

	M_End:
		mes "[" + getarg(0) + "]";
		mes ".....................";
		next;
		mes "[" + getarg(0) + "]";
		mes "Well take your time then...... I guess.......";
		close;

L_Restart:
	mes "[" + getarg(0) + "]";
	mes "....... Looks like you got creamed.......";
	emotion e_swt;
	next;
	mes "[" + getarg(0) + "]";
	mes "If you're up for it, I'll send you back in.  Failure has a way of teaching success.... yada yada yada....";
	percentheal 100,100;
	goto M_Menu;
}

//================================================
// Monster Spawns
//================================================
in_rogue.gat,15,185,0	script	rogue_mob1	139,8,0,{
	monster "in_rogue.gat",14,188,"Zombie",1015,1;
	monster "in_rogue.gat",15,188,"Zombie",1015,1;
	monster "in_rogue.gat",16,188,"Zombie",1015,1;
	monster "in_rogue.gat",14,189,"Zombie",1015,1;
	monster "in_rogue.gat",15,189,"Zombie",1015,1;
	monster "in_rogue.gat",16,189,"Zombie",1015,1;
	end;
}
in_rogue.gat,15,245,0	script	rogue_mob2	139,8,0,{
	monster "in_rogue.gat",14,247,"Mummy",1041,1;
	monster "in_rogue.gat",15,247,"Mummy",1041,1;
	monster "in_rogue.gat",16,247,"Mummy",1041,1;
	monster "in_rogue.gat",14,248,"Mummy",1041,1;
	monster "in_rogue.gat",15,248,"Mummy",1041,1;
	monster "in_rogue.gat",16,248,"Mummy",1041,1;
	end;
}
in_rogue.gat,15,328,0	script	rogue_mob3	139,8,0,{
	monster "in_rogue.gat",14,331,"Zombie",1015,1;
	monster "in_rogue.gat",15,331,"Zombie",1015,1;
	monster "in_rogue.gat",16,331,"Zombie",1015,1;
	monster "in_rogue.gat",14,332,"Zombie",1015,1;
	monster "in_rogue.gat",15,332,"Zombie",1015,1;
	monster "in_rogue.gat",16,332,"Zombie",1015,1;
	end;
}
in_rogue.gat,35,342,0	script	rogue_mob4	139,0,8,{
	monster "in_rogue.gat",38,340,"Mummy",1041,1;
	monster "in_rogue.gat",37,342,"Abyss Knight",1219,1;
	monster "in_rogue.gat",39,342,"Ghoul",1036,1;
	monster "in_rogue.gat",38,344,"Mummy",1041,1;
	end;
}
in_rogue.gat,57,306,0	script	rogue_mob5	139,4,0,{
	monster "in_rogue.gat",59,301,"Khalitzburg",1132,1;
	end;
}
in_rogue.gat,96,333,0	script	rogue_mob6	139,0,4,{
	monster "in_rogue.gat",92,325,"Khalitzburg",1132,1;
	end;
}
in_rogue.gat,139,313,0	script	rogue_mob7	139,4,0,{
	monster "in_rogue.gat",139,309,"Abyss Knight",1219,1;
	end;
}
in_rogue.gat,135,246,0	script	rogue_mob8	139,0,4,{
	monster "in_rogue.gat",139,245,"Zombie",1015,2;
	monster "in_rogue.gat",139,246,"Zombie",1015,2;
	monster "in_rogue.gat",139,247,"Zombie",1015,2;
	end;
}
in_rogue.gat,62,302,0	script	rogue_mob9	139,0,4,{
	monster "in_rogue.gat",57,305,"Khalitzburg",1132,1;
	end;
}
in_rogue.gat,199,218,0	script	rogue_mob10	139,0,8,{
	monster "in_rogue.gat",157,218,"Zombie",1015,10;
	monster "in_rogue.gat",157,218,"Abyss Knight",1219,1;
	monster "in_rogue.gat",157,218,"Ghoul",1036,1;
	monster "in_rogue.gat",157,218,"Archer Skeleton",1016,1;
	end;
}
in_rogue.gat,86,187,0	script	rogue_mob11	139,0,8,{
	monster "in_rogue.gat",88,186,"Mummy",1041,1;
	monster "in_rogue.gat",88,187,"Mummy",1041,1;
	monster "in_rogue.gat",88,188,"Mummy",1041,1;
	end;
}
in_rogue.gat,225,187,0	script	rogue_mob12	139,0,8,{
	monster "in_rogue.gat",232,191,"Abyss Knight",1219,1;
	monster "in_rogue.gat",233,190,"Abyss Knight",1219,1;
	monster "in_rogue.gat",234,189,"Abyss Knight",1219,1;
	end;
}
in_rogue.gat,252,320,0	script	rogue_mob13	139,0,8,{
	monster "in_rogue.gat",252,319,"Mummy",1041,1;
	monster "in_rogue.gat",252,321,"Mummy",1041,1;
	monster "in_rogue.gat",252,319,"Ghoul",1036,1;
	monster "in_rogue.gat",252,321,"Ghoul",1036,1;
	monster "in_rogue.gat",257,320,"Archer Skeleton",1016,1;
	monster "in_rogue.gat",248,320,"Archer Skeleton",1016,1;
	end;
}

//================================================
// End Warp
//================================================
in_rogue.gat,370,320,0	script	rogue04	45,1,1,{
	set ROGUE_Q, 5;
	killmonsterall "in_rogue.gat";
	warp "in_rogue.gat",378,113;
	end;
}

//================================================
// Timer: Keeps monsters from overspawning
//================================================
- script RogueTest3 -1,{
	end;

OnMinute10:
OnMinute20:
OnMinute30:
OnMinute40:
OnMinute50:
OnMinute60:
	killmonsterall "in_rogue.gat";
	end;
}

//==============================================================================
// mapflag
//==============================================================================
in_rogue.gat	mapflag	nomemo
in_rogue.gat	mapflag	noteleport
in_rogue.gat	mapflag	nosave	SavePoint
in_rogue.gat	mapflag	nopenalty
in_rogue.gat	mapflag	nobranch
in_rogue.gat	mapflag	noexp
in_rogue.gat	mapflag	noloot
