コード例 #1
0
ファイル: main.cs プロジェクト: Arhowk/LiteNetworking
        public static void SendLobbyGoodbyePacket(LobbyGoodbyePacket pkt, [Optional()][DefaultParameterValue(-1)] int connectionId)
        {
            MemoryStream m = new MemoryStream();

            m.WriteByte(10);
            LiteNetworking.Networking.localPacketPlayer = LiteNetworking.LobbyConnector.ConvertConnectionToPlayer(connectionId);
            ConstRefs.mirror_LobbyGoodbyePacket._Serialize(pkt, m);
            Networking.TransmitPacket(m, connectionId);
        }
コード例 #2
0
ファイル: WorldAtlas.cs プロジェクト: Arhowk/LiteNetworking
    public void MovePlayerToScene(LitePlayer player, int sceneId, WorldLink fromLink, System.Action <WorldChunk> callback = null)
    {
        if (!Networking.isServer)
        {
            Debug.LogError("Attempt to call server fn on client");
            return;
        }

        // Remove player from old scene
        WorldChunk oldChunk = ChunkHandler.i.GetChunk(player.GetChunkId());

        oldChunk.connectedPlayers.Remove(player);

        LobbyGoodbyePacket pkt = new LobbyGoodbyePacket
        {
            playerId = player.id
        };

        foreach (LitePlayer plyr in oldChunk.connectedPlayers)
        {
            PacketSender.SendLobbyGoodbyePacket(pkt, plyr.GetConnectionId());
        }


        // Add player to new scene

        WorldChunk chunk = ChunkHandler.i.GetChunkForPlayer(player, sceneId);

        if (chunk == null)
        {
            PrepareSceneForPlayer(player, sceneId, fromLink, chk =>
            {
                ChunkReady(chk, player);
                callback?.Invoke(chk);
            });
        }
        else
        {
            ChunkReady(chunk, player);
            callback?.Invoke(chunk);
        }
    }
コード例 #3
0
ファイル: main.cs プロジェクト: Arhowk/LiteNetworking
 public void _Deserialize(LobbyGoodbyePacket pkt, MemoryStream m)
 {
     pkt.playerId = Data_serializers_const.ser_M_liteIntSerializer.Deserialize(m);
 }
コード例 #4
0
ファイル: main.cs プロジェクト: Arhowk/LiteNetworking
 public void _Serialize(LobbyGoodbyePacket pkt, MemoryStream m)
 {
     byte[] playerId = Data_serializers_const.ser_M_liteIntSerializer.Serialize(pkt.playerId);
     m.Write(playerId, 0, playerId.Length);
 }