diff --git a/src/main/java/refinedstorage/item/ItemWirelessGrid.java b/src/main/java/refinedstorage/item/ItemWirelessGrid.java index ee37a57fc..4f09f221a 100755 --- a/src/main/java/refinedstorage/item/ItemWirelessGrid.java +++ b/src/main/java/refinedstorage/item/ItemWirelessGrid.java @@ -9,6 +9,7 @@ import net.minecraft.item.IItemPropertyGetter; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.tileentity.TileEntity; import net.minecraft.util.*; import net.minecraft.util.math.BlockPos; import net.minecraft.util.text.TextComponentString; @@ -133,12 +134,16 @@ public class ItemWirelessGrid extends ItemEnergyContainer { @Override public ActionResult onItemRightClick(ItemStack stack, World world, EntityPlayer player, EnumHand hand) { if (!world.isRemote && getDimensionId(stack) == player.dimension) { - TileController tile = (TileController) world.getTileEntity(new BlockPos(getX(stack), getY(stack), getZ(stack))); + TileEntity tile = world.getTileEntity(new BlockPos(getX(stack), getY(stack), getZ(stack))); - if (tile.onOpenWirelessGrid(player, hand)) { - return new ActionResult(EnumActionResult.SUCCESS, stack); + if (tile instanceof TileController) { + if (((TileController) tile).onOpenWirelessGrid(player, hand)) { + return new ActionResult(EnumActionResult.SUCCESS, stack); + } else { + player.addChatComponentMessage(new TextComponentString(I18n.translateToLocal("misc.refinedstorage:wireless_grid.out_of_range"))); + } } else { - player.addChatComponentMessage(new TextComponentString(I18n.translateToLocal("misc.refinedstorage:wireless_grid.out_of_range"))); + player.addChatComponentMessage(new TextComponentString(I18n.translateToLocal("misc.refinedstorage:wireless_grid.not_found"))); } } diff --git a/src/main/java/refinedstorage/tile/TileController.java b/src/main/java/refinedstorage/tile/TileController.java index f2d77a587..c8d696faa 100755 --- a/src/main/java/refinedstorage/tile/TileController.java +++ b/src/main/java/refinedstorage/tile/TileController.java @@ -567,7 +567,7 @@ public class TileController extends TileBase implements IEnergyReceiver, INetwor } public void handleStoragePull(int id, int flags, EntityPlayerMP player) { - if (id < 0 || id >= itemGroups.size() - 1) { + if (id < 0 || id > itemGroups.size() - 1) { return; } diff --git a/src/main/resources/assets/refinedstorage/lang/en_US.lang b/src/main/resources/assets/refinedstorage/lang/en_US.lang index 18c3b9b1f..de0b5da8a 100755 --- a/src/main/resources/assets/refinedstorage/lang/en_US.lang +++ b/src/main/resources/assets/refinedstorage/lang/en_US.lang @@ -37,6 +37,7 @@ misc.refinedstorage:wireless_grid.tooltip.0=X: %d misc.refinedstorage:wireless_grid.tooltip.1=Y: %d misc.refinedstorage:wireless_grid.tooltip.2=Z: %d misc.refinedstorage:wireless_grid.out_of_range=Controller out of range. +misc.refinedstorage:wireless_grid.not_found=Controller not found. misc.refinedstorage:yes=Yes misc.refinedstorage:no=No diff --git a/src/main/resources/assets/refinedstorage/lang/nl_NL.lang b/src/main/resources/assets/refinedstorage/lang/nl_NL.lang index 9b04995b5..dfba46e42 100755 --- a/src/main/resources/assets/refinedstorage/lang/nl_NL.lang +++ b/src/main/resources/assets/refinedstorage/lang/nl_NL.lang @@ -37,6 +37,7 @@ misc.refinedstorage:wireless_grid.tooltip.0=X: %d misc.refinedstorage:wireless_grid.tooltip.1=Y: %d misc.refinedstorage:wireless_grid.tooltip.2=Z: %d misc.refinedstorage:wireless_grid.out_of_range=Controller buiten bereik. +misc.refinedstorage:wireless_grid.not_found=Controller niet gevonden. misc.refinedstorage:yes=Ja misc.refinedstorage:no=Nee