basic enemy movement
This commit is contained in:
parent
71d403298f
commit
5f7193e216
6 changed files with 133 additions and 2 deletions
20
base/scripts/enemies/floor_mover.gd
Normal file
20
base/scripts/enemies/floor_mover.gd
Normal file
|
@ -0,0 +1,20 @@
|
|||
extends Node
|
||||
|
||||
class_name FloorMover
|
||||
|
||||
@export var navigation_agent : NavigationAgent3D
|
||||
@export var move_target : Node3D
|
||||
|
||||
@export_category("Velocity Settings")
|
||||
@export var max_speed : float
|
||||
@export_range(0,720,0.1,"or_greater","radians_as_degrees","exp") var rotation_speed : float
|
||||
|
||||
func _physics_process(delta: float) -> void:
|
||||
if navigation_agent.is_navigation_finished(): return
|
||||
|
||||
if navigation_agent.is_target_reachable():
|
||||
var direction_to_next = (navigation_agent.get_next_path_position() - move_target.global_position).normalized()
|
||||
var delta_angle = clamp(move_target.basis.z.signed_angle_to(direction_to_next,Vector3.UP),-rotation_speed,rotation_speed)
|
||||
|
||||
move_target.rotation.y += delta_angle
|
||||
move_target.global_position += move_target.basis.z * max_speed * delta
|
1
base/scripts/enemies/floor_mover.gd.uid
Normal file
1
base/scripts/enemies/floor_mover.gd.uid
Normal file
|
@ -0,0 +1 @@
|
|||
uid://biqn05eyrhdya
|
Loading…
Add table
Add a link
Reference in a new issue