<?xml version="1.0" encoding="utf-8"?><waypoints>
<onload>
--version 1 a good deed every day class swaping
--does not include code to run just 1 class. This is for class swaping. 
--Start with highest level that can get quest have secondary be class 
--to get xp when quest done.
changeProfileOption("MAX_TARGET_DIST", 10)
	questtype 		= "daily" -- "public" or "daily";
	swapClass 		= true;				-- Do ClassSwapping for levelling Second Class?
	minPlayerLevel	= 88;				-- minimum PlayerLevel to accept the Quest.
	questGiverId 	= 123023; -- Adam Adamson
	questItemId 	= 122187;  -- Missing Goods
	questid 		= 423441;  -- A Good Deed Every Day
	questName 		= GetIdName(questid);
	time = os.time();		-- Startingtime of Waypoint
	__WPL:setForcedWaypointType("TRAVEL")


for k,v in pairs(settings.profile.skills) do
	v.AutoUse = false
end
print ("starting quest-",questName,"questtype-")
function questsDone()
	local dailyQuestCount, dailyQuestsPerDay= RoMScript("Daily_count()");
	if (dailyQuestCount==dailyQuestsPerDay) then
		return true;
	else 
		return false;
	end
end	
function mountUp()
	if not player:hasBuff(506688) and inventory:itemTotalCount(207204) > 0 then
		inventory:useItem(207204)
		yrest(500);
		
	end
	player:mount()	
	MountSpeedHack(99)
end
function housetoquest()
	player:moveTo(CWaypoint(7223, 22378), true)
	player:moveTo(CWaypoint(6795, 22365), true)
end	
function questtohouse()
	player:moveTo(CWaypoint(6795, 22365), true)
	player:moveTo(CWaypoint(7223, 22378), true)
end	
function questtoitem()
	player:moveTo(CWaypoint(6683, 22460), true)
	player:moveTo(CWaypoint(6285, 22498), true)
	player:moveTo(CWaypoint(5938, 22809), true)
	player:moveTo(CWaypoint(5456, 22955), true)
end	
function itemtohouse()
	player:moveTo(CWaypoint(5482, 22931), true)
	player:moveTo(CWaypoint(5956, 22790), true)
	player:moveTo(CWaypoint(6242, 22526), true)
	player:moveTo(CWaypoint(6929, 22346), true)
	player:moveTo(CWaypoint(7225, 22391), true)
end	
function swClass()
	player:update();
	RoMScript("ExchangeClass("..(player.Class2+1)..","..(player.Class1+1)..")");
	yrest(1000);
	player:mount();
end
function fetchQuest()
	if questsDone() and questtype == "daily" then
		cprintf (cli.pink,"Time spend for this daily: %s Minutes\n",(os.time()-time)/60);
		error ("Dailys done for today!",0);
	elseif	getQuestStatus(questName) ~= "incomplete" or  getQuestStatus(questName) == "not accepted" then
			player:target_NPC(questGiverId);
			yrest(150);
			AcceptQuestByName(questName,questtype);
	end
end
function completeQuest()
	if getQuestStatus(questName) =="complete" then
		player:target_NPC(questGiverId);
		yrest(150);
		CompleteQuestByName(questName);
	end
end
function questsDone()
	local dailyQuestCount, dailyQuestsPerDay= RoMScript("Daily_count()");
	if (dailyQuestCount==dailyQuestsPerDay) then
		return true;
	else 
		return false;
	end
end	
function mountUp()
	if not player:hasBuff(506688) and inventory:itemTotalCount(207204) > 0 then
		inventory:useItem(207204)
		yrest(500);
	end
	player:mount()	
	yrest(700);
end
	-- end of functions	
booltable={};
	booltable[true]	="yes";
	booltable[false]="no";
	addMessage ("Swap Class enabled: "..booltable[swapClass]);	
 -----=====main=====-----
print ("always start at house girl")	
			yrest(2000);
repeat
	if  questsDone() and questtype 		== "daily" then
		error ("Dailys done for today!",0);
	end
	mountUp()

	housetoquest()	
	completeQuest();
	fetchQuest();
	player:update();
	mountUp()
	questtoitem()
	repeat 
		player:target_Object("Missing Goods")
		yrest(500); 
	until getQuestStatus(questName) == "complete" 
	yrest(200);
		mountUp()
	itemtohouse()
		player:target_NPC(123273) -- housemaid Nafisa Goda
		yrest(150);
		ChoiceOptionByName(getTEXT("SO_110581_1")) -- 'I want to switch my primary and secondary class.'
		yrest(150);
	swClass()
	housetoquest()
	completeQuest()
	questtohouse()
		player:target_NPC(123273) -- housemaid Nafisa Goda
		yrest(150);
		ChoiceOptionByName(getTEXT("SO_110581_1")) -- 'I want to switch my primary and secondary class.'
		yrest(150);
	swClass()	
	questsDone()
until 1 ==2 
</onload>
</waypoints>  
 