Ejemplo n.º 1
0
 void OnTriggerEnter2D(Collider2D coll)
 {
     if (coll.gameObject.name.Equals("Spieler"))
     {
         Debug.Log("Hit");
         Destroy(gameObject);
         target.EnergieAnzeige(-1);
         AudioSource.PlayClipAtPoint(kollisionRotAudio, transform.position);
     }
 }
Ejemplo n.º 2
0
    void OnTriggerEnter2D(Collider2D coll)
    {
        if (coll.gameObject.tag == "Gefahr" || coll.gameObject.tag == "Gefahr1" || coll.gameObject.tag == "Gefahr2" || coll.gameObject.tag == "Gefahr3")
        {
            Instantiate(explosionRot, transform.position, Quaternion.identity);
            AudioSource.PlayClipAtPoint(explosionRotAudio, transform.position);
            spielerKlasse.EnergieAnzeige(1);

            transform.position = new Vector3(-9.5f, 0, 0);                                                               // erzeugt neues Geschoss
            gameObject.SetActive(false);
            coll.gameObject.transform.position  = new Vector3(Random.Range(9.5f, 19.0f), Random.Range(-4.7f, 4.75f), 0); // erzeugt neues von rechts kommendes Objekt
            gefahrGewinnKlasse.xAenderungBasis *= 1.01f;                                                                 // erhoeht die Basis der zufaelligen Geschwindigkeitsaenderung um 1%
        }
        else if (coll.gameObject.tag == "Gewinn")
        {
            Instantiate(explosionGruen, transform.position, Quaternion.identity);
            AudioSource.PlayClipAtPoint(explosionGruenAudio, transform.position);
            spielerKlasse.EnergieAnzeige(-1);

            transform.position = new Vector3(-9.5f, 0, 0);                                                               // erzeugt neues Geschoss
            gameObject.SetActive(false);
            coll.gameObject.transform.position  = new Vector3(Random.Range(9.5f, 19.0f), Random.Range(-4.7f, 4.75f), 0); // erzeugt neues von rechts kommendes Objekt
            gefahrGewinnKlasse.xAenderungBasis *= 1.01f;                                                                 // erhoeht die Basis der zufaelligen Geschwindigkeitsaenderung um 1%
        }
        if (coll.gameObject.tag == "GrumpyGefahr")
        {
            Instantiate(explosionRot, transform.position, Quaternion.identity);
            AudioSource.PlayClipAtPoint(explosionRotAudio, transform.position);
            Instantiate(CoinEnemy, transform.position, Quaternion.identity);
            spielerKlasse.EnergieAnzeige(1);

            transform.position = new Vector3(-9.5f, 0, 0);                                                                // erzeugt neues Geschoss
            gameObject.SetActive(false);
            coll.gameObject.transform.position  = new Vector3(Random.Range(59.5f, 69.0f), Random.Range(-4.7f, 4.75f), 0); // erzeugt neues von rechts kommendes Objekt
            grumpyGefahrKlasse.xAenderungBasis *= 1.01f;                                                                  // erhoeht die Basis der zufaelligen Geschwindigkeitsaenderung um 1%
        }
    }
 // Aus dem Startwert fuer xAenderung ergibt sich die Geschwindigkeit der ersten 4 Objekte von rechts kommend,
 // hier folgt die Realisierung der Bewegung. Die x-Position aendert sich jeweils um die xAenderung
 void Update()
 {
     transform.position = new Vector3(transform.position.x - xAenderung, transform.position.y, 0);
     // Falls ein Objekt den sichtbaren Bereich nach links verlassen hat, erscheint es als ein neues, schnelleres
     // Objekt von einer neuen Startposition
     if (transform.position.x < -9.5f)
     {
         transform.position = new Vector3(Random.Range(12.5f, 22.0f), Random.Range(-4.25f, 4.25f), 0);
         xAenderungBasis   *= 1.01f;
         xAenderung         = xAenderungBasis * Random.Range(0.7f, 1.3f);
         if (gameObject.tag == "Gefahr" || gameObject.tag == "Gefahr1" || gameObject.tag == "Gefahr2" || gameObject.tag == "Gefahr3")
         {
             spielerKlasse.EnergieAnzeige(-1);
         }
     }
 }