Aller au contenu

Trxyy

Membre
  • Compteur de contenus

    26
  • Inscription

  • Dernière visite

  • Days Won

    3

Trxyy last won the day on 2 mai

Trxyy had the most liked content!

Réputation sur la communauté

3 Réputation

1 abonné

À propos de Trxyy

  • Rang
    Membre

Jeux

  • Minecraft
    Trxyy

Visiteurs récents du profil

673 visualisations du profil
  1. Launcher animé

    Bonjour. Oui, par Skype, steven.perso10 Bonne journée.
  2. Launcher animé

    Oh merci :3, Si plusieurs personnes me le demande, oui un tutoriel sera la ^_^ En tout cas, merci de ta réponse, Cordialement.
  3. Launcher animé

    Bonjour, J'ai remarqué qu'il y a une section Créations, donc je me permet de montrer une"création test" car ce n'est pas fini. Voici le rendu que j'ai obtenu en tentant de faire un launcher un peu plus animé, pour changer d'une image fixe . (Le gif est de qualité médiocre je vous l'accorde.) Bien cordialement. Bonne Soirée/journée.
  4. Nouveau Style de Serveur

    Merci de ta reponse.
  5. Nouveau Style de Serveur

    C’est vrai que vu comme ça, on pourrait croire mais le monde sera entièrement grand, le pvp sera toujours actif, il y aura de la conquête de sorte de « totems » qui permettrons d’agrandir la zone de faction, etc etc... les deux factions seront entourés d’une muraille, avec des centaines de maisons à l´knterieur, que les joueurs pourront acheter, le pvp sera actif de partout (comme un faction) et en capturant les totems, ça agrandit une zone externe de la muraille ou les personnes pourront construire a l´interier pour protéger au lieu leur faction (muraille). je n’ai pas vraiment tout écrit, je veux que ce soit un serveur autre que le pvp faction que l’on Voit de partout. Les gens disent: »nouveauté pvp faction, le renouveau du pvp EXCLUSIF » sauf que à chaque fois bah c’est un pvp faction simple avec des armures et items supplémentaires. Et c’est assez chiant de voir des serveurs qui se ressemblents :/ j’essaie de renouveler cela. Il y a plusieurs posts qui ont déjà était faits en voulant créer un serveur comme j’évoque, mais malheureusement, aucun d’eux N’a ouvert, ça ça devrait coûter assez cher, et c’est le cas pour moi aussi ^-^ c’est pour ça que je demande à vous a communauté si ça peut outrait être intéressant au pas car pour faire la Map du serveur ainsi que coder certains plugins (je m’y connais pas trop en plugins) j’en ai déjà pour environ 900€. Et je n’ai point envie d’investir pour rien. Merci de ta réponse envoyé tout cas. cordialement.
  6. Nouveau Style de Serveur

    Bonjour, une petite question m'est venue en tête avant que je commence à développer mon serveur. :) j'aimerais savoir si vous aimeriez voir un nouveau style de serveur ? Autre chose que le PvP-Factions. du genre: Deux factions se battent, on choisis sa faction au premier lancement du jeu et ensuite on ne peut plus changer. Le serveur sera: -2 Factions avec assauts de factions -System de quête (Quetes, Semi-Rp ,PvP, mmo) -Musiques par régions -Capture de territoire, de zones ainsi que de villages spéciaux -Donjons (Niv 1, 2, 3...) -Des événements (PvP etc...) -De la magie -Des jobs -Des guildes / avec Guerres de guildes -Hotel des ventes customs (interfaces) -Des grades, des nouvelles interfaces, sous Launcher obligatoire car nouveaux items/blocks/mobs Et voila pour l'instant. j'aimerais juste savoir si ça serait une bonne idée ou pas ? Si il ouvre, irez-vous faire un petit tour pour tester ca ? Le but du serveur c'est bien sure de garder au maximum les joueurs,, c'est pour cela qu'il y aura surrement une histoire avec les quetes et tout ça tout ça ;). Proposez vos idées d’amélioration/d'ajouts si vous pensez que le serveur pourrait fonctionner. (commentaire ou bien messages privés). Bien cordialement. Trxyy.
  7. Afficher le claim d'une faction en jeu Bonjour la Communauté, Aujourd’hui, je vais essayer de faire un tutoriel (mon premier), qui consistera à afficher le claim d'une faction en Jeu ! (excusez la rédaction si elle se présente mauvaise mais c'est mon premier tutoriel, j'ai jamais rédigé avant ça xD) A) Pré-requis Tout d'abord, je vous recommande d'aller faire un tour sur le tutoriel de Wytrem => [1.7.x] Afficher un message central Car j'utilise la manière dont il affiche le message au milieu de l'écran pour ce tutoriel, donc, il est préférable de savoir comment ça marche :). 1) Classes Requises & Modifications Pour commencer, nous allons nous rendre dans la classe NetHandlerPlayClient (pkg: net.minecraft.client.network) Nous allons rechercher la fonction "handleChat" qui ressemble à ceci public void handleChat(S02PacketChat p_147251_1_) { this.gameController.ingameGUI.getChatGUI().func_146227_a(p_147251_1_.func_148915_c()); } On va changer la fonction en ceci public void handleChat(S02PacketChat p_147251_1_) { FactionEngine.onChatReceived(p_147251_1_); } Nous allons juste remplacer ce qu'il y a a à l'interieur par FactionEngine.onChatReceived(p_147251_1_); Vous aurez une erreur sur le FactionEngine et c'est normal étant donné que la classe n'est pas encore créée. Ensuite on va aller dans la classe Minecraft (pkg: net.minecraft.client) On va rechercher this.ingameGUI = new GuiIngame(this); et on va le remplacer par this.ingameGUI = new FactionIngame(this); La, nous changeons la classe appelée pour le GuiIngame par la notre (FactionIngame) qui extends de GuiIngame.. Et oui c'est normal si il y a une erreur etant donné que la classe FactionIngame, elle aussi n'est pas encoré créée. Une fois cela fait, nous allons ajouter nos classes manquantes FactionEngine: package fr.trxyy.factions; import net.minecraft.client.Minecraft; import net.minecraft.client.audio.ISound; import net.minecraft.client.audio.PositionedSoundRecord; import net.minecraft.network.play.server.S02PacketChat; import net.minecraft.util.IChatComponent; import net.minecraft.util.ResourceLocation; public class FactionEngine { private static Minecraft mc; public static String factionName = null; public static boolean displaying = true; public static String warzoneString = "§r§4Zone de Combat !"; // defaut: §r§4WarZone public static String safezoneString = "§r§6Zone Tranquille"; // defaut: §r§6SafeZone public static String wildernessString = "§r§2Nature Sauvage"; // defaut: §r§2Wilderness public FactionEngine() {} public static void onChatReceived(S02PacketChat par1PacketChat) { mc = Minecraft.getMinecraft(); IChatComponent chatComponent = par1PacketChat.func_148915_c(); String unformattedText = chatComponent.getUnformattedText(); String formattedText = chatComponent.getFormattedText(); if (displaying) { if (formattedText.contains("§r§e ~ §r§4WarZone - Not the safest place to be§r")) { FactionIngame.showCenterMessage(warzoneString); setFactionName(warzoneString); // playSound(new ResourceLocation("orb"), 2.0F); // Pour jouer un audio quand tu rnetres dans la zone } else if (formattedText.contains("§r§e ~ §r§6SafeZone - Free from PVP and monsters§r")) { FactionIngame.showCenterMessage(safezoneString); setFactionName(safezoneString); } else if (formattedText.contains("§r§e ~ §r§2Wilderness§r")) { FactionIngame.showCenterMessage(wildernessString); setFactionName(wildernessString); } else if (formattedText.contains("§r§e ~ §r§")) { FactionIngame.showCenterMessage("" + formattedText.replace("§r§e ~ §r§", "")); setFactionName("" + formattedText.replace("§r§e ~ §r§", "")); } else { mc.ingameGUI.getChatGUI().func_146227_a(par1PacketChat.func_148915_c()); } } else { if (formattedText.contains("§r§e ~ §r§4WarZone - Not the safest place to be§r")) { mc.ingameGUI.getChatGUI().func_146227_a(par1PacketChat.func_148915_c()); setFactionName(warzoneString); } else if (formattedText.contains("§r§e ~ §r§6SafeZone - Free from PVP and monsters§r")) { mc.ingameGUI.getChatGUI().func_146227_a(par1PacketChat.func_148915_c()); setFactionName(safezoneString); } else if (formattedText.contains("§r§e ~ §r§2Wilderness§r")) { mc.ingameGUI.getChatGUI().func_146227_a(par1PacketChat.func_148915_c()); setFactionName(wildernessString); } else if (formattedText.contains("§r§e ~ §r§")) { mc.ingameGUI.getChatGUI().func_146227_a(par1PacketChat.func_148915_c()); setFactionName("" + formattedText.replace("§r§e ~ §r§", "")); } else { mc.ingameGUI.getChatGUI().func_146227_a(par1PacketChat.func_148915_c()); // setFactionName(null); } } } private static void setFactionName(String string) { factionName = string; } public static PositionedSoundRecord playSound(ResourceLocation p_147674_0_, float p_147674_1_) { return new PositionedSoundRecord(p_147674_0_, 0.25F, p_147674_1_, false, 0, ISound.AttenuationType.NONE, 0.0F, 0.0F, 0.0F); } public static String getFaction() { return factionName; } } FactionIngame: package fr.trxyy.factions; import org.lwjgl.opengl.GL11; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.FontRenderer; import net.minecraft.client.gui.GuiIngame; import net.minecraft.client.gui.ScaledResolution; public class FactionIngame extends GuiIngame { private static String toDisplay = null; private static int toDisplayTimer = 0; private static boolean displayStaticFaction = true; public FactionIngame(Minecraft mc) { super(mc); } public void renderGameOverlay(float par1Float, boolean par2Bool, int par3Int, int par4Int) { ScaledResolution scaledRes = new ScaledResolution(Minecraft.getMinecraft(), Minecraft.getMinecraft().displayWidth, Minecraft.getMinecraft().displayHeight); int width = scaledRes.getScaledWidth(); int height = scaledRes.getScaledHeight(); FontRenderer fr = this.mc.fontRenderer; this.mc.entityRenderer.setupOverlayRendering(); super.renderGameOverlay(par1Float, par2Bool, par3Int, par4Int); if (FactionEngine.getFaction() != null && displayStaticFaction && !this.mc.isIntegratedServerRunning()) { fr.drawStringWithShadow("Claim: " + FactionEngine.getFaction(), 2, 2, 16777215); } if (this.toDisplay != null) { GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); int alpha = this.toDisplayTimer < 10 ? ((int) (this.toDisplayTimer * 25)) : 255; int color = 0xffffff | ((alpha & 255) << 24); this.mc.fontRenderer.drawString(this.toDisplay, (width - this.mc.fontRenderer.getStringWidth(this.toDisplay)) / 2, height / 2 - 50, color); } } public void updateTick() { super.updateTick(); if (this.toDisplayTimer > 0) { this.toDisplayTimer--; if (this.toDisplayTimer == 0) { this.toDisplay = null; } } } public static void showCenterMessage(String formattedText) { toDisplay = formattedText; toDisplayTimer = 3 * 20; } } Il vous reste qu'a import dans Minecraft.java & NetHandlerPlayClient vos classes. Pour ce qui est du code du FactionEngine: String factionName => Le nom de la faction de base (par defaut: null) boolean displaying => est ce qu'on affiche le texte au milieu de l'ecran ou pas ? (par defaut: true) String warzoneString => Le message affiché quand on est dans la warzone String safezoneString => Le message affiché quand on est dans la safezone String wildernessString => Le message affiché quand on est dans la nature dans la fonction onChatReceived, On dis que si on affiche le message au centre, on check le message entrant: if (displaying) { // Si on affiche le message au centre if (formattedText.contains("§r§e ~ §r§4WarZone - Not the safest place to be§r")) { // Et si le message contiens... FactionIngame.showCenterMessage(warzoneString); // On affiche le message au milieu de l'ecran setFactionName(warzoneString);// on défini le nom de la faction. // playSound(new ResourceLocation("orb"), 2.0F); // Pour jouer un audio quand tu rnetres dans la zone } (oui il y a une fonction playSound mais je l'ai desactiver car faut mettre de la musique c'est mieux :D) Si le texte contiens "§r§e ~ §r§4WarZone - Not the safest place to be§r" Alors on affiche le message central qu'on a choisis dans la variable "warzoneString" puis on défini la variable "factionName" en "warzoneString", pour la warzone, ça sera évidemment safezoneString pour la safezone etc... Et on dis que si on n'affiche pas le message au centre, on check le message entrant: else { if (formattedText.contains("§r§e ~ §r§4WarZone - Not the safest place to be§r")) { // Si le message contiens... mc.ingameGUI.getChatGUI().func_146227_a(par1PacketChat.func_148915_c()); // on affiche le message dans le tchat basique // On affiche pas le message au centre de l'écran setFactionName(warzoneString);// on défini le nom de la faction. } Puis c'est pareil qu'au dessus, sauf qu'on affiche pas le message au centre de l'écran: Si le texte contiens "§r§e ~ §r§4WarZone - Not the safest place to be§r" puis on défini la variable "factionName" en "warzoneString", pour la warzone, ça sera évidemment safezoneString pour la safezone etc... Pour ce qui est du code de la classe de FactionIngame: La classe est extends de GuiIngame (logique car on a remplacé dans Minecraft.java, et donc il nous faut une classe qui permettra de rendre en jeu, GuiIngame par exemple) String toDisplay => message à afficher int toDisplayTimer => temps a afficher (laisser sur 0) boolean displayStaticFaction => afficher la faction toujours sur l'ecran On ajoute la fonction "renderGameOverlay" de la classe GuiIngame, et on affiche le tout a l'interieur. public void renderGameOverlay(float par1Float, boolean par2Bool, int par3Int, int par4Int) {} On défini ce dont on a besoin: ScaledResolution scaledRes = new ScaledResolution(Minecraft.getMinecraft(), Minecraft.getMinecraft().displayWidth, Minecraft.getMinecraft().displayHeight); int width = scaledRes.getScaledWidth(); // taille de la fenetre horizontal int height = scaledRes.getScaledHeight();// taille de la fenetre vertical FontRenderer fr = this.mc.fontRenderer; // pas besoin d'expliquer ça quand meme :O Ensuite, on dis que si la faction n'est pas égal à "null" et que on affiche le texte toujours sur l’écran, et que on est sur on serveur et non pas en solo, alors on affiche un texte toujours actif pour afficher la faction. if (FactionEngine.getFaction() != null && displayStaticFaction && !this.mc.isIntegratedServerRunning()) { fr.drawStringWithShadow("Claim: " + FactionEngine.getFaction(), 2, 2, 16777215); } La c'est presque pareil, ce code est celui du tuto de Wytrem (voir ici) si le message a affiché n'est pas égal à "null", on affiche. if (this.toDisplay != null) { GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); int alpha = this.toDisplayTimer < 10 ? ((int) (this.toDisplayTimer * 25)) : 255; int color = 0xffffff | ((alpha & 255) << 24); this.mc.fontRenderer.drawString(this.toDisplay, (width - this.mc.fontRenderer.getStringWidth(this.toDisplay)) / 2, height / 2 - 50, color); } Et enfin les deux dernières fonctions du tuto "Afficher un Message Central": public void updateTick() { super.updateTick(); if (this.toDisplayTimer > 0) // tant que le timer est plus grand que 0 { this.toDisplayTimer--; // on le reduit de 1 if (this.toDisplayTimer == 0) // si le timer est égal a 0 { this.toDisplay = null; // on mets le texte à afficher sur null pour arreter l'affichage. } } } public static void showCenterMessage(String formattedText) { toDisplay = formattedText; toDisplayTimer = 3 * 20; // (20 ticks = 1 sec) (3 * 20 = 3 secondes.) } updateTick: pour mettre a jour tout les 20 ticks (20 ticks = 1 seconde) Voir le tuto de Wytrem pour comprendre au maximum ces fonctions la. Rendu Final: Excusez moi une fois de plus pour la rédaction ou bien si il y a des fautes ou c'est c'est mal expliqué. Cordialement, Trxyy. (merci de me citer si vous utilisez mon code, ca serait aimable de votre part.) Bon Jeux !
  8. Mod Cameraman?

    Merci de ta réponse ! :) Je pense qu'il faut le codder mais ca va etre chaud =(
  9. Mod Cameraman?

    Bonjour, je ne sais pas si ce mod existe mais le principe du mod serait de pouvoir crafter un nouvel item "Camera" et quand la personne l'a en main l'affiche sur l’épaule du joueur en vue 3ème personne) et que ça affiche sur un écran (avec un nouvel item par exemple une télévision) la vue de la camera en live (et aussi que la télévision envoi le son de la personne qui parle (avec gliby's voice chat mod). Si ce mod existe, j'en suis désolé d'avoir crée un post pour rien, cependant s'il n'existe pas, si quelqu'un pourrait le créer ou m'aider a le faire, je lui en serais vraiment reconnaissant. Cordialement.
×