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.

Difference between revisions of "User:Cegaiel/Macros/SandMining/Code"

From A Tale in the Desert
Jump to navigationJump to search
Line 25: Line 25:
 
;This is the speed that it highlights your mine crystals
 
;This is the speed that it highlights your mine crystals
  
Delay = 200 ;Safe (lag) is 200+, Fast is 100 (fast computer, no lag)
+
Delay = 100 ;Safe (lag) is 200+, Fast is 100 (fast computer, no lag)
  
 
;If you have problems with it not closing the popup, then try adjusting this number higher.
 
;If you have problems with it not closing the popup, then try adjusting this number higher.
  
PopUpDelay = 300 ;Safe (lag) is 300+, Fast is 200 (fast computer, no lag)
+
PopUpDelay = 100 ;Safe (lag) is 200+, Fast is 100 (fast computer, no lag)
  
 
;This is the shade at which is searches the for the color of the popup box.
 
;This is the shade at which is searches the for the color of the popup box.
Line 61: Line 61:
 
if (Pattern == "")
 
if (Pattern == "")
 
{
 
{
Gui, Add, Text,,Last: N/A
+
Gui, Add, Text,,Last: N/A`nSets: N/A
 
} else {
 
} else {
Gui, Add, Text,,Last: %Pattern%
+
Gui, Add, Text,,Last: %Pattern%`nSets: %Sets%
 
}
 
}
  
Line 164: Line 164:
  
  
 +
Sets := 8
 
;Set1: A, B, C, D, E, F  
 
;Set1: A, B, C, D, E, F  
 
Stone1 := 1
 
Stone1 := 1
Line 249: Line 250:
 
;E = 6
 
;E = 6
 
;F = 7
 
;F = 7
 +
 +
Sets := 14
  
 
;Set1: A-1, B, C, F  
 
;Set1: A-1, B, C, F  
Line 361: Line 364:
 
;D: 6
 
;D: 6
 
;E: 7
 
;E: 7
 +
 +
Sets := 15
  
 
;Set1: C, D, E  
 
;Set1: C, D, E  
Line 481: Line 486:
 
;D: 6
 
;D: 6
 
;E: 7
 
;E: 7
 +
 +
Sets := 13
  
 
;Set1: A-1, B, C  
 
;Set1: A-1, B, C  
Line 588: Line 595:
 
;C-2 = 6
 
;C-2 = 6
 
;D = 7
 
;D = 7
 +
 +
Sets := 14
  
 
;Set1: A-1, B-1, C-1
 
;Set1: A-1, B-1, C-1
Line 701: Line 710:
 
;D: 7
 
;D: 7
  
 +
 +
Sets := 12
  
 
;Set1: A-1, A-2, A-3
 
;Set1: A-1, A-2, A-3
Line 799: Line 810:
 
;D: 7
 
;D: 7
  
 +
 +
Sets := 15
  
 
;Set1: A-1, B, C
 
;Set1: A-1, B, C
Line 909: Line 922:
 
else if (pattern == "3 Color (Triple + 2 Pair)")
 
else if (pattern == "3 Color (Triple + 2 Pair)")
 
{
 
{
 +
Sets := 0
 
Msgbox, No single stone can be worked 7 times on this pattern.`n`nConcede and just get a new workload...
 
Msgbox, No single stone can be worked 7 times on this pattern.`n`nConcede and just get a new workload...
 
}
 
}
Line 929: Line 943:
  
  
 +
Sets := 7
  
 
;Set1: A-1, B-1, C  
 
;Set1: A-1, B-1, C  
Line 994: Line 1,009:
 
;B: 6
 
;B: 6
 
;C: 7
 
;C: 7
 +
 +
Sets := 11
  
 
;Set1: A-1, A-2, A-3  
 
;Set1: A-1, A-2, A-3  
Line 1,074: Line 1,091:
 
GoSub, PatternSet
 
GoSub, PatternSet
 
}
 
}
 
 
 
 
 
 
 
  
  
Line 1,167: Line 1,177:
  
  
Sleep %Delay%
+
Sleep %PopUpDelay%
 
PixelSearch, Px, Py, %CenterX%, %CenterY%, %CenterX%, %CenterY%, 0xEBDDBB, %shade%, Fast|RGB
 
PixelSearch, Px, Py, %CenterX%, %CenterY%, %CenterX%, %CenterY%, 0xEBDDBB, %shade%, Fast|RGB
  

Revision as of 06:18, 28 October 2010

;Ctrl+P to pause script and Ctrl+P again to resume
;The AHK icon in system tray will turn red while paused.
;Ctrl+R to reload script
;Date: 10/27/2010
;Last Update: 10/28/2010
;Author: Cegaiel

;Info from Wiki:
;Alcyone - Topaz
;Celeano - Emerald
;Maia - Ruby
;Merope - Sapphire
;Sterope - Quartz
;Taygete - Opal
;Sinai - Diamond




;	// START CONFIGURATION AREA

	;Set the speed in microseconds (100 = 1/10th second, 1000 = 1 second, etc)
	;If you got a slower computer or lag, then try raising it 50 or 100 at a time, ie 200, 250, 300
	;This is the speed that it highlights your mine crystals

		Delay = 100  ;Safe (lag) is 200+, Fast is 100 (fast computer, no lag)

	;If you have problems with it not closing the popup, then try adjusting this number higher.

		PopUpDelay = 100  ;Safe (lag) is 200+, Fast is 100 (fast computer, no lag)

	;This is the shade at which is searches the for the color of the popup box.
	;If you find yourself running all the time, ie its confusing sand with the popup, then try lowering 5 at a time (ie 20,15,etc).
	;If you find it is not even seeing the popup box, then try raising 5 at a time and finetune 1 at a time (ie 30,35,etc)

		Shade = 24  ;Original is 25

;	// END CONFIGURATION AREA






IfWinExist eGenesis Client
{


	Start:
	MineNum := 0 
	WinActivate

	Gui, +AlwaysOnTop +ToolWindow
	Gui, Add, Text,, Choose Pattern:
	Gui, Add, DropDownList, vPattern Choose1, 7 Color|6 Color (1 Pair)|5 Color (2 Pair)|5 Color (Triple)|4 Color (3 Pair)|4 Color (Triple + Pair)|4 Color (Quadruple)|3 Color (Triple + 2 Pair)|3 Color (Quad + Pair)|3 Color (Quintuple)


	Gui, Add, Button, gRecord, NEXT
	
	if (Pattern == "")
	{
	Gui, Add, Text,,Last: N/A`nSets: N/A
	} else {
	Gui, Add, Text,,Last: %Pattern%`nSets: %Sets%
	}

	Gui, Add, Button, gHelp, HELP
	Gui, Show
	return




	Record:
	Gui, Submit
	Gui, Destroy
	Gui, +AlwaysOnTop +ToolWindow
	Gui, Font, bold
	Gui, Add, Text, vMineNumText, Set ore stone locations`n`nSelected Pattern: %pattern%
	Gui, Font, norm
	Gui, Add, Text,,
	( LTrim
	Hover and middle-click (Click mouse-wheel) all your ore stones.

	Make sure you click all quad colors FIRST!
	Make sure you click all triple colors SECOND!
	Make sure you click all pair colors THIRD!
	Then all the single colors, LAST!

	)

	Gui, Add, Button, default gMineSetLoops, OK
	Gui, Show



	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% ore stones captured`n`nSelected Pattern: %Pattern%
	TotalRacks := MineNum
	return


	MineSetLoops:
	Gui, Submit
	Gui, Destroy



			SetDefaultMouseSpeed, 0


			WinActivate, eGenesis Client
			WinWait, eGenesis Client
			WinGetActiveStats, win_Title, Xmax, Ymax, win_Xpos, win_Ypos 

			;Get coordinates, for your resolutions'  X,Y location of the popups that will occur later.
			CenterX := Floor(Xmax/2)
			CenterY := Floor(Ymax/2)+103



Sleep 1000

Stone4 = 0
Stone5 = 0
Stone6 = 0

;All of the if / else if statements of the 10 possible color combos...


if (pattern == "7 Color")
{
;KEY:
;A:1
;B:2
;C:3
;D:4
;E:5
;F:6
;G:7


Sets := 8
;Set1: A, B, C, D, E, F 
Stone1 := 1
Stone2 := 2
Stone3 := 3
Stone4 := 4
Stone5 := 5
Stone6 := 6
GoSub, PatternSet

;Set2: A, B, C, D, E, G 
Stone1 := 1
Stone2 := 2
Stone3 := 3
Stone4 := 4
Stone5 := 5
Stone6 := 7
GoSub, PatternSet

;Set3: A, B, C, D, F, G
Stone1 := 1
Stone2 := 2
Stone3 := 3
Stone4 := 4
Stone5 := 6
Stone6 := 7
GoSub, PatternSet

;Set4: A, B, C, E, F, G
Stone1 := 1
Stone2 := 2
Stone3 := 3
Stone4 := 5
Stone5 := 6
Stone6 := 7
GoSub, PatternSet

;Set5: A, B, D, E, F, G
Stone1 := 1
Stone2 := 2
Stone3 := 4
Stone4 := 5
Stone5 := 6
Stone6 := 7
GoSub, PatternSet

;Set6: A, C, D, E, F, G
Stone1 := 1
Stone2 := 3
Stone3 := 4
Stone4 := 5
Stone5 := 6
Stone6 := 7
GoSub, PatternSet

;Set7: B, C, D, E, F, G 
Stone1 := 2
Stone2 := 3
Stone3 := 4
Stone4 := 5
Stone5 := 6
Stone6 := 7
GoSub, PatternSet

;Set8: A, B, C, D, E, F, G Breaks all 7 stones
Stone1 := 1
Stone2 := 2
Stone3 := 3
Stone4 := 4
Stone5 := 5
Stone6 := 6
GoSub, PatternSet
}



else if (pattern == "6 Color (1 Pair)")
{
;KEY: Got 100%
;A-1 = 1
;A-2 = 2
;B = 3
;C = 4
;D = 5
;E = 6
;F = 7

Sets := 14

;Set1: A-1, B, C, F 
Stone1 := 1
Stone2 := 3
Stone3 := 4
Stone4 := 7
GoSub, PatternSet

;Set2: A-1, D, E 
Stone1 := 1
Stone2 := 5
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set3: A-1, C, D, E 
Stone1 := 1
Stone2 := 4
Stone3 := 5
Stone4 := 6
GoSub, PatternSet

;Set4: A-1, B, F 
Stone1 := 1
Stone2 := 3
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set5: A-1, D, E, F 
Stone1 := 1
Stone2 := 5
Stone3 := 6
Stone4 := 7
GoSub, PatternSet

;Set6: A-1, B, C 
Stone1 := 1
Stone2 := 3
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set7: A-1, B, E, F This workload will crumble stone A-1 
Stone1 := 1
Stone2 := 3
Stone3 := 6
Stone4 := 7
GoSub, PatternSet

;Set8: A-2, C, D
Stone1 := 2
Stone2 := 4
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set9: A-2, D, E 
Stone1 := 2
Stone2 := 5
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set10: A-2, B, C, F 
Stone1 := 2
Stone2 := 3
Stone3 := 4
Stone4 := 7
GoSub, PatternSet

;Set11: A-2, C, F 
Stone1 := 2
Stone2 := 4
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set12: A-2, B, E, D 
Stone1 := 2
Stone2 := 3
Stone3 := 6
Stone4 := 5
GoSub, PatternSet

;Set13: A-2, B, E This workload will crumble stone B & E
Stone1 := 2
Stone2 := 3
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set14: A-2, C, D, F This workload will crumble the remaining stones
Stone1 := 2
Stone2 := 4
Stone3 := 5
Stone4 := 7
GoSub, PatternSet
}



else if (pattern == "5 Color (2 Pair)")
{
;KEY: Hit 100%
;A-1: 1
;A-2: 2
;B-1: 3
;B-2: 4
;C: 5
;D: 6
;E: 7

Sets := 15

;Set1: C, D, E 
Stone1 := 5
Stone2 := 6
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set2: C, A-1, B-1
Stone1 := 5
Stone2 := 1
Stone3 := 3
Stone4 := 0
GoSub, PatternSet

;Set3: C, A-1, B-2 
Stone1 := 5
Stone2 := 1
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set4: C, A-2, B-1 
Stone1 := 5
Stone2 := 2
Stone3 := 3
Stone4 := 0
GoSub, PatternSet

;Set5: C, A-2, B-2 
Stone1 := 5
Stone2 := 2
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set6: D, A-1, B-1 
Stone1 := 6
Stone2 := 1
Stone3 := 3
Stone4 := 0
GoSub, PatternSet

;Set7: D, A-1, B-2 
Stone1 := 6
Stone2 := 1
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set8: D, A-2, B-1 
Stone1 := 6
Stone2 := 2
Stone3 := 3
Stone4 := 0
GoSub, PatternSet

;Set9: D, A-2, B-2 
Stone1 := 6
Stone2 := 2
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set10: E, A-1, B-1
Stone1 := 7
Stone2 := 1
Stone3 := 3
Stone4 := 0
GoSub, PatternSet

;Set11: E, A-1, B-2 
Stone1 := 7
Stone2 := 1
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set12: E, A-2, B-1 
Stone1 := 7
Stone2 := 2
Stone3 := 3
Stone4 := 0
GoSub, PatternSet

;Set13: E, A-2, B-2 
Stone1 := 7
Stone2 := 2
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set14: A-1, B-1, C, D, E Breaks A-1 & B-1 
Stone1 := 1
Stone2 := 3
Stone3 := 5
Stone4 := 6
Stone5 := 7
GoSub, PatternSet

;Set15: A-2, B-2, C, D, E Breaks the remaining 5 stones
Stone1 := 2
Stone2 := 4
Stone3 := 5
Stone4 := 6
Stone5 := 7
GoSub, PatternSet
}


else if (pattern == "5 Color (Triple)")
{
;KEY:
;A-1: 1
;A-2: 2
;A-3: 3
;B: 4
;C: 5
;D: 6
;E: 7

Sets := 13

;Set1: A-1, B, C 
Stone1 := 1
Stone2 := 4
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set2: A-1, B, D 
Stone1 := 1
Stone2 := 4
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set3: A-1, B, E
Stone1 := 1
Stone2 := 4
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set4: A-1, C, D
Stone1 := 1
Stone2 := 5
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set5: A-1, C, E 
Stone1 := 1
Stone2 := 5
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set6: A-1, D, E 
Stone1 := 1
Stone2 := 6
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set7: A-2, B, C 
Stone1 := 2
Stone2 := 4
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set8: A-2, B, D
Stone1 := 2
Stone2 := 4
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set9: A-2, B, E 
Stone1 := 2
Stone2 := 4
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set10: A-2, C, D
Stone1 := 2
Stone2 := 5
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set11: A-2, C, E 
Stone1 := 2
Stone2 := 5
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set12: A-2, D, E
Stone1 := 2
Stone2 := 6
Stone3 := 7
Stone4 := 0
GoSub, PatternSet


;Set13: A-1, B, C, D, E Breaks all these 5 stones 
Stone1 := 1
Stone2 := 4
Stone3 := 5
Stone4 := 6
Stone5 := 7
GoSub, PatternSet
}



else if (pattern == "4 Color (3 Pair)")
{
;KEY:
;A-1 = 1
;A-2 = 2
;B-1 = 3
;B-2 = 4
;C-1 = 5
;C-2 = 6
;D = 7

Sets := 14

;Set1: A-1, B-1, C-1
Stone1 := 1
Stone2 := 3
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set2: A-2, B-2, C-2, D 
Stone1 := 2
Stone2 := 4
Stone3 := 6
Stone4 := 7
GoSub, PatternSet

;Set3: A-1, B-1, C-2 
Stone1 := 1
Stone2 := 3
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set4: A-2, B-2, C-1, D 
Stone1 := 2
Stone2 := 4
Stone3 := 5
Stone4 := 7
GoSub, PatternSet

;Set5: A-1, B-2, C-1 
Stone1 := 1
Stone2 := 4
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set6: A-2, B-1, C-2, D 
Stone1 := 2
Stone2 := 3
Stone3 := 6
Stone4 := 7
GoSub, PatternSet

;Set7: A-1, B-2, C-2 
Stone1 := 1
Stone2 := 4
Stone3 := 6
Stone4 := 0

;Set8: A-2, B-1, C-1, D 
Stone1 := 2
Stone2 := 3
Stone3 := 5
Stone4 := 7
GoSub, PatternSet

;Set9: A-2, B-1, C-1 
Stone1 := 2
Stone2 := 3
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set10: A-1, B-2, C-2, D 
Stone1 := 1
Stone2 := 4
Stone3 := 6
Stone4 := 7
GoSub, PatternSet

;Set11: A-2, B-1, C-2 
Stone1 := 2
Stone2 := 3
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set12: A-1, B-2, C-1, D 
Stone1 := 1
Stone2 := 4
Stone3 := 5
Stone4 := 7
GoSub, PatternSet

;Set13: A-2, B-2, C-1 This will break all 3 stones 
Stone1 := 2
Stone2 := 4
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set14: A-1, B-1, C-2, D This will break all 4 stones
Stone1 := 1
Stone2 := 3
Stone3 := 6
Stone4 := 7
GoSub, PatternSet
}




else if (pattern == "4 Color (Triple + Pair)")
{
;KEY:
;A-1: 1
;A-2: 2
;A-3: 3
;B-1: 4
;B-2: 5
;C: 6
;D: 7


Sets := 12

;Set1: A-1, A-2, A-3
Stone1 := 1
Stone2 := 2
Stone3 := 3
Stone4 := 0
GoSub, PatternSet

;Set2: A-1, B-1, C 
Stone1 := 1
Stone2 := 4
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set3: A-1, B-1, D
Stone1 := 1
Stone2 := 4
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set4: A-1, B-2, C 
Stone1 := 1
Stone2 := 5
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set5: A-1, B-2, D 
Stone1 := 1
Stone2 := 5
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set6: A-1, C, D 
Stone1 := 1
Stone2 := 6
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set7: A-2, B-1, C 
Stone1 := 2
Stone2 := 4
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set8: A-2, B-1, D 
Stone1 := 2
Stone2 := 4
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set9: A-3, B-1, C 
Stone1 := 3
Stone2 := 4
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set10: A-3, B-1, D 
Stone1 := 3
Stone2 := 4
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set11: A-2, C, D 
Stone1 := 2
Stone2 := 6
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set12: A-1, B-1, C, D Breaks these 4 stones
Stone1 := 1
Stone2 := 4
Stone3 := 6
Stone4 := 7
GoSub, PatternSet
}


else if (pattern == "4 Color (Quadruple)")
{
;KEY:
;A-1: 1
;A-2: 2
;A-3: 3
;A-4: 4
;B: 5
;C: 6
;D: 7


Sets := 15

;Set1: A-1, B, C
Stone1 := 1
Stone2 := 5
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set2: A-1, B, D 
Stone1 := 1
Stone2 := 5
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set3: A-1, C, D 
Stone1 := 1
Stone2 := 6
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set4: A-2, B, C 
Stone1 := 2
Stone2 := 5
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set5: A-2, B, D 
Stone1 := 2
Stone2 := 5
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set6: A-2, C, D
Stone1 := 2
Stone2 := 6
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set7: A-3, B, C 
Stone1 := 3
Stone2 := 5
Stone3 := 6
Stone4 := 0
GoSub, PatternSet

;Set8: A-3, B, D 
Stone1 := 3
Stone2 := 5
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set9: A-3, C, D
Stone1 := 3
Stone2 := 6
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set10: A-4, B, C, D Breaks B, C, D
Stone1 := 4
Stone2 := 5
Stone3 := 6
Stone4 := 7
GoSub, PatternSet

;Set11: A-1, A-2, A-3
Stone1 := 1
Stone2 := 2
Stone3 := 3
Stone4 := 0
GoSub, PatternSet

;Set12: A-1, A-2, A-4
Stone1 := 1
Stone2 := 2
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set13: A-1, A-3, A-4
Stone1 := 1
Stone2 := 3
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set14: A-2, A-3, A-4 
Stone1 := 2
Stone2 := 3
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set15: A-1, A-2, A-3, A-4 Breaks A-1, A-2, A-3
Stone1 := 1
Stone2 := 2
Stone3 := 3
Stone4 := 4
GoSub, PatternSet
}


else if (pattern == "3 Color (Triple + 2 Pair)")
{
Sets := 0
Msgbox, No single stone can be worked 7 times on this pattern.`n`nConcede and just get a new workload...
}





else if (pattern == "3 Color (Quad + Pair)")
{
;KEY
;A-1: 1
;A-2: 2
;A-3: 3
;A-4: 4
;B-1: 5
;B-2: 6
;C: 7
;D: 8


Sets := 7

;Set1: A-1, B-1, C 
Stone1 := 1
Stone2 := 5
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set2: A-1, B-2, C 
Stone1 := 1
Stone2 := 6
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set3: A-2, B-1, C 
Stone1 := 2
Stone2 := 5
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set4: A-2, B-2, C 
Stone1 := 2
Stone2 := 6
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set5: A-3, B-1, C
Stone1 := 3
Stone2 := 5
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set6: A-3, B-2, C 
Stone1 := 3
Stone2 := 6
Stone3 := 7
Stone4 := 0
GoSub, PatternSet

;Set7: A-4, B-1, C
Stone1 := 4
Stone2 := 5
Stone3 := 7
Stone4 := 0
GoSub, PatternSet
}



else if (pattern == "3 Color (Quintuple)")
{
;5 of same color

;KEY:
;A-1: 1
;A-2: 2
;A-3: 3
;A-4: 4
;A-5: 5
;B: 6
;C: 7

Sets := 11

;Set1: A-1, A-2, A-3 
Stone1 := 1
Stone2 := 2
Stone3 := 3
Stone4 := 0
GoSub, PatternSet

;Set2: A-1, A-2, A-4 
Stone1 := 1
Stone2 := 2
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set3: A-1, A-2, A-5
Stone1 := 1
Stone2 := 2
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set4: A-1, A-3, A-4 
Stone1 := 1
Stone2 := 3
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set5: A-1, A-3, A-5
Stone1 := 1
Stone2 := 3
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set6: A-1, A-4, A-5 
Stone1 := 1
Stone2 := 4
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set7: A-2, A-3, A-4 
Stone1 := 2
Stone2 := 3
Stone3 := 4
Stone4 := 0
GoSub, PatternSet

;Set8: A-2, A-3, A-5 
Stone1 := 2
Stone2 := 3
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set9: A-2, A-4, A-5
Stone1 := 2
Stone2 := 4
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set10: A-3, A-4, A-5 
Stone1 := 3
Stone2 := 4
Stone3 := 5
Stone4 := 0
GoSub, PatternSet

;Set11: A-1, A-2, A-3, A-4, A-5 Breaks A-1, A-2, A-3, A-4, A-5
Stone1 := 1
Stone2 := 2
Stone3 := 3
Stone4 := 4
Stone5 := 5

GoSub, PatternSet
}


else
{
Msgbox, This pattern is not recorded yet... Please /chat Cegaiel and inform him of the error.`n`nPlease report that you were working on the %Pattern% pattern.
}




;Not necessary, just waiting a moment before bring up the menu again, so I can read the last of the floating black text :)
Sleep 2000


;Bring up the Menu again (Force Restart)
;Msgbox, Debug Mode - This will be removed later`n`nPattern Completed: %Pattern%`n`n`nWork the Mine again.

Gosub, Start
return
}





PatternSet:

MouseMove, MineX%Stone1%, MineY%Stone1%
Sleep %Delay%
Send {A}
Sleep %Delay%

MouseMove, MineX%Stone2%, MineY%Stone2%
Sleep %Delay%
Send {A}
Sleep %Delay%

MouseMove, MineX%Stone3%, MineY%Stone3%
Sleep %Delay%
Send {A}
Sleep %Delay%


if Stone4 > 0
{
MouseMove, MineX%Stone4%, MineY%Stone4%
Sleep %Delay%
Send {A}
Sleep %Delay%
}

if Stone5 > 0
{
MouseMove, MineX%Stone5%, MineY%Stone5%
Sleep %Delay%
Send {A}
Sleep %Delay%
}

if Stone6 > 0
{
MouseMove, MineX%Stone6%, MineY%Stone6%
Sleep %Delay%
Send {A}
Sleep %Delay%
}


Send {S}
Sleep %Delay%



GoSub, Popup


return




			Popup:

			;Search for the RBG color of 0xECDFBD (Same as HTML code: #ECDFBD)


			Sleep %PopUpDelay%
			PixelSearch, Px, Py, %CenterX%, %CenterY%, %CenterX%, %CenterY%, 0xEBDDBB, %shade%, Fast|RGB

			if ErrorLevel = 0
			{
			Sleep %PopupDelay%
			MouseMove, %CenterX%, %CenterY%
			Sleep %PopupDelay%
			Click
			Sleep %PopupDelay%
			}
			return



	Help:
	Gui, Destroy

	Msgbox, Ctrl + R = Reload`nCtrl + P to Pause, Ctrl + P again to Resume.`n`n`nConsistently has all 7 stones crumble (These are most desireable):`n`n6 Color (1 Pair)`n5 Color (2 Pairs)`n`n`nNote the "3 Color (Triple + 2 Pair)" has no single stone that can be worked 7 times.`nDo not even bother with this pattern. It will tell you that anyways, if you choose it.


	Reload
	return


^r::reload
^p::Pause