22 lines
724 B
GDScript
22 lines
724 B
GDScript
extends "res://objects/enemy/enemy.gd"
|
|
|
|
export var move_speed: float = 0.0
|
|
export var clockwise: bool = false
|
|
|
|
onready var floor_test = Physics2DShapeQueryParameters.new()
|
|
|
|
var floor_direction = Vector2.DOWN
|
|
|
|
func _ready():
|
|
if clockwise:
|
|
$AnimatedSprite.flip_h = true
|
|
floor_test.set_shape($FloorTestShape.shape)
|
|
floor_test.collision_layer = 1
|
|
|
|
func _physics_process(delta):
|
|
var rot_dir = -1.5708 if clockwise else 1.5708
|
|
var space_state = get_world_2d().direct_space_state
|
|
floor_test.transform = global_transform.translated(floor_direction)
|
|
if space_state.collide_shape(floor_test, 1).empty():
|
|
floor_direction = floor_direction.rotated(-rot_dir)
|
|
position += floor_direction.rotated(rot_dir) * move_speed * delta
|