public void PrintTick(ResourcesSuppliedAndDemanded rsd) { Debug.Log("Resources Generated"); foreach (var kvp in rsd.ResourcesGeneratedPerSecond) { if (kvp.Key == ResourceType.Power) { Debug.Log(kvp.Key + ": " + kvp.Value); } } Debug.Log("Resources Demanded"); foreach (var kvp in rsd.ResourcesDemandedPerSecond) { if (kvp.Key == ResourceType.Power) { Debug.Log(kvp.Key + ": " + kvp.Value); } } Debug.Log("Resources Available"); foreach (var kvp in rsd.AvailableResourcesForTick) { if (kvp.Key == ResourceType.Power) { Debug.Log(kvp.Key + ": " + kvp.Value); } } }
// Update is called once per frame void Update() { this.tickTimer -= Time.deltaTime; if (this.tickTimer < 0) { ResourcesSuppliedAndDemanded resourcesSuppliedAndDemanded = this.CalculateSupplyAndDemandForTick(); this.LevelManager.UIManager.TriggerTickUpdate(resourcesSuppliedAndDemanded); this.tickTimer = BuildingManager.resourceTick; } }
private void UpdateResourceStatus(ResourcesSuppliedAndDemanded resourcesSuppliedAndDemanded) { foreach (Text textbox in this.ResourceStatusTextboxes) { if (textbox.gameObject.name.Equals("CoalTextbox")) { textbox.text = "Coal: " + resourcesSuppliedAndDemanded.AvailableResourcesForTick[ResourceType.Coal].ToString(); } else if (textbox.gameObject.name.Equals("OilTextbox")) { textbox.text = "Oil: " + resourcesSuppliedAndDemanded.AvailableResourcesForTick[ResourceType.Oil].ToString(); } else if (textbox.gameObject.name.Equals("NuclearTextbox")) { textbox.text = "Nuclear: 0"; } } }
private void UpdatePowerStatus(ResourcesSuppliedAndDemanded resourcesSuppliedAndDemanded) { foreach (Text textbox in this.PowerStatusTextboxes) { if (textbox.gameObject.name.Equals("PowerGeneratedTextbox")) { textbox.text = "Power Generated: " + resourcesSuppliedAndDemanded.ResourcesGeneratedPerSecond[ResourceType.Power].ToString(); } else if (textbox.gameObject.name.Equals("PowerConsumedTextbox")) { textbox.text = "Power Consumed: " + resourcesSuppliedAndDemanded.ResourcesDemandedPerSecond[ResourceType.Power].ToString(); } else if (textbox.gameObject.name.Equals("PowerAvailableTextbox")) { textbox.text = "Power Available: " + resourcesSuppliedAndDemanded.AvailableResourcesForTick[ResourceType.Power].ToString(); } } }
public void TriggerTickUpdate(ResourcesSuppliedAndDemanded resourcesSuppliedAndDemanded) { UpdatePowerStatus(resourcesSuppliedAndDemanded); UpdateShieldStatus(); UpdateResourceStatus(resourcesSuppliedAndDemanded); }