Made TCP communication async, and show selected block value.
This commit is contained in:
		
							parent
							
								
									e321979c3c
								
							
						
					
					
						commit
						bf0982fbd9
					
				|  | @ -321,6 +321,7 @@ public class GuiRenderer { | ||||||
| 		nvgFontFaceId(vgId, jetbrainsMonoFont); | 		nvgFontFaceId(vgId, jetbrainsMonoFont); | ||||||
| 		nvgTextAlign(vgId, NVG_ALIGN_LEFT | NVG_ALIGN_TOP); | 		nvgTextAlign(vgId, NVG_ALIGN_LEFT | NVG_ALIGN_TOP); | ||||||
| 		nvgText(vgId, w - 140, h - 30, String.format("%d / %d Blocks", stack.getAmount(), block.getMaxAmount())); | 		nvgText(vgId, w - 140, h - 30, String.format("%d / %d Blocks", stack.getAmount(), block.getMaxAmount())); | ||||||
|  | 		nvgText(vgId, w - 140, h - 14, String.format("Selected value: %d", stack.getSelectedValue())); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	private void drawChat(float w, float h, Chat chat) { | 	private void drawChat(float w, float h, Chat chat) { | ||||||
|  |  | ||||||
|  | @ -22,6 +22,7 @@ import org.slf4j.LoggerFactory; | ||||||
| import java.io.IOException; | import java.io.IOException; | ||||||
| import java.net.*; | import java.net.*; | ||||||
| import java.util.LinkedList; | import java.util.LinkedList; | ||||||
|  | import java.util.concurrent.ForkJoinPool; | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  * Component which manages the establishing and maintenance of a connection |  * Component which manages the establishing and maintenance of a connection | ||||||
|  | @ -71,7 +72,6 @@ public class ClientCommunicationHandler { | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	private void handleTcpMessage(Message msg) { | 	private void handleTcpMessage(Message msg) { | ||||||
| 		log.debug("Received TCP message from client \"{}\": {}", player.getUsername(), msg.toString()); |  | ||||||
| 		if (msg instanceof ChunkHashMessage hashMessage) { | 		if (msg instanceof ChunkHashMessage hashMessage) { | ||||||
| 			Chunk chunk = server.getWorld().getChunkAt(new Vector3i(hashMessage.cx(), hashMessage.cy(), hashMessage.cz())); | 			Chunk chunk = server.getWorld().getChunkAt(new Vector3i(hashMessage.cx(), hashMessage.cy(), hashMessage.cz())); | ||||||
| 			if (chunk != null && hashMessage.hash() != chunk.blockHash()) { | 			if (chunk != null && hashMessage.hash() != chunk.blockHash()) { | ||||||
|  | @ -134,11 +134,13 @@ public class ClientCommunicationHandler { | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	public void sendTcpMessage(Message msg) { | 	public void sendTcpMessage(Message msg) { | ||||||
| 		try { | 		ForkJoinPool.commonPool().submit(() -> { | ||||||
| 			Net.write(msg, out); | 			try { | ||||||
| 		} catch (IOException e) { | 				Net.write(msg, out); | ||||||
| 			e.printStackTrace(); | 			} catch (IOException e) { | ||||||
| 		} | 				e.printStackTrace(); | ||||||
|  | 			} | ||||||
|  | 		}); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	public void sendDatagramPacket(Message msg) { | 	public void sendDatagramPacket(Message msg) { | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue