Fixed vanilla chest dupes

This commit is contained in:
JAWolfe04 2016-09-03 17:13:38 -05:00
parent 90544b74e7
commit 4e820f6660
5 changed files with 41 additions and 11 deletions

View File

@ -97,7 +97,10 @@ tasks.build.dependsOn('sourceJar', 'deobfJar')
processResources
{
// First we just copy in the mcmod.info file
inputs.property "mod_version", project.config.mod_version
inputs.property "tfc_version", project.config.tfc_version
inputs.property "minecraft_version", project.config.minecraft_version
from(sourceSets.main.resources.srcDirs)
{
include '**/*.info'

View File

@ -1,6 +1,6 @@
minecraft_version=1.7.10
forge_version=10.13.4.1566-1.7.10
tfc_version=0.79.27
mod_version=1.18
mod_version=1.19
mod_id=TerraFirmaPunkTweaks
group_name=com.JAWolfe.TerraFirmaPunkTweaks

Binary file not shown.

View File

@ -1,5 +1,11 @@
Changelog
=================================================
-------------------------------------------------
TFP Tweaks 1.19
-------------------------------------------------
Bug Fix
+Fixed Forestry Backpack duping vanilla chests
-------------------------------------------------
TFP Tweaks 1.18
-------------------------------------------------

View File

@ -13,6 +13,7 @@ import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.eventhandler.Event.Result;
import flaxbeard.steamcraft.SteamcraftBlocks;
import forestry.api.storage.BackpackStowEvent;
import net.minecraft.block.Block;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem;
@ -31,24 +32,44 @@ public class PlayerInteractionHandler
{
@SubscribeEvent
public void onItemPickup(EntityItemPickupEvent event)
{
EntityItem item = event.item;
ItemStack is = item.getEntityItem();
EntityPlayer player = event.entityPlayer;
Item droppedItem = is.getItem();
if(droppedItem.equals(Item.getItemFromBlock(Blocks.chest)) && ConfigSettings.VanillaChestConversion)
{
if(event.item.getEntityItem().getItem().equals(Item.getItemFromBlock(Blocks.chest)) &&
ConfigSettings.VanillaChestConversion)
{
EntityItem item = event.item;
EntityPlayer player = event.entityPlayer;
item.delayBeforeCanPickup = 100;
item.setDead();
item.setInvisible(true);
Random rand = player.worldObj.rand;
player.worldObj.playSoundAtEntity(player, "random.pop", 0.2F, ((rand.nextFloat() - rand.nextFloat()) * 0.7F + 1.0F) * 2.0F);
player.inventory.addItemStackToInventory(new ItemStack(TFCBlocks.chest, 1, 0));
if(item.getEntityItem().stackSize == 0)
player.inventory.addItemStackToInventory(new ItemStack(TFCBlocks.chest));
else
player.inventory.addItemStackToInventory(new ItemStack(TFCBlocks.chest, item.getEntityItem().stackSize));
for(int i = 0; i < player.inventory.getSizeInventory(); i++)
{
ItemStack is = player.inventory.getStackInSlot(i);
if(is != null && is.getItem().equals(Item.getItemFromBlock(Blocks.chest)))
{
player.inventory.setInventorySlotContents(i, new ItemStack(TFCBlocks.chest, is.stackSize - 1));
}
}
}
}
@SubscribeEvent
public void stowItemBackpack(BackpackStowEvent event)
{
if(event.stackToStow != null && event.stackToStow.getItem().equals(Item.getItemFromBlock(Blocks.chest)) &&
ConfigSettings.VanillaChestConversion)
event.setCanceled(true);
}
@SubscribeEvent
public void onFillBucket(FillBucketEvent event)
{