/// <summary>
    /// プレイヤーを生成する
    /// </summary>
    private void SpawnPlayer()
    {
        // プレイヤーを spawn させる位置を決める
        Transform spawnPoint  = null;
        int       actorNumber = PhotonNetwork.LocalPlayer.ActorNumber; // ActorNumber は 1 から順に振られる

        Debug.Log("Spawn Player as ActorNumber: " + actorNumber);

        // 最初の m_spawnPoints.Length 人は spawnPoints に順番に spawn させる
        if (actorNumber < m_spawnPoints.Length + 1)
        {
            spawnPoint = m_spawnPoints[actorNumber - 1];
        }
        GameObject player = PhotonNetwork.Instantiate(m_playerPrefabName, spawnPoint.position, Quaternion.identity);   // プレイヤーを生成し、他のクライアントと同期する

        // 自分だけ入力を有効にする
        LaserCannonController controller = player.GetComponent <LaserCannonController>();

        controller.enabled = true;
        // 中央に向ける
        player.transform.LookAt(Vector3.zero + Vector3.up * 0.5f);

        // 同じオブジェクトに追加している PunTurnManager を取得し、ターン管理のイベントを Listen するよう設定する
        Photon.Pun.UtilityScripts.PunTurnManager turnManager = GetComponent <Photon.Pun.UtilityScripts.PunTurnManager>();
        turnManager.enabled             = true; // 動的に AddComponent してもよい
        turnManager.TurnManagerListener = controller;

        // MasterClient からターンを開始する
        if (PhotonNetwork.IsMasterClient)
        {
            turnManager.BeginTurn();
        }
    }
示例#2
0
    /// <summary>
    /// ゲームを開始する
    /// </summary>
    private void StartGame()
    {
        Debug.Log("Start Game.");

        // 同じオブジェクトに追加している PunTurnManager を有効にする
        Photon.Pun.UtilityScripts.PunTurnManager turnManager = GetComponent <Photon.Pun.UtilityScripts.PunTurnManager>();
        turnManager.enabled = true; // 動的に AddComponent してもよい

        // イベントリスナーを初期化する
        GetComponent <DropChipTurnManager>().Init();

        // MasterClient からターンを開始する
        if (PhotonNetwork.IsMasterClient)
        {
            Debug.Log("I'm a master client. I begin turn.");
            turnManager.BeginTurn();
        }
    }
示例#3
0
        public void Awake()
        {
            PV = this.GetComponent <PhotonView>();

            this.turnManager = this.gameObject.AddComponent <PunTurnManager>();
            this.turnManager.TurnManagerListener = this;
            this.turnManager.TurnDuration        = 10.0f;
            Photon.Realtime.Player player = PhotonNetwork.LocalPlayer;

            target = GameObject.Find("target");

            if (PhotonNetwork.IsMasterClient)
            {
                id = 1;
            }
            else
            {
                id = 2;
            }
        }