Wide variety of changes for release

This commit is contained in:
2023-12-27 01:16:58 +01:00
parent c63e4badf4
commit 7ea619c596
46 changed files with 484 additions and 63 deletions

View File

@ -31,5 +31,5 @@ public abstract class Controller<Q, R> implements Route {
return new Gson().toJson(handle(req, response));
}
public abstract R handle(Q request, Response response) throws Exception;
public abstract R handle(Q request, Response response);
}

View File

@ -10,7 +10,7 @@ record Req(UUID room) {}
record Resp() {}
public class CloseRoom extends Controller<Req, Resp> {
@Override
public Resp handle(Req request, Response response) throws Exception {
public Resp handle(Req request, Response response) {
Room.deleteRoom(Room.getRoom(request.room()).orElseThrow());
return new Resp();
}

View File

@ -10,7 +10,7 @@ record Req() {}
record Resp(UUID uuid) {}
public class CreateRoom extends Controller<Req, Resp> {
@Override
public Resp handle(Req request, Response response) throws Exception {
public Resp handle(Req request, Response response) {
Room createdRoom = Room.createOwnerlessRoom();
return new Resp(createdRoom.uuid);
}

View File

@ -3,17 +3,22 @@ package eu.mhsl.minenet.minigames.api.routes.queueRoom;
import eu.mhsl.minenet.minigames.api.Controller;
import eu.mhsl.minenet.minigames.api.QueuedPlayerRooms;
import eu.mhsl.minenet.minigames.instance.room.Room;
import net.minestom.server.MinecraftServer;
import spark.Response;
import java.util.UUID;
record Req(UUID player, UUID room) {}
record Resp() {}
record Resp(String error) {}
public class QueueRoom extends Controller<Req, Resp> {
@Override
public Resp handle(Req request, Response response) throws Exception {
if(Room.getRoom(request.room()).isEmpty()) throw new Exception("Room not found");
public Resp handle(Req request, Response response) {
if(Room.getRoom(request.room()).isEmpty()) return new Resp("Raum nicht gefunden");
if(MinecraftServer.getConnectionManager().getOnlinePlayers().size() >= Integer.parseInt(System.getProperty("minenet.playerlimit", "999"))) {
return new Resp("Der Server hat eine Spielerzahllimitierung und ist bereits voll!");
}
QueuedPlayerRooms.queuePlayer(request.player(), request.room());
return new Resp();
return new Resp(null);
}
}