[EventMethod] // When client finishes updating assets public void OnAssetReady(AssetsReadyPacket packet) { var players = Server.Players; var player = Server.GetPlayer(packet.UserId); if (player != null) { player.AssetsReady = true; } var client = Server.TcpHandler.GetClient(packet.ClientId); // update chunks for that player ChunkProvider.CheckChunks(player); // make the player itself appear var playerPacket = player.ToPacket(); client.Send(playerPacket); // to track the entity spawning caches etc Server.Events.Call(new EntitySpawnEvent() { Entity = player, Position = player.Position }); // to handle packets when a player joins Server.Events.Call(new PlayerJoinEvent() { Player = player }); }
[EventMethod] // When client finishes updating assets public void OnAssetReady(AssetsReadyPacket packet) { var player = Server.GetPlayer(packet.UserId); if (player != null) { player.AssetsReady = true; } var client = ServerTcpHandler.GetClient(packet.ClientId); // make the player itself appear client.Send(new PlayerPacket() { Name = player.Login, SpriteIndex = 2, UserId = player.UserId, X = player.X, Y = player.Y, Speed = player.speed }); // update chunks for that player ChunkProvider.CheckChunks(player); }
public void OnAssetReady(AssetsReadyPacket assetReady) { if (State != AssetLoadingState.BEGINING) { State = AssetLoadingState.BEGINING; } else { State = AssetLoadingState.RECIEVING; NumberOfAssetsToRecieve = _assetsRequested.Count; if (NumberOfAssetsToRecieve > 0) { foreach (var packet in _assetsRequested) { packet.HaveIt = false; // asking for the asset UnityClient.TcpClient.Send(packet); Debug.Log("Asking for asset " + packet.ResquestedImageName); } LoadingBehaviour.Loading.StartLoading("Downloading Assets"); } else { DoneDownloading(); } } }