public void AddStellarPhenonomaDataToList(NebulaData nebula) { stellarPhenonomaData.Add(nebula); }
public static void GenerateNebula() { NebulaData nData = new NebulaData(); galaxyDataRef = GameObject.Find("GameManager").GetComponent<GalaxyData>(); gameDataRef = GameObject.Find("GameManager").GetComponent<GlobalGameData>(); // Step 1: Generate name if (DataManager.planetNameList.Count > 0) { var nameIndex = UnityEngine.Random.Range(0, DataManager.planetNameList.Count); nData.Name = DataManager.planetNameList[nameIndex] + " Nebula"; DataManager.planetNameList.RemoveAt(nameIndex); DataManager.planetNameList.TrimExcess(); } else nData.Name = "GenericName"; // Step 2: Set location nData.WorldLocation = new Vector3(UnityEngine.Random.Range(-gameDataRef.GalaxySizeWidth,gameDataRef.GalaxySizeWidth), UnityEngine.Random.Range(-gameDataRef.GalaxySizeHeight, gameDataRef.GalaxySizeHeight), UnityEngine.Random.Range(-25,-75)); // set slightly back of X axis for parallax effect // Step 3: Assign sprite # nData.NebulaSpriteNumber = UnityEngine.Random.Range(0, SpritesPerNebulaType - 1); // Step 4: Generate size nData.NebulaSize = UnityEngine.Random.Range(.5f, 1.5f); // Step 5: Assign rotation switch (nData.NebulaSpriteNumber) { case 0: { nData.TextRotation = -55f; break; } case 1: { nData.TextRotation = -55f; break; } case 2: { nData.TextRotation = 45f; break; } case 3: { nData.TextRotation = -55f; break; } case 4: { nData.TextRotation = -60f; break; } default: { nData.TextRotation = 0f; break; } } // Step 6: Assign the data galaxyDataRef.AddStellarPhenonomaDataToList(nData); }