Jump to content

Recommended Posts

Posted

Did you try looking at the

ServerData

class or how it's used? You should be able to navigate to it and find usages of it using your IDE.

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.

Posted

thx for your response.

 

yae i also looked at the Serverdata , but i dont understand the format for it.

 

i add a new data to the serverlist, but i cant connect to him ingame.

It shows the new server a the main menu Multiplayer.

 

I have to learn how i can connect without useing the gui

Posted

Did you try calling

FMLClientHandler#connectToServer

with a new

ServerData

object?

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.

Posted

the problem is that the function seems so go in emptyness xD my serverdata is correct, but it just nothing happend.

 

System.out.println(  FMLClientHandler.instance().getServer());

 

            this.field_146811_z = new ServerData("Rin-Online", "188.40.97.137");

    FMLClientHandler.instance().connectToServer(

          FMLClientHandler.instance().getClient().currentScreen,

          field_146811_z);

 

this is what i have. but i am a nooby at servermanagement... xD and english^^

Posted

I just implemented this myself, it was a bit tricky to figure out. You can't just connect to the new server immediately, you need to disconnect from the current server first and then connect to the new server.

 

When the player clicks the button, store the

ServerData

of the pending connection somewhere and disconnect them from the server. Look at

GuiIngameMenu#actionPerformed

(case 1, the Disconnect/Save and Quit button) to see how to disconnect from the current server.

 

When the player disconnects from the server (

FMLNetworkEvent.ClientDisconnectionFromServerEvent

), schedule a task on the main thread using

Minecraft#addScheduledTask

(this event is fired on a Netty thread, so you must schedule a task on the main thread before you can safely interact with normal Minecraft classes). In this task, check if there's pending connection. If there is, call

FMLClientHandler#setupServerList

followed by

FMLClientHandler#connectToServer

(pass a new instance of

GuiMainMenu

as the first argument) to connect to the new server.

 

You can see my implementation (a client command) here. If you're not targeting Java 8, use an anonymous class instead of a lambda for the scheduled task and Guava's

Optional

instead of Java's

Optional

.

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.

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.