Modifier le menu principal
-
Bonjour on ce trouve le code pour supprimée ceci
merci par avance
-
Supprimer les informations de forge et la version de Minecraft n’est pas une bonne pratique, tu n’aura aucune aide pour enlevé ces informations sur ce forum.
-
Bonjour, j’utilise actuellement ce tuto juste pour modifier une petite chose : Quand on quitte un serveur, ça nous amène à la liste des serveurs. Je veux faire en sorte que ça nous amène directement au menu principal (qui celui-ci n’a pas été modifier).
Je suis un peu nouveau au développement et je suis aller dans un discord de développement mais malheureusement, je n’est rien trouver. Je suis sur Eclipse en 1.12.2. Merci de m’aider -
Bonjour,
Tu peux utiliser l’event GuiOpenEvent (comme dans ce tutoriel) pour détecter l’ouverture du gui multi-player et ouvrir à la place le menu principal. Cependant avec cette approche il ne sera plus possible d’aller dans le gui de sélection des serveurs. -
@robin4002 Je suis en train de développer un launcher, c’est pour cela que je veux “supprimer” la liste des serveurs. Est-ce bien ca que je dois mettre dans la class MonModClient ?
@SubscribeEvent public void onOpenGui(GuiOpenEvent event) { if(event.getGui() != null && event.getGui().getClass() == GuiMultiplayer.class) { event.setGui(new GuiMainMenu()); } }
Je précise, je suis en 1.12.2 . Je suis nouveau dans le développement et ton aide me sera très utile. Merci
Bonne soirée à toi -
Oui c’est bon ainsi.
-
@robin4002 Salut, j’étais venu quelques mois plus tôt pour demander de l’aide pour mon serveur et j’avais abandonné ce développement et je reviens aujourd’hui pour de l’aide, j’ai coder la procédure (event) dans ma classe principale mais ca ne marche pas…
Voici la classe principal :package fr.orgealexj06.fgutilities; import org.apache.logging.log4j.Logger; import net.minecraft.client.gui.GuiMainMenu; import net.minecraft.client.gui.GuiMultiplayer; import net.minecraftforge.client.event.GuiOpenEvent; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod.EventHandler; import net.minecraftforge.fml.common.Mod.Instance; import net.minecraftforge.fml.common.SidedProxy; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; @Mod(modid = FallenGloryUtilitiesMod.MODID, name = "FallenGlory Utilities", version = "1.0", acceptedMinecraftVersions = "[1.12.2]") public class FallenGloryUtilitiesMod { public static final String MODID = "fgutilities"; @Instance(FallenGloryUtilitiesMod.MODID) public static FallenGloryUtilitiesMod instance; @SidedProxy(clientSide = "fr.orgealexj06.fgutilities.FallenGloryUtilitiesClient", serverSide = "fr.orgealexj06.fgutilities.FallenGloryUtilitiesServer") public static FallenGloryUtilitiesCommon proxy; public static Logger logger; @EventHandler public void preInit(FMLPreInitializationEvent event) { logger = event.getModLog(); proxy.preInit(event.getSuggestedConfigurationFile()); } @EventHandler public void init(FMLInitializationEvent event) { proxy.init(); } @SubscribeEvent public void onOpenGui(GuiOpenEvent event) { if(event.getGui() != null && event.getGui().getClass() == GuiMultiplayer.class) { event.setGui(new GuiMainMenu()); } } }
Merci de m’apporter un peu d’aide
Si tu as besoin d’autres infos, tu me dit
(J’explique également le but de mon développement dans un message juste au dessus)
Bonne journée -
Il faut que la classe dans laquelle se trouve ton event soit enregistré comme classe ayant des événements.
https://www.minecraftforgefrance.fr/topic/3948/les-événements#enregistrer-la-classe-contenant-les-événements -
@robin4002 Ok, ca a marcher sur la version test d’Eclipse, mais quand je met le mod dans le dossier “mods” de mon serveur, je reçois un crash. Faut-il pas faire en sorte que ce mod soit seulement pour le client et non le serveur ou c’est juste une erreur de ma part. Merci pour ton aide
-
Si c’est ça, c’est pour ça qu’il est mieux de le mettre dans le client proxy, qui lui n’est chargé que sur le client.
C’est en plus précisé dans ce tutoriel :@robin4002 a dit dans Modifier le menu principal :
Afin de faire ceci, nous allons utiliser l’événement GuiOpenEvent pour détecter l’ouverture du GuiMainMenu et ouvrir le nôtre à la place.
Comme les GUIs ne sont que présents sur le client, il va être important de faire ceci dans votre classe client (ClientProxy / NomDuModClient) pour éviter que votre mod fasse crasher le serveur au démarrage.
Dans la classe client, ajoutez donc : -
Ce message a été supprimé ! -
Ce message a été supprimé ! -
J’ai un soucis:
J’ai chercher mais je ne sais pas du tout pourquoi il détecte pas la fonction setGui
-
Probablement car tu n’es pas en 1.11.2, version avec laquelle a été fait le tutoriel.
-
@robin4002 Ah car je suis actuellement en 1.7.10 mais j’ai l’impression qu’il n’y a plus rien et les mods actuels du serveur sont tous disponible uniquement en 1.7.10, car les créateurs les ont pas mis à jour
Est-il possible de changer le menu principal en 1.7.10 ? (Tu avais dit plus haut que c’était possible suffisait de changer les trucs en rouge ?)
-
event.gui = new GuiCustomMainMenu();
Après la 1.7.10 est une version ultra obsolète, ne nous faisons plus de support pour cette version ici.
-
Ce message a été supprimé ! -
@robin4002 Petit soucis lorsque je draw le rectangle il se répète à l’infini…
Alors que j’aimerai que ça fasse la taille de toute la fenêtre
comme sur l’image qu’il y a à la fin de ton tuto ?
-
Comme déjà dit, nous ne faisons plus de support pour la 1.7.10. Cette version est ultra obsolète, il faut se mettre à jour pour avoir de l’aide.
-
@robin4002 C’est un problème je le sais bien mais je suis obliger car tout les mods du serveur ne sont plus mis à jour par leur développeur et ne sont plus porter sur des versions supérieur à 1.7.10…
Après c’était la seul et dernière chose que je voulais. Que l’image ne se répète pas et le reste est déjà fait.
C’est assez embêtant surtout que côté EN j’ai rien trouver non plus…