using System; using BehaviorDesigner.Runtime.Tasks; using DDD.Npcs.Customers; using Action = BehaviorDesigner.Runtime.Tasks.Action; namespace DDD.BehaviorTrees.Actions { [TaskCategory("Custom/Npc/Customer")] [Serializable] public class PayMoney : Action { private Customer _customer; public override void OnAwake() { _customer = GetComponent(); } public override void OnStart() { _customer.MoveMoneyCounter(); } public override TaskStatus OnUpdate() { if (!_customer.CanMoneyCounterInteractionPosition()) return TaskStatus.Running; _customer.PayMoney(); return TaskStatus.Success; } } }