void OnTriggerEnter(Collider other) { // other is waste being dragged into bins waste = other.gameObject; wasteComponent wc = other.gameObject.GetComponent <wasteComponent>(); rPoint = binType == 'R' && wc.r; cPoint = binType == 'C' && wc.c; tPoint = binType == 'T' && wc.t; }
void OnTriggerEnter(Collider other) { // other is waste being dragged into bins waste = other.gameObject; wasteComponent wc = waste.GetComponent <wasteComponent> (); bool rPoint = binType == 'R' && wc.r; bool cPoint = binType == 'C' && wc.c; bool tPoint = binType == 'T' && wc.t; if (rPoint || cPoint || tPoint) { newSprite = check; drop = true; correctAudio.Play(); } else { newSprite = cross; wrongAudio.Play(); } sr.sprite = newSprite; }
IEnumerator Generate() { while (_count > 0 && !Game.status) { Sprite newSprite; Waste waste; GameObject wasteObj; Vector3 position = coords [Random.Range(0, numCoords)]; int n = Random.Range(0, 4); if (n == 0) { // compost only int s = Random.Range(0, 5); newSprite = compostSprites [s]; if (s < 3) { waste = new compostAndRecycle(); } else { waste = new Compost(); } } else if (n == 1) { // recyclable only int s = Random.Range(0, 6); newSprite = recycleSprites [s]; if (s >= 4) { waste = new compostAndRecycle(); } else { waste = new Recyclable(); } } else if (n == 2) { // trash only int s = Random.Range(0, 5); waste = new Trash(); newSprite = trashSprites [s]; } else { // n == 3 // compost and recyclables int rand = Random.Range(0, 2); waste = new compostAndRecycle(); if (rand == 0) { // pick sprite from end of recyclable sprite array int s = Random.Range(4, 6); newSprite = recycleSprites [s]; } else { // pick sprite from start of compost sprite array int s = Random.Range(0, 3); newSprite = compostSprites [s]; } } wasteObj = wastePrefab; wasteComponent wc = wasteObj.GetComponent <wasteComponent> (); wc.waste = waste; wc.UpdateValues(); SpriteRenderer oldSprite = wasteObj.GetComponent <SpriteRenderer> (); oldSprite.sprite = newSprite; yield return(new WaitForSeconds(waitTime)); Instantiate(wasteObj, position, Quaternion.identity); _count--; } }