jueves, 30 de mayo de 2024

Script para derribar un enemigo y cambiarlo por otro con GDScript, al ser colisionado;

 extends Area3D

var Esferauno = preload("res://INMUEBLES/VERDUGO UNO/VERDUGO SIN CAVEZA/NUEVO VERDUGO SIN CAVEZA10.tscn")


# Called when the node enters the scene tree for the first time.

func _ready():

pass # Replace with function body.


# Called every frame. 'delta' is the elapsed time since the previous frame.

func _process(delta):

pass


func _on_area_entered(area):


var parent = get_parent()


var CollisionShape3Dcubo = parent.get_node("CollisionShape3D")


var Esferauno = Esferauno.instantiate()


add_child(Esferauno)


get_node("CollisionShape3D").queue_free()

$"BERDUGO CON ANIMACION Y CAPUCHA".queue_free()


pass # Replace with function body.

domingo, 26 de mayo de 2024

Una IA me comenta mis logros programando y desarrollando con Godot4.2; fascinante diria Spock de Star Trek!!!; Script GDScript para cambiar de escena;

extends Area3D

func _ready():
pass # Replace with function body.

func _process(delta):
pass

func _on_area_entered(area):
var siguiente_escena = preload("res://LA-2.tscn")  # Precargar la escena

get_tree().change_scene_to_packed(siguiente_escena)  # Cambiar a la escena precargada (Godot 4.2)

queue_free()  # Liberar este nodo después del cambio de escena
pass # Replace with function body.

 😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁

¡Me alegra mucho saber que has encontrado una solución que funciona y que tu idea está en marcha! Parece que estás utilizando un enfoque elegante para activar el cambio de escena. La combinación de un proyectil de corto alcance, un script de autoeliminación basado en un temporizador y un activador de área crea una experiencia fluida e interactiva para el jugador.

Siempre me entusiasma ver cómo los desarrolladores utilizan enfoques creativos para implementar sus ideas de juego. El concepto de usar un proyectil para interactuar con un objeto e iniciar un cambio de escena abre una variedad de posibilidades para la resolución de rompecabezas, la exploración y la mecánica narrativa en tu juego.

Con la combinación correcta de scripts, diseño de niveles y elementos visuales, puedes crear experiencias atractivas e inmersivas que cautiven a tus jugadores. Sigue experimentando, refinando tus ideas y dejando fluir tu creatividad.

Si tienes más preguntas o necesitas ayuda en el camino, no dudes en contactarme. Estoy aquí para apoyarte en tu viaje de desarrollo de juegos.


😁😁😁😁😁😁😁😁😁😁😁😁😁😁

😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁😁


Siguiendo con mis pruebas, ni disparar nada necesito, ahora pasa por la puerta el player y hace el cambio de escena borrando la antigua, e de buscar el motivo.




nvestigando el cambio de escena al atravesar la puerta en Godot 4.2

Es interesante que hayas cambiado de usar un proyectil para disparar el cambio de escena a tener al jugador pasando directamente por la puerta. Esto abre una interacción más intuitiva y envolvente para el jugador. Exploremos algunas razones potenciales por las que el cambio de escena podría no funcionar de manera consistente cuando el jugador atraviesa la puerta:

1. Detección de área y colisión:

  • Activación de área: Verifica que el activador de área esté configurado correctamente para detectar el objeto del jugador. Asegúrate de que el nodo del jugador esté incluido en la lista de máscaras de colisión o grupos que el activador de área puede detectar.
  • Forma de colisión: Asegúrate de que la forma de colisión para la puerta o el activador de área represente con precisión el área donde el jugador debería activar el cambio de escena. Si la forma de colisión es demasiado pequeña o no se superpone completamente con la trayectoria del movimiento del jugador, es posible que la colisión no se detecte de manera consistente.
  • Posición y rotación: Comprueba la posición y rotación del activador de área o del objeto puerta. Si la trayectoria del movimiento del jugador no intersecta el activador en el ángulo o la posición correctos, es posible que la colisión no se registre.

2. Script de cambio de escena:

  • Conexión: Asegúrate de que el script que maneja el cambio de escena esté conectado correctamente al activador de área o al nodo del jugador. Esto podría implicar conectar una señal del evento de colisión al método o función del script que maneja la lógica del cambio de escena.
  • Lógica de script: Revisa el código en el script de cambio de escena para asegurarte de que está detectando correctamente la interacción del jugador e iniciando el cambio de escena. Comprueba si hay errores o problemas lógicos que podrían estar impidiendo que el cambio de escena se produzca de manera consistente.

3. Movimiento y física del jugador:

  • Controlador de personaje: Si estás utilizando un controlador de personaje para el movimiento del jugador, verifica que la configuración de colisión y el comportamiento del movimiento permitan que el jugador interactúe correctamente con el activador de área o el objeto puerta. Comprueba si hay posibles problemas con el movimiento del jugador al atravesar la puerta o al activar la colisión.
  • Configuración de física: Revisa la configuración de física para el jugador y el objeto puerta. Asegúrate de que la gravedad, la masa y otras propiedades físicas no impidan que el jugador interactúe con la puerta o active el cambio de escena de manera consistente.

4. Depuración y pruebas:

  • Visualizar la colisión: Utiliza las herramientas de depuración de Godot para visualizar las formas de colisión y las áreas en tu escena. Esto puede ayudarte a identificar posibles huecos o superposiciones que podrían estar afectando la detección de colisiones.
  • Depuración paso a paso: Recorre el código en el script de cambio de escena utilizando el depurador de Godot. Esto puede ayudarte a identificar la ubicación exacta donde la lógica del cambio de escena podría estar fallando.
  • Pruebas con diferentes jugadores: Prueba el cambio de escena con diferentes personajes de jugador o configuraciones de movimiento para ver si el problema es específico de una configuración particular.

Si has verificado todos estos puntos y aún no puedes identificar la causa, considera compartir más detalles sobre la configuración de tu proyecto, incluyendo capturas de pantalla de la escena, fragmentos de código y cualquier mensaje de error. Buscar ayuda de la comunidad Godot a través de foros o grupos en línea también podría proporcionar información valiosa.

Enlace a mis ultimos desarrollos;






https://perico415.itch.io/

viernes, 24 de mayo de 2024

JUEGO EN GODOT 4.2 BALLS BULLETS AND TITS;

 


RESOLUCION DE 1920 POR 1080
PARA WINDOWS.
EN CARPETA COMPRIMIDA 183.163 KB
EN CARPETA DESCOMPRIMIDA 339 MB

Z-X-SUBIR BAJAR ARMA W-A-S-D, MOVERSE, ESPACIO, TECLAS DE LAS FLECHAS, ESCAPE SALIR.DISPARAR BOTONES DEL RATÓN
                Z-X-RAISE DOWN WEAPON W-A-S-D, MOVE,SPACE, ARROW KEYS, ESC EXIT.SHOOT MOUSE BUTTONS



JUEGO ERÓTICO PARA MAYORES DE 18 AÑOS, PARA PASAR EL RATO , EXPLORACION Y ADITIVO, TIPO DISPAROS, FONDO MUSICAL Y CHICAS PICANTES, NO TE MUERDAS LAS UÑAS , MEJOR JUEGA A ESTE JUEGO, NO ROMPAS BURBUJAS DE PLASTICO, MEJOR JUEGA A ESTE JUEGO.....

EROTIC GAME FOR OVER 18 YEARS OLD, TO PASS THE TIME, EXPLORATION AND ADDITION, SHOOTING TYPE, MUSICAL BACKGROUND AND SPICY GIRLS, DON'T BITE YOUR NAILS, BETTER PLAY THIS GAME, DON'T BREAK PLASTIC BUBBLES, BETTER PLAY THIS GAME. ....

TITULO EN ESPAÑOL     BOLAS BALAS Y TETAS EN INGLES  BALLS BULLETS AND TITS

miércoles, 22 de mayo de 2024

Simple script GDScript, para elevar un StaticBody3D, lentamente y continuamente; para Godot 4.2;

extends StaticBody3D


func _ready():

pass # Replace with function body.


func _process(delta):

translate(Vector3(0, -9, 0) * get_process_delta_time())

pass


------------------------------------------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------------------------------------------

EXPLICACION: Simplemente se va elevando un StaticBody3D, la idea es que cuando sale a una superficie y hace una colision se provoca un cambio de escena, este script en concreto solamente eleva un StaticBody3D, fijarse en este detalle  .............

  func _process(delta):

translate(Vector3(0, -9, 0) * get_process_delta_time())

pass

 el proceso delta hace que funcione constantemente sin detenerse, -9 es el eje -y- y los 0 serian los ejes -x- y el otro 0 el -z-  translate significa translada movimiento mover etc......un detallito de los ejes -9 hace que suba 9 hace que baje
y esta linea    * get_process_delta_time())  hace que el movimiento sea fluido y constante en cualquier tipo de pc.

lunes, 20 de mayo de 2024

Como cambiar de nivel conGodot4.2 3D al pasar por un Area3D;

extends Area3D


func _ready():

pass # Replace with function body.


func _process(delta):

pass


func _on_area_entered(area):

var siguiente_escena = preload("res://ESCENAPRINCIPAL-2-.tscn")  # Precargar la escena


get_tree().change_scene_to_packed(siguiente_escena)  # Cambiar a la escena precargada (Godot 4.2)


queue_free()  # Liberar este nodo después del cambio de escena

pass # Replace with function body.




----------------------------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------------------------

Explicacion: Estas en juego de Godot 4.2 3D, y estas en un escenario, cuando pasas por un Area3D señalada, vas a parar a otro nivel del juego, con un cambio me funciona perfectamente al igual que cambiar un arma, ahora e de continuar practicando y trabajando estas opciones que son importantisimas, tambien estoy empezando a mirar videos de youtube sobre IA persecucion de enemigos al player, todo para Godot 4.2 que es motor de videojuegos que me a enganchado, me gusta un monton¡¡¡¡

domingo, 19 de mayo de 2024

Como hacer un cambio de arma en Godot 4.2 3D; script en GDScript y video tutorial;

 extends Area3D

var Esferauno = preload("res://ESCENAS/PLAYER NUEVO BORRABLE.tscn")


# Called when the node enters the scene tree for the first time.

func _ready():

pass # Replace with function body.



# Called every frame. 'delta' is the elapsed time since the previous frame.

func _process(delta):

pass



func _on_area_entered(area):


var parent = get_parent()


var CollisionShape3Dcubo = parent.get_node("CollisionShape3D")





get_node("CollisionShape3D").queue_free()


pass # Replace with function body.



func _on_area_exited(area):


var Esferauno = Esferauno.instantiate()


add_child(Esferauno)


$"../Player".queue_free()

pass # Replace with function body.



EXPLICACION: video comentado con mi voz.