prontera,162,175,4	script	Daily Mission	2_BULLETIN_BOARD,{
	disable_items;
	if (!dailyquest){
		.@qtype$="HUNTING";
		.@thisquest = 50001;
		.@mobId1 = 1034;		// Thara Frog
		.@mob_count = 70;
		.@dropid = 0;
		.@dropcount = 0;
		.@access$="";
		 setarray .@itemId[0],608,2;
		.@desc$="";
	} else if (dailyquest == 1) {
		.@qtype$="";
		.@thisquest = 50002;
		.@mobId1 = 0;
		.@mob_count = 0;
		.@dropid = 1059;		// Fabric
		.@dropcount = 100;
		.@access$="";
		 setarray .@itemId[0],505,10;
		.@desc$="";	
	} else if (dailyquest == 2) {
		.@qtype$="";
		.@thisquest = 50003;
		.@mobId1 = 0;
		.@mob_count = 0;
		.@dropid = 0;
		.@dropcount = 0;
		.@access$="";
		 setarray .@itemId[0],985,2;
		.@desc$="Success refine 1 armor.";
	} else if (dailyquest == 3) {
		.@qtype$="";
		.@thisquest = 50004;
		.@mobId1 = 0;
		.@mob_count = 0;
		.@dropid = 0;
		.@dropcount = 0;
		.@access$="Talk to Quest NPC at Izlude dungeon lvl 4";
		 setarray .@itemId[0],668,2;
		.@desc$="";
	} else if (dailyquest == 4) {
		.@qtype$="";
		.@thisquest = 50005;
		.@mobId1 = 0;
		.@mob_count = 0;
		.@dropid = 603;			// Old Blue Box
		.@dropcount = 1;
		.@access$="";
		 setarray .@itemId[0],603,2;
		.@desc$="";
	}
	if (dailyquest == 6) {
		mes "[ ^0055FFDaily Mission^000000 ]";
		mes "You have completed all mission. Please come back again tommorow.";
		close();
	}
	if (dailyquest == 5){
		mes "[ ^0055FFDaily Mission^000000 ]";
		mes "Congratulation on completing all the missions.";
		next;
		mes "[ ^0055FFDaily Mission^000000 ]";
		mes "Here is something to boost your drop rate"; 
		emotion e_no1;
		specialeffect(EF_ANGEL, AREA, playerattached());
		specialeffect(EF_TRUESIGHT, AREA, playerattached());
		dailyquest += 1;
		getitembound 12210,1,1;
		close();
	}
	if (.@qtype$==""){
		if (questprogress(.@thisquest) == 0 ){
			mes "[ ^0055FFDaily Mission^000000 ]";
			mes "You Mission Objectives -";
			if(.@mobId1) mes "Hunt ^0055FF"+.@mob_count+" "+strmobinfo(2,.@mobId1)+"^000000.";
			if(.@dropid) mes "Collect ^0055FF"+.@dropcount+"x "+getitemname(.@dropid)+"^000000.";
			if(.@access$ != "") mes "Task: ^0055FF"+.@access$+"^000000";
			if(.@desc$ != "") mes "Task: ^0055FF"+.@desc$+"^000000";
			next;
			if(select("- Accept/Submit Mission","- Cancel") == 2) close;
			else if (questprogress(.@thisquest,HUNTING) == 0) {
				mes "[ ^0055FFDaily Mission^000000 ]";
				emotion e_no1;
				specialeffect(EF_ANGEL, AREA, playerattached());
				specialeffect(EF_TRUESIGHT, AREA, playerattached());
				mes "You have accepted this mission.";
				mes "Good luck on your journey towards it's completion.";
				setquest .@thisquest;
				close;
			}
			close;
		}
		else if (questprogress(.@thisquest) == 1) {
			if (.@dropid && countitem(.@dropid) >= .@dropcount){
				delitem .@dropid,.@dropcount;
				mes "[ ^0055FFDaily Mission^000000 ]";
				emotion e_no1;
				specialeffect(EF_ANGEL, AREA, playerattached());
				specialeffect(EF_TRUESIGHT, AREA, playerattached());
				mes "Your mission rewards have been sanctioned.";
				completequest .@thisquest;
				getitembound .@itemId[0],.@itemId[1],1;
				erasequest .@thisquest;
				dailyquest += 1;
				close;
			}
			mes "[ ^0055FFDaily Mission^000000 ]";
			mes "You are already on this quest and have not completed it yet.";
			mes "-";
			if(.@mobId1) mes "Hunt ^0055FF"+.@mob_count+" "+strmobinfo(2,.@mobId1)+"^000000.";
			if(.@dropid) mes "Collect ^0055FF"+.@dropcount+"x "+getitemname(.@dropid)+"^000000.";
			if(.@access$ != "") mes "Task: ^0055FF"+.@access$+"^000000";
			if(.@desc$ != "") mes "Task: ^0055FF"+.@desc$+"^000000";
			next;
			switch(select("I'm going to finish the mission.","Leave this mission."))
			{
				case 1:
					close;
				case 2:
					mes "[ ^0055FFDaily Mission^000000 ]";
					mes "Are you sure you wish to quit this mission?";
					mes "All current progress will be lost upon doing so.";
					next;
					if(select("- Proceed","- Cancel") == 2) close;
					mes "[ ^0055FFDaily Mission^000000 ]";
					mes "You have quit this mission.";
					erasequest .@thisquest;
					close;
			}
		}
		else if (questprogress(.@thisquest) == 2) {
			mes "[ ^0055FFDaily Mission^000000 ]";
			mes "Your mission rewards have been sanctioned.";
			emotion e_no1;
			specialeffect(EF_ANGEL, AREA, playerattached());
			specialeffect(EF_TRUESIGHT, AREA, playerattached());
			completequest .@thisquest;
			getitembound .@itemId[0],.@itemId[1],1;
			erasequest .@thisquest;
			dailyquest += 1;
			close();
		}
	} else {
		if (questprogress(.@thisquest,HUNTING) == 0){
			mes "[ ^0055FFDaily Mission^000000 ]";
			mes "You Mission Objectives -";
			if(.@mobId1) mes "Hunt ^0055FF"+.@mob_count+" "+strmobinfo(2,.@mobId1)+"^000000.";
			if(.@dropid) mes "Collect ^0055FF"+.@dropcount+"x "+getitemname(.@dropid)+"^000000.";
			if(.@access$ != "") mes "Task: ^0055FF"+.@access$+"^000000";
			if(.@desc$ != "") mes "Task: ^0055FF"+.@desc$+"^000000";
			next;
			if(select("- Accept/Submit Mission","- Cancel") == 2) close;
			else if (questprogress(.@thisquest,HUNTING) == 0) {
				mes "[ ^0055FFDaily Mission^000000 ]";
				emotion e_no1;
				specialeffect(EF_ANGEL, AREA, playerattached());
				specialeffect(EF_TRUESIGHT, AREA, playerattached());
				mes "You have accepted this mission.";
				mes "Good luck on your journey towards it's completion.";
				setquest .@thisquest;
				close;
			}
			close;
		}
		else if (questprogress(.@thisquest,HUNTING) == 1) {
			mes "[ ^0055FFDaily Mission^000000 ]";
			mes "You are already on this quest and have not completed it yet.";
			mes "-";
			if(.@mobId1) mes "Hunt ^0055FF"+.@mob_count+" "+strmobinfo(2,.@mobId1)+"^000000.";
			if(.@dropid) mes "Collect ^0055FF"+.@dropcount+"x "+getitemname(.@dropid)+"^000000.";
			if(.@access$ != "") mes "Task: ^0055FF"+.@access$+"^000000";
			if(.@desc$ != "") mes "Task: ^0055FF"+.@desc$+"^000000";
			next;
			switch(select("I'm going to finish the mission.","Leave this mission."))
			{
				case 1:
					close;
				case 2:
					mes "[ ^0055FFDaily Mission^000000 ]";
					mes "Are you sure you wish to quit this mission?";
					mes "All current progress will be lost upon doing so.";
					next;
					if(select("- Proceed","- Cancel") == 2) close;
					mes "[ ^0055FFDaily Mission^000000 ]";
					mes "You have quit this mission.";
					erasequest .@thisquest;
					close;
			}
		}
		else if (questprogress(.@thisquest,HUNTING) == 2) {
			mes "[ ^0055FFDaily Mission^000000 ]";
			mes "Your mission rewards have been sanctioned.";
			emotion e_no1;
			specialeffect(EF_ANGEL, AREA, playerattached());
			specialeffect(EF_TRUESIGHT, AREA, playerattached());
			completequest .@thisquest;
			getitembound .@itemId[0],.@itemId[1],1;
			erasequest .@thisquest;
			dailyquest += 1;
			close();
		}

	}	
	end;	
OnInit:
	initnpctimer;
	end;
OnTimer5000:
	emotion e_gasp;
	stopnpctimer;
	initnpctimer;
	end;

OnClock0001:
	query_sql( "SELECT COUNT(`char_id`) FROM `char` WHERE `online` = 1 ", .@total );
	while( .@count < .@total ){
		query_sql( "SELECT `char_id`,`name` FROM `char` WHERE `online` = 1 ORDER BY `char_id` LIMIT 128 OFFSET "+.@offset, .@char_id, .@name$ );
		.@i = 0;
		.@size = getarraysize(.@name$);
		while( .@i < .@size ){
			attachrid(getcharid(CHAR_ID_ACCOUNT,.@name$[.@i]));
			dailyquest = 0;
			if (questprogress(50001,HUNTING) == 1) erasequest 50001;
			if (questprogress(50002) == 1) erasequest 50002;
			if (questprogress(50003) == 1) erasequest 50003;
			if (questprogress(50004) == 1) erasequest 50004;
			if (questprogress(50005) == 1) erasequest 50005;
			.@count++;
			.@i++;
		}
		freeloop 0;
		.@offset = .@offset + .@size;
		deletearray .@name$,.@size;
	}
	query_sql ("DELETE FROM `char_reg_num_db` WHERE `key` = 'dailyquest'");
	query_sql ("DELETE FROM `quest` WHERE `quest_id` = 50001");
	query_sql ("DELETE FROM `quest` WHERE `quest_id` = 50002");
	query_sql ("DELETE FROM `quest` WHERE `quest_id` = 50003");
	query_sql ("DELETE FROM `quest` WHERE `quest_id` = 50004");
	query_sql ("DELETE FROM `quest` WHERE `quest_id` = 50005");
	announce "[Daily Mission] Daily Mission has been RESET.  Talk to Mission NPC to start your quest.",0;
	end;

}

iz_dun04,127,228,4	script	Daily Mission#iz	2_BULLETIN_BOARD,{
	if (questprogress(50004) == 1) {
		completequest 50004;
		dispbottom "Your mission is completed. Visit the Mission NPC at Prontera.";
	}
end;

OnInit:
	initnpctimer;
	end;
OnTimer5000:
	emotion e_gasp;
	stopnpctimer;
	initnpctimer;
	end;
}