Posted October 7, 20168 yr Hi. I am working in a mod that is only for server-side based on chat commands. For this I need to check if the client is playing on a private server or in single player mode. I tried using the "Minecraft.getMinecraft().getCurrentServerData().isOnLAN()" method but it crashed the game somehow. So. Does anyone know how to achieve this? Thanks.
October 7, 20168 yr You can't reference client-only classes like Minecraft from the server. MinecraftServer#isSinglePlayer will return true if the server is either the integrated server (single-player/LAN) or the dedicated server run with the --singleplayer argument. MinecraftServer#isDedicatedServer will return true if the server is the dedicated server. Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.
October 7, 20168 yr Author Thanks for your answer. Very much appreciated. EDIT: Turns out that I can't do a single thing with MinecraftServer since it is not a singleton object and I need to have an instance of it to properly use it apparently. Do you know how can I get an instance of it? Or another way to check if it is running a server in dedicated mode? The only members I see in MinecraftServer are USER_CACHE_FILE, which is a File, getCurrentTimeMillis(), which returns the current time in milliseconds, and a main method. Also, I am programming in Scala, which is supposedly supported by Forge. EDIT 2: Nevermind. I just discover that with an EntityPlayer instance I can call the getServer() method. Thank you very much.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.