mirror of
https://github.com/simon987/Much-Assembly-Required.git
synced 2025-12-12 22:38:54 +00:00
Added Console output, Cubots can receive data from ComPort, Fixed BOM being added to string literals, Fixed legs changing direction for free when energy < 100, Changed some log levels.
This commit is contained in:
@@ -155,7 +155,7 @@ public class Assembler {
|
||||
String string = value.substring(1, value.length() - 1);
|
||||
string = StringEscapeUtils.unescapeJava(string);
|
||||
|
||||
out.write(string.getBytes(StandardCharsets.UTF_16));
|
||||
out.write(string.getBytes(StandardCharsets.UTF_16BE));
|
||||
} else if (labels != null && labels.containsKey(value)) {
|
||||
//Handle label
|
||||
out.writeChar(labels.get(value));
|
||||
|
||||
@@ -28,4 +28,8 @@ public interface ControllableUnit {
|
||||
void setAction(Action listening);
|
||||
|
||||
World getWorld();
|
||||
|
||||
ArrayList<char[]> getConsoleMessagesBuffer();
|
||||
|
||||
int getConsoleMode();
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@ public class CodeRequestHandler implements MessageHandler {
|
||||
|
||||
if (json.get("t").equals("codeRequest")) {
|
||||
|
||||
LogManager.LOGGER.info("(WS) Code request from " + user.getUser().getUsername());
|
||||
LogManager.LOGGER.fine("(WS) Code request from " + user.getUser().getUsername());
|
||||
|
||||
if (user.isGuest()) {
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ public class CodeUploadHandler implements MessageHandler {
|
||||
public void handle(OnlineUser user, JSONObject json) {
|
||||
if (json.get("t").equals("uploadCode")) {
|
||||
|
||||
LogManager.LOGGER.info("(WS) Code upload from " + user.getUser().getUsername());
|
||||
LogManager.LOGGER.fine("(WS) Code upload from " + user.getUser().getUsername());
|
||||
|
||||
if (user.isGuest()) {
|
||||
//Ignore
|
||||
|
||||
@@ -13,7 +13,7 @@ public class FloppyHandler implements MessageHandler {
|
||||
|
||||
if (json.get("t").equals("floppyDown")) {
|
||||
|
||||
LogManager.LOGGER.info("(WS) Floppy download request from " + user.getUser().getUsername());
|
||||
LogManager.LOGGER.fine("(WS) Floppy download request from " + user.getUser().getUsername());
|
||||
|
||||
if (user.isGuest()) {
|
||||
return;
|
||||
@@ -27,7 +27,7 @@ public class FloppyHandler implements MessageHandler {
|
||||
|
||||
} else if (json.get("t").equals("floppyUp")) {
|
||||
|
||||
LogManager.LOGGER.info("(WS) Floppy upload request from " + user.getUser().getUsername());
|
||||
LogManager.LOGGER.fine("(WS) Floppy upload request from " + user.getUser().getUsername());
|
||||
|
||||
//Check newly uploaded file on the database
|
||||
byte[] bytes = db.getFloppy(user.getUser().getUsername());
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package net.simon987.server.webserver;
|
||||
|
||||
import net.simon987.server.logging.LogManager;
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -14,7 +13,7 @@ public class KeypressHandler implements MessageHandler {
|
||||
if (!user.isGuest()) {
|
||||
if (json.get("t").equals("k")) {
|
||||
|
||||
LogManager.LOGGER.info("(WS) Received keypress");
|
||||
//LogManager.LOGGER.fine("(WS) Received keypress");
|
||||
|
||||
int key = (int) (long) json.get("k");
|
||||
|
||||
|
||||
@@ -33,11 +33,11 @@ public class MessageEventDispatcher {
|
||||
handler.handle(user, json);
|
||||
}
|
||||
} else {
|
||||
LogManager.LOGGER.info("Malformed JSON sent by " + user.getUser().getUsername());
|
||||
LogManager.LOGGER.severe("Malformed JSON sent by " + user.getUser().getUsername());
|
||||
}
|
||||
|
||||
} catch (ParseException e) {
|
||||
LogManager.LOGGER.info("Malformed JSON sent by " + user.getUser().getUsername());
|
||||
LogManager.LOGGER.severe("Malformed JSON sent by " + user.getUser().getUsername());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,14 +15,14 @@ public class ObjectsRequestHandler implements MessageHandler {
|
||||
@Override
|
||||
public void handle(OnlineUser user, JSONObject json) {
|
||||
if (json.get("t").equals("object")) {
|
||||
LogManager.LOGGER.info("(WS) Objects request from " + user.getUser().getUsername());
|
||||
LogManager.LOGGER.fine("(WS) Objects request from " + user.getUser().getUsername());
|
||||
|
||||
int x, y;
|
||||
try {
|
||||
x = Long.valueOf((long) json.get("x")).intValue();
|
||||
y = Long.valueOf((long) json.get("y")).intValue();
|
||||
} catch (Exception e) {
|
||||
LogManager.LOGGER.info("(WS) Malformed Objects request from " + user.getUser().getUsername());
|
||||
LogManager.LOGGER.severe("(WS) Malformed Objects request from " + user.getUser().getUsername());
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@ package net.simon987.server.webserver;
|
||||
|
||||
import net.simon987.server.GameServer;
|
||||
import net.simon987.server.ServerConfiguration;
|
||||
import net.simon987.server.game.ControllableUnit;
|
||||
import net.simon987.server.logging.LogManager;
|
||||
import net.simon987.server.user.User;
|
||||
import org.java_websocket.WebSocket;
|
||||
@@ -175,17 +176,38 @@ public class SocketServer extends WebSocketServer {
|
||||
user.getWebSocket().send(json.toJSONString());
|
||||
|
||||
} else {
|
||||
//Send keyboard updated buffer
|
||||
try {
|
||||
ArrayList<Integer> kbBuffer = user.getUser().getControlledUnit().getKeyboardBuffer();
|
||||
ControllableUnit unit = user.getUser().getControlledUnit();
|
||||
|
||||
System.out.println("Sent " + unit.getConsoleMessagesBuffer().size() + " messages to " + user.getUser().getUsername());
|
||||
|
||||
//Send keyboard updated buffer
|
||||
ArrayList<Integer> kbBuffer = unit.getKeyboardBuffer();
|
||||
JSONArray keys = new JSONArray();
|
||||
keys.addAll(kbBuffer);
|
||||
json.put("keys", keys);
|
||||
|
||||
//Send console buffer
|
||||
if (unit.getConsoleMessagesBuffer().size() > 0) {
|
||||
|
||||
JSONArray buff = new JSONArray();
|
||||
|
||||
for (char[] message : unit.getConsoleMessagesBuffer()) {
|
||||
buff.add(new String(message));
|
||||
}
|
||||
|
||||
json.put("c", buff);
|
||||
}
|
||||
|
||||
json.put("cm", unit.getConsoleMode());
|
||||
|
||||
|
||||
//Send tick message
|
||||
user.getWebSocket().send(json.toJSONString());
|
||||
} catch (NullPointerException e) {
|
||||
//User is online but not completely initialised
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ public class TerrainRequestHandler implements MessageHandler {
|
||||
public void handle(OnlineUser user, JSONObject json) {
|
||||
if (json.get("t").equals("terrain") && json.containsKey("x") && json.containsKey("y")) {
|
||||
|
||||
LogManager.LOGGER.info("Terrain request from " + user.getUser().getUsername());
|
||||
LogManager.LOGGER.fine("Terrain request from " + user.getUser().getUsername());
|
||||
World world;
|
||||
try {
|
||||
world = GameServer.INSTANCE.getGameUniverse().getWorld(
|
||||
|
||||
@@ -13,7 +13,7 @@ public class UserInfoRequestHandler implements MessageHandler {
|
||||
|
||||
if (message.get("t").equals("userInfo")) {
|
||||
|
||||
LogManager.LOGGER.info("(WS) User info request from " + user.getUser().getUsername());
|
||||
LogManager.LOGGER.fine("(WS) User info request from " + user.getUser().getUsername());
|
||||
JSONObject json = new JSONObject();
|
||||
|
||||
if (user.isGuest()) {
|
||||
|
||||
Reference in New Issue
Block a user