The Wiki for Tale 8 is in read-only mode and is available for archival and reference purposes only. Please visit the current Tale 11 Wiki in the meantime.

If you have any issues with this Wiki, please post in #wiki-editing on Discord or contact Brad in-game.

Difference between revisions of "User:Cegaiel/Macros"

From A Wiki in the Desert
Jump to navigation Jump to search
 
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
[[User:Cegaiel|Go Back]]
 
[[User:Cegaiel|Go Back]]
  
*'''LearnLessons.lua''' - Useful if someone is teaching you lessons and you're slow to pay attention. Will click the Yes and OK popups as they appear so lesson can continue in a timely manner.
+
=LearnLessons.lua=
 +
Useful if someone is teaching you lessons and you're slow to pay attention. Will click the Yes and OK popups as they appear so lesson can continue in a timely manner.
  
 
<pre>
 
<pre>
Line 10: Line 11:
 
local done = false
 
local done = false
 
 
 
 
 
askForWindow("This will always click OK or Yes whenever found. Typical when someone is teaching you lessons.") ;
 
askForWindow("This will always click OK or Yes whenever found. Typical when someone is teaching you lessons.") ;
  
while not done
+
while not done do
do
+
                -- checkBreak(); is already included in function sleepWithStatus
 
sleepWithStatus(100, "Looking for Yes/OK");
 
sleepWithStatus(100, "Looking for Yes/OK");
 
srReadScreen();
 
srReadScreen();
Line 22: Line 21:
 
if (pos) then
 
if (pos) then
 
safeClick(pos[0] + 1, pos[1] + 1);
 
safeClick(pos[0] + 1, pos[1] + 1);
sleepWithStatus(1000,"Found and clicked Yes!");
+
                        sleepWithStatus(1000,"Found and clicked Yes!");
 
end
 
end
  
Line 28: Line 27:
 
if (pos2) then
 
if (pos2) then
 
safeClick(pos2[0] + 1, pos2[1] + 1);
 
safeClick(pos2[0] + 1, pos2[1] + 1);
sleepWithStatus(1000,"Found and clicked OK!");
+
                        sleepWithStatus(1000,"Found and clicked OK!");
 +
end
 +
 
 +
        lsSleep(200);
 +
end
 +
end
 +
</pre>
 +
 
 +
 
 +
 
 +
=learnUniversity.lua=
 +
Quickly click all the Learn buttons at a University. '''Download [https://atitd.sharpnetwork.net/macros/learnuniversity/learnUniversity.zip learnUniversity.zip] which includes learn.png''' and learnUniversity.lua . You will need learn.png for this script to work!
 +
 
 +
<pre>
 +
dofile("common.inc");
 +
 
 +
 
 +
askText = "Quickly Learn all skills offered by a University\n\nClick on a University, Choose Learn to open the Technologies window.\n\nMake sure this window is not near the center, where popup boxes will occur!\n\nThe macro will do 5 passes of clicking all the Learn buttons and closing all the popups. The reason for multiple passes is to be sure there aren't multiple new levels for any existing skill you might have already";
 +
 
  
end
+
 
 +
function doit()
 +
  askForWindow(askText);
 +
 
 +
 
 +
  for i = 1,5 do
 +
  checkBreak();
 +
  srReadScreen();
 +
  learnButton = findAllImages("learn.png");
  
  
lsSleep(200);
+
    if #learnButton == 0 then
 +
      sleepWithStatus(750,"[" .. i .. "/5] No buttons found ...", nil, 0.7, 0.7);
 +
    else
 +
      sleepWithStatus(750,"[" .. i .. "/5] Clicking Learn buttons, closing popups ...", nil, 0.7, 0.7);
  
  
end
+
      for j=1,#learnButton do
 +
        checkBreak();
 +
        srClickMouseNoMove(learnButton[j][0], learnButton[j][1], 1);
 +
        lsSleep(100);
 +
        srReadScreen();
 +
        OK = srFindImage("OK.png");
 +
        -- Basic Shipbuilding might produce Cancel / Pay Tuition popup.
 +
        -- You'll need to manually Pay tuition on this one (assuming you have tuition in inventory)
 +
        Cancel = srFindImage("cancelThin.png");
 +
          if OK then
 +
            srClickMouseNoMove(OK[0],OK[1],1);
 +
          end
 +
          if Cancel then
 +
            srClickMouseNoMove(Cancel[0],Cancel[1],1);
 +
          end
 +
      end
 +
    end
 +
  end
  
 +
lsPlaySound("Complete.wav");
 
end
 
end
 
</pre>
 
</pre>
  
 
+
=Screenshot.lua=
*'''Screenshot.lua''' - Sends Alt+C to the game at intervals to take a screenshot. The frame000,001,002,etc.png file will appear in your ATITD GAME folder.
+
Sends Alt+C to the game at intervals to take a screenshot. The frame000,001,002,etc.png file will appear in your ATITD GAME folder.
  
 
<pre>
 
<pre>
Line 51: Line 97:
 
askText = "Presses Alt+C to create .png in ATITD folder";
 
askText = "Presses Alt+C to create .png in ATITD folder";
  
timer = 900000; --  15 mins
+
timer = 900000; --  15 mins - time is in ms. 60000 = 1 minute
 
 
 
 
 
 
  
 
function doit()
 
function doit()
Line 61: Line 104:
  
 
while 1 do
 
while 1 do
 +
          -- checkBreak(); is already included in function sleepWithStatus
 
  sleepWithStatus(timer,"Waiting to take screenshot...");
 
  sleepWithStatus(timer,"Waiting to take screenshot...");
 
  srKeyDown2(VK_MENU);
 
  srKeyDown2(VK_MENU);

Latest revision as of 09:55, 28 February 2019

Go Back

LearnLessons.lua

Useful if someone is teaching you lessons and you're slow to pay attention. Will click the Yes and OK popups as they appear so lesson can continue in a timely manner.

dofile("common.inc");


function doit()
	local done = false
	
	askForWindow("This will always click OK or Yes whenever found. Typical when someone is teaching you lessons.") ;

	while not done do
                -- checkBreak(); is already included in function sleepWithStatus
		sleepWithStatus(100, "Looking for Yes/OK");
		srReadScreen();

		local pos = srFindImage("yes3.png");
		if (pos) then
			safeClick(pos[0] + 1, pos[1] + 1);
                        sleepWithStatus(1000,"Found and clicked Yes!");
		end

		local pos2 = srFindImage("OK.png");
		if (pos2) then
			safeClick(pos2[0] + 1, pos2[1] + 1);
                        sleepWithStatus(1000,"Found and clicked OK!");
		end

         lsSleep(200);
	end
end


learnUniversity.lua

Quickly click all the Learn buttons at a University. Download learnUniversity.zip which includes learn.png and learnUniversity.lua . You will need learn.png for this script to work!

dofile("common.inc");


askText = "Quickly Learn all skills offered by a University\n\nClick on a University, Choose Learn to open the Technologies window.\n\nMake sure this window is not near the center, where popup boxes will occur!\n\nThe macro will do 5 passes of clicking all the Learn buttons and closing all the popups. The reason for multiple passes is to be sure there aren't multiple new levels for any existing skill you might have already";



function doit()
  askForWindow(askText);


  for i = 1,5 do
  checkBreak();
  srReadScreen();
  learnButton = findAllImages("learn.png");


    if #learnButton == 0 then
      sleepWithStatus(750,"[" .. i .. "/5] No buttons found ...", nil, 0.7, 0.7);
    else
      sleepWithStatus(750,"[" .. i .. "/5] Clicking Learn buttons, closing popups ...", nil, 0.7, 0.7);


      for j=1,#learnButton do
        checkBreak();
        srClickMouseNoMove(learnButton[j][0], learnButton[j][1], 1);
        lsSleep(100);
        srReadScreen();
        OK = srFindImage("OK.png");
        -- Basic Shipbuilding might produce Cancel / Pay Tuition popup.
        -- You'll need to manually Pay tuition on this one (assuming you have tuition in inventory)
        Cancel = srFindImage("cancelThin.png");
          if OK then
            srClickMouseNoMove(OK[0],OK[1],1);
          end
          if Cancel then
            srClickMouseNoMove(Cancel[0],Cancel[1],1);
          end
      end
    end
  end

lsPlaySound("Complete.wav");
end

Screenshot.lua

Sends Alt+C to the game at intervals to take a screenshot. The frame000,001,002,etc.png file will appear in your ATITD GAME folder.

dofile("common.inc");
dofile("constants.inc");


askText = "Presses Alt+C to create .png in ATITD folder";

timer = 900000; --  15 mins - time is in ms. 60000 = 1 minute

function doit()
	askForWindow(askText);


	while 1 do
          -- checkBreak(); is already included in function sleepWithStatus
	  sleepWithStatus(timer,"Waiting to take screenshot...");
	  srKeyDown2(VK_MENU);
	  lsSleep(100);
	  srKeyEvent('c');
	  lsSleep(100);
	  srKeyUp2(VK_MENU);
	end
end