public static GameObject SpawnChicken(Vector3?pos = null) { spawnedChickensCounter++; if (pos == null) { pos = NewPosition(); } string chickenColor = ChickenColorScript.ReturnNewChickenColor(); if (chickenColor == null) { return(null); } Color c_chickenColor; ChickenColorScript.ChickenColors.TryGetValue(chickenColor, out c_chickenColor); GameObject chicken = Instantiate(Resources.Load <GameObject>("Prefabs/Chicken"), pos.Value, Quaternion.identity) as GameObject; chicken.GetComponent <SpriteRenderer>().color = c_chickenColor; chicken.GetComponent <Chicken>().color = chickenColor; chicken.GetComponentInChildren <LineRenderer>().startColor = c_chickenColor; return(chicken); }
public void MenuRestartGame() { ChickenColorScript.dePopulateColors(); switch (SceneManager.GetActiveScene().name) { case "endless": MenuEndlessGame(); break; case "explorer": MenuExplorerGame(); break; } }
/** handles spawning a new coop at activecoopset -index's- position. the coop has a random color that gets added to the current active colorset **/ public static GameObject SpawnCoop(int index) { if (active_coopset == null) { ChooseRandomActiveCoopset(); } string coopColor = ChickenColorScript.GetUniqueRandomColor(); if (coopColor == null) { return(null); // all colors have been taken. } Color c_coopColor; ChickenColorScript.ChickenColors.TryGetValue(coopColor, out c_coopColor); GameObject coop = Instantiate(Resources.Load <GameObject>("Prefabs/Coop"), new Vector3(active_coopset[index].x, active_coopset[index].y), Quaternion.Euler(0, 0, active_coopset[index].z_rot)) as GameObject; coop.GetComponent <CoopLogic>().color = coopColor; coop.GetComponent <SpriteRenderer>().color = c_coopColor; return(coop); }
public void MenuExplorerGame() { GetComponent <Animator>().SetTrigger("Menu"); ChickenColorScript.dePopulateColors(); StartLoadingAsyncScene("explorer"); }