Hay que recordar que, con el fin de saber si Tim se mueve hacia arriba o hacia abajo, lo que necesitamos saber en qué piso se encontraba en la última vez que nos marchamos. Así que vamos a agregar otra variable global que vamos a utilizar para contener el número de ese piso anterior:
Agregar variable global : prevFloor (dejar el tipo de defecto como "Número" y el valor inicial como 0).
Cada vez que Tim se cae el fondo de la disposición, que restablece el valor inicial de 'prevFloor' en el archivo Player -> es el evento fuera layout:
Acción: Sistema -> Valor de ajuste -> prevFloor: 0
Ahora podemos hacer uso de todos estos elementos agregados a adjudicar Tim el número apropiado de puntos cuando él salta sobre un piso (y se queda allí). Pero ¿cómo sabemos que nuestro juego de piso que está saltó?
Bueno, recordemos que hemos añadido una variable de instancia 'piso' a 'Suelo', cuyo valor se corresponde con el nivel del suelo. Por lo tanto, una vez que el jugador ha aterrizado en el suelo, podemos probar que el valor y aumentar la puntuación por el valor correspondiente de la variable de instancia los "puntos". Sólo tenemos que averiguar qué instancia de Suelo el jugador ha aterrizado. Podemos hacerlo mediante la adición de una segunda condición para el archivo Player | Plataforma El evento aterrizó :
Haga clic derecho en el archivo Player | Plataforma A condición de terrateniente y añadir esta condición:
Suelo -> (Seleccionar) Elige más cercano / más lejano -> (Que) más cercano / (X) Player.X / (Y) Player.Y
¿Qué nos conseguirlo? Bueno, como el Manual nos dice en Cómo funcionan los eventos, "las instancias involucradas ... son 'recogidos' para el evento. Entonces, las acciones se ejecutan sólo para los casos recogidos por las condiciones". En este caso, significa que, cada vez que el jugador cae, Pisos de cualquier instancia que está más cercana a es recogida, por lo que cuando se añade un evento sub-'Sistema añadir Flooring.points de anotar "(ya que estamos a punto de hacer ) y que se ejecuta la acción, el sistema sabe el número correcto de puntos a añadir sin que tengamos que añadir eventos separados para cada instancia Pisos. Eso es parte de la fuerza de Construct 2.
Así que ahora sólo tenemos que añadir las acciones adicionales que se ejecutarán cuando el jugador aterriza en el suelo. Estas acciones se añadirá como sub-eventos de la Player | Plataforma On aterrizó / Suelo | Pick cercano ... condición doble:
Condiciones: Sistema -> Comparar dos valores -> El primer valor : Comparación prevFloor : Menos de valor Segundo : Flooring.floor
Acción: Sistema -> (Global y variables locales) Añadir a -> Variable : Resultado Valor: Flooring.points
Acción: Sistema -> (variables globales y locales) Valor de ajuste -> Variable : prevFloor Valor : Flooring.floor
Condiciones: Sistema -> Comparar dos valores -> El primer valor : Comparación prevFloor : Mayor o igual valor Segundo : Flooring.floor
Acción: Sistema -> (variables globales y locales) Valor de ajuste -> Variable : prevFloor Valor : Flooring.floor
Después de todo ese trabajo, todavía tenemos nada que mostrar por ello! Es el momento de crear el HUD (heads-up display).
Como se muestra en la página 7 de la guía para principiantes para Construir 2, tenemos que añadir una nueva capa llamada "HUD". (Asegúrese de que está en la parte superior, y seleccionar.) Por ello, inserte dos objetos de texto, una en la parte superior derecha llamado 'StatusText' y el segundo en el centro de la pantalla con el nombre 'ResultText' (es posible que desee ajustar el texto Propiedades de objeto a un tipo de letra bastante menos claro). StatusText se utilizará para hacer el seguimiento de la partitura y la salud, y ResultText bien mostrará 'Game over', cuando la disminución de Tim salud a cero, o "nivel 2 alcanzado" si llega a la planta superior con una puntuación de 25 o más (vamos a dejar el cambio real a un nivel superior por otra parte de este tutorial).
Ahora podemos añadir uno más sub-evento al Player | Plataforma On desembarcadas / Player | es la superposición de Suelo doble condición de mostrar el nivel 2 cuando se ha alcanzado. Este evento sub-tiene un par de condiciones:
Condiciones: Suelo -> Comparar variable de instancia -> piso: Igual a: 3
Condiciones: Sistema -> (variables globales y locales) Comparar variable -> Variable : Puntuación: Mayor o igual: 25
Acción: ResultText -> El texto del set :'' 2 Nivel alcanzado "
Ahora, para el 'Game over' pantalla y el restablecimiento de la salud de Tim para la siguiente ronda - esto va a ser un nuevo evento (hemos terminado con los sub-eventos):
Condiciones: Sistema -> (variables globales y locales) Comparar variable -> Variable : salud: Igual a: 0
Acción: ResultText -> texto del set : Game'' over "
Acción: Sistema -> (variables globales y locales) Valor de ajuste -> salud: 3
Acción: Sistema -> (Tiempo) Wait -> Segundos : 3
Acción: ResultText -> Set texto:'' "(blanking out 'Game over', listo para la siguiente ronda)
Por último, mientras que el juego está en marcha, tenemos que mantener el marcador y el estado de salud continuamente actualizado:
Condiciones: Sistema -> Cada garrapata
Acción: StatusText -> Set texto: "Resultado:" & Calificar y "Salud:" & salud
Bueno, eso es el final de esta segunda parte de este tutorial Plataforma. En la siguiente parte, vamos a ver subir al nivel 2 y desafiando a Tim con plataformas móviles. Y por favor, envíe sus comentarios sobre lo que te gustaría ver en otras partes (y no dude en decirme lo que hay que corregir).
Mientras tanto, si usted encuentra el juego demasiado duro, recuerde que, como el constructor de juego, usted es libre de cambiar las propiedades de comportamiento de plataforma para el reproductor :).