0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

脱出ゲームの作り方 7 特定の条件でアイテムを使用

Last updated at Posted at 2019-10-28

取得した電球を使うと電気が点灯する処理が作成されたが、
LightstandPanel以外の場所でも使えてしまうので、LightstandPanelの場面で電気を使うようにする

###各パネルを表示するときに、現在のパネルが何かをチェックする

GameManagerで下記を追加する

◇変数currentPanelを列挙型で作成し、ROOMパネルで初期化する


public enum PANEL
{
    ROOM,
    LIGHT_STAND,
    DRAWER,
    PC
}

    // 現在表示しているパネル
    public PANEL currentPanel = PANEL.ROOM;

◇ボタンを押したら、現在のパネルをcurrentPanelに取得し、該当するパネルを表示する

バックボタンが押されたら、currentPanelをROOMに戻し、他のパネルを非表示にする


    // ボタンを押したら該当するパネルを表示
    public void OnClickLightStandTrigger()
    {
        currentPanel = PANEL.LIGHT_STAND;
        lightStandPanel.SetActive(true);
    }
    public void OnClickDrawerTrigger()
    {
        currentPanel = PANEL.DRAWER;
        drawerPanel.SetActive(true);
    }
    public void OnClickPCTrigger()
    {
        currentPanel = PANEL.PC;
        pcPanel.SetActive(true);
    }

    // ボタンを押したらパネルを全て非表示
    public void OnClickBackTrigger()
    {
        currentPanel = PANEL.ROOM;
        lightStandPanel.SetActive(false);
        drawerPanel.SetActive(false);
        pcPanel.SetActive(false);
    }


###アイテムを電気スタンドが表示されている時だけ使用する

◇現在のパネルが電気スタンドのときに、アイテムを使う
ItemBoxManagerでGameManagerを取得し、UseItem()を書き換える


    [SerializeField] GameManager gameManager;   


 // アイテムの使用
    public void UseItem(int index)
    {
        if ( gameManager.currentPanel == PANEL.LIGHT_STAND
          && itemList[index] == ITEM.LIGHT_BULB)   //現在のパネルが電気スタンドで、かつ使用するアイテムが電球だったら
        {
            lightStandManager.LightSwitch(true);            //電気をつける
            itemList[index] = ITEM.NONE; // アイテムを使用したので空にする;
            itemBoxImages[index].sprite = null;
        }
    }

InspecterでItemBoxPnelオブジェクトのItemBoxManagerスクリプトにGameManagerが出ているので、GameManagerを設定する

:point_up:
関数名はUseItem()で、Inspecterの「OnClick()」で設定しているので、
クリックしたときに実行される。
OnClickImg.png

##教材
Unityゲームスタジオ スタジオしまづ
【Unity】初心者からの脱出!? 脱出ゲームの作り方 その7 特定の条件でアイテムを使用
https://youtu.be/ualq_a3rnQc

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?