Как правильно общаться между Java-сервером и клиентом Gamemaker Studio - PullRequest
0 голосов
/ 30 декабря 2018

Я создал очень простой Java-сервер с учебными пособиями.Цель состоит в том, чтобы позволить клиентам Gamemaker Studio 2 подключаться и взаимодействовать с этим сервером.У меня больше опыта работы с GML.Таким образом, сервер запускается (java), а клиент (GMS2) успешно подключается.Я сделал несколько проверок, чтобы убедиться.Если клиент отправляет сообщение на сервер, сервер не получает его, пока клиенты не отключатся.

это код Java:

import java.net.*;
import java.io.*;
 
public class GameServer {
	
    public static void main(String[] args) throws IOException {
         
    	ServerSocket serverSocket = new ServerSocket(6666);
    	Socket client = serverSocket.accept();
    	BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));
    	PrintWriter out = new PrintWriter(client.getOutputStream(), true);
    	
    	out.println("hello gamemaker studio: "); //the clients receive this message
   	
    	while(true) {
   		
    		System.out.println("in while loop");//the server console prints this message
    		
    		String string = in.readLine();//keeps stuck on this
    		//after client disconnect, all messages the client has sent are displayed in the console
    		System.out.println("reading string:" + string);
    		if (string == null) { break; }

    		out.println("we have received this answer: " + string );
    		System.out.println("stopped");
    	}
 	
    }

}

По какой-то причине я не знаю, что он застрял в этой строке: String string = in.readLine ();Я создал Java-клиент для его тестирования.Все отлично работает с Java-клиентом.Так что должно быть что-то не так с кодом GameMaker

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...