Need help converting js to C# -- yield return WaitForSeconds

Hi! Need help to convert to C#

JS code:

function scoresCalculation()
{
  yield WaitForSeconds (0.2);
}

Have a look in the script reference:

http://docs.unity3d.com/Documentation/ScriptReference/WaitForSeconds.html

notice its examples are provided in either language… In this case, you need to make sure your method has a return type of IEnumerator (and include the “return new” keywords):

using UnityEngine;
using System.Collections;

public class scores : MonoBehaviour {
    IEnumerator scoresCalculation() {
        yield return new WaitForSeconds(.2);
    }
}

Think i find the problem with object destroying… but then how to move destroy to scoreCalculation ();

script clickdetecting.cs :

public IEnumerator scoresCalculation ()
{
	
	yield return new WaitForSeconds(0.2f);	

	Debug.Log("TEST");
	if(destroyed == 3)
	{//if we destroyed 3 ball
		GameObject score1=(GameObject)Instantiate(scoreParticle, obj - new Vector3(0,0,0.3f), Quaternion.identity); //instantiate scoreParticle
		score1.renderer.material=score30; //give material to scoreParticle
		score1.renderer.material.color = color;//give ball's color to scoreParticle
		//scoreText.text=""+(int.Parse(scoreText.text)+30); //plus 30 to score text 
		container.GetComponent<instantiate>().score=""+(int.Parse(container.GetComponent<instantiate>().score)+30); //plus 30 to score text 
	}
	//below this is everything same logic
	if(destroyed == 4)
	{
		GameObject score2=(GameObject)Instantiate(scoreParticle, obj - new Vector3(0,0,0.3f), Quaternion.identity);
		score2.renderer.material=score50;
		score2.renderer.material.color = color;
		//scoreText.text=""+(int.Parse(scoreText.text)+50);
		container.GetComponent<instantiate>().score=""+(int.Parse(container.GetComponent<instantiate>().score)+50);

	}
    print("destroyed "+destroyed);
	destroyed=0;

}

other script chack.cs where score calculation called:

using UnityEngine;
using System.Collections;

public class chack : MonoBehaviour
{

//this script is attached every ball and it must be disabled, clickdetecting script will enable this
    public GameObject particle;
    private bool  count = true;
	private int   count1 =0;
	private int   count2 =0;

    public void Start ()
    {
		
       GameObject container = GameObject.Find ("Container"); //container which contains ball's objects
       rigidbody.position = new Vector3 (rigidbody.position.x, rigidbody.position.y, 0);
       Vector3 myPos = transform.position; 

       foreach (Transform child in container.transform) { //check if there is same tagged ball near this ball  
         
		 Transform t = child.transform; 
         t.position = new Vector3 (t.position.x, t.position.y, 0);

         myPos = new Vector3 (myPos.x, myPos.y, 0);
			
         var distance = (t.position - myPos).sqrMagnitude;     

		
         if (distance > 0.0001f && distance < 0.1f && gameObject.tag == child.gameObject.tag) 
		  { //if distance is less then 0.1f between same balls
		  count1++;
		  //Debug.Log("distance = "+distance);
		  //Debug.Log ("clickdetecting.destroyed = "+clickdetecting.destroyed+" count "+count);
          child.gameObject.GetComponent<chack>().enabled = true; //enable same ball's "chack" script
		  Color[] modifiedColors = particle.GetComponent<ParticleAnimator>().colorAnimation; //get particle color and modify it to match this ball's color
          modifiedColors [0] = renderer.material.color;
          modifiedColors [1] = renderer.material.color;
          modifiedColors [2] = renderer.material.color;
          modifiedColors [3] = renderer.material.color;
          modifiedColors [4] = renderer.material.color;
          particle.GetComponent<ParticleAnimator>().colorAnimation = modifiedColors; //give particle modified color
          var newParticle = Instantiate (particle, transform.position, transform.rotation); //instantiate particle		
		  
				
		if (count) {
			clickdetecting.destroyed++;
          	//if (Time.timeScale != 0 && count1==count2) 
			if (Time.timeScale != 0) 
			{
                StartCoroutine(Camera.main.GetComponent<clickdetecting>().scoresCalculation ());//call clickdetecting script which is attached to main camera
            }
              count = false;
          }

          Destroy (gameObject); // Think that is problemed Destroy ....
         }
       }


    }

}

So this on JS:

function Destroying(){
for (var child:Transform in container.transform){
Destroy(child.gameObject); //destroy the ball
		var modifiedColors : Color[] = particle.GetComponent.<ParticleAnimator>().colorAnimation; //get particle color and modify it to match this ball's color
		modifiedColors[0] = child.renderer.material.color;
		modifiedColors[1] = child.renderer.material.color;
		modifiedColors[2] = child.renderer.material.color;
		modifiedColors[3] = child.renderer.material.color;
		modifiedColors[4] = child.renderer.material.color;
		particle.GetComponent.<ParticleAnimator>().colorAnimation = modifiedColors; //give particle modified color
		var particle=Instantiate(particle, child.transform.position, child.transform.rotation) as GameObject; //instantiate particle
yield WaitForSeconds(1.5); //wait 0.5 second 
}
enabled=false;
}

Will be in C#:

bool sleep;

public void Destroying (){
foreach(Transform child in container.transform){
Destroy(child.gameObject); //destroy the ball
		Color[] modifiedColors = particle.GetComponent<ParticleAnimator>().colorAnimation; //get particle color and modify it to match this ball's color
		modifiedColors[0] = child.renderer.material.color;
		modifiedColors[1] = child.renderer.material.color;
		modifiedColors[2] = child.renderer.material.color;
		modifiedColors[3] = child.renderer.material.color;
		modifiedColors[4] = child.renderer.material.color;
		particle.GetComponent<ParticleAnimator>().colorAnimation = modifiedColors; //give particle modified color
		GameObject NewParticle=Instantiate(particle, child.transform.position, child.transform.rotation) as GameObject; //instantiate particle
//yield return new WaitForSeconds(1.5f); //wait 0.5f second 
if(sleep) return;
StartCoroutine(Wait());
}
enabled=false;
}
	
	IEnumerator Wait()
{
	sleep=true;
	yield return new WaitForSeconds(1.5f);	
}