Hi!
I’m trying to do a “Simon says” simple game and I’m stuck at an important part of it.
When I start the game I wait until the system calculates the color order via RNG stored in a list, done that the game should show me the order of those colors.
The problem is that I’m trying to make the script activate a button (An image with glow effect) for X seconds and then desactivate it in order to give to the player time to memorize the color order, but even using WaitForSeconds or Thread.Sleep the SetActive true/false happens too fast to realize which color you have to press.
Don’t know if there’s something that I’m doing wrong related to invoking it at Update() or LateUpdate() / FixedUpdate().
Here’s an example of my code:
private IEnumerator gamePickShow(){
for (int i=0; i < gamePick.Count; i++ ){
if (gamePick *== 1){*
-
redbutton.gameObject.SetActive (true);*
-
yield return new WaitForSeconds (2);*
-
redbutton.gameObject.SetActive (false);*
-
}*
_ if (gamePick == 2){_
* bluebutton.gameObject.SetActive (true);*
* yield return new WaitForSeconds (2);*
* bluebutton.gameObject.SetActive (false);*
* }*
_ if (gamePick == 3){
* yellowbutton.gameObject.SetActive (true);
yield return new WaitForSeconds (2);
yellowbutton.gameObject.SetActive (false);
}
if (gamePick == 4){
greenbutton.gameObject.SetActive (true);
yield return new WaitForSeconds (2);
greenbutton.gameObject.SetActive (false);
}
}
}*_