The Wiki for Tale 4 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.

User:Cegaiel/Macros

From A Tale in the Desert
Jump to navigationJump to search

Information

More Public Macros or links to get AcTools or Auto Hotkey click here.

AC Tools

Collect Grass: Enter amount of grass to collect. Walks around in a circle and collects grass without moving too far from where you started. Great to get your Rhythmic_Strength skill up.

Auto Hotkey

Wheat: Set as many wheat beds as you like. It will Send the H and W hotkey over each bed every 7 seconds. Note you must have the chat minimized or else you will see HW appear in chat bar (will not send) repeatedly.

By the way, I took a shortcut and revamped an old mining script, so you will see alot of references to mining in the script, lol.


;Ctrl+Alt+W to start macro.  Ctrl+P to pause script

^p::Pause
^!w::



IfWinExist eGenesis Client
{
	WinActivate
	WinGetPos,,, winWidth, winHeight
	widthOffset := winWidth - 40

	Gui, +AlwaysOnTop +ToolWindow
	Gui, Font, bold
	Gui, Add, Text, vMineNumText, Recording mouse position
	Gui, Font, norm
	Gui, Add, Text,,
	( LTrim
	Hover and middle-click (Click mouse-wheel) on each wheat bed, one by one,
	until you've clicked on all the beds you want to use.
	Then click the OK button.


Note: Drag this box out of the way if any flax beds are hidden (BEFORE you start middle clicking).
But do not click the OK button (and dismiss this window) until you middle clicked all the wheat beds!

Also: If the cycle #/# box is covering any of your flax plants, afterwards, I suggest you drag that window away from them.

	)
	Gui, Add, Button, default gMineSetLoops, OK
	Gui, Show
	MineNum = 0
	WinGet, GameWinHandle, ID, eGenesis Client
	loop
	{
		WinActivate
		CoordMode, Mouse, Relative
		KeyWait, MButton, D
		KeyWait, MButton
		MouseGetPos, TestX, TestY, WinHandle
		if (WinHandle = GameWinHandle)
		{
			Gosub, MineRecord
		}
		else
		{
			Gui, Destroy
			break
		}
	}
	return

	MineRecord:
	MineNum++
	MouseGetPos, MineX%MineNum%, MineY%MineNum%
	GuiControl, Text, MineNumText, %MineNum% wheat beds captured

	MineMax := MineNum


	return

	MineSetLoops:
	Gui, Submit
	Gui, Destroy
	MineCycle = 0
	
	NumPulls = 10000


	Gui, +AlwaysOnTop +ToolWindow
	Gui, Font, bold
	Gui, Add, Text, vMineCycleText, Cycle %NumPulls% of %NumPulls%
	Gui, Font, norm
	Gui, Show
	GuiControl, Text, MineCycleText, Cycle %MineCycle% of %NumPulls%



	loop, %NumPulls%
	{
		WinActivate, eGenesis Client

				Sleep, 5500

			MineCycle++
			MineNum = 1

			loop, %MineMax% {



			MouseGetPos, OldMX, OldMY

			;BlockInput, Mouse
			MinePosX := MineX%MineNum%
			MinePosY := MineY%MineNum%
			MouseMove, %MinePosX%, %MinePosY%, 0
			Sleep, 500

			Send {H}
			Send {W}
			Sleep, 500	


			GuiControl, Text, MineCycleText, Cycle %MineCycle% of %NumPulls%
			;BlockInput, Default

	

			MouseMove, %OldMX%, %OldMY%, 0
			MineNum++
			}


if (MineNum = %MineMax%) {
MineNum = 1	
}



	}
	Gui, Destroy
	Gui, Add, Text,, Middle-click on this window to end the script.
	Gui, Show
	return
}