21 lines
473 B
GDScript
21 lines
473 B
GDScript
extends Area3D
|
|
|
|
@export var down = Vector3(0, -1, 0)
|
|
@export var follow_parent = false
|
|
|
|
# Called when the node enters the scene tree for the first time.
|
|
func _ready():
|
|
body_entered.connect(_on_area_entered)
|
|
|
|
|
|
func _on_area_entered(body : Node3D) -> void:
|
|
var new_down
|
|
if !follow_parent:
|
|
new_down = quaternion * down
|
|
else :
|
|
new_down = get_node("..").quaternion * quaternion * down
|
|
|
|
|
|
print ("Changing gravity to: ", new_down)
|
|
Globals.set_global_down(new_down)
|