Version increment to 0.7.9 + Fixed not being able to place sugar cane
This commit is contained in:
@@ -12,7 +12,7 @@ buildscript {
|
|||||||
}
|
}
|
||||||
apply plugin: 'net.minecraftforge.gradle.forge'
|
apply plugin: 'net.minecraftforge.gradle.forge'
|
||||||
|
|
||||||
version = "0.7.8"
|
version = "0.7.9"
|
||||||
group = "refinedstorage"
|
group = "refinedstorage"
|
||||||
archivesBaseName = "refinedstorage"
|
archivesBaseName = "refinedstorage"
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import refinedstorage.proxy.CommonProxy;
|
|||||||
@Mod(modid = RefinedStorage.ID, version = RefinedStorage.VERSION)
|
@Mod(modid = RefinedStorage.ID, version = RefinedStorage.VERSION)
|
||||||
public final class RefinedStorage {
|
public final class RefinedStorage {
|
||||||
public static final String ID = "refinedstorage";
|
public static final String ID = "refinedstorage";
|
||||||
public static final String VERSION = "0.7.8";
|
public static final String VERSION = "0.7.9";
|
||||||
|
|
||||||
public static final SimpleNetworkWrapper NETWORK = NetworkRegistry.INSTANCE.newSimpleChannel(ID);
|
public static final SimpleNetworkWrapper NETWORK = NetworkRegistry.INSTANCE.newSimpleChannel(ID);
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ package refinedstorage.tile;
|
|||||||
import io.netty.buffer.ByteBuf;
|
import io.netty.buffer.ByteBuf;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.state.IBlockState;
|
|
||||||
import net.minecraft.inventory.Container;
|
import net.minecraft.inventory.Container;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemBlock;
|
import net.minecraft.item.ItemBlock;
|
||||||
@@ -32,7 +31,36 @@ public class TileConstructor extends TileMachine implements ICompareConfig {
|
|||||||
|
|
||||||
public static final int BASE_SPEED = 20;
|
public static final int BASE_SPEED = 20;
|
||||||
|
|
||||||
private BasicItemHandler filter = new BasicItemHandler(1, this);
|
private BasicItemHandler filter = new BasicItemHandler(1, this) {
|
||||||
|
@Override
|
||||||
|
protected void onContentsChanged(int slot) {
|
||||||
|
super.onContentsChanged(slot);
|
||||||
|
|
||||||
|
ItemStack stack = getStackInSlot(0);
|
||||||
|
|
||||||
|
if (stack != null) {
|
||||||
|
Item item = stack.getItem();
|
||||||
|
|
||||||
|
if (item instanceof ItemBlockSpecial) {
|
||||||
|
try {
|
||||||
|
Field f = ((ItemBlockSpecial) item).getClass().getDeclaredField("block");
|
||||||
|
f.setAccessible(true);
|
||||||
|
block = (Block) f.get(item);
|
||||||
|
} catch (IllegalAccessException e) {
|
||||||
|
// NO OP
|
||||||
|
} catch (NoSuchFieldException e) {
|
||||||
|
// NO OP
|
||||||
|
}
|
||||||
|
} else if (item instanceof ItemBlock) {
|
||||||
|
block = ((ItemBlock) item).getBlock();
|
||||||
|
} else {
|
||||||
|
block = null;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
block = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
private BasicItemHandler upgrades = new BasicItemHandler(
|
private BasicItemHandler upgrades = new BasicItemHandler(
|
||||||
4,
|
4,
|
||||||
this,
|
this,
|
||||||
@@ -41,6 +69,7 @@ public class TileConstructor extends TileMachine implements ICompareConfig {
|
|||||||
);
|
);
|
||||||
|
|
||||||
private int compare = 0;
|
private int compare = 0;
|
||||||
|
private Block block;
|
||||||
|
|
||||||
private CraftingTaskScheduler scheduler = new CraftingTaskScheduler();
|
private CraftingTaskScheduler scheduler = new CraftingTaskScheduler();
|
||||||
|
|
||||||
@@ -51,32 +80,10 @@ public class TileConstructor extends TileMachine implements ICompareConfig {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateMachine() {
|
public void updateMachine() {
|
||||||
if (ticks % RefinedStorageUtils.getSpeed(upgrades, BASE_SPEED, 4) == 0 && filter.getStackInSlot(0) != null) {
|
if (block != null && ticks % RefinedStorageUtils.getSpeed(upgrades, BASE_SPEED, 4) == 0) {
|
||||||
BlockPos front = pos.offset(getDirection());
|
BlockPos front = pos.offset(getDirection());
|
||||||
IBlockState frontBlockState = worldObj.getBlockState(front);
|
|
||||||
|
|
||||||
if (!frontBlockState.getBlock().isAir(frontBlockState, worldObj, front)) {
|
if (worldObj.isAirBlock(front) && block.canPlaceBlockAt(worldObj, front)) {
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
Item item = filter.getStackInSlot(0).getItem();
|
|
||||||
Block block = null;
|
|
||||||
|
|
||||||
if (item instanceof ItemBlockSpecial) {
|
|
||||||
try {
|
|
||||||
Field f = ((ItemBlockSpecial) item).getClass().getDeclaredField("block");
|
|
||||||
f.setAccessible(true);
|
|
||||||
block = (Block) f.get(item);
|
|
||||||
} catch (IllegalAccessException e) {
|
|
||||||
// NO OP
|
|
||||||
} catch (NoSuchFieldException e) {
|
|
||||||
// NO OP
|
|
||||||
}
|
|
||||||
} else if (item instanceof ItemBlock) {
|
|
||||||
block = ((ItemBlock) item).getBlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (block != null && block.canPlaceBlockAt(worldObj, front)) {
|
|
||||||
ItemStack took = controller.take(filter.getStackInSlot(0), 1, compare);
|
ItemStack took = controller.take(filter.getStackInSlot(0), 1, compare);
|
||||||
|
|
||||||
if (took != null) {
|
if (took != null) {
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
"modid": "refinedstorage",
|
"modid": "refinedstorage",
|
||||||
"name": "Refined Storage",
|
"name": "Refined Storage",
|
||||||
"description": "A Minecraft mod all about storage.",
|
"description": "A Minecraft mod all about storage.",
|
||||||
"version": "0.7.8",
|
"version": "0.7.9",
|
||||||
"mcversion": "1.9.4",
|
"mcversion": "1.9.4",
|
||||||
"url": "",
|
"url": "",
|
||||||
"updateUrl": "",
|
"updateUrl": "",
|
||||||
|
|||||||
Reference in New Issue
Block a user