// Tra ve ID nguoi thang public int isGameOver() { int size = GameObject.Find("Hexagon Background").GetComponent <HexagonContainerGenerator>().size; int maxColumnLength = size * 2 - 1; bool hasAvalaibleMoveVioletPlayer = false; bool hasAvalaibleMoveBlackPlayer = false; int playerID = gameObject.GetComponent <Player>().playerID; for (int col = 1 - size; col <= size - 1; col++) { for (int row = 0; row < maxColumnLength - Mathf.Abs(col); row++) { GameObject ctn = GameObject.Find("ctn[" + col + "," + row + "]"); if (ctn == null) { return(0); } HexagonController controller = ctn.GetComponent <HexagonController>(); GameObject hexagon = controller.getHexagon(); if (hasAvalaibleMoveBlackPlayer && hasAvalaibleMoveVioletPlayer) { break; } //Neu o do khong co hexagon thi bo qua if (hexagon == null) { continue; } else { if (hexagon.name.Contains("HexagonViolet")) { if (hasAvalaibleMoveVioletPlayer) { continue; } if (controller.getListRelativeHexagonLevel1(ctn).Count > 0) { hasAvalaibleMoveVioletPlayer = true; continue; } if (controller.getListRelativeHexagonLevel2(ctn).Count > 0) { hasAvalaibleMoveVioletPlayer = true; continue; } } if (hexagon.name.Contains("HexagonBlack")) { if (hasAvalaibleMoveBlackPlayer) { continue; } if (controller.getListRelativeHexagonLevel1(ctn).Count > 0) { hasAvalaibleMoveBlackPlayer = true; continue; } if (controller.getListRelativeHexagonLevel2(ctn).Count > 0) { hasAvalaibleMoveBlackPlayer = true; continue; } } } } } if ((!hasAvalaibleMoveVioletPlayer && playerID == 1) || (!hasAvalaibleMoveBlackPlayer && playerID == 2)) { //Tinh diem if (violetPointNow > blackPointNow) { return(1); } else if (violetPointNow == blackPointNow) { return(3); } else if (blackPointNow > violetPointNow) { return(2); } } return(0); }