error CS0426: The type name 'type' does not exist in the type 'ItemBox'
Unity2Dで脱出ゲームのItemBoxを作成しています。
参考動画のコードを元にスクリプトを作成したのですが、以下のようなエラーメッセージが発生しました。
発生している問題・エラーメッセージ
Assets\Scripts\Item\ItemBox.cs(44,33): error CS0426: The type name 'Type' does not exist in the type 'ItemBox'
試したこと
エラーに該当するコードはコンソールによると、
1.public bool CanUseItem(ItemBox.Type type)
2.public void UseItem(ItemBox.Type type)
の二箇所のようです。
他に作成したスクリプト”Item”にTypeを列挙型で管理していたのですが、
こちらが参照されていないことでエラーが発生したと判断し、
public enum Type
{
Leaf = 0,
Key = 1,
}
public Type type;
と付け足した所、エラーCS0426が消えた代わりにコンパイルエラーが発生しました。
動画参照元のコードを見た限りでは”ItemBox”スクリプトに上記6行分のコードは書かれていません。
仮にこのコンパイルエラーが解消されても、”Item”と"ItemBox"に重複したコードがあるということに抵抗を感じてしまいます。
原因や解決法が分かる方がいれば、ご教授お願します。
該当のソースコード
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ItemBox : MonoBehaviour
{
public GameObject[] boxs;
public static ItemBox instance; private void Awake() { instance = this; } public void SetItem(Item.Type type) { int index = (int)type; boxs[index].SetActive(true); } public bool CanUseItem(ItemBox.Type type) { int index = (int)type; return boxs[index].activeSelf; } public void UseItem(ItemBox.Type type) { int index = (int)type; boxs[index].SetActive(false); }
}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/18 04:01