Пример #1
0
    /// <summary>
    /// 鍋内の食材の調理が完了しているかを確認し、完了していたらプレイヤーインベントリに戻す
    /// </summary>
    private void CookingCompleteListener()
    {
        if (_boilSlider.value >= 100 && !_isCompleteCooking)
        {
            _isCompleteCooking = true;
        }

        int puttedSlotIndex          = InventoryManager.Instance.PuttedSlotIndex;
        InventorySlotBase puttedSlot = _playerContainer.Container[puttedSlotIndex];

        // 調理完了した食材をインベントリに戻す
        if (!_isCompleteCooking || puttedSlot.Item != null)
        {
            return;
        }

        // 調理が完了していないか、投入元のスロットにアイテムがある場合は動作しない
        Destroy(_foodParent.transform.GetChild(0).gameObject);

        // 食材の状態を更新し、プレイヤーインベントリに戻す
        FoodSlotBeingBoiled.RemoveState(FoodState.Raw);
        FoodSlotBeingBoiled.AddState(FoodState.Boil);
        _playerContainer.AddItem(FoodSlotBeingBoiled.Item, FoodSlotBeingBoiled.States);

        _isCompleteCooking         = false;
        FireControl_boil.clickBool = true;
        FoodSlotBeingBoiled        = null;
    }
Пример #2
0
    /// <summary>
    /// 食材の調理が完了しているかを確認し、完了していたらプレイヤーインベントリに戻す
    /// </summary>
    private void CookingCompleteListener()
    {
        int puttedSlotIndex          = InventoryManager.Instance.PuttedSlotIndex;
        InventorySlotBase puttedSlot = _playerContainer.Container[puttedSlotIndex];

        if (_cutSlider.value >= 100 && !_isCompleteCooking)
        {
            _isCompleteCooking = true;
        }

        // 調理が完了していないか、投入元のスロットにアイテムがある場合は動作しない
        if (!_isCompleteCooking || puttedSlot.Item != null)
        {
            return;
        }

        // 出ていた食材を削除
        Destroy(_foodParent.transform.GetChild(0).gameObject);

        // 食材の状態を更新し、プレイヤーインベントリに戻す
        FoodSlotBeingCut.RemoveState(FoodState.Raw);
        FoodSlotBeingCut.AddState(FoodState.Cut);
        _playerContainer.AddItem(FoodSlotBeingCut.Item, FoodSlotBeingCut.States);

        _isCompleteCooking    = false;
        CutGauge.clickBool    = true;
        CutGauge.cantBackBool = true;
        FoodSlotBeingCut      = null;
    }
Пример #3
0
    /// <summary>
    /// フライパン内の食材の調理が完了しているかを確認し、完了していたらプレイヤーインベントリに戻す
    /// </summary>
    private void CookingCompleteListener()
    {
        int puttedSlotIndex          = InventoryManager.Instance.PuttedSlotIndex;
        InventorySlotBase puttedSlot = _playerContainer.Container[puttedSlotIndex];

        if (_bakeSlider.value >= 100 && !_isCompleteCooking)
        {
            _isCompleteCooking = true;
        }

        if (GameManager.Instance.BakePoint == 100)
        {
            BakeController.doOnceBakeSound = true;
            Destroy(_foodParent.transform.GetChild(0).gameObject);
            _bakeSlider.value = 0;
            GameManager.Instance.BakePoint = 0;
            SoundManager.Instance.FadeOutBgm(0.1f);
            FireControl.clickBool = true;
            _playerContainer.RemoveItem(puttedSlotIndex);
            blackSmoke.Stop();
        }
        if (GameManager.Instance.BakePoint >= 70 && doOnce)
        {
            doOnce = false;
            blackSmoke.Play();
        }
        else if (GameManager.Instance.BakePoint < 70 && !doOnce)
        {
            doOnce = true;
            blackSmoke.Stop();
        }

        // 調理が完了していないか、投入元のスロットにアイテムがある場合は動作しない
        if (!_isCompleteCooking || puttedSlot.Item != null)
        {
            return;
        }

        // 出ていた食材を削除
        Destroy(_foodParent.transform.GetChild(0).gameObject);

        // 食材の状態を更新し、プレイヤーインベントリに戻す
        FoodSlotBeingBaked.RemoveState(FoodState.Raw);
        FoodSlotBeingBaked.AddState(FoodState.Cooked);
        _playerContainer.AddItem(FoodSlotBeingBaked.Item, FoodSlotBeingBaked.States);

        _isCompleteCooking    = false;
        FireControl.clickBool = true;
        FoodSlotBeingBaked    = null;
    }