public void BuyCommodity(CommodityData commodity) { if (shipStatus == 0) { ShipItem item = GetShipItem(commodity); if (item.data.cost <= gameManager.money && item.data.storage <= (shipCap - shipStorage)) { item.AddAmount(1); gameManager.money -= item.data.cost; shipStorage += item.data.storage; if (textManager.LastMessageInChat() == lastIncrement + " " + item.data.storageSucess) { lastIncrement++; textManager.ReplaceMessageInChat(lastIncrement + " " + item.data.storageSucess); } else { textManager.SendMessageToChat(1 + " " + item.data.storageSucess, Message.MessageType.info); lastIncrement = 1; } } else if (item.data.cost > gameManager.money) { textManager.SendMessageToChat(item.data.storageFailMoney, Message.MessageType.info); } else if (item.data.storage > (shipCap - shipStorage)) { textManager.SendMessageToChat(item.data.storageFailCap, Message.MessageType.info); } //item.commodObject.transform.GetChild(1).GetChild(0).GetComponent<TMP_Text>().text = item.Amount.ToString(); ClearScreen(); WriteToScreen(); } }
public Commodity(CommodityData _commodityData) { data = _commodityData; amount = data.startAmount; production = data.value; staffed = 0; modifier = 100; }
public void AddOreBuilding(CommodityData commodityData, int amount) { if (commodityData == drillData) { drillSpare++; } else if (commodityData == tankData) { UpgradeStorage(commodityData); } }
public void CreateShipItem(CommodityData commodityData) { ShipItem item = new ShipItem(commodityData); if (item.data.OreData == null) { if (item.data.resource == CommodityData.Resource.Food) { item.commodObject = Instantiate(shipButtonPrefab, foodObjects.transform); item.commodObject.transform.position = new Vector2(foodObjects.transform.position.x, foodObjects.transform.position.y + (foodObjectCount * -30)); foodObjectCount++; } else if (item.data.resource == CommodityData.Resource.Energy) { item.commodObject = Instantiate(shipButtonPrefab, energyObjects.transform); item.commodObject.transform.position = new Vector2(energyObjects.transform.position.x, energyObjects.transform.position.y + (energyObjectCount * -30)); energyObjectCount++; } else { item.commodObject = Instantiate(shipButtonPrefab, earthMiscObjects.transform); item.commodObject.transform.position = new Vector2(earthMiscObjects.transform.position.x, earthMiscObjects.transform.position.y + (earthMiscObjectCount * -30)); earthMiscObjectCount++; } item.commodObject.GetComponent <Button>().onClick.RemoveAllListeners(); item.commodObject.GetComponent <Button>().onClick.AddListener(delegate() { BuyCommodity(item.data); }); item.commodObject.transform.GetChild(0).GetComponent <TMP_Text>().text = "Buy " + item.data.commodityName; } else { if (item.data.resource == CommodityData.Resource.Ore && item.data.type != CommodityData.Type.Building) { item.commodObject = Instantiate(shipButtonPrefab, oreObjects.transform); item.commodObject.transform.position = new Vector2(oreObjects.transform.position.x, oreObjects.transform.position.y + (oreObjectsCount * -30)); oreObjectsCount++; item.commodObject.GetComponent <Button>().onClick.RemoveAllListeners(); item.commodObject.GetComponent <Button>().onClick.AddListener(delegate() { LoadOre(item.data.OreData); }); item.commodObject.transform.GetChild(0).GetComponent <TMP_Text>().text = "Load " + item.data.commodityName; } else { item.commodObject = Instantiate(shipButtonPrefab, marsMiscObjects.transform); item.commodObject.transform.position = new Vector2(marsMiscObjects.transform.position.x, marsMiscObjects.transform.position.y + (marsMiscObjectsCount * -30)); marsMiscObjectsCount++; } } shipInventory.Add(item); }
public ShipItem GetShipItem(CommodityData commodityData) { ShipItem shipItem = null; for (int i = 0; i < shipInventory.Count; i++) { if (commodityData == shipInventory[i].data) { shipItem = shipInventory[i]; } } return(shipItem); }
public Technology(TechnologyCard _techCard) { techCard = _techCard; techName = _techCard.techName; descrption = _techCard.descrption; researchCost = _techCard.researchCost; canResearch = false; researched = false; isResearching = false; isSetAsCard = false; isStartingTech = _techCard.startingTechnology; techCommodity = _techCard.commodity; techtype = _techCard.techType; }
public void AddStaff(CommodityData commodityData) { Commodity commodity = GetCommodity(commodityData); if (isAddingStaff && gameManager.popSpare > 0 && commodity.Staffed < commodity.Amount) { commodity.ChangeStaff(1); gameManager.popSpare--; } else if (!isAddingStaff && commodity.Staffed > 0) { commodity.ChangeStaff(-1); gameManager.popSpare++; } commodity.productionLabel.transform.GetChild(0).GetChild(1).GetComponent <TMP_Text>().text = commodity.Staffed.ToString(); }
public Commodity GetCommodity(CommodityData commodityData) { Commodity commodity = null; for (int i = 0; i < commodities.Count; i++) { if (commodityData.commodityName == commodities[i].data.commodityName) { commodity = commodities[i]; } } if (commodity != null) { return(commodity); } return(null); }
//Creates a Unique Commodity entity. public void CreateCommodity(CommodityData commodityData) { Commodity commodity = new Commodity(commodityData); if (commodityData.resource == CommodityData.Resource.Food) { commodity.productionLabel = Instantiate(producionPrefab, new Vector2(0, -productionCount["Food"] * 20), Quaternion.identity); commodity.productionLabel.transform.GetChild(0).GetComponent <TMP_Text>().text = commodity.data.name + ":"; commodity.productionLabel.transform.SetParent(foodProductionLocation.transform, false); productionCount["Food"] += 1; } else if (commodityData.resource == CommodityData.Resource.Energy) { commodity.productionLabel = Instantiate(producionPrefab, new Vector2(0, -productionCount["Energy"] * 20), Quaternion.identity); productionCount["Energy"] += 1; commodity.productionLabel.transform.GetChild(0).GetComponent <TMP_Text>().text = commodity.data.name + ":"; commodity.productionLabel.transform.SetParent(energyProductionLocation.transform, false); } else if (commodityData.resource == CommodityData.Resource.Ore) { commodity.productionLabel = oreProductionLocation; productionCount["Ore"] += 1; } else if (commodityData.resource == CommodityData.Resource.Research) { commodity.productionLabel = researchProductionLocation; productionCount["Research"] += 1; } commodity.productionLabel.transform.GetChild(0).GetChild(1).GetChild(1).GetComponent <Button>().onClick.RemoveAllListeners(); commodity.productionLabel.transform.GetChild(0).GetChild(1).GetChild(1).GetComponent <Button>().onClick.AddListener(delegate() { StaffCheck(true); }); commodity.productionLabel.transform.GetChild(0).GetChild(1).GetChild(1).GetComponent <Button>().onClick.AddListener(delegate() { AddStaff(commodity.data); }); commodity.productionLabel.transform.GetChild(0).GetChild(1).GetChild(2).GetComponent <Button>().onClick.RemoveAllListeners(); commodity.productionLabel.transform.GetChild(0).GetChild(1).GetChild(2).GetComponent <Button>().onClick.AddListener(delegate() { StaffCheck(false); }); commodity.productionLabel.transform.GetChild(0).GetChild(1).GetChild(2).GetComponent <Button>().onClick.AddListener(delegate() { AddStaff(commodity.data); }); gameManager.mapManager.AddCommodity(commodity); commodities.Add(commodity); }
public override void OnInspectorGUI() { CommodityData commodityData = (CommodityData)target; DrawDefaultInspector(); if (commodityData.resource == CommodityData.Resource.Ore && commodityData.type != CommodityData.Type.Building) { EditorGUILayout.BeginHorizontal(); GUIStyle style = new GUIStyle(EditorStyles.foldout); //style.fixedWidth = 5; oreFoldout = EditorGUILayout.Foldout(oreFoldout, "Ore Data", style); commodityData.OreData = (OreData)EditorGUILayout.ObjectField("", commodityData.OreData, typeof(OreData), allowSceneObjects: false); EditorGUILayout.EndHorizontal(); if (commodityData.OreData != null) { if (oreFoldout) { editor = Editor.CreateEditor(commodityData.OreData); editor.DrawDefaultInspector(); } } } }
public ShipItem(CommodityData _commodityData) { data = _commodityData; amount = 0; }
public int CalculateProd(ProductionManager productionManager, CommodityData drillData) { int growth = productionManager.CalculateProd(drillData, staffed); return(growth); }
public void UpgradeStorage(CommodityData commodity) { capacity = capacity + commodity.value; }
public void ApplyCommodityMod(CommodityData data, int modifier) { Commodity commodity = GetCommodity(data); commodity.AddModifier(modifier); }
public int CalculateProd(CommodityData commodityData, int staffed) { return(GetCommodity(commodityData).CalculateProduction(gameManager, staffed)); }