Producción de script en segundo plano del asistente de botones
1. Identificador del juego
El fondo significa que cuando la ventana está cubierta o movida, las acciones del script aún se pueden ejecutar normalmente, por lo que primero se debe encontrar el identificador de la ventana del juego. Esto puede garantizar que las declaraciones del script que editamos tengan la dirección de uso correcta. Hay muchas formas de obtener el identificador de la ventana. Generalmente uso el siguiente método:
Dim hwnd
Plugin. hwnd=Window. MousePoint()
El complemento es un comando para llamar a un complemento. Este comando es necesario para llamar a un complemento. hwnd es el identificador obtenido y Window es el nombre del complemento. -in. MousePoint() devuelve el identificador de la ventana donde se encuentra el mouse
Necesito decir algunas palabras más sobre Windows. Tomando como ejemplo los juegos web, los identificadores se obtienen al colocar el mouse. la barra de título y la ventana del juego son diferentes. La ventana del juego es una subventana de IE, por lo que se está ejecutando. Antes de ejecutar el script, coloque el mouse dentro del área de la ventana del juego y ejecute el script.
Hay muchas funciones para obtener identificadores. Si estás interesado, puedes probarlas tú mismo, pero con conocer una es suficiente.
2. Simular acciones
Después de obtener el identificador de la ventana, puede simular las acciones requeridas en esta ventana. Aquí debe usar el complemento de Key Wizard 7 (desde allí). ya es 7, no presentaré los complementos anteriores). Las funciones para simular acciones son las siguientes
-Simulación de clics del mouse
Plugin Bkgnd.LeftClick(handle, abscissa, ordenada). ) //Simular el clic del botón izquierdo del mouse
Plugin Bkgnd.RightClick(handle, abscissa, vertical coordenada) //Simular el clic del botón derecho del mouse
El identificador es el identificador que tenemos Obtenido anteriormente, las abscisas y ordenadas aquí son para la ventana del juego, no para la pantalla (parece mareado ^_^ Este punto me preocupó durante una semana antes de que me diera cuenta).
Las coordenadas de la pantalla se basan en la esquina superior izquierda de la pantalla (0, 0). Las coordenadas de la esquina inferior derecha están relacionadas con la resolución de la pantalla, mientras que las coordenadas de la ventana no están en la esquina superior izquierda. de la pantalla, como en la palabra Las posiciones 0 y 0 de la ventana de edición están debajo de la barra de herramientas. No importa si no puede entenderlas. Primero, agregue el siguiente código. obteniendo el identificador de la ventana:
Plugin s = Window.GetClientRect(hwnd)
XYArray = Split(s, "|", -1, 1)
dx = XYArray(0)
dy = XYarray(1)
En segundo lugar, simplemente resta dx y dy de la abscisa y la ordenada respectivamente. ¡Por qué! ! No te preocupes por él, de todos modos, no está mal hacer esto. Da un ejemplo.
Por ejemplo, la coordenada de abscisa que obtienes al tomar un punto es x y la coordenada de ordenada es y. La declaración para simular un clic con el botón izquierdo del mouse debería ser así:
Plugin Bkgnd.LeftClick(handle x-dx,y-dy)
-Simular acción del teclado
Plugin Bkgnd.KeyPress(handle, key code) //Simular acciones del teclado
Los códigos de teclas aquí se pueden encontrar fácilmente en el asistente de teclas, incluidas las combinaciones de teclas
-Cadena de entrada
Ventana de complemento. SendString (identificador, cadena)
Esta función es muy útil al iniciar sesión y realizar llamadas. La cadena puede ser una variable de cadena.
3 Búsqueda de color en segundo plano
Intenta utilizar la menor cantidad posible de declaraciones de búsqueda de color en el script de fondo; de lo contrario, tu juego "fallará" e incluso si se usa con moderación, habrá muchas. de "mosaicos". Afortunadamente, no afecta la función de búsqueda de color, incluso si la imagen del juego está desordenada. Si es feo, es feo.
Plugin c1=BkgndColor.GetPixelColor(hwnd,631-dx,121-dy)
Se recomienda encarecidamente utilizar esta función. En cuanto a qué área buscar color, área de foto. , etc., si Inténtelo de nuevo si su computadora es lo suficientemente rápida.
Encontrar colores es complicado. Debes encontrar un punto que corresponda a diferentes colores en diferentes imágenes. Por supuesto, solo un punto no es confiable. Mi idea es encontrar los valores de color de varios puntos y registrarlos, y luego decidir la dirección del guión en función de diferentes combinaciones de estos puntos. Después de adoptar este método, básicamente puedo ver la imagen general durante el juego.
Adjunto se muestra un ejemplo sencillo de cómo cultivar mineral de hierro en el nivel 61 del juego web "The Ming Dynasty" (usé este script :)):
Dim hwnd
Complemento hwnd=Window.MousePoint()
Complemento s = Window.GetClientRect(hwnd)
XYArray = Split(s, "|", -1, 1)
dx = XYArray(0)
dy = XYarray(1)
vx = 655-dx
vy = 336-dy
vx1 = 638-dx
vy1 = 305-dy
Para 1000
Retraso 156
Retraso 16 p>
Complemento Bkgnd.LeftClick(hwnd,vx,vy)
Retraso 7000
Retraso 500
Complemento Bkgnd.LeftClick(hwnd, vx1, vy1)
Retraso 1000
EndFor
Rem