Red de conocimiento informático - Aprendizaje de código fuente - Cómo utilizar el asistente de botones

Cómo utilizar el asistente de botones

Este tutorial se puede reimprimir, pero indique: Reimpreso del foro oficial de Jianyouyou: bbs.jdyou.com

Autor: Wuyue

Nosotros Debe saber que el asistente de botones tiene un ojo y un par de manos. Los ojos pueden ayudarnos a verificar los colores en la pantalla y las manos pueden ayudarnos a hacer clic continuamente en el teclado y el mouse. y cómodo para controlar estas manos, pero escribir funciones. Los scripts potentes son imposibles sin ojos. Este tutorial comienza desde este punto y enseña a los lectores a usar estos ojos para controlar mejor los brazos del robot.

Comandos básicos del botón sprite. utilizado en este capítulo:

1.

IfColor 100 10 112233 0

EndIf

IfColor es la declaración de juicio de color más importante ( ojos) del asistente de botones y tiene buen rendimiento y facilidad de uso

Explicación detallada de la declaración:

ifColor - if color

100 - pantalla. X píxeles

10 - pantalla Y Pixel

112233 - color de 16 bits (dos dígitos representan azul, rojo y amarillo respectivamente)

0 - igual ( 1 significa desigual, 2 significa coincidencia aproximada)

Explicación: si en la coordenada 100, el color de 10 es 112233, ejecute el siguiente EndIf como coincidencia de IfColor

Uso: comando de control ->Coger punto de coordenadas/Color->Haga clic izquierdo en el mapa del área y agregar al punto de coordenadas->Salir de los puntos de agarre->Después de seleccionar el color de las coordenadas->Insertar

2.

//Comentario

Explicación: "//" es el comentario del asistente del botón. Cualquier texto escrito después de "//" será ignorado por el botón

3.

Rem s

Goto s

Explicación: "Rem s" puede entenderse como hacer una marca s en la posición cambiada, mientras que "Goto s" significa saltar incondicionalmente a esta marca para su ejecución. Agregue aquí el concepto de ejecución del programa: cada línea de código tiene un número de línea. El intérprete de script debe ejecutar el código línea por línea hasta que se ejecute la última línea de código o se encuentre la declaración EndScript (. esta declaración se explicará más adelante). No queda nada por ejecutar. El programa simplemente sale

4. (1000 milisegundos equivalen a 1 segundo)

Después de leer el concepto, escribamos el script de relleno rojo y azul de un juego para verificar si hemos aprendido el contenido de esta lección

Primero abra el Asistente de botones, ingresa al juego y usa PrintScr (generalmente el primero a la derecha de F12). Usa la tecla para interceptar la imagen del juego y luego cambia al programa de sprites clave. Usa el método ifcolor para capturar las coordenadas de color de nuestra salud. bar e insértelos en el código.

En este momento, podemos ver que hay más Tres declaraciones (en el código fuente):

IfColor 126 19 4a5110 0

Else

EndIf

donde más está De lo contrario, significa que si el color de arriba no se cumple, entonces ejecutamos la siguiente instrucción else y primero escribimos un código de prueba para ver si el color obtenido es correcto

IfColor 126 19 4a5110 0

El color del MessageBox es correcto

Else

El color del MessageBox es incorrecto

EndIf

Si solo aparece "El color es correcto", felicidades, ya no está. El éxito está muy cerca. Si el color es incorrecto, verifique si hay un error en el color. hasta que aparezca "El color es correcto" y puedas continuar aprendiendo

Continuemos

Modifica el código de la siguiente manera:

Rem s

IfColor 126 19 4a5110 1

//Usa la medicina roja de F5

KeyPre

ss 116 1

EndIf

Delay 100

Goto s

Tenga en cuenta que el código anterior agrega rem..goto y continúa ejecutándose En el proceso anterior, el último 0 de ifcolor se cambió a 1 (1 significa no igual) y se agregó un retraso en pausa (para evitar que el uso de CPU del script sea demasiado alto. En este momento, su código ya se puede completar). en rojo y azul Agrega el código tú mismo como tarea.

Está bien, esta sección ha terminado, descansa y no te preocupes ~ ¿Qué? ¿El código no funciona? El color está mal, está bien, déjame agregar una explicación complementaria

Explicación complementaria:

Si el código anterior no funciona después de escribir los pasos, entonces puede haber un problema de color. A continuación se muestran algunas soluciones.

1. Obtenga el color de fondo de la barra de sangre. Si el color es igual al color de fondo, realice la operación de agregar sangre.

2. Utilice la selección de color difuso si el color es aproximadamente igual al color de la sangre; de ​​lo contrario, agregue sangre o, si el color es aproximadamente igual al color de fondo, agregue sangre (aquí se utiliza la combinación difusa y más)

Los dos puntos anteriores también son soluciones a problemas comunes que se encuentran en varios juegos. Experimenta mucho y siempre tendrás éxito.

Finalmente, el asistente de botones no distingue entre mayúsculas y minúsculas y puedes escribir lo que quieras. quiero ~~~

Aprendizaje de declaraciones de procedimiento

Este tutorial se puede reimprimir, pero indique: Reimpreso del foro oficial de Jianyouyou: bbs.jdyou.com

Autor: Wuyue

Continuando con la Lección 2, aprenda a crear scripts rojos y azules sin programación

p>

En esta sección, quiero aprender a usar Declaraciones Sub y GoSub, y para complementar las áreas que no se explicaron claramente en la Sección 2

Sub, como elemento clave de una declaración de procedimiento, juega un papel importante en la lógica y la reutilización del código. un vistazo a la descripción de la palabra clave:

Sub [nombre del proceso]

// La parte aquí es el cuerpo del proceso (con su propio nombre, puede verlo (siempre que lo comprenda) ) puede agregar código de ejecución

Regresar

Explicación: [Nombre del proceso] se puede cambiar a voluntad Es un buen hábito escribir código con un nombre que pueda entenderse fácilmente. También puede utilizar la declaración de retorno china para regresar al punto de llamada

GoSub [nombre del proceso]

Explicación: gosub tiene un nombre fijo y subsub puede entenderse como un proceso. función o método El método es diferente, pero el principio es el mismo

Modificamos el script de relleno rojo y azul del que hablamos la última vez:

Sub principal

.

Rem s

Gosub add_hp

Gosub add_mp

Retraso 100

Ir a s

Regresar

Sub add_hp

IfColor 126 19 4a5110 1

KeyPress 116 1

EndIf

Regresar

Sub add_mp

IfColor 126 19 4a5110 1

KeyPress 117 1

EndIf

Regresar

El código anterior forma un sistema completo con una estructura razonable y clara. Es fácil de entender. Por lo general, un fragmento de código que realiza una única función se utiliza como sub, como un script de relleno rojo y azul, un sub de control principal. un relleno rojo y un relleno azul. ¿Qué parte debe modificarse? Simplemente modifíquelo en el sub correspondiente.

Sub main es solo un hábito de programación en el asistente de botones, si no lo encuentra. Las dos declaraciones goto y gosub (también se producirán varios saltos, que se analizarán en los siguientes capítulos), no sucederá. El salto de números de línea de código solo se ejecuta secuencialmente. Cuando se encuentra sub, la declaración de línea se ignora. directamente y se ejecuta el siguiente

Veamos el siguiente código:

Sub main

p>

Prueba de Gosub

Return

Mensaje

Prueba de geBox

Subprueba

Prueba de MessageBox

Devolución

Este código se utilizará en versiones de Key Wizard anteriores a 5.2 (incluida 5.2) Ejecución anormal. El resultado de la ejecución de la versión 5.2 es que el cuadro de mensaje "Prueba" aparece todo el tiempo en lugar de aparecer solo una vez. Este error se corrigió en la versión 5.3 y versiones posteriores, por lo que cuando aprenda, intente utilizar la última. versión del asistente de botones En el futuro, los tutoriales también se basan en la última versión 5.6 de Key Wizard

Explicación complementaria del significado del código:

KeyPress 116 1

.

Explicación:

KeyPress: la palabra clave para presionar una determinada tecla (se puede encontrar en la pestaña del teclado)

116: el código de valor de la tecla virtual de la tecla F5 (usted puede presionar el teclado en el cuadro de texto en la parte inferior izquierda de la pestaña del teclado) Para varias teclas, el código de valor de la clave virtual también se puede consultar y viceversa)

1 - Presione una vez (cambie a 2 para presione dos veces)

La descripción anterior es adecuada para keydown (presionar tecla), keyup (tecla arriba), clic izquierdo (clic con el botón izquierdo del mouse), etc.

Muchos principiantes se sentirán confundidos sobre qué es una variable

Personalmente, creo que las variables son un umbral para ingresar a la programación. Introducción a las variables. Hay muchos artículos sobre el concepto. Aquí primero haré una metáfora fácil de entender y luego. explíquelo desde el nivel del idioma si ya comprende el significado de las variables, omita esta sección

Las variables pueden entenderse como supermercado. Cada variable en el gabinete de almacenamiento de bolsas corresponde a un gabinete y el número del. gabinete es el nombre de la variable. Si desea los elementos (datos) en el gabinete, puede encontrar el nombre de la variable correspondiente. El nombre de la variable puede nombrarlo usted mismo ~

Veamos un ejemplo:

a=1

Coloca el número 1 en el gabinete a

b="¿Lo adivinaste bien?"

¿Adivinaste el cadena correctamente? La cadena colocada en el gabinete b debe incluirse con ""

dc=3.14159265

Coloque el decimal en el gabinete dc

num1=1

num1=33

num2=55

sum=num1+num2

Primero ponga 33 y 55 en num1 y num2 respectivamente y luego póngalos Tómalo salga, realice la operación de suma (la suma es procesada por la CPU) y coloque el resultado en suma. La suma del resultado es igual a 88

num1=1

num1=33 <. /p>

Num1 recibe un valor de 1 y luego un valor de 33. En este momento, el 331 almacenado en num1 se sobrescribe :)

sum=sum+1

Esta oración no es equivalente a la suma matemática y también es difícil de entender para los principiantes. Solo necesitamos pensar, sacar la suma y sumarla a 1, y luego volver a colocarla en la suma. de la suma es 88. Una vez hecho esto, después de la suma, la suma es igual a 89

pig=1

pig=pig*3+pig

¿Puedes ¿adivinen a qué cerdo es igual al final? El resultado de 1*3+1 es 4

Bien, creo que a estas alturas ya deberías entender lo que sucede con las variables. Ya has aprendido a sumar y restar variables, y a multiplicar y dividir. se puede utilizar como tarea para aplicaciones más avanzadas en el futuro. Los siguientes capítulos lo explicarán brevemente sobre las variables en lenguaje C.

El lenguaje C está más cerca de la parte inferior del sistema y es más fácil. Para comprender el mecanismo de las variables, cuando a = 2 está en el código, se asigna en la memoria un área pequeña para almacenar esta variable y luego se coloca 2 en el área de la memoria. Se ejecuta =a, su valor número 2 se extrae a través del nombre de la variable a y se coloca en el área de b en la memoria.

Por supuesto, a nivel de implementación del lenguaje, no es lo que dije anteriormente, pero esto no es lo que nos importa. Solo necesitamos entender qué son las variables y los nombres de las variables, y cómo asignar valores. ​​Para ellos y cómo proponerlos, su valor es suficiente. Después de todo, lo único que queremos es la aplicación. Si está interesado en saber más, puede obtener la respuesta que desea utilizando un motor de búsqueda. >Uso de declaraciones condicionales

Se puede reimprimir este tutorial, pero indique: Reimpreso de los comentarios oficiales de Simple Game

Foro: bbs.jdyou.com

Autor: Wuyue

La llamada declaración condicional es "satisfecho" o "no satisfecho", que también puede entenderse como "sí" o "no" Por ejemplo, el ifcolor mencionado en las secciones anteriores cae en esta categoría

En el asistente de botones, solo hay dos declaraciones condicionales: ifcolor..else..endif y if..else.. endif

La declaración ifcolor no se explicará más. Esta sección se centra en if para consolidar el conocimiento de las variables en la sección anterior

El formato de la declaración if:

Si [expresión condicional]

//Puedes escribir el código de función aquí

De lo contrario

//Puedes escribir el código de función aquí

EndIf

Explicación:

if va seguido de una barra espaciadora y luego escribe la expresión condicional. Aquí está la división obvia entre "sí" y "no"

La llamada "expresión condicional", el resultado de la condición tiene solo dos valores: "verdadero/falso", como por ejemplo: 1=1 (verdadero) 1=2 (falso) 1>2 (falso) 1<2 (verdadero) Junte valores similares a este para comparar, puede hacer que la ruta se ejecute después de la declaración if

El contenido anterior puede ser difícil de entender y digerir para los principiantes. Se recomienda leer el siguiente contenido y luego regresar y leer el texto anterior nuevamente. Poner esta parte al principio es profundizar la comprensión del siguiente texto.

Primero hagamos un ejemplo práctico:

Si 1>3

MessageBox no está establecido

De lo contrario

MessageBox está establecido

EndIf

Ejecute el código anterior en el asistente de botones. Puede ver el resultado de forma intuitiva y luego intente reemplazar ">" con "<" para profundizar su comprensión de las declaraciones condicionales.

Este ejemplo no tiene ningún efecto práctico pero se considera una introducción. Es más intuitivo. Hagamos uno un poco más complicado:

n=1

. Rem s

n=n+1

Si n mod 2=0

VBSCall Call MessageBox("Número par:" & n)

EndIf

Goto s

¿Puedes adivinar el resultado del código anterior simplemente confiando en tu comprensión? Si no puede adivinarlo, colóquelo debajo del asistente de botones, ejecútelo una vez y vea el efecto.

Hay varios puntos de conocimiento aquí:

1. Rem sy goto s forman un cuerpo de bucle, que se ejecuta continuamente

2. +1 El valor de la variable n aumenta en 1 cada vez que se repite (si no comprende esta oración, consulte la sección anterior)

3 Primero explique el significado de mod. Mod es el resto (¿Qué es Yu? Si tienes un libro de escuela primaria de segundo grado, puedes consultarlo. También daré una explicación comparativa más adelante)

4. conector

Veamos otro ejemplo de comparación de cadenas:

hello="Hello"

VBSCall Por favor ingresa tu nombre:")

if

VBSCall Call MessageBox(hola & nombre & ", se ha confirmado la identidad")

else

VBSCall Call MessageBox(hola & nombre & ", no se puede confirmar la identidad")

endif

¡La idea es confusa! Si aún no la entiendes después de leer esta sección, léela nuevamente desde el principio de esta sección

Los símbolos que se pueden usar en expresiones condicionales Descripción:

= El signo igual compara si dos valores son iguales. Si son iguales, devuelve verdadero. false.

> El signo mayor que devuelve verdadero cuando el valor izquierdo es mayor que el valor derecho; de lo contrario, devuelve falso

< Signo menor que cuando el valor izquierdo es menor que. el valor correcto

valor, devuelve verdadero, de lo contrario devuelve falso

>= Signo mayor o igual que Cuando el valor l es mayor o igual que el valor r, devuelve verdadero, de lo contrario devuelve falso

<= Signo menor o igual cuando Cuando el valor l es menor o igual que el valor r, devuelve verdadero; de lo contrario, devuelve falso

Explicación de los símbolos que se pueden usar en cálculos numéricos:

+ Suma dos números, que pueden ser decimales, puede ser un número positivo o negativo

- Resta dos números, puede ser un decimal, puede ser un número positivo o negativo

* Multiplica dos números, puede ser un decimal, puede ser un número positivo o negativo

/ Divide dos números, puede ser un decimal, puede ser un número positivo o negativo, pero el divisor no puede ser 0

mod toma el resto de dos números, debe ser un número entero

Explicación de símbolos para conectar cadenas:

& conector, con el mismo sonido como: "Y" Debe haber variables o constantes a la izquierda y a la derecha de este conector

(La definición de constante es muy simple, es un número o cadena fija, como 1, o "simple swim" son constantes, inmutables)

+ Conector Este conector debe ser una cadena en ambos lados. Puede usarse y generalmente no usarse. Hay otra cuestión que no se ha explicado. Dejemos los operadores lógicos para se discutirá más adelante