• Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups

    Solved Arc et puissance

    1.7.x
    1.7.10
    4
    4
    1233
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • ?
      A Former User last edited by

      voilla je n’arive pas à augmenter la puissance de mon arc voici sa class

      package com.adamitemod.mod.items;
      
      import cpw.mods.fml.relauncher.Side;
      import cpw.mods.fml.relauncher.SideOnly;
      import net.minecraft.client.renderer.texture.IIconRegister;
      import net.minecraft.creativetab.CreativeTabs;
      import net.minecraft.enchantment.Enchantment;
      import net.minecraft.enchantment.EnchantmentHelper;
      import net.minecraft.entity.player.EntityPlayer;
      import net.minecraft.entity.projectile.EntityArrow;
      import net.minecraft.init.Items;
      import net.minecraft.item.EnumAction;
      import net.minecraft.item.Item;
      import net.minecraft.item.ItemStack;
      import net.minecraft.util.IIcon;
      import net.minecraft.world.World;
      import net.minecraftforge.common.MinecraftForge;
      import net.minecraftforge.event.entity.player.ArrowLooseEvent;
      import net.minecraftforge.event.entity.player.ArrowNockEvent;
      
      public class ItemBowRuby extends Item
      {
          public static final String[] bowPullIconNameArray = new String[] {"a", "b", "c"};
          @SideOnly(Side.CLIENT)
          private IIcon[] iconArray;
          private static final String __OBFID = "CL_00001777";
      
          public ItemBowRuby()
          {
              this.maxStackSize = 1;
              this.setMaxDamage(395);//j'ai deja essayer ici
              this.setCreativeTab(CreativeTabs.tabCombat);
          }
      
          public void onPlayerStoppedUsing(ItemStack p_77615_1_, World p_77615_2_, EntityPlayer p_77615_3_, int p_77615_4_)
          {
              int j = this.getMaxItemUseDuration(p_77615_1_) - p_77615_4_;
      
              ArrowLooseEvent event = new ArrowLooseEvent(p_77615_3_, p_77615_1_, j);
              MinecraftForge.EVENT_BUS.post(event);
              if (event.isCanceled())
              {
                  return;
              }
              j = event.charge;
      
              boolean flag = p_77615_3_.capabilities.isCreativeMode || EnchantmentHelper.getEnchantmentLevel(Enchantment.infinity.effectId, p_77615_1_) > 0;
      
              if (flag || p_77615_3_.inventory.hasItem(Items.arrow))
              {
                  float f = (float)j / 20.0F;
                  f = (f * f + f * 2.0F) / 3.0F;
      
                  if ((double)f < 0.1D)
                  {
                      return;
                  }
      
                  if (f > 1.0F)
                  {
                      f = 1.0F;
                  }
      
                  EntityArrow entityarrow = new EntityArrow(p_77615_2_, p_77615_3_, f * 2.0F);
      
                  if (f == 1.0F)
                  {
                      entityarrow.setIsCritical(true);
                  }
      
                  int k = EnchantmentHelper.getEnchantmentLevel(Enchantment.power.effectId, p_77615_1_);
      
                  if (k > 0)
                  {
                      entityarrow.setDamage(entityarrow.getDamage() + (double)k * 0.6D + 0.5D);
                  }
      
                  int l = EnchantmentHelper.getEnchantmentLevel(Enchantment.punch.effectId, p_77615_1_);
      
                  if (l > 0)
                  {
                      entityarrow.setKnockbackStrength(l);
                  }
      
                  if (EnchantmentHelper.getEnchantmentLevel(Enchantment.flame.effectId, p_77615_1_) > 0)
                  {
                      entityarrow.setFire(100);
                  }
      
                  p_77615_1_.damageItem(1, p_77615_3_);
                  p_77615_2_.playSoundAtEntity(p_77615_3_, "random.bow", 1.0F, 1.0F / (itemRand.nextFloat() * 0.4F + 1.2F) + f * 0.5F);
      
                  if (flag)
                  {
                      entityarrow.canBePickedUp = 5;
                  }
                  else
                  {
                      p_77615_3_.inventory.consumeInventoryItem(Items.arrow);
                  }
      
                  if (!p_77615_2_.isRemote)
                  {
                      p_77615_2_.spawnEntityInWorld(entityarrow);
                  }
              }
          }
      
          public ItemStack onEaten(ItemStack p_77654_1_, World p_77654_2_, EntityPlayer p_77654_3_)
          {
              return p_77654_1_;
          }
      
          public int getMaxItemUseDuration(ItemStack p_77626_1_)
          {
              return 72000;
          }
      
          public EnumAction getItemUseAction(ItemStack p_77661_1_)
          {
              return EnumAction.bow;
          }
      
          public ItemStack onItemRightClick(ItemStack p_77659_1_, World p_77659_2_, EntityPlayer p_77659_3_)
          {
              ArrowNockEvent event = new ArrowNockEvent(p_77659_3_, p_77659_1_);
              MinecraftForge.EVENT_BUS.post(event);
              if (event.isCanceled())
              {
                  return event.result;
              }
      
              if (p_77659_3_.capabilities.isCreativeMode || p_77659_3_.inventory.hasItem(Items.arrow))
              {
                  p_77659_3_.setItemInUse(p_77659_1_, this.getMaxItemUseDuration(p_77659_1_));
              }
      
              return p_77659_1_;
          }
      
          public int getItemEnchantability()
          {
              return 1;
          }
      
          @SideOnly(Side.CLIENT)
          public void registerIcons(IIconRegister p_94581_1_)
          {
              this.itemIcon = p_94581_1_.registerIcon(this.getIconString() + "_standby");
              this.iconArray = new IIcon[bowPullIconNameArray.length];
      
              for (int i = 0; i < this.iconArray.length; ++i)
              {
                  this.iconArray* = p_94581_1_.registerIcon(this.getIconString() + "_" + bowPullIconNameArray*);
              }
          }
      
          @SideOnly(Side.CLIENT)
          public IIcon getItemIconForUseDuration(int p_94599_1_)
          {
              return this.iconArray[p_94599_1_];
          }
      }
      
      1 Reply Last reply Reply Quote 0
      • Yeyvo
        Yeyvo last edited by

        Mon petit doit me dit que tu vas avoir un petit problème avec ce double poste 🙂

        1 Reply Last reply Reply Quote 0
        • robin4002
          robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

          Les dégâts des flèches de l’arc sont proportionnels à la force de tire.
          Et c’est ici :

          EntityArrow entityarrow = new EntityArrow(p_77615_2_, p_77615_3_, f * 2.0F); // f * 2.0F est la force
          
          1 Reply Last reply Reply Quote 0
          • Yeyvo
            Yeyvo last edited by

            D’abord merci amigo127 , _Isaac je ne t’es pas menacé X) je t’ai juste dit de te méfié des double post car c’est contraire au règlement 🙂

            1 Reply Last reply Reply Quote 0
            • 1 / 1
            • First post
              Last post
            Design by Woryk
            Contact / Mentions Légales

            MINECRAFT FORGE FRANCE © 2018

            Powered by NodeBB