Fix forms not being able to close and remove unneeded files

This commit is contained in:
rtm516 2020-07-16 18:36:26 +01:00
parent 867cf9ae51
commit 388502d90b
6 changed files with 31 additions and 11 deletions

View file

@ -34,6 +34,7 @@ import org.geysermc.connector.utils.WebUtils;
import org.geysermc.connect.storage.AbstractStorageManager; import org.geysermc.connect.storage.AbstractStorageManager;
import org.geysermc.connect.utils.Server; import org.geysermc.connect.utils.Server;
import java.util.ArrayList;
import java.util.List; import java.util.List;
@Getter @Getter
@ -57,7 +58,7 @@ public class GeyserConnectConfig {
private GeyserConfigSection geyser; private GeyserConfigSection geyser;
private List<Server> servers; private List<Server> servers = new ArrayList<>();
@JsonProperty("custom-servers") @JsonProperty("custom-servers")
private CustomServersSection customServers; private CustomServersSection customServers;

View file

@ -39,6 +39,7 @@ import org.geysermc.common.window.component.ToggleComponent;
import org.geysermc.common.window.response.CustomFormResponse; import org.geysermc.common.window.response.CustomFormResponse;
import org.geysermc.common.window.response.SimpleFormResponse; import org.geysermc.common.window.response.SimpleFormResponse;
import org.geysermc.connect.MasterServer; import org.geysermc.connect.MasterServer;
import org.geysermc.connect.utils.Logger;
import org.geysermc.connect.utils.Player; import org.geysermc.connect.utils.Player;
import org.geysermc.connect.utils.Server; import org.geysermc.connect.utils.Server;
@ -231,8 +232,14 @@ public class UIHandler {
int port = Integer.valueOf(data.getInputResponses().get(1)); int port = Integer.valueOf(data.getInputResponses().get(1));
boolean online = data.getToggleResponses().get(2); boolean online = data.getToggleResponses().get(2);
// Make sure we got an address and port // Make sure we got an address
if (address == null || "".equals(address) || port <= 0 || port >= 65535) { if (address == null || "".equals(address)) {
player.sendWindow(FormID.MAIN, getServerList(player.getServers()));
return;
}
// Make sure we got a valid port
if (port <= 0 || port >= 65535) {
player.resendWindow(); player.resendWindow();
return; return;
} }
@ -286,8 +293,14 @@ public class UIHandler {
boolean online = data.getToggleResponses().get(2); boolean online = data.getToggleResponses().get(2);
boolean bedrock = data.getToggleResponses().get(3); boolean bedrock = data.getToggleResponses().get(3);
// Make sure we got an address and port // Make sure we got an address
if (address == null || "".equals(address) || port <= 0 || port >= 65535) { if (address == null || "".equals(address)) {
player.sendWindow(FormID.EDIT_SERVERS, getEditServerList(player.getServers()));
return;
}
// Make sure we got a valid port
if (port <= 0 || port >= 65535) {
player.resendWindow(); player.resendWindow();
return; return;
} }
@ -394,8 +407,14 @@ public class UIHandler {
boolean online = data.getToggleResponses().get(3); boolean online = data.getToggleResponses().get(3);
boolean bedrock = data.getToggleResponses().get(4); boolean bedrock = data.getToggleResponses().get(4);
// Make sure we got an address and port // Make sure we got an address
if (address == null || "".equals(address) || port <= 0 || port >= 65535) { if (address == null || "".equals(address)) {
player.sendWindow(FormID.EDIT_SERVERS, getEditServerList(player.getServers()));
return;
}
// Make sure we got a valid port
if (port <= 0 || port >= 65535) {
player.resendWindow(); player.resendWindow();
return; return;
} }

View file

@ -36,7 +36,7 @@ import java.io.InputStream;
/** /**
* This class is mostly copied from core Geyser * This class is mostly copied from core Geyser
*/ */
public class PalleteManger { public class PaletteManger {
public static final NbtList<NbtMap> BLOCK_PALLETE; public static final NbtList<NbtMap> BLOCK_PALLETE;
public static final NbtMap BIOMES_PALLETE; public static final NbtMap BIOMES_PALLETE;

View file

@ -129,7 +129,7 @@ public class Player {
startGamePacket.setCurrentTick(0); startGamePacket.setCurrentTick(0);
startGamePacket.setEnchantmentSeed(0); startGamePacket.setEnchantmentSeed(0);
startGamePacket.setMultiplayerCorrelationId(""); startGamePacket.setMultiplayerCorrelationId("");
startGamePacket.setBlockPalette(PalleteManger.BLOCK_PALLETE); startGamePacket.setBlockPalette(PaletteManger.BLOCK_PALLETE);
startGamePacket.setVanillaVersion("*"); startGamePacket.setVanillaVersion("*");
session.sendPacket(startGamePacket); session.sendPacket(startGamePacket);
@ -138,13 +138,13 @@ public class Player {
data.setChunkX(0); data.setChunkX(0);
data.setChunkZ(0); data.setChunkZ(0);
data.setSubChunksLength(0); data.setSubChunksLength(0);
data.setData(PalleteManger.EMPTY_LEVEL_CHUNK_DATA); data.setData(PaletteManger.EMPTY_LEVEL_CHUNK_DATA);
data.setCachingEnabled(false); data.setCachingEnabled(false);
session.sendPacket(data); session.sendPacket(data);
// Send the biomes // Send the biomes
BiomeDefinitionListPacket biomeDefinitionListPacket = new BiomeDefinitionListPacket(); BiomeDefinitionListPacket biomeDefinitionListPacket = new BiomeDefinitionListPacket();
biomeDefinitionListPacket.setDefinitions(PalleteManger.BIOMES_PALLETE); biomeDefinitionListPacket.setDefinitions(PaletteManger.BIOMES_PALLETE);
session.sendPacket(biomeDefinitionListPacket); session.sendPacket(biomeDefinitionListPacket);
// Let the client know the player can spawn // Let the client know the player can spawn