Rechercher dans la communauté

Affichage des résultats pour les étiquettes '1.7.x'.

  • Rechercher par étiquettes

    Saisir les étiquettes en les séparant par une virgule.
  • Rechercher par auteur

Type du contenu


Forums

  • Communauté
    • Avant Tout
    • Annonces
    • Présentation des Membres
    • Vos Projets
    • Recrutements
  • Tutoriels
    • La base
    • Vanilla
    • Forge
    • Bukkit
    • Astuces
    • Autre
    • En attente de validation
    • En cours de rédaction
  • Créations
    • Minecraft
    • Jeux & Logiciels
    • Web
    • Suggestions
  • Le Coin Graphique
    • Galeries Personnelles
    • Galeries Publiques
    • Demandes Graphiques
  • Taverne
    • Général
    • Jeux Vidéos
    • Programmation

6 résultats trouvés

  1. Créer un KeyBinding ! Cette uvre est mise à disposition selon les termes de laLicence Creative Commons Attribution - Pas dUtilisation Commerciale - Pas de Modification 3.0 non transposé. Tout partage implique que vous citiez l'auteur original. -[INTRODUCTION]- Salut à toi, cher lecteur ! Aujourd'hui je vais vous apprendre à créer un KeyBinding ! Ce KeyBinding servira à créer une touche pour faire /help, mais on peut effecteur beaucoup d'autres choses. -[SOMMAIRE]- 1]Coder pas à pas 2]Résultat final 1]Coder pas à pas Définition d'un KeyBinding: Pour simplier la chose, un KeyBinding est une touche de Minecraft. Développement: Commencez par lancer Eclipse avec votre workspace MCP ! Une fois ceci fait, dans le Package Explorer, trouvez le package net.minecraft.client.settings.. Vous devriez avoir deux classes: GameSettings.java KeyBinding.java Ouvrez la première et ajoutez y ceci, qui vous permettra de stocker votre bouton: public KeyBinding keyBindTuto; Cherchez ensuite cette fonction: public GameSettings(Minecraft par1Minecraft, File par2File) Puis ajoutez ceci à l'intérieur. Ici on déclare notre touche, son nom, la touche du clavier par défaut et sa catégorie. this.keyBindTuto = new KeyBinding("/HELP", 33, "§6Tutoriel Ironcraft"); //Le numéro 33 correspond à la touche F. //Le code fonctionne comme ci dessous: this.keyBindTuto = new KeyBinding("NOM AFFICH DANS LES OPTIONS", NUMERO DE LA TOUCHE, "NOM DE LA CATGORIE"); La dernière étape est de chercher cette ligne, qui nous permet d'ajouter notre touche à la liste des KeyBindings dans les options. Si vous oubliez de faire ceci, le jeu crashera quand vous ouvrirez les options. this.keyBindings = (KeyBinding[])((KeyBinding[])ArrayUtils.addAll(new KeyBinding[] {this.keyBindAttack, this.keyBindUseItem, this.keyBindForward, this.keyBindLeft, ... Et d'y ajouter ceci: this.keyBindUseItem, this.keyBindTuto, this.keyBindForward, ... Et voilà ! Votre touche est créée, mais ne sert encore à rien.. On va remédier à ça ! Trouvez ce morceau de code dans la classe Minecraft.java, dans le package net.minecraft.client, qui nous servira d'exemple: Ce code sert à définir l'action effectuée lorsqu'on appuie sur la touche en question. while (this.gameSettings.keyBindDrop.isPressed()) { this.thePlayer.dropOneItem(GuiScreen.isCtrlKeyDown()); } Copions le, puis modifions le en: while (this.gameSettings.keyBindTuto.isPressed()) { //Faire effectuer l'action ici.. } Pour notre commande /help, remplissons le de cette manière: while (this.gameSettings.keyBindTuto.isPressed()) { this.thePlayer.sendChatMessage("/help"); //Permet d'envoyer un message dans le chat, sans même ouvrir celui du joueur . } C'est terminé ! Votre touche est désormais parfaitement fonctionnelle ! clatez-vous avec votre nouvelle touche ! 2]Résultat final Merci d'avoir lu ce tutoriel ! Laissez un avis, ça me ferait plaisir !
  2. 1.7.x

    Tout sur les blocs ! 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 à tous ! Dans ce tutoriel, nous allons explorer les méandres des objets les plus importants dans Minecraft : les blocs ! -[sOMMAIRE]- 1] Mais au fait, c'est quoi un bloc ? 2] Bases du système 3] Créer un bloc A] Un bloc simple B] Les textures et les noms C] Les méta-données D] Quelques méthodes utiles E] Ajouter un bloc avec un rendu complexe 4] Astuces pratiques A] Créer un minerai B] Créer un bloc orientable C] Créer une plante D] Créer un onglet dans le menu créatif E] La génération 5] Entités de blocs (TileEntities) 6]Astuces pratique 2 A]Créer une nouvelle table de craft B]Créer un four C]Créer un coffre 1] Mais au fait, c'est quoi un bloc ? Cette méthode statique est appelé lors du lancement du client Minecraft (depuis le constructeur Minecraft() Bootstrap.func_151354_b()). C'est ici que sont instanciés tous les blocs. Et pour répondre à notre question de départ, on pourra dire simplement qu'un bloc est une instance de la classe Block (captain obvious). 2] Bases du système C'est donc depuis cette classe (grâce au modifieur public), que nous pourrons récupérer les instances de nos blocs précédemment déclarés dans Block. Comme nous l'avons dit précédemment, un bloc est une instance d'une classe fille de Block. Si vous vous rendez dans cette dernière, vous y verrez beaucoup de méthodes, pour la plupart vide. La majorité d'entre elles correpond à des évenements qui surviennent en jeu (quand un joueur casse un, qu'il marche dessus, qu'il clique dessus, etc.). Nous reviendrons plus en détails sur ces méthodes dans la partie 3C. Chaque bloc a donc sa propre classe, et ce pour permettre un paramétrage fin. En résumé, les redéfinitions de méthodes (overrides) sont le nerf de la guerre pour créer des blocs ! 3] Créer un bloc A] Un bloc simple B] Les textures et les noms C] Les méta-données D] Quelques méthodes utiles E] Ajouter un bloc avec un rendu complexe 4] Astuces pratiques Nous voilà maintenant arrivés à la partie que je pense que vous attendiez le plus ! Avant de rentrer dans le vif du sujet, je voudrais quand même préciser quelque chose : libre à vous de copier « brutalement » les codes présentés ici sans aucunement chercher la compréhension, mais je vous conseille d'abord de lire ce qui a été dit au dessus. A] Créer un minerai B] Créer un bloc orientable C] Créer une plante Bientôt... E] La génération 5] Entités de blocs (TileEntities) Par défaut, un bloc de monde n'est pas une entité, en ce sens qu'il ne dispose pas des fonctionnalités utiles de celles, comme par exemple la sauvegarde d'informations spécifiques via NBT. Mais certains blocs aux fonctionnalités particulières on besoin de ces fonctionnalités, comme par exemple les coffres ou les dispensers. Alors, quand on les pose dans un monde, il ne sont plus « seulement » des cubes, mais aussi des entités qui intéragissent avec leur environnement. Voyons comment créer ça ! A] Créer une TileEntity B] Les méthodes disponibles C] Lui attribuer un rendu spécial
  3. Titre :Faire des serveur skin + cape sous forge Version : 1.7.2 Tutoriel :Alors salut tout le monde, le tutoriel portera sur comment faire des serveur skin plus cape sous forge, j'ai déjà tenté de faire mais cela a pas été un sucés pour moi. Voila se que j'ai fait, cela marche juste sur éclipse mais pas sur minecraft : Demande par :mathmatboy
  4. Changer le curseur de la souris 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]- Nous allons voir comment changer le curseur de la souris -[PRES-REQUIS]- 1]La base d'un mod Forge ou un MCP Vanilla -[sOMMAIRE]- 1]La fonction 2] Appeler la fonction 3]Pourquoi une rotation ? 4] La classe complète et le rendu final 1]La fonction 1.1] Creation La première chose à faire est d'ajouter une fonction qui s'occupera de contenir notre code private void setCursor(String modid, String path, int width, int height, double rotation) { } Hormis le premier, tous les paramètres concerne l'image à appliquer, les nom sembles explicites, je ne pense pas qu'il soit utile de détailler. 1.2]Remplissage Commencez par instancier un transform que vous utiliserez plus tard pour la rotation de l'image. AffineTransform transform = new AffineTransform(); Comme à chaque fois qu'on accède à un fichier ou qu'on affiche quelque chose, il y a des chances que ça plante, ajoutez donc un bloc try-catch pour éviter que le jeu crash si cela arrive. try{ } catch (LWJGLException e) { // Catch les exceptions liées aux changements appliqués à l'image e.printStackTrace(); } catch (IOException e) { // Catch les exceptions liées à la lecture du fichier e.printStackTrace(); } A l'intérieur de celui-ci, récupérez l'image est stockez la dans une variable BufferedImage cursorTexture = ImageIO.read(getClass().getResource("/assets/" + modid + path)); Ajoutez également un traitement pour changer les sens de l'image et préparer l'affichage de la texture //Change la valeur de rotation du transform que vous appliquerez plus tard, le paramètre 'rotation' est un radian. transform.rotate(rotation, cursorTexture.getWidth()/2, cursorTexture.getHeight()/2); AffineTransformOp op = new AffineTransformOp(transform, AffineTransformOp.TYPE_BILINEAR); cursorTexture = op.filter(cursorTexture, null); //Creation d'un tableau d'int de la taille de la texture, il est utilisé pour créer un buffer. int[] rgbs = new int[cursorTexture.getWidth() * cursorTexture.getHeight()]; //Creation d'un buffer, il sera utilisé plus tard lors de la création du curseur. IntBuffer buffer = IntBuffer.wrap(cursorTexture.getRGB(0, 0, cursorTexture.getWidth(), cursorTexture.getHeight(), rgbs, 0, cursorTexture.getHeight())); //Permet la lecture et l'application du curseur. buffer.rewind(); Finissez par créer le curseur et changer celui par défaut //Enregistre les informations créées précédemment dans une variable de type 'Cursor' Cursor newCursor = new Cursor(cursorWidth, cursorHeight, xHotspot, yHotspot, 1, buffer, null); //32x32 semble correct //xHotspot doit être compris entre 0 (inclus) et la largeur du curseur (exclue), par défaut : 1 //yHotspot doit être compris entre 0 (inclus) et la hauteur du curseur (exclue), par défaut : cursorTexture.getHeight() - 1 //Change le curseur par défaut. Mouse.setNativeCursor(newCursor); 2]Appeler la fonction Dans l'exemple qui va suivre j'ai fait en sorte d'afficher l'épée en diamants comme nouveau curseur (en loccurrence la texture est en 16x) Vous pouvez appeler la fonction dans la fonction init() du ClientProxy si vous utilisez Forge ou après l'init du Display de la fonction startGame dans la classe principale de Minecraft. this.setCursor("minecraft", "/textures/items/diamond_sword.png", 16, 16, 3.1415926536); 3] Mais pourquoi une rotation ? 1 est la texture de base de l'itemmais le curseur devrait être dans le sens de 2, or, si on applique l'image sans modification, le curseur ressemblera à 3 Il faut donc ajouter un angle de180° converti enradian, soit3.1415926536, je vous conseil le siterapidtables.com(en anglais)pour la convertion. Libre à vous de jouer avec les point de clic X/Y (x et yHotspot) ainsi que la rotation de la texture pour avoir un curseur dans le sens que vous voulez ! 4]La classe complète et le rendu en jeu 4.1] La classe import java.awt.geom.AffineTransform; import java.awt.image.AffineTransformOp; import java.awt.image.BufferedImage; import java.io.IOException; import java.nio.IntBuffer; import javax.imageio.ImageIO; import org.lwjgl.LWJGLException; import org.lwjgl.input.Cursor; import org.lwjgl.input.Mouse; import fr.zeamateis.tuto_ic.common.proxy.CommonProxy; public class ClientProxy extends CommonProxy { @Override public void init() { registerRender(); } private void registerRender() { this.setCursor("minecraft", "/textures/items/diamond_sword.png", 16, 16, 3.1415926536); } private void setCursor(String modid, String path, int width, int height, double rotation) { AffineTransform transform = new AffineTransform(); try { BufferedImage cursorTexture = ImageIO.read(getClass().getResource("/assets/" + modid + path)); transform.rotate(rotation, cursorTexture.getWidth()/2, cursorTexture.getHeight()/2); AffineTransformOp op = new AffineTransformOp(transform, AffineTransformOp.TYPE_BILINEAR); cursorTexture = op.filter(cursorTexture, null); int[] rgbs = new int[cursorTexture.getWidth() * cursorTexture.getHeight()]; IntBuffer buffer = IntBuffer.wrap(cursorTexture.getRGB(0, 0, cursorTexture.getWidth(), cursorTexture.getHeight(), rgbs, 0, cursorTexture.getHeight())); buffer.rewind(); Cursor newCursor = new Cursor(width, height, 1, cursorTexture.getHeight() - 1, 1, buffer, null); Mouse.setNativeCursor(newCursor); } catch (LWJGLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } } 4.2]Le rendu Tutoriel inspiré de MinecraftForgeFrance et réédité par Dren
  5. Refonte graphique du post dans les jours à venir. Bonjour , Présentation ( brève ) : Je me présente je m'appelle Théo je code en java depuis environ 1 an, enfin je connais assez le langage pour développer sur minecraft sans complexe. Je code en vanilla principalement mais je peux faire des exceptions c'est bien vous le client non? vous êtes roi comme on le dit si bien. Info en plus je peux héberger vos fichiers de launcher si vous ne savez pas ou les mettre cela ne me pose aucun soucis. (Machine avec 250Gbps garantis.) Je peux aussi vous venir en aide pour l'hébergement de votre serveur , je peux configurer votre machine dédiée / vps. Mes compétences : Réalisations que je pourrais faire (et j'en passe) : - Launcher personnalisable + bootstrap (toute version) *(1) *(2) - Modifications des GUIs (GuiMainMenu GuiInGameMenu GuiInGame de nouveaux guis?) - Ajout d'un serveur de skin/capes (vous fournissez l'hébergement web je ne fournis pas le script PHP) - Ajout de minerais génération - Ajout de nouveaux blocs / items simples ou complexes - ArmorHUD Potion Effect - ... ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Je peux faire un peu tous les types de plugins. Galeries de mes créations : Design très simple. Je ne suis pas graphiste encore une fois. Un launcher de test, je l'ai fait uniquement pour que vous aillez un aperçu de ce que je peux faire. Bien sur je peux faire beaucoup mieux si vous me donner le modèle. Me contacter : Pour me joindre vous pouvez utiliser les moyens suivants : Je ne donne pas mon skype sur un sujet public, merci de me MP pour l'obtenir. *(1) : Je n'utilise pas leslibrairies de shark. *(2) : Je ne fait pas de design vous fournissez les images. TOUS MES SERVICES SONT PAYANTS
  6. Salut à tous, je vous présente mon premier plugin :NeedfulCraft ! Il ajoute pas mal de crafts qui peuvent simplifier la survie en multijoueur. Il est bien entendu possible de choisir les crafts à activer. Le plugin est encore en développement, donc ne vous étonnez pas s'il n'y a pas beaucoup d'ajouts. Je suis ouvert à vos propositions alors n'hésitez pas ! Crafts actuels pour l'atelier: Crafts acutels pour le four: Crafts un peu particuliers (à la Thaumcraft): La baguette magique: Fichiers de configuration: Il y a 4 fichiers de configuration (dans le dossier/plugins/Needful/Craft/): config.yml: Vous pouvez désactiver tout le plugin ou alors une des 3 catégories ci-dessous (et même deux, en fait) ! crafts.yml: Vous pouvez désactiver un craft en particulier ! fusion.yml: Vous pouvez désactiver une recette au four en particulier ! echange.yml: Vous pouvez désactiver les crafts à la Thaumcraft ! Si vous changez la version du plugin, supprimez les fichiers de config ! Téléchargement: NeedfulCraft v1.2.4 :http://www.mediafire.com/download/q7uyt0cb4tp3bz8/NeedfulCraft.jar Changelog: 1.2.4 1.2.3 En espérant vous avoir aidé, brunypoloXD.