using System.Collections;
using System.Collections.Generic;
using BehaviourTrees;
using UnityEngine;

public class CatchCarrotTask : Task
{
    protected override Status OnEvaluate(Transform agent, Blackboard blackboard)
    {
        var carrot = blackboard.Get<GameObject>("carrot");
        var speed = blackboard.Get<float>("speed");

        if (carrot == null) return Status.Failure;

        if (Vector2.Distance(agent.position, carrot.transform.position) <= 0.01f)
            return Status.Success;

        Vector2 position = Vector2.MoveTowards(agent.position, carrot.transform.position, speed * Time.deltaTime);
        position.y = agent.position.y;
        agent.position = position;
        return Status.Running;
    }
}