private void OnTriggerEnter(Collider other) { if (other.CompareTag("Chessman")) //如果碰到棋子,则回收 { if (pointerPool == null) { pointerPool = transform.parent.GetComponent <LeanPool>(); } if (chessmanManager == null) { chessmanManager = transform.parent.GetComponent <ChessmanManager>(); } GameObject go = other.transform.parent.gameObject; chessmanManager.DetectedObstacles.Add(go); //Debug.Log(chessmanManager.DetectedObstacles.Count.ToString() + "++++"); chessmanManager.spawnedPointers.Remove(gameObject); pointerPool.FastDespawn(gameObject); } }
/// <summary> /// 清除指针和障碍列表 /// </summary> public void hidePointer() { if (spawnedPointers.Count > 0) { for (int i = 0; i < spawnedPointers.Count; i++) { pointerPool.FastDespawn(spawnedPointers[i]); //Debug.Log("FastDespawn" + i + " " + spawnedPointers[i]); } spawnedPointers.Clear(); } if (DetectedObstacles.Count > 0) { DetectedObstacles.Clear(); } }