21 lines
471 B
GDScript
21 lines
471 B
GDScript
extends State
|
|
|
|
@onready var timer = $Timer
|
|
var dir: Vector3 = Vector3(0,0,0);
|
|
|
|
func enter(previous_state_path: String, data := {}) -> void:
|
|
timer.start((float)(randi() % 10)/20)
|
|
dir = calc_dir(randi() % 360)
|
|
|
|
func physics_update(_delta: float) -> void:
|
|
owner.move(dir)
|
|
|
|
func calc_dir(angle: float) -> Vector3:
|
|
return Vector3(cos(angle), sin(angle), 0)
|
|
|
|
func _on_timer_timeout() -> void:
|
|
finished.emit(owner.fsm.States.IDLE, {})
|
|
|
|
func exit() -> void:
|
|
timer.stop()
|