public int currentActionKey = 0; // Key used to access the sequential action's dictionary public void SetupSequentialAction(CustomerAIAction action) { if (action.actionType == CustomerAIAction.ActionType.sequence) { actions = action.actions; DoNext(); } }
public void TryNextAction() { if (!performingAction && queuedActions.Count > 0) { performingAction = true; currentAction = queuedActions.Dequeue(); pathfinding.currentAction = CustomerPathfinding.CustomerAction.performingAction; //print("Performing action"); pathfinding.SetupSequentialAction(currentAction); } }
public void AssignAction(CustomerAIAction action) { action.customer = this; queuedActions.Enqueue(action); TryNextAction(); }