0
私は小さなオンラインマルチプレイヤーゲームを作成しています。 と私はいくつかのステップを管理しました。私はプレハブプレーヤーを設定し、私は、シーンにそのおかげでオブジェクトをインスタンス化するために管理:ユニティネットワーキングの変更gameオブジェクトのスプライト
[Command]
void Cmdbars()
{
GameObject bar = Instantiate(barH, GameObject.Find("pos1").GetComponent<Transform>().transform.position, Quaternion.identity) as GameObject;
NetworkServer.Spawn(bar);
}
は、今私たちは、このオブジェクトにそのスプライトの変更をクリックした場合、そのたい。 はそのため私は、このメソッドを使用します。
[Command]
void Cmdclick()
{
if (Input.GetMouseButtonDown(0))
{
Vector2 origin = new Vector2(
Camera.main.ScreenToWorldPoint(Input.mousePosition).x,
Camera.main.ScreenToWorldPoint(Input.mousePosition).y);
RaycastHit2D hit = Physics2D.Raycast(origin, Vector2.zero, 0f);
if (hit && hit.transform.gameObject.tag.Equals("Untagged"))
{
hit.transform.gameObject.GetComponent<SpriteRenderer>().sprite = blueBarre.GetComponent<SpriteRenderer>().sprite;
hit.transform.gameObject.tag = "ok";
}
}
}
問題は、ローカルでのみではなく、すべてのプレイヤーでスプライト変化。