Paso 5: Comprender el código: la configuración y el LawLoop
de
Pantalla del título
color 0a
Set/a anchura = 40
Set/a altura = 20
lastlaw set/a = % de la anchura * altura %
Set/a bottombarrier = % lastlaw % - % de ancho
Ley de set/a = 0
Set/a sidea = ancho % + 1
Set/a sideb = % de ancho * 2
Set marcador = O
barrera conjunto = #
conjunto vacío =-
fijar detrás = % vacíos %
lugar conjunto/a = 222
echo.
título de la pantalla ancho %x % altura %
: LawLoop
Si % ley % == % lastlaw % goto ObjectPlace
Set/a Ley = ley % + 1
Si % derecho (%) % LEQ % ancho
Ley de ajuste v % = % de barrera
Goto LawLoop
)
Si % de % GTR % bottombarrier % (la ley
Ley de ajuste v % = % de barrera
Goto LawLoop
)
Si % ley % == % sidea () %
Ley de ajuste v % = % de barrera
Set/a sidea = sidea % + % de ancho
Goto LawLoop
)
Si % ley % == % ladoB () %
Ley de ajuste v % = % de barrera
Set/a sideb = ladoB % + % de ancho
Eco *
Goto LawLoop
) () otro
Ley de ajuste v % = % vacíos %
Goto LawLoop
)
: ObjectPlace
lugar de set v % = % de marcador
La primera parte es responsable de designar el significado de los símbolos y los valores a partir de sidea %, % ladoB, lugar % y % de ley.
Set/a anchura = 40
Set/a altura = 20
lastlaw set/a = % de la anchura * altura %
Set/a bottombarrier = % lastlaw % - % de ancho
Ley de set/a = 0
Set/a sidea = ancho % + 1
Set/a sideb = % de ancho * 2
Set marcador = O
barrera conjunto = #
conjunto vacío =-
fijar detrás = % vacíos %
lugar conjunto/a = 222
echo.
A lo largo de la escritura, símbolos son designados por las variables. El cursor es marcador %, y como he escrito, marcador % = O. Más adelante en el código, cuando hacia de v343 v344 y el programa tiene que establecer v344 con quieras O, el símbolo del cursor, lo hace utilizando
establecer v344 = % de marcador
Desde marcador % = O, % v344 también contendrá O. Hago esto para que si desea cambiar el símbolo de una función en particular, por ejemplo, para usar para mostrar el cursor en lugar de O, sólo tienes que cambiar O a @ en esta pieza superior del código en lugar de caza a través de la secuencia de comandos para cada línea que se ocupa con el cursor.
* Nota: el programa no puede comprender un espacio (barra espaciadora) como un símbolo. Si utilizas uno, el programa se bloqueará. Usar "-" en su lugar, y hace que la pantalla fácil de leer.
Otra característica importante de esta parte del código es el % de ancho y altura variables % % que, que contienen, derp, el ancho y alto de la pantalla y se utilizan para configurar la pantalla y mueva el cursor a través de todo el programa.
LawLoop es la pieza principal de la fase de configuración. Su trabajo es tomar cada variable de píxeles en la pantalla, de v1% a % v800 pantalla 40 x 20, y con el símbolo apropiado. Lo hace basándose en el número de la variable, razón por la cual todos los píxeles se denominan «v #.» Ley % empieza en 0 y cuenta, que la primera variable v1. El código funciona así:
Ley de ajuste v % = símbolo de %
Al principio, ley % es igual a 1, por lo tanto esta línea realmente dice
establecer v1 = símbolo de %
símbolo % siendo cualquier símbolo if/entonces condiciones convocatoria. Después de ajuste v1, el código de bucles y agrega 1% de ley. Ahora % Ley % = 2 y el código Lee
Set v2 = símbolo de %
Ley % continúa la cuenta hasta que llega la última variable, v800 de 40 x 20, en que punto el código salta a ScreenLoop y comienza a funcionar.
Lo que la pantalla se ve como una vez establecido depende de if/then declaraciones. El programa utiliza los números de % de % ley para determinar qué píxeles lo que deben contener. Hay dos secciones de este. los principales LawLoop y ObjectPlace.
: LawLoop
Si % ley % == % lastlaw % goto ObjectPlace
Set/a Ley = ley % + 1
Si % derecho (%) % LEQ % ancho
Ley de ajuste v % = % de barrera
Goto LawLoop
)
Si % de % GTR % bottombarrier % (la ley
Ley de ajuste v % = % de barrera
Goto LawLoop
)
Si % ley % == % sidea () %
Ley de ajuste v % = % de barrera
Set/a sidea = sidea % + % de ancho
Goto LawLoop
)
Si % ley % == % ladoB () %
Ley de ajuste v % = % de barrera
Set/a sideb = ladoB % + % de ancho
Eco *
Goto LawLoop
) () otro
Ley de ajuste v % = % vacíos %
Goto LawLoop
)
LawLoop está diseñado para crear los fundamentos de la pantalla: un límite de barrera símbolos espacio vacío circundante. Tiene cuatro pedazos principales del código de seguimiento de la construcción de los segmentos de barrera alrededor de la frontera utilizando la variable de % de % ley y if/then declaraciones. Los dos primeros crean las barreras de la parte superior e inferior estableciendo barreras en cada variable con un número de % de % ley que pone en la parte superior o la línea inferior de la pantalla. Pantalla 40 x 20, la línea superior se compone de los píxeles con ley de % % números 1-40 (40 variable por línea) y la parte inferior del número 761-800, por lo que el programa utiliza
Si % ley % LEQ % ancho
y
Si % ley GTR % bottombarrier %
para establecer una barrera en píxeles en la parte superior y la línea inferior de la pantalla.
Las barreras laterales se crean utilizando el sidea % variables y % ladoB %. sidea % controla el lado izquierdo y está programado originalmente en el número de % de % ley de la variable de puño en la segunda línea (la primera línea ha sido cuidada con la instrucción LEQ). Cuando ley % igual % sidea, el programa establece primer píxel como una barrera, luego agrega 40% sidea que como ley de % % aumenta establecerá el primer pixel de la tercera línea como barrera, después de que otro 40 se agrega a sidea % para el primer pixel de la cuarta línea, y así sucesivamente hasta los lugares número % ley % una variable en la última línea de la pantalla , momento en el que asume la declaración de GTR. ladoB % funciona del mismo modo, que designa el último píxel en cada línea como una barrera y crear los límites de la derecha.
La última parte de la configuración es ObjectPlace, que establece las variables que contienen los símbolos para el cursor y cualquier otra condición inicial.
: ObjectPlace
lugar de set v % = % de marcador
Esta línea establece cualquier pixel tiene el % ley % número igual al valor de % de espacio, la ubicación espacial de los cursores, con el símbolo que designa el cursor. Tienes que programar esta parte del código, con declaraciones como esta para crear un entorno en la pantalla, como las barreras en medio de la pantalla. Para algo como el juego más adelante, puede crear varios archivos de lote diferentes listas de condiciones para crear diferentes niveles y utilizar "call level1.bat" para configurar el nivel.