public void RpcEmptyTable(bool isCustomerAngry) { //animate customers leaving foreach (GameObject customer in customersSeated) { CustomerBehaviour_Seated customerScript = customer.GetComponent <CustomerBehaviour_Seated>(); customerScript.LeaveRestaurant(isCustomerAngry); } if (!isCustomerAngry) { tableFeedbackScript.SuccessfulCustomerService(); Evaluation_CustomerService.Instance.UpdateNumCustomersServed(customersAtTable); GameManager.Instance.IncreaseMood(5); } tableAudio.PlayOneShot(customersLeaveSFX); //clear the lists customersSeated.Clear(); customersAtTable = 0; tableOrders.Clear(); TableColliderManager.Instance.ToggleTableDetection(false, gameObject, "Table"); }
//check whether all customers at the table are done eating public bool CheckIfAllFinishedEating() { foreach (GameObject customer in customersSeated) { CustomerBehaviour_Seated customerScript = customer.GetComponent <CustomerBehaviour_Seated>(); if (!customerScript.FinishedEating) { return(false); } } return(true); }
public void ServerSeatGuests(int numGuests) { //Debug.Log("TableScript - Server: Guests are being seated"); for (int i = 0; i < numGuests; i++) { //Instantiate customer GameObject newSittingCustomer = Instantiate(customerSeatedPrefab, seatPositions[i].position, seatPositions[i].rotation).gameObject; CustomerBehaviour_Seated newCustomerScript = newSittingCustomer.GetComponent <CustomerBehaviour_Seated>(); //Spawn NetworkServer.Spawn(newSittingCustomer); //RPC List RpcUpdateList(newSittingCustomer); } RpcSeatGuests(numGuests); }