MFF

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

    Une histoire de Side pour un système de "recul" d'arme

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.10
    3 Messages 2 Publieurs 954 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.
    • FolganskyF Hors-ligne
      Folgansky Correcteurs
      dernière édition par

      @Override
          public void onUpdate(ItemStack stack, World world, Entity entity, int i, boolean b)
          {
              if(!stack.hasTagCompound())
              {
                  stack.setTagCompound(new NBTTagCompound());
              }
              int timer = stack.getTagCompound().getInteger("timer");
              int playerRecoil = stack.getTagCompound().getInteger("playerRecoil");
              int antiRecoil = stack.getTagCompound().getInteger("antiRecoil");
              if(timer > 0)
              {
                  stack.getTagCompound().setInteger("timer", timer - 1);
              }
              if(playerRecoil > 0)
              {
                  playerRecoil *= 0.8F;
                  Minecraft.getMinecraft().thePlayer.rotationPitch -= playerRecoil;
                  antiRecoil += playerRecoil;
      
                  Minecraft.getMinecraft().thePlayer.rotationPitch += antiRecoil * 0.2F;
                  antiRecoil *= 0.8F;
                  stack.getTagCompound().setInteger("playerRecoil", playerRecoil);
                  stack.getTagCompound().setInteger("antiRecoil", antiRecoil);
              }
          }
      

      Quand le joueur tire, l’integer playerRecoil passe à, par exemple, 30 et l’update se charge d’en faire un mouvement fluide.
      Seulement ce qui est côté client provoque un crash

      Du coup j’ai tenté de mettre:

      if(entity.worldObj.isRemote && playerRecoil > 0)
      

      Bon déjà je ne sais pas si ça résout le problème de crash j’ai pas testé, ce que j’ai pu constaté c’est que du coup le joueur regarde en l’air un max jusqu’à pouvoir reprendre contrôle de l’axe vertical.
      Je me dis que ma solution n’est pas la bonne et là j’ai franchement du mal à cerner tout ça.

      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, remplaces Minecraft.getMinecraft().thePlayer par entity ?

        1 réponse Dernière réponse Répondre Citer 0
        • FolganskyF Hors-ligne
          Folgansky Correcteurs
          dernière édition par

          Houla, ça sent le surmenage. Je teste mais c’est tellement évident x]

          Je fais 36choses à la fois et du coup je ne me laisse plus le temps de réfléchir.

          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