26 lines
611 B
GDScript3
26 lines
611 B
GDScript3
|
|
extends Path3D
|
||
|
|
|
||
|
|
var particle_np := preload("res://VFX/paint_brush_particle.tscn")
|
||
|
|
|
||
|
|
@export var duration : float = 6.0
|
||
|
|
@export var spawn_timer : float = 0.1
|
||
|
|
@export var spawn_number : int = 5
|
||
|
|
@export var color : Color
|
||
|
|
|
||
|
|
var timer : float = 0.0
|
||
|
|
|
||
|
|
func _physics_process(delta: float) -> void:
|
||
|
|
if timer >= spawn_timer:
|
||
|
|
for i in range(spawn_number):
|
||
|
|
add_particle()
|
||
|
|
timer = 0.0
|
||
|
|
else:
|
||
|
|
timer += delta
|
||
|
|
|
||
|
|
func add_particle() -> void:
|
||
|
|
var particle = particle_np.instantiate()
|
||
|
|
particle.duration = duration
|
||
|
|
add_child(particle)
|
||
|
|
particle.sprite.modulate = color
|
||
|
|
particle.sprite.position.x = randf_range(-2.0,2.0)
|