public abstract float GetDistanceTolerance(Agent agent, Entity entity, Mapping mapping, float defaultTolerance);
public abstract Vector3 GetRotateTowardsLocation(Agent agent, Entity entity, Mapping mapping);
public abstract Vector3 GetInteractionSpot(Agent agent, Entity entity, Mapping mapping, bool forGoTo, bool forInventory);
public abstract bool CanBeInteractedWith(Agent agent, Entity entity, Mapping mapping);
public override void DestroySelf(Agent agent, float delay = 0f) { Destroy(gameObject, delay); }
private IEnumerator AddAttendeeCoroutine(Agent agent, float delay) { yield return(new WaitForSeconds(delay)); AddAttendee(agent); }
public void AddAttendee(Agent agent, float delay) { StartCoroutine(AddAttendeeCoroutine(agent, delay)); }
public void Setup(Agent agent) { this.agent = agent; behaviorContext = new Context(); }