DefenseWall GetDefenseWall(DIRECTION dir) { DefenseWall wallNodes = null; foreach (DefenseWall df in defenses) { if (df.direction == dir) { wallNodes = df; } } return(wallNodes); }
void CalculateOutDFLists() { // wave 3 DefenseWall pos1 = GetDefenseWall(DIRECTION.NORTH); DefenseWall pos2 = GetDefenseWall(DIRECTION.SOUTH); wave3Nodes = new DefenseNode[8]; int counter = 0; foreach (DefenseNode n in pos1.defenseNodes) { wave3Nodes[counter] = n; counter++; } foreach (DefenseNode n in pos2.defenseNodes) { wave3Nodes[counter] = n; counter++; } counter = 0; /* wave 4 */ pos1 = GetDefenseWall(DIRECTION.WEST); pos2 = GetDefenseWall(DIRECTION.EAST); wave4Nodes = new DefenseNode[8]; counter = 0; foreach (DefenseNode n in pos1.defenseNodes) { wave4Nodes[counter] = n; counter++; } foreach (DefenseNode n in pos2.defenseNodes) { wave4Nodes[counter] = n; counter++; } counter = 0; //wave 5+ pos1 = GetDefenseWall(DIRECTION.NORTH); pos2 = GetDefenseWall(DIRECTION.SOUTH); DefenseWall pos3 = GetDefenseWall(DIRECTION.WEST); DefenseWall pos4 = GetDefenseWall(DIRECTION.EAST); wave5AndUpNodes = new DefenseNode[16]; foreach (DefenseNode n in pos1.defenseNodes) { wave5AndUpNodes[counter] = n; counter++; } foreach (DefenseNode n in pos2.defenseNodes) { wave5AndUpNodes[counter] = n; counter++; } foreach (DefenseNode n in pos3.defenseNodes) { wave5AndUpNodes[counter] = n; counter++; } foreach (DefenseNode n in pos4.defenseNodes) { wave5AndUpNodes[counter] = n; counter++; } }
public void UpdateDefensePoints() { if (AreMovingToDFPoints == false && GameManager.GetBreakTimeRemaining() < 10.0f && GameManager.InBreakTime()) { this.UpdateSurvivorList(); this.ClearDefensePoints(); currWave = GameManager.GetCurrentWaveNumber() + 1; if (currWave == 1) { //north DefenseWall pos = GetDefenseWall(DIRECTION.NORTH); SetUpDefensePosition(pos.defenseNodes); } if (currWave == 2) { //south DefenseWall pos = GetDefenseWall(DIRECTION.SOUTH); SetUpDefensePosition(pos.defenseNodes); } else if (currWave == 3) { //north, south //DefenseWall pos1 = GetDefenseWall(DIRECTION.NORTH); //DefenseWall pos2 = GetDefenseWall(DIRECTION.SOUTH); SetUpDefensePosition(wave3Nodes); //SetUpDefensePosition(pos2); } else if (currWave == 4) { //north, south, east, west //DefenseWall pos1 = GetDefenseWall(DIRECTION.NORTH); //DefenseWall pos2 = GetDefenseWall(DIRECTION.SOUTH); //DefenseWall pos3 = GetDefenseWall(DIRECTION.WEST); //DefenseWall pos4 = GetDefenseWall(DIRECTION.EAST); // //SetUpDefensePosition(pos1); //SetUpDefensePosition(pos2); //SetUpDefensePosition(pos3); SetUpDefensePosition(wave3Nodes); } else if (currWave == 5) { SetUpDefensePosition(wave4Nodes); } else if (currWave > 5) { SetUpDefensePosition(wave5AndUpNodes); } /*else if (currWave > 4) * { * //north, south, east, west * DefenseWall pos1 = GetDefenseWall(DIRECTION.NORTH); * DefenseWall pos2 = GetDefenseWall(DIRECTION.SOUTH); * DefenseWall pos3 = GetDefenseWall(DIRECTION.WEST); * DefenseWall pos4 = GetDefenseWall(DIRECTION.EAST); * * SetUpDefensePosition(pos1); * SetUpDefensePosition(pos2); * SetUpDefensePosition(pos3); * SetUpDefensePosition(pos4); * }*/ AreMovingToDFPoints = true; } else if (GameManager.InBreakTime() == false) { AreMovingToDFPoints = false; } Invoke("UpdateDefensePoints", 4.0f); }