Advertisement
MintTheFox

itemCoin

Jan 27th, 2013
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.93 KB | None | 0 0
  1. package mint.quantumcoins;
  2.  
  3. import java.util.List;
  4.  
  5. import org.lwjgl.input.Keyboard;
  6.  
  7. import net.minecraft.creativetab.CreativeTabs;
  8. import net.minecraft.entity.player.EntityPlayer;
  9. import net.minecraft.item.EnumAction;
  10. import net.minecraft.item.Item;
  11. import net.minecraft.item.ItemStack;
  12. import net.minecraft.world.World;
  13. import cpw.mods.fml.common.FMLCommonHandler;
  14. import cpw.mods.fml.common.FMLLog;
  15. import cpw.mods.fml.relauncher.Side;
  16. import cpw.mods.fml.relauncher.SideOnly;
  17.  
  18. public class itemCoin extends Item
  19. {  
  20.     private boolean rang = false;
  21.    
  22.     private float time = (float)ConfigHelper.convertTime;
  23.    
  24.     public itemCoin(int ID)
  25.     {
  26.         super(ID);
  27.         setHasSubtypes(true);
  28.         setMaxStackSize(64);
  29.         setMaxDamage(0);
  30.         setCreativeTab(CreativeTabs.tabMisc);
  31.         setTextureFile(ClientProxy.itemTex);
  32.     }
  33.    
  34.    
  35.    
  36.     public int getMaxItemUseDuration(ItemStack par1ItemStack)
  37.     {
  38.         return 75000;
  39.     }
  40.  
  41.     public EnumAction getItemUseAction(ItemStack par1ItemStack)
  42.     {
  43.         return EnumAction.bow;
  44.     }
  45.    
  46.     public ItemStack onItemRightClick(ItemStack itemstack, World world, EntityPlayer player)
  47.     {
  48.         player.setItemInUse(itemstack, this.getMaxItemUseDuration(itemstack));
  49.  
  50.         return itemstack;
  51.     }
  52.    
  53.     public void onUsingItemTick(ItemStack itemstack, EntityPlayer player, int count)
  54.     {
  55.         //subtracts the itemInUseCount [that i dont fully understand at this point] from the max use duration//
  56.         int var6 = this.getMaxItemUseDuration(itemstack) - count;
  57.        
  58.         //all i know is it turns the result from var6 into a float//
  59.         float var7 = (float)var6 / 20.0F;
  60.         var7 = (var7 * var7 + var7 * 2.0F) / 3.0F;
  61.        
  62.         if ((var7 >= time) && (rang == false))
  63.         {
  64.             player.worldObj.spawnParticle("smoke", player.posX, player.posY, player.posZ, 0.0D, 0.0D, 0.0D);
  65.             rang = true;
  66.         }
  67.     }
  68.    
  69.     public void onPlayerStoppedUsing(ItemStack itemstack, World world, EntityPlayer player, int count)
  70.     {
  71.         //subtracts the itemInUseCount [that i dont fully understand at this point] from the max use duration//
  72.         int var6 = this.getMaxItemUseDuration(itemstack) - count;
  73.        
  74.         //all i know is it turns the result from var6 into a float//
  75.         float var7 = (float)var6 / 20.0F;
  76.         var7 = (var7 * var7 + var7 * 2.0F) / 3.0F;
  77.        
  78.         if (var7 >= time)
  79.         {
  80.             if (player.isSneaking())
  81.             {          
  82.                 if (itemstack.getItemDamage() != 0)
  83.                 {
  84.                     itemstack.stackSize--;
  85.                    
  86.                     world.playSoundAtEntity(player, "mint.quantumcoins.conversion", 1.0F, 1.0F);
  87.                
  88.                     if (player.inventory.addItemStackToInventory(new ItemStack(QuantumCoins.coin, ConfigHelper.convertAmount, itemstack.getItemDamage() - 1)) == false)
  89.                     {
  90.                         player.dropPlayerItem(new ItemStack(QuantumCoins.coin, ConfigHelper.convertAmount, itemstack.getItemDamage() - 1));
  91.                     }
  92.                 }
  93.             }
  94.                  
  95.             else
  96.             {
  97.                 if ((itemstack.stackSize >= ConfigHelper.convertAmount) && (itemstack.getItemDamage() != ConfigHelper.coinNum - 1))
  98.                 {
  99.                     itemstack.stackSize -= ConfigHelper.convertAmount;
  100.                    
  101.                     world.playSoundAtEntity(player, "mint.quantumcoins.conversion", 1.0F, 0.0F);
  102.  
  103.                     if (player.inventory.addItemStackToInventory(new ItemStack(QuantumCoins.coin, 1, itemstack.getItemDamage() + 1)) == false)
  104.                     {
  105.                         player.dropPlayerItem(new ItemStack(QuantumCoins.coin, 1, itemstack.getItemDamage() +  1));
  106.                     }
  107.                 }
  108.             }
  109.         }
  110.            
  111.         else
  112.         {
  113.             player.worldObj.spawnParticle("smoke", player.posX, player.posY, player.posZ, 0.0D, 0.0D, 0.0D);
  114.         }
  115.        
  116.         rang = false;
  117.        
  118.     }
  119.    
  120.    
  121.    
  122.     public int getIconFromDamage(int par1)
  123.     {
  124.         return 0;
  125.     }
  126.    
  127.     @SideOnly(Side.CLIENT)
  128.     public int getColorFromItemStack(ItemStack itemstack, int par2)
  129.     {
  130.         int color = Integer.parseInt(ConfigHelper.coinColor[itemstack.getItemDamage()], 16);
  131.         return color;
  132.     }
  133.    
  134.     public String getItemDisplayName(ItemStack itemstack)
  135.     {
  136.         String name = "\u00A7" + ConfigHelper.coinNameColor[itemstack.getItemDamage()] +
  137.                       ConfigHelper.coinTypeName[itemstack.getItemDamage()] + " " + ConfigHelper.coinName;
  138.         return name;
  139.     }
  140.    
  141.     public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean par4)
  142.     {
  143.         if (ConfigHelper.coinTypeInfo[itemstack.getItemDamage()].equals("none") == false)
  144.         {list.add(ConfigHelper.coinTypeInfo[itemstack.getItemDamage()]);}
  145.     }
  146.  
  147.     @SideOnly(Side.CLIENT)
  148.     public void getSubItems(int par1, CreativeTabs par2CreativeTabs, List par3List)
  149.     {
  150.         for (int var4 = 0; var4 < ConfigHelper.coinNum; ++var4)
  151.         {
  152.             par3List.add(new ItemStack(par1, 1, var4));
  153.         }
  154.     }
  155. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement