以下の画像のような状況で,手前の赤四角をクリックすると赤キューブが動かせて,青四角をクリックすると青キューブが動かせるようにしたいです。
赤キューブと青キューブは画面をクリックした時に,クリックした場所に動くように設定しています(Unity本家サイトのマニュアル通りです)。
cs
// MoveToClickPoint.cs using UnityEngine; public class MoveTo : MonoBehaviour { NavMeshAgent agent; // 自分自身 player1 or player2 もし 自分自身 == クリックした方 移動 void Start() { agent = GetComponent<NavMeshAgent>(); } void Update() { if (Input.GetMouseButtonDown(0)) { RaycastHit hit; if (Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out hit, 500)) { agent.destination = hit.point; } } } }
上のコードに
・現在のプレイヤーを宣言
・クリックしたら現在のプレイヤーを設定
・現在のプレイヤーと自身が等しければ移動
を加えればいけるとは思うのですが,赤四角(Canvasのimage)をクリックした時に上のScript内で設定する方法がわかりません。
まだ回答がついていません
会員登録して回答してみよう