public Resources_Building(string id, string name, string image, Enums.BuildingType type, int money, int income, int expenses, int rent, int payment, Enums.DayOfTheWeek day, Resources_InventoryShop inventory) : base(id, name, image, money, income, expenses) { _type = type; _payment = payment; _day = day; _type = type; _inventory = inventory; Manager_Resources.NewBuilding(this); }
static public Enums.BuildingType BuildingTypeFromStatic(string text) { Enums.BuildingType value = Enums.BuildingType.building_empty; switch (text) { case "building_jewelry": value = Enums.BuildingType.building_jewelry; break; case "building_clothes": value = Enums.BuildingType.building_clothes; break; case "building_gym": value = Enums.BuildingType.building_gym; break; case "building_restaurant": value = Enums.BuildingType.building_restaurant; break; case "building_butcher": value = Enums.BuildingType.building_butcher; break; case "building_safehouse": value = Enums.BuildingType.building_safehouse; break; case "building_bar": value = Enums.BuildingType.building_bar; break; case "building_police": value = Enums.BuildingType.building_police; break; case "building_liquor": value = Enums.BuildingType.building_liquor; break; case "building_tobacco": value = Enums.BuildingType.building_tobacco; break; case "building_grocery": value = Enums.BuildingType.building_grocery; break; case "building_strip_club": value = Enums.BuildingType.building_strip_club; break; } return(value); }
private IEnumerator Building(Enums.BuildingType type) { Zone newBuilding = Instantiate(PrefabsHolder.Instance.GetZonePrefab(type)).GetComponent <Zone>(); newBuilding.BeforeBuildingActions(type); RaycastHit hit; while (Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out hit)) { newBuilding.transform.position = hit.point; if (newBuilding.IsBuildable() && hit.collider.gameObject.tag.Equals("Chunk")) { if (Input.GetKeyDown("r")) { newBuilding.transform.Rotate(Vector3.up, 90); } if (Input.GetMouseButton(0)) { newBuilding.AfterBuildingActions(); Player.Instance.building = false; yield break; } } if (Input.GetMouseButton(1)) { Object.Destroy(newBuilding.gameObject); Player.Instance.building = false; yield break; } yield return(null); } }
public GameObject GetBuilding(Enums.BuildingType type) { switch (type) { case Enums.BuildingType.Hut: return(Hut); case Enums.BuildingType.BigHut: return(BigHut); case Enums.BuildingType.WoodHouse: return(WoodHouse); case Enums.BuildingType.Mine: return(Mine); case Enums.BuildingType.Hunter: return(Hunter); case Enums.BuildingType.LumberHut: return(LumberHut); case Enums.BuildingType.Forager: return(Forager); case Enums.BuildingType.SmallFarm: return(SmallFarm); } return(null); }
public zon(pos3 location, pos3 size, Enums.BuildingType type, byte lvl, byte tier, bool builded, byte floor) { this.location = location; this.size = size; this.type = type; this.lvl = lvl; this.tier = tier; this.builded = builded; this.floor = floor; }
public override void BeforeBuildingActions(Enums.BuildingType newType) { type = newType; building = Instantiate(PrefabsHolder.Instance.GetBuilding(type), transform.position, Quaternion.identity); building.transform.parent = this.transform; SetBoundingBox(); foreach (Collider c in this.gameObject.GetComponentsInChildren <Collider>()) { c.enabled = false; } box.enabled = true; gameObject.layer = 2; }
public override void Promote(Enums.BuildingType newType) { UnSetInhabitants(); Destroy(building); type = newType; building = Instantiate(PrefabsHolder.Instance.GetBuilding(type), transform.position, Quaternion.identity); building.transform.parent = this.transform; SetBoundingBox(); Enter(); building.GetComponent <BuildingSuicideScript>().OnBuildingFinished += OnPopulationBuildingReady; building.GetComponent <BuildingSuicideScript>().Run(); }
public override void Promote(Enums.BuildingType newType) { StopAllCoroutines(); FireWorkers(); Production.Clear(); Destroy(building); type = newType; building = Instantiate(PrefabsHolder.Instance.GetBuilding(type), transform.position, Quaternion.identity); building.transform.parent = this.transform; SetBoundingBox(); Enter(); building.GetComponent <BuildingSuicideScript>().OnBuildingFinished += OnProductionBuildingReady; building.GetComponent <BuildingSuicideScript>().Run(); }
public GameObject GetZonePrefab(Enums.BuildingType type) { switch (type) { case Enums.BuildingType.Hut: case Enums.BuildingType.BigHut: case Enums.BuildingType.WoodHouse: return(PopulationZone); case Enums.BuildingType.Mine: case Enums.BuildingType.Forager: case Enums.BuildingType.Hunter: case Enums.BuildingType.LumberHut: case Enums.BuildingType.LumberHouse: return(ProductionZone); } return(null); }
public void SetButtons(string FirstBranchName, string SecondBranchName, Enums.BuildingType firstBranch, Enums.BuildingType secondBranch, Zone z) { if (firstBranch != Enums.BuildingType.None) { BuildingFirstPromotionButton.gameObject.SetActive(true); BuildingFirstPromotionText.text = FirstBranchName; BuildingFirstPromotionButton.onClick.AddListener(() => z.Promote(firstBranch)); } else { BuildingFirstPromotionButton.gameObject.SetActive(false); } if (secondBranch != Enums.BuildingType.None) { BuildingSecondPromotionButton.gameObject.SetActive(true); BuildingSecondPromotionText.text = SecondBranchName; BuildingSecondPromotionButton.onClick.AddListener(() => z.Promote(secondBranch)); } else { BuildingSecondPromotionButton.gameObject.SetActive(false); } }
public void Build(Enums.BuildingType type) { StartCoroutine(Building(type)); }
public virtual void Promote(Enums.BuildingType newType) { }
public virtual void BeforeBuildingActions(Enums.BuildingType newType) { }