コード例 #1
0
        public override void OnServerStateEnter()
        {
            Debug.Log($"[Server] Transfers: {string.Join(", ", PointTransferList)}");
            PhotonNetwork.AddCallbackTarget(this);
            // var names = players.Select(player => player.PlayerName).ToArray();
            var names = CurrentRoundStatus.PlayerNames;

            responds = new bool[players.Count];
            // update points of each player
            foreach (var transfer in PointTransferList)
            {
                ChangePoints(transfer);
            }

            var info = new EventMessages.PointTransferInfo
            {
                PlayerNames    = names,
                Points         = CurrentRoundStatus.Points,
                PointTransfers = PointTransferList.ToArray()
            };

            ClientBehaviour.Instance.photonView.RPC("RpcPointTransfer", RpcTarget.AllBufferedViaServer, info);
            firstTime     = Time.time;
            serverTimeOut = ServerConstants.ServerPointTransferTimeOut;
        }
コード例 #2
0
ファイル: ClientBehaviour.cs プロジェクト: Pircs/NaoMahjong
        public void RpcPointTransfer(EventMessages.PointTransferInfo message)
        {
            var transferState = new PointTransferState
            {
                CurrentRoundStatus = CurrentRoundStatus,
                PlayerNames        = message.PlayerNames,
                Points             = message.Points,
                PointTransfers     = message.PointTransfers
            };

            StateMachine.ChangeState(transferState);
        }