Ir al contenido principal

Godot 2D, Tragamonedas

Presiona el botón y prueba tu suerte.




Antes de comenzar, las ilustraciones, la tipografía, y el dibujo vectorial están aquí.
http://www.mediafire.com/file/wn01dov0pni9ms8/Ilustraciones_del_tragamonedas.zip/file


Para la ventana necesitamos los nodos:

  • "Node2D" como nodo raíz, le ponemos el nombre de: "Ventana"
  • "Sprite" como hijo de "Node2D", le ponemos el nombre de: "Cinta"
  • "Sprite" como hijo de "Node2D", le ponemos el nombre de: "Marco"
  • "Tween" como hijo de "Node2D".




Añadimos un script al nodo raíz.




Seguimos en el nodo raíz, lo agregamos a un grupo que llamaremos: "Casilla".




Seleccionamos el nodo "Cinta", le agregamos la textura, desplegamos la opciones de "Region", marcamos la casilla de "Enabled", ahora en:
x: ponemos cero
y: la posición en donde se visualiza de forma centrada el último frame de la textura, 250
w: el ancho de la textura, 150
h: que tanto de la textura quieres mostrar, 200.




Ahora para hacer que la textura se repita en la medida que la desplazamos,
clic en la textura desde la ventana "Sistema de archivos".




Nos vamos a la ventana "Importar", deslizamos hasta la sección "Flags", en "Repeat" cambiamos a la opción "Enabled", clic en "Reimportar".




Ahora la textura ya se repite cada que la desplacemos a través de su region.




Nos vamos al nodo "Marco", le agregamos su textura como normalmente lo hemos hecho.




Sigue el nodo "Tween", conectamos las señales:
"tween_all_completed" a la función "_giro_completdo()" y
"tween_step" a la función "_esta_girando()"




Ponemos esto en el script:





Ahora la lista de nodos tiene este aspecto.




Para la escena principal usamos los nodos:

  • "Node2D" como nodo raíz, le ponemos el nombre de: "Maquina"
  • "Button" como hijo de "Node2D", ponemos el texto "Iniciar"
  • "Label" como hermano de "Button"
  • Enlazamos nuestro nodo "Ventana" como hijo de "Node2D" tres veces.

Ordenamos los nodos.



Añadimos un script al nodo "Maquina".




Vamos al nodo "Button", conectamos la señal "pressed" al método "iniciar()".




En el nodo "Ventana2", cambiamos su duración a 2 segundos.




En el nodo "Ventana3", cambiamos su duración a 3 segundos.




Ingresamos las ordenes al script.





¡Listo, ahora presiona el botón para Iniciar!

Ligas para descargar.
https://www.mediafire.com/file/p64g6etuckcm1tw/Tragamonedas.zip/file

Nota:
La probabilidad de lograr 3 iguales son del 1%, lo cual es muy alto para este tipo de juegos, puedes disminuir la probabilidad alterando los número aleatorios ( que es como hacer trampa ), ó puedes poner mas imágenes, pues como notaras en este ejemplo estoy usando 4 posibles opciones por casilla.

Comentarios

Entradas más populares de este blog

Godot 2D, Burro castigado

Es un juego de cartas similar al juego de UNO. Reglas: Comenzamos por repartir cuatro cartas a cada jugador. 1. El primer jugador tira una carta, la que quiera. 2. Los jugadores de la derecha deben tirar solo una carta del mismo palo. 3. Quien halla sacado la carta mas alta gana la ronda, ahora tira la carta que quiera. 4. Se repiten los pasos 2 y 3. Si no tienes una carta del mismo palo debes tomar cartas de la baraja hasta que puedas tirar una, si se acaban las cartas de la baraja cedes tu turno al de la derecha, gana el jugador que se quede sin cartas. Las ilustraciones y dibujo vectorial aquí están: http://www.mediafire.com/file/oisuslw4o2n0oac/Ilustraciones_de_Burro_castigado.zip/file Comenzamos por crear una carta, en una nueva escena colocamos el nodo: "TextureButton" como nodo raíz, le ponemos el nombre de: "Carta". En el apartado "Textures", "Normal" colocamos un "Nuevo AtlasTexture". Clic en ...

Godot 3D, Disparar

Apuntas y disparas. Comenzamos con la bala, debido a la amplia variedad de funciones que puede cumplir, mostramos como hacer una bala con los 3 nodos: "RigidBody", "Area" y "KinematicBody". Bala "RigidBody" Es la bala que estamos usando en la imagen de portada, ya que esta constantemente cayendo no alcanza a llegar al centro de la mira, ademas debe cumplir con la tarea de mover las cajas (debe tener masa y por ende gravedad). Bala "Area" Esta bala no mueve a las cajas, las atraviesa, es bueno registrando las cosas que toca. Bala "KinematicBody" Esta bala si mueve a las cajas pero llegando al suelo se desliza, lo cual puedes corregir con código extra no mostrado aquí. Aveces debido a lo rápido que es una bala ni siquiera se molestan en hacerla, simplemente: Si se presiona el gatillo y hay a que darle, a ese objetivo directamente le activan la función de bajar vida sin esperar la col...

Godot 3D, Alinear con el terreno

Gira para alinearse con el suelo. Vista ortogonal izquierda con las formas de colisión visibles: Para el personaje: "KinematicBody" como nodo raíz, lo nombramos: "Personaje" "MeshInstance" como hijo de "Personaje" "KinematicBody" como hijo de "MeshInstance" "CollisionShape" como hijo de "KinematicBody" "CollisionShape" como hijo de "Personaje" "RayCast" como hijo de "Personaje", lo nombramos: "Morro" "RayCast" como hijo de "Personaje", lo nombramos: "Cola" "RayCast" como hijo de "Personaje", lo nombramos: "Izquierda" "RayCast" como hijo de "Personaje", lo nombramos: "Derecha". En el nodo raíz, cambiamos la capa y máscara de colisión al bit 1. Clic en el nodo "MeshInstace", le añadimos su malla. Ambos nodos "Coll...