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; } } }
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); }