function main() { AddTrigger RestartWrits "EQ2Craft:: No more Writs to Make!" AddTrigger MoveMouse "Starting broker transaction with @npcName@." AddTrigger DeleteQuest "@npcName@You will need to either complete the work order @hmm@ been given or decline it before I can assign you another. @end@" Event[EQ2_onChoiceWindowAppeared]:AttachAtom[AcceptDelete] Mouse:SetBackgroundCursor[1] while 1 { wait 10 while ${QueuedCommands} ExecuteQueued } } function atexit() { RemoveTrigger RestartWrits RemoveTrigger MoveMouse RemoveTrigger DeleteQuest Event[EQ2_onChoiceWindowAppeared]:DetachAtom[AcceptDelete] Mouse:SetBackgroundCursor[0] } atom AcceptDelete() { ChoiceWindow:DoChoice1 } function DeleteQuest(string whole, string npcName) { if (${Math.Distance[-0.241064,-0.180578,1.506775,${Me.X},${Me.Y},${Me.Z}]} <= 5) { EQ2UIPage[Journals,JournalsQuest].Child[button,TabPages.Active.After.DeleteButton]:LeftClick wait 5 } } function RestartWrits(string whole) { variable int xLoc = ${Math.Rand[10]:Inc[${UIElement[Create Rush Order@Writs@Craft Main@Main Frame@Craft Selection].AbsoluteX}]} variable int yLoc = ${Math.Rand[10]:Inc[${UIElement[Create Rush Order@Writs@Craft Main@Main Frame@Craft Selection].AbsoluteY}]} wait 40 Mouse:SetPosition[${xLoc},${yLoc}] wait 2 ICraft:StartRO wait 20 Mouse:SetPosition[${Math.Rand[400]},${Math.Rand[400]}] } function MoveMouse(string whole, string npcName) { MouseTo 800,600 }