예제 #1
0
 protected void OnTriggerActions(AIStateController controller, Collider other, AIStateController.TriggerType triggerType)
 {
     foreach (AIAction action in actions)
     {
         action.OnTrigger(controller, other, triggerType);
     }
 }
예제 #2
0
    public override void OnTrigger(AIStateController controller, Collider other, AIStateController.TriggerType triggerType)
    {
        if (other.CompareTag(BombariaTags.FLOOR) || triggerType != AIStateController.TriggerType.TriggerEnter)
        {
            return;
        }

        Collide(controller);
    }
예제 #3
0
 public abstract void OnTrigger(AIStateController controller, Collider other, AIStateController.TriggerType triggerType);
예제 #4
0
 public abstract DecisionResult OnTrigger(AIStateController controller, Collider other, AIStateController.TriggerType triggerType);
예제 #5
0
    protected void OnTriggerTransitions(AIStateController controller, Collider other, AIStateController.TriggerType triggerType)
    {
        foreach (AIStateTransition transition in transitions)
        {
            AIDecision.DecisionResult decisionResult = transition.decision.OnTrigger(controller, other, triggerType);

            SwitchToState(controller, transition, decisionResult);
        }
    }
예제 #6
0
 public void OnTrigger(AIStateController controller, Collider other, AIStateController.TriggerType triggerType)
 {
     OnTriggerActions(controller, other, triggerType);
     OnTriggerTransitions(controller, other, triggerType);
 }