"Changer" le pseudo d'un joueur



  • Bonjour/Bonsoir,
    J'aimerais changer le pseudo d'un joueur (displayname). Voici la fonction que j'ai:

    public void usernameDisplay(RenderPlayerEvent.Specials.Pre event)
    {
      if (Minecraft.getMinecraft().thePlayer.username.equals("samhalo007"))
      {
      event.entityPlayer.displayname = "Chatmallow";
      }
    }
    

    Mais ça ne fonctionne pas puisque eclipse mets une erreur à "displayname" (The field EntityPlayer.displayname is not visible)

    Aussi, j'aimerais retirer les pseudos de tout les autres joueurs… Je crois donc que la fonction sera:

       @ForgeSubscribe
       public void onPlayerRender(RenderPlayerEvent.Specials.Pre event)
       {
           event.entityPlayer.displayname = null;
       }
    

    Mais encore là, il me met une erreur à displayname (la même)...

    Merci d'avance !



  • Bah l'erreur t'indique que le field est privé, tu ne pourras donc pas l'utiliser à moins d'utiliser l'ASM, si je dis pas de bétises 😉



  • exact alpha


  • Administrateurs

    @'samhalo007':

    Bonjour/Bonsoir,
    J'aimerais changer le pseudo d'un joueur (displayname).

    @SubscribeEvent
    public void onNameFormat(PlayerEvent.NameFormat event)
    {
    if(event.username.equals("samhalo007"))
    {
    event.displayname = "Chatmallow";
    }
    }
    

    @'samhalo007':

    Aussi, j'aimerais retirer les pseudos de tout les autres joueurs… Je crois donc que la fonction sera:

    @SubscribeEvent
    public void onRenderLabel(RenderLivingEvent.Specials.Pre event)
    {
    if(event.entity instanceof EntityPlayer)
    {
    event.setCanceled(true);
    }
    }
    


  • Merci à vous tous ça fonctionne parfaitement ! 😄