miércoles, 21 de febrero de 2024

destruir por colision un cubo e instanciar en su lugar una esfera con godot4.2;

 extends Area3D

var Esferauno = preload("res://GRAFICOS/ESTUDIO DE ROSCAS CON PERSONAJE/esferauno.tscn")


func _ready():

# Replace with function body.

pass


func _process(delta):

# Replace with function body.

pass





func _on_area_entered(area):

var parent = get_parent()


var cubouno = parent.get_node("cubouno")

 


get_node("cubouno").queue_free()

pass # Replace with function body.



func _on_area_exited(area):

var Esferauno = Esferauno.instantiate()


add_child(Esferauno)

pass # Replace with function body.

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

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

ESTE SCRIPT ES PERFECTO. EXPLICACION:

EN REALIDAD SOLO ES EL ORDEN DE LOS GRAFICOS EN LA ESCENA.......PARTIENDO DEL NODO RAIZ QUE ES UN WorldEnvironment EN MI JUEGO SALE DESDE EL WorldEnvironment UN HIJO QUE ES UNA AREA3D Y DE ESA AREA3D SALE  EL COLISIONSHAPE3D DE HIJO DEL AREA 3D Y DE HIJO DEL COLISIONSHAPE3D SALE EL CUBO QUE ES DE TIPO CGSBOX3D, ,,, LA ESFERA ES UNA ESCENA NUEVA QUE ESTA EN LA CARPETA 

"res://GRAFICOS/ESTUDIO DE ROSCAS CON PERSONAJE/esferauno.tscn"


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

EL SCRIPT ESTE ES PERFECTO..........EL DE AVAJO ...EL PRIMERO EL DE ARRIBA NO FUNCIONA PERFECTO SE BLOQUEA DESDE EL MOTOR DE JUEGOS GODOT4.2 CUANDO SE BUELVE A REPETIR EL DISPARO......

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



extends Area3D
var Esferauno = preload("res://GRAFICOS/ESTUDIO DE ROSCAS CON PERSONAJE/esferauno.tscn")

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

func _process(delta):
# Replace with function body.
pass




func _on_area_entered(area):
var parent = get_parent()

var CollisionShape3Dcubo = parent.get_node("CollisionShape3Dcubo")
 

get_node("CollisionShape3Dcubo").queue_free()
pass # Replace with function body.


func _on_area_exited(area):
var Esferauno = Esferauno.instantiate()

add_child(Esferauno)
pass # Replace with function body.

No hay comentarios:

Publicar un comentario