Example #1
0
    void OnTriggerExit2D(Collider2D other)                      //Groupie exits the range of a speaker
    {
        if (other.gameObject.tag == "Destroy")
        {
            ObjectsInRange.Remove(other.gameObject);
        }
        else if (other.gameObject.tag == "Note")                //Note Exits the range of the speaker,
        {
            Debug.Log("DestroyGroup");
            Destroy(other.gameObject);                                  //does not work maybe because note never collides
            //with speaker to begin with
        }
        if (this.gameObject.tag == "BarAoE")
        {
            Groupie_Behaviour gScript = other.GetComponent <Groupie_Behaviour>();
            gScript.moveSpeed *= slowing;
            //other.gameObject.moveSpeed -= 0.5;
        }
        if (this.gameObject.tag == "Upgrade")
        {
            Groupie_Behaviour gScript = other.GetComponent <Groupie_Behaviour>();
            if (gScript != null)
            {
                gScript.moveSpeed *= slowing;
            }

            //other.gameObject.moveSpeed -= 0.5;
        }
        if (other.gameObject.tag == "BeerAoE" && this.gameObject.tag == "Upgrade")
        {
            Destroy(other.gameObject);
        }
    }
Example #2
0
    IEnumerator Fire()
    {
        allowFire = false;
        GameObject newNote = (GameObject)Instantiate(Note, new Vector3(transform.position.x, transform.position.y, transform.position.z), Quaternion.identity);


        GameObject groupie = ObjectsInRange.FirstOrDefault();

        if (groupie == null)
        {
            allowFire = true;
        }
        else
        {
            Groupie_Behaviour gScript = groupie.GetComponent <Groupie_Behaviour> ();
            if (gScript.drunk && this.gameObject.tag == "BarShootStraight")
            {
                ObjectsInRange.Remove(groupie);
                newNote.GetComponent <Note> ().target = ObjectsInRange.FirstOrDefault();
            }
            else
            {
                newNote.GetComponent <Note> ().target = ObjectsInRange.FirstOrDefault();
            }
            newNote.GetComponent <Note> ().initialPos = new Vector3(transform.position.x, transform.position.y, transform.position.z);
            newNote.GetComponent <Note> ().radius     = this.GetComponent <CircleCollider2D> ().radius;
            yield return(new WaitForSeconds(fireRate));

            allowFire = true;
        }
    }
Example #3
0
 void OnTriggerEnter2D(Collider2D other)                     //Groupie enters the range of a speaker
 {
     if (other.gameObject.tag == "Destroy")
     {
         ObjectsInRange.Add(other.gameObject);
     }
     if (this.gameObject.tag == "BarAoE")
     {
         Groupie_Behaviour gScript = other.GetComponent <Groupie_Behaviour>();
         gScript.moveSpeed /= slowing;
         StartCoroutine(SpillBeer());
         //other.gameObject.moveSpeed -= 0.5;
     }
     if (this.gameObject.tag == "Upgrade")
     {
         Groupie_Behaviour gScript = other.GetComponent <Groupie_Behaviour>();
         if (gScript != null)
         {
             gScript.moveSpeed /= slowing;
         }
     }
 }