2016-07-30 6 views
0

私のプロジェクトには、スクリプト、光子、標準アセットという3つのフォルダがあります。標準資産フォルダから 'scripts'フォルダのスクリプトへの参照を作成する必要があります。これは、別の名前空間を持つため、フォルダを標準の資産にコピーする場合にのみ可能です。光子。フォルダをコピーせずに参照を作成する方法はありますか?別の名前空間に含まれるスクリプトを参照できますか?

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 { 
        } 

答えて

0

実際には、namespaceはUnityに関連するものではありません。あなたのクラスにはnamespaceまたはcodeを使用できます。あなたは、を使用して名前空間を含める必要があります。例えば

using UnityEngine; 
using System.Collections; 

: 私はWeapon呼ばStandard Assetsフォルダの下のスクリプトを持っています。

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スクリプト、およびweapon変数を設定しています。私は、スクリプトを参照したい

Example

+0

は、私はそれをどのように行うか、標準の資産クロスプラットフォームの名前空間からの「武器」と言いますか?武器スクリプトを検出できないため、エラーが発生します。 –

+0

私は自分の投稿を編集し、それが助けてくれることを願っています。 –

+0

ありがとう、私の問題は、武器には名前空間がないということです。 gonnacallweaponは名前空間の中にあります –

関連する問題