コード例 #1
0
        /// <summary>
        /// send a static rpc to all players in this room
        /// </summary>
        /// <param name="rpcId"></param>
        /// <param name="args"></param>
        public void PlayerRpc(byte rpcId, params object[] args)
        {
            var size = 0;

            foreach (var arg in args)
            {
                if (arg == null)
                {
                    throw new NullReferenceException("Cannot serialize null value");
                }

                size += Serializer.SizeOf(arg);
            }

            var msg = Player.StartMessage(this, rpcId, ReliabilityMode.Ordered, size);

            foreach (var arg in args)
            {
                Serializer.Serialize(arg, msg);
            }
            SendToPlayers(msg, ReliabilityMode.Ordered);
        }