void ParamSerialized(Vector3 stonePosition, int blackFlag, PhotonMessageInfo info) { if (blackFlag == 1) { StoneCalculationScript.SerializeBord(stonePosition, true); } else { StoneCalculationScript.SerializeBord(stonePosition, false); } }
//置いた碁石の位置を補正かけて次の石を出すようにして配列にデータを入れて別人のメソッドをRPCで実行する。 public void OnNextButton() { //置いた石の位置を補正かけて勝敗等の情報を出す。 GameObject stone = GameObject.Find("SelectStone"); //配列に格納して勝敗等の情報を出す。 if (!StoneCalculationScript.SetStonePosition(stone, cameraScript.blackFlag)) { if (StoneCalculationScript.endFlag) { Debug.Log("終わり"); object[] winObjext = new object[] { StoneCalculationScript.winnerText }; photonView.RPC("SetWinCanvas", RpcTarget.All, winObjext); return; } Debug.Log("そこにはおけないよ"); return; } object[] args; if (cameraScript.blackFlag) { args = new object[] { stone.transform.position, 1 }; } else { args = new object[] { stone.transform.position, 0 }; } BattleUICnavas.enabled = !BattleUICnavas.enabled; Destroy(stone.GetComponent <DragDrop>()); //パラメータを共有する photonView.RPC("ParamSerialized", RpcTarget.Others, args); //全員がステータスを表示させる。 photonView.RPC("ScoreText", RpcTarget.All); //特になければ他人が石を置く photonView.RPC("SetStorn", RpcTarget.Others); }
void ResetBord() { StoneCalculationScript.ResetBord(); }