MarchGame/scripts/npc_character.gd

23 lines
666 B
GDScript

class_name NPCCharacter extends CharacterBody2D
func _physics_process(delta: float) -> void:
handle_movement(delta)
move_and_slide()
handle_collisions()
func handle_movement(_delta)->void:
# Add the gravity.
if not is_on_floor():
velocity += get_gravity() * _delta
func knockBack(direction, duration:float=0.2):
velocity = direction
await get_tree().create_timer(duration).timeout
velocity = Vector2.ZERO
func handle_collisions()->void:
for i in get_slide_collision_count():
var collision = get_slide_collision(i)
var collider = collision.get_collider()
# Check the collider's group or type
if collider is Player:
print("NPC hit by player")