IEnumerator Use() { if (!canDrink || gameData.gameOver) { yield break; } Collider2D hitCollider = Physics2D.OverlapCircle(transform.position, colliderRadius, LayerMask.GetMask("Drinks"), -0.5f, 0.5f); if (hitCollider) { gameData.gameHasStarted = true; SoundManagerScript.PlaySound("gulp"); DrinkScript script = hitCollider.gameObject.GetComponent <DrinkScript>(); script.Use(); canMove = false; canDrink = false; animator.SetBool("Drinking", true); yield return(new WaitForSeconds(1.0f)); canMove = true; canDrink = true; animator.SetBool("Drinking", false); } }
public void CheckDrink(GameObject drinkReceived) { //DrinkScript myDrinkScriptRef = drinkReceived.GetComponent<DrinkScript>(); myDrinkScriptRef = drinkReceived.GetComponent<DrinkScript>(); distanceFromDrink = Vector2.Distance(this.gameObject.transform.position, drinkReceived.transform.position); if (drinkReceived.name == drinkWanted) { drinkTaken = drinkReceived; if (isPaid == false) { Pay (); Tip(); } } else { // This happens when customer doenst get his/her drink } }
void OnTriggerStay2D(Collider2D other) { myDrinkScriptRef = other.GetComponent<DrinkScript>(); drinkObject = other.gameObject; CheckDrink(); }