MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    Problème de Potion persistante…

    Planifier Épinglé Verrouillé Déplacé Résolu 1.12.x
    1.12.x
    3 Messages 2 Publieurs 731 Vues 1 Watching
    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.
    • C Hors-ligne
      cyvax
      dernière édition par

      Bonjour,
      Alors j’ai créé une épée qui rajoute un effet de force une fois équipé mais le problème c’est qu’une fois déséquipé l’effet perd petit à petit son second que j’ai défini mais reste bloqué à 0: 00…

      J’ai trouvé une “pseudosolution” en supprimant l’effet quand on n’a pas l’effet d’équipé malheureusement(ou plutôt logiquement…) il n’est plus possible d’avoir un effet de forge sans l’item…

      Voici la partie qui s’occupe de donner l’effet de force :

      
      @Override
          @SideOnly(Side.CLIENT)
          public void onUpdate(ItemStack stack, World worldIn, Entity entityIn, int itemSlot, boolean isSelected)
          {
              super.onUpdate(stack, worldIn, entityIn, itemSlot, isSelected);
              {
                  EntityPlayer playerIn = Minecraft.getMinecraft().player;
      
                  if(isSelected)
                  {
                      playerIn.addPotionEffect(new PotionEffect(MobEffects.STRENGTH, 04 * 20, 4, false, true));
                  }
              }
          }
      
      

      j’ai cherché mais pas trouvé (surement a cause de mauvais mot-clé…) j’en reviens à venir demander de l’aide…

      Cordialement

      CyV

      1 réponse Dernière réponse Répondre Citer 0
      • robin4002R Hors-ligne
        robin4002 Moddeurs confirmés Rédacteurs Administrateurs
        dernière édition par

        Salut,
        Ajoutes plutôt une condition du type if(!worldIn.isRemote) cela va éviter d’appliquer l’effet côté client et donc d’avoir ce genre de problème.
        Et remplace la ligne :

                    EntityPlayer playerIn = Minecraft.getMinecraft().player;
        

        par :

                    EntityPlayer playerIn = (EntityPlayer)entityIn;
        

        Il ne faut jamais de jamais utiliser Minecraft.getMinecraft() (ni autres classes clients) dans une fonction appelé par le serveur.

        1 réponse Dernière réponse Répondre Citer 0
        • C Hors-ligne
          cyvax
          dernière édition par

          exacte merci…

          (le pire je pense c’est que dans une autre classe d’un autre item c’était fait… #Boulet)

          Bref Merci bien !

          Cyv

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

          MINECRAFT FORGE FRANCE © 2024

          Powered by NodeBB