I-HATE-THE-FUCKING-HORSE-GAME/addons/godot-rapier2d/faucet_2d.gd
2025-07-23 17:01:02 -06:00

27 lines
853 B
GDScript

class_name Faucet2D
extends Fluid2D
@export var interval := 0.06
@export var max_particles: int = 1000
@export var width: int = 4
@export var height: int = 2
var points_new: PackedVector2Array
var velocities_new: PackedVector2Array
func _ready():
points_new = create_rectangle_points(width, height)
velocities_new.resize(points_new.size())
var gravity_value = ProjectSettings.get("physics/2d/default_gravity")
var gravity_dir = ProjectSettings.get("physics/2d/default_gravity_vector")
var dir = global_transform.basis_xform(gravity_dir * gravity_value)
velocities_new.fill(dir)
get_tree().create_timer(interval).timeout.connect(_on_timer_timeout)
func _on_timer_timeout():
get_tree().create_timer(interval).timeout.connect(_on_timer_timeout)
if len(points) > max_particles:
return
add_points_and_velocities(points_new, velocities_new)