GameManager.cs
public class GameManager : MonoBehaviour
{
public static GameManager instance;
public SlingShot slingshot;
// Use this for initialization
void Start()
{
int character = PlayerPrefs.GetInt ("CharacterSelected", 0);
if(character==0)
{
slingshot = GameObject.Find ("slingshot");
}
}弹弓是SlingShot.cs的一个实例,使用上面的代码,我试图在用户从菜单中选择时动态地设置弹弓。我找不到这里面有什么问题,但它给了我错误Assets/Scripts/GameManager.cs(50,28): error CS0029: Cannot implicitly convert typeUnityEngine.GameObject‘to SlingShot'
请帮我解决这个问题。谢谢
发布于 2017-11-04 07:26:04
SlingShot是一个脚本,而不是GameObject。
GameObject.Find返回GameObject而不是SlingShot。您需要使用GetComponent函数从SlingShot函数返回的GameObject中获取GameObject.Find组件。
slingshot = GameObject.Find ("slingshot").GetComponent<SlingShot>();您还可以将其分解为:
//Find the slingshot GameOject
GameObject slingObj = GameObject.Find("slingshot");
//Get the SlingShot script that is attached to the slingshot GameObject
slingshot = slingObj.GetComponent<SlingShot>();https://stackoverflow.com/questions/47108473
复制相似问题