質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

2961閲覧

MonoBehavior継承をPhoton.MonoBehavior継承にしたいと思っ他のですがエラーが出てしまいます

Fujiyama

総合スコア22

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2018/05/28 08:55

MonoBehavior継承をPhoton.MonoBehavior継承にしたいと思っております。

通信ゲームを作っていて、プレイヤーを判別してスクリプトを制御するために以下の文を書き加えたいと思っております。

if (!(photonView.isMine)) {
return;
}

これを加えるために、継承を変えたいのですが、エラーが出てしまいます。なぜでしょうか?
Photonはインストールしてあり、FPSControllerにはPhotonviewなどaddComponentしてあります。

発生している問題・エラーメッセージ

Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/FirstPersonController.cs(12,48): error CS0234: The type or namespace name `MonoBehaviour' does not exist in the namespace `Photon'. Are you missing an assembly reference?

該当のソースコード

using System; using UnityEngine; using System.Collections; using UnityStandardAssets.CrossPlatformInput; using UnityStandardAssets.Utility; using Random = UnityEngine.Random; namespace UnityStandardAssets.Characters.FirstPerson { [RequireComponent(typeof(CharacterController))] [RequireComponent(typeof(AudioSource))] public class FirstPersonController :Photon.MonoBehaviour { 以下省略

試したこと

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

マニュアルによると、

スクリプトのコンパイルには 4フェーズあります。どのフェーズでコンパイルされるかは、その親フォルダーで決まります。

これは、スクリプトが、その他のスクリプトによって定義されるクラスを参照している場合に重要になってきます。基本的には、現在のフェーズの__後に来る__フェーズにおいてコンパイルされるものを参照することはできないルールになっています。現在のフェーズやそれ以前のフェーズにおいてコンパイルされるものは完全に使用可能になります。

 

コンパイリングの各フェーズは下記のとおりです。

フェーズ 1:Standard AssetsPro Standard AssetsPluginsのフォルダーに入ったランタイムスクリプト。フェーズ 2:Standard AssetsPro Standard AssetsPluginsのフォルダー内にあるEditorフォルダーのエディタースクリプト。フェーズ 3:Editorフォルダーに入ったもの以外のすべてのスクリプト。**フェーズ 4:**残りのすべてのスクリプト (つまり、Editorフォルダー内のスクリプト)。

といったルールがあるようですので、Photonがインストールした諸々のファイルをStandard Assetsフォルダ内に移動してみるとどうなるでしょうか(Assets/Photon Unity NetworkingAssets/Standard Assets/Photon Unity Networkingに、Assets/PhotonChatApiAssets/Standard Assets/PhotonChatApiに...といった具合に)?

投稿2018/05/28 20:01

Bongo

総合スコア10807

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Fujiyama

2018/05/29 05:04

ありがとうございます、これで解決しました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問