private void CheckStronghold() { if (aiStronghold.CheckFinish() && workerList.Count < 3 && !aiStronghold.GetComponent <UnitTraining>().IsTraining() && playerStat.GetEther() >= 100) { aiStronghold.GetComponent <UnitTraining>().TrainOrder(0); } if (aiStronghold.CheckFinish() && !aiBarrack && playerStat.GetEther() >= 850) { BuildingSystem barrackDummy = aiStronghold.GetComponent <ConstructSystem>().GetBuildingToConstruct(0); GameObject posDummy = Instantiate(aiPointDummy, aiStronghold.transform.position, aiStronghold.transform.rotation) as GameObject; posDummy.transform.Rotate(new Vector3(0, Random.Range(110f, 150f), 0)); posDummy.transform.position += posDummy.transform.forward * Random.Range(25f, 30f); aiBarrack = Instantiate(barrackDummy, posDummy.transform.position, aiStronghold.transform.rotation) as BuildingSystem; aiBarrack.transform.Rotate(new Vector3(0, 180, 0)); aiBarrack.StartToBuild(playerStat.GetPlayerNumber()); playerStat.SetEther(playerStat.GetEther() - 850); } if (aiStronghold.CheckFinish() && !aiStable && playerStat.GetEther() >= 1000) { BuildingSystem stableDummy = aiStronghold.GetComponent <ConstructSystem>().GetBuildingToConstruct(2); GameObject posDummy = Instantiate(aiPointDummy, aiStronghold.transform.position, aiStronghold.transform.rotation) as GameObject; posDummy.transform.Rotate(new Vector3(0, Random.Range(200f, 240f), 0)); posDummy.transform.position += posDummy.transform.forward * Random.Range(25f, 30f); aiStable = Instantiate(stableDummy, posDummy.transform.position, aiStronghold.transform.rotation) as BuildingSystem; aiStable.transform.Rotate(new Vector3(0, 180, 0)); aiStable.StartToBuild(playerStat.GetPlayerNumber()); playerStat.SetEther(playerStat.GetEther() - 800); } }
private void CheckStable() { if (aiStable.CheckFinish() && armyList.Count < 6) { UnitTraining stableTrain = aiStable.GetComponent <UnitTraining>(); stableTrain.TrainOrder(0); } }
private void CheckBarrack() { Debug.Log("AI " + playerStat.GetPlayerNumber() + " build barrack."); if (aiBarrack.CheckFinish() && armyList.Count < 6) { UnitTraining barrackTrain = aiBarrack.GetComponent <UnitTraining>(); barrackTrain.TrainOrder(Random.Range(0, 3)); } Debug.Log("AI " + playerStat.GetPlayerNumber() + " find army."); UnitGroupSystem[] groupF = FindObjectsOfType <UnitGroupSystem>(); foreach (UnitGroupSystem groupDum in groupF) { if (groupDum.GetOwner() == playerStat.GetPlayerNumber() && !armyList.Contains(groupDum)) { armyList.Add(groupDum); Debug.Log("AI " + playerStat.GetPlayerNumber() + " add 1 army to group."); } } Debug.Log("AI " + playerStat.GetPlayerNumber() + " have army : " + armyList.Count); }