private static void handleRequestChunkMessage(NetIncomingMessage _Im) { var message = new RequestChunkMessage(_Im); var timeDelay = (float)(NetTime.Now - _Im.SenderConnection.GetLocalTime(message.MessageTime)); Client var_Client = Configuration.networkManager.getClient(_Im.SenderEndPoint); GameLibrary.Map.Chunk.Chunk var_Chunk = GameLibrary.Map.World.World.world.getDimensionById(message.DimensionId).getChunkAtPosition(message.Position); //GameLibrary.Logger.Logger.LogDeb("Client Requested Chunk at X: " + message.Position.X + " Y: " + message.Position.Y); if (var_Chunk != null) { //Configuration.networkManager.SendMessageToClient(new UpdateRegionMessage((GameLibrary.Model.Map.Region.Region)var_Chunk.Parent), var_Client); Configuration.networkManager.SendMessageToClient(new UpdateChunkMessage(var_Chunk), var_Client); /*foreach (AnimatedObject var_AnimatedObject in var_Chunk.getAllObjectsInChunk()) * { * Configuration.networkManager.SendMessageToClient(new UpdateObjectMessage(var_AnimatedObject), var_Client); * }*/ } else { GameLibrary.Logger.Logger.LogErr("ServerIGameMessageManager->handleRequestChunkMessage(...): Chunk an Position X: " + message.Position.X + " Y: " + message.Position.Y + " existiert nicht!"); } }
private static void handleUpdateChunkMessage(NetIncomingMessage _Im) { var message = new UpdateChunkMessage(_Im); GameLibrary.Map.Chunk.Chunk var_Chunk = message.Chunk; if (var_Chunk != null) { if (var_Chunk.IsRequested) { } var_Chunk.IsRequested = false; } var timeDelay = (float)(NetTime.Now - _Im.SenderConnection.GetLocalTime(message.MessageTime)); }