Mostrando entradas con la etiqueta Al impactar generamos particulas con GDScript para Godot 4.6;. Mostrar todas las entradas
Mostrando entradas con la etiqueta Al impactar generamos particulas con GDScript para Godot 4.6;. Mostrar todas las entradas

miércoles, 25 de marzo de 2026

Al impactar generamos particulas con GDScript para Godot 4.6;

 extends Area3D


@export var particulas: Node3D

@export var tamano_normal: Vector3 = Vector3(0, 0, 0)

@export var tamano_grande: Vector3 = Vector3(111.5, 111.5, 111.5) # Tu valor "mágico"

@export var tiempo_transicion: float = 0.3 


func _ready():

# Conectamos las señales

body_entered.connect(_on_body_entered)

body_exited.connect(_on_body_exited)

if particulas:

particulas.scale = tamano_normal

particulas.visible = false # EMPIEZA INVISIBLE (False)


func _on_body_entered(_body):

if particulas:

particulas.visible = true # SE ENCIENDE AL TOCAR (True)

var tween = create_tween()

# Usamos TRANS_ELASTIC para ese rebote chulo que tenías

tween.tween_property(particulas, "scale", tamano_grande, tiempo_transicion).set_trans(Tween.TRANS_ELASTIC)


func _on_body_exited(_body):

if particulas:

var tween = create_tween()

tween.tween_property(particulas, "scale", tamano_normal, tiempo_transicion).set_trans(Tween.TRANS_SINE)

# Esperamos a que termine de hacerse pequeño para apagarlo del todo

await tween.finished

if not get_overlapping_bodies().size() > 0: # Seguridad: solo apaga si no hay nadie más dentro

particulas.visible = false # SE APAGA AL SALIR (False)


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

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

Explicacion:   Objetivo una araña al impactar con un elemento genera particulas, con este GDScript lo logramos, tenemos que hacerlas particulas aparte con el nodo que usa Godot para su creacion se las ponemos de hijo a la araña a un tamaño pequeño, el GDScript se encarga de que sean imvisibles y solo se agan visibles cuando hay un impacto.......las particulas su grafico se arrastra al inspector.....se logra que aparezca por la caracteristica de @export var particulas: Node3D      @export esta palabra es clave y hace maravillas, y se consigue poder variar tamaños velocidades...........