예제 #1
0
 public void OnTriggerEnter(Collider other)
 {
     if (m_State == TrapState.IDLE)
     {
         GameObject gO = other.gameObject;
         if (gO.CompareTag(ConstValues.PLAYER_TAG))
         {
             //TODO: Kill Player
             PlayerController playerControl = gO.GetComponent <PlayerController>();
             if (playerControl != null)
             {
                 playerControl.OnDeath();
             }
             m_State = TrapState.TRIGGERED;
         }
         else if (gO.CompareTag(ConstValues.AI_RUNNER_TAG))
         {
             //TODO: Kill Runner
             AIRunnerBehaviour aiBehav = gO.GetComponent <AIRunnerBehaviour>();
             if (aiBehav != null)
             {
                 aiBehav.Kill();
             }
             m_State = TrapState.TRIGGERED;
         }
     }
 }
예제 #2
0
파일: AIController.cs 프로젝트: jtabG/Alone
    private bool SendMinion()
    {
        IEnumerator <IAIBehaviour> iter = m_AIs.GetEnumerator();

        while (iter.MoveNext())
        {
            if (iter.Current.GetAIType() == AIType.SUICIDE_SAM)
            {
                if (iter.Current.GetState() == AIState.IDLE)
                {
                    AIRunnerBehaviour aiBehav = iter.Current as AIRunnerBehaviour;
                    aiBehav.SendToTarget();
                    return(true);
                }
            }
        }
        return(false);
    }