24 lines
723 B
GDScript
24 lines
723 B
GDScript
@tool
|
|
class_name BelowWorldFailsafe
|
|
extends PlayerWaterTrigger
|
|
|
|
@export_group("Failsafe Authoring")
|
|
## Saved coverage volume that catches players below the playable world.
|
|
@export_node_path("CollisionShape3D")
|
|
var coverage_shape_path: NodePath = ^"Coverage"
|
|
|
|
|
|
func _ready() -> void:
|
|
super()
|
|
if Engine.is_editor_hint():
|
|
update_configuration_warnings()
|
|
|
|
|
|
func _get_configuration_warnings() -> PackedStringArray:
|
|
var warnings := PackedStringArray()
|
|
var coverage := get_node_or_null(coverage_shape_path) as CollisionShape3D
|
|
if coverage == null:
|
|
warnings.append("Add the saved Coverage collision shape.")
|
|
elif coverage.shape == null:
|
|
warnings.append("Assign a shape to the failsafe Coverage node.")
|
|
return warnings
|