<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://www.atitd.org/wiki/t7w/index.php?action=history&amp;feed=atom&amp;title=User%3AKavad%2FMacros%2FMining</id>
	<title>User:Kavad/Macros/Mining - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://www.atitd.org/wiki/t7w/index.php?action=history&amp;feed=atom&amp;title=User%3AKavad%2FMacros%2FMining"/>
	<link rel="alternate" type="text/html" href="http://www.atitd.org/wiki/t7w/index.php?title=User:Kavad/Macros/Mining&amp;action=history"/>
	<updated>2026-06-03T09:10:25Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.2</generator>
	<entry>
		<id>http://www.atitd.org/wiki/t7w/index.php?title=User:Kavad/Macros/Mining&amp;diff=127982&amp;oldid=prev</id>
		<title>Kavad: Created page with &quot;&lt;pre&gt; -- mining_ore.lua v1.5 -- by Cegaiel modified by Kavad -- Credits to Tallow for his Simon macro, which was used as a template to build on. --  -- Brute force method, you ma...&quot;</title>
		<link rel="alternate" type="text/html" href="http://www.atitd.org/wiki/t7w/index.php?title=User:Kavad/Macros/Mining&amp;diff=127982&amp;oldid=prev"/>
		<updated>2017-01-28T22:41:21Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;lt;pre&amp;gt; -- mining_ore.lua v1.5 -- by Cegaiel modified by Kavad -- Credits to Tallow for his Simon macro, which was used as a template to build on. --  -- Brute force method, you ma...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
-- mining_ore.lua v1.5 -- by Cegaiel modified by Kavad&lt;br /&gt;
-- Credits to Tallow for his Simon macro, which was used as a template to build on.&lt;br /&gt;
-- &lt;br /&gt;
-- Brute force method, you manually click/set every stones' location and it will work every possible 3 node/stone combinations.&lt;br /&gt;
--&lt;br /&gt;
&lt;br /&gt;
dofile(&amp;quot;common.inc&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
askText = singleLine([[&lt;br /&gt;
  Ore Mining v1.4 (by Cegaiel) --&lt;br /&gt;
  Brute Force method. Will try every possible 3 node/stone combination.&lt;br /&gt;
  Make sure chat is MINIMIZED! Press Shift over ATITD window.&lt;br /&gt;
]]);&lt;br /&gt;
&lt;br /&gt;
miningTime = 0;&lt;br /&gt;
autoWorkMine = true;&lt;br /&gt;
timesworked = 0;&lt;br /&gt;
dropdown_values = {&amp;quot;Shift Key&amp;quot;, &amp;quot;Ctrl Key&amp;quot;, &amp;quot;Alt Key&amp;quot;, &amp;quot;Mouse Wheel Click&amp;quot;};&lt;br /&gt;
dropdown_cur_value = 1;&lt;br /&gt;
dropdown_ore_values = {&amp;quot;Aluminum (9)&amp;quot;, &amp;quot;Antimony (14)&amp;quot;, &amp;quot;Copper (8)&amp;quot;, &amp;quot;Gold (12)&amp;quot;, &amp;quot;Iron (7)&amp;quot;, &amp;quot;Lead (9)&amp;quot;, &amp;quot;Lithium (10)&amp;quot;, &amp;quot;Magnesium (9)&amp;quot;, &amp;quot;Platinum (12)&amp;quot;, &amp;quot;Silver (10)&amp;quot;, &amp;quot;Strontium (10)&amp;quot;, &amp;quot;Tin (9)&amp;quot;, &amp;quot;Tungsten (12)&amp;quot;, &amp;quot;Zinc (10)&amp;quot;};&lt;br /&gt;
dropdown_ore_cur_value = 1;&lt;br /&gt;
&lt;br /&gt;
function doit()&lt;br /&gt;
  askForWindow(askText);&lt;br /&gt;
  promptDelays();&lt;br /&gt;
  getMineLoc();&lt;br /&gt;
  getPoints();&lt;br /&gt;
  clickSequence();&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function getMineLoc()&lt;br /&gt;
  mineList = {};&lt;br /&gt;
  local was_shifted = lsShiftHeld();&lt;br /&gt;
  if (dropdown_cur_value == 1) then&lt;br /&gt;
  was_shifted = lsShiftHeld();&lt;br /&gt;
  key = &amp;quot;tap Shift&amp;quot;;&lt;br /&gt;
  elseif (dropdown_cur_value == 2) then&lt;br /&gt;
  was_shifted = lsControlHeld();&lt;br /&gt;
  key = &amp;quot;tap Ctrl&amp;quot;;&lt;br /&gt;
  elseif (dropdown_cur_value == 3) then&lt;br /&gt;
  was_shifted = lsAltHeld();&lt;br /&gt;
  key = &amp;quot;tap Alt&amp;quot;;&lt;br /&gt;
  elseif (dropdown_cur_value == 4) then&lt;br /&gt;
  was_shifted = lsMouseIsDown(2); --Button 3, which is middle mouse or mouse wheel&lt;br /&gt;
  key = &amp;quot;click MWheel &amp;quot;;&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  local is_done = false;&lt;br /&gt;
  mx = 0;&lt;br /&gt;
  my = 0;&lt;br /&gt;
  z = 0;&lt;br /&gt;
  while not is_done do&lt;br /&gt;
    mx, my = srMousePos();&lt;br /&gt;
    local is_shifted = lsShiftHeld();&lt;br /&gt;
&lt;br /&gt;
    if (dropdown_cur_value == 1) then&lt;br /&gt;
      is_shifted = lsShiftHeld();&lt;br /&gt;
    elseif (dropdown_cur_value == 2) then&lt;br /&gt;
      is_shifted = lsControlHeld();&lt;br /&gt;
    elseif (dropdown_cur_value == 3) then&lt;br /&gt;
      is_shifted = lsAltHeld();&lt;br /&gt;
    elseif (dropdown_cur_value == 4) then&lt;br /&gt;
      is_shifted = lsMouseIsDown(2); --Button 3, which is middle mouse or mouse wheel&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if is_shifted and not was_shifted then&lt;br /&gt;
      mineList[#mineList + 1] = {mx, my};&lt;br /&gt;
    end&lt;br /&gt;
    was_shifted = is_shifted;&lt;br /&gt;
    checkBreak();&lt;br /&gt;
    lsPrint(10, 10, z, 1.0, 1.0, 0xFFFFFFff,&lt;br /&gt;
	    &amp;quot;Set Mine Location&amp;quot;);&lt;br /&gt;
    local y = 60;&lt;br /&gt;
    lsPrint(5, y, z, 0.7, 0.7, 0xf0f0f0ff, &amp;quot;Lock ATITD screen (Alt+L) .&amp;quot;);&lt;br /&gt;
    y = y + 20;&lt;br /&gt;
    lsPrint(5, y, z, 0.7, 0.7, 0xf0f0f0ff, &amp;quot;Suggest F5 view, zoomed about 75% out.&amp;quot;);&lt;br /&gt;
    y = y + 60;&lt;br /&gt;
    lsPrint(5, y, z, 0.7, 0.7, 0xf0f0f0ff, &amp;quot;Hover and &amp;quot; .. key .. &amp;quot; over the MINE.&amp;quot;);&lt;br /&gt;
    y = y + 70;&lt;br /&gt;
    lsPrint(5, y, 0, 0.6, 0.6, 0xffffffff, &amp;quot;TIP (Optional):&amp;quot;);&lt;br /&gt;
    y = y + 20;&lt;br /&gt;
    lsPrint(5, y, 0, 0.6, 0.6, 0xffffffff, &amp;quot;For Maximum Performance (least lag) Uncheck:&amp;quot;);&lt;br /&gt;
    y = y + 16;&lt;br /&gt;
    lsPrint(5, y, 0, 0.6, 0.6, 0xffffffff, &amp;quot;Options, Interface, Other: 'Use Flyaway Messages'&amp;quot;);&lt;br /&gt;
    local start = math.max(1, #mineList - 20);&lt;br /&gt;
    local index = 0;&lt;br /&gt;
    for i=start,#mineList do&lt;br /&gt;
	mineX = mineList[i][1];&lt;br /&gt;
	mineY = mineList[i][2];&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
  if #mineList &amp;gt;= 1 then&lt;br /&gt;
      is_done = 1;&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
    if lsButtonText(lsScreenX - 110, lsScreenY - 30, z, 100, 0xFFFFFFff,&lt;br /&gt;
                    &amp;quot;End script&amp;quot;) then&lt;br /&gt;
      error &amp;quot;Clicked End Script button&amp;quot;;&lt;br /&gt;
    end&lt;br /&gt;
  lsDoFrame();&lt;br /&gt;
  lsSleep(50);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function fetchTotalCombos()&lt;br /&gt;
  TotalCombos = 0;&lt;br /&gt;
	for i=1,#clickList do&lt;br /&gt;
		for j=i+1,#clickList do&lt;br /&gt;
			for k=j+1,#clickList do&lt;br /&gt;
			TotalCombos = TotalCombos + 1;&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function getPoints()&lt;br /&gt;
  clickList = {};&lt;br /&gt;
  if (dropdown_ore_cur_value == 1) then&lt;br /&gt;
  ore = &amp;quot;Aluminum&amp;quot;;&lt;br /&gt;
  stonecount = 9;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 2) then&lt;br /&gt;
  ore = &amp;quot;Antimony&amp;quot;;&lt;br /&gt;
  stonecount = 14;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 3) then&lt;br /&gt;
  ore = &amp;quot;Copper&amp;quot;;&lt;br /&gt;
  stonecount = 8;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 4) then&lt;br /&gt;
  ore = &amp;quot;Gold&amp;quot;;&lt;br /&gt;
  stonecount = 12;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 5) then&lt;br /&gt;
  ore = &amp;quot;Iron&amp;quot;;&lt;br /&gt;
  stonecount = 7;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 6) then&lt;br /&gt;
  ore = &amp;quot;Lead&amp;quot;;&lt;br /&gt;
  stonecount = 9;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 7) then&lt;br /&gt;
  ore = &amp;quot;Lithium&amp;quot;;&lt;br /&gt;
  stonecount = 10;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 8) then&lt;br /&gt;
  ore = &amp;quot;Magnesium&amp;quot;;&lt;br /&gt;
  stonecount = 9;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 9) then&lt;br /&gt;
  ore = &amp;quot;Platinum&amp;quot;;&lt;br /&gt;
  stonecount = 12;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 10) then&lt;br /&gt;
  ore = &amp;quot;Silver&amp;quot;;&lt;br /&gt;
  stonecount = 10;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 11) then&lt;br /&gt;
  ore = &amp;quot;Strontium&amp;quot;;&lt;br /&gt;
  stonecount = 10;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 12) then&lt;br /&gt;
  ore = &amp;quot;Tin&amp;quot;;&lt;br /&gt;
  stonecount = 9;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 13) then&lt;br /&gt;
  ore = &amp;quot;Tungsten&amp;quot;;&lt;br /&gt;
  stonecount = 12;&lt;br /&gt;
  elseif (dropdown_ore_cur_value == 14) then&lt;br /&gt;
  ore = &amp;quot;Zinc&amp;quot;;&lt;br /&gt;
  stonecount = 10;&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  local nodeleft = stonecount;&lt;br /&gt;
  local was_shifted = lsShiftHeld();&lt;br /&gt;
  if (dropdown_cur_value == 1) then&lt;br /&gt;
  was_shifted = lsShiftHeld();&lt;br /&gt;
  elseif (dropdown_cur_value == 2) then&lt;br /&gt;
  was_shifted = lsControlHeld();&lt;br /&gt;
  elseif (dropdown_cur_value == 3) then&lt;br /&gt;
  was_shifted = lsAltHeld();&lt;br /&gt;
  elseif (dropdown_cur_value == 4) then&lt;br /&gt;
  was_shifted = lsMouseIsDown(2); --Button 3, which is middle mouse or mouse wheel&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  local is_done = false;&lt;br /&gt;
  local nx = 0;&lt;br /&gt;
  local ny = 0;&lt;br /&gt;
  local z = 0;&lt;br /&gt;
  while not is_done do&lt;br /&gt;
    nx, ny = srMousePos();&lt;br /&gt;
    local is_shifted = lsShiftHeld();&lt;br /&gt;
  if (dropdown_cur_value == 1) then&lt;br /&gt;
  is_shifted = lsShiftHeld();&lt;br /&gt;
  elseif (dropdown_cur_value == 2) then&lt;br /&gt;
  is_shifted = lsControlHeld();&lt;br /&gt;
  elseif (dropdown_cur_value == 3) then&lt;br /&gt;
  is_shifted = lsAltHeld();&lt;br /&gt;
  elseif (dropdown_cur_value == 4) then&lt;br /&gt;
  is_shifted = lsMouseIsDown(2);&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
    if is_shifted and not was_shifted then&lt;br /&gt;
      clickList[#clickList + 1] = {nx, ny};&lt;br /&gt;
      nodeleft = nodeleft - 1;&lt;br /&gt;
    end&lt;br /&gt;
    was_shifted = is_shifted;&lt;br /&gt;
    checkBreak();&lt;br /&gt;
    lsPrint(10, 10, z, 1.0, 1.0, 0xFFFFFFff,&lt;br /&gt;
	    &amp;quot;Set Node Locations (&amp;quot; .. #clickList .. &amp;quot;/&amp;quot; .. stonecount .. &amp;quot;)&amp;quot;);&lt;br /&gt;
    local y = 60;&lt;br /&gt;
    lsSetCamera(0,0,lsScreenX*1.4,lsScreenY*1.4);&lt;br /&gt;
    autoWorkMine = lsCheckBox(15, y, z, 0xffffffff, &amp;quot; Auto 'Work Mine'&amp;quot;, autoWorkMine);&lt;br /&gt;
    lsSetCamera(0,0,lsScreenX*1.0,lsScreenY*1.0);&lt;br /&gt;
    y = y + 10&lt;br /&gt;
    lsPrint(5, y, z, 0.7, 0.7, 0xf0f0f0ff, &amp;quot;Hover and &amp;quot; .. key .. &amp;quot; over each node.&amp;quot;);&lt;br /&gt;
    y = y + 15;&lt;br /&gt;
    lsPrint(5, y, z, 0.7, 0.7, 0xf0f0f0ff, &amp;quot;Make sure chat is MINIMIZED!&amp;quot;);&lt;br /&gt;
    y = y + 30;&lt;br /&gt;
    lsPrint(5, y, z, 0.7, 0.7, 0xf0f0f0ff, &amp;quot;Mine Type:  &amp;quot; .. ore);&lt;br /&gt;
    y = y + 20;&lt;br /&gt;
    miningTimeGUI = &amp;quot;N/A&amp;quot;;&lt;br /&gt;
    if miningTime ~= 0 then&lt;br /&gt;
      --miningTimeGUI = math.floor(miningTime/100)/10 .. &amp;quot; secs&amp;quot;;&lt;br /&gt;
      miningTimeGUI = (miningTime/100)/10 .. &amp;quot; secs&amp;quot;;&lt;br /&gt;
    end&lt;br /&gt;
    lsPrint(5, y, z, 0.7, 0.7, 0xf0f0f0ff, &amp;quot;Mine Worked:  &amp;quot; .. timesworked .. &amp;quot; times  (Last: &amp;quot; .. miningTimeGUI .. &amp;quot;)&amp;quot;);&lt;br /&gt;
    y = y + 30;&lt;br /&gt;
    lsPrint(5, y, z, 0.7, 0.7, 0xf0f0f0ff, &amp;quot;Select &amp;quot; .. nodeleft .. &amp;quot; more nodes to automatically start!&amp;quot;);&lt;br /&gt;
    y = y + 30;&lt;br /&gt;
    local start = math.max(1, #clickList - 20);&lt;br /&gt;
    local index = 0;&lt;br /&gt;
    for i=start,#clickList do&lt;br /&gt;
      local xOff = (index % 3) * 100;&lt;br /&gt;
      local yOff = (index - index%3)/2 * 15;&lt;br /&gt;
      lsPrint(20 + xOff, y + yOff, z, 0.5, 0.5, 0xffffffff,&lt;br /&gt;
              i .. &amp;quot;: (&amp;quot; .. clickList[i][1] .. &amp;quot;, &amp;quot; .. clickList[i][2] .. &amp;quot;)&amp;quot;);&lt;br /&gt;
      index = index + 1;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if #clickList &amp;gt;= stonecount then&lt;br /&gt;
      is_done = 1;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if #clickList == 0 then&lt;br /&gt;
      if lsButtonText(10, lsScreenY - 30, z, 110, 0xffff80ff, &amp;quot;Work Mine&amp;quot;) then&lt;br /&gt;
        workMine();&lt;br /&gt;
      end&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if #clickList &amp;gt; 0 then&lt;br /&gt;
      if lsButtonText(10, lsScreenY - 30, z, 100, 0xff8080ff, &amp;quot;Reset&amp;quot;) then&lt;br /&gt;
        reset();&lt;br /&gt;
      end&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if lsButtonText(lsScreenX - 110, lsScreenY - 30, z, 100, 0xFFFFFFff,&lt;br /&gt;
                    &amp;quot;End script&amp;quot;) then&lt;br /&gt;
      error &amp;quot;Clicked End Script button&amp;quot;;&lt;br /&gt;
    end&lt;br /&gt;
  lsDoFrame();&lt;br /&gt;
  lsSleep(50);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function fetchTotalCombos()&lt;br /&gt;
  TotalCombos = 0;&lt;br /&gt;
	for i=1,#clickList do&lt;br /&gt;
		for j=i+1,#clickList do&lt;br /&gt;
			for k=j+1,#clickList do&lt;br /&gt;
			TotalCombos = TotalCombos + 1;&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function clickSequence()&lt;br /&gt;
  fetchTotalCombos();&lt;br /&gt;
  sleepWithStatus(150, &amp;quot;Starting... Don\'t move mouse!&amp;quot;);&lt;br /&gt;
  local worked = 1;&lt;br /&gt;
  local startMiningTime = lsGetTimer();&lt;br /&gt;
&lt;br /&gt;
	for i=1,#clickList do&lt;br /&gt;
		for j=i+1,#clickList do&lt;br /&gt;
			for k=j+1,#clickList do&lt;br /&gt;
	checkCloseWindows();&lt;br /&gt;
	-- 1st Node&lt;br /&gt;
	checkBreak();&lt;br /&gt;
      checkAbort();&lt;br /&gt;
	local startSetTime = lsGetTimer();&lt;br /&gt;
	srSetMousePos(clickList[i][1], clickList[i][2]);&lt;br /&gt;
	lsSleep(clickDelay);&lt;br /&gt;
	findClosePopUp()&lt;br /&gt;
	srKeyEvent('A'); &lt;br /&gt;
&lt;br /&gt;
		-- 2nd Node&lt;br /&gt;
		checkBreak();&lt;br /&gt;
	       checkAbort();&lt;br /&gt;
		srSetMousePos(clickList[j][1], clickList[j][2]);&lt;br /&gt;
		lsSleep(clickDelay);&lt;br /&gt;
		findClosePopUp()&lt;br /&gt;
		srKeyEvent('A'); &lt;br /&gt;
&lt;br /&gt;
			-- 3rd Node&lt;br /&gt;
			checkBreak();&lt;br /&gt;
			checkAbort();&lt;br /&gt;
			srSetMousePos(clickList[k][1], clickList[k][2]);&lt;br /&gt;
			lsSleep(clickDelay);&lt;br /&gt;
			findClosePopUp()&lt;br /&gt;
			srKeyEvent('S'); &lt;br /&gt;
			lsSleep(popDelay);&lt;br /&gt;
			findClosePopUp();&lt;br /&gt;
&lt;br /&gt;
			worked = worked + 1&lt;br /&gt;
			local elapsedTime = lsGetTimer() - startMiningTime;&lt;br /&gt;
			local setTime = lsGetTimer() - startSetTime;&lt;br /&gt;
&lt;br /&gt;
		       local y = 10;&lt;br /&gt;
		       lsPrint(10, y, 0, 0.7, 0.7, 0xB0B0B0ff, &amp;quot;Hold Ctrl+Shift to end this script.&amp;quot;);&lt;br /&gt;
		       y = y +50&lt;br /&gt;
			lsPrint(5, y, 0, 0.7, 0.7, 0xffffffff, &amp;quot;[&amp;quot; .. worked .. &amp;quot;/&amp;quot; .. TotalCombos .. &amp;quot;] Nodes Worked: &amp;quot; .. i .. &amp;quot;, &amp;quot; .. j .. &amp;quot;, &amp;quot; .. k);&lt;br /&gt;
			y = y + 32;&lt;br /&gt;
			--lsPrint(5, y, 0, 0.7, 0.7, 0xffffffff, &amp;quot;Last Work Time: &amp;quot; .. math.floor(setTime/100)/10 .. &amp;quot; secs&amp;quot;);&lt;br /&gt;
			lsPrint(5, y, 0, 0.7, 0.7, 0xffffffff, &amp;quot;Last Work Time: &amp;quot; .. (setTime/100)/10 .. &amp;quot; secs&amp;quot;);&lt;br /&gt;
			y = y + 32;&lt;br /&gt;
			--lsPrint(5, y, 0, 0.7, 0.7, 0xffffffff, &amp;quot;Time Elapsed: &amp;quot; .. math.floor(elapsedTime/100)/10 .. &amp;quot; secs&amp;quot;);&lt;br /&gt;
			lsPrint(5, y, 0, 0.7, 0.7, 0xffffffff, &amp;quot;Current Time Elapsed: &amp;quot; .. (elapsedTime/100)/10 .. &amp;quot; secs&amp;quot;);&lt;br /&gt;
			y = y + 16;&lt;br /&gt;
			lsPrint(5, y, 0, 0.7, 0.7, 0xffffffff, &amp;quot;Last Time Elapsed: &amp;quot; .. miningTimeGUI);&lt;br /&gt;
			y = y + 32;&lt;br /&gt;
			lsPrint(5, y, 0, 0.7, 0.7, 0xffffffff, &amp;quot;Node Delay: &amp;quot; .. clickDelay .. &amp;quot; ms&amp;quot;);&lt;br /&gt;
			y = y + 16;&lt;br /&gt;
			lsPrint(5, y, 0, 0.7, 0.7, 0xffffffff, &amp;quot;Popup Delay: &amp;quot; .. popDelay .. &amp;quot; ms&amp;quot;);&lt;br /&gt;
			y = y + 32;&lt;br /&gt;
			lsPrint(5, y, 0, 0.7, 0.7, 0xffffffff, &amp;quot;Hold Shift to Abort and Return to Menu.&amp;quot;);&lt;br /&gt;
			y = y + 32;&lt;br /&gt;
			lsPrint(5, y, 0, 0.7, 0.7, 0xffffffff, &amp;quot;Don't touch mouse until finished!&amp;quot;);&lt;br /&gt;
			lsDoFrame();&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
  miningTime = lsGetTimer() - startMiningTime;&lt;br /&gt;
  timesworked = timesworked + 1;&lt;br /&gt;
    if autoWorkMine then&lt;br /&gt;
      workMine();&lt;br /&gt;
    end&lt;br /&gt;
  reset();&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function workMine()&lt;br /&gt;
      srSetMousePos(mineX, mineY);&lt;br /&gt;
      lsSleep(clickDelay);&lt;br /&gt;
      --Send 'W' key over Mine to Work it (Get new nodes)&lt;br /&gt;
      srKeyEvent('W'); &lt;br /&gt;
      sleepWithStatus(1000, &amp;quot;Working mine (Fetching new nodes)&amp;quot;);&lt;br /&gt;
	findClosePopUp();&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function checkCloseWindows()&lt;br /&gt;
-- Rare situations a click can cause a window to appear for a node, blocking the view to other nodes.&lt;br /&gt;
-- This is a safeguard to keep random windows that could appear, from remaining on screen and blocking the view of other nodes from being selected.&lt;br /&gt;
	srReadScreen();&lt;br /&gt;
	local closeWindows = findAllImages(&amp;quot;thisis.png&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
	  if #closeWindows &amp;gt; 0 then&lt;br /&gt;
		for i=#closeWindows, 1, -1 do&lt;br /&gt;
		  -- 2 right clicks in a row to close window (1st click pins it, 2nd unpins it&lt;br /&gt;
		  srClickMouseNoMove(closeWindows[i][0]+5, closeWindows[i][1]+10, true);&lt;br /&gt;
		  lsSleep(100);&lt;br /&gt;
		  srClickMouseNoMove(closeWindows[i][0]+5, closeWindows[i][1]+10, true);&lt;br /&gt;
		end&lt;br /&gt;
		lsSleep(clickDelay);&lt;br /&gt;
	  end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function reset()&lt;br /&gt;
  getPoints();&lt;br /&gt;
  clickSequence();&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function checkAbort()&lt;br /&gt;
  if lsShiftHeld() then&lt;br /&gt;
    sleepWithStatus(750, &amp;quot;Aborting ...&amp;quot;); &lt;br /&gt;
    reset();&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function findClosePopUp()&lt;br /&gt;
  lsSleep(popDelay);&lt;br /&gt;
    while 1 do&lt;br /&gt;
      checkBreak();&lt;br /&gt;
      srReadScreen();&lt;br /&gt;
      OK = srFindImage(&amp;quot;OK.png&amp;quot;);&lt;br /&gt;
	  if OK then  &lt;br /&gt;
	    srClickMouseNoMove(OK[0]+2,OK[1]+2, true);&lt;br /&gt;
	    lsSleep(clickDelay);&lt;br /&gt;
	  else&lt;br /&gt;
	    break;&lt;br /&gt;
	  end&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function promptDelays()&lt;br /&gt;
  local is_done = false;&lt;br /&gt;
  local count = 1;&lt;br /&gt;
  while not is_done do&lt;br /&gt;
	checkBreak();&lt;br /&gt;
	local y = 10;&lt;br /&gt;
	lsPrint(5, y, 0, 0.8, 0.8, 0xffffffff,&lt;br /&gt;
            &amp;quot;Key or Mouse to Select Nodes:&amp;quot;);&lt;br /&gt;
	y = y + 35;&lt;br /&gt;
	lsSetCamera(0,0,lsScreenX*1.3,lsScreenY*1.3);&lt;br /&gt;
	dropdown_cur_value = lsDropdown(&amp;quot;ArrangerDropDown&amp;quot;, 5, y, 0, 200, dropdown_cur_value, dropdown_values);&lt;br /&gt;
	lsSetCamera(0,0,lsScreenX*1.0,lsScreenY*1.0);&lt;br /&gt;
	y = y + 20;&lt;br /&gt;
	lsPrint(5, y, 0, 0.8, 0.8, 0xffffffff, &amp;quot;How many Nodes?&amp;quot;);&lt;br /&gt;
	y = y + 50;&lt;br /&gt;
	lsSetCamera(0,0,lsScreenX*1.3,lsScreenY*1.3);&lt;br /&gt;
	dropdown_ore_cur_value = lsDropdown(&amp;quot;ArrangerDropDown2&amp;quot;, 5, y, 0, 200, dropdown_ore_cur_value, dropdown_ore_values);&lt;br /&gt;
	lsSetCamera(0,0,lsScreenX*1.0,lsScreenY*1.0);&lt;br /&gt;
	y = y + 10;&lt;br /&gt;
      lsPrint(5, y, 0, 0.8, 0.8, 0xffffffff, &amp;quot;Node Delay (ms):&amp;quot;);&lt;br /&gt;
      is_done, clickDelay = lsEditBox(&amp;quot;delay&amp;quot;, 170, y, 0, 50, 30, 1.0, 1.0, 0x000000ff, 100);&lt;br /&gt;
      clickDelay = tonumber(clickDelay);&lt;br /&gt;
      if not clickDelay then&lt;br /&gt;
        is_done = false;&lt;br /&gt;
        lsPrint(10, y+22, 10, 0.7, 0.7, 0xFF2020ff, &amp;quot;MUST BE A NUMBER&amp;quot;);&lt;br /&gt;
        clickDelay = 100;&lt;br /&gt;
      end&lt;br /&gt;
	y = y + 40;&lt;br /&gt;
      lsPrint(5, y, 0, 0.8, 0.8, 0xffffffff, &amp;quot;Popup Delay (ms):&amp;quot;);&lt;br /&gt;
      is_done, popDelay = lsEditBox(&amp;quot;delay2&amp;quot;, 170, y, 0, 50, 30, 1.0, 1.0,&lt;br /&gt;
                                      0x000000ff, 250);&lt;br /&gt;
      popDelay = tonumber(popDelay);&lt;br /&gt;
      if not popDelay then&lt;br /&gt;
        is_done = false;&lt;br /&gt;
        lsPrint(10, y+22, 10, 0.7, 0.7, 0xFF2020ff, &amp;quot;MUST BE A NUMBER&amp;quot;);&lt;br /&gt;
        popDelay = 250;&lt;br /&gt;
      end&lt;br /&gt;
	y = y + 40;&lt;br /&gt;
      lsPrint(5, y, 0, 0.6, 0.6, 0xffffffff, &amp;quot;Node Delay: Pause between selecting each node.&amp;quot;);&lt;br /&gt;
	y = y + 16;&lt;br /&gt;
      lsPrint(5, y, 0, 0.6, 0.6, 0xffffffff, &amp;quot;Raise value to run slower (try increments of 25)&amp;quot;);&lt;br /&gt;
	y = y + 22;&lt;br /&gt;
      lsPrint(5, y, 0, 0.6, 0.6, 0xffffffff, &amp;quot;Popup Delay: Finalize, pause and wait for Popup.&amp;quot;);&lt;br /&gt;
	y = y + 16;&lt;br /&gt;
      lsPrint(5, y, 0, 0.6, 0.6, 0xffffffff, &amp;quot;Raise increments of 100 if you are laggy.&amp;quot;);&lt;br /&gt;
	y = y + 16;&lt;br /&gt;
      lsPrint(5, y, 0, 0.6, 0.6, 0xffffffff, &amp;quot;ie Clicking next nodes before previous ones break.&amp;quot;);&lt;br /&gt;
	y = y + 16;&lt;br /&gt;
      lsPrint(5, y, 0, 0.6, 0.6, 0xffffffff, &amp;quot;Popup Delay 1000 or 1500 might work better.&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    if lsButtonText(10, lsScreenY - 30, 0, 100, 0xFFFFFFff, &amp;quot;Next&amp;quot;) then&lt;br /&gt;
        is_done = 1;&lt;br /&gt;
    end&lt;br /&gt;
    if lsButtonText(lsScreenX - 110, lsScreenY - 30, 0, 100, 0xFFFFFFff,&lt;br /&gt;
                    &amp;quot;End script&amp;quot;) then&lt;br /&gt;
      error(quitMessage);&lt;br /&gt;
    end&lt;br /&gt;
  lsDoFrame();&lt;br /&gt;
  lsSleep(50);&lt;br /&gt;
  end&lt;br /&gt;
  return count;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kavad</name></author>
	</entry>
</feed>