Exemplo n.º 1
0
    public static void criarTiro(GameObject aviao, GameObject prefabTiroAviao)
    {
        bool podeCriarSemRepeticao = true;

        foreach (GameObject tiro in listaTiroAviao)
        {
            if (tiro.transform.position == aviao.transform.position)
            {
                podeCriarSemRepeticao = false;
                break;
            }
        }

        if (podeCriarSemRepeticao)
        {
            UltimoTiroAviao++;
            GameObject tiroDoAviao = GameObject.Instantiate(prefabTiroAviao) as GameObject;

            tiroDoAviao.name = "tiro" + StaticGameController.UltimoTiroAviao;

            tiroDoAviao.transform.position = new Vector3(aviao.transform.position.x + 0.5f,
                                                         aviao.transform.position.y,
                                                         aviao.transform.position.z);

            tiroDoAviao.SetActive(true);
            ListaTiroInimigo.Add(tiroDoAviao);
        }
    }
Exemplo n.º 2
0
 public static void removerTiroInimigo(GameObject qualTiro)
 {
     for (int i = ListaTiroInimigo.Count - 1; i >= 0; i--)
     {
         if (ListaTiroInimigo[i].name == qualTiro.name)
         {
             Debug.Log("Removendo tiro inimigo" + qualTiro.name);
             ListaTiroInimigo[i].SetActive(false);
             qualTiro.SetActive(qualTiro);
             qualTiro.GetComponent <Renderer>().enabled = false;
             ListaTiroInimigo.RemoveAt(i);
         }
     }
 }
Exemplo n.º 3
0
    public static void criarTiroInimigo(GameObject inimigo,
                                        GameObject prefabTiroInimigo)
    {
        if (prefabTiroInimigo != null)
        {
            UltimoTiroInimigo++;
            GameObject tiroDoInimigo = GameObject.Instantiate(prefabTiroInimigo)
                                       as GameObject;
            tiroDoInimigo.name = "tiroInimigo" +
                                 StaticGameController.UltimoTiroInimigo;
            tiroDoInimigo.transform.position = new Vector3(inimigo.transform.position.x,
                                                           inimigo.transform.position.y - 2,
                                                           inimigo.transform.position.z
                                                           );

            tiroDoInimigo.SetActive(true);
            ListaTiroInimigo.Add(tiroDoInimigo);
        }
    }
Exemplo n.º 4
0
    public static void moverTiroInimigos(float velocidade)
    {
        foreach (GameObject tiro in ListaTiroInimigo)
        {
            tiro.transform.position = new Vector3(tiro.transform.position.x,
                                                  tiro.transform.position.y + velocidade * Time.deltaTime,
                                                  tiro.transform.position.z);
        }

        for (int i = ListaTiroInimigo.Count - 1; i >= 0; i--)
        {
            GameObject qualTiro = ListaTiroInimigo[i];
            if (qualTiro.transform.position.y < -4.5f)
            {
                ListaTiroInimigo[i].SetActive(false);
                qualTiro.SetActive(qualTiro);
                qualTiro.GetComponent <Renderer>().enabled = false;
                ListaTiroInimigo.RemoveAt(i);
            }
        }
    }