domingo, 7 de enero de 2024

Sript para Godot3d 4.2 produce una animacion de giro de todo el contenido del Area3d y borra dos hijos de dicho nodo Area3d;

 extends Area3D


# 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):

get_node("SOLDADOTIESO2VIVO").queue_free()

get_node("CollisionShape3D10 borroestoprueba").queue_free()

$AnimationPlayer.play("PELICULA180")

------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------
Explicacion:
 Tenemos un Area3d con una animacion de giro, cuando algo toca ese area3d, produce la animacion y a su vez borra dos nodos hijos de esta area3d el SOLDADOTIESO2VIVO y CollisionShape3D10 borroestoprueba

El func _on_area_entered(area): para que funcione se a de poner desde SEÑAL que esta en Nodos al lado del Inspector parte derecha de Godot..........


(hay que tener cuidado al duplicar archivos , por ejemplo si se pone este script en un Area3d que falta o tiene otro nombre por ejemplo el nodo hijo get_node("CollisionShape3D10 borroestoprueba").........pongamos no esta, o tiene otro nombre el juego funciona, pero al colisionar y estar incorrecto se cuelga el juego..................porque no encuentra esos archivos....



Script para godot3d 4.2, Un Area3d tiene una animacion que se activa, y un nodo hijo de otro tipo que se borra;

 extends Area3D


# 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):

get_node("SOLDADOTIESO2VIVO").queue_free()

$AnimationPlayer.play("PELICULA180")

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


explicacion: cuando algo entra en Area3D el area entera gira porque hice una animacion que grave , y a la vez un nodo hijo llamado get_node("SOLDADOTIESO2VIVO") es borrado por la linea .queue_free()