Aller au contenu

Toute l’activité

Ce flux se met à jour automatiquement     

  1. Hier
  2. Bonsoir, le crack n'est pas autorisé. Je ne peux donc pas t'expliquer comment faire ceci. Cependant, si tu le souhaite, tu peux éventuellement m'ajouter sur Discord pour en parler, mais sache que je n'apprécie pas du tout les systèmes de crack. Discord Name: Trxyy#2332 Cordialement.
  3. ok ^^ et quel modif il faut faire pour le passer en crack ? j'ai juste enlever le passwordField mais sa ne marche pas Merci
  4. Bonjour, La librairie est en développement ;). Je n'ai pas encore pensé a ajouter une barre de progression ni le pourcentage, je vais y travailler dessus ;) Cordialement.
  5. ZeparCraft ❖ Recrutements ❖ RPG

    ☀ SOMMAIRE ☀ Tout ce qui est dit en dessous ne sont que mes idées Je ne fait que présenter mon projet que je débuterai prochainement. ♦ Informations ♦ Recrutements ☀ INFORMATIONS ☀ ZeparCraft est un projet de serveur RP/ RPG / PVP. Celui-ci est basée principalement sur Seven Deadly Sins et Magi. Le projet possède déjà un twitter et un discord. Vous pourrez vous déplacez sur une grande carte et vous battre avec des monstres incroyables. Le purgatoire, Les donjons, la forêt du Roi des Fées, Vaizel, Raim, il y a encore beaucoup de lieux à explorer. Vous aurez le choix entre plusieurs clans et races pour votre aventure. ☀ RECRUTEMENTS ☀ Je recherche des : • Graphistes 2D (flat design, pack de texture) • Développeurs (plugins) • Scénaristes (pour les quêtes et les events) • Builder (constructeur) • Net Développeurs (site web, forum) • Modélisateur 3D (savoir faire tout ce qui est model 3D donc les armes, blocs ect...) Toutes candidatures doit se faire sur discord en message privée à un administrateur ou dans le salon #candidature, par e-mail ou directement en messages privées ici ou sur twitter. Il n'y a pas de model particulier mais veuillez précisez au moins cela: -Prénom -Âge -Le poste que vous recherchez -Pourquoi vous? -Screens - Un petit texte rp Twitter : @ZeparCraft Email : Zeparcraft.contact@gmail.com Discord : Discord - Free voice and text chat for gamers Je vous remercie d'avoir lu n'hésitez pas a passez sur le discord! (excusez moi si c'est court, ce n'est qu'un projet pour l'instant.) UP : Le développement du projet commence demain
  6. ☀ SOMMAIRE ☀ Tout ce qui est dit en dessous ne sont que mes idées Je ne fait que présenter mon projet que je débuterai prochainement. ♦ Informations ♦ Recrutements ♦ Chevalier ♦ Magie ☀ INFORMATIONS ☀ ZeparCraft est un projet de serveur RP/ RPG / PVP. Celui-ci est basée principalement sur Seven Deadly Sins et Magi. Le projet possède déjà un twitter et un discord. Vous pourrez vous déplacez sur une grande carte et vous battre avec des monstres incroyables. Le purgatoire, Les donjons, la forêt du Roi des Fées, Vaizel, Raim, il-y-a encore beaucoup de lieux à explorer. Vous aurez le choix entre plusieurs clans et races pour votre aventure. ☀ RECRUTEMENTS ☀ Je recherche des : • Graphistes 2D (flat design, pack de texture) • Développeurs - API : Sponge 1.10.2 - (plugins et mods) • Scénaristes (pour les quêtes et les events) • Builder (constructeur) • Net Développeurs (site web, forum) • Modélisateur 3D (savoir faire tout ce qui est model 3D donc les armes, blocs ect...) Toutes candidatures doit se faire sur discord en message privée à un administrateur ou dans le salon #candidature. Il n'y a pas de model particulier mais veuillez précisez au moins cela: -Prénom -Âge -Le poste que vous recherchez -Pourquoi vous? -Screens ☀ CHEVALIER ☀ Sur le serveur, il n'existera pas que le grade de chevalier mais nous allons parler de ce grade car c'est l'un des plus importants. Il existera plusieurs types de chevalier. Bronze → Argent → Or → Diamant → Chevaliers Sacrés Les chevaliers sacrés sont les "chefs" des chevalier. Pour augmenter en grade il faut exécuter des missions ou faire une très grosse action RP pendant un event RP. ☀ MAGIE ☀ La magie sera présente dans le monde de zeparcraft, quand une personne naît elle obtient directement une affinité parmi cette liste mais il est possible d'obtenir 2 affinités: • Feu • Vent • Lumière • Foudre • Son • Pouvoir • Vie • Eau Certains types peuvent prendre le dessus sur d'autres. Eau → Feu Tout dépend de la puissance de votre magie, un chevalier diamant avec une affinité feu éliminera un chevalier bronze avec une affinité eau facilement, mais un chevalier bronze avec une affinité feu a plus de chances de perdre contre un chevalier bronze avec une affinité eau. (la magie ne fait pas tout) Discord - Free voice and text chat for gamers Je vous remercie d'avoir lu n'hésitez pas a passez sur le discord! (excusez moi si c'est court, ce n'est qu'un projet pour l'instant.) UP : Ont commence demain le développement du projet
  7. La dernière semaine
  8. Salut déjà merci pour ton tuto sa m'a beaucoup aider a créer mon launcher :) J'aurrait aimer savoir quel modif faire pour remplacer le "téléchargement de ..." par une progress bar et un "%" ? Merci
  9. Bonjour. Tu peux les télécharger ICI (pour la 1.8) Cordialement.
  10. badly compressed packet | Aidez moi svp

    Bonjour, j'était en train de jouer a FTB HermitPack en 1.10.2 sur le serveur | hermitpack.brierie.net | Je me suis fait kick et quand je me suis reconnecter, ce message d'erreur est survenu : internal Exception: io.netty.handler.codec.DecoderException: Badly compressed packet - size of 2697745 is larger than protocol maximum of 2097152 Aidez moi svp !! Merci d'avance
  11. Vous recherchez un projet de serveur RPG sérieux avec de l'espérance ? Dans le monde de Tarius, deux nations se livrent dans leur plus grand combat et pour cause, un pacte de paix a été brisé par une trahison, les nations ont des idéologies différentes, le sang coule depuis maintenant 50 ans entre Elaria et Khoelis. De plus, ce monde regorge de créatures hostiles et uniques ainsi que de divers peuples. Engagez-vous dans une des nations, participez à des conquêtes de territoires, montez des niveaux. Des quêtes, des donjons, des épreuves vous attendent dans ce vaste monde. Des mods exclusifs, un nouvel environnement (décor, texture, audio), un réel MMORPG, on vous garantie une aventure inédite mélant Combat et Roleplay. Nation de Elaria Battle2Nation est un projet de serveur semi-RP moddé. Nous voulons redonner une nouvelle image de Minecraft, faire revenir des joueurs qui s'en sont lassé, nous aimerons vous faire vivre une nouvelle aventure. Pour cela, nous nous sommes intéressé à toutes les facettes du jeu, en changeant les textures, les sons d'ambiance, l'environnement et plein d'autres. Nous ajoutons le plus possible d'exclusivité sur le serveur afin de vous faire vivre une aventure frissonnante. La map est entièrement réalisé par moi-même (via WorldPainter), le thème du serveur comme vous l'aurez compris est Médieval / Fantastique. Le serveur est moddé, il doit donc se faire avec SpongeForge, on ne peut pas prendre les plugins de spigot/bukkit. Nous en sommes à notre deuxième reprise de ce projet, ce qui nous a laissé beaucoup de temps pour réfléchir, nous avons approfondit l'histoire et le futur gameplay. Ce projet est géré par moi-même et mon ami, tous deux ayant de l'expérience dans un serveur, notre moyenne d'âge est de 20 ans. Ce projet est purement fait pour le divertissement, il a été mûrement réfléchi. Map en 3D Pour un projet de cette envergure, toute aide est la bienvenue, nous avons vraiment besoin de personnes pour mener à bien ce projet. Nous exigeons un âge de 15/16 ans minimum et également avoir de l'expérience dans le domaine où vous postulez. Ce projet à titre non-lucratif ne reversera pas de salaire au membre de l'équipe. Voici la liste des postes à pourvoir ; Buildeurs > Votre rôle consiste à construire des structures par rapport à un thème (village, zones, nation, terraforming). Vous disposez d'une dynmap 3D pour pouvoir vous repérer facilement dans le monde. Nous proposons également le rôle de Décorateur, il consiste à réaliser l'intérieur des bâtiments, en utilisant les nouveaux blocs décoratifs des mods Développeurs > Vous manipulez le langage Java et l'API de Sponge, vous savez réaliser des plugins Minecraft par rapport à un cahier des charges. Si vous vous connaissez dans la création d'un launcher moddé, nous en serons très intéressés. Configurateurs> Vous avez de l'expérience dans la création d'un serveur, les lignes de configuration de plugins ne vous posent peu de problèmes. Vous avez la possibilité de configurer le mod "CustomNPC", créer des NPC et des quêtes. Rédacteur > Votre rôle est de rédiger une histoire, un article par rapport à des idées données. Vous êtes à l'aise pour écrire, vous ne faites pas beaucoup de fautes. Scénariste > Vous avez possibilité d'imaginer des histoires, elles accompagneront ou compléterons l'histoire principale. Pour postuler, il suffit de remplir ce questionnaire : https://docs.google.com/forms/d/e/1FAIpQLScTg7OGaKYu6sSxN4fi1gakSPmggeL8LVq8j00-zAO8K5OMsw/viewform Nous vous répondrons dans les plus bref délais. Je vous propose de suivre l'avancement de ce projet par des images et des chiffres. Cette discussion sera souvent actualisée pour vous mettre au courant des nouvelles. Un site sera bientôt disponible pour que vous puissiez suivre le projet. Notre twitter : https://twitter.com/Battle2Nation Venez discuter avec nous sur Discord : https://discordapp.com/invite/stt9zSA La forêt oubliée Lugug Nous avons décider de créer une page de donation, les fonds permettront de financer à bien le projet. Les fonds iront par exemple dans la création du launcher, dans la future machine.
  12. Bonjour. Ouvre la librairie avec Winrar et tu la récupère (tu auras 2 dossiers ainsi que 1 fichier => le index.php) Cordialement.
  13. Ou télécharger le index.php ? :p et autres
  14. Hello :) Comment dire ... Cela fonctionne parfaitement sur Intellij Idea, donc pour ceux utilisant ce logiciel, c'est good ! Merci à toi pour ce tuto, j'espère que cela continuera longtemps et sur la bonne voie :)
  15. Créer un launcher Minecraft Animé Cette œuvre est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas dUtilisation Commerciale - Pas de Modification 3.0 non transposé . Tout partage implique que vous citiez l'auteur original. < INTRODUCTION > Bonjour a tous. Dans ce tutoriel, nous allons voir comment faire un launcher "animé" grâce a une librairie faite par moi-même. CECI EST UNE LIBRAIRIE EST EN DEVELOPPEMENT! ELLE SERA MODIFIEE AVEC LE TEMPS. ATTENTION, cette librairie est utilisée surtout pour le visuel de votre launcher! DES TUTOS VIDEOS SANS UTILISATION DE LA LIBRAIRIE SE TROUVENT ICI (CLIQUER POUR VOIR) La librairie est basée sur le JavaFX, elle ne sert que de support. Le mieux est quand même de développer sois-même. < PRE-REQUIS > -La librairie "TLib" qui vous pouvez vous procurer ici: TLib.jar -Les bases du développement -Un cerveau, du temps ainsi que de l'envie. < SOMMAIRE > 1) CREER LA PARTIE VISUELLE 2) OPTIONNEL MISE A JOUR & LANCEMENT 3) OPTIONNEL SAUVEGARDE DES IDENTIFIANTS [1] CRÉER LA CLASSE PRINCIPALE Alors pour commencer, il faut crée un nouveau Projet Java (Click droit, new > java project) puis mettre le nom que vous voulez. On va ajouter notre librairie au projet, clique droit sur le projet, Properties (tout en bas), puis a gauche aller sur "Java build Path", puis dans Libraries dans l'onglet en haut, et enfin sur Add external JARs a droite, sélectionnez la librairie TLib.jar, puis faites ok, ensuite, cliquez sur la fleche sur le "JRE System Library [JavaSE-**], cliquez sur Access rules, puis sur EDIT a droite, cliquez sur ADD Dans Résolution mettez ACCESSIBLE et dans rule Pattern ecrivez "javafx/**", puis validez tout et faites OK jusqu’à retourner sur le plan de travail. Après on va créer une classe qui s'appellera comme vous le voulez. Pour le coup, je l'appellerais Main, puis juste avant de cliquer sur Finish, on va cocher un carré avec écrit "public static void main(String[] args) comme ça, ça nous aura créer cette fonction qui est la fonction "maître", car c'est la fonction qui lancera notre application. Voila, ensuite on va extends notre classe vers "Application" Pour l'import, ca sera javafx.application.Application, ensuite on aura une petite erreur sur Main, pour remédier a ça, on mets le curseur sur Main et clique sur "Add unimplementeds methods" Et on obtient alors ceci Ensuite, on va écrire quelques lignes de code pour préparer le terrain. Dans la fonction void main, on ajoute ceci. TConstants.setParameters("MonServeur", "monServeur", 880, 520, "/chemin vers le package des resources/", "url de mise à jour", Versions.V1_7_10, "g2po"); launch(args); // JAVAFX Alors, décortiquons un peu. Nom du Launcher, nom de la APPDATA, Taille horizontale de la fenêtre, Taille verticale de la fenêtre, le chemin vers le package des ressources, L’URL du site de mise a jour, La version du jeu, et une série de caractères (pour enregistrer le pseudonyme et le mot de passe) Pour l'URL de mise à jour => Votre lien est par exemple http://monsite.fr/downloads/, il doit y avoir http://monsite.fr/downloads/index.php, http://monsite.fr/downloads/assets,/ http://monsite.fr/downloads/game/ et http://monsite.fr/downloads/libraries/ Pour le package, çà sera votre package ou il y aura toutes vos ressources (Images des boutons, vidéo d’arrière plan, logo, icone...) Moi pour le coup je l'ai appelé resources_custom. Retrouvez ICI les resources utilisés pour le tuto. Bon maintenant, on va dans la fonction start, puis on va écrire Scene scen = new Scene(); <= C'est la base de notre appli. TApp app = new TApp(arguments...); <= C'est une classe que j'ai fait déjà prête afin de pouvoir déplacer la fenêtre en cliquant etc.. les arguments sont, Stage, Scene, Nom du Launcher, Taille horizontal, taille verticale, et le style de la fenêtre, du genre, avec bordure, sans bordures etc... La j'ai mis, StageStyle.UNDECORATED pour qu'il n'y ai pas de rebord. enfin nous avons le app.setIconImage pour définir l'icone de la fenêtre. On a une erreur sur create(); et c'est normal car nous n'avons pas créer la fonction encore, donc on se mets au boulot et on génère ça! Donc la on a une vue d'ensemble de la classe en même temps comme ça, on vérifie qu'on ai rien oublié. bref surtout on regarde la fonction create. on creer le "Pane root = new Pane()", on défini sa taille avec setPrefSize. et on return root. Et c'est ici qu'on va définir nos "Constantes" pour afficher la vidéo d'arrière plan ainsi que le logo, les boutons etc.. En haut de la classe un va écrire ceci: private TBackground bk; private ResourceLocation loc; private TConfig data; private LauncherPanel panel; Et dans la fonction create on ajoute ceci: root.setPrefSize(TConstants.getWidth(), TConstants.getHeight()); // DEBUT AJOUT data = new TConfig(McDir.getDirectory()); bk = new TBackground(loc.getMedia("background.mp4"), root); panel = new LauncherPanel(root, stage); // FIN AJOUT return root; Donc alors, la on a ajouté le background vidéo, le ResourceLocation, la classe Config ainsi qu'une classe LauncherPanel qui a une erreur. le data = new TConfig() C'est pour l'enregistrement des logs tout ça tout ça. Le bk = new TBackground(), le background.mp4 c'est le nom de votre video dans votre package, si la video se nomme "giselle_en_trotinette.mp4", bah vous remplacez background.mp4 par giselle_en_trotinette.mp4. panel = new LauncherPanel() C'est notre panel qu'on a pas encore crée. Donc on mets le curseur sur LauncherPanel et on clique sur Create classe LauncherPanel. Bon déjà la, si vous avez mis vos ressources dans votre package prévu a l'effet, ainsi que les lignes de codes, vous devez avoir votre vidéo qui se lit. Pour moi, ça rends comme ça, après, tout dépendra de votre vidéo hein. Bon, maintenant on va faire nos boutons ainsi que les textfields pour le pseudo et mot de passe. On va dans la classe LauncherPanel qui est vide normalement, et on ajoute ceci en haut public static TTextField usernameField; public static TPassField passwordField; public static TButton loginButton; public static TButton closeButton; public static TButton minimizeButton; private static TConstants config; private ResourceLocation resourceLocation; Puis le constructeur aussi public LauncherPanel(Pane contentPane, Stage primaryStage) { } Bon, la on défini nos boutons ainsi que nos textfields. Ensuite dans le constructeur de LauncherPanel, on ajoutes ces lignes de codes la. loginButton = new TButton(contentPane); loginButton.setFont(FontLoader.loadFont(config, "Sabado-Regular.otf", "Sabado", 16F)); loginButton.setText("JOUER"); loginButton.setSize(100, 30); loginButton.setPosition(config.getWidth() / 2 - 50, config.getHeight() / 2 + 75); loginButton.setAction(event -> { // ACTION }); minimizeButton = new TButton(contentPane); minimizeButton.setSize(37, 20); minimizeButton.setPosition(config.getWidth() - 83, -4); minimizeButton.setInvisible(); minimizeButton.setGraphic(new ImageView(resourceLocation.loadImage("minimize.png"))); minimizeButton.setHover(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { minimizeButton.setOpacity(0.80); } }); minimizeButton.setUnHover(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { minimizeButton.setOpacity(1.0); } }); minimizeButton.setAction(event -> { Stage stage = (Stage)((TButton)event.getSource()).getScene().getWindow(); stage.setIconified(true); }); closeButton = new TButton(contentPane); closeButton.setSize(37, 20); closeButton.setPosition(config.getWidth() - 45, -4); closeButton.setInvisible(); closeButton.setGraphic(new ImageView(resourceLocation.loadImage("close.png"))); closeButton.setHover(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { closeButton.setOpacity(0.80); } }); closeButton.setUnHover(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { closeButton.setOpacity(1.0); } }); closeButton.setAction(event -> { TConfig.onExit(); System.exit(0); }); usernameField = new TTextField(contentPane); usernameField.setFont(FontLoader.loadFont(config, "Sabado-Regular.otf", "Sabado", 17F)); usernameField.setSize(200, 30); usernameField.setPosition(config.getWidth() / 2 - 100, config.getHeight() / 2); usernameField.setVoidText("pseudonyme"); usernameField.setOnKeyPressed(new EventHandler<KeyEvent>() { @Override public void handle(KeyEvent ke) { if (ke.getCode().equals(KeyCode.ENTER)) { // ACTION } } }); passwordField = new TPassField(contentPane); passwordField.setFont(FontLoader.loadFont(config, "Sabado-Regular.otf", "Sabado", 17F)); passwordField.setSize(200, 30); passwordField.setPosition(config.getWidth() / 2 - 100, config.getHeight() / 2 + 35); passwordField.setVoidText("mot de passe"); passwordField.setOnKeyPressed(new EventHandler<KeyEvent>() { @Override public void handle(KeyEvent ke) { if (ke.getCode().equals(KeyCode.ENTER)) { //ACTION } } }); Bon on va décrypter un peut tout ça. loginButton = new TButton(contentPane); loginButton.setFont(TFont.loadFont(config, "Sabado-Regular.otf", "Sabado", 16F)); loginButton.setText("JOUER"); loginButton.setSize(100, 30); loginButton.setPosition(config.getWidth() / 2 - 50, config.getHeight() / 2 + 75); loginButton.setAction(event -> { // ACTION }); Pour les boutons, on dis que leBouton = nouveau Bouton. leBouton.setFont <= On défini la police d’écriture (args: config, "nom de la police d’écriture dans le package", "Nom de la police d’écriture (se trouve on ouvrant la police d’écriture)", taille police. leBouton.setText <= on dis quel texte on veut qu'il y ai sur notre bouton) leBouton.setSize <= Taille horizontale et verticale du bouton. leBouton.setPosition <= Position du bouton sur la fenetre. leBouton.setAction <= Action du bouton et eventuellement, pour les boutons Images on mets leBouton.setInvisible() Et leBouton.setGraphic <= pour afficher une image. usernameField = new TTextField(contentPane); usernameField.setFont(TFont.loadFont(config, "Sabado-Regular.otf", "Sabado", 17F)); usernameField.setSize(200, 30); usernameField.setPosition(config.getWidth() / 2 - 100, config.getHeight() / 2); usernameField.setVoidText("pseudonyme"); usernameField.setOnKeyPressed(new EventHandler<KeyEvent>() { @Override public void handle(KeyEvent ke) { if (ke.getCode().equals(KeyCode.ENTER)) { // ACTION } } }); leField = nouveau textField leField.setFont <= Police d'ecriture leField.setSize <= taille horizontale et verticale leField.setPosition <= position sur la fenêtre leField.setVOidText <= texte quand le textfield est vide. leField.setOnKeyPressed <= Action quand on appuie sur une touche, actuellement, c'est KeyCode.ENTER pour que quand on appuie sur ENTREE, ca fasse l'action du bouton JOUER. Pour l'instant on obtient un truc comme ça: Pour l'instant on a un assez bon résultat. On va ajouter le Logo du Serveur. On va retourner dans la Classe Main, on va ajouter public static TLogo logoPanel; Et logoPanel = new TLogo(loc.loadImage("logo.png"), 600, 100, 150, 40, root); Décryptons. TLogo(loadImage(imageLogo, taille de l'image X, taille Y, position X, position Y, root,) Si vous souhaitez avoir un petit effet de mouvement du Logo, mettez ceci a la place: logoPanel = new TLogo(loc.loadImage("logo.png"), 400, 80, root); logoPanel.setImagePos(TConstants.WIDTH / 2 - 180, 50); Ajouter setImagePos(position X, position Y); // Tout simplement et le mouvement se fera tout seul =) Bon après, ça fais un peu vide en haut, et en bas aussi, et aussi au milieu tiens, pourquoi pas. On va ajouter 3 rectangles dans la classe LauncherPanel qui vont redonner un peu plus de style ;) public static TRectangle rectTop = new TRectangle(0, 0, 1100, 20); public static TRectangle rectLow = new TRectangle(0, config.getHeight() - 20, 1100, config.getHeight()); public static TRectangle rectLoginBox; // A AJOUTER EN HAUT DE CLASSE Et ensuite on ajoute ceci mais au dessus de "loginButton = new TButton(contentPane);" : rectTop.setColor(Color.WHITE); rectTop.setOpacity(0.8); contentPane.getChildren().add(rectTop); rectLow.setColor(Color.BLACK); rectLow.setOpacity(0.6); contentPane.getChildren().add(rectLow); rectLoginBox = new TRectangle(config.getWidth() / 2 - 110, config.getHeight() / 2 - 25, 220, 140); rectLoginBox.setColor(Color.BLACK); rectLoginBox.setOpacity(0.6); contentPane.getChildren().add(rectLoginBox); Car sinon les rectangles seront en dessus et çà cacherais nos boutons. La en gros on dis: rectangle = nouveau Rectangle rectangle.setColor <= On défini la couleur du rectangle. rectangle.setOpacity <= L'opacité du rectangle contentPane.getChildren.add() <= Ajouter a la fenêtre. Bref, voila que maintenant on a une barre en haut, en bas et un carré au milieu pour faire comme une zone de Login. Dans la barre du haut, on va afficher notre nom de serveur. public TLabel labelTitle; Et labelTitle = new TLabel(contentPane); labelTitle.setText("Tutoriel Launcher"); labelTitle.setPosition(TConstants.WIDTH / 2 - 90, -4); labelTitle.setFont(FontLoader.loadFont(config, "Sabado-Regular.otf", "Sabado", 22F)); labelTitle.setTextFill(Color.WHITE); Ligne 1: définir le texte à afficher Ligne 2: position X et Y Ligne 3: La police d'ecriture Ligne 4: Couleur du texte Bon, voila déja on a une base de launcher. Après c'est vrai que ça fais un peu brouillon.. Donc faut modifier tout ça et rajouter du Style. On ajoute ceci en desous de loginButton = new TButton(contentPane); loginButton.setStyle("-fx-background-color: rgba(53,89,119,0.4); -fx-text-fill: white;"); Ça va faire un truc un peu plus "joulie tout beau tahu.", Un effet assez sympathique, que l'on peut réutiliser sur les usernameField et passwordField. Si on décortique, on écrit: -fx-background-color: rgba(53,89,119,0.4); || Pour définir la couleur d'arrière plan ainsi que l'opacité (rgba(rouge,vert,bleu,opacité); -fx-text-fill: white; || Pour définir la couleur du texte. (pour l'exemple, white (blanc)). Ça nous rends un truc comme ça On profite de regarder le rendu du Logo aussi ;) [2] Bon c'est bien beau tout ça, mais la partie du téléchargement et du lancement du jeu ? Bien nous avons plusieurs solutions. Soit utiliser un système de téléchargement custom, ou bien utiliser ce qui suit. Personnellement, je vous conseille de faire votre propre système de téléchargement, c'est toujours mieux. Il va falloir déjà upload sur notre site les fichiers que Minecraft aura besoin. Ce que je vous conseille c'est de supprimer votre .minecraft et de télécharger la version de votre minecraft que vous souhaitez utiliser. vu que votre minecraft a était supprimé, votre installation sera neuve et donc ça sera mieux pour regrouper tout les fichiers nécessaires. Moi je l'ai fait et j'ai téléchargé la version 1.7.10. Pour le Pattern du Dossier de téléchargement il faut qu'il soit présenté comme ceci: Dans le dossier assets, il vous faut les assets de votre version, personnellement j'ai ceci Ensuite dans le dossier game il faut: un dossier natives avec toutes les natives (télécharger les natives ICI (1.7.10)) et un fichier game.jar (en gros c'est le 1.7.10.jar qu'il faut renommer game.jar) Et dans le dossier libraires, il faut toutes les libs. Après, il faut le index.php a la racine, comme sur la première image. le index.php est a récupérer a la racine de ma librairie, ouvrez la avec winrar et récupérez le index.php, puis mettez le dans votre hebergeur WEB. Ensuite dans votre classe LauncherPanel, public static Updater updater = new Updater(); public static XMLParser parser = new XMLParser(); public TLabel labelState; XMLParser <= Il va vérifier les fichiers Updater <= il va mettre a jour. labelState <= nombre de fichiers restants. ensuite on ajoute ceci labelState = new TLabel(contentPane); labelState.setText("WAIT"); labelState.setPosition(2, TConstants.getHeight() - 20); labelState.setFont(FontLoader.loadFont(config, "votre police ecriture", "nom de la police", 60F)); labelState.setTextFill(Color.WHITE); labelState.setVisible(false); Ligne 2: texte a afficher Ligne 3 position Ligne 4: définir police écriture Ligne 5: Mettre sur Non visible car on télécharge pas directement. On va créer une fonction play() en bas de la classe et dans le loginButton.SetOnAction() on écrit play();. C’est ce qu va faire notre action quand on va cliquer sur le bouton. on ajoute de même pour les fields Pour être plus rapide, été si vous avez copié le code, faire une recherche avec CTRL + F et recherchez //AJOUT et remplacez //AJOUT par play();. dans la fonction play(), Il faut ajouter ceci à l’intérieur. Wrapper.log("Logging In..."); loginButton.setVisible(false); usernameField.setVisible(false); passwordField.setVisible(false); labelState.setVisible(true); rectLoginBox.setVisible(false); if (!updater.isUpdating) { updater.checkForUpdate(parser, updater, labelState); } Ligne 2 -> 5 <= On mets en invisible tout les composants et on affiche le label de téléchargement (labelState) ensuite on dis que si le updater n'est pas entrain de travailler, on défini notre pseudo, mot de passe et on écrit la version qu'on veut dans la classe Account (classe utilisée pour le lancement du jeu et l'authentification.) et updater.CheckForUpdate va vérifier les fichiers invalides et les télécharger. Voilà, maintenant plus qu'a faire notre système d'authentification car sinon, c'est du Launcher Crack qu'on parle la :/ AUTHENTIFICATION Alors Maintenant, pour l'authentification, on va devoir écrire en haut de notre fonction play(); Authenticator auth = new Authenticator(usernameField.getText(), passwordField.getText(), true); auth.auth(); Puis ensuite, avec tout le code qu'il y a en dessous, on va devoir dire que si on est connecté, on lance le téléchargement, sinon, on affiche une erreur. if (auth.isAuthed) { Wrapper.log("Logging In..."); loginButton.setVisible(false); usernameField.setVisible(false); passwordField.setVisible(false); labelState.setVisible(true); rectLoginBox.setVisible(false); if (!updater.isUpdating) { updater.checkForUpdate(parser, updater, labelState); } } else { new TALert("Can't connect to minecraft.net", AlertType.ERROR); Wrapper.log("Can't connect to minecraft.net"); } Et c'est tout! [3] SAUVEGARDE DES IDENTIFIANTS En haut de notre classe LauncherPanel, on ajoute public Preferences savedData = Preferences.userRoot(); Ensuite, on va récupérer les identifiants, ensuite, en dessous de usernameField.setFont(Font.font("Sabado", 17F)); usernameField.setText(savedData.get(config.PREFERENCES_ABREV + "_username", "")); en dessous de passwordField.setFont(Font.font("Sabado", 17F)); On ajoute: passwordField.setText(savedData.get(config.PREFERENCES_ABREV + "_pwd", "")); Et dans la fonction play();, en dessous de if (auth.isAuthed) { On ajoute: savedData.put(config.PREFERENCES_ABREV + "_username", usernameField.getText()); savedData.put(config.PREFERENCES_ABREV + "_pwd", passwordField.getText()); Et voilà, la nos identifiants sont enregistrés & sauvegardés. Bon voilà, il y a des chances que le tuto soit modifié pour des raisons d'optimisation car ce n'est pas optimisé du tout (du moins je pense car c'est la première version de la Lib) Merci de m'avoir lu, passez une agréable journée/soirée. N'hésitez pas à réagir a ce tutoriel afin de me faire remonter des problèmes etc..
  16. Le sujet se met à neuf avec la nouvelle affiche de présentation de SurvivalZ !
  17. Avant
  18. Launcher animé

    Salut, Merci bien a toi. Cordialement.
  19. Launcher animé

    Merci pour le tuto en vidéo, tu m'as fait bavé devant ton gif :) J'attend avec impatience la suite !
  20. [RolePlay-MMORPG] Create Your Destiny

    Nouvelle roadmap et nouveau partenaire : la nauria team (son discord ici : https://discord.gg/hw83ztY) ). C'est une team de build a des prix abordables. La roadmap sera mise à jour et n'hésitez pas à donner votre avis sur le design !
  21. Rosso développeur plugin Java

    Bonjour, je ferrais attention maintenant ahah ^^ Ajout du discord rosso#1774 et modification tarif en fonction de la commande ^^
  22. Rosso développeur plugin Java

    Tu devrais éviter, le Up est assez mal vu. Notamment parce que IronCraft est plutôt dormant donc up chaque jour en espérant gratter qqs vues c'est bof. Si tu ne le savais pas je t'informe mais fais en ce que tu veux.
  23. Hézon - Serveur PvP - Recrutement ON

    Bonjour ou bonsoir tout le monde, Je fais ce sujet aujourd'hui pour vous annoncez le recrutement de mon serveur Minecraft. Pour commencer voici quelques informations: Le nom du serveur: Hézon Type de jeux: PvP, Créatif (bientot op prison) Les versions crackées acceptées: Oui Notre équipe déjà présente: Fondateurs: ImSinaroo & lelecooldu54 Administrateurs: burlyskuire185 & Mifhyz Développeurs: B4LL0_ Modérateurs: x (2 places) Architectes: fireofthestar & Torkeuille Assistants: x (3 place) YouTubeur: x (1 place) Graphiste: x (1 place) Nous recrutons encore: 2 Modérateurs 3 Assistants 1 YouTubeur 1 Graphiste Les recrutements se passe ici : http://hezon.my-heberg.fr/forum/#zone-recrutement.7 PS: Les candidatures des YT et des graphistes seront prioritaires. Cordialement ImSinaroo,
  24. Bonjour/bonsoir tout le monde ! Récemment avec un pote on a créé un serveur SkyWars mais vu qu'on en a plus besoin j'ai décider de le vendre. Le serveur est : Full Config Compatible 1.8.X 1 Spawn + 2 maps On le vend seulement 5€ Voici le lien : https://selly.gg/p/0d5f0a52 Cordialement ImSinaroo,
  25. Rosso développeur plugin Java

    UP :3
  26. Salutations ! Bienvenue sur le poste de recrutement du projet Edge of Oblivion, un serveur minecraft de survie scénarisée. Pas de quêtes en vue, mais des événements (semi-) aléatoires qui vont modifier la difficulté du jeu et la manière de jouer des joueurs. L'objectif étant de diminuer l'aspect répétitif de Minecraft en proposant des variétés dans le jeu. Dans Edge of Oblivion, les joueurs vont devoir jouer à la fois de manière coopératif et de manière compétitif pour survivre le plus longtemps possible ! Oseront-ils relever le défi ? Développement en cours : Cahier des charges : 90% ⏵⏵⏵⏵⏵⏵⏵⏵⏵⏵ Site internet : 10% ⏵⏵⏵⏵⏵⏵⏵⏵⏵⏵ Modélisation 3D : 20% ⏵⏵⏵⏵⏵⏵⏵⏵⏵⏵ Construction de la map : 0% ⏵⏵⏵⏵⏵⏵⏵⏵⏵⏵ Développement Java : 0% ⏵⏵⏵⏵⏵⏵⏵⏵⏵⏵ Durée de développement prévue : 6 à 9 mois. Contact par Discord : https://discord.gg/2Sk7sHW Merci d'avoir lu la présentation et j'espère vous retrouver dans l'équipe ! :) Bonne journée,
  1. Charger plus d’activité
×