Jump to content

Search the Community

Showing results for tags 'worldguard'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Communauté
    • Before Anything
    • Announcements
    • Members Presentations
    • Your Projects
    • Recruitment
  • Tutoriels
    • La base
    • Vanilla
    • Forge
    • Bukkit
    • Astuces
    • Autre
    • En attente de validation
    • En cours de rédaction
  • Créations
    • Minecraft
    • Games & Software
    • Web
    • Suggestions
  • The Graphic Corner
    • Personal Galleries
    • Public Galleries
    • On-Demand Creations
  • General Talk
    • General
    • Video Games
    • Development

Found 1 result

  1. Communication Serveur > Client (sans la création de packet !) INTRODUCTION Tout d'abord, avant de commencer ce tutoriel, je voudrais passer le bonjour à Dermenslof car c'est lui qui, quelques années auparavant avait fait un tutoriel sur l'exploitation du packetChat :) Bonjour à tous, depuis plusieurs mois je fais des tutoriels vidéos, dont le dernier en date est la communication serveur > client et la récupération des régions (de WorldGuard) et leurs interprétations côté client (Affichage en jeu, lancement de musique etc...) PRE-REQUIS Avoir déjà les sources de MCP de la version de votre choix, si vous ne savez pas comment faire, je vous renvois vers cette vidéo Avoir un serveur local de la version de votre MCP, si vous ne savez pas comment faire, je vous renvois vers cette vidéo SOMMAIRE Pour préciser la version utilisée dans cet exemple il s'agit de la version 1.8.8, mais le traitement du packetChat est identique en 1.9 - 1.10 - 1.11 et 1.12, les noms des variables ont par contres changées, il va juste falloir vous amuser à les retrouver ;) Dans la première partie, j'explique dans la première vidéo de la communication serveur > client, la méthode "la plus simple" (qui n'est pas forcément la plus optimisée je vous l'accorde) de faire de la communication avec votre serveur en utilisant le packetChat présent dans la class NetHandlerPlayClient via la fonction handleChat. Pour les personnes qui ont des connaissances et qui ne veulent pas regarder la vidéo en entier, voici la variable String qui permet de récupérer le texte du chat. String message = packetIn.getChatComponent().getUnformattedText(); Sinon pour ceux qui souhaite regarder la vidéo ou j'explique point par point comment cela fonctionne, voici le liens directe Dans la deuxième partie, celle qui fait que vous avez cliqué ici sûrement, c'est une vidéo ou j'explique, comme la précédente point par point de manière claire pour que chacun puisse comprendre le fonctionnement du code, comment récupérer (côté MCP) la région par WorldGuard et de pouvoir l’interpréter de différentes manières, avec un affichage sur l'écran, en jouant une musique etc... Voici le liens de la vidéo complète. Sinon pour les personnes qui ont des connaissances et ne veulent pas regarder la vidéo en entier, voici un exemple de condition pour récupérer la région, l'afficher et jouer une musique. if(message.startsWith("[WE_E]")) { String region = message.substring(message.lastIndexOf("]") + 1, message.length()); this.gameController.ingameGUI.displayRegion(region, 120); this.gameController.mcSoundHandler.playSound(PositionedSoundRecord.create("music.game.end")); } DisplayRegion de GuiInGame.java public void displayRegion(String inputS, int inputI) { this.regionName = inputS; this.regionTimer = inputI; } Variable dans GuiInGame (post constructeur) private String regionName = ""; private int regionTimer = 0; Affichage de notre région dans la fonction renderGameOverlay, juste avant la fin de la fonction. /* Nouveau code */ if (this.regionTimer > 0) { GlStateManager.pushMatrix(); GlStateManager.translate((float)(i/2), (float)(j/2), 0F); this.getFontRenderer().drawString(this.regionName, -this.getFontRenderer().getStringWidth(this.regionName)/2, -40, Color.YELLOW.getRGB()); GlStateManager.popMatrix(); } /* Fin du nouveau code */ GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); //Fin de fonction GlStateManager.disableLighting(); //Fin de fonction GlStateManager.enableAlpha(); //Fin de fonction } Et enfin pour faire '"descendre" notre variable timer, dans la fonction updateTick if (this.regionTimer > 0) { --this.regionTimer; } CONCLUSION J'espère que les vidéos seront répondre à vos questions, si ce n'est pas le cas je reste disponible dans l'espace commentaire de la vidéo ou sur ce post. Et si le format vous intéresse, je posterais mes prochaines vidéos ici sous le même format (si cela convient à la modération bien sur). En vous souhaitant une bonne journée ! ;) Ps : Dermenslof si tu passe par là, merci d'avoir été ma source d'inspiration pendant toutes ces années, sache que je me sert encore des systèmes que tu m'a aidé à développé :)
×