2016-05-08 10 views
1

私は、マルチプレイヤー(UNET)環境で印刷するコマンドを送信するUIボタンを持つような簡単なことに取り組んでいます。私がこれまでにしたことを考えれば、これは簡単だと思ったが、私は完全に固執して混乱している。UNETのUIボタン

テストするために新しいプロジェクトを作成しましたが、まだこれを動作させることができません。私はスポーンとボタンのonClickを引き起こすことができる私はまだ "権限なしでオブジェクトのコマンドを送信しようとする"を取得します。私はキャンバス&ボタンをプレハブとして持っています。私はキャンバスプレハブにスクリプトを、次にボタンのOnClickプロパティにキャンバスを付けました。私は「おそらく」ために木のフォレストが表示されていないと私はかなりイライラ取得しています時点で午前すべての異なるテストの後

using UnityEngine; 
using UnityEngine.Networking; 
using System.Collections; 

public class NM_Script : NetworkBehaviour { 

public void DoButton() { 

    Cmd_Print(); 
} 

[Command] 
void Cmd_Print() { 
    print ("HIT"); 
} 
} 

。私は解決策が簡単で分かりやすく、私はそれを解決することができるはずだと知っています....

誰かが私にこのことを一度解決する手助けをすることができたら本当に感謝します。 UNET documentsから

+0

正しく接続されていますか? CommandAttributesは、ネットワークサーバーがすべてのプレイヤーを準備完了にしたときにのみ初期化されるようなものがあります。 – FLX

答えて

0

、セキュリティのために

、コマンドは、あなたの選手オブジェクトから送信することができます。

Unityリリース5.2以降、クライアント権限を持つノンプレイヤーオブジェクトからコマンドを送信することは可能です。これらのオブジェクトはNetworkServer.SpawnWithClientAuthorityで生成されているか、NetworkIdentity.AssignClientAuthorityで設定された権限を持っている必要があります。これらのオブジェクトから送信されたコマンドは、クライアントの関連するプレーヤオブジェクトではなく、オブジェクトのサーバーインスタンス上で実行されます。

+0

このドキュメントへのリンクがありますか? –

+1

確か:https://docs.unity3d.com/Manual/UNetActions.html – Arun

関連する問題