Résolu Bouton menu launcher
-
[font=Verdana, sans-serifBonjour,]
[font=Verdana, sans-serifJ’aimerais ajouter un bouton de connexion rapide à un serveur à coté de multiplayer dans le menu du launcher minecraft 1.8, j’ai regarder beaucoup de tuto mais aucun n’est en version 1.8]
[font=Verdana, sans-serifDonc si quelqu’un pouvait m’aider en me disant ce qu’il faut modifier et ajouter dans le code de guimainmenu.java en 1.8 ça serait sympa ]
[font=Verdana, sans-serif(en fait je veux faire une version 1.8 du launcher d’un serveur qui existe déjà)][font=Verdana, sans-serifMerci d’avance !]
-
Voilà qui devrait t’aider, si tu ne comprends pas tu n’as qu’à demander :
@SubscribeEvent public void onInitGuiEvent(final InitGuiEvent.Post event) { ST18.log.debug("initGuiEvent called"); if (event.gui instanceof GuiMainMenu) { event.buttonList.add(new GuiButton(22, event.gui.width / 2 + 108, event.gui.height / 4 + 132, 64, 32, "") { protected final ResourceLocation buttonTexture = new ResourceLocation(ST18.MODID, "textures/gui/boutique.png"); @Override public void drawButton(Minecraft mc, int mouseX, int mouseY) { if (this.visible) { mc.getTextureManager().bindTexture(buttonTexture); GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); boolean flag = mouseX >= this.xPosition && mouseY >= this.yPosition && mouseX < this.xPosition + this.width && mouseY < this.yPosition + this.height; int k = 0; if (flag) k += this.height; this.drawTexturedModalRect(this.xPosition, this.yPosition, 0, k, this.width, this.height); } } }); } }
-
Merci pour ton aide
Mais je ne comprends pas ou mettre l’ip du serveur ou se connecter quand on clique sur le bouton et je ne sais pas ou mettre ce code dans le fichier^^ -
Ce code rajoute un bouton, ensuite il faut que tu ré-écrives la fonction buttonPressed (je crois, ou quelque chose dans le genre). Si tu ne comprends vraiment pas du tout ce que fait le code, je t’invite à apprendre comment utiliser les événements avant de le copier bêtement.
-
D’accord merci ! je vais lire ce tuto
Et pour la fonction buttonPressed je dois faire quoi ? -
Ici le code que je t’ai donné utilise les événements donc il n’y a pas besoin de remplacer le GuiMainMenu. Il faut ré-écrie la fonction mouseReleased, en fait j’ai fait un bouton pour faire çà :
public class ST18GuiButtonServer extends GuiButton { public String adress; public int port; public ST18GuiButtonServer(int buttonId, int x, int y, String buttonText, String adress, int port) { super(buttonId, x, y, buttonText); this.adress = adress; this.port = port; } @Override public void mouseReleased(int mouseX, int mouseY){ Minecraft.getMinecraft().displayGuiScreen(new GuiConnecting(new GuiMainMenu(), Minecraft.getMinecraft(), this.adress, this.port)); } }
-
Merci beaucoup
Mais je ne sais pas ou est la fonction mouseReleased^^ ou c’est qu’il faut que j’écrive ce code en fait ?
en fait de base je suivait un tuto comme celui-ci par exemple mais il ne marche pas en 1.8 comme le code a changé et la avec ce que tu me donne je suis un peux perdu^^ -
Dans la classe de ton bouton, fait Alt + shift + s puis “override/implement methods” et choisis mouseReleased. Ou si tu as un gui, il faut aller dans la méthode actionPerformed.
-
Ah d’accord donc il faut que je créé une classe pour le bouton mais je le créé ou et je l’appelle comment ?
-
Moi je te conseille de le mettre dans le package fr.openclassrooms.apprendrelejava et de l’appeler “ApprendreLeJava”…
Plus sérieusement : peu importe où tu le place mais sache qu’il est très fortement conseillé de savoir ce que l’on fait avant de copier du code, tu n’as pas l’air d’avoir suivis de tuto pour apprendre le modding forge non plus. Pour le java je te conseille Open classrooms et pour le modding forge, nous avons de très bon tutoriels sur le forum.
-
Ouai mais en fait je sais coder en html/css et php avec mysql mais je n’ai pas encore appris le java donc j’arrive a peux près a me repérer dans un code java mais je ne sais pas du tout le coder.
Et en fait j’essaye juste de faire un bouton pour se connecter a un serveur a coté du bouton multiplayer c’est tout.
En regardant le tuto que j’ai cité ci-dessus j’ai vu que c’était assez facile a faire même si on n’a pas de connaissances en java mais j’ai vite vu que en 1.8 le code est très différent des tuto et que je n’y arriverai pas tout seul c’est pour cela que je demande de l’aide. -
Le java est assez proche du php au niveau de la POO, mais il faut absolument les bases pour coder. Pour ce qui est de la 1.8, il me semble pas qu’il y ai eu des changements au niveau des GUIs, en attendant je te conseille d’aller voir les tutos youtube de minecraft forge france (en haut à droite du site), et une fois que tu sauras utiliser les événements correctement, utilise le code que je t’ai donné précédemment (je l’ai fait en 1.8 donc il marche pour ta version).
-
si j’ai bien compris je dois mettre la 2eme partie dans le GUIMainMenu et la 1er partie dans un .java
mais ça ne marche pas -
Qu’est-ce que tu appelles le GuiMainMenu ? et qu’est-ce que tu appelles le .java ?
-
le fichier GuiMainMenu.java c’est une classe et le .java c’est une nouvelle clase comme GuiMainMenu qui sont dans le package net.minecraft.client.gui
-
J’avais compris que GuiMainMenu était une classe, mais elle correspond à quoi ? Tu n’es pas obligé de ré-écrire la classe entière.
-
regarde ce tuto et tu comprendra http://www.bukkit.fr/index.php/topic/156-10-créer-un-bouton-de-connexion-rapide-a-un-serveur
Et voila le GuiMainMenu.java en 1.8 : http://pastebin.com/FsPqpM4Z
Comme tu peux le constater rien ne correspond avec le tuto, et ce que je veux c’est la même chose que dans le tuto mais en 1.8 en fait. -
Ce que SCAREX te dis c’est qu’il n’est pas nécessaire de réécrire toute la classe GuiMainMenu pour ajouter un bouton.
-
non mais en fait dans le tuto il faut juste la modifier.
Du coup dans tout ça je me suis perdu et je ne sais pas quoi faire juste pour ajouter ce bouton
-
En fait, on ne s’était pas compris car ici c’est la section forge, toi ce que tu fais c’est coder en vanilla. Si tu veux continuer de coder en vanilla, nous ne pouvons pas vraiment t’aider à ce niveau là : demande de l’aide sur le forum sur lequel tu as vu le tuto. En revanche si tu veux coder sous forge, à ce moment là il faut apprendre le modding sous forge, que tu peux trouver sur ce forum.