public Server(Config config, MasterClient masterClient) { Logger.Log($"SERVER creating..."); _masterClient = masterClient; _config = config; _gameMode = (GameMode)_config.GameMode; _world = new World(_config, _gameMode); _world.OnGameEnd += World_OnGameEnd; _world.OnPlayerDead += World_OnPlayerDead; _server = new NetManager(this, 100 + _config.MaxPlayers, _config.ConnectionKey) { UpdateTime = _config.UpdateDelay / 3, }; Logger.Log($"SERVER register packets"); _netSerializer = new NetSerializer(); Packet.Register(_netSerializer); _netSerializer.SubscribeReusable <ClientConnection, NetPeer>(OnClientConnection); _netSerializer.SubscribeReusable <ClientInput, NetPeer>(OnClientInput); _netSerializer.SubscribeReusable <ClientSpawn, NetPeer>(OnClientSpawn); _netSerializer.SubscribeReusable <ClientLeave, NetPeer>(OnClentLeave); Logger.Log($"SERVER created"); }
void Init() { serializer = new NetSerializer(); serializer.RegisterCustomType(SerializedLobbyPlayer.Serialize, SerializedLobbyPlayer.Deserialize); serializer.SubscribeReusable <PLobby, NetPeer>(OnReceiveLobby); serializer.SubscribeReusable <PLobbyPlayer>(OnClientLobbyAction); isInit = true; }
public void CustomPackageTest() { var writer = new NetDataWriter(); writer.Put(_serializer.Serialize(_samplePacket)); var reader = new NetDataReader(writer.CopyData()); SamplePacket readPackage = null; _serializer.SubscribeReusable <SamplePacket>( packet => { readPackage = packet; }); _serializer.ReadAllPackets(reader); Assert.NotNull(readPackage); Assert.IsTrue(AreSame(_samplePacket.EmptyString, readPackage.EmptyString)); Assert.AreEqual(_samplePacket.SomeFloat, readPackage.SomeFloat); Assert.AreEqual(_samplePacket.SomeIntArray, readPackage.SomeIntArray); Assert.IsTrue(AreSame(_samplePacket.SomeString, readPackage.SomeString)); Assert.AreEqual(_samplePacket.SomeVector2, readPackage.SomeVector2); Assert.AreEqual(_samplePacket.SomeVectors, readPackage.SomeVectors); Assert.AreEqual(_samplePacket.SomeEnum, readPackage.SomeEnum); Assert.AreEqual(_samplePacket.TestObj.Value, readPackage.TestObj.Value); }
public ServerListener() { _netSerializer = new NetSerializer(); _netSerializer.RegisterCustomType(SomeVector2.Serialize, SomeVector2.Deserialize); _netSerializer.RegisterCustomType <SampleNetSerializable>(); //user data support _netSerializer.SubscribeReusable <SamplePacket, NetPeer>(OnSamplePacketReceived); }
void Init() { serializer = new NetSerializer(); serializer.RegisterCustomType(SerializedLobbyPlayer.Serialize, SerializedLobbyPlayer.Deserialize); serializer.SubscribeReusable <PClientHandshake, NetPeer>(OnReceiveHandshake); isInit = true; }