別のプロジェクトにあるメソッドが使えません。
Q&A
解決したいこと
UnityとC#、vsです。
別のプロジェクトにあるメソッドを使うためにGetcomponentを使いましたが、使えるメソッドと使えないメソッドがあり、その違いが判らず、困っています。違いと解決方法を教えてください。
または、問題・エラーが起きている画像をここにドラッグアンドドロップ
使いたいメソッドが書いてある方
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ItemManager : MonoBehaviour
{
// アイテムデータベース
[SerializeField]
private ItemDataBase itemDataBase;
// アイテム数管理
private Dictionary<WeponDate, int> numOfWepon = new Dictionary<WeponDate, int>();
private Dictionary<AccesaryDate, int> numOfAccessory = new Dictionary<AccesaryDate, int>();
private Dictionary<ProtectDate, int> numOfProtect = new Dictionary<ProtectDate, int>();
private Dictionary<OtherItemDate, int> numOfOtherItem = new Dictionary<OtherItemDate, int>();
// Use this for initialization
void Start()
{
//任意のアイテム番号の、アイテムの個数を設定する関数。
void SetWeponNumber(int objectnumber, int numofwepon)
{
numOfWepon[GetWeponByNumber(objectnumber)] = numofwepon;
}
}
// 名前でアイテムを取得
public WeponDate GetWepon(string searchName)
{
return itemDataBase.GetWeponLists().Find(itemName => itemName.GetItemName() == searchName);
}
//serch by number
public WeponDate GetWeponByNumber(int searchNumber)
{
return itemDataBase.GetWeponLists().Find(objectNumber => objectNumber.GetobjectNumber() == searchNumber);
}
}
メソッドを呼び出すほう
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CreateSlotScript : MonoBehaviour
{
private void Start()
{
GetComponent<ItemManager>().GetWeponByNumber(1010101);
}
void Update()
{
}
}
この時、GetWeponと、GetWeponByNumberメソッドは呼び出せるのですが、
SetWeponNumberは候補に出てこないため、呼び出せません。解決策を教えてください。
0