Code: Select all
;=============================
;==========================
; Este programa hace que al presionar
; la tecla 3, se active la búsqueda de
; una imagen que usted desee en la
; pantalla de manera indefinida, y al
; encontrarla, el ratón se movera hacia
; el punto de la imagen encontrada.
;
; Donde usted puede modificar el script es donde hay (*****)
;==========================
;=============================
;==========================
;DEFINICIÓN - INICIO
;==========================
;(*****)MODIFICABLE
global imagen := "health.png"
;IMAGEN A BUSCAR
global DELAY_TIMER := 50
;CADA CUANTOS MILISEGUNDOS SE EJECUTARÁ TIMER DE BÚSQUEDA DE IMAGEN
;NO MODIFICABLE
global encendido := false
;ESTADO DEL SCRIPT
;OPTIMIZACIÓN AVANZADA, """IGNORAR""", NO AFECTA EL FIN EL PROGRAMA - INICIA
#NoEnv
#MaxHotkeysPerInterval 99000000
#HotkeyInterval 99000000
#KeyHistory 0
#SingleInstance, Force
ListLines Off
Process, Priority, , A
SetBatchLines, -1
SetKeyDelay, -1, -1
SetMouseDelay, -1
SetDefaultMouseSpeed, 0
SetWinDelay, -1
SetControlDelay, -1
SendMode Input
CoordMode, mouse, screen
;OPTIMIZACIÓN AVANZADA, """IGNORAR""", NO AFECTA EL FIN EL PROGRAMA - FIN
Return
;==========================
;DEFINICIÓN - FIN
;==========================
#IfWinActive, ahk_class RiotWindowClass
;SI PROGRAMA SE ENCUENTRA ACTIVO
timerBuscar:
;(*****)TIMER PARA BUSCAR IMAGEN CONSTANTEMENTE
punto:=buscarImagenHasta(imagen,0)
;DECIMOS QUE "punto" ES IGUAL EL PUNTO DE LA IMAGEN A BUSCAR
MouseMove, % punto.x, % punto.y, 0
;MOVER EL MOUSE AL PUNTO ENCONTRADO
;IMPORTANTE!!! AQUÍ ARRIBA DEBES PONER TODO LO QUE QUIERES QUE SUCEDA CADA VEZ QUE SE ENCUNTRA LA IMAGEN, EN ESTE CASO YO PUSE QUE SE MUEVA A LA POSICIÓN DE LA IMAGEN ENCONTRADA
Return
;FINALIZA TIMER
3::
;AL PRESIONAR TECLA 3
if encendido
;SI ESTÁ ENCENDIDO
SetTimer, timerBuscar, off
;APAGAMOS TIMER
Else
;SI ESTÁ APAGADO
SetTimer, timerBuscar, % DELAY_TIMER
;ENCENDEMOS TIMER
encendido:=!encendido
;CAMBIAMOS LA POSICIÓN DEL "INTERRUPTOR" encendido
Return
;TECLA 3 FINALIZA
buscarImagen(img,x,y:=0,x2:=0,y2:=0){
;FUNCIÓN QUE BUSCA LA IMAGEN "img" DESDE EL PUNTO (x,y) HASTA (x2,y2), SI x ES MENOR O IGUAL A CERO, BUSCARÁ EN PANTALLA COMPLETA, DEVUELVE UN OBJETO CON PROPIEDADES "x" E "y", SIENDO ESTOS LOS PUNTOS DE LA IMAGEN ENCONTRADA, SI NO ENCUENTRA DEVUELVE VACIÓ ""
if x<=0
ImageSearch, ox, oy, 0, 0, %A_ScreenWidth%, %A_ScreenHeight%, %img%
else
ImageSearch, ox, oy, %x%, %y%, %x2%, %y2%, %img%
p:={}
p.x:=ox
p.y:=oy
if p.x>=0
return p
Else
return ""
}
buscarImagenHasta(img,x,y:=0,x2:=0,y2:=0){
;FUNCIÓN QUE BUSCA HASTA ENCONTRAR LA IMAGEN "img" DESDE EL PUNTO (x,y) HASTA (x2,y2), SI x ES MENOR O IGUAL A CERO, BUSCARÁ EN PANTALLA COMPLETA, DEVUELVE UN OBJETO CON PROPIEDADES "x" E "y"
punto:=buscarImagen(img,x,y,x2,y2)
while(punto==""){
punto:=buscarImagen(img,x,y,x2,y2)
sleep, 50
}
return punto
}