// Update is called once per frame
    void Update()
    {
        if (!hasAuthority)
        {
            return;
        }

        if (LevelTimer.Instance.hasLevelEnded)
        {
            InitialiseFridge();
        }

        //detect fridge
        //networkedPlayerInteraction.DetectObjectLookingAt(networkedPlayerInteraction.detectedObject, 21, DetectFridge);

        //detected drink
        networkedPlayerInteraction.PickUpObject(networkedPlayerInteraction.detectedObject, 22, networkedPlayerInteraction.IsInventoryFull(), PlayerState.CanPickUpDrink);

        CmdStopCooldown();
    }
    // Update is called once per frame
    void Update()
    {
        if (!hasAuthority)
        {
            return;
        }

        // Debug.Log("Ingredient count: " + GameManager.Instance.ingredientsOnTrayCount);

        //pickuppable layer
        //networkedPlayerInteraction.PickUpObject(networkedPlayerInteraction.detectedObject, 17, networkedPlayerInteraction.IsInventoryFull(), PlayerState.CanPickUpIngredient);

        //if player is holding something
        if (networkedPlayerInteraction.playerInventory != null)
        {
            switch (networkedPlayerInteraction.playerInventory.tag)
            {
            case "DirtyPlate":
                return;

            case "Drink":
                if (nearTrashBin)
                {
                    networkedPlayerInteraction.ChangePlayerState(PlayerState.CanThrowDrink, true);
                }
                else
                {
                    Debug.Log("Player inventory tag " + networkedPlayerInteraction.playerInventory.tag);
                    return;
                }
                break;

            case "RottenIngredient":
                //Debug.Log("NetworkedIngredientInteraction - Unable to drop rotten ingredient");

                if (nearTrashBin)
                {
                    networkedPlayerInteraction.playerState = PlayerState.CanThrowIngredient;
                }
                else
                {
                    networkedPlayerInteraction.playerState = PlayerState.HoldingRottenIngredient;
                }
                break;

            case "Customer":
                break;

            case "Dish":
                //networkedPlayerInteraction.ChangePlayerState(PlayerState.HoldingOrder);
                if (nearTrashBin)
                {
                    networkedPlayerInteraction.ChangePlayerState(PlayerState.CanThrowDish, true);
                }
                else
                {
                    networkedPlayerInteraction.ChangePlayerState(PlayerState.HoldingOrder, true);
                }
                break;
            }

            if (nearTrashBin)
            {
                networkedPlayerInteraction.playerState = PlayerState.CanThrowIngredient;
                //Debug.Log("NetworkedIngredientInteraction - Can throw ingredient!");
                return;
            }

            //Debug.Log("NetworkedIngredientInteraction - Able to drop ingredient!");
            else if (GameManager.Instance.ingredientsOnTrayCount >= 4 && nearIngredientTray)
            {
                networkedPlayerInteraction.ChangePlayerState(PlayerState.Default);
                //Debug.Log("Ingredient tray full");
                return;
            }

            else if (canDropIngredient)
            {
                networkedPlayerInteraction.ChangePlayerState(PlayerState.CanDropIngredient);
            }
            else
            {
                networkedPlayerInteraction.ChangePlayerState(PlayerState.Default);
            }
        }

        //if player sees a rotten ingredient
        networkedPlayerInteraction.PickUpObject(networkedPlayerInteraction.detectedObject, 23, networkedPlayerInteraction.IsInventoryFull(), PlayerState.CanPickUpRottenIngredient);
    }