質問: UnityEngine.Random; namespace UnityStandardAssets.Characters.FirstPerson { [RequireComponent(typeof(CharacterController))] [RequireComponent(typeof(AudioSource))] public class FirstPersonController :Photon.MonoBehaviour { 以下省略 ``` ### 試したこと ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。
回答: マニュアルによると、 > > スクリプトのコンパイルには 4フェーズあります。どのフェーズでコンパイルされるかは、その親フォルダーで決まります。 > > > これは、スクリプトが、その他のスクリプトによって定義されるクラスを参照している場合に重要になってきます。基本的には、現在のフェーズの*後に来る*フェーズにおいてコンパイルされるものを参照することはできないルールになっています。現在のフェーズやそれ以前のフェーズにおいてコンパイルされるものは完全に使用可能になります。 > > > > > コンパイリングの各フェーズは下記のとおりです。 > > > **フェーズ 1:Standard Assets**、**Pro Standard Assets**、**Plugins**のフォルダーに入ったランタイムスクリプト。**フェーズ 2:Standard Assets**、**Pro Standard Assets**、**Plugins**のフォルダー内にある**Editor**フォルダーのエディタースクリプト。**フェーズ 3:Editor**フォルダーに入ったもの以外のすべてのスクリプト。**フェーズ 4:**残りのすべてのスクリプト (つまり、**Editor**フォルダー内のスクリプト)。 > > > といったルールがあるようですので、Photonがインストールした諸々のファイルをStandard Assetsフォルダ内に移動してみるとどうなるでしょうか(`Assets/Photon Unity Networking`は`Assets/Standard Assets/Photon Unity Networking`に、`Assets/PhotonChatApi`は`Assets/Standard Assets/PhotonChatApi`に...といった具合に)?