public AIArchitect(AIController aiController) { defences = new Queue <BuildingTypes>(); avaliablePositions = new Dictionary <StructureType, List <Vector3> >(); avaliablePositions.Add(StructureType.MILITARY_BUILDING, new List <Vector3>()); avaliablePositions.Add(StructureType.RESOURCE_BUILDING, new List <Vector3>()); avaliablePositions.Add(StructureType.TOWER, new List <Vector3>()); avaliablePositions.Add(StructureType.HORIZONTALL_WALL, new List <Vector3>()); avaliablePositions.Add(StructureType.VERTICALL_WALL, new List <Vector3>()); avaliablePositions.Add(StructureType.CORNER_WALL, new List <Vector3>()); avaliablePositions.Add(StructureType.DEFENCE_ZONE, new List <Vector3>()); constructionGrid = GameObject.Find("GameController").GetComponent <ConstructionGrid>(); buildingsPlaced = 0; ai = aiController; baseCriticPoints = new List <Vector3>(); constructionGrid.reservePositionForStronghold(ai.rootBasePosition); if (constructionGrid.mode == AIController.AIMode.BATTLE) { planifyBuildingsAccordingToDifficulty(); readMapData(); } else { buildingPrefs = new List <BuildingTypes>(); } }
public AIArchitect(AIController aiController) { defences = new Queue<BuildingTypes>(); avaliablePositions = new Dictionary<StructureType, List<Vector3>>(); avaliablePositions.Add(StructureType.MILITARY_BUILDING, new List<Vector3>()); avaliablePositions.Add(StructureType.RESOURCE_BUILDING, new List<Vector3>()); avaliablePositions.Add(StructureType.TOWER, new List<Vector3>()); avaliablePositions.Add(StructureType.HORIZONTALL_WALL, new List<Vector3>()); avaliablePositions.Add(StructureType.VERTICALL_WALL, new List<Vector3>()); avaliablePositions.Add(StructureType.CORNER_WALL, new List<Vector3>()); avaliablePositions.Add(StructureType.DEFENCE_ZONE, new List<Vector3>()); constructionGrid = GameObject.Find("GameController").GetComponent<ConstructionGrid>(); buildingsPlaced = 0; ai = aiController; baseCriticPoints = new List<Vector3>(); constructionGrid.reservePositionForStronghold(ai.rootBasePosition); if(constructionGrid.mode == AIController.AIMode.BATTLE) { planifyBuildingsAccordingToDifficulty(); readMapData(); } else { buildingPrefs = new List<BuildingTypes>(); } }
// Use this for initialization //void Start() public BuildingsManager() { //player = GetComponent<Player>(); //inputs = etComponent<UserInput>(); grid = GameObject.FindWithTag("GameController").GetComponent <ConstructionGrid>(); cursor = CursorManager.Instance; // alpha components for the colors red.a = 0.5f; green.a = 0.5f; InitBuildingStruct(); notifier = GameObject.FindWithTag("GameController").GetComponent <EventsNotifier>(); }
// Use this for initialization //void Start() public BuildingsManager() { //player = GetComponent<Player>(); //inputs = etComponent<UserInput>(); grid = GameObject.FindWithTag("GameController").GetComponent<ConstructionGrid>(); cursor = CursorManager.Instance; // alpha components for the colors red.a = 0.5f; green.a = 0.5f; InitBuildingStruct(); notifier = GameObject.FindWithTag("GameController").GetComponent<EventsNotifier>(); }
/// <summary> /// When destroyed, it's called /// </summary> public override void OnDestroy() { GameObject gridGO = GameObject.Find("GameController"); if (gridGO != null) { ConstructionGrid grid = gridGO.GetComponent <ConstructionGrid>(); Vector3 disc_pos = grid.discretizeMapCoords(gameObject.transform.position); grid.liberatePosition(disc_pos); } ResourcesEvents.get.unregisterBuildingToEvents(this); base.OnDestroy(); Assert.IsTrue(status == EntityStatus.DESTROYED); }
void Awake() { instance = this; }