Advertisement
shadowplaycoding

P029_TurnManager

Jun 16th, 2018
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.76 KB | None | 0 0
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.UI;
  5.  
  6. public class TurnManager : MonoBehaviour {
  7.  
  8.     public static TurnManager turnManagerInstance;
  9.  
  10.     public FleetManager fm;
  11.  
  12.     public Button endTurnButton;
  13.     public Text turnText;
  14.  
  15.     int turnNumber;
  16.  
  17.     void Awake()
  18.     {
  19.         turnManagerInstance = this;
  20.     }
  21.  
  22.     // Use this for initialization
  23.     void Start () {
  24.         turnNumber = 0;
  25.     }
  26.  
  27.     public void EndTurn()
  28.     {
  29.         endTurnButton.interactable = false;
  30.  
  31.         UpdateTurnText();
  32.  
  33.         ApplyProduction();
  34.  
  35.         endTurnButton.interactable = true;
  36.     }
  37.  
  38.     void UpdateTurnText()
  39.     {
  40.         turnNumber += 1;
  41.  
  42.         turnText.text = "Turn: " + turnNumber;
  43.     }
  44.  
  45.     void ApplyProduction()
  46.     {
  47.         for(int i = 0; i<PlayerManager.PlayerManagerInstance.ownedPlanets.Count; i++)
  48.         {
  49.             Planet planet = PlayerManager.PlayerManagerInstance.ownedPlanets[i];
  50.  
  51.             Debug.Log("Current Production Is: " + planet.starBase.currentProduction);
  52.  
  53.             if (planet.starBase != null && planet.starBase.buildCue.Count !=0)
  54.             {
  55.                 planet.starBase.currentProduction += planet.production;
  56.  
  57.                 if (planet.starBase.currentProduction >= planet.starBase.buildCue[0].productionValue)
  58.                 {
  59.                     float difference = planet.starBase.currentProduction - planet.starBase.buildCue[0].productionValue;
  60.                     planet.starBase.currentProduction = difference;
  61.  
  62.                     fm.BuildShip();
  63.                     planet.starBase.buildCue.Remove(planet.starBase.buildCue[0]);
  64.                     GUIManagementScript.GUIManagerInstance.RemoveButtonFromCue();
  65.                 }
  66.  
  67.                 GUIManagementScript.GUIManagerInstance.UpdateShipProductionUI();
  68.             }
  69.         }
  70.  
  71.     }
  72.  
  73.     /*
  74.     Copyright Shadowplay Coding 2018 - see www.shadowplaycoding.com for licensing details
  75.     Removing this comment forfits any rights given to the user under licensing.
  76.     */
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement