Problème bouton



  • Bonjour tout le monde ! 
    Alorsj 'ai vu qu'il y avait un sujet annexe , mais aucune réponse pour moi .. Donc je demande de l'aide si possible ..

    Alors mon problème , j'aimerais faire un bouton de connexon automatique au serveur , donc remplacer multiplayer par "ExoFight" et quand on clique dessus sa se connecte directement au serveur
    Donc j'ai essayer de copier coller x: mon bouton site web mais cela ne marche pas ::(

    J'ai sa .. Mais je ne sais pas quoi faire avec
    [font=Ubuntu, sans-serifFMLClientHandler.instance().connectToServerAtStartup("ip", 25565); // ip, port]
    Amicalement ..

    package com.ExoFight.Main;
    
    import java.awt.Desktop;
    import java.io.IOException;
    import java.net.URI;
    import java.net.URISyntaxException;
    
    import net.minecraft.client.gui.GuiButton;
    import net.minecraft.client.gui.GuiMainMenu;
    import net.minecraftforge.client.event.GuiScreenEvent.InitGuiEvent;
    import net.minecraftforge.common.MinecraftForge;
    import cpw.mods.fml.client.registry.RenderingRegistry;
    import net.minecraft.client.gui.GuiButton;
    import net.minecraft.client.gui.GuiMainMenu;
    import net.minecraft.client.gui.GuiOptions;
    import net.minecraft.client.gui.GuiScreenResourcePacks;
    import net.minecraftforge.client.event.GuiOpenEvent;
    import net.minecraftforge.client.event.GuiScreenEvent.ActionPerformedEvent;
    import net.minecraftforge.client.event.GuiScreenEvent.DrawScreenEvent;
    import net.minecraftforge.client.event.GuiScreenEvent.InitGuiEvent;
    import net.minecraftforge.common.MinecraftForge;
    import cpw.mods.fml.common.ObfuscationReflectionHelper;
    import cpw.mods.fml.common.eventhandler.SubscribeEvent;
    import cpw.mods.fml.common.ObfuscationReflectionHelper;
    
    public class ClientProxy extends ServerProxy{
    public ClientProxy(){
    MinecraftForge.EVENT_BUS.register(this);
    }
    public void registerRenderInfo(){
    
    }
    
    @SubscribeEvent
    public void onInitGuiEvent(InitGuiEvent.Post event){
    if (event.gui instanceof GuiMainMenu){
    for (Object b : event.buttonList){
    if (((GuiButton) b).id ==14){
    ((GuiButton) b).visible = false;
    }
    }
    int i = event.gui.height / 4 + 48;
    event.buttonList.add(new GuiButton(30, event.gui.width / 2 - 100, i + 24 * 2, 100, 20, "Site ExoFight"){
    @Override
    public void mouseReleased(int x, int y) {
    if (Desktop.isDesktopSupported()){
    try{
    Desktop.getDesktop().browse(new URI ("http://exofight.franceserv.com/accueil/"));
    }catch (IOException e){
    e.printStackTrace();
    }catch (URISyntaxException e) {
    e.printStackTrace();
    
    }
    }
    
    }
    });
    
    ObfuscationReflectionHelper.setPrivateValue(GuiMainMenu.class, (GuiMainMenu) event.gui, "Ohhh ExoFight , TROP BIENNNN CE LAUNCHER", "splashText", "field_73975_c");
    
    }
    }
    @SubscribeEvent
    public void onActionPerformed(ActionPerformedEvent.Pre event){
    if (event.gui instanceof GuiOptions && event.button.id == 105) event.setCanceled(true);
    }
    @SubscribeEvent
    public void onGuiOpen(GuiOpenEvent event){
    if (event.gui instanceof GuiScreenResourcePacks) event.setCanceled(true);
    }
    
    public int addArmor(String armor){
    return RenderingRegistry.addNewArmourRendererPrefix(armor);
    }
    }
    
    

  • Administrateurs

    Franchement je ne comprends pas pourquoi tu bloque.
    Il suffit de reprendre le code que tu as déjà :

           event.buttonList.add(new GuiButton(30, event.gui.width / 2 - 100, i + 24 * 2, 100, 20, "Site ExoFight"){
               @Override
               public void mouseReleased(int x, int y) {
                   if (Desktop.isDesktopSupported()){
                       try{
                       Desktop.getDesktop().browse(new URI ("http://exofight.franceserv.com/accueil/"));
                       }catch (IOException e){
                           e.printStackTrace();
                       }catch (URISyntaxException e) {
                       e.printStackTrace();
                       }
                   }
               }
           });
    

    Le modifier (il faudra juste encore changer les coordonnées sinon tes boutons vont se superposer) :

           event.buttonList.add(new GuiButton(31, event.gui.width / 2 - 100, i + 24 * 2, 100, 20, "Serveur ExoFight"){
               @Override
               public void mouseReleased(int x, int y) {
                    FMLClientHandler.instance().connectToServerAtStartup("ip", 25565);
               }
           });
    

    Et voila …



  • @'robin4002':

    Franchement je ne comprends pas pourquoi tu bloque.
    Il suffit de reprendre le code que tu as déjà :

           event.buttonList.add(new GuiButton(30, event.gui.width / 2 - 100, i + 24 * 2, 100, 20, "Site ExoFight"){
               @Override
               public void mouseReleased(int x, int y) {
                   if (Desktop.isDesktopSupported()){
                       try{
                       Desktop.getDesktop().browse(new URI ("http://exofight.franceserv.com/accueil/"));
                       }catch (IOException e){
                           e.printStackTrace();
                       }catch (URISyntaxException e) {
                       e.printStackTrace();
                       }
                   }
               }
           });
    

    Le modifier (il faudra juste encore changer les coordonnées sinon tes boutons vont se superposer) :

           event.buttonList.add(new GuiButton(31, event.gui.width / 2 - 100, i + 24 * 2, 100, 20, "Serveur ExoFight"){
               @Override
               public void mouseReleased(int x, int y) {
                    FMLClientHandler.instance().connectToServerAtStartup("ip", 25565);
               }
           });
    

    Et voila …

    Normal sa ? 
    http://prntscr.com/9biamx



  • merci ! Mais par contre comme ce screen le montre
    http://prntscr.com/9bij8v
    Il ne faut pas modifier le "i" ? 
    Si oui je ne saisp as le faire .. :') 
    Et je ne connais pas non plus les position du bouton , malgres que j'ai la ligne de code , mais quand je change des chiffre pour voir le changement , sa change que je texte , et le bouton ne bouge psa , il n'y a que le texte qui bouge


  • Administrateurs

    Regardes dans classe GuiMainMenu si tu veux des exemples de positionnement.



  • Tout es bon ! MERCIII encore une fois ,