public void showNums() { GameObject[] PlayerArray = GameObject.FindGameObjectsWithTag("Player"); for (int i = 0; i < PlayerArray.Length; i++) { TeamTag tag = PlayerArray[i].GetComponent <TeamSetup>().teamTag; bool temp = !TeamCount[tag].Contains(PlayerArray[i]); if (Vector3.Distance(transform.position, PlayerArray[i].transform.position) < radius) { if (temp) { TeamCount[tag].Add(PlayerArray[i]); } } else { if (!temp) { TeamCount[tag].Remove(PlayerArray[i]); } } } TeamTag tempTag = TeamTag.red; for (int i = 0; i < teamTextList.Length; i++) { teamTextList[i].text = TeamCount[tempTag].Count.ToString(); teamTextList[i].color = TeamSetup.returnColor(tempTag); tempTag++; } }
private void Update() { OccupyRate = Mathf.Clamp(OccupyRate, 0, 100); if (OccupyRate == 0) { precentOccTeam = lastOccTeam; } OccupySlider.value = OccupyRate / 100f; SliderBack.GetComponent <Image>().color = TeamSetup.returnColor(precentOccTeam); drawCircle(); showNums(); if ((Time.time - prevTime) > 1) { prevTime = Time.time; int InAreaTeam = 0; int TeamNums = 0; TeamTag InAreaTeamName = TeamTag.red; TeamTag tempTag = TeamTag.red; for (int i = 0; i < TeamCount.Count; i++) { if (TeamCount[tempTag].Count != 0) { InAreaTeam++; if (TeamCount[tempTag].Count > TeamNums) { TeamNums = TeamCount[tempTag].Count; } InAreaTeamName = tempTag; } tempTag++; } if (InAreaTeam == 1) { lastOccTeam = InAreaTeamName; if (precentOccTeam != InAreaTeamName) { OccupyRate -= teamNumAddRate[TeamNums]; } else { OccupyRate += teamNumAddRate[TeamNums]; } } } }
private void Start() { infectColor = TeamSetup.returnColor(GetComponent <TeamSetup>().teamTag); }