protected override void DoAction(BuildingStateController controller) { Building building = controller.building; if (building is SpawnHouse) { var spawnHouse = (SpawnHouse)building; UpdateSpawnRates(spawnHouse); } }
protected override void Awake() { base.Awake(); buildQueue = new Queue <string>(); float spawnX = selectionBounds.center.x + transform.forward.x * selectionBounds.extents.x + transform.forward.x * 20; float spawnZ = selectionBounds.center.z + transform.forward.z + selectionBounds.extents.z + transform.forward.z * 20; spawnPoint = new Vector3(spawnX, 0.0f, spawnZ); rallyPoint = spawnPoint; stateController = GetComponent <BuildingStateController>(); }
protected override void DoAction(BuildingStateController controller) { Building building = controller.building; if (building is SpawnHouse) { var spawnHouse = (SpawnHouse)building; if (controller.spawnTimer > spawnHouse.spawnInterval) { HandleSpawning(spawnHouse); controller.spawnTimer = 0; } } }
protected virtual void DoAction(BuildingStateController controller) { // the method is to be overriden }