• S'inscrire
    • Se connecter
    • Recherche
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes

    Résolu Changer la vie de certains joueurs.

    1.7.x
    1.7.10
    2
    5
    603
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • Infinite
      Infinite dernière édition par

      Bonjour, Bonsoir,
      Apres tant d’absence j’ai decidé de me remettre au modding.

      Mais je me confronte a un problème:
      J’essaie d’augmenter la vie de certains joueurs mais quand je lance le serveur et que je me connecte avec le pseudo en question, “Internal server error” s’affiche.

          @SubscribeEvent
          public void onPlayerTick(TickEvent.PlayerTickEvent event) 
         {
              World world = event.player.getEntityWorld();
              if(!world.isRemote)
              { 
                  if(Minecraft.getMinecraft().getSession().getUsername().equals("pseudo1") || Minecraft.getMinecraft().getSession().getUsername().equals("pseudo2"))
                  {
                      if(event.player.getMaxHealth() < 99.0F)
                      {
                          AttributeModifier moreHealth = new AttributeModifier(event.player.getPersistentID(), "Test", 100, 0).setSaved(true);
                          IAttributeInstance attributeinstance = event.player.getEntityAttribute(SharedMonsterAttributes.maxHealth);
                          attributeinstance.removeModifier(moreHealth);
                          attributeinstance.applyModifier(moreHealth);
                       }
                   }
              }
         }
      

      Merci pour vos futures réponses.

      Mes Sites(Mes Sites)
      |
      |    Site général : Game & play
      |   Site de projets (en dev !) :Infinite's Ressources
      J'ai et je suis content d'avoir 16,75 points d'ICRating

      1 réponse Dernière réponse Répondre Citer 0
      • Superloup10
        Superloup10 Modérateurs dernière édition par

        Pourquoi tu t’embêtes à faire Minecraft.getMinecraft().getSession().getUsername().equals("pseudo1") alors que tu as accès au joueur et donc à son username depuis l’event ?

        Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

        Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

        1 réponse Dernière réponse Répondre Citer 0
        • Infinite
          Infinite dernière édition par Infinite

          Le problème est que la seule méthode pour obtenir le pseudo d’un joueur, c’est d’utiliser

          event.player.getDisplayName();
          

          or, j’utilise des pseudos modifiés (grace a l’event “onNameFormat”)

          Mes Sites(Mes Sites)
          |
          |    Site général : Game & play
          |   Site de projets (en dev !) :Infinite's Ressources
          J'ai et je suis content d'avoir 16,75 points d'ICRating

          1 réponse Dernière réponse Répondre Citer 0
          • Superloup10
            Superloup10 Modérateurs dernière édition par

            Dans ce cas, passe par le UUID du joueur

            Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

            Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

            1 réponse Dernière réponse Répondre Citer 0
            • Infinite
              Infinite dernière édition par

              Bonne idée, mais je crois que le système ne fonctionne pas quand le serveur est en “online-mode:false”. J’ai simplement utilisé les nom modifiés a la place et ça fonctionne ! Je passe en résolu. Merci.

              Mes Sites(Mes Sites)
              |
              |    Site général : Game & play
              |   Site de projets (en dev !) :Infinite's Ressources
              J'ai et je suis content d'avoir 16,75 points d'ICRating

              1 réponse Dernière réponse Répondre Citer 0
              • 1 / 1
              • Premier message
                Dernier message
              Design by Woryk
              Contact / Mentions Légales

              MINECRAFT FORGE FRANCE © 2018

              Powered by NodeBB