MFF

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

    Compteur kill

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    33 Messages 6 Publieurs 5.8k 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.
    • GabsG Hors-ligne
      Gabs
      dernière édition par

      Oui tu as les @SideOnly(Side.CLIENT) c’est mieux.
      Fin je préfères à toi de voir.

      Pour se qui est du crash c’est dans la classe LivingEventCustom visiblement .

      Donne nous cette classe

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

        package fr.darkvince.proxy;
        
        import java.util.Random;
        
        import com.ibm.icu.util.Calendar;
        
        import cpw.mods.fml.common.eventhandler.SubscribeEvent;
        import cpw.mods.fml.common.gameevent.TickEvent;
        import fr.darkvince.ultrav2.Main;
        import fr.darkvince.ultrav2.casseKnife.EvisererVioletStatTrak;
        import fr.darkvince.ultrav2.casseKnife.bayonnetfadeStatTrak;
        import fr.darkvince.ultrav2.casseKnife.dopplerkarambitStatTrak;
        import fr.darkvince.ultrav2.cassefauchon.Knife;
        import net.minecraft.block.Block;
        import net.minecraft.client.Minecraft;
        import net.minecraft.entity.boss.EntityWither;
        import net.minecraft.entity.item.EntityItem;
        import net.minecraft.entity.monster.EntityCreeper;
        import net.minecraft.entity.monster.EntitySkeleton;
        import net.minecraft.entity.player.EntityPlayer;
        import net.minecraft.init.Blocks;
        import net.minecraft.init.Items;
        import net.minecraft.item.ItemStack;
        import net.minecraft.nbt.NBTTagCompound;
        import net.minecraftforge.event.entity.living.LivingDeathEvent;
        import net.minecraftforge.event.entity.living.LivingDropsEvent;
        import net.minecraftforge.event.entity.player.ItemTooltipEvent;
        import net.minecraftforge.event.world.BlockEvent.HarvestDropsEvent;
        
        public class LivingEventCustom
        {
        
           @SubscribeEvent
        
           public void onEntityKilled1(LivingDeathEvent event)
              {
                  if(event.source.getEntity() instanceof EntityPlayer)
                  {
                      EntityPlayer player = (EntityPlayer)event.source.getEntity();
                      if(player.getHeldItem() != null && player.getHeldItem().getItem() instanceof EvisererVioletStatTrak)  //
                      {
                          ItemStack itemstack = Minecraft.getMinecraft().thePlayer.getCurrentEquippedItem();  //on récupère l'itemstack qui nécessairement est l'item voulu
                          int frags = itemstack.getTagCompound().getInteger("frags");  //on récupère ton nbt
                          itemstack.getTagCompound().setInteger("frags", frags + 1); //on ajoute 1 à la valeur de l'integer
                      }
                  }
                  if(event.source.getEntity() instanceof EntityPlayer)
                  {
                      EntityPlayer player = (EntityPlayer)event.source.getEntity();
                      if(player.getHeldItem() != null && player.getHeldItem().getItem() instanceof bayonnetfadeStatTrak)  //
                      {
                          ItemStack itemstack = Minecraft.getMinecraft().thePlayer.getCurrentEquippedItem();  //on récupère l'itemstack qui nécessairement est l'item voulu
                          int frags = itemstack.getTagCompound().getInteger("frags");  //on récupère ton nbt
                          itemstack.getTagCompound().setInteger("frags", frags + 1); //on ajoute 1 à la valeur de l'integer
                      }
                  }
                  if(event.source.getEntity() instanceof EntityPlayer)
                  {
                      EntityPlayer player = (EntityPlayer)event.source.getEntity();
                      if(player.getHeldItem() != null && player.getHeldItem().getItem() instanceof dopplerkarambitStatTrak)  //
                      {
                          ItemStack itemstack = Minecraft.getMinecraft().thePlayer.getCurrentEquippedItem();  //on récupère l'itemstack qui nécessairement est l'item voulu
                          int frags = itemstack.getTagCompound().getInteger("frags");  //on récupère ton nbt
                          itemstack.getTagCompound().setInteger("frags", frags + 1); //on ajoute 1 à la valeur de l'integer
                      }
                  }
              }
        
        @SubscribeEvent
        public void onBlockDrop(HarvestDropsEvent event)
        {
        if(event.block == Blocks.glass)
        {
        event.drops.clear();
        event.dropChance = (float) 0.1;
        event.drops.add(new ItemStack(Main.GemXray)); 
        }
        }
        
          @SubscribeEvent
          public void onLivingDrops(LivingDropsEvent event)
          {
            if ((event.entity instanceof EntityWither))
            {
              EntityItem newdrop = new EntityItem(event.entity.worldObj, event.entity.posX, event.entity.posY, event.entity.posZ, new ItemStack(Main.whiterDrop, 1));
              event.drops.add(newdrop);
            }
            if(event.entity instanceof EntityCreeper)
            {
        for(int i = 0; i < event.drops.size(); i ++) 
        {
        if(event.drops.get(i).getEntityItem().getItem() == Items.gunpowder && event.source.getDamageType().equals("anvil"))
        {
        EntityItem newdrop = new EntityItem(event.entity.worldObj, event.entity.posX, event.entity.posY, event.entity.posZ, new ItemStack(Main.poudredyna, 1));
        
            event.drops.add(newdrop); }
        }
            }
        
            if ((event.entity instanceof EntitySkeleton))
            {
              EntitySkeleton skeleton = (EntitySkeleton)event.entity;
              if (skeleton.getSkeletonType() == 1)
              {
                EntityItem i = new EntityItem(event.entity.worldObj, event.entity.posX, event.entity.posY, event.entity.posZ, new ItemStack(Items.skull, 1, 1));
        
                event.drops.remove(i);
              }
            }
          }
        }
        
        
        1 réponse Dernière réponse Répondre Citer 0
        • GabsG Hors-ligne
          Gabs
          dernière édition par

          Tien ton event devrait être comme ça:

          
          @SubscribeEvent
          
            public void onEntityKilled1(LivingDeathEvent event)
               {
          EntityPlayer player = (EntityPlayer)event.source.getEntity();
                   if(player instanceof EntityPlayer)
                   {
                       if(player.getHeldItem() != null)
                       {
                        if(player.getHeldItem().getItem() instanceof EvisererVioletStatTrak)
                       {
                        ItemStack itemstack = Minecraft.getMinecraft().thePlayer.getCurrentEquippedItem();  //on récupère l'itemstack qui nécessairement est l'item voulu
                        int frags = itemstack.getTagCompound().getInteger("frags");  //on récupère ton nbt
                        itemstack.getTagCompound().setInteger("frags", frags + 1); //on ajoute 1 à la valeur de l'integer
                       }
                        else if(player.getHeldItem() != null && player.getHeldItem().getItem() instanceof bayonnetfadeStatTrak)  //
                        {
                        ItemStack itemstack = Minecraft.getMinecraft().thePlayer.getCurrentEquippedItem();  //on récupère l'itemstack qui nécessairement est l'item voulu
                        int frags = itemstack.getTagCompound().getInteger("frags");  //on récupère ton nbt
                        itemstack.getTagCompound().setInteger("frags", frags + 1); //on ajoute 1 à la valeur de l'integer
                        }
                        else if(player.getHeldItem() != null && player.getHeldItem().getItem() instanceof dopplerkarambitStatTrak)  //
                        {
                        ItemStack itemstack = Minecraft.getMinecraft().thePlayer.getCurrentEquippedItem();  //on récupère l'itemstack qui nécessairement est l'item voulu
                        int frags = itemstack.getTagCompound().getInteger("frags");  //on récupère ton nbt
                        itemstack.getTagCompound().setInteger("frags", frags + 1); //on ajoute 1 à la valeur de l'integer
                        }
                       }
                   }
               }
          
          

          La ligne 84 de cette classe correspond à quoi? (LivingEventCustom)

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

               ItemStack itemstack = Minecraft.getMinecraft().thePlayer.getCurrentEquippedItem();
            
            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

              Remplaces tous les Minecraft.getMinecraft().thePlayer par player.

              Il serait vraiment temps d’arrêter d’utiliser Minecraft.getMinecraft() côté serveur –’
              C’est pourtant pas compliquer à comprendre, Minecraft.java = client only = crash côté serveur.

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

                Ma faute ^^

                Par contre il ne me semble pas qu’il y ait besoin de répéter les if, il suffit de mettre les conditions ensemble

                           if(player.getHeldItem() != null && (player.getHeldItem().getItem() instanceof Item1|| player.getHeldItem().getItem() instanceof Item2|| player.getHeldItem().getItem() instanceof Item3|| player.getHeldItem().getItem() instanceof Item4|| player.getHeldItem().getItem() instanceof Item5|| player.getHeldItem().getItem() instanceof Item6))
                {
                                ItemStack itemstack = player.getCurrentEquippedItem();
                                int frags = itemstack.getTagCompound().getInteger("frags");
                                itemstack.getTagCompound().setInteger("frags", frags + 1);
                            }
                
                1 réponse Dernière réponse Répondre Citer 0
                • GabsG Hors-ligne
                  Gabs
                  dernière édition par

                  @‘Toutoune1008’:

                  Ma faute ^^

                  Par contre il ne me semble pas qu’il y ait besoin de répéter les if, il suffit de mettre les conditions ensemble

                             if(player.getHeldItem() != null && (player.getHeldItem().getItem() instanceof Item1|| player.getHeldItem().getItem() instanceof Item2|| player.getHeldItem().getItem() instanceof Item3|| player.getHeldItem().getItem() instanceof Item4|| player.getHeldItem().getItem() instanceof Item5|| player.getHeldItem().getItem() instanceof Item6))
                  {
                                  ItemStack itemstack = player.getCurrentEquippedItem();
                                  int frags = itemstack.getTagCompound().getInteger("frags");
                                  itemstack.getTagCompound().setInteger("frags", frags + 1);
                              }
                  

                  Ah oui exact aussi j’avais pas pensé.

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

                    Ou alors créer une interface que tu implémentes aux armes auxquelles tu veux un compteur de kill et faire :

                    
                    if(player.getHeldItem() instanceof TonInterface) {
                    
                    }
                    
                    

                    Ou encore créer une classe mère pour toutes tes armes et faire

                    
                    if(player.getHeldItem() instanceof TaClasseMere) {
                    
                    }
                    
                    
                    1 réponse Dernière réponse Répondre Citer 0
                    • FolganskyF Hors-ligne
                      Folgansky Correcteurs
                      dernière édition par

                      Je ne sais pas pour lui mais moi j’apprécie ce conseil qui me recadre en le prenant à mon compte.

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

                        Merci pour votre aide je vais le modifier pour faire plus propre

                        Envoyé de mon SM-G928F en utilisant Tapatalk

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

                        MINECRAFT FORGE FRANCE © 2024

                        Powered by NodeBB