Cómo hacer un juego de plataformas en cero: 6 pasos (con imágenes)
Cómo hacer un juego de plataformas en cero: 6 pasos (con imágenes)
Anonim
Cómo hacer un juego de plataformas en cero
Cómo hacer un juego de plataformas en cero

Scratch es un sitio web donde las personas crean juegos y otros programas utilizando bloques prefabricados que arrastra y suelta en un espacio de trabajo. Hoy te mostraré cómo hacer un juego de plataformas desde cero.

Suministros

Lo único que necesitará es un teléfono o una computadora y un navegador que pueda funcionar desde cero

Paso 1: Crea Sprites

Crear Sprites
Crear Sprites

Comience iniciando sesión desde cero, esto es necesario si desea publicar o volver al juego. Luego haga clic en crear y lo colocará en el editor de proyectos. Aquí es donde haremos nuestro proyecto.

En la parte superior izquierda, encontrarás el botón de disfraces. Haz clic en él si quieres cambiar tu reproductor. Cambie el nombre de "sprite" a "jugador".

Luego crea tus plataformas creando un nuevo objeto. Cambie el nombre de ese objeto "suelo".

Cambie el nombre de su juego a lo que quiera.

Paso 2: gravedad

Gravedad
Gravedad

Agrega un "cuando se hace clic en la bandera verde". Luego, coloque un bloque de "posición establecida" y ponga las coordenadas en el lugar donde desea que su jugador se reproduzca. Obtenga un bucle "para siempre" y un bucle "repetir hasta" coloque el bucle "para siempre" debajo del bloque "establecer posición".

Crea una variable. Esto actuará como nuestra gravedad. El mío era el nombre "y vel" (abreviatura de y velocidad). Justo debajo del bloque "establecer posición", coloque una "variable establecida en _". Cambie la Variable a lo que sea que haya nombrado su variable (la llamaré y vel ahora) y cambie el número a cero. A continuación, agregue un "cambiar y por _" y coloque un "y vel" en él. Pon eso en el "bucle para siempre". Debajo de eso, agregue un "cambio 'yvel' por '-1'".

Crea un bloque llamado Touch ground. ASEGÚRESE DE HACER ESTO HAGA CLIC EN EJECUTAR SIN ACTUALIZAR LA PANTALLA.

Inserte un bucle "repetir hasta" debajo del "toque de tierra". Agregue un "no" en el booleano y en el "no" agregue un "toque 'Suelo'". En eso, coloque un "cambiar y por '1'". Debajo, coloque un "conjunto 'y vel' a '0". '"

Si siguió todo eso, su código debería verse como la imagen de arriba.

Paso 3: movimiento

Movimiento
Movimiento

Debajo de "cuando se hace clic en la bandera verde", coloque un "estilo de rotación establecido 'izquierda-derecha'".

Dentro del ciclo "forever" agregue dos bloques "if then". En el booleano agregue dos "key _ presionada". Configure las teclas que desea que vayan hacia la izquierda y hacia la derecha.

Haga un bloque llamado "detección x" (ayudará en el siguiente paso). Haga clic en ejecutar sin actualizar la pantalla. Agregue una entrada, llámelo "velocidad".

En la dirección correcta, coloca "detección x '5 (qué tan rápido quieres que se mueva tu sprite),'" (la velocidad depende de lo que quieras) y "apunte en la dirección '90 '". Haz lo mismo con la izquierda pero multiplica todos los números por uno negativo.

Haz un bloque llamado salto. Ponlo en el ciclo "para siempre".

Cree una nueva variable llamada "caída". Debajo de "tocar el suelo", coloque un "cambio 'cayendo' por '1'". Debajo, en el bucle "repetir hasta", coloque un "conjunto 'cayendo' a 'cero'"

Definir salto. Agrega un bloque "si entonces". En el booleano ponga "_ y _". En un booleano, coloque "tecla 'lo que su tecla de salto será' presionada", luego agregue "si '5' es mayor que 'caída'". En el bloque "si entonces", coloque "establecer 'y vel' en ' 12 (altura del salto. '"

Puede notar que su reproductor no siempre toca el suelo. Haz un disfraz nuevo, hazlo más pequeño por todos lados. Dentro del bucle "para siempre", ponga "cambiar disfraz a 'disfraz2 (disfraz nuevo)'". Debajo, ponga "cambiar disfraz a 'disfraz1 (disfraz original)'".

Si ha hecho esto correctamente, debería verse como la imagen de arriba

Paso 4: Detección de colisión horizontal

Detección de colisión horizontal
Detección de colisión horizontal

Crea una nueva variable llamada pendiente. Debajo de "cambiar x por 'velocidad'", agregue una "pendiente establecida en '0'".

Agregue una repetición hasta que el bloque debajo de eso. Ponga un "'tocar' suelo 'o' pendiente 'igual a' 8. '" En eso agregue un "cambiar y por' 1 '," y "cambiar pendiente por' 1 '" Debajo del bucle "repetir hasta", agregue un bucle "si 'pendiente' es igual a '9', entonces". En eso, agregue un "cambio x por '0' menos 'velocidad'", luego agregue un "cambio y por '0' menos 'pendiente'".

Si realizó este paso correctamente, su código debería verse como la imagen de arriba.

Paso 5: detección de colisiones verticales

Detección de colisión vertical
Detección de colisión vertical

Edite el bloque "touch ground" agregue un booleano, llámelo "techo". En nuestro "touch ground" en el ciclo "forever" agregue "'y vel' es mayor que '0".

Saque todo del ciclo "repetir hasta". Ponga un bucle "si entonces si no" en el bucle "repetir hasta" y agregue "techo" en el booleano. En la parte "si entonces", agregue "cambiar y por '-1'". En la parte "más", agregue "cambiar y por '1'" y "establecer la caída de '0'".

Debajo del bucle "if then else", agregue un "set 'y vel' a '0'".

Si siguió las instrucciones, debería verse como la imagen de arriba

Paso 6: extra

Extra
Extra

Crea un nuevo objeto. Esto contendrá los extras.

En el bucle para siempre, obtenga un bucle "if 'touch color red (debe obtener el color exacto)' then". En eso ponga un bloque de "posición fija". Ingresa las coordenadas donde aparece tu jugador. Obtenga un bucle "if 'touch color blue' then". En eso ponga un bloque de "posición fija". Ingresa las coordenadas donde aparece tu jugador. En él también se transmite "message1"

Tanto en el suelo como en los extras, obtén "cuando reciba 'mensaje1'" y pon "siguiente disfraz".

Ahora tienes las habilidades para hacer un juego de plataformas básico. Añádalo.

Para obtener más ayuda, haga clic en el enlace. Hace todo de lo que habla, este es su código.

scratch.mit.edu/projects/68924432/

Recomendado: