v50 Steam/Premium information for editors
  • v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
  • Use this page to report any issues related to the migration.
This notice may be cached—the current version can be found here.

User:LockeslyLCrit/DiagonalMining.ahk

From Dwarf Fortress Wiki
Revision as of 14:27, 24 May 2010 by LockeslyLCrit (talk | contribs) (Minor bug fix)
Jump to navigation Jump to search

This is an AutoHotkey script for saving your fingers from much pain while attempting to mine diagonally.


; Diagonal Mining
; Hit Ctrl-Shift-S at a location to start mining.
;
; Hit Ctrl-Shift-W once finished with a loop to add 
; a passageway in the middle for better miner access.
;
; Ctrl-Shift-D will remove a diagonal line in case lag
; or other issues screws up your mining designations.
; If framerate is a major issue, replace all Sleep 30
; with a higher number.
;
; NOTE: Try to start in the top right area. This script
; will mine from NE to SW.
;
;
; Code by Lockesly L'Crit, heavily modified off of
; StrawberryBunny's Mineshaft script.

 
 ^+s::
x = 140
y = 4




;;Main Loop

Loop %y%
{
	Loop %x%
	{
		Send {Enter}
		Sleep 30
		
		Send {Enter}
		Sleep 30
		
		Send 1
		Sleep 30

	}
		{
		Send 9
		Sleep 30
		Send {Enter}
		Sleep 30
		Send {Up}
		Sleep 30
		Send {Up}
		Sleep 30
		Send {Up}
		Sleep 30
		Send {Up}
		Sleep 30
		Send {Up}
		Sleep 30
		Send {Enter}
		Sleep 30
		}
			{
			Send {Enter}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Enter}
			Sleep 30
			}
				Loop %x%
				{
				Send {Enter}
				Sleep 30
		
				Send {Enter}
				Sleep 30
		
				Send 9
				Sleep 30
				}
					{
					Send 1
					Sleep 30
					Send {Enter}
					Sleep 30
					Send {Up}
					Sleep 30
					Send {Up}
					Sleep 30
					Send {Up}
					Sleep 30
					Send {Up}
					Sleep 30
					Send {Up}
					Sleep 30
					Send {Enter}
					Sleep 30
					}
			{
			Send {Enter}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Down}
			Sleep 30
			Send {Enter}
			Sleep 30
			}
}
return


;;Adding passageways for miners in the middle

 ^+w::
w = 75
z = 35

{
	Send 8
	Sleep 30
	Send 8
	Sleep 30
	Send 8
	Sleep 30
	Send 8
	Sleep 30
	Send 8
	Sleep 30

		Loop %w%
		{
		Send 1
		Sleep 30
		}
			{
			Send {Enter}
			Sleep 30
			}
			Loop %z%
			{
			Send 8
			Sleep 30
			}
			{
			Send {Enter}
			Sleep 30
			}
}
return

 ^+d::
x = 140
{
Send x
Sleep 30
	Loop %x%
	{
		Send {Enter}
		Sleep 30
		
		Send {Enter}
		Sleep 30
		
		Send 1
		Sleep 30
	}
}
return