Ajouter une texture au GuiIngameMenu



  • Bonsoir, je souhaîterai faire en sorte d'ajouter une image à mon menu échap, voici à quoi celà ressemble sans l'image, je souhaîterai ajouter une texture de fond.

    text alternatif

    Mon code actuel :

    @SubscribeEvent
        public void InitGuiEvent(InitGuiEvent.Post e) {
    
            if(e.gui instanceof GuiIngameMenu){
                for(Object b : e.buttonList){
                	if(((GuiButton) b).id == 1){
                        ((GuiButton) b).visible = false;
                    }
                    if(((GuiButton) b).id == 12){
                        ((GuiButton) b).visible = false;
                    }
                    if(((GuiButton) b).id == 7){
                        ((GuiButton) b).visible = false;
                    }
                    if(((GuiButton) b).id == 5){
                        ((GuiButton) b).visible = false;
                    }
                    if(((GuiButton) b).id == 6){
                        ((GuiButton) b).visible = false;
                    }
                    if(((GuiButton) b).id == 4){
                        ((GuiButton) b).visible = false;
                    }
                    if(((GuiButton) b).id == 0){
                        ((GuiButton) b).visible = false;
                    }
    
                byte b0 = -16;
                    }
                
                e.buttonList.add(new GuiPauseB(4, e.gui.width / 2 - 50, e.gui.height / 4 , 100, 20, "Retour au jeu") {
                    @Override
                    public void mouseReleased(int x, int y) { // Lorsque l'on clique                    
                    }
                });
                
                e.buttonList.add(new GuiPauseB(6, e.gui.width / 2 - 50, e.gui.height / 4 + 100, 100, 20, "Stats") {
                    @Override
                    public void mouseReleased(int x, int y) { // Lorsque l'on clique                    
                    }
                });
                
                e.buttonList.add(new GuiPauseB(0, e.gui.width / 2 - 50, e.gui.height / 4 + 25, 100, 20, "Options") {
                    @Override
                    public void mouseReleased(int x, int y) { // Lorsque l'on clique                    
                    }
                });
                
                e.buttonList.add(new GuiPauseB(45, e.gui.width / 2 - 50, e.gui.height / 4 + 50, 100, 20, "Discord") {
                    @Override
                    public void mouseReleased(int x, int y) { // Lorsque l'on clique
                        if (Desktop.isDesktopSupported()) {
    
                            try {
                                Desktop.getDesktop().browse(new URI("https://discordapp.com/invite/Pmzn9Vv"));
                            } catch (Exception e) {
                                e.printStackTrace();
    
                        }
    
                        }
                    }
                });
                
                e.buttonList.add(new GuiPauseB(45, e.gui.width / 2 - 50, e.gui.height / 4 + 75, 100, 20, "Site internet") {
                    @Override
                    public void mouseReleased(int x, int y) { // Lorsque l'on clique
                        if (Desktop.isDesktopSupported()) {
    
                            try {
                                Desktop.getDesktop().browse(new URI("http://ruthenium-faction.fr/index.html"));
                            } catch (Exception e) {
                                e.printStackTrace();
    
                        }
    
                        }
                    }
                });
    			
    
    	            e.buttonList.add(new GuiPauseB(1, e.gui.width / 2 - 50, e.gui.height / 4 + 125, 100, 20, "Quitter") {
    	                @Override
    	                public void mouseReleased(int x, int y) { // Lorsque l'on clique                    
    	                }
    	            });
                
            }
            }
    

    Voilà merci de votre réponse, je suis sûr que c'est pas si compliqué en plus 😉



  • Salut,
    Pour mettre une texture de fond, ça ne se passe pas dans initGui() mais dans drawScreen(), il faut bind la texture et utiliser la fonction drawTexturedModalRect pour dessiner, je te conseille de regarder un gui vanilla pour t'en servir d'exemple 😉


Log in to reply