WaitForSeconds Inside a For loop troubles

So I have this code, that when a player is debufed he will flash blue

		playerRenderer.color = Color.blue;
		yield return new WaitForSeconds (.5f);
		playerRenderer.color = Color.white;
		yield return new WaitForSeconds (.5f);
		playerRenderer.color = Color.blue;
		yield return new WaitForSeconds (.5f);
		playerRenderer.color = Color.white;
		playerRenderer.color = Color.blue;
		yield return new WaitForSeconds (.5f);
		playerRenderer.color = Color.white;

But I know it’d look a lot better in a for loop so I tried doing this

for(int i = 0; i<6; i++)
{
playerRenderer.color = Color.blue;
yield return new WaitForSeconds(.5f);
playerRenderer.color = Color.white;
}

However when I do this the player just stays blue for the duration and returns to white at the end. I’m new to scripting so what am I missing?

change it to

     for(int i = 0; i<6; i++)
     {
     playerRenderer.color = Color.blue;
     yield return new WaitForSeconds(.5f);
     playerRenderer.color = Color.white;
     yield return new WaitForSeconds(.5f);
     }

when you are using

    playerRenderer.color = Color.blue;
     yield return new WaitForSeconds(.5f);
     playerRenderer.color = Color.white;

blue screen plays for 5 secs,an when white screen shows up at the same moment blue screen will show up too :slight_smile: because of for loop