MENU "Global Commands" {
	STATE "Global Commands" GLOBAL {
		COMMAND "Drag <Direction> <1To200>" {
			SCRIPT {
				IF _arg2 = "1 hundred" THEN _arg2 = Str$(100)
				IF _arg2 = "2 hundred" THEN _arg2 = Str$(200)
				MouseGrid 0
				div#=1.41
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg2 ) * 3
				if _arg1 = "Up"     then yPos& = yPos& - nDistance&
				if _arg1 = "Down"   then yPos& = yPos& + nDistance&
				if _arg1 = "Left"   then xPos& = xPos& - nDistance&
				if _arg1 = "Right"  then xPos& = xPos& + nDistance&
				if _arg1 = "Upper Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Upper Left" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Upper Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Upper Right" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then yPos& = (yPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then yPos& = (yPos& + nDistance&)/div#
				RememberPoint
				Wait 10
				SetMousePosition 2, xPos&, yPos&
				Wait 10
				DragToPoint 1
			}
		}

		COMMAND "Mouse <Direction> <1To200> <Direction> <1To200> <MouseAction>" {
			SCRIPT {
				IF _arg2 = "1 hundred" THEN _arg2 = Str$(100)
				IF _arg2 = "2 hundred" THEN _arg2 = Str$(200)
				MouseGrid 0
				div#=1.41
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg2 ) * 3
				if _arg1 = "Up"     then yPos& = yPos& - nDistance&
				if _arg1 = "Down"   then yPos& = yPos& + nDistance&
				if _arg1 = "Left"   then xPos& = xPos& - nDistance&
				if _arg1 = "Right"  then xPos& = xPos& + nDistance&
				if _arg1 = "Upper Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Upper Left" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Upper Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Upper Right" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then yPos& = (yPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then yPos& = (yPos& + nDistance&)/div#
				SetMousePosition 2, xPos&, yPos&
				
				IF _arg4 = "1 hundred" THEN _arg4 = Str$(100)
				IF _arg4 = "2 hundred" THEN _arg4 = Str$(200)
				
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg4 ) * 3
				if _arg3 = "Up"     then yPos& = yPos& - nDistance&
				if _arg3 = "Down"   then yPos& = yPos& + nDistance&
				if _arg3 = "Left"   then xPos& = xPos& - nDistance&
				if _arg3 = "Right"  then xPos& = xPos& + nDistance&
				if _arg3 = "Upper Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg3 = "Upper Left" then yPos& = (yPos& - nDistance&)/div#
				if _arg3 = "Upper Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg3 = "Upper Right" then yPos& = (yPos& - nDistance&)/div#
				if _arg3 = "Lower Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg3 = "Lower Left" then yPos& = (yPos& + nDistance&)/div#
				if _arg3 = "Lower Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg3 = "Lower Right" then yPos& = (yPos& + nDistance&)/div#
				SetMousePosition 2, xPos&, yPos&
				
				Wait 10
				HeardWord "Mouse", _arg5
			}
		}

		COMMAND "Mouse <Direction> <1To200> <Direction> <1To200>" {
			SCRIPT {
				IF _arg2 = "1 hundred" THEN _arg2 = Str$(100)
				IF _arg2 = "2 hundred" THEN _arg2 = Str$(200)
				MouseGrid 0
				div#=1.41
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg2 ) * 3
				if _arg1 = "Up"     then yPos& = yPos& - nDistance&
				if _arg1 = "Down"   then yPos& = yPos& + nDistance&
				if _arg1 = "Left"   then xPos& = xPos& - nDistance&
				if _arg1 = "Right"  then xPos& = xPos& + nDistance&
				if _arg1 = "Upper Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Upper Left" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Upper Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Upper Right" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then yPos& = (yPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then yPos& = (yPos& + nDistance&)/div#
				SetMousePosition 2, xPos&, yPos&
				
				IF _arg4 = "1 hundred" THEN _arg4 = Str$(100)
				IF _arg4 = "2 hundred" THEN _arg4 = Str$(200)
				
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg4 ) * 3
				if _arg3 = "Up"     then yPos& = yPos& - nDistance&
				if _arg3 = "Down"   then yPos& = yPos& + nDistance&
				if _arg3 = "Left"   then xPos& = xPos& - nDistance&
				if _arg3 = "Right"  then xPos& = xPos& + nDistance&
				if _arg3 = "Upper Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg3 = "Upper Left" then yPos& = (yPos& - nDistance&)/div#
				if _arg3 = "Upper Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg3 = "Upper Right" then yPos& = (yPos& - nDistance&)/div#
				if _arg3 = "Lower Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg3 = "Lower Left" then yPos& = (yPos& + nDistance&)/div#
				if _arg3 = "Lower Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg3 = "Lower Right" then yPos& = (yPos& + nDistance&)/div#
				SetMousePosition 2, xPos&, yPos&
			}
		}

		COMMAND "Mouse <Direction> <1To200> <MouseAction>" {
			SCRIPT {
				IF _arg2 = "1 hundred" THEN _arg2 = Str$(100)
				IF _arg2 = "2 hundred" THEN _arg2 = Str$(200)
				MouseGrid 0
				div#=1.41
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg2 ) * 3
				if _arg1 = "Up"     then yPos& = yPos& - nDistance&
				if _arg1 = "Down"   then yPos& = yPos& + nDistance&
				if _arg1 = "Left"   then xPos& = xPos& - nDistance&
				if _arg1 = "Right"  then xPos& = xPos& + nDistance&
				if _arg1 = "Upper Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Upper Left" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Upper Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Upper Right" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then yPos& = (yPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then yPos& = (yPos& + nDistance&)/div#
				SetMousePosition 2, xPos&, yPos&
				
				Wait 10
				HeardWord "Mouse", _arg3
			}
		}

		COMMAND "Mouse <Direction> <1To200> And <Direction> <1To200> <MouseAction>" {
			SCRIPT {
				IF _arg2 = "1 hundred" THEN _arg2 = Str$(100)
				IF _arg2 = "2 hundred" THEN _arg2 = Str$(200)
				MouseGrid 0
				div#=1.41
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg2 ) * 3
				if _arg1 = "Up"     then yPos& = yPos& - nDistance&
				if _arg1 = "Down"   then yPos& = yPos& + nDistance&
				if _arg1 = "Left"   then xPos& = xPos& - nDistance&
				if _arg1 = "Right"  then xPos& = xPos& + nDistance&
				if _arg1 = "Upper Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Upper Left" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Upper Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Upper Right" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then yPos& = (yPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then yPos& = (yPos& + nDistance&)/div#
				SetMousePosition 2, xPos&, yPos&
				
				IF _arg4 = "1 hundred" THEN _arg4 = Str$(100)
				IF _arg4 = "2 hundred" THEN _arg4 = Str$(200)
				
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg4 ) * 3
				if _arg3 = "Up"     then yPos& = yPos& - nDistance&
				if _arg3 = "Down"   then yPos& = yPos& + nDistance&
				if _arg3 = "Left"   then xPos& = xPos& - nDistance&
				if _arg3 = "Right"  then xPos& = xPos& + nDistance&
				if _arg3 = "Upper Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg3 = "Upper Left" then yPos& = (yPos& - nDistance&)/div#
				if _arg3 = "Upper Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg3 = "Upper Right" then yPos& = (yPos& - nDistance&)/div#
				if _arg3 = "Lower Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg3 = "Lower Left" then yPos& = (yPos& + nDistance&)/div#
				if _arg3 = "Lower Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg3 = "Lower Right" then yPos& = (yPos& + nDistance&)/div#
				SetMousePosition 2, xPos&, yPos&
				
				Wait 10
				HeardWord "Mouse", _arg5
			}
		}

		COMMAND "Mouse <Direction> <1To200> And <Direction> <1To200>" {
			SCRIPT {
				IF _arg2 = "1 hundred" THEN _arg2 = Str$(100)
				IF _arg2 = "2 hundred" THEN _arg2 = Str$(200)
				MouseGrid 0
				div#=1.41
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg2 ) * 3
				if _arg1 = "Up"     then yPos& = yPos& - nDistance&
				if _arg1 = "Down"   then yPos& = yPos& + nDistance&
				if _arg1 = "Left"   then xPos& = xPos& - nDistance&
				if _arg1 = "Right"  then xPos& = xPos& + nDistance&
				if _arg1 = "Upper Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Upper Left" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Upper Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Upper Right" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then yPos& = (yPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then yPos& = (yPos& + nDistance&)/div#
				SetMousePosition 2, xPos&, yPos&
				
				IF _arg4 = "1 hundred" THEN _arg4 = Str$(100)
				IF _arg4 = "2 hundred" THEN _arg4 = Str$(200)
				
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg4 ) * 3
				if _arg3 = "Up"     then yPos& = yPos& - nDistance&
				if _arg3 = "Down"   then yPos& = yPos& + nDistance&
				if _arg3 = "Left"   then xPos& = xPos& - nDistance&
				if _arg3 = "Right"  then xPos& = xPos& + nDistance&
				if _arg3 = "Upper Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg3 = "Upper Left" then yPos& = (yPos& - nDistance&)/div#
				if _arg3 = "Upper Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg3 = "Upper Right" then yPos& = (yPos& - nDistance&)/div#
				if _arg3 = "Lower Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg3 = "Lower Left" then yPos& = (yPos& + nDistance&)/div#
				if _arg3 = "Lower Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg3 = "Lower Right" then yPos& = (yPos& + nDistance&)/div#
				SetMousePosition 2, xPos&, yPos&
			}
		}

		COMMAND "Mouse <Direction> <1To200>" {
			SCRIPT {
				IF _arg2 = "1 hundred" THEN _arg2 = Str$(100)
				IF _arg2 = "2 hundred" THEN _arg2 = Str$(200)
				MouseGrid 0
				div#=1.41
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg2 ) * 3
				if _arg1 = "Up"     then yPos& = yPos& - nDistance&
				if _arg1 = "Down"   then yPos& = yPos& + nDistance&
				if _arg1 = "Left"   then xPos& = xPos& - nDistance&
				if _arg1 = "Right"  then xPos& = xPos& + nDistance&
				if _arg1 = "Upper Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Upper Left" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Upper Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Upper Right" then yPos& = (yPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then xPos& = (xPos& - nDistance&)/div#
				if _arg1 = "Lower Left" then yPos& = (yPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then xPos& = (xPos& + nDistance&)/div#
				if _arg1 = "Lower Right" then yPos& = (yPos& + nDistance&)/div#
				SetMousePosition 2, xPos&, yPos&
			}
		}

		COMMAND "Mouse Position <GridSpot>" {
			SCRIPT {
				barPos& = instr(_arg1,"|")
				bslashPos& = instr(_arg1,"\")
				xPos$ = mid$(_arg1,0,barPos&-1)
				yPos$ = mid$(_arg1, barPos&, bslashPos&-barPos&-1)
				
				SetMousePosition 0, xPos$, yPos$
			}
		}

		COMMAND "Mouse <MouseAction>" {
			SCRIPT {
				if _arg1 = "Click" then ButtonClick 1,1
				if _arg1 = "Double Click" then ButtonClick 1,2
				if _arg1 = "Left Click" then ButtonClick 1,1
				if _arg1 = "Right Click" then ButtonClick 2,1
				if _arg1 = "Mark" then
				RememberPoint
				MouseGrid 0
				end if
				if _arg1 = "Go" then MouseGrid 0
				if _arg1 = "Drag" then DragToPoint 1
				if _arg1 = "Shift Drag" then
				ShiftKey 1,1
				DragToPoint 1
				ShiftKey 1,0
				end if
				if _arg1 = "Control Drag" then
				ShiftKey 2,1
				DragToPoint 1
				ShiftKey 2,0
				end if
				
				if _arg1= "Control Click" then
				ShiftKey 2,1
				ButtonClick 1,1
				ShiftKey 2,0
				end if
				
				if _arg1= "Shift Click" then
				ShiftKey 1,1
				ButtonClick 1,1
				ShiftKey 1,0
				end if
			}
		}

		COMMAND "Nudge <Direction> <1To200> <MouseAction>" {
			SCRIPT {
				MouseGrid 0
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg2 )
				if _arg1 = "Up"     then yPos& = yPos& - nDistance&
				if _arg1 = "Down"   then yPos& = yPos& + nDistance&
				if _arg1 = "Left"   then xPos& = xPos& - nDistance&
				if _arg1 = "Right"  then xPos& = xPos& + nDistance&
				if _arg1 = "Upper Left"     then xPos& = xPos& - nDistance&
				if _arg1 = "Upper Left" then yPos& = yPos& - nDistance&
				if _arg1 = "Upper Right" then xPos& = xPos& + nDistance&
				if _arg1 = "Upper Right" then yPos& = yPos& - nDistance&
				if _arg1 = "Lower Left"     then xPos& = xPos& - nDistance&
				if _arg1 = "Lower Left"     then yPos& = yPos& + nDistance&
				if _arg1 = "Lower Right" then xPos& = xPos& + nDistance&
				if _arg1 = "Lower Right" then yPos& = yPos& + nDistance&
				SetMousePosition 2, xPos&, yPos&
				HeardWord "Mouse", _arg3
			}
		}

		COMMAND "Nudge <Direction> <1To200>" {
			SCRIPT {
				MouseGrid 0
				xPos& = 0
				yPos& = 0
				nDistance& = Val( _arg2 )
				if _arg1 = "Up"     then yPos& = yPos& - nDistance&
				if _arg1 = "Down"   then yPos& = yPos& + nDistance&
				if _arg1 = "Left"   then xPos& = xPos& - nDistance&
				if _arg1 = "Right"  then xPos& = xPos& + nDistance&
				if _arg1 = "Upper Left"     then xPos& = xPos& - nDistance&
				if _arg1 = "Upper Left" then yPos& = yPos& - nDistance&
				if _arg1 = "Upper Right" then xPos& = xPos& + nDistance&
				if _arg1 = "Upper Right" then yPos& = yPos& - nDistance&
				if _arg1 = "Lower Left"     then xPos& = xPos& - nDistance&
				if _arg1 = "Lower Left"     then yPos& = yPos& + nDistance&
				if _arg1 = "Lower Right" then xPos& = xPos& + nDistance&
				if _arg1 = "Lower Right" then yPos& = yPos& + nDistance&
				SetMousePosition 2, xPos&, yPos&
			}
		}

		LIST "Direction" {
			"Up"
			"Down"
			"Left"
			"Right"
			"Upper Left"
			"Upper Right"
			"Lower Left"
			"Lower Right"
		}

		LIST "MouseAction" {
			"Double Click"
			"Drag"
			"Go"
			"Mark"
			"Left Click"
			"Right Click"
			"Control Drag"
			"Shift Drag"
			"Control Click"
			"Shift Click"
		}

		LIST "GridSpot" {
			"135|100\\One"
			"400|100\\Two"
			"670|100\\Three"
			"135|300\\Four"
			"400|300\\Five"
			"670|300\\Six"
			"400|500\\Eight"
			"135|500\\Seven"
			"670|500\\Nine"
			"268|200\\Ten"
			"400|200\\Eleven"
			"533|200\\Twelve"
			"533|300\\Thirteen"
			"533|400\\Fourteen"
			"400|400\\Fifteen"
			"268|400\\Sixteen"
			"268|300\\Seventeen"
			"400|320\\Twenty"
		}

		LIST "1To200" {
			"1 hundred"
			"2 hundred"
			"1"
			"2"
			"3"
			"4"
			"5"
			"6"
			"7"
			"8"
			"9"
			"10"
			"11"
			"12"
			"13"
			"14"
			"15"
			"16"
			"17"
			"18"
			"19"
			"20"
			"21"
			"22"
			"23"
			"24"
			"25"
			"26"
			"27"
			"28"
			"29"
			"30"
			"31"
			"32"
			"33"
			"34"
			"35"
			"36"
			"37"
			"38"
			"39"
			"40"
			"41"
			"42"
			"43"
			"44"
			"45"
			"46"
			"47"
			"48"
			"49"
			"50"
			"51"
			"52"
			"53"
			"54"
			"55"
			"56"
			"57"
			"58"
			"59"
			"60"
			"61"
			"62"
			"63"
			"64"
			"65"
			"66"
			"67"
			"68"
			"69"
			"70"
			"71"
			"72"
			"73"
			"74"
			"75"
			"76"
			"77"
			"78"
			"79"
			"80"
			"81"
			"82"
			"83"
			"84"
			"85"
			"86"
			"87"
			"88"
			"89"
			"90"
			"91"
			"92"
			"93"
			"94"
			"95"
			"96"
			"97"
			"98"
			"99"
			"100"
			"101"
			"102"
			"103"
			"104"
			"105"
			"106"
			"107"
			"108"
			"109"
			"110"
			"111"
			"112"
			"113"
			"114"
			"115"
			"116"
			"117"
			"118"
			"119"
			"120"
			"121"
			"122"
			"123"
			"124"
			"125"
			"126"
			"127"
			"128"
			"129"
			"130"
			"131"
			"132"
			"133"
			"134"
			"135"
			"136"
			"137"
			"138"
			"139"
			"140"
			"141"
			"142"
			"143"
			"144"
			"145"
			"146"
			"147"
			"148"
			"149"
			"150"
			"151"
			"152"
			"153"
			"154"
			"155"
			"156"
			"157"
			"158"
			"159"
			"160"
			"161"
			"162"
			"163"
			"164"
			"165"
			"166"
			"167"
			"168"
			"169"
			"170"
			"171"
			"172"
			"173"
			"174"
			"175"
			"176"
			"177"
			"178"
			"179"
			"180"
			"181"
			"182"
			"183"
			"184"
			"185"
			"186"
			"187"
			"188"
			"189"
			"190"
			"191"
			"192"
			"193"
			"194"
			"195"
			"196"
			"197"
			"198"
			"199"
			"200"
		}
	}
}