我可以引用包含在不同命名空间中的脚本吗?

时间:2016-07-30 04:45:41

标签: c# unity3d

我的项目中有3个文件夹,名为脚本,光子和标准资源。现在我需要从标准资源文件夹中创建一个引用到脚本中的脚本'文件夹,只有当我将文件夹复制到标准资源时才有可能(因为它有不同的命名空间)。但是我得到了一个错误的光子。所以有没有办法在不复制文件夹的情况下进行引用?

 using UnityEngine;
 namespace UnityStandardAssets.CrossPlatformInput
{
public class ButtonHandler : MonoBehaviour
{  
  public  wepScript  ws; //error cannot find  wepScript 
}
}


  using UnityEngine;
  using System.Collections;

 public class wepScript : MonoBehaviour {
                   }

1 个答案:

答案 0 :(得分:0)

实际上,namespace不是与Unity相关的东西。您可以在classeses中使用namespacecode。您只需要使用。

包含命名空间
using UnityEngine;
using System.Collections;

例如: 我在名为Standard Assets的{​​{1}}文件夹下有一个脚本。

Weapon

然后,我在其他地方有using UnityEngine; namespace FooNamespace { public class Weapon : MonoBehaviour { public void LogMeUp() { Debug.Log("I have been called"); } } } 个脚本。

GonnaCallWeapon
  • 我已将using UnityEngine; using FooNamespace; public class GonnaCallWeapon : MonoBehaviour { public Weapon weapon; void Start () { weapon.LogMeUp(); Debug.Log("I called LogMeUp"); } } Weapon脚本附加到层次结构中的对象,并设置了GonnaCallWeapon变量。

Example