1

Unity 5.4 と c# でロケット リーグ タイプのゲームを作ろうとしています。

プレーヤーの作業とプレイエリアはすべて揃っています。プレーヤーはネットワーク スポーナーによってスポーンされ、ボールはチュートリアルの敵スポーナーのようにボール スポーナーによってスポーンされます。ボールが衝突し、ボールの位置がリセットされる 2 つの目標があります。しかし、ゴールがあったことを選手にどのように伝えればよいでしょうか? 私はいたるところを見てきましたが、ボールからプレーヤーに情報を渡す方法の良い例が見つかりません。すべてのプレーヤーのカメラに表示され、スコアをカウントする 2 つの変数を使用するテキスト UI があるので、ボールがゴールに衝突したときにボールを介してこれらの変数を何らかの形で増やしたいと考えています。

RPC呼び出しは、私が理解しているようにプレーヤーオブジェクト間でのみ機能し、ボールとプレーヤーの間にsyncvarsを使用しようとすると機能しないようです.誰かが何かヒントを持っているか、私が欠けているものを教えてもらえますか?

編集:同じ問題を抱えている人のために。これを解決するには、scoreManager オブジェクトを作成し、それに syncvars としてスコアを持たせました。それから、scoremanager コンポーネントとそのスクリプトを取得し、ボールでスコアを上げてから、プレーヤーのためにそれを取得してスコアを取得しました。

4

2 に答える 2