Random spawn enemy

Hello everyone,
anyone know how I can make an infinite spawn enemies?
It seems kind of simple, but by my attempts after I create enemies if I kill one of them all disappear, anyone know why?

using UnityEngine;

using System.Collections;

public class insVaca : MonoBehaviour {

    public float Cont;

public Transform clone;
public bool EscolherNumero;
// Use this for initialization
void Start () {
	EscolherNumero = true;
}

// Update is called once per frame
void Update () {
	if(EscolherNumero==true){
		Cont = 1;
	}
	Cont = Cont - Time.deltaTime;
	
	if(Cont<=0){
		inVaca();   
	}else{
		EscolherNumero=false; 
	}
}

void inVaca(){
	Instantiate(clone, transform.position, transform.rotation);
	EscolherNumero = true;
}
}

and the part that destroy the object and not allow any more to create

if (hpvaca <= 0) {
	Destroy(gameObject);
}

i hope its 2D game just add this in the script that attached to the enemy object :

  void OnCollisionEnter2D(Collision2D coll)
    {
         if(coll.gameObject.tag == "Player")//player is the tag of the object that kill the enemy
          {
                if(hpvaca <=0)// if hpvaca in other class this line should be modified 
                    {
                        Destroy(gameObject);
                    }
          }
    }