• 0
Sign in to follow this  
dolphincute

Upgrade Annieruru Mission Board?

Question

hye guys, i would request if anyone or the author Annieruru herself could remake the old Mission Board?

as the old ones dint have access to preview the item reward, and yes i do know emistry did manage to make it but it require SQL

i would prefer without sql, just plain script, here are the script, and if i did repost this script without permission from Annieruru before-handed, i am deeply apologize

mod have full rights to remove or delete this post

//	~~~~~ Please use this latest int__ function that support negative numbers ~~~~~
function	script	int__	{
	[email protected] = getstrlen( [email protected]$ = getarg(0) ) -3;
	[email protected]_negative = charat( [email protected]$, 0 ) == "-";
	while ( [email protected] > [email protected]_negative ) {
		[email protected]$ = insertchar( [email protected]$, ",", [email protected] );
		[email protected] -= 3;
	}
	return [email protected]$;
}

//===== eAthena Script ============================================
//= Mission Board
//===== By: =======================================================
//= AnnieRuru
//===== Current Version: ==========================================
//= 2.4b
//===== Compatible With: ==========================================
//= hercules & rathena 2018-04-15
//===== Description: ==============================================
//= allow admin to setup their own quests dynamically
//===== Topic =====================================================
//= http://herc.ws/board/topic/15578-mission-board-only-once-doesnt-work/
//===== Additional Comments: ======================================
//= very outdated script ... but yet ... its still a popular script ...
//=================================================================

-	script	mission board#127::ms_b_	-1,{
	mes "["+ strnpcinfo(1) +"]";
	if ( atoi( strnpcinfo(2) ) <= 0 || atoi( strnpcinfo(2) ) > 127 ) {
		mes "This board is currently down";
		mes "Please report to GM";
		mes "Reason: Invalid NPC ID";
		close;
	}
	if ( .duplicate_id ) {
		set [email protected], getarraysize(.duplicate_id);
		for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +1 ) {
			if ( .duplicate_id[[email protected]] == atoi( strnpcinfo(2) ) ) {
				mes "This board is currently down";
				mes "Please report to GM";
				mes "Reason: duplicate NPC ID#"+ strnpcinfo(2);
				close;
			}
		}
	}
	if ( .loading == 1 ) {
		mes "The board is currently loading mission data, please try again!";
		close;
	}
	if ( @ms_b_loading == 1 ) {
		mes "The board is currently loading player data";
		mes "Please wait";
		close;
	}
	mes "The Mission Board will instruct you to hunt certain monsters or items. Completing missions will result into rewards such as EXP and Midgard Coins";
	next;
	mes "["+ strnpcinfo(1) +"]";
	mes "Every player may pick up to ^FF00004^000000 missions from the Mission Board.";
	mes "Missions that end with '^FF0000Slayer^000000' are kill count missions and those that end with '^FF0000Collector^000000' are item gathering missions.";
	next;
	mes "["+ strnpcinfo(1) +"]";
	mes "^FF0000Please remember that, when accepting a mission, you need to be within the assigned level range when you ACCEPT and SUBMIT it!^000000";
	set @slot, 0;
	next;
	for ( set [email protected], 1; [email protected] <= 4; set [email protected], [email protected] +1 ) {
		if ( getd("@ms_b_m_"+ [email protected]) ) {
			if ( getd("$ms_b_m_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"$[0]") == "" ) {
				dispbottom "Mission Board: Your Mission#"+ [email protected] +" has been deleted because it is no longer available.";
				deletearray getd("@ms_b_m_"+ [email protected]);
				setd "ms_b_m_"+ [email protected] +"$", "";
				deltimer "ms_b_::OnQuest"+ [email protected] +"TimeUp";
			}
			else if ( getd("@ms_b_m_"+ [email protected] +"[1]") && getd("@ms_b_m_"+ [email protected] +"[1]") <= gettimetick(2) ) {
				dispbottom "Mission #"+ [email protected] +": "+ getd("$ms_b_m_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"$[0]") +" has expired!";
				deletearray getd("@ms_b_m_"+ [email protected]);
				setd "ms_b_m_"+ [email protected] +"$", "";
				deltimer "ms_b_::OnQuest"+ [email protected] +"TimeUp";
			}
		}
	}
	set [email protected], getarraysize( getd("@ms_b_n_"+ strnpcinfo(2)) );
	for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 ) {
		if ( getd("@ms_b_n_"+ strnpcinfo(2) +"[0]") != atoi( gettimestr("%Y%m%d", 9) ) && getd(".ms_b_m_"+ getd("@ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[6]") == 1 ||
			getd(".ms_b_m_"+ getd("@ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[6]") == 0 ) {
				deletearray getd("@ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]"), 1;
				set [email protected], [email protected] -1 ;
				set [email protected], [email protected] -1;
		}
	}
	if ( getd("@ms_b_n_"+ strnpcinfo(2) +"[1]") ) {
		setd "ms_b_n_"+ strnpcinfo(2) +"$",    gettimestr("%Y%m%d", 9);
		set [email protected], getarraysize( getd("@ms_b_n_"+ strnpcinfo(2) ) );
		for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 )
			setd "ms_b_n_"+ strnpcinfo(2) +"$", getd("ms_b_n_"+ strnpcinfo(2) +"$") +"#"+ getd("@ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]");
		setd "ms_b_n_"+ strnpcinfo(2) +"$", getd("ms_b_n_"+ strnpcinfo(2) +"$") +"#";
	}
	else
		setd "ms_b_n_"+ strnpcinfo(2) +"$", "";
	switch ( select ( "- Submit completed mission", "- Drop a mission", "- Accept a mission", ( getgmlevel() < 99 )?"":"^FF0000Administrator Settings^000000" ) ) {
		case 1:
			mes "["+ strnpcinfo(1) +"]";
			mes "Please select the mission you wish to submit:";
			set @slot, select(
				"#1 "+( ( @ms_b_m_1[0] )?"^0000FF"+ getd("$ms_b_m_"+ @ms_b_m_1[0] +"$[0]"):"^FF0000Empty" )+"^000000",
				"#2 "+( ( @ms_b_m_2[0] )?"^0000FF"+ getd("$ms_b_m_"+ @ms_b_m_2[0] +"$[0]"):"^FF0000Empty" )+"^000000",
				"#3 "+( ( @ms_b_m_3[0] )?"^0000FF"+ getd("$ms_b_m_"+ @ms_b_m_3[0] +"$[0]"):"^FF0000Empty" )+"^000000",
				"#4 "+( ( @ms_b_m_4[0] )?"^0000FF"+ getd("$ms_b_m_"+ @ms_b_m_4[0] +"$[0]"):"^FF0000Empty" )+"^000000");
			if ( getd("@ms_b_m_"+ @slot +"[0]") == 0 ) {
				mes "It appears that you have selected a empty slot!";
				close;
			}
			callsub L_showprogress;
			mes "Are you sure you want to submit the selected mission?";
			next;
			if ( select ( "Yes", "No" ) == 2 ) close;
			mes "["+ strnpcinfo(1) +"]";
			if ( getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[11]") != atoi( strnpcinfo(2) ) ) {
				mes "Please submit this mission to:";
				mes "^0000FF"+ .ms_b_name$[ getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[11]") ] +"^000000";
				close;
			}
			set [email protected], getarraysize( getd(".ms_b_t_"+ getd("@ms_b_m_"+ @slot +"[0]") ) );
			for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 ) {
				if ( getd("@ms_b_m_"+ @slot +"["+( [email protected]/2 +2 )+"]") < getd(".ms_b_t_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ ([email protected] +1)+"]") ) {
					mes "You do not meet the requirements to submit this mission. Please submit the mission once you've killed the required amount of monsters!";
					close;
				}
			}
			set [email protected], getarraysize( getd(".ms_b_ir_"+ getd("@ms_b_m_"+ @slot +"[0]") ) );
			for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 ) {
				if ( countitem( getd(".ms_b_ir_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ [email protected] +"]") )  < getd(".ms_b_ir_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ ([email protected] +1)+"]") ) {
					mes "You do not meet the requirements to submit this mission. Please submit this mission once you've gathered the required item(s)!";
					close;
				}
			}
			if ( getd(".ms_b_ia_"+ getd("@ms_b_m_"+ @slot +"[0]") ) ) {
				getinventorylist;
				deletearray @inventorylist_id, @inventorylist_count;
				deletearray @inventorylist_amount, @inventorylist_count;
				deletearray @inventorylist_equip, @inventorylist_count;
				deletearray @inventorylist_refine, @inventorylist_count;
				deletearray @inventorylist_identify, @inventorylist_count;
				deletearray @inventorylist_attribute, @inventorylist_count;
				deletearray @inventorylist_card1, @inventorylist_count;
				deletearray @inventorylist_card2, @inventorylist_count;
				deletearray @inventorylist_card3, @inventorylist_count;
				deletearray @inventorylist_card4, @inventorylist_count;
				set [email protected], getarraysize( getd(".ms_b_ia_"+ getd("@ms_b_m_"+ @slot +"[0]") ) );
				for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 ) {
					set [email protected], [email protected] + getiteminfo( getd(".ms_b_ia_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ [email protected] +"]"), 6 ) * getd(".ms_b_ia_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ ([email protected] +1) +"]");
				}
				if ( @inventorylist_count > 95 || Weight + [email protected] > MaxWeight ) {
					mes "It appears that you are overWeight, please clean up some inventory space.";
					set @inventorylist_count, 0;
					close;
				}
				set @inventorylist_count, 0;
			}
			if ( getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[3]") && ( BaseLevel < getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[3]") || BaseLevel > getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[4]") ) ) {
				mes "You're not within the level range to submit this mission!";
				close;
			}
			mes "Congratulations, the mission has been completed!";
			mes " ";
			set [email protected], getarraysize( getd(".ms_b_ir_"+ getd("@ms_b_m_"+ @slot +"[0]") ) );
			for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
				delitem getd(".ms_b_ir_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ [email protected] +"]"), getd(".ms_b_ir_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ ([email protected] +1)+"]");
			mes "[Rewards]";
			if ( getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[7]") ) {
				mes "Base Exp : ^0000FF"+ callfunc("int__", getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[7]") ) +"^000000";
				dispbottom "Mission Reward - Base EXP : "+ callfunc("int__", getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[7]") );
				set BaseExp, BaseExp + getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[7]");
			}
			if ( getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[8]") ) {
				mes "Job Exp : ^0000FF"+ callfunc("int__", getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[8]") ) +"^000000";
				dispbottom "Mission Reward - Job EXP : "+ callfunc("int__", getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[8]") );
				set JobExp, JobExp + getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[8]");
			}
			if ( getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[9]") ) {
				mes "Zeny : ^0000FF"+ callfunc("int__", getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[9]") ) +"^000000";
				dispbottom "Mission Reward - "+ callfunc("int__", getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[9]") ) +" Zeny";
				set Zeny, Zeny + getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[9]");
			}
			if ( getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[10]") ) {
				mes "Cash Point : ^0000FF"+ callfunc("int__", getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[10]") ) +"^000000";
				dispbottom "Mission Reward - "+ callfunc("int__", getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[10]") ) +" Cash Points";
				set #CASHPOINTS, #CASHPOINTS + getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[10]");
			}
			set [email protected], getarraysize( getd(".ms_b_ia_"+ getd("@ms_b_m_"+ @slot +"[0]") ) );
			for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 ) {
				mes "Item : ^0000FF"+ getd(".ms_b_ia_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ ([email protected] +1) +"]") +" "+ getitemname( getd(".ms_b_ia_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ [email protected] +"]") ) +"^000000";
				getitem getd(".ms_b_ia_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ [email protected] +"]"), getd(".ms_b_ia_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ ([email protected] +1) +"]");
			}
			if ( getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[6]") ) {
				set [email protected], getarraysize( getd("@ms_b_n_"+ strnpcinfo(2) ) );
				setd "@ms_b_n_"+ strnpcinfo(2) +"[0]", gettimestr("%Y%m%d", 9);
				setd "@ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]", getd("@ms_b_m_"+ @slot +"[0]");
				setd "ms_b_n_"+ strnpcinfo(2) +"$",    gettimestr("%Y%m%d", 9);
				for ( set [email protected], 1; [email protected] <= [email protected]; set [email protected], [email protected] +1 )
					setd "ms_b_n_"+ strnpcinfo(2) +"$", getd("ms_b_n_"+ strnpcinfo(2) +"$") +"#"+ getd("@ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]");
				setd "ms_b_n_"+ strnpcinfo(2) +"$", getd("ms_b_n_"+ strnpcinfo(2) +"$") +"#";
			}
			deletearray getd("@ms_b_m_"+ @slot);
			setd "ms_b_m_"+ @slot +"$", "";
			deltimer "ms_b_::OnQuest"+ @slot +"TimeUp";
			set @slot, 0;
			close;
		case 2:
			mes "["+ strnpcinfo(1) +"]";
			mes "Please select the slot with the mission that you wish to drop:";
			set @slot, select(
				"#1 "+( ( @ms_b_m_1[0] )?"^0000FF"+ getd("$ms_b_m_"+ @ms_b_m_1[0] +"$[0]"):"^FF0000Empty" )+"^000000",
				"#2 "+( ( @ms_b_m_2[0] )?"^0000FF"+ getd("$ms_b_m_"+ @ms_b_m_2[0] +"$[0]"):"^FF0000Empty" )+"^000000",
				"#3 "+( ( @ms_b_m_3[0] )?"^0000FF"+ getd("$ms_b_m_"+ @ms_b_m_3[0] +"$[0]"):"^FF0000Empty" )+"^000000",
				"#4 "+( ( @ms_b_m_4[0] )?"^0000FF"+ getd("$ms_b_m_"+ @ms_b_m_4[0] +"$[0]"):"^FF0000Empty" )+"^000000");
			if ( getd("@ms_b_m_"+ @slot +"[0]") == 0 ) {
				mes "It appears that you have selected a empty slot!";
				close;
			}
			callsub L_showprogress;
			mes "Are you sure that you want to give up this mission?";
			mes "^777777NOTE: Any progress you've made for this mission will be lost!^000000";
			next;
			if ( select ( "Yes", "No" ) == 2 ) close;
			mes "["+ strnpcinfo(1) +"]";
			mes "^0000FF"+ getd("$ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"$[0]") +"^000000";
			mes " ";
			mes "Mission has given up successfully";
			deletearray getd("@ms_b_m_"+ @slot);
			setd "ms_b_m_"+ @slot +"$", "";
			deltimer "ms_b_::OnQuest"+ @slot +"TimeUp";
			set @slot, 0;
			close;
		case 3:
			mes "["+ strnpcinfo(1) +"]";
			mes "Please select a (empty) slot:";
			if ( getd(".ms_b_n_"+ strnpcinfo(2) ) == 0 ) {
				mes "There is no mission available";
				close;
			}
			set [email protected], select(
				"#1 "+( ( @ms_b_m_1[0] )?"^0000FF"+ getd("$ms_b_m_"+ @ms_b_m_1[0] +"$[0]"):"^FF0000Empty" )+"^000000",
				"#2 "+( ( @ms_b_m_2[0] )?"^0000FF"+ getd("$ms_b_m_"+ @ms_b_m_2[0] +"$[0]"):"^FF0000Empty" )+"^000000",
				"#3 "+( ( @ms_b_m_3[0] )?"^0000FF"+ getd("$ms_b_m_"+ @ms_b_m_3[0] +"$[0]"):"^FF0000Empty" )+"^000000",
				"#4 "+( ( @ms_b_m_4[0] )?"^0000FF"+ getd("$ms_b_m_"+ @ms_b_m_4[0] +"$[0]"):"^FF0000Empty" )+"^000000");
			if ( getd("@ms_b_m_"+ [email protected] +"[0]") ) {
				mes "The slot that you've selected is already taken by another mission. Please select another (empty) slot!";
				close;
			}
			mes "Select a mission to accept below:";
			mes "^00CC00Green missions^000000 are within your level range and can be accepted.";
			mes "^FF0000Red missions^000000 can not be accepted. The reason(s) can be: you're not within the level range or the daily cool-down delay hasn't passed yet.";
			if ( basejob == Job_Novice || basejob == Job_SuperNovice ) set [email protected], pow(2,0);
			else if ( basejob == Job_Swordman ) set [email protected], pow(2,1);
			else if ( basejob == Job_Mage ) set [email protected], pow(2,2);
			else if ( basejob == Job_Archer ) set [email protected], pow(2,3);
			else if ( basejob == Job_Acolyte ) set [email protected], pow(2,4);
			else if ( basejob == Job_Merchant ) set [email protected], pow(2,5);
			else if ( basejob == Job_Thief ) set [email protected], pow(2,6);
			else if ( basejob == Job_Knight ) set [email protected], pow(2,7);
			else if ( basejob == Job_Priest ) set [email protected], pow(2,8);
			else if ( basejob == Job_Wizard ) set [email protected], pow(2,9);
			else if ( basejob == Job_Blacksmith ) set [email protected], pow(2,10);
			else if ( basejob == Job_Hunter ) set [email protected], pow(2,11);
			else if ( basejob == Job_Assassin ) set [email protected], pow(2,12);
			else if ( basejob == Job_Crusader ) set [email protected], pow(2,13);
			else if ( basejob == Job_Monk ) set [email protected], pow(2,14);
			else if ( basejob == Job_Sage ) set [email protected], pow(2,15);
			else if ( basejob == Job_Rogue ) set [email protected], pow(2,16);
			else if ( basejob == Job_Alchemist ) set [email protected], pow(2,17);
			else if ( basejob == Job_Bard || basejob == Job_Dancer ) set [email protected], pow(2,18);
			else if ( basejob == Job_Taekwon ) set [email protected], pow(2,19);
			else if ( basejob == Job_Star_Gladiator ) set [email protected], pow(2,20);
			else if ( basejob == Job_Soul_Linker ) set [email protected], pow(2,21);
			else if ( basejob == Job_Gunslinger ) set [email protected], pow(2,22);
			else if ( basejob == Job_Ninja ) set [email protected], pow(2,23);
			next;
			while (1) {
				set [email protected]$, "";
				set [email protected], 0;
				set [email protected], getarraysize( getd(".ms_b_n_"+ strnpcinfo(2)) );
				set [email protected], getarraysize( getd("@ms_b_n_"+ strnpcinfo(2)) );
				while ( [email protected] < [email protected] ) {
					set [email protected], 1;
					while ( [email protected] < [email protected] && getd("@ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") != getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") )
						set [email protected], [email protected] +1 ;
					set [email protected]$, "^00AA00";
					if ( [email protected] != [email protected] && [email protected] ||
						@ms_b_m_1[0] == getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") ||
						@ms_b_m_2[0] == getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") ||
						@ms_b_m_3[0] == getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") ||
						@ms_b_m_4[0] == getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") ||
						getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[3]") && ( BaseLevel < getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[3]") || BaseLevel > getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[4]") ) ||
						getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[2]") && getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[2]") & [email protected] == 0 )
						set [email protected]$, "^FF0000";
					set [email protected]$, [email protected]$ + [email protected]$ + getd("$ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"$") +":";
					set [email protected], [email protected] +1 ;
				}
				set [email protected], select([email protected]$) -1;
				set [email protected]_id, getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]");
				mes "["+ strnpcinfo(1) +"]";
				mes "^0000FF"+ getd("$ms_b_m_"+ [email protected]_id +"$[0]") +"^000000";
				mes "Description: ^0000FF"+ getd("$ms_b_m_"+ [email protected]_id +"$[1]") +"^000000";
				if ( getd(".ms_b_m_"+ [email protected]_id +"[6]") ) {
					for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 ) {
						if ( getd("@ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") == [email protected]_id ) break;
					}
					mes "Status : "+( ( [email protected] == [email protected] || getd("@ms_b_n_"+ strnpcinfo(2)) == 0 )?"^FF0000Incomplete":"^00CC00Completed" )+"^000000";
				}
				mes " ";
				set [email protected], getarraysize( getd(".ms_b_t_"+ [email protected]_id) );
				for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
					mes "Require Mobs : ^0000FF"+ getd(".ms_b_t_"+ [email protected]_id +"["+ ([email protected] +1) +"]") +" "+ getmonsterinfo( getd(".ms_b_t_"+ [email protected]_id +"["+ [email protected] +"]") , 0) +"^000000";
				set [email protected], getarraysize( getd(".ms_b_ir_"+ [email protected]_id) );
				for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
					mes "Require Items : ^0000FF"+ getd(".ms_b_ir_"+ [email protected]_id +"["+ ([email protected] +1) +"]") +" "+ getitemname( getd(".ms_b_ir_"+ [email protected]_id +"["+ [email protected] +"]") ) +"^000000";
				mes " ";
				if ( getd(".ms_b_m_"+ [email protected]_id +"[6]") || getd(".ms_b_m_"+ [email protected]_id +"[3]") || getd(".ms_b_m_"+ [email protected]_id +"[5]") || getd(".ms_b_m_"+ [email protected]_id +"[2]") ) {
					mes "[^FF0000Limitations^000000]";
					if ( getd(".ms_b_m_"+ [email protected]_id +"[6]") )
						mes "Can do : "+( ( getd(".ms_b_m_"+ [email protected]_id +"[6]") == 1 )?"^00CC00Everyday":"^FF0000Only Once" )+"^000000";
					if ( getd(".ms_b_m_"+ [email protected]_id +"[3]") )
						mes "Base Level :"+( ( getd(".ms_b_m_"+ [email protected]_id +"[3]") )?"  ^0000FF"+ getd(".ms_b_m_"+ [email protected]_id +"[3]") +( ( getd(".ms_b_m_"+ [email protected]_id +"[3]") != getd(".ms_b_m_"+ [email protected]_id +"[4]") )?"~"+ getd(".ms_b_m_"+ [email protected]_id +"[4]"):"" )+"^000000":"" );
					if ( getd(".ms_b_m_"+ [email protected]_id +"[5]") )
						mes "Time Limit : ^FF0000"+( ( getd(".ms_b_m_"+ [email protected]_id +"[5]") /60 )?getd(".ms_b_m_"+ [email protected]_id +"[5]") /60 +" hour"+( ( getd(".ms_b_m_"+ [email protected]_id +"[5]") %60 )?" ":"" ):"" )+( ( getd(".ms_b_m_"+ [email protected]_id +"[5]") %60 )?getd(".ms_b_m_"+ [email protected]_id +"[5]") %60 +" min":"" )+"^000000";
					if ( getd(".ms_b_m_"+ [email protected]_id +"[2]") ) {
						deletearray [email protected];
						for ( set [email protected], 0; [email protected] < 24; set [email protected], [email protected] +1 ) {
							if ( getd(".ms_b_m_"+ [email protected]_id +"[2]") & pow( 2, [email protected] ) ) {
								set [email protected][ getarraysize([email protected]) ], [email protected] +1;
							}
						}
						set [email protected]$, .jobname$[ [email protected][0] -1 ];
						set [email protected], getarraysize([email protected]);
						for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 )
							set [email protected]$, [email protected]$ +", "+ .jobname$[ [email protected][[email protected]] -1 ];
						mes "Job Limit : ^00CC00"+ [email protected]$ +"^000000";
					}
					mes " ";
				}
				mes "[^009900Rewards^000000]";
				if ( getd(".ms_b_m_"+ [email protected]_id +"[7]") )
					mes "Base Exp : ^0000FF"+ callfunc("int__", getd(".ms_b_m_"+ [email protected]_id +"[7]") ) +"^000000";
				if ( getd(".ms_b_m_"+ [email protected]_id +"[8]") )
					mes "Job Exp : ^0000FF"+ callfunc("int__", getd(".ms_b_m_"+ [email protected]_id +"[8]") ) +"^000000";
				if ( getd(".ms_b_m_"+ [email protected]_id +"[9]") )
					mes "Zeny : ^0000FF"+ callfunc("int__", getd(".ms_b_m_"+ [email protected]_id +"[9]") ) +"^000000";
				if ( getd(".ms_b_m_"+ [email protected]_id +"[10]") )
					mes "Cash Point : ^0000FF"+ callfunc("int__", getd(".ms_b_m_"+ [email protected]_id +"[10]") ) +"^000000";
				set [email protected], getarraysize( getd(".ms_b_ia_"+ [email protected]_id ) );
				for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
					mes "Item : ^0000FF"+ getd(".ms_b_ia_"+ [email protected]_id +"["+ ([email protected] +1) +"]") +" "+ getitemname( getd(".ms_b_ia_"+ [email protected]_id +"["+ [email protected] +"]") ) +"^000000";
				next;
				if ( select ( "- Accept this mission", "- Pick another mission" ) == 1 ) {
					for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 ) {
						if ( getd("@ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") == [email protected]_id ) {
							mes "["+ strnpcinfo(1) +"]";
							mes "It appears that you have already completed this mission. This mission can either only be completed once, or the daily cool-down delay hasn't passed yet!";
							set [email protected], 1;
							next;
							break;
						}
					}
					if ( [email protected] == 0 && ( @ms_b_m_1[0] == [email protected]_id || @ms_b_m_2[0] == [email protected]_id || @ms_b_m_3[0] == [email protected]_id || @ms_b_m_4[0] == [email protected]_id ) ) {
						mes "["+ strnpcinfo(1) +"]";
						mes "You already taken this mission";
						set [email protected], 1;
						next;
					}
					if ( [email protected] == 0 && getd(".ms_b_m_"+ [email protected]_id +"[3]") && ( BaseLevel < getd(".ms_b_m_"+ [email protected]_id +"[3]") || BaseLevel > getd(".ms_b_m_"+ [email protected]_id +"[4]") ) ) {
						mes "["+ strnpcinfo(1) +"]";
						mes "You're not within the level range to accept this mission!";
						set [email protected], 1;
						next;
					}
					if ( [email protected] == 0 && getd(".ms_b_m_"+ [email protected]_id +"[2]") ) {
						if ( getd(".ms_b_m_"+ [email protected]_id +"[2]") & [email protected] == 0 ) {
							mes "["+ strnpcinfo(1) +"]";
							mes "Your current job class is not allowed to do this mission";
							set [email protected], 1;
							next;
						}
					}
					if ( [email protected] == 0 ) break;
				}
				set [email protected], 0;
			}
			mes "["+ strnpcinfo(1) +"]";
			mes "You have accepted the following mission:";
			mes "^0000FF"+ getd("$ms_b_m_"+ [email protected]_id +"$[0]") +"^000000";
			if ( getd(".ms_b_m_"+ [email protected]_id +"[5]") ) {
				mes "Time Left : ^FF0000"+( ( getd(".ms_b_m_"+ [email protected]_id +"[5]") /60 )?getd(".ms_b_m_"+ [email protected]_id +"[5]") /60 +" hour"+( ( getd(".ms_b_m_"+ [email protected]_id +"[5]") %60 )?" ":"" ):"" )+( ( getd(".ms_b_m_"+ [email protected]_id +"[5]") %60 )?getd(".ms_b_m_"+ [email protected]_id +"[5]") %60 +" min":"" )+"^000000";
				addtimer getd(".ms_b_m_"+ [email protected]_id +"[5]") * 60 * 1000, "ms_b_::OnQuest"+ [email protected] +"TimeUp";
				setd "@ms_b_m_"+ [email protected] +"[1]", gettimetick(2) + getd(".ms_b_m_"+ [email protected]_id +"[5]") * 60;
			}
			setd "@ms_b_m_"+ [email protected] +"[0]", [email protected]_id;
			setd "ms_b_m_"+ [email protected] +"$", getd("@ms_b_m_"+ [email protected] +"[0]") +"#"+ getd("@ms_b_m_"+ [email protected] +"[1]");
			close;
		case 4:
			if ( getgmlevel() < 99 ) end;
			while (1) {
				mes "["+ strnpcinfo(1) +"]";
				mes "Please select an option below:";
				next;
				switch ( select ( "Setup a mission", "Edit a mission", "Remove a mission", "Swap mission order" ) ) {
					case 1:
						if ( $ms_b_id >= 99999 ) {
							mes "["+ strnpcinfo(1) +"]";
							mes "This is the end, you can't create anymore missions";
							close;
						}
						else if ( getarraysize( getd(".ms_b_n_"+ strnpcinfo(2) ) ) == 40 ) {
							mes "["+ strnpcinfo(1) +"]";
							mes "Each NPC are only allowed to setup 40 missions";
							next;
							break;
						}
						deletearray @tmp_ms_b_m_$;
						deletearray @tmp_ms_b_m_;
						deletearray @tmp_ms_b_t_;
						deletearray @tmp_ms_b_ir_;
						deletearray @tmp_ms_b_ia_;
						if ( callsub( L_setupmission, 0 ) == 0 ) {
							deletearray @tmp_ms_b_m_$;
							deletearray @tmp_ms_b_m_;
							deletearray @tmp_ms_b_t_;
							deletearray @tmp_ms_b_ir_;
							deletearray @tmp_ms_b_ia_;
							break;
						}
						set $ms_b_id, $ms_b_id +1 ;
						setd ".ms_b_n_"+ strnpcinfo(2) +"["+ getarraysize( getd(".ms_b_n_"+ strnpcinfo(2) ) ) +"]", $ms_b_id;
						setd "$ms_b_n_"+ strnpcinfo(2) +"$", getd(".ms_b_n_"+ strnpcinfo(2) +"[0]");
						set [email protected], getarraysize( getd(".ms_b_n_"+ strnpcinfo(2) ) );
						for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 )
							setd "$ms_b_n_"+ strnpcinfo(2) +"$", getd("$ms_b_n_"+ strnpcinfo(2) +"$") +"#"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]");
						set @tmp_ms_b_m_[11], strnpcinfo(2);
						copyarray getd(".ms_b_m_"+ $ms_b_id +"$"), @tmp_ms_b_m_$, 128;
						copyarray getd(".ms_b_m_"+ $ms_b_id), @tmp_ms_b_m_, 128;
						copyarray getd(".ms_b_t_"+ $ms_b_id ), @tmp_ms_b_t_, 128;
						copyarray getd(".ms_b_ir_"+ $ms_b_id ), @tmp_ms_b_ir_, 128;
						copyarray getd(".ms_b_ia_"+ $ms_b_id ), @tmp_ms_b_ia_, 128;
						setarray getd("$ms_b_m_"+ $ms_b_id +"$"),
							@tmp_ms_b_m_$[0],
							@tmp_ms_b_m_$[1],
							( ( @tmp_ms_b_m_[2] )[email protected]_ms_b_m_[2]:"" )+"#"+( ( @tmp_ms_b_m_[3] )[email protected]_ms_b_m_[3]:"" )+"#"+( ( @tmp_ms_b_m_[4] )[email protected]_ms_b_m_[4]:"" )+"#"+( ( @tmp_ms_b_m_[5] )[email protected]_ms_b_m_[5]:"" )+"#"+( ( @tmp_ms_b_m_[6] )[email protected]_ms_b_m_[6]:"" )+"#"+( ( @tmp_ms_b_m_[7] )[email protected]_ms_b_m_[7]:"" )+"#"+( ( @tmp_ms_b_m_[8] )[email protected]_ms_b_m_[8]:"" )+"#"+( ( @tmp_ms_b_m_[9] )[email protected]_ms_b_m_[9]:"" )+"#"+( ( @tmp_ms_b_m_[10] )[email protected]_ms_b_m_[10]:"" )+"#"+( ( @tmp_ms_b_m_[11] )[email protected]_ms_b_m_[11]:"" )+"#"+( ( @tmp_ms_b_m_[12] )[email protected]_ms_b_m_[12]:"" )+"#"+( ( @tmp_ms_b_m_[13] )[email protected]_ms_b_m_[13]:"" ),
							( ( @tmp_ms_b_t_[0] )[email protected]_ms_b_t_[0]:"" )+"#"+( ( @tmp_ms_b_t_[1] )[email protected]_ms_b_t_[1]:"" )+"#"+( ( @tmp_ms_b_t_[2] )[email protected]_ms_b_t_[2]:"" )+"#"+( ( @tmp_ms_b_t_[3] )[email protected]_ms_b_t_[3]:"" )+"#"+( ( @tmp_ms_b_t_[4] )[email protected]_ms_b_t_[4]:"" )+"#"+( ( @tmp_ms_b_t_[5] )[email protected]_ms_b_t_[5]:"" )+"#"+( ( @tmp_ms_b_t_[6] )[email protected]_ms_b_t_[6]:"" )+"#"+( ( @tmp_ms_b_t_[7] )[email protected]_ms_b_t_[7]:"" )+"#"+( ( @tmp_ms_b_t_[8] )[email protected]_ms_b_t_[8]:"" )+"#"+( ( @tmp_ms_b_t_[9] )[email protected]_ms_b_t_[9]:"" )+"#"+( ( @tmp_ms_b_t_[10] )[email protected]_ms_b_t_[10]:"" )+"#"+( ( @tmp_ms_b_t_[11] )[email protected]_ms_b_t_[11]:"" )+"#"+( ( @tmp_ms_b_t_[12] )[email protected]_ms_b_t_[12]:"" )+"#"+( ( @tmp_ms_b_t_[13] )[email protected]_ms_b_t_[13]:"" )+"#"+( ( @tmp_ms_b_t_[14] )[email protected]_ms_b_t_[14]:"" )+"#"+( ( @tmp_ms_b_t_[15] )[email protected]_ms_b_t_[15]:"" )+"#"+( ( @tmp_ms_b_ir_[0] )[email protected]_ms_b_ir_[0]:"" )+"#"+( ( @tmp_ms_b_ir_[1] )[email protected]_ms_b_ir_[1]:"" )+"#"+( ( @tmp_ms_b_ir_[2] )[email protected]_ms_b_ir_[2]:"" )+"#"+( ( @tmp_ms_b_ir_[3] )[email protected]_ms_b_ir_[3]:"" )+"#"+( ( @tmp_ms_b_ir_[4] )[email protected]_ms_b_ir_[4]:"" )+"#"+( ( @tmp_ms_b_ir_[5] )[email protected]_ms_b_ir_[5]:"" )+"#"+( ( @tmp_ms_b_ir_[6] )[email protected]_ms_b_ir_[6]:"" )+"#"+( ( @tmp_ms_b_ir_[7] )[email protected]_ms_b_ir_[7]:"" )+"#"+( ( @tmp_ms_b_ir_[8] )[email protected]_ms_b_ir_[8]:"" )+"#"+( ( @tmp_ms_b_ir_[9] )[email protected]_ms_b_ir_[9]:"" )+"#"+( ( @tmp_ms_b_ia_[0] )[email protected]_ms_b_ia_[0]:"" )+"#"+( ( @tmp_ms_b_ia_[1] )[email protected]_ms_b_ia_[1]:"" )+"#"+( ( @tmp_ms_b_ia_[2] )[email protected]_ms_b_ia_[2]:"" )+"#"+( ( @tmp_ms_b_ia_[3] )[email protected]_ms_b_ia_[3]:"" )+"#"+( ( @tmp_ms_b_ia_[4] )[email protected]_ms_b_ia_[4]:"" )+"#"+( ( @tmp_ms_b_ia_[5] )[email protected]_ms_b_ia_[5]:"" )+"#"+( ( @tmp_ms_b_ia_[6] )[email protected]_ms_b_ia_[6]:"" )+"#"+( ( @tmp_ms_b_ia_[7] )[email protected]_ms_b_ia_[7]:"" )+"#"+( ( @tmp_ms_b_ia_[8] )[email protected]_ms_b_ia_[8]:"" )+"#"+( ( @tmp_ms_b_ia_[9] )[email protected]_ms_b_ia_[9]:"" );
						deletearray @tmp_ms_b_m_$;
						deletearray @tmp_ms_b_m_;
						deletearray @tmp_ms_b_t_;
						deletearray @tmp_ms_b_ir_;
						deletearray @tmp_ms_b_ia_;
						mes " ";
						mes "Mission has setup successfully";
						next;
						break;
					case 2:
						mes "["+ strnpcinfo(1) +"]";
						if ( getd(".ms_b_n_"+ strnpcinfo(2) ) == 0 ) {
							mes "There is no mission available to edit.";
							next;
							break;
						}
						mes "Select a mission below to edit:";
						next;
						if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +"[6]") == 0 ) set [email protected]$, "^0000FF";
						else if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +"[6]") == 1 ) set [email protected]$, "^00CC00";
						else if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +"[6]") == 2 ) set [email protected]$, "^FF0000";
						set [email protected]$, "^996600"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +". "+ [email protected]$ + getd("$ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +"$");
						set [email protected], getarraysize( getd(".ms_b_n_"+ strnpcinfo(2)) );
						for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 ) {
							if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[6]") == 0 ) set [email protected]$, "^0000FF";
							else if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[6]") == 1 ) set [email protected]$, "^00CC00";
							else if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[6]") == 2 ) set [email protected]$, "^FF0000";
							set [email protected]$, [email protected]$ +":^996600"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +". "+ [email protected]$ + getd("$ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"$");
						}
						set [email protected]$, [email protected]$ +":^000000 - back";
						set [email protected], select([email protected]$) -1;
						if ( [email protected] == [email protected] ) break;
						set @m_id, getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]");
						deletearray @tmp_ms_b_m_$;
						deletearray @tmp_ms_b_m_;
						deletearray @tmp_ms_b_t_;
						deletearray @tmp_ms_b_ir_;
						deletearray @tmp_ms_b_ia_;
						copyarray @tmp_ms_b_m_$, getd("$ms_b_m_"+ @m_id +"$"), 128;
						copyarray @tmp_ms_b_m_, getd(".ms_b_m_"+ @m_id ), 128;
						copyarray @tmp_ms_b_t_, getd(".ms_b_t_"+ @m_id ), 128;
						copyarray @tmp_ms_b_ir_, getd(".ms_b_ir_"+ @m_id ), 128;
						copyarray @tmp_ms_b_ia_, getd(".ms_b_ia_"+ @m_id ), 128;
						if ( callsub( L_setupmission, 1 ) == 0 ) {
							deletearray @tmp_ms_b_m_$;
							deletearray @tmp_ms_b_m_;
							deletearray @tmp_ms_b_t_;
							deletearray @tmp_ms_b_ir_;
							deletearray @tmp_ms_b_ia_;
							set @m_id, 0;
							break;
						}
						copyarray getd(".ms_b_m_"+ @m_id +"$"), @tmp_ms_b_m_$, 128;
						copyarray getd(".ms_b_m_"+ @m_id), @tmp_ms_b_m_, 128;
						copyarray getd(".ms_b_t_"+ @m_id ), @tmp_ms_b_t_, 128;
						copyarray getd(".ms_b_ir_"+ @m_id ), @tmp_ms_b_ir_, 128;
						copyarray getd(".ms_b_ia_"+ @m_id ), @tmp_ms_b_ia_, 128;
						setarray getd("$ms_b_m_"+ @m_id +"$"),
							@tmp_ms_b_m_$[0],
							@tmp_ms_b_m_$[1],
							( ( @tmp_ms_b_m_[2] )[email protected]_ms_b_m_[2]:"" )+"#"+( ( @tmp_ms_b_m_[3] )[email protected]_ms_b_m_[3]:"" )+"#"+( ( @tmp_ms_b_m_[4] )[email protected]_ms_b_m_[4]:"" )+"#"+( ( @tmp_ms_b_m_[5] )[email protected]_ms_b_m_[5]:"" )+"#"+( ( @tmp_ms_b_m_[6] )[email protected]_ms_b_m_[6]:"" )+"#"+( ( @tmp_ms_b_m_[7] )[email protected]_ms_b_m_[7]:"" )+"#"+( ( @tmp_ms_b_m_[8] )[email protected]_ms_b_m_[8]:"" )+"#"+( ( @tmp_ms_b_m_[9] )[email protected]_ms_b_m_[9]:"" )+"#"+( ( @tmp_ms_b_m_[10] )[email protected]_ms_b_m_[10]:"" )+"#"+( ( @tmp_ms_b_m_[11] )[email protected]_ms_b_m_[11]:"" )+"#"+( ( @tmp_ms_b_m_[12] )[email protected]_ms_b_m_[12]:"" )+"#"+( ( @tmp_ms_b_m_[13] )[email protected]_ms_b_m_[13]:"" ),
							( ( @tmp_ms_b_t_[0] )[email protected]_ms_b_t_[0]:"" )+"#"+( ( @tmp_ms_b_t_[1] )[email protected]_ms_b_t_[1]:"" )+"#"+( ( @tmp_ms_b_t_[2] )[email protected]_ms_b_t_[2]:"" )+"#"+( ( @tmp_ms_b_t_[3] )[email protected]_ms_b_t_[3]:"" )+"#"+( ( @tmp_ms_b_t_[4] )[email protected]_ms_b_t_[4]:"" )+"#"+( ( @tmp_ms_b_t_[5] )[email protected]_ms_b_t_[5]:"" )+"#"+( ( @tmp_ms_b_t_[6] )[email protected]_ms_b_t_[6]:"" )+"#"+( ( @tmp_ms_b_t_[7] )[email protected]_ms_b_t_[7]:"" )+"#"+( ( @tmp_ms_b_t_[8] )[email protected]_ms_b_t_[8]:"" )+"#"+( ( @tmp_ms_b_t_[9] )[email protected]_ms_b_t_[9]:"" )+"#"+( ( @tmp_ms_b_t_[10] )[email protected]_ms_b_t_[10]:"" )+"#"+( ( @tmp_ms_b_t_[11] )[email protected]_ms_b_t_[11]:"" )+"#"+( ( @tmp_ms_b_t_[12] )[email protected]_ms_b_t_[12]:"" )+"#"+( ( @tmp_ms_b_t_[13] )[email protected]_ms_b_t_[13]:"" )+"#"+( ( @tmp_ms_b_t_[14] )[email protected]_ms_b_t_[14]:"" )+"#"+( ( @tmp_ms_b_t_[15] )[email protected]_ms_b_t_[15]:"" )+"#"+( ( @tmp_ms_b_ir_[0] )[email protected]_ms_b_ir_[0]:"" )+"#"+( ( @tmp_ms_b_ir_[1] )[email protected]_ms_b_ir_[1]:"" )+"#"+( ( @tmp_ms_b_ir_[2] )[email protected]_ms_b_ir_[2]:"" )+"#"+( ( @tmp_ms_b_ir_[3] )[email protected]_ms_b_ir_[3]:"" )+"#"+( ( @tmp_ms_b_ir_[4] )[email protected]_ms_b_ir_[4]:"" )+"#"+( ( @tmp_ms_b_ir_[5] )[email protected]_ms_b_ir_[5]:"" )+"#"+( ( @tmp_ms_b_ir_[6] )[email protected]_ms_b_ir_[6]:"" )+"#"+( ( @tmp_ms_b_ir_[7] )[email protected]_ms_b_ir_[7]:"" )+"#"+( ( @tmp_ms_b_ir_[8] )[email protected]_ms_b_ir_[8]:"" )+"#"+( ( @tmp_ms_b_ir_[9] )[email protected]_ms_b_ir_[9]:"" )+"#"+( ( @tmp_ms_b_ia_[0] )[email protected]_ms_b_ia_[0]:"" )+"#"+( ( @tmp_ms_b_ia_[1] )[email protected]_ms_b_ia_[1]:"" )+"#"+( ( @tmp_ms_b_ia_[2] )[email protected]_ms_b_ia_[2]:"" )+"#"+( ( @tmp_ms_b_ia_[3] )[email protected]_ms_b_ia_[3]:"" )+"#"+( ( @tmp_ms_b_ia_[4] )[email protected]_ms_b_ia_[4]:"" )+"#"+( ( @tmp_ms_b_ia_[5] )[email protected]_ms_b_ia_[5]:"" )+"#"+( ( @tmp_ms_b_ia_[6] )[email protected]_ms_b_ia_[6]:"" )+"#"+( ( @tmp_ms_b_ia_[7] )[email protected]_ms_b_ia_[7]:"" )+"#"+( ( @tmp_ms_b_ia_[8] )[email protected]_ms_b_ia_[8]:"" )+"#"+( ( @tmp_ms_b_ia_[9] )[email protected]_ms_b_ia_[9]:"" );
						deletearray @tmp_ms_b_m_$;
						deletearray @tmp_ms_b_m_;
						deletearray @tmp_ms_b_t_;
						deletearray @tmp_ms_b_ir_;
						deletearray @tmp_ms_b_ia_;
						set @m_id, 0;
						mes " ";
						mes "Mission has edited successfully";
						next;
						break;
					case 3:
						mes "["+ strnpcinfo(1) +"]";
						if ( getd(".ms_b_n_"+ strnpcinfo(2) ) == 0 ) {
							mes "There is no mission available to remove.";
							next;
							break;
						}
						mes "Select a mission below to delete:";
						next;
						if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +"[6]") == 0 ) set [email protected]$, "^0000FF";
						else if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +"[6]") == 1 ) set [email protected]$, "^00CC00";
						else if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +"[6]") == 2 ) set [email protected]$, "^FF0000";
						set [email protected]$, "^996600"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +". "+ [email protected]$ + getd("$ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +"$");
						set [email protected], getarraysize( getd(".ms_b_n_"+ strnpcinfo(2)) );
						for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 ) {
							if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[6]") == 0 ) set [email protected]$, "^0000FF";
							else if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[6]") == 1 ) set [email protected]$, "^00CC00";
							else if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[6]") == 2 ) set [email protected]$, "^FF0000";
							set [email protected]$, [email protected]$ +":^996600"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +". "+ [email protected]$ + getd("$ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"$");
						}
						set [email protected]$, [email protected]$ +":^000000 - back";
						set [email protected], select([email protected]$) -1;
						if ( [email protected] == [email protected] ) break;
						mes "["+ strnpcinfo(1) +"]";
						mes "Are you sure that you want to delete the selected mission?";
						mes " ";
						set [email protected]_id, getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]");
						if ( getd(".ms_b_m_"+ [email protected]_id +"[6]") == 0 ) set [email protected]$, "^0000FF";
						else if ( getd(".ms_b_m_"+ [email protected]_id +"[6]") == 1 ) set [email protected]$, "^00CC00";
						else if ( getd(".ms_b_m_"+ [email protected]_id +"[6]") == 2 ) set [email protected]$, "^FF0000";
						mes "^996600"+ [email protected]_id +". "+ [email protected]$ + getd("$ms_b_m_"+ [email protected]_id +"$") +"^000000";
						mes "Description: ^0000FF"+ getd("$ms_b_m_"+ [email protected]_id +"$[1]") +"^000000";
						next;
						if ( select ( "No", "Yes" ) == 1 ) break;
						mes "["+ strnpcinfo(1) +"]";
						mes "Mission has deleted successfully";
						mes " ";
						mes "^996600"+ [email protected]_id +". "+ [email protected]$ + getd("$ms_b_m_"+ [email protected]_id +"$") +"^000000";
						deletearray getd(".ms_b_m_"+ [email protected]_id +"$");
						deletearray getd(".ms_b_m_"+ [email protected]_id );
						deletearray getd(".ms_b_t_"+ [email protected]_id );
						deletearray getd(".ms_b_ir_"+ [email protected]_id );
						deletearray getd(".ms_b_ia_"+ [email protected]_id );
						deletearray getd("$ms_b_m_"+ [email protected]_id +"$");
						deletearray getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]"), 1;
						setd "$ms_b_n_"+ strnpcinfo(2) +"$", ( ( getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") )?getd(".ms_b_n_"+ strnpcinfo(2) +"[0]"):"" );
						set [email protected], getarraysize( getd(".ms_b_n_"+ strnpcinfo(2) ) );
						for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 )
							setd "$ms_b_n_"+ strnpcinfo(2) +"$", getd("$ms_b_n_"+ strnpcinfo(2) +"$") +"#"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"#";
						next;
						break;
					case 4:
						mes "["+ strnpcinfo(1) +"]";
						if ( getd(".ms_b_n_"+ strnpcinfo(2) ) == 0 ) {
							mes "There is no mission available to swap";
							next;
							break;
						}
						mes "Select a mission below to swap:";
						next;
						if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +"[6]") == 0 ) set [email protected]$, "^0000FF";
						else if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +"[6]") == 1 ) set [email protected]$, "^00CC00";
						else if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +"[6]") == 2 ) set [email protected]$, "^FF0000";
						set [email protected]$, "^996600"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +". "+ [email protected]$ + getd("$ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"[0]") +"$");
						set [email protected], getarraysize( getd(".ms_b_n_"+ strnpcinfo(2)) );
						for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 ) {
							if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[6]") == 0 ) set [email protected]$, "^0000FF";
							else if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[6]") == 1 ) set [email protected]$, "^00CC00";
							else if ( getd(".ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"[6]") == 2 ) set [email protected]$, "^FF0000";
							set [email protected]$, [email protected]$ +":^996600"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +". "+ [email protected]$ + getd("$ms_b_m_"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]") +"$");
						}
						set [email protected]$, [email protected]$ +":^000000 - back";
						set [email protected], select([email protected]$) -1;
						if ( [email protected] == [email protected] ) break;
						mes "["+ strnpcinfo(1) +"]";
						mes "mission selected :";
						set [email protected]_id1, getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]");
						if ( getd(".ms_b_m_"+ [email protected]_id1 +"[6]") == 0 ) set [email protected]$, "^0000FF";
						else if ( getd(".ms_b_m_"+ [email protected]_id1 +"[6]") == 1 ) set [email protected]$, "^00CC00";
						else if ( getd(".ms_b_m_"+ [email protected]_id1 +"[6]") == 2 ) set [email protected]$, "^FF0000";
						mes "^996600"+ [email protected]_id1 +". "+ [email protected]$ + getd("$ms_b_m_"+ [email protected]_id1 +"$") +"^000000";
						mes " ";
						mes "Please select another mission to be swapped:";
						next;
						set [email protected], select([email protected]$) -1;
						if ( [email protected] == [email protected] ) break;
						mes "["+ strnpcinfo(1) +"]";
						mes "Missions has swapped successfully";
						set [email protected]_id2, getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]");
						if ( getd(".ms_b_m_"+ [email protected]_id2 +"[6]") == 0 ) set [email protected]$, "^0000FF";
						else if ( getd(".ms_b_m_"+ [email protected]_id2 +"[6]") == 1 ) set [email protected]$, "^00CC00";
						else if ( getd(".ms_b_m_"+ [email protected]_id2 +"[6]") == 2 ) set [email protected]$, "^FF0000";
						mes "^996600"+ [email protected]_id1 +". "+ [email protected]$ + getd("$ms_b_m_"+ [email protected]_id1 +"$") +"^000000";
						mes "^996600"+ [email protected]_id2 +". "+ [email protected]$ + getd("$ms_b_m_"+ [email protected]_id2 +"$") +"^000000";
						setd ".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]", [email protected]_id2;
						setd ".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]", [email protected]_id1;
						setd "$ms_b_n_"+ strnpcinfo(2) +"$", getd(".ms_b_n_"+ strnpcinfo(2) +"[0]");
						set [email protected], getarraysize( getd(".ms_b_n_"+ strnpcinfo(2) ) );
						for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 )
							setd "$ms_b_n_"+ strnpcinfo(2) +"$", getd("$ms_b_n_"+ strnpcinfo(2) +"$") +"#"+ getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]");
						next;
						break;
				}
			}
	}
	close;
OnQuest1TimeUp:
	dispbottom "Mission #1: "+ getd("$ms_b_m_"+ @ms_b_m_1[0] +"$[0]") +" has Time Up";
	deletearray @ms_b_m_1;
	set ms_b_m_1$, "";
	end;
OnQuest2TimeUp:
	dispbottom "Mission #2: "+ getd("$ms_b_m_"+ @ms_b_m_2[0] +"$[0]") +" has Time Up";
	deletearray @ms_b_m_2;
	set ms_b_m_2$, "";
	end;
OnQuest3TimeUp:
	dispbottom "Mission #3: "+ getd("$ms_b_m_"+ @ms_b_m_3[0] +"$[0]") +" has Time Up";
	deletearray @ms_b_m_3;
	set ms_b_m_3$, "";
	end;
OnQuest4TimeUp:
	dispbottom "Mission #4: "+ getd("$ms_b_m_"+ @ms_b_m_4[0] +"$[0]") +" has Time Up";
	deletearray @ms_b_m_4;
	set ms_b_m_4$, "";
	end;
L_showprogress:
	mes "^0000FF"+ getd("$ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"$[0]") +"^000000";
	mes "Description: ^0000FF"+ getd("$ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"$[1]") +"^000000";
	mes " ";
	mes "[^804000Mission Progress^000000]";
	if ( getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[5]") ) {
		set [email protected], getd("@ms_b_m_"+ @slot +"[1]") - gettimetick(2);
		set [email protected], [email protected] / 3600;
		set [email protected], [email protected] % 3600 / 60;
		set [email protected], [email protected] % 60;
		mes "Time Left:  ^FF0000"+( ( [email protected] )[email protected] +" hour ":"" )+( ( [email protected] || [email protected] )[email protected] +" min ":"" )+ [email protected] +" sec^000000";
	}
	set [email protected], getarraysize( getd(".ms_b_t_"+ getd("@ms_b_m_"+ @slot +"[0]") ) );
	for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
		mes "Mobs : ^0000FF"+ getmonsterinfo( getd(".ms_b_t_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ [email protected] +"]") , 0) +"^000000 ["+( ( getd("@ms_b_m_"+ @slot +"["+( [email protected]/2 +2 )+"]") > getd(".ms_b_t_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ ([email protected] +1) +"]") )?getd(".ms_b_t_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ ([email protected] +1) +"]"):getd("@ms_b_m_"+ @slot +"["+( [email protected]/2 +2 )+"]") ) +"/"+ getd(".ms_b_t_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ ([email protected] +1) +"]") +"]";
	set [email protected], getarraysize( getd(".ms_b_ir_"+ getd("@ms_b_m_"+ @slot +"[0]") ) );
	for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
		mes "Items : ^0000FF"+ getitemname( getd(".ms_b_ir_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ [email protected] +"]") ) +"^000000 ["+ countitem( getd(".ms_b_ir_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ [email protected] +"]") ) +"/"+ getd(".ms_b_ir_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ ([email protected] +1) +"]") +"]";
	mes " ";
	mes "[^009900Rewards^000000]";
	if ( getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[7]") )
		mes "Base Exp : ^0000FF"+ callfunc("int__", getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[7]") ) +"^000000";
	if ( getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[8]") )
		mes "Job Exp : ^0000FF"+ callfunc("int__", getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[8]") ) +"^000000";
	if ( getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[9]") )
		mes "Zeny : ^0000FF"+ callfunc("int__", getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[9]") ) +"^000000";
	if ( getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[10]") )
		mes "Cash Point : ^0000FF"+ callfunc("int__", getd(".ms_b_m_"+ getd("@ms_b_m_"+ @slot +"[0]") +"[10]") ) +"^000000";
	set [email protected], getarraysize( getd(".ms_b_ia_"+ getd("@ms_b_m_"+ @slot +"[0]") ) );
	for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
	mes "Item : ^0000FF"+ getd(".ms_b_ia_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ ([email protected] +1) +"]") +" "+ getitemname( getd(".ms_b_ia_"+ getd("@ms_b_m_"+ @slot +"[0]") +"["+ [email protected] +"]") ) +"^000000";
	mes " ";
	return;
L_setupmission:
	while (1) {
		mes "["+ strnpcinfo(1) +"]";
		mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
		mes "Description: "+( ( @tmp_ms_b_m_$[1] != "" )?"^0000FF"+ @tmp_ms_b_m_$[1]:"^FF0000Incomplete" )+"^000000";
		mes " ";
		if ( @tmp_ms_b_t_ == 0 && @tmp_ms_b_ir_ == 0 )
			mes "Require mobs : ^FF0000Incomplete^000000";
		set [email protected], getarraysize(@tmp_ms_b_t_);
		for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
			mes "Require mobs : ^0000FF"+ @tmp_ms_b_t_[[email protected] +1] +" "+ getmonsterinfo(@tmp_ms_b_t_[[email protected]], 0) +"^000000";
		if ( @tmp_ms_b_t_ == 0 && @tmp_ms_b_ir_ == 0 )
			mes "Require items : ^FF0000Incomplete^000000";
		set [email protected], getarraysize(@tmp_ms_b_ir_);
		for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
			mes "Require items : ^0000FF"+ @tmp_ms_b_ir_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ir_[[email protected]]) +"^000000";
		mes " ";
		if ( @tmp_ms_b_m_[6] || @tmp_ms_b_m_[3] || @tmp_ms_b_m_[5] || @tmp_ms_b_m_[2] ) {
			mes "[^FF0000Limitations^000000]";
			if ( @tmp_ms_b_m_[6] )
				mes "Can do : "+( ( @tmp_ms_b_m_[6] == 1 )?"^00CC00Everyday":"^FF0000Only Once" )+"^000000";
			if ( @tmp_ms_b_m_[3] )
				mes "Base Level :"+( ( @tmp_ms_b_m_[3] )?"  ^0000FF"+ @tmp_ms_b_m_[3] +( ( @tmp_ms_b_m_[3] != @tmp_ms_b_m_[4] )?"~"+ @tmp_ms_b_m_[4]:"" )+"^000000":"" );
			if ( @tmp_ms_b_m_[5] )
				mes "Time Limit : ^FF0000"+( ( @tmp_ms_b_m_[5] /60 )[email protected]_ms_b_m_[5] /60 +" hour"+( ( @tmp_ms_b_m_[5] %60 )?" ":"" ):"" )+( ( @tmp_ms_b_m_[5] %60 )[email protected]_ms_b_m_[5] %60 +" min":"" )+"^000000";
			if ( @tmp_ms_b_m_[2] ) {
				deletearray [email protected];
				for ( set [email protected], 0; [email protected] < 24; set [email protected], [email protected] +1 ) {
					if ( @tmp_ms_b_m_[2] & pow( 2, [email protected] ) ) {
						set [email protected][ getarraysize([email protected]) ], [email protected] +1;
					}
				}
				set [email protected]$, .jobname$[ [email protected][0] -1 ];
				set [email protected], getarraysize([email protected]);
				for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 )
					set [email protected]$, [email protected]$ +", "+ .jobname$[ [email protected][[email protected]] -1 ];
				mes "Job Limit : ^00CC00"+ [email protected]$ +"^000000";
			}
			mes " ";
		}
		mes "[^009900Rewards^000000]";
		if ( @tmp_ms_b_m_[7] || @tmp_ms_b_m_[8] || @tmp_ms_b_m_[9] || @tmp_ms_b_m_[10] || @tmp_ms_b_ia_ )
			set [email protected]_reward$, "";
		else {
			mes "^FF0000Incomplete^000000";
			set [email protected]_reward$, "  - ^FF0000Incomplete^000000";
		}
		if ( @tmp_ms_b_m_[7] )
			mes "Base Exp : ^0000FF"+ callfunc("int__", @tmp_ms_b_m_[7] ) +"^000000";
		if ( @tmp_ms_b_m_[8] )
			mes "Job Exp : ^0000FF"+ callfunc("int__", @tmp_ms_b_m_[8] ) +"^000000";
		if ( @tmp_ms_b_m_[9] )
			mes "Zeny : ^0000FF"+ callfunc("int__", @tmp_ms_b_m_[9] ) +"^000000";
		if ( @tmp_ms_b_m_[10] )
			mes "Cash Point : ^0000FF"+ callfunc("int__", @tmp_ms_b_m_[10] ) +"^000000";
		set [email protected], getarraysize(@tmp_ms_b_ia_);
		for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
			mes "Item : ^0000FF"+ @tmp_ms_b_ia_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ia_[[email protected]]) +"^000000";
		next;
		if ( @tmp_ms_b_m_$[0] != "" && @tmp_ms_b_m_$[1] != "" && ( @tmp_ms_b_t_ || @tmp_ms_b_ir_ ) &&
			( @tmp_ms_b_m_[7] || @tmp_ms_b_m_[8] || @tmp_ms_b_m_[9] || @tmp_ms_b_m_[10] || @tmp_ms_b_ia_ ) )
			set [email protected]_all$, "^00CC00";
		else
			set [email protected]_all$, "^FF0000";
		set [email protected], select (
			"Important Settings"+( ( @tmp_ms_b_m_$[0] != "" && @tmp_ms_b_m_$[1] != "" && ( @tmp_ms_b_t_ || @tmp_ms_b_ir_ ) )?"":"  - ^FF0000Incomplete^000000" ),
			"Mission Limitations",
			"Rewards"+ [email protected]_reward$,
			[email protected]_all$ +"Complete "+( ( getarg(0) )?"Edit":"Setup" )+"^000000",
			"- back" );
		switch ( [email protected] ) {
			case 1:
				while (1) {
					mes "["+ strnpcinfo(1) +"]";
					mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
					mes "Description: "+( ( @tmp_ms_b_m_$[1] != "" )?"^0000FF"+ @tmp_ms_b_m_$[1]:"^FF0000Incomplete" )+"^000000";
					mes " ";
					if ( @tmp_ms_b_t_ == 0 && @tmp_ms_b_ir_ == 0 )
						mes "Require mobs : ^FF0000Incomplete^000000";
					set [email protected], getarraysize(@tmp_ms_b_t_);
					for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
						mes "Require mobs : ^0000FF"+ @tmp_ms_b_t_[[email protected] +1] +" "+ getmonsterinfo(@tmp_ms_b_t_[[email protected]], 0) +"^000000";
					if ( @tmp_ms_b_t_ == 0 && @tmp_ms_b_ir_ == 0 )
						mes "Require items : ^FF0000Incomplete^000000";
					set [email protected], getarraysize(@tmp_ms_b_ir_);
					for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
						mes "Require items : ^0000FF"+ @tmp_ms_b_ir_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ir_[[email protected]]) +"^000000";
					next;
					set [email protected], select (
						"Mission Name"+( ( @tmp_ms_b_m_$[0] != "" )?"":"  - ^FF0000Incomplete^000000" ),
						"Description"+( ( @tmp_ms_b_m_$[1] != "" )?"":"  - ^FF0000Incomplete^000000" ),
						"Require Mobs",
						"Require Items",
						"- back" );
					switch ( [email protected] ) {
						case 1:
							mes "["+ strnpcinfo(1) +"]";
							mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
							mes " ";
							mes "Input the mission name";
							next;
							input [email protected]$;
							mes "["+ strnpcinfo(1) +"]";
							if ( getstrlen([email protected]$) > 60 ) {
								mes "Mission name must not more than 60 characters";
								next;
								break;
							}
							else if ( compare ( [email protected]$, ":" ) || compare ( [email protected]$, "^" ) ) {
								mes "Mission name must not allow to use these symbols";
								mes "-> : <- colon";
								mes "-> ^ <- caret";
								next;
								break;
							}
							mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
							mes "Description: "+( ( @tmp_ms_b_m_$[1] != "" )?"^0000FF"+ @tmp_ms_b_m_$[1]:"^FF0000Incomplete" )+"^000000";
							mes " ";
							mes "Are you sure to change the name to";
							mes "^0000FF"+ [email protected]$ +"^000000";
							next;
							if ( select ( "Yes", "No" ) == 2 ) break;
							set @tmp_ms_b_m_$[0], [email protected]$;
							break;
						case 2:
							mes "["+ strnpcinfo(1) +"]";
							mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
							mes "Description: "+( ( @tmp_ms_b_m_$[1] != "" )?"^0000FF"+ @tmp_ms_b_m_$[1]:"^FF0000Incomplete" )+"^000000";
							mes " ";
							mes "Input the descriptions";
							next;
							set [email protected]$, "";
							set [email protected]$, "";
							set [email protected]$, "";
							set [email protected], 0;
							do {
								set [email protected], [email protected] +1 ;
								input getd("[email protected]"+ [email protected] +"$");
							} while ( getstrlen( getd("[email protected]"+ [email protected] +"$") ) > 50 && [email protected] < 3 );
							mes "["+ strnpcinfo(1) +"]";
							mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
							mes "Description: "+( ( @tmp_ms_b_m_$[1] != "" )?"^0000FF"+ @tmp_ms_b_m_$[1]:"^FF0000Incomplete" )+"^000000";
							mes " ";
							mes "Are you sure to change description to";
							mes "^0000FF"+ [email protected]$ + [email protected]$ + [email protected]$ +"^000000";
							next;
							if ( select ( "Yes", "No" ) == 2 ) break;
							set @tmp_ms_b_m_$[1], [email protected]$ + [email protected]$ + [email protected]$;
							break;
						case 3:
							if ( getarg(0) ) {
								mes "["+ strnpcinfo(1) +"]";
								mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
								mes " ";
								mes "Require Mobs are not allow to edit";
								next;
								break;
							}
							while (1) {
								mes "["+ strnpcinfo(1) +"]";
								mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
								mes " ";
								if ( @tmp_ms_b_t_ == 0 )
									mes "Require mobs :";
								set [email protected], getarraysize(@tmp_ms_b_t_);
								for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
									mes "Require mobs : ^0000FF"+ @tmp_ms_b_t_[[email protected] +1] +" "+ getmonsterinfo(@tmp_ms_b_t_[[email protected]], 0) +"^000000";
								next;
								set [email protected], select ( "Add a monster requirement", "Remove a monster requirement", "- back" );
								switch ( [email protected] ) {
									case 1:
										mes "["+ strnpcinfo(1) +"]";
										mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
										mes " ";
										if ( @tmp_ms_b_t_ == 0 )
											mes "Require mobs :";
										set [email protected], getarraysize(@tmp_ms_b_t_);
										for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
											mes "Require mobs : ^0000FF"+ @tmp_ms_b_t_[[email protected] +1] +" "+ getmonsterinfo(@tmp_ms_b_t_[[email protected]], 0) +"^000000";
										mes " ";
										if ( [email protected] == 16 ) {
											mes "Require mobs are only allow up to 8 different kinds";
											next;
											break;
										}
										mes "Input monster ID";
										next;
										input [email protected], 0, 9999;
										mes "["+ strnpcinfo(1) +"]";
										if ( [email protected] == 0 ) {
											mes "Invalid monster ID";
											next;
											break;
										}
										else if ( getmonsterinfo([email protected], 1) == -1 ) {
											mes "Invalid monster ID";
											next;
											break;
										}
										if ( @tmp_ms_b_t_ == 0 )
											mes "Require mobs :";
										for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
											mes "Require mobs : ^0000FF"+ @tmp_ms_b_t_[[email protected] +1] +" "+ getmonsterinfo(@tmp_ms_b_t_[[email protected]], 0) +"^000000";
										mes " ";
										for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 ) {
											if ( [email protected] == @tmp_ms_b_t_[[email protected]] ) break;
										}
										if ( [email protected] != [email protected] ) {
											mes "Monster ^0000FF"+ getmonsterinfo([email protected], 0) +"^000000 is Repeated";
											next;
											break;
										}
										mes "Require mobs : ^0000FF"+ getmonsterinfo([email protected], 0) +"^000000";
										mes "Input an amount need to be hunt";
										next;
										input [email protected], 0, 999;
										if ( [email protected] == 0 ) {
											mes "["+ strnpcinfo(1) +"]";
											mes "Invalid amount";
											next;
										}
										else
											setarray @tmp_ms_b_t_[ [email protected] ], [email protected], [email protected];
										break;
									case 2:
										mes "["+ strnpcinfo(1) +"]";
										mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
										mes " ";
										if ( @tmp_ms_b_t_ == 0 ) {
											mes "There are no monster to remove";
											next;
											break;
										}
										set [email protected], getarraysize(@tmp_ms_b_t_);
										for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
											mes "Require mobs : ^0000FF"+ @tmp_ms_b_t_[[email protected] +1] +" "+ getmonsterinfo(@tmp_ms_b_t_[[email protected]], 0) +"^000000";
										mes " ";
										mes "Select a mob to delete";
										next;
										set [email protected]$, "^0000FF"+ @tmp_ms_b_t_[1] +" "+ getmonsterinfo(@tmp_ms_b_t_, 0);
										for ( set [email protected], 2; [email protected] < [email protected]; set [email protected], [email protected] +2 )
											set [email protected]$, [email protected]$ +":"+ @tmp_ms_b_t_[[email protected] +1] +" "+ getmonsterinfo(@tmp_ms_b_t_[[email protected]], 0);
										set [email protected]$, [email protected]$ +"^000000:- back";
										set [email protected], select([email protected]$) -1;
										if ( [email protected] == [email protected] /2 ) break;
										deletearray @tmp_ms_b_t_[ [email protected] *2 ], 2;
									case 3:
								}
								if ( [email protected] == 3 ) break;
							}
							break;
						case 4:
							while (1) {
								mes "["+ strnpcinfo(1) +"]";
								mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
								mes " ";
								if ( @tmp_ms_b_ir_ == 0 )
									mes "Require items :";
								set [email protected], getarraysize(@tmp_ms_b_ir_);
								for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
									mes "Require items : ^0000FF"+ @tmp_ms_b_ir_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ir_[[email protected]]) +"^000000";
								next;
								set [email protected]_require_menu, select ( "add item requirement", "remove a require item", "- back" );
								switch ( [email protected]_require_menu ) {
									case 1:
										mes "["+ strnpcinfo(1) +"]";
										mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
										mes " ";
										if ( @tmp_ms_b_ir_ == 0 )
											mes "Require items : ";
										set [email protected], getarraysize(@tmp_ms_b_ir_);
										for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
											mes "Require items : ^0000FF"+ @tmp_ms_b_ir_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ir_[[email protected]]) +"^000000";
										mes " ";
										if ( [email protected] == 10 ) {
											mes "Require items are only allow up to 5 different kinds";
											next;
											break;
										}
										mes "Input item ID";
										next;
										input [email protected], 0, 32767;
										mes "["+ strnpcinfo(1) +"]";
										if ( getitemname([email protected]) == "null" ) {
											mes "Invalid item ID";
											next;
											break;
										}
										mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
										mes " ";
										if ( @tmp_ms_b_ir_ == 0 )
											mes "Require items : ";
										for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
											mes "Require items : ^0000FF"+ @tmp_ms_b_ir_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ir_[[email protected]]) +"^000000";
										mes " ";
										for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 ) {
											if ( [email protected]mp == @tmp_ms_b_ir_[[email protected]] ) break;
										}
										if ( [email protected] != [email protected] ) {
											mes "Item ^0000FF"+ getitemname([email protected]) +"^000000 is repeated";
											next;
											break;
										}
										mes "Require items : ^0000FF"+ getitemname([email protected]) +"^000000";
										mes "input the amount required for this item";
										next;
										input [email protected], 0, 30000;
										if ( [email protected] == 0 ) {
											mes "["+ strnpcinfo(1) +"]";
											mes "Invalid amount";
											next;
										}
										else
											setarray @tmp_ms_b_ir_[ [email protected] ], [email protected], [email protected];
										break;
									case 2:
										mes "["+ strnpcinfo(1) +"]";
										mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
										mes " ";
										if ( @tmp_ms_b_ir_ == 0 ) {
											mes "There are no item to be remove";
											next;
											break;
										}
										set [email protected], getarraysize(@tmp_ms_b_ir_);
										for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
											mes "Require items : ^0000FF"+ @tmp_ms_b_ir_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ir_[[email protected]]) +"^000000";
										mes " ";
										mes "Select an item to delete";
										next;
										set [email protected]$, "^0000FF"+ @tmp_ms_b_ir_[1] +" "+ getitemname(@tmp_ms_b_ir_);
										for ( set [email protected], 2; [email protected] < [email protected]; set [email protected], [email protected] +2 )
											set [email protected]$, [email protected]$ +":"+ @tmp_ms_b_ir_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ir_[[email protected]]);
										set [email protected]$, [email protected]$ +"^000000:- back";
										set [email protected], select([email protected]$) -1;
										if ( [email protected] == [email protected] /2 ) break;
										deletearray @tmp_ms_b_ir_[ [email protected] *2 ], 2;
									case 3:
								}
								if ( [email protected]_require_menu == 3 ) break;
							}
						case 5:
					}
					if ( [email protected] == 5 ) break;
				}
				break;
			case 2:
				while (1) {
					mes "["+ strnpcinfo(1) +"]";
					mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
					mes " ";
					mes "[^FF0000Limitations^000000]";
					mes "Can do : "+( ( @tmp_ms_b_m_[6] == 0 )?"^0000FFRepeatedly": ( @tmp_ms_b_m_[6] == 1 )?"^00CC00Everyday":"^FF0000Only Once" )+"^000000";
					mes "Base Level :"+( ( @tmp_ms_b_m_[3] )?"  ^0000FF"+ @tmp_ms_b_m_[3] +( ( @tmp_ms_b_m_[3] != @tmp_ms_b_m_[4] )?"~"+ @tmp_ms_b_m_[4]:"" )+"^000000":"" );
					mes "Time Limit : "+( ( @tmp_ms_b_m_[5] )?"^FF0000"+( ( @tmp_ms_b_m_[5] /60 )[email protected]_ms_b_m_[5] /60 +" hour"+( ( @tmp_ms_b_m_[5] %60 )?" ":"" ):"" )+( ( @tmp_ms_b_m_[5] %60 )[email protected]_ms_b_m_[5] %60 +" min":"" )+"^000000":"" );
					if ( @tmp_ms_b_m_[2] == 0 )
						mes "Job Limit : ^FF0000<none>^000000";
					else {
						deletearray [email protected];
						for ( set [email protected], 0; [email protected] < 24; set [email protected], [email protected] +1 ) {
							if ( @tmp_ms_b_m_[2] & pow( 2, [email protected] ) ) {
								set [email protected][ getarraysize([email protected]) ], [email protected] +1;
							}
						}
						set [email protected]$, .jobname$[ [email protected][0] -1 ];
						set [email protected], getarraysize([email protected]);
						for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 )
							set [email protected]$, [email protected]$ +", "+ .jobname$[ [email protected][[email protected]] -1 ];
						mes "Job Limit : ^00CC00"+ [email protected]$ +"^000000";
					}
					next;
					set [email protected], select ( "Mission Status (Can do)", "Base Level", "Time Limit", "Job limitation", "- back" );
					switch ( [email protected] ) {
						case 1:
							mes "["+ strnpcinfo(1) +"]";
							mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
							mes " ";
							mes "Can do : "+( ( @tmp_ms_b_m_[6] == 0 )?"^0000FFRepeatedly": ( @tmp_ms_b_m_[6] == 1 )?"^00CC00Everyday":"^FF0000Only Once" )+"^000000";
							mes "Please select a status";
							next;
							switch ( select ( "^0000FFRepeatedly^000000", "^00CC00Everyday^000000", "^FF0000Only Once^000000" ) ) {
								case 1: set @tmp_ms_b_m_[6], 0; break;
								case 2: set @tmp_ms_b_m_[6], 1; break;
								case 3: set @tmp_ms_b_m_[6], 2;
							}
							break;
						case 2:
							mes "["+ strnpcinfo(1) +"]";
							mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
							mes " ";
							mes "Base Level :";
							mes " ";
							mes "Input starting range";
							next;
							input [email protected], 0, 1000;
							if ( [email protected] == 0 ) {
								mes "["+ strnpcinfo(1) +"]";
								mes "invalid value";
								set @tmp_ms_b_m_[3], 0;
								set @tmp_ms_b_m_[4], 0;
								next;
								break;
							}
							mes "["+ strnpcinfo(1) +"]";
							mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
							mes " ";
							mes "Base Level : ^0000FF"+ [email protected] +"~^000000";
							mes " ";
							mes "Input ending range";
							next;
							input [email protected], 0, 1000;
							if ( [email protected] == 0 ) {
								mes "["+ strnpcinfo(1) +"]";
								mes "invalid value";
								set @tmp_ms_b_m_[3], 0;
								set @tmp_ms_b_m_[4], 0;
								next;
								break;
							}
							else if ( [email protected] > [email protected] ) {
								mes "["+ strnpcinfo(1) +"]";
								mes "Ending range cannot higher than starting range";
								next;
								break;
							}
							else
								setarray @tmp_ms_b_m_[3], [email protected], [email protected];
							break;
						case 3:
							mes "["+ strnpcinfo(1) +"]";
							mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
							mes " ";
							mes "Time Limit : "+( ( @tmp_ms_b_m_[5] )?"^FF0000"+( ( @tmp_ms_b_m_[5] /60 )[email protected]_ms_b_m_[5] /60 +" hour"+( ( @tmp_ms_b_m_[5] %60 )?" ":"" ):"" )+( ( @tmp_ms_b_m_[5] %60 )[email protected]_ms_b_m_[5] %60 +" min":"" )+"^000000":"" );
							mes "      1 = 1 minute";
							mes "    60 = 1 hour";
							mes "1440 = 1 day";
							next;
							input @tmp_ms_b_m_[5], 0, 1440;
							break;
						case 4:
							while (1) {
								mes "["+ strnpcinfo(1) +"]";
								mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
								mes " ";
								if ( @tmp_ms_b_m_[2] == 0 )
									mes "Job Limit : ^FF0000<none>^000000";
								else {
									deletearray [email protected];
									for ( set [email protected], 0; [email protected] < 24; set [email protected], [email protected] +1 ) {
										if ( @tmp_ms_b_m_[2] & pow( 2, [email protected] ) ) {
											set [email protected][ getarraysize([email protected]) ], [email protected] +1;
										}
									}
									set [email protected]$, .jobname$[ [email protected][0] -1 ];
									set [email protected], getarraysize([email protected]);
									for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 )
										set [email protected]$, [email protected]$ +", "+ .jobname$[ [email protected][[email protected]] -1 ];
									mes "Job Limit : ^00CC00"+ [email protected]$ +"^000000";
								}
								next;
								set [email protected]$, ( ( @tmp_ms_b_m_[2] & pow( 2, 0 ) )?"^00CC00":"^FF0000" )+ .jobname$;
								for ( set [email protected], 1; [email protected] < 24; set [email protected],[email protected] +1 )
									set [email protected]$, [email protected]$ +":"+( ( @tmp_ms_b_m_[2] & pow( 2, [email protected] ) )?"^00CC00":"^FF0000" )+ .jobname$[[email protected]];
								set [email protected]$, [email protected]$ +":^000000- back";
								set [email protected], select([email protected]$) -1;
								if ( [email protected] == 24 ) break;
								set @tmp_ms_b_m_[2], @tmp_ms_b_m_[2] ^ pow( 2, [email protected] );
							}
							break;
						case 5:
					}
					if ( [email protected] == 5 ) break;
				}
				break;
			case 3:
				while (1) {
					mes "["+ strnpcinfo(1) +"]";
					mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
					mes " ";
					mes "[^009900Rewards^000000]";
					mes "Base Exp : "+( ( @tmp_ms_b_m_[7] )?"^0000FF"+ callfunc("int__", @tmp_ms_b_m_[7] ):"^FF00000" ) +"^000000";
					mes "Job Exp : "+( ( @tmp_ms_b_m_[8] )?"^0000FF"+ callfunc("int__", @tmp_ms_b_m_[8] ):"^FF00000" ) +"^000000";
					mes "Zeny : "+( ( @tmp_ms_b_m_[9] )?"^0000FF"+ callfunc("int__", @tmp_ms_b_m_[9] ):"^FF00000" ) +"^000000 ";
					mes "Cash Point : "+( ( @tmp_ms_b_m_[10] )?"^0000FF"+ callfunc("int__", @tmp_ms_b_m_[10] ):"^FF00000" ) +"^000000";
					if ( @tmp_ms_b_ia_ == 0 )
						mes "Item : ";
					set [email protected], getarraysize(@tmp_ms_b_ia_);
					for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
						mes "Item : ^0000FF"+ @tmp_ms_b_ia_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ia_[[email protected]]) +"^000000";
					next;
					set [email protected], select ( "Base Exp", "Job Exp", "Zeny", "Cash Points", "Item Rewards", "- back" );
					switch ( [email protected] ) {
						case 1:
							input @tmp_ms_b_m_[7], 0, 2000000000;
							break;
						case 2:
							input @tmp_ms_b_m_[8], 0, 2000000000;
							break;
						case 3:
							input @tmp_ms_b_m_[9], 0, 2000000000;
							break;
						case 4:
							input @tmp_ms_b_m_[10], 0, 2000000000;
							break;
						case 5:
							while (1) {
								mes "["+ strnpcinfo(1) +"]";
								mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
								mes " ";
								if ( @tmp_ms_b_ia_ == 0 )
									mes "Item :";
								set [email protected], getarraysize(@tmp_ms_b_ia_);
								for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
									mes "Item : ^0000FF"+ @tmp_ms_b_ia_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ia_[[email protected]]) +"^000000";
								next;
								set [email protected]_reward_menu, select ( "Add an item reward", "Remove an item reward", "- back" );
								switch ( [email protected]_reward_menu ) {
									case 1:
										mes "["+ strnpcinfo(1) +"]";
										mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
										mes " ";
										if ( @tmp_ms_b_ia_ == 0 )
											mes "Item : ";
										set [email protected], getarraysize(@tmp_ms_b_ia_);
										for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
											mes "Item : ^0000FF"+ @tmp_ms_b_ia_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ia_[[email protected]]) +"^000000";
										mes " ";
										if ( [email protected] == 10 ) {
											mes "Items Rewards are only allow up to 5 different kinds";
											next;
											break;
										}
										mes "Input item id";
										next;
										input [email protected], 0, 32767;
										mes "["+ strnpcinfo(1) +"]";
										if ( getitemname([email protected]) == "null" ) {
											mes "Invalid item id";
											next;
											break;
										}
										mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
										mes " ";
										if ( @tmp_ms_b_ia_ == 0 )
											mes "Item : ";
										for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
											mes "Item : ^0000FF"+ @tmp_ms_b_ia_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ia_[[email protected]]) +"^000000";
										mes " ";
										for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 ) {
											if ( [email protected] == @tmp_ms_b_ia_[[email protected]] ) break;
										}
										if ( [email protected] != [email protected] ) {
											mes "Item ^0000FF"+ getitemname([email protected]) +"^000000 is repeated";
											next;
											break;
										}
										mes "Item : ^0000FF"+ getitemname([email protected]) +"^000000";
										mes "Input the amount rewards for this item";
										next;
										input [email protected], 0, 30000;
										if ( [email protected] == 0 ) {
											mes "["+ strnpcinfo(1) +"]";
											mes "Invalid amount";
											next;
										}
										else
											setarray @tmp_ms_b_ia_[ [email protected] ], [email protected], [email protected];
										break;
									case 2:
										mes "["+ strnpcinfo(1) +"]";
										mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
										mes " ";
										if ( @tmp_ms_b_ia_ == 0 ) {
											mes "There is no item rewards to remove";
											next;
											break;
										}
										set [email protected], getarraysize(@tmp_ms_b_ia_);
										for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
											mes "Item : ^0000FF"+ @tmp_ms_b_ia_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ia_[[email protected]]) +"^000000";
										mes " ";
										mes "Select an item rewards to delete";
										next;
										set [email protected]$, "^0000FF"+ @tmp_ms_b_ia_[1] +" "+ getitemname(@tmp_ms_b_ia_);
										for ( set [email protected], 2; [email protected] < [email protected]; set [email protected], [email protected] +2 )
											set [email protected]$, [email protected]$ +":"+ @tmp_ms_b_ia_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ia_[[email protected]]);
										set [email protected]$, [email protected]$ +"^000000:- back";
										set [email protected], select([email protected]$) -1;
										if ( [email protected] == [email protected] /2 ) break;
										deletearray @tmp_ms_b_ia_[ [email protected] *2 ], 2;
									case 3:
								}
								if ( [email protected]_reward_menu == 3 ) break;
							}
						case 6:
					}
					if ( [email protected] == 6 ) break;
				}
				break;
			case 4:
				mes "["+ strnpcinfo(1) +"]";
				if ( @tmp_ms_b_m_$[0] != "" && @tmp_ms_b_m_$[1] != "" && ( @tmp_ms_b_t_ || @tmp_ms_b_ir_ ) &&
					( @tmp_ms_b_m_[7] || @tmp_ms_b_m_[8] || @tmp_ms_b_m_[9] || @tmp_ms_b_m_[10] || @tmp_ms_b_ia_ ) ) {
					mes "mission ID: ^996600"+( ( getarg(0) == 0 )?$ms_b_id +1:@m_id )+"^000000";
					mes "Name : ^0000FF"+ @tmp_ms_b_m_$[0] +"^000000";
				}
				else {
					mes "Name : "+( ( @tmp_ms_b_m_$[0] != "" )?"^0000FF"+ @tmp_ms_b_m_$[0]:"^FF0000Incomplete" )+"^000000";
					mes " ";
					mes "Some field are still Incomplete !";
					next;
					break;
				}
				mes "Description: ^0000FF"+ @tmp_ms_b_m_$[1] +"^000000";
				mes " ";
				set [email protected], getarraysize(@tmp_ms_b_t_);
				for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
					mes "Require mobs : ^0000FF"+ @tmp_ms_b_t_[[email protected] +1] +" "+ getmonsterinfo(@tmp_ms_b_t_[[email protected]], 0) +"^000000";
				set [email protected], getarraysize(@tmp_ms_b_ir_);
				for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
					mes "Require items : ^0000FF"+ @tmp_ms_b_ir_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ir_[[email protected]]) +"^000000";
					mes " ";
				if ( @tmp_ms_b_m_[6] || @tmp_ms_b_m_[3] || @tmp_ms_b_m_[5] || @tmp_ms_b_m_[2] ) {
					mes "[^FF0000Limitations^000000]";
					if ( @tmp_ms_b_m_[6] )
						mes "Can do : "+( ( @tmp_ms_b_m_[6] == 1 )?"^00CC00Everyday":"^FF0000Only Once" )+"^000000";
					if ( @tmp_ms_b_m_[3] )
						mes "Base Level :"+( ( @tmp_ms_b_m_[3] )?"  ^0000FF"+ @tmp_ms_b_m_[3] +( ( @tmp_ms_b_m_[3] != @tmp_ms_b_m_[4] )?"~"+ @tmp_ms_b_m_[4]:"" )+"^000000":"" );
					if ( @tmp_ms_b_m_[5] )
						mes "Time Limit : ^FF0000"+( ( @tmp_ms_b_m_[5] /60 )[email protected]_ms_b_m_[5] /60 +" hour"+( ( @tmp_ms_b_m_[5] %60 )?" ":"" ):"" )+( ( @tmp_ms_b_m_[5] %60 )[email protected]_ms_b_m_[5] %60 +" min":"" )+"^000000";
					if ( @tmp_ms_b_m_[2] ) {
						deletearray [email protected];
						for ( set [email protected], 0; [email protected] < 24; set [email protected], [email protected] +1 ) {
							if ( @tmp_ms_b_m_[2] & pow( 2, [email protected] ) ) {
								set [email protected][ getarraysize([email protected]) ], [email protected] +1;
							}
						}
						set [email protected]$, .jobname$[ [email protected][0] -1 ];
						set [email protected], getarraysize([email protected]);
						for ( set [email protected], 1; [email protected] < [email protected]; set [email protected], [email protected] +1 )
							set [email protected]$, [email protected]$ +", "+ .jobname$[ [email protected][[email protected]] -1 ];
						mes "Job Limit : ^00CC00"+ [email protected]$ +"^000000";
					}
					mes " ";
				}
				mes "[^009900Rewards^000000]";
				if ( @tmp_ms_b_m_[7] )
					mes "Base Exp : ^0000FF"+ callfunc("int__", @tmp_ms_b_m_[7] ) +"^000000";
				if ( @tmp_ms_b_m_[8] )
					mes "Job Exp : ^0000FF"+ callfunc("int__", @tmp_ms_b_m_[8] ) +"^000000";
				if ( @tmp_ms_b_m_[9] )
					mes "Zeny : ^0000FF"+ callfunc("int__", @tmp_ms_b_m_[9] ) +"^000000";
				if ( @tmp_ms_b_m_[10] )
					mes "Cash Point : ^0000FF"+ callfunc("int__", @tmp_ms_b_m_[10] ) +"^000000";
				set [email protected], getarraysize(@tmp_ms_b_ia_);
				for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
					mes "Item : ^0000FF"+ @tmp_ms_b_ia_[[email protected] +1] +" "+ getitemname(@tmp_ms_b_ia_[[email protected]]) +"^000000";
				return 1;
			case 5:
				return 0;
		}
	}
	end;
OnInit:
	bindatcmd "mission", "mission::OnWhisperGlobal";
	set .loading, 1;
	set .total_npc, .total_npc +1 ;
	if ( atoi( strnpcinfo(2) ) <= 0 || atoi( strnpcinfo(2) ) > 127 ) {
		debugmes "Mission Board: invalid npc id #"+ strnpcinfo(2);
		goto L_load_finish;
	}
	else if ( .ms_b_name$[ atoi( strnpcinfo(2) ) ] != "" ) {
		debugmes "Mission Board: duplicate npc id #"+ strnpcinfo(2);
		set .duplicate_id[ getarraysize(.duplicate_id) ], atoi( strnpcinfo(2) );
		goto L_load_finish;
	}
	set .ms_b_name$[ atoi( strnpcinfo(2) ) ], strnpcinfo(1);
	explode [email protected]_b_n_$, getd("$ms_b_n_"+ strnpcinfo(2) +"$"), "#";
	set [email protected]_size, getarraysize([email protected]_b_n_$);
	set [email protected], 0;
	while ( [email protected] < [email protected]_size ) {
		setd ".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]", atoi( [email protected]_b_n_$[[email protected]] );
		set [email protected], [email protected] +1 ;
	}
	set [email protected], getarraysize( getd(".ms_b_n_"+ strnpcinfo(2) ) );
	while ( [email protected] < [email protected] ) {
		set [email protected]_id, getd(".ms_b_n_"+ strnpcinfo(2) +"["+ [email protected] +"]");
		explode [email protected]_b_m_$[2], getd("$ms_b_m_"+ [email protected]_id +"$[2]"), "#";
		set [email protected]_size, getarraysize([email protected]_b_m_$);
		set [email protected], 0;
		while ( [email protected] < [email protected]_size ) {
			setd ".ms_b_m_"+ [email protected]_id +"["+ [email protected] +"]", atoi( [email protected]_b_m_$[[email protected]] );
			set [email protected], [email protected] +1 ;
		}
		explode [email protected]_b_t_$, getd("$ms_b_m_"+ [email protected]_id +"$[3]"), "#";
		set [email protected]_size, getarraysize([email protected]_b_t_$);
		set [email protected], 0;
		while ( [email protected] < [email protected]_size ) {
			setd ".ms_b_t_"+ [email protected]_id +"["+ [email protected] +"]", atoi( [email protected]_b_t_$[[email protected]] );
			set [email protected], [email protected] +1 ;
		}        
		copyarray getd(".ms_b_ir_"+ [email protected]_id), getd(".ms_b_t_"+ [email protected]_id +"[16]"), 10;
		copyarray getd(".ms_b_ia_"+ [email protected]_id), getd(".ms_b_t_"+ [email protected]_id +"[26]"), 10;
		deletearray getd(".ms_b_t_"+ [email protected]_id +"[16]"), 20;
		set [email protected], [email protected] +1 ;
		sleep 1;
	}
L_load_finish:
	set .finish, .finish +1;
	if ( .finish == .total_npc ) {
		set .finish, 0;
		set .total_npc, 0;
		set .loading, 0;
		setarray .jobname$,    "(Super) Novice","Swordman","Mage","Archer","Acolyte","Merchant","Thief","Knight","Priest","Wizard","Blacksmith","Hunter","Assassin","Crusader","Monk","Sage","Rogue","Alchemist","Bard/Dancer","Taekwon","Star Gladiator","Soul Linker","Gunslinger","Ninja";
	}
	end;
}

-	script	mission	-1,{
OnWhisperGlobal:
	if ( getvariableofnpc( .loading, "ms_b_") == 1 ) {
		dispbottom "Mission Board: Loading Mission Data ......";
		end;
	}
	if ( @ms_b_loading == 1 ) {
		dispbottom "Mission Board: Loading Player Data ......";
		end;
	}
	for ( set [email protected], 1; [email protected] <= 4; set [email protected], [email protected] +1 ) {
		if ( getd("@ms_b_m_"+ [email protected]) ) {
			if ( getd("$ms_b_m_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"$[0]") == "" ) {
				dispbottom "Mission Board: Your Mission#"+ [email protected] +" has deleted because it is no longer available";
				deletearray getd("@ms_b_m_"+ [email protected]);
				setd "ms_b_m_"+ [email protected] +"$", "";
				deltimer "ms_b_::OnQuest"+ [email protected] +"TimeUp";
			}
			else if ( getd("@ms_b_m_"+ [email protected] +"[1]") && getd("@ms_b_m_"+ [email protected] +"[1]") <= gettimetick(2) ) {
				dispbottom "Mission #1: "+ getd("$ms_b_m_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"$[0]") +" has Time Up";
				deletearray getd("@ms_b_m_"+ [email protected]);
				setd "ms_b_m_"+ [email protected] +"$", "";
				deltimer "ms_b_::OnQuest"+ [email protected] +"TimeUp";
			}
		}
	}
	dispbottom "[Mission Progress]";
	if ( @ms_b_m_1 == 0 && @ms_b_m_2 == 0 && @ms_b_m_3 == 0 && @ms_b_m_4 == 0 ) {
		dispbottom "You haven't accepted any mission(s) yet!";
		end;
	}
	for ( set [email protected], 1; [email protected] <= 4; set [email protected], [email protected] +1 ) {
		if ( getd("@ms_b_m_"+ [email protected] +"[0]") ) {
			dispbottom "-----------------------";
			dispbottom "Mission #"+ [email protected] +":  "+ getd("$ms_b_m_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"$[0]");
			if ( getvariableofnpc( getd(".ms_b_m_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"[5]"), "ms_b_" ) ) {
				set [email protected], getd("@ms_b_m_"+ [email protected] +"[1]") - gettimetick(2);
				set [email protected], [email protected] / 3600;
				set [email protected], [email protected] % 3600 / 60;
				set [email protected], [email protected] % 60;
				dispbottom "Time Left:  "+( ( [email protected] )[email protected] +" hour ":"" )+( ( [email protected] || [email protected] )[email protected] +" min ":"" )+ [email protected] +" sec";
			}
			if ( getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") ), "ms_b_" ) ) {
	
				set [email protected], getarraysize( getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") ), "ms_b_" ) );
				for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
					dispbottom "Monsters killed: "+ getmonsterinfo( getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+ [email protected] +"]"), "ms_b_" ) , 0) +" ["+( ( getd("@ms_b_m_"+ [email protected] +"["+( [email protected]/2 +2 )+"]") > getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+ ([email protected] +1) +"]"), "ms_b_" ) )?getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+ ([email protected] +1) +"]"), "ms_b_" ):getd("@ms_b_m_"+ [email protected] +"["+( [email protected]/2 +2 )+"]") ) +"/"+ getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+ ([email protected] +1) +"]"), "ms_b_" ) +"]";
			}
			if ( getvariableofnpc( getd(".ms_b_ir_"+ getd("@ms_b_m_"+ [email protected] +"[0]") ), "ms_b_" ) ) {
				set [email protected], getarraysize( getvariableofnpc( getd(".ms_b_ir_"+ getd("@ms_b_m_"+ [email protected] +"[0]") ), "ms_b_" ) );
				for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 )
					dispbottom "Items Collected: "+ getitemname( getvariableofnpc( getd(".ms_b_ir_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+ [email protected] +"]"), "ms_b_" ) ) +" ["+ countitem( getvariableofnpc( getd(".ms_b_ir_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+ [email protected] +"]"), "ms_b_" ) ) +"/"+ getvariableofnpc( getd(".ms_b_ir_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+ ([email protected] +1) +"]"), "ms_b_" ) +"]";
			}
		}
	}
	dispbottom "   -----------------------";
	end;
OnNPCKillEvent:
	set [email protected], killedrid;
	if ( getvariableofnpc( .loading, "ms_b_") == 1 ) end;
	if ( getcharid(1) == 0 ) {
		if ( @ms_b_loading == 1 ) end;
		for ( set [email protected], 1; [email protected] <= 4; set [email protected], [email protected] +1 ) {
			if ( getd("@ms_b_m_"+ [email protected] +"[0]") ) {
				if ( getd("$ms_b_m_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"$[0]") == "" ) {
					dispbottom "Mission Board: Your Mission#"+ [email protected] +" has deleted because it is no longer available";
					deletearray getd("@ms_b_m_"+ [email protected]);
					setd "ms_b_m_"+ [email protected] +"$", "";
					deltimer "ms_b_::OnQuest"+ [email protected] +"TimeUp";
				}
				else {
					set [email protected], getarraysize( getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") ), "ms_b_" ) );
					for ( set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] +2 ) {
						if ( [email protected] == getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+ [email protected] +"]"), "ms_b_" ) && getd("@ms_b_m_"+ [email protected] +"["+( [email protected]/2 +2 )+"]") < getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+( [email protected] +1 )+"]"), "ms_b_" ) ) {
							setd "@ms_b_m_"+ [email protected] +"["+( [email protected]/2 +2 )+"]", getd("@ms_b_m_"+ [email protected] +"["+( [email protected]/2 +2 )+"]") +1;
							dispbottom "Mission #"+ [email protected] +". You have killed "+ getmonsterinfo( getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+ [email protected] +"]"), "ms_b_" ), 0 ) +" ["+ getd("@ms_b_m_"+ [email protected] +"["+( [email protected]/2 +2 )+"]") +"/"+ getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+( [email protected] +1 )+"]"), "ms_b_" ) +"]";
							setd "ms_b_m_"+ [email protected] +"$", getd("@ms_b_m_"+ [email protected] +"[0]") +"#"+( ( getd("@ms_b_m_"+ [email protected] +"[1]") )?getd("@ms_b_m_"+ [email protected] +"[1]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[2]") )?getd("@ms_b_m_"+ [email protected] +"[2]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[3]") )?getd("@ms_b_m_"+ [email protected] +"[3]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[4]") )?getd("@ms_b_m_"+ [email protected] +"[4]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[5]") )?getd("@ms_b_m_"+ [email protected] +"[5]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[6]") )?getd("@ms_b_m_"+ [email protected] +"[6]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[7]") )?getd("@ms_b_m_"+ [email protected] +"[7]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[8]") )?getd("@ms_b_m_"+ [email protected] +"[8]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[9]") )?getd("@ms_b_m_"+ [email protected] +"[9]"):"" );
						}
					}
				}
			}
		}
		end;
	}
	getmapxy [email protected]$, [email protected], [email protected], 0;
	getpartymember getcharid(1), 1;
	getpartymember getcharid(1), 2;
	set [email protected], 0;
	while ( [email protected] < [email protected] ) {
		if ( isloggedin( [email protected][[email protected]], [email protected][[email protected]] ) ) {
			attachrid [email protected][[email protected]];
			getmapxy [email protected]$, [email protected], [email protected], 0;
			if ( @ms_b_loading == 0 && [email protected]$ == [email protected]$ && distance([email protected],[email protected],[email protected],[email protected]) <= 30 && Hp ) {
				set [email protected], 1;
				while ( [email protected] <= 4 ) {
					if ( getd("@ms_b_m_"+ [email protected] +"[0]") ) {
						if ( getd("$ms_b_m_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"$[0]") == "" ) {
							dispbottom "Mission Board: Your Mission#"+ [email protected] +" has deleted because it is no longer available";
							deletearray getd("@ms_b_m_"+ [email protected]);
							setd "ms_b_m_"+ [email protected] +"$", "";
							deltimer "ms_b_::OnQuest"+ [email protected] +"TimeUp";
						}
						else {
							set [email protected], 0;
							set [email protected], getarraysize( getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") ), "ms_b_" ) );
							while ( [email protected] < [email protected] ) {
								if ( [email protected] == getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+ [email protected] +"]"), "ms_b_" ) && getd("@ms_b_m_"+ [email protected] +"["+( [email protected]/2 +2 )+"]") < getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+( [email protected] +1 )+"]"), "ms_b_" ) ) {
									setd "@ms_b_m_"+ [email protected] +"["+( [email protected]/2 +2 )+"]", getd("@ms_b_m_"+ [email protected] +"["+( [email protected]/2 +2 )+"]") +1;
									dispbottom "Mission #"+ [email protected] +". You have killed "+ getmonsterinfo( getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+ [email protected] +"]"), "ms_b_" ), 0 ) +" ["+ getd("@ms_b_m_"+ [email protected] +"["+( [email protected]/2 +2 )+"]") +"/"+ getvariableofnpc( getd(".ms_b_t_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"["+( [email protected] +1 )+"]"), "ms_b_" ) +"]";
									setd "ms_b_m_"+ [email protected] +"$", getd("@ms_b_m_"+ [email protected] +"[0]") +"#"+( ( getd("@ms_b_m_"+ [email protected] +"[1]") )?getd("@ms_b_m_"+ [email protected] +"[1]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[2]") )?getd("@ms_b_m_"+ [email protected] +"[2]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[3]") )?getd("@ms_b_m_"+ [email protected] +"[3]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[4]") )?getd("@ms_b_m_"+ [email protected] +"[4]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[5]") )?getd("@ms_b_m_"+ [email protected] +"[5]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[6]") )?getd("@ms_b_m_"+ [email protected] +"[6]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[7]") )?getd("@ms_b_m_"+ [email protected] +"[7]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[8]") )?getd("@ms_b_m_"+ [email protected] +"[8]"):"" )+"#"+( ( getd("@ms_b_m_"+ [email protected] +"[9]") )?getd("@ms_b_m_"+ [email protected] +"[9]"):"" );
								}
								set [email protected], [email protected] +2 ;
							}
						}
					}
					set [email protected], [email protected] +1 ;
				}
			}
		}
		set [email protected], [email protected] +1 ;
	}
	end;
OnPCLoginEvent:
	set @ms_b_loading, 1;
	set [email protected], 1;
	while ( [email protected] <= 4 ) {
		if ( getd("ms_b_m_"+ [email protected] +"$") != "" ) {
			explode getd("[email protected]_b_m_"+ [email protected] +"$"), getd("ms_b_m_"+ [email protected] +"$"), "#";
			set [email protected]_size, getarraysize( getd("[email protected]_b_m_"+ [email protected] +"$") );
			set [email protected], 0;
			while ( [email protected] < [email protected]_size ) {
				setd "@ms_b_m_"+ [email protected] +"["+ [email protected] +"]", atoi( getd("[email protected]_b_m_"+ [email protected] +"$["+ [email protected] +"]") );
				set [email protected], [email protected] +1 ;
			}
		}
		set [email protected], [email protected] +1 ;
	}
	sleep2 1;
	set [email protected], 0;
	while ( [email protected]_id < 128 ) {
		if ( getvariableofnpc( .ms_b_name$[[email protected]_id], "ms_b_" ) != "" ) {
			explode getd("[email protected]_b_n_"+ [email protected]_id +"$"), getd("ms_b_n_"+ [email protected]_id +"$"), "#";
			set [email protected]_size, getarraysize( getd("[email protected]_b_n_"+ [email protected]_id +"$") );
			set [email protected], 0;
			while ( [email protected] < [email protected]_size ) {
				setd "@ms_b_n_"+ [email protected]_id +"["+ [email protected] +"]", atoi( getd("[email protected]_b_n_"+ [email protected]_id +"$["+ [email protected] +"]") );
				set [email protected], [email protected] +1 ;
			}
			sleep2 1;
		}
		set [email protected]_id, [email protected]_id +1 ;
	}
	sleep2 1;
	set @ms_b_loading, 0;
	if ( getvariableofnpc( .loading, "ms_b_" ) == 0 ) {
		set [email protected], 1;
		while ( [email protected] <= 4 ) {
			if ( getd("@ms_b_m_"+ [email protected] +"[0]") ) {
				if ( getd("$ms_b_m_"+ getd("@ms_b_m_"+ [email protected] +"[0]") +"$[0]") == "" ) {
					dispbottom "Mission Board: Your Mission#"+ [email protected] +" has deleted because it is no longer available";
					deletearray getd("@ms_b_m_"+ [email protected]);
					setd "ms_b_m_"+ [email protected] +"$", "";
				}
				else if ( getd("@ms_b_m_"+ [email protected] +"[1]") ) {
					if ( getd("@ms_b_m_"+ [email protected] +"[1]") > gettimetick(2) )
						addtimer ( getd("@ms_b_m_"+ [email protected] +"[1]") - gettimetick(2) ) *1000, "ms_b_::OnQuest"+ [email protected] +"TimeUp";
					else
						doevent "ms_b_::OnQuest"+ [email protected] +"TimeUp";
				}
			}
			set [email protected], [email protected] +1 ;
		}
	}
	end;
}

//    create more missions by using npc duplicates
//    display name can be anything, but the hidden name #1 #2 #35 must be a number within 1 ~ 126
//    Note: npc display name plus the hidden name must not more than 23 characters
veil,90,112,6	duplicate(ms_b_)	Useable Item Quest#3	805
veil,89,115,6	duplicate(ms_b_)	Headgear Quest#4	805
veil,88,118,6	duplicate(ms_b_)	Costume Quest#5	805

 

IetLU32eWGQdoQIwS_OlO0VpsglYt10G1lyvcP0ovXIF0gMrSqivmuC0gNb1JV80BwLhkFqIYTEG0nziuinPQg.jpg.bfda88d02e78a8b0bfebfd2a8271aec0.jpg

 

Share this post


Link to post
Share on other sites

9 answers to this question

Recommended Posts

  • 0

latest version is 2.4c actually
http://upaste.me/7c9c496344829d36f

 

52 minutes ago, dolphincute said:

hye guys, i would request if anyone or the author Annieruru herself could remake the old Mission Board?

as the old ones dint have access to preview the item reward, and yes i do know emistry did manage to make it but it require SQL

I remember the item require and item reward feature was done back eathena days in year 2010

screen2019rAthena007.jpg

when you submit a quest, OR accepting a quest, SCROLL DOWN the npc dialog to see them

btw type this to show the mission progress, that's how I usually debug my script

@mission

 

 

EDIT: Holy Sh^t, I think Ima gonna spend another 3 days making a topic telling what this script can do and can't do

Edited by AnnieRuru

Share this post


Link to post
Share on other sites
  • 0

http://herc.ws/board/topic/15329-deprecation-notice/?do=findComment&amp;comment=84976

2.4d Hercules only
https://drive.google.com/file/d/1G5gGxcxzZmSHE_r_XlofseqtSsj-ji7L/view

run regular expression find

pow.(([0-9]*),([0-9]*).);

and replace with

\2**\3;

the rest insert manually

Share this post


Link to post
Share on other sites
  • 0
15 hours ago, AnnieRuru said:

latest version is 2.4c actually
http://upaste.me/7c9c496344829d36f

 

I remember the item require and item reward feature was done back eathena days in year 2010

screen2019rAthena007.jpg

when you submit a quest, OR accepting a quest, SCROLL DOWN the npc dialog to see them

btw type this to show the mission progress, that's how I usually debug my script

@mission

 

 

EDIT: Holy Sh^t, I think Ima gonna spend another 3 days making a topic telling what this script can do and can't do

i did not see the preview functions?

Share this post


Link to post
Share on other sites
  • 0

are you saying that emistry has .... preview item feature that my script lacks ?
forgive me I have forgotten which stuffs I had fixed on the emistry's script

I lost emistry's mission board version 1.6, anyone still having that ?

On 8/31/2014 at 3:20 AM, AnnieRuru said:

1.6 [paste=ftsocdeysre]
- fix the getserverdef script command
- increase sleep time inside OnInit to make lesser chance of getting unsorted ID
- in commented lines, stop listing the monsters when the kill count reached
- in commented lines, added listing for the mission name instead of mission ID

though, type @mission is a preferable choice

I tested the one floating on the forum, they are mostly filled with bugs

 

try describe what are the feature you are looking after

 

Edited by AnnieRuru

Share this post


Link to post
Share on other sites
  • 0

@AnnieRuru I think what she meant by preview was similar to <ITEMLINK> script command. like how you check the items descriptions or maybe display it on players character.

Edited by Radian

Share this post


Link to post
Share on other sites
  • 0
17 hours ago, Radian said:

@AnnieRuru I think what she meant by preview was similar to <ITEMLINK> script command. like how you check the items descriptions or maybe display it on players character.

yes that, well when player accept the quest player can view the item, same way as we open an item descriptions, only for the item reward that is

Edited by dolphincute

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this