28 lines
529 B
GDScript3
28 lines
529 B
GDScript3
|
extends Area
|
||
|
|
||
|
func _ready():
|
||
|
pass
|
||
|
|
||
|
func interact(_relate):
|
||
|
pass
|
||
|
|
||
|
|
||
|
func _on_Vent_body_entered(body):
|
||
|
if body.name == "Player":
|
||
|
body.tryCrouch(true)
|
||
|
|
||
|
|
||
|
func _on_Vent_body_exited(body):
|
||
|
if body.name == "Player":
|
||
|
body.in_vent = checkDir(body)
|
||
|
|
||
|
|
||
|
func checkDir(body):
|
||
|
var p_fwd = (global_transform.origin-body.global_transform.origin).normalized()
|
||
|
var fwd = global_transform.basis.z
|
||
|
#var left = global_transform.basis.x
|
||
|
|
||
|
#var l_dot = left.dot(p_fwd)
|
||
|
var f_dot = fwd.dot(p_fwd)
|
||
|
return f_dot < 0
|