using Godot;
using System;

public partial class Caffeinate : Action
{
    public Caffeinate(Node2D OWNER) : base(OWNER)
    {
        _triggers.Add(Trigger.On.Collision);
    }

    public override void Fire()
    {
        if (_target != null)
        {
            if (_target is Worker)
            {
                Worker target = (Worker)_target;
                target._rotationalForce += 10;
                Vector2 targetDistanceNormal = (target.Position - _owner.Position).Normalized();
                target.ApplyCentralForce(targetDistanceNormal * 10);
                target.ChangeHealth(-1, _owner);
            }
            _target = null;
        }
    }
}
