extends CPUParticles3D
var tiempo_transcurrido: float = 0.0
# Función que se ejecuta al entrar la escena por primera vez.
func _ready():
	pass  # Reemplaza con el cuerpo de la función si es necesario.
# Función que se ejecuta cada frame. 'delta' es el tiempo transcurrido desde el frame anterior.
func _process(delta):
	tiempo_transcurrido += delta
	if tiempo_transcurrido >= 3.0:
		# Cambiar la escena a "otro.tscn"
		var siguiente_escena = preload("res://BARCO Y ELEMENTOS DEL BARCO/BARRIL EXPLOSIBO/bidon.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
-------------------------------------------
-------------------------------------------
Explicacion: muy buen script a los 3 segundos borra la escena y se dirije a otra diferente, con estos pasos podre hacer avances muy importantes en godot 4.2 , como player abatido y cambio a escena de este cuando cae y retorno a riniciar el juego, cambios de camaras tambien creo podre hacer.......
--------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------
SCRIPT POR PUNTUACION SI LLEGA A LOS 8 PUNTOS BORRA LA ESCENA Y CAMBIA A OTRA CON CAMARA FUNCIONA¡¡¡¡¡¡¡¡
---------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------
extends Area3D  
#var fuerza_intensidad = 110.9  // Variable que define la intensidad de la fuerza que se aplicará en la colisión.
var score = 0  
# Se llama cuando el nodo ingresa al árbol de escena por primera vez.
func _ready():
	pass  # Por ahora, este método está vacío, pero puedes usarlo para realizar configuraciones iniciales.
# Se llama en cada frame del juego. 'delta' es el tiempo transcurrido desde el frame anterior.
func _process(delta):
	pass  # Por ahora, este método está vacío, pero puedes usarlo para realizar acciones que se repiten cada frame.
func _on_area_entered(area):  # Se llama cuando otro objeto entra en el área de colisión de este nodo.
	# Actualiza el texto del Label3D para mostrar la puntuación actual.
	$Label3D.text = str(score)
	# Aumenta la puntuación en 1.
	score += 1
	# Reproduce la animación "EXPLOTA" del AnimationPlayer adjunto al padre de este nodo (../ indica subir un nivel en la jerarquía del árbol de escena).
	$"../AnimationPlayer".play("EXPLOTA")
	# Reproduce el AudioStreamPlayer3D asociado al AnimationPlayer para generar un sonido de explosión.
	$"../AnimationPlayer/AudioStreamPlayer3D".play()
	
	# La parte comentada define una dirección de fuerza, por ahora no se usa en el código.
	# var direccion_fuerza = Vector3(fuerza_intensidad, 0.0, 0.0)
	# Puedes agregar aquí código para aplicar la fuerza a objetos que entren en colisión.
	# Si la puntuación alcanza los 100 puntos, cambia de escena a "AMA".
	if score == 8:
		var siguiente_escena = preload("res://BARCO Y ELEMENTOS DEL BARCO/BARRIL EXPLOSIBO/bidon.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