Reorganize energy code from ItemNetworkItem in separate class for the Portable Grid

This commit is contained in:
raoulvdberge
2017-05-08 21:56:36 +02:00
parent 0322a35bc4
commit 51db9dddb4
11 changed files with 159 additions and 129 deletions

View File

@@ -22,4 +22,5 @@ public final class RSItems {
public static final ItemFluidStoragePart FLUID_STORAGE_PART = new ItemFluidStoragePart(); public static final ItemFluidStoragePart FLUID_STORAGE_PART = new ItemFluidStoragePart();
public static final ItemWrench WRENCH = new ItemWrench(); public static final ItemWrench WRENCH = new ItemWrench();
public static final ItemSecurityCard SECURITY_CARD = new ItemSecurityCard(); public static final ItemSecurityCard SECURITY_CARD = new ItemSecurityCard();
public static final ItemPortableGrid PORTABLE_GRID = new ItemPortableGrid();
} }

View File

@@ -7,7 +7,7 @@ import com.raoulvdberge.refinedstorage.api.network.INetworkMaster;
import com.raoulvdberge.refinedstorage.api.network.item.INetworkItem; import com.raoulvdberge.refinedstorage.api.network.item.INetworkItem;
import com.raoulvdberge.refinedstorage.api.network.item.INetworkItemHandler; import com.raoulvdberge.refinedstorage.api.network.item.INetworkItemHandler;
import com.raoulvdberge.refinedstorage.api.network.security.Permission; import com.raoulvdberge.refinedstorage.api.network.security.Permission;
import com.raoulvdberge.refinedstorage.item.ItemNetworkItem; import com.raoulvdberge.refinedstorage.item.ItemWirelessCraftingMonitor;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
@@ -34,7 +34,7 @@ public class NetworkItemWirelessCraftingMonitor implements INetworkItem {
@Override @Override
public boolean onOpen(INetworkMaster network, EntityPlayer player, World controllerWorld, EnumHand hand) { public boolean onOpen(INetworkMaster network, EntityPlayer player, World controllerWorld, EnumHand hand) {
if (RS.INSTANCE.config.wirelessCraftingMonitorUsesEnergy && stack.getItemDamage() != ItemNetworkItem.TYPE_CREATIVE && stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() <= RS.INSTANCE.config.wirelessCraftingMonitorOpenUsage) { if (RS.INSTANCE.config.wirelessCraftingMonitorUsesEnergy && stack.getItemDamage() != ItemWirelessCraftingMonitor.TYPE_CREATIVE && stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() <= RS.INSTANCE.config.wirelessCraftingMonitorOpenUsage) {
return false; return false;
} }
@@ -54,7 +54,7 @@ public class NetworkItemWirelessCraftingMonitor implements INetworkItem {
} }
public void drainEnergy(int energy) { public void drainEnergy(int energy) {
if (RS.INSTANCE.config.wirelessCraftingMonitorUsesEnergy && stack.getItemDamage() != ItemNetworkItem.TYPE_CREATIVE) { if (RS.INSTANCE.config.wirelessCraftingMonitorUsesEnergy && stack.getItemDamage() != ItemWirelessCraftingMonitor.TYPE_CREATIVE) {
IEnergyStorage energyStorage = stack.getCapability(CapabilityEnergy.ENERGY, null); IEnergyStorage energyStorage = stack.getCapability(CapabilityEnergy.ENERGY, null);
energyStorage.extractEnergy(energy, false); energyStorage.extractEnergy(energy, false);

View File

@@ -7,7 +7,7 @@ import com.raoulvdberge.refinedstorage.api.network.INetworkMaster;
import com.raoulvdberge.refinedstorage.api.network.item.INetworkItem; import com.raoulvdberge.refinedstorage.api.network.item.INetworkItem;
import com.raoulvdberge.refinedstorage.api.network.item.INetworkItemHandler; import com.raoulvdberge.refinedstorage.api.network.item.INetworkItemHandler;
import com.raoulvdberge.refinedstorage.api.network.security.Permission; import com.raoulvdberge.refinedstorage.api.network.security.Permission;
import com.raoulvdberge.refinedstorage.item.ItemNetworkItem; import com.raoulvdberge.refinedstorage.item.ItemWirelessFluidGrid;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
@@ -36,7 +36,7 @@ public class NetworkItemWirelessFluidGrid implements INetworkItem {
@Override @Override
public boolean onOpen(INetworkMaster network, EntityPlayer player, World controllerWorld, EnumHand hand) { public boolean onOpen(INetworkMaster network, EntityPlayer player, World controllerWorld, EnumHand hand) {
if (RS.INSTANCE.config.wirelessFluidGridUsesEnergy && stack.getItemDamage() != ItemNetworkItem.TYPE_CREATIVE && stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() <= RS.INSTANCE.config.wirelessFluidGridOpenUsage) { if (RS.INSTANCE.config.wirelessFluidGridUsesEnergy && stack.getItemDamage() != ItemWirelessFluidGrid.TYPE_CREATIVE && stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() <= RS.INSTANCE.config.wirelessFluidGridOpenUsage) {
return false; return false;
} }
@@ -56,7 +56,7 @@ public class NetworkItemWirelessFluidGrid implements INetworkItem {
} }
public void drainEnergy(int energy) { public void drainEnergy(int energy) {
if (RS.INSTANCE.config.wirelessFluidGridUsesEnergy && stack.getItemDamage() != ItemNetworkItem.TYPE_CREATIVE) { if (RS.INSTANCE.config.wirelessFluidGridUsesEnergy && stack.getItemDamage() != ItemWirelessFluidGrid.TYPE_CREATIVE) {
IEnergyStorage energyStorage = stack.getCapability(CapabilityEnergy.ENERGY, null); IEnergyStorage energyStorage = stack.getCapability(CapabilityEnergy.ENERGY, null);
energyStorage.extractEnergy(energy, false); energyStorage.extractEnergy(energy, false);

View File

@@ -7,7 +7,7 @@ import com.raoulvdberge.refinedstorage.api.network.INetworkMaster;
import com.raoulvdberge.refinedstorage.api.network.item.INetworkItem; import com.raoulvdberge.refinedstorage.api.network.item.INetworkItem;
import com.raoulvdberge.refinedstorage.api.network.item.INetworkItemHandler; import com.raoulvdberge.refinedstorage.api.network.item.INetworkItemHandler;
import com.raoulvdberge.refinedstorage.api.network.security.Permission; import com.raoulvdberge.refinedstorage.api.network.security.Permission;
import com.raoulvdberge.refinedstorage.item.ItemNetworkItem; import com.raoulvdberge.refinedstorage.item.ItemWirelessGrid;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
@@ -36,7 +36,7 @@ public class NetworkItemWirelessGrid implements INetworkItem {
@Override @Override
public boolean onOpen(INetworkMaster network, EntityPlayer player, World controllerWorld, EnumHand hand) { public boolean onOpen(INetworkMaster network, EntityPlayer player, World controllerWorld, EnumHand hand) {
if (RS.INSTANCE.config.wirelessGridUsesEnergy && stack.getItemDamage() != ItemNetworkItem.TYPE_CREATIVE && stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() <= RS.INSTANCE.config.wirelessGridOpenUsage) { if (RS.INSTANCE.config.wirelessGridUsesEnergy && stack.getItemDamage() != ItemWirelessGrid.TYPE_CREATIVE && stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() <= RS.INSTANCE.config.wirelessGridOpenUsage) {
return false; return false;
} }
@@ -56,7 +56,7 @@ public class NetworkItemWirelessGrid implements INetworkItem {
} }
public void drainEnergy(int energy) { public void drainEnergy(int energy) {
if (RS.INSTANCE.config.wirelessGridUsesEnergy && stack.getItemDamage() != ItemNetworkItem.TYPE_CREATIVE) { if (RS.INSTANCE.config.wirelessGridUsesEnergy && stack.getItemDamage() != ItemWirelessGrid.TYPE_CREATIVE) {
IEnergyStorage energyStorage = stack.getCapability(CapabilityEnergy.ENERGY, null); IEnergyStorage energyStorage = stack.getCapability(CapabilityEnergy.ENERGY, null);
energyStorage.extractEnergy(energy, false); energyStorage.extractEnergy(energy, false);

View File

@@ -0,0 +1,132 @@
package com.raoulvdberge.refinedstorage.item;
import com.raoulvdberge.refinedstorage.integration.forgeenergy.NetworkItemEnergyForge;
import com.raoulvdberge.refinedstorage.integration.tesla.IntegrationTesla;
import com.raoulvdberge.refinedstorage.integration.tesla.NetworkItemEnergyTesla;
import net.darkhax.tesla.capability.TeslaCapabilities;
import net.minecraft.client.resources.I18n;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.NonNullList;
import net.minecraft.util.math.MathHelper;
import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage;
import javax.annotation.Nullable;
import java.util.List;
public abstract class ItemEnergyItem extends ItemBase {
public static final int TYPE_NORMAL = 0;
public static final int TYPE_CREATIVE = 1;
public ItemEnergyItem(String name) {
super(name);
setMaxDamage(3200);
setMaxStackSize(1);
setHasSubtypes(true);
}
@Override
public ICapabilityProvider initCapabilities(ItemStack stack, NBTTagCompound tag) {
return new NetworkItemCapabilityProvider(stack);
}
@Override
public boolean isDamageable() {
return true;
}
@Override
public boolean isRepairable() {
return false;
}
@Override
public double getDurabilityForDisplay(ItemStack stack) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY, null);
return 1D - ((double) energy.getEnergyStored() / (double) energy.getMaxEnergyStored());
}
@Override
public int getRGBDurabilityForDisplay(ItemStack stack) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY, null);
return MathHelper.hsvToRGB(Math.max(0.0F, (float) energy.getEnergyStored() / (float) energy.getMaxEnergyStored()) / 3.0F, 1.0F, 1.0F);
}
@Override
public boolean isDamaged(ItemStack stack) {
return stack.getItemDamage() != TYPE_CREATIVE;
}
@Override
public void setDamage(ItemStack stack, int damage) {
// NO OP
}
@Override
public void getSubItems(Item item, CreativeTabs tab, NonNullList<ItemStack> list) {
list.add(new ItemStack(item, 1, TYPE_NORMAL));
ItemStack fullyCharged = new ItemStack(item, 1, TYPE_NORMAL);
IEnergyStorage energy = fullyCharged.getCapability(CapabilityEnergy.ENERGY, null);
energy.receiveEnergy(energy.getMaxEnergyStored(), false);
list.add(fullyCharged);
list.add(new ItemStack(item, 1, TYPE_CREATIVE));
}
@Override
public void addInformation(ItemStack stack, EntityPlayer playerIn, List<String> tooltip, boolean advanced) {
super.addInformation(stack, playerIn, tooltip, advanced);
if (stack.getItemDamage() != TYPE_CREATIVE) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY, null);
tooltip.add(I18n.format("misc.refinedstorage:energy_stored", energy.getEnergyStored(), energy.getMaxEnergyStored()));
}
}
private class NetworkItemCapabilityProvider implements ICapabilityProvider {
private ItemStack stack;
public NetworkItemCapabilityProvider(ItemStack stack) {
this.stack = stack;
}
@Override
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityEnergy.ENERGY ||
(IntegrationTesla.isLoaded() && (capability == TeslaCapabilities.CAPABILITY_HOLDER || capability == TeslaCapabilities.CAPABILITY_CONSUMER));
}
@Override
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityEnergy.ENERGY) {
return CapabilityEnergy.ENERGY.cast(new NetworkItemEnergyForge(stack, 3200));
}
if (IntegrationTesla.isLoaded()) {
if (capability == TeslaCapabilities.CAPABILITY_HOLDER) {
return TeslaCapabilities.CAPABILITY_HOLDER.cast(new NetworkItemEnergyTesla(stack));
}
if (capability == TeslaCapabilities.CAPABILITY_CONSUMER) {
return TeslaCapabilities.CAPABILITY_CONSUMER.cast(new NetworkItemEnergyTesla(stack));
}
}
return null;
}
}
}

View File

@@ -2,37 +2,22 @@ package com.raoulvdberge.refinedstorage.item;
import com.raoulvdberge.refinedstorage.RSBlocks; import com.raoulvdberge.refinedstorage.RSBlocks;
import com.raoulvdberge.refinedstorage.api.network.item.INetworkItemProvider; import com.raoulvdberge.refinedstorage.api.network.item.INetworkItemProvider;
import com.raoulvdberge.refinedstorage.integration.forgeenergy.NetworkItemEnergyForge;
import com.raoulvdberge.refinedstorage.integration.tesla.IntegrationTesla;
import com.raoulvdberge.refinedstorage.integration.tesla.NetworkItemEnergyTesla;
import com.raoulvdberge.refinedstorage.tile.TileController; import com.raoulvdberge.refinedstorage.tile.TileController;
import net.darkhax.tesla.capability.TeslaCapabilities;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.client.resources.I18n; import net.minecraft.client.resources.I18n;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.*; import net.minecraft.util.*;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.MathHelper;
import net.minecraft.util.text.TextComponentTranslation; import net.minecraft.util.text.TextComponentTranslation;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.common.DimensionManager; import net.minecraftforge.common.DimensionManager;
import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage;
import javax.annotation.Nullable;
import java.util.List; import java.util.List;
public abstract class ItemNetworkItem extends ItemBase implements INetworkItemProvider { public abstract class ItemNetworkItem extends ItemEnergyItem implements INetworkItemProvider {
public static final int TYPE_NORMAL = 0;
public static final int TYPE_CREATIVE = 1;
private static final String NBT_CONTROLLER_X = "ControllerX"; private static final String NBT_CONTROLLER_X = "ControllerX";
private static final String NBT_CONTROLLER_Y = "ControllerY"; private static final String NBT_CONTROLLER_Y = "ControllerY";
private static final String NBT_CONTROLLER_Z = "ControllerZ"; private static final String NBT_CONTROLLER_Z = "ControllerZ";
@@ -41,10 +26,6 @@ public abstract class ItemNetworkItem extends ItemBase implements INetworkItemPr
public ItemNetworkItem(String name) { public ItemNetworkItem(String name) {
super(name); super(name);
setMaxDamage(3200);
setMaxStackSize(1);
setHasSubtypes(true);
addPropertyOverride(new ResourceLocation("connected"), (stack, world, entity) -> (entity != null && isValid(stack)) ? 1.0f : 0.0f); addPropertyOverride(new ResourceLocation("connected"), (stack, world, entity) -> (entity != null && isValid(stack)) ? 1.0f : 0.0f);
} }
@@ -71,69 +52,10 @@ public abstract class ItemNetworkItem extends ItemBase implements INetworkItemPr
return ActionResult.newResult(EnumActionResult.SUCCESS, stack); return ActionResult.newResult(EnumActionResult.SUCCESS, stack);
} }
@Override
public ICapabilityProvider initCapabilities(ItemStack stack, NBTTagCompound nbt) {
return new NetworkItemCapabilityProvider(stack);
}
@Override
public boolean isDamageable() {
return true;
}
@Override
public boolean isRepairable() {
return false;
}
@Override
public double getDurabilityForDisplay(ItemStack stack) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY, null);
return 1D - ((double) energy.getEnergyStored() / (double) energy.getMaxEnergyStored());
}
@Override
public int getRGBDurabilityForDisplay(ItemStack stack) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY, null);
return MathHelper.hsvToRGB(Math.max(0.0F, (float) energy.getEnergyStored() / (float) energy.getMaxEnergyStored()) / 3.0F, 1.0F, 1.0F);
}
@Override
public boolean isDamaged(ItemStack stack) {
return stack.getItemDamage() != TYPE_CREATIVE;
}
@Override
public void setDamage(ItemStack stack, int damage) {
// NO OP
}
@Override
public void getSubItems(Item item, CreativeTabs tab, NonNullList<ItemStack> list) {
list.add(new ItemStack(item, 1, TYPE_NORMAL));
ItemStack fullyCharged = new ItemStack(item, 1, TYPE_NORMAL);
IEnergyStorage energy = fullyCharged.getCapability(CapabilityEnergy.ENERGY, null);
energy.receiveEnergy(energy.getMaxEnergyStored(), false);
list.add(fullyCharged);
list.add(new ItemStack(item, 1, TYPE_CREATIVE));
}
@Override @Override
public void addInformation(ItemStack stack, EntityPlayer player, List<String> tooltip, boolean advanced) { public void addInformation(ItemStack stack, EntityPlayer player, List<String> tooltip, boolean advanced) {
super.addInformation(stack, player, tooltip, advanced); super.addInformation(stack, player, tooltip, advanced);
if (stack.getItemDamage() != TYPE_CREATIVE) {
IEnergyStorage energy = stack.getCapability(CapabilityEnergy.ENERGY, null);
tooltip.add(I18n.format("misc.refinedstorage:energy_stored", energy.getEnergyStored(), energy.getMaxEnergyStored()));
}
if (isValid(stack)) { if (isValid(stack)) {
tooltip.add(I18n.format("misc.refinedstorage:network_item.tooltip", getX(stack), getY(stack), getZ(stack))); tooltip.add(I18n.format("misc.refinedstorage:network_item.tooltip", getX(stack), getY(stack), getZ(stack)));
} }
@@ -157,7 +79,7 @@ public abstract class ItemNetworkItem extends ItemBase implements INetworkItemPr
tag.setInteger(NBT_CONTROLLER_Z, pos.getZ()); tag.setInteger(NBT_CONTROLLER_Z, pos.getZ());
tag.setInteger(NBT_DIMENSION_ID, player.dimension); tag.setInteger(NBT_DIMENSION_ID, player.dimension);
initializeDefaults(tag); initDefaults(tag);
stack.setTagCompound(tag); stack.setTagCompound(tag);
@@ -167,7 +89,7 @@ public abstract class ItemNetworkItem extends ItemBase implements INetworkItemPr
return EnumActionResult.PASS; return EnumActionResult.PASS;
} }
public void initializeDefaults(NBTTagCompound tag) { protected void initDefaults(NBTTagCompound tag) {
// NO OP // NO OP
} }
@@ -207,37 +129,4 @@ public abstract class ItemNetworkItem extends ItemBase implements INetworkItemPr
&& stack.getTagCompound().hasKey(NBT_CONTROLLER_Z) && stack.getTagCompound().hasKey(NBT_CONTROLLER_Z)
&& stack.getTagCompound().hasKey(NBT_DIMENSION_ID); && stack.getTagCompound().hasKey(NBT_DIMENSION_ID);
} }
private class NetworkItemCapabilityProvider implements ICapabilityProvider {
private ItemStack stack;
public NetworkItemCapabilityProvider(ItemStack stack) {
this.stack = stack;
}
@Override
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityEnergy.ENERGY ||
(IntegrationTesla.isLoaded() && (capability == TeslaCapabilities.CAPABILITY_HOLDER || capability == TeslaCapabilities.CAPABILITY_CONSUMER));
}
@Override
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityEnergy.ENERGY) {
return CapabilityEnergy.ENERGY.cast(new NetworkItemEnergyForge(stack, 3200));
}
if (IntegrationTesla.isLoaded()) {
if (capability == TeslaCapabilities.CAPABILITY_HOLDER) {
return TeslaCapabilities.CAPABILITY_HOLDER.cast(new NetworkItemEnergyTesla(stack));
}
if (capability == TeslaCapabilities.CAPABILITY_CONSUMER) {
return TeslaCapabilities.CAPABILITY_CONSUMER.cast(new NetworkItemEnergyTesla(stack));
}
}
return null;
}
}
} }

View File

@@ -0,0 +1,7 @@
package com.raoulvdberge.refinedstorage.item;
public class ItemPortableGrid extends ItemEnergyItem {
public ItemPortableGrid() {
super("portable_grid");
}
}

View File

@@ -17,8 +17,8 @@ public class ItemWirelessCraftingMonitor extends ItemNetworkItem {
} }
@Override @Override
public void initializeDefaults(NBTTagCompound tag) { public void initDefaults(NBTTagCompound tag) {
super.initializeDefaults(tag); super.initDefaults(tag);
tag.setBoolean(NBT_VIEW_AUTOMATED, true); tag.setBoolean(NBT_VIEW_AUTOMATED, true);
} }

View File

@@ -16,8 +16,8 @@ public class ItemWirelessFluidGrid extends ItemNetworkItem {
} }
@Override @Override
public void initializeDefaults(NBTTagCompound tag) { public void initDefaults(NBTTagCompound tag) {
super.initializeDefaults(tag); super.initDefaults(tag);
tag.setInteger(NetworkNodeGrid.NBT_SORTING_DIRECTION, NetworkNodeGrid.SORTING_DIRECTION_DESCENDING); tag.setInteger(NetworkNodeGrid.NBT_SORTING_DIRECTION, NetworkNodeGrid.SORTING_DIRECTION_DESCENDING);
tag.setInteger(NetworkNodeGrid.NBT_SORTING_TYPE, NetworkNodeGrid.SORTING_TYPE_QUANTITY); tag.setInteger(NetworkNodeGrid.NBT_SORTING_TYPE, NetworkNodeGrid.SORTING_TYPE_QUANTITY);

View File

@@ -16,8 +16,8 @@ public class ItemWirelessGrid extends ItemNetworkItem {
} }
@Override @Override
public void initializeDefaults(NBTTagCompound tag) { public void initDefaults(NBTTagCompound tag) {
super.initializeDefaults(tag); super.initDefaults(tag);
tag.setInteger(NetworkNodeGrid.NBT_VIEW_TYPE, NetworkNodeGrid.VIEW_TYPE_NORMAL); tag.setInteger(NetworkNodeGrid.NBT_VIEW_TYPE, NetworkNodeGrid.VIEW_TYPE_NORMAL);
tag.setInteger(NetworkNodeGrid.NBT_SORTING_DIRECTION, NetworkNodeGrid.SORTING_DIRECTION_DESCENDING); tag.setInteger(NetworkNodeGrid.NBT_SORTING_DIRECTION, NetworkNodeGrid.SORTING_DIRECTION_DESCENDING);

View File

@@ -207,6 +207,7 @@ public class ProxyCommon {
registerItem(RSItems.NETWORK_CARD); registerItem(RSItems.NETWORK_CARD);
registerItem(RSItems.WRENCH); registerItem(RSItems.WRENCH);
registerItem(RSItems.SECURITY_CARD); registerItem(RSItems.SECURITY_CARD);
registerItem(RSItems.PORTABLE_GRID);
OreDictionary.registerOre("itemSilicon", RSItems.SILICON); OreDictionary.registerOre("itemSilicon", RSItems.SILICON);