revo-jailbreak/objects/enemy/rolling_fiend.gd

22 lines
625 B
GDScript

extends "res://objects/enemy/enemy.gd"
export var move_speed: float = 0.0
var move_dir: Vector2 = Vector2(-1.0, 0.0)
onready var casts = $Raycasts
onready var wall_cast = $Raycasts/WallCast
onready var floor_cast = $Raycasts/FloorCast
func _physics_process(delta):
position += move_dir * move_speed * delta
var rotation_change = -1.5708
if not floor_cast.is_colliding():
casts.rotation += rotation_change
position -= move_dir
move_dir = move_dir.rotated(rotation_change)
position += move_dir
elif wall_cast.is_colliding():
casts.rotation -= rotation_change
move_dir = move_dir.rotated(-rotation_change)