From 05a121ef2f7f788c7483da8677c19251979402c6 Mon Sep 17 00:00:00 2001 From: Raoul Van den Berge Date: Tue, 19 Jul 2016 01:16:28 +0200 Subject: [PATCH] Buggy view type toggle --- src/main/java/refinedstorage/gui/GuiGrid.java | 35 +++++++--- .../sidebutton/SideButtonGridViewType.java | 40 +++++++++++ .../refinedstorage/item/ItemWirelessGrid.java | 28 ++++---- .../network/MessageGridSettingsUpdate.java | 10 ++- .../MessageWirelessGridSettingsUpdate.java | 17 +++-- .../java/refinedstorage/tile/grid/IGrid.java | 4 ++ .../refinedstorage/tile/grid/TileGrid.java | 67 ++++++++++++++----- .../tile/grid/WirelessGrid.java | 44 +++++++----- .../assets/refinedstorage/lang/en_US.lang | 4 ++ .../assets/refinedstorage/lang/nl_NL.lang | 4 ++ 10 files changed, 194 insertions(+), 59 deletions(-) create mode 100755 src/main/java/refinedstorage/gui/sidebutton/SideButtonGridViewType.java diff --git a/src/main/java/refinedstorage/gui/GuiGrid.java b/src/main/java/refinedstorage/gui/GuiGrid.java index 5b904435a..736dd931e 100755 --- a/src/main/java/refinedstorage/gui/GuiGrid.java +++ b/src/main/java/refinedstorage/gui/GuiGrid.java @@ -16,10 +16,7 @@ import refinedstorage.api.network.GridExtractFlags; import refinedstorage.apiimpl.storage.ClientStack; import refinedstorage.block.EnumGridType; import refinedstorage.container.ContainerGrid; -import refinedstorage.gui.sidebutton.SideButtonGridSearchBoxMode; -import refinedstorage.gui.sidebutton.SideButtonGridSortingDirection; -import refinedstorage.gui.sidebutton.SideButtonGridSortingType; -import refinedstorage.gui.sidebutton.SideButtonRedstoneMode; +import refinedstorage.gui.sidebutton.*; import refinedstorage.jei.RefinedStorageJEIPlugin; import refinedstorage.network.MessageGridCraftingClear; import refinedstorage.network.MessageGridInsertHeld; @@ -105,6 +102,7 @@ public class GuiGrid extends GuiBase { searchField.yPosition = sy; } + addSideButton(new SideButtonGridViewType(grid)); addSideButton(new SideButtonGridSortingDirection(grid)); addSideButton(new SideButtonGridSortingType(grid)); addSideButton(new SideButtonGridSearchBoxMode(this)); @@ -127,13 +125,32 @@ public class GuiGrid extends GuiBase { Iterator t = items.iterator(); while (t.hasNext()) { - ItemStack item = t.next().getStack(); + ClientStack stack = t.next(); + + switch (grid.getViewType()) { + case TileGrid.VIEW_TYPE_NORMAL: + break; + case TileGrid.VIEW_TYPE_NON_CRAFTABLES: + if (stack.isCraftable()) { + t.remove(); + + continue; + } + break; + case TileGrid.VIEW_TYPE_CRAFTABLES: + if (!stack.isCraftable()) { + t.remove(); + + continue; + } + break; + } if (query.startsWith("@")) { String[] parts = query.split(" "); String modId = parts[0].substring(1); - String modIdFromItem = Item.REGISTRY.getNameForObject(item.getItem()).getResourceDomain(); + String modIdFromItem = Item.REGISTRY.getNameForObject(stack.getStack().getItem()).getResourceDomain(); if (!modIdFromItem.contains(modId)) { t.remove(); @@ -148,18 +165,18 @@ public class GuiGrid extends GuiBase { } } - if (!item.getDisplayName().toLowerCase().contains(itemFromMod.toString())) { + if (!stack.getStack().getDisplayName().toLowerCase().contains(itemFromMod.toString())) { t.remove(); } } } else if (query.startsWith("#")) { String tooltip = query.substring(1); - String tooltipFromItem = StringUtils.join(item.getTooltip(container.getPlayer(), true), "\n"); + String tooltipFromItem = StringUtils.join(stack.getStack().getTooltip(container.getPlayer(), true), "\n"); if (!tooltipFromItem.contains(tooltip)) { t.remove(); } - } else if (!item.getDisplayName().toLowerCase().contains(query)) { + } else if (!stack.getStack().getDisplayName().toLowerCase().contains(query)) { t.remove(); } } diff --git a/src/main/java/refinedstorage/gui/sidebutton/SideButtonGridViewType.java b/src/main/java/refinedstorage/gui/sidebutton/SideButtonGridViewType.java new file mode 100755 index 000000000..745c64420 --- /dev/null +++ b/src/main/java/refinedstorage/gui/sidebutton/SideButtonGridViewType.java @@ -0,0 +1,40 @@ +package refinedstorage.gui.sidebutton; + +import net.minecraft.util.text.TextFormatting; +import refinedstorage.gui.GuiBase; +import refinedstorage.tile.grid.IGrid; +import refinedstorage.tile.grid.TileGrid; + +public class SideButtonGridViewType extends SideButton { + private IGrid grid; + + public SideButtonGridViewType(IGrid grid) { + this.grid = grid; + } + + @Override + public String getTooltip(GuiBase gui) { + return TextFormatting.YELLOW + gui.t("sidebutton.refinedstorage:grid.view_type") + TextFormatting.RESET + "\n" + gui.t("sidebutton.refinedstorage:grid.view_type." + grid.getViewType()); + } + + @Override + public void draw(GuiBase gui, int x, int y) { + gui.bindTexture("icons.png"); + gui.drawTexture(x, y + 2 - 1, grid.getViewType() * 16, 112, 16, 16); + } + + @Override + public void actionPerformed() { + int type = grid.getViewType(); + + if (type == TileGrid.VIEW_TYPE_NORMAL) { + type = TileGrid.VIEW_TYPE_NON_CRAFTABLES; + } else if (type == TileGrid.VIEW_TYPE_NON_CRAFTABLES) { + type = TileGrid.VIEW_TYPE_CRAFTABLES; + } else if (type == TileGrid.VIEW_TYPE_CRAFTABLES) { + type = TileGrid.VIEW_TYPE_NORMAL; + } + + grid.onViewTypeChanged(type); + } +} diff --git a/src/main/java/refinedstorage/item/ItemWirelessGrid.java b/src/main/java/refinedstorage/item/ItemWirelessGrid.java index b05b179c0..ef48b2b30 100755 --- a/src/main/java/refinedstorage/item/ItemWirelessGrid.java +++ b/src/main/java/refinedstorage/item/ItemWirelessGrid.java @@ -42,10 +42,6 @@ public class ItemWirelessGrid extends ItemEnergyContainer implements ISpecialEle public static final int TYPE_NORMAL = 0; public static final int TYPE_CREATIVE = 1; - public static final String NBT_SORTING_TYPE = "SortingType"; - public static final String NBT_SORTING_DIRECTION = "SortingDirection"; - public static final String NBT_SEARCH_BOX_MODE = "SearchBoxMode"; - private static final String NBT_CONTROLLER_X = "ControllerX"; private static final String NBT_CONTROLLER_Y = "ControllerY"; private static final String NBT_CONTROLLER_Z = "ControllerZ"; @@ -137,9 +133,10 @@ public class ItemWirelessGrid extends ItemEnergyContainer implements ISpecialEle tag.setInteger(NBT_CONTROLLER_Y, pos.getY()); tag.setInteger(NBT_CONTROLLER_Z, pos.getZ()); tag.setInteger(NBT_DIMENSION_ID, player.dimension); - tag.setInteger(NBT_SORTING_DIRECTION, TileGrid.SORTING_DIRECTION_DESCENDING); - tag.setInteger(NBT_SORTING_TYPE, TileGrid.SORTING_TYPE_NAME); - tag.setInteger(NBT_SEARCH_BOX_MODE, TileGrid.SEARCH_BOX_MODE_NORMAL); + tag.setInteger(TileGrid.NBT_VIEW_TYPE, TileGrid.VIEW_TYPE_NORMAL); + tag.setInteger(TileGrid.NBT_SORTING_DIRECTION, TileGrid.SORTING_DIRECTION_DESCENDING); + tag.setInteger(TileGrid.NBT_SORTING_TYPE, TileGrid.SORTING_TYPE_NAME); + tag.setInteger(TileGrid.NBT_SEARCH_BOX_MODE, TileGrid.SEARCH_BOX_MODE_NORMAL); stack.setTagCompound(tag); @@ -184,16 +181,20 @@ public class ItemWirelessGrid extends ItemEnergyContainer implements ISpecialEle return stack.getTagCompound().getInteger(NBT_CONTROLLER_Z); } + public static int getViewType(ItemStack stack) { + return stack.getTagCompound().getInteger(TileGrid.NBT_VIEW_TYPE); + } + public static int getSortingType(ItemStack stack) { - return stack.getTagCompound().getInteger(NBT_SORTING_TYPE); + return stack.getTagCompound().getInteger(TileGrid.NBT_SORTING_TYPE); } public static int getSortingDirection(ItemStack stack) { - return stack.getTagCompound().getInteger(NBT_SORTING_DIRECTION); + return stack.getTagCompound().getInteger(TileGrid.NBT_SORTING_DIRECTION); } public static int getSearchBoxMode(ItemStack stack) { - return stack.getTagCompound().getInteger(NBT_SEARCH_BOX_MODE); + return stack.getTagCompound().getInteger(TileGrid.NBT_SEARCH_BOX_MODE); } private static boolean hasValidNBT(ItemStack stack) { @@ -202,9 +203,10 @@ public class ItemWirelessGrid extends ItemEnergyContainer implements ISpecialEle && stack.getTagCompound().hasKey(NBT_CONTROLLER_Y) && stack.getTagCompound().hasKey(NBT_CONTROLLER_Z) && stack.getTagCompound().hasKey(NBT_DIMENSION_ID) - && stack.getTagCompound().hasKey(NBT_SORTING_DIRECTION) - && stack.getTagCompound().hasKey(NBT_SORTING_TYPE) - && stack.getTagCompound().hasKey(NBT_SEARCH_BOX_MODE); + && stack.getTagCompound().hasKey(TileGrid.NBT_VIEW_TYPE) + && stack.getTagCompound().hasKey(TileGrid.NBT_SORTING_DIRECTION) + && stack.getTagCompound().hasKey(TileGrid.NBT_SORTING_TYPE) + && stack.getTagCompound().hasKey(TileGrid.NBT_SEARCH_BOX_MODE); } @Override diff --git a/src/main/java/refinedstorage/network/MessageGridSettingsUpdate.java b/src/main/java/refinedstorage/network/MessageGridSettingsUpdate.java index 35319cbbb..09c2ac8bc 100755 --- a/src/main/java/refinedstorage/network/MessageGridSettingsUpdate.java +++ b/src/main/java/refinedstorage/network/MessageGridSettingsUpdate.java @@ -11,6 +11,7 @@ public class MessageGridSettingsUpdate extends MessageHandlerPlayerToServer implements IMessage { private int hand; + private int viewType; private int sortingDirection; private int sortingType; private int searchBoxMode; @@ -18,8 +18,9 @@ public class MessageWirelessGridSettingsUpdate extends MessageHandlerPlayerToSer public MessageWirelessGridSettingsUpdate() { } - public MessageWirelessGridSettingsUpdate(int hand, int sortingDirection, int sortingType, int searchBoxMode) { + public MessageWirelessGridSettingsUpdate(int hand, int viewType, int sortingDirection, int sortingType, int searchBoxMode) { this.hand = hand; + this.viewType = viewType; this.sortingDirection = sortingDirection; this.sortingType = sortingType; this.searchBoxMode = searchBoxMode; @@ -28,6 +29,7 @@ public class MessageWirelessGridSettingsUpdate extends MessageHandlerPlayerToSer @Override public void fromBytes(ByteBuf buf) { hand = buf.readInt(); + viewType = buf.readInt(); sortingDirection = buf.readInt(); sortingType = buf.readInt(); searchBoxMode = buf.readInt(); @@ -36,6 +38,7 @@ public class MessageWirelessGridSettingsUpdate extends MessageHandlerPlayerToSer @Override public void toBytes(ByteBuf buf) { buf.writeInt(hand); + buf.writeInt(viewType); buf.writeInt(sortingDirection); buf.writeInt(sortingType); buf.writeInt(searchBoxMode); @@ -46,16 +49,20 @@ public class MessageWirelessGridSettingsUpdate extends MessageHandlerPlayerToSer ItemStack held = player.getHeldItem(RefinedStorageUtils.getHandById(message.hand)); if (held != null && held.getItem() == RefinedStorageItems.WIRELESS_GRID && held.getTagCompound() != null) { + if (TileGrid.isValidViewType(message.viewType)) { + held.getTagCompound().setInteger(TileGrid.NBT_VIEW_TYPE, message.viewType); + } + if (TileGrid.isValidSortingDirection(message.sortingDirection)) { - held.getTagCompound().setInteger(ItemWirelessGrid.NBT_SORTING_DIRECTION, message.sortingDirection); + held.getTagCompound().setInteger(TileGrid.NBT_SORTING_DIRECTION, message.sortingDirection); } if (TileGrid.isValidSortingType(message.sortingType)) { - held.getTagCompound().setInteger(ItemWirelessGrid.NBT_SORTING_TYPE, message.sortingType); + held.getTagCompound().setInteger(TileGrid.NBT_SORTING_TYPE, message.sortingType); } if (TileGrid.isValidSearchBoxMode(message.searchBoxMode)) { - held.getTagCompound().setInteger(ItemWirelessGrid.NBT_SEARCH_BOX_MODE, message.searchBoxMode); + held.getTagCompound().setInteger(TileGrid.NBT_SEARCH_BOX_MODE, message.searchBoxMode); } } } diff --git a/src/main/java/refinedstorage/tile/grid/IGrid.java b/src/main/java/refinedstorage/tile/grid/IGrid.java index ef77bad8e..33486d41f 100755 --- a/src/main/java/refinedstorage/tile/grid/IGrid.java +++ b/src/main/java/refinedstorage/tile/grid/IGrid.java @@ -12,12 +12,16 @@ public interface IGrid { IGridHandler getGridHandler(); + int getViewType(); + int getSortingType(); int getSortingDirection(); int getSearchBoxMode(); + void onViewTypeChanged(int type); + void onSortingTypeChanged(int type); void onSortingDirectionChanged(int direction); diff --git a/src/main/java/refinedstorage/tile/grid/TileGrid.java b/src/main/java/refinedstorage/tile/grid/TileGrid.java index eb8145489..ea6e4396f 100755 --- a/src/main/java/refinedstorage/tile/grid/TileGrid.java +++ b/src/main/java/refinedstorage/tile/grid/TileGrid.java @@ -29,9 +29,10 @@ import java.util.ArrayList; import java.util.List; public class TileGrid extends TileNode implements IGrid { - private static final String NBT_SORTING_DIRECTION = "SortingDirection"; - private static final String NBT_SORTING_TYPE = "SortingType"; - private static final String NBT_SEARCH_BOX_MODE = "SearchBoxMode"; + public static final String NBT_VIEW_TYPE = "ViewType"; + public static final String NBT_SORTING_DIRECTION = "SortingDirection"; + public static final String NBT_SORTING_TYPE = "SortingType"; + public static final String NBT_SEARCH_BOX_MODE = "SearchBoxMode"; public static final int SORTING_DIRECTION_ASCENDING = 0; public static final int SORTING_DIRECTION_DESCENDING = 1; @@ -44,6 +45,10 @@ public class TileGrid extends TileNode implements IGrid { public static final int SEARCH_BOX_MODE_JEI_SYNCHRONIZED = 2; public static final int SEARCH_BOX_MODE_JEI_SYNCHRONIZED_AUTOSELECTED = 3; + public static final int VIEW_TYPE_NORMAL = 0; + public static final int VIEW_TYPE_NON_CRAFTABLES = 1; + public static final int VIEW_TYPE_CRAFTABLES = 2; + private Container craftingContainer = new Container() { @Override public boolean canInteractWith(EntityPlayer player) { @@ -62,6 +67,7 @@ public class TileGrid extends TileNode implements IGrid { private EnumGridType type; + private int viewType = VIEW_TYPE_NORMAL; private int sortingDirection = SORTING_DIRECTION_DESCENDING; private int sortingType = SORTING_TYPE_NAME; private int searchBoxMode = SEARCH_BOX_MODE_NORMAL; @@ -255,6 +261,17 @@ public class TileGrid extends TileNode implements IGrid { } } + @Override + public int getViewType() { + return viewType; + } + + public void setViewType(int type) { + this.viewType = type; + + markDirty(); + } + public int getSortingDirection() { return sortingDirection; } @@ -285,19 +302,24 @@ public class TileGrid extends TileNode implements IGrid { markDirty(); } + @Override + public void onViewTypeChanged(int type) { + RefinedStorage.INSTANCE.network.sendToServer(new MessageGridSettingsUpdate(this, sortingDirection, sortingType, searchBoxMode, type)); + } + @Override public void onSortingTypeChanged(int type) { - RefinedStorage.INSTANCE.network.sendToServer(new MessageGridSettingsUpdate(this, sortingDirection, type, searchBoxMode)); + RefinedStorage.INSTANCE.network.sendToServer(new MessageGridSettingsUpdate(this, sortingDirection, type, searchBoxMode, viewType)); } @Override public void onSortingDirectionChanged(int direction) { - RefinedStorage.INSTANCE.network.sendToServer(new MessageGridSettingsUpdate(this, direction, sortingType, searchBoxMode)); + RefinedStorage.INSTANCE.network.sendToServer(new MessageGridSettingsUpdate(this, direction, sortingType, searchBoxMode, viewType)); } @Override public void onSearchBoxModeChanged(int searchBoxMode) { - RefinedStorage.INSTANCE.network.sendToServer(new MessageGridSettingsUpdate(this, sortingDirection, sortingType, searchBoxMode)); + RefinedStorage.INSTANCE.network.sendToServer(new MessageGridSettingsUpdate(this, sortingDirection, sortingType, searchBoxMode, viewType)); } @Override @@ -306,22 +328,26 @@ public class TileGrid extends TileNode implements IGrid { } @Override - public void read(NBTTagCompound nbt) { - super.read(nbt); + public void read(NBTTagCompound tag) { + super.read(tag); - RefinedStorageUtils.readItemsLegacy(matrix, 0, nbt); - RefinedStorageUtils.readItems(patterns, 1, nbt); + RefinedStorageUtils.readItemsLegacy(matrix, 0, tag); + RefinedStorageUtils.readItems(patterns, 1, tag); - if (nbt.hasKey(NBT_SORTING_DIRECTION)) { - sortingDirection = nbt.getInteger(NBT_SORTING_DIRECTION); + if (tag.hasKey(NBT_VIEW_TYPE)) { + viewType = tag.getInteger(NBT_VIEW_TYPE); } - if (nbt.hasKey(NBT_SORTING_TYPE)) { - sortingType = nbt.getInteger(NBT_SORTING_TYPE); + if (tag.hasKey(NBT_SORTING_DIRECTION)) { + sortingDirection = tag.getInteger(NBT_SORTING_DIRECTION); } - if (nbt.hasKey(NBT_SEARCH_BOX_MODE)) { - searchBoxMode = nbt.getInteger(NBT_SEARCH_BOX_MODE); + if (tag.hasKey(NBT_SORTING_TYPE)) { + sortingType = tag.getInteger(NBT_SORTING_TYPE); + } + + if (tag.hasKey(NBT_SEARCH_BOX_MODE)) { + searchBoxMode = tag.getInteger(NBT_SEARCH_BOX_MODE); } } @@ -332,6 +358,7 @@ public class TileGrid extends TileNode implements IGrid { RefinedStorageUtils.writeItemsLegacy(matrix, 0, tag); RefinedStorageUtils.writeItems(patterns, 1, tag); + tag.setInteger(NBT_VIEW_TYPE, viewType); tag.setInteger(NBT_SORTING_DIRECTION, sortingDirection); tag.setInteger(NBT_SORTING_TYPE, sortingType); tag.setInteger(NBT_SEARCH_BOX_MODE, searchBoxMode); @@ -344,6 +371,7 @@ public class TileGrid extends TileNode implements IGrid { super.writeContainerData(buf); buf.writeBoolean(isConnected()); + buf.writeInt(viewType); buf.writeInt(sortingDirection); buf.writeInt(sortingType); buf.writeInt(searchBoxMode); @@ -354,6 +382,7 @@ public class TileGrid extends TileNode implements IGrid { super.readContainerData(buf); connected = buf.readBoolean(); + viewType = buf.readInt(); sortingDirection = buf.readInt(); sortingType = buf.readInt(); searchBoxMode = buf.readInt(); @@ -376,6 +405,12 @@ public class TileGrid extends TileNode implements IGrid { } } + public static boolean isValidViewType(int type) { + return type == VIEW_TYPE_NORMAL || + type == VIEW_TYPE_CRAFTABLES || + type == VIEW_TYPE_NON_CRAFTABLES; + } + public static boolean isValidSearchBoxMode(int mode) { return mode == SEARCH_BOX_MODE_NORMAL || mode == SEARCH_BOX_MODE_NORMAL_AUTOSELECTED || diff --git a/src/main/java/refinedstorage/tile/grid/WirelessGrid.java b/src/main/java/refinedstorage/tile/grid/WirelessGrid.java index 7379b1879..f4d7841d7 100755 --- a/src/main/java/refinedstorage/tile/grid/WirelessGrid.java +++ b/src/main/java/refinedstorage/tile/grid/WirelessGrid.java @@ -19,6 +19,7 @@ public class WirelessGrid implements IGrid { private EnumHand hand; private World world; private BlockPos controllerPos; + private int viewType; private int sortingType; private int sortingDirection; private int searchBoxMode; @@ -27,6 +28,7 @@ public class WirelessGrid implements IGrid { this.hand = hand; this.world = world; this.controllerPos = new BlockPos(ItemWirelessGrid.getX(stack), ItemWirelessGrid.getY(stack), ItemWirelessGrid.getZ(stack)); + this.viewType = ItemWirelessGrid.getViewType(stack); this.sortingType = ItemWirelessGrid.getSortingType(stack); this.sortingDirection = ItemWirelessGrid.getSortingDirection(stack); this.searchBoxMode = ItemWirelessGrid.getSearchBoxMode(stack); @@ -49,18 +51,9 @@ public class WirelessGrid implements IGrid { return controller != null ? controller.getGridHandler() : null; } - public void onClose(EntityPlayer player) { - TileController controller = getController(); - - if (controller != null) { - controller.getWirelessGridHandler().onClose(player); - } - } - - private TileController getController() { - TileEntity tile = world.getTileEntity(controllerPos); - - return tile instanceof TileController ? (TileController) tile : null; + @Override + public int getViewType() { + return viewType; } @Override @@ -78,23 +71,30 @@ public class WirelessGrid implements IGrid { return searchBoxMode; } + @Override + public void onViewTypeChanged(int type) { + RefinedStorage.INSTANCE.network.sendToServer(new MessageWirelessGridSettingsUpdate(RefinedStorageUtils.getIdFromHand(hand), getSortingDirection(), getSortingType(), getSearchBoxMode(), type)); + + this.viewType = type; + } + @Override public void onSortingTypeChanged(int type) { - RefinedStorage.INSTANCE.network.sendToServer(new MessageWirelessGridSettingsUpdate(RefinedStorageUtils.getIdFromHand(hand), getSortingDirection(), type, getSearchBoxMode())); + RefinedStorage.INSTANCE.network.sendToServer(new MessageWirelessGridSettingsUpdate(RefinedStorageUtils.getIdFromHand(hand), getSortingDirection(), type, getSearchBoxMode(), getViewType())); this.sortingType = type; } @Override public void onSortingDirectionChanged(int direction) { - RefinedStorage.INSTANCE.network.sendToServer(new MessageWirelessGridSettingsUpdate(RefinedStorageUtils.getIdFromHand(hand), direction, getSortingType(), getSearchBoxMode())); + RefinedStorage.INSTANCE.network.sendToServer(new MessageWirelessGridSettingsUpdate(RefinedStorageUtils.getIdFromHand(hand), direction, getSortingType(), getSearchBoxMode(), getViewType())); this.sortingDirection = direction; } @Override public void onSearchBoxModeChanged(int searchBoxMode) { - RefinedStorage.INSTANCE.network.sendToServer(new MessageWirelessGridSettingsUpdate(RefinedStorageUtils.getIdFromHand(hand), getSortingDirection(), getSortingType(), searchBoxMode)); + RefinedStorage.INSTANCE.network.sendToServer(new MessageWirelessGridSettingsUpdate(RefinedStorageUtils.getIdFromHand(hand), getSortingDirection(), getSortingType(), searchBoxMode, getViewType())); this.searchBoxMode = searchBoxMode; } @@ -108,4 +108,18 @@ public class WirelessGrid implements IGrid { public boolean isConnected() { return true; } + + public void onClose(EntityPlayer player) { + TileController controller = getController(); + + if (controller != null) { + controller.getWirelessGridHandler().onClose(player); + } + } + + private TileController getController() { + TileEntity tile = world.getTileEntity(controllerPos); + + return tile instanceof TileController ? (TileController) tile : null; + } } diff --git a/src/main/resources/assets/refinedstorage/lang/en_US.lang b/src/main/resources/assets/refinedstorage/lang/en_US.lang index 4b0efcd39..b3fbc772b 100755 --- a/src/main/resources/assets/refinedstorage/lang/en_US.lang +++ b/src/main/resources/assets/refinedstorage/lang/en_US.lang @@ -63,6 +63,10 @@ sidebutton.refinedstorage:redstone_mode.0=Ignore redstone signal sidebutton.refinedstorage:redstone_mode.1=Only work with redstone signal sidebutton.refinedstorage:redstone_mode.2=Only work without redstone signal +sidebutton.refinedstorage:grid.view_type=Display +sidebutton.refinedstorage:grid.view_type.0=Normal +sidebutton.refinedstorage:grid.view_type.1=No craftables +sidebutton.refinedstorage:grid.view_type.2=Only craftables sidebutton.refinedstorage:grid.sorting.direction=Sorting Direction sidebutton.refinedstorage:grid.sorting.direction.0=Ascending sidebutton.refinedstorage:grid.sorting.direction.1=Descending diff --git a/src/main/resources/assets/refinedstorage/lang/nl_NL.lang b/src/main/resources/assets/refinedstorage/lang/nl_NL.lang index fe838210b..e3c70c657 100755 --- a/src/main/resources/assets/refinedstorage/lang/nl_NL.lang +++ b/src/main/resources/assets/refinedstorage/lang/nl_NL.lang @@ -63,6 +63,10 @@ sidebutton.refinedstorage:redstone_mode.0=Redstone negeren sidebutton.refinedstorage:redstone_mode.1=Alleen werken met redstone signaal sidebutton.refinedstorage:redstone_mode.2=Alleen werken zonder redstone signaal +sidebutton.refinedstorage:grid.view_type=Weergave +sidebutton.refinedstorage:grid.view_type.0=Normaal +sidebutton.refinedstorage:grid.view_type.1=Geen craftables +sidebutton.refinedstorage:grid.view_type.2=Alleen craftables sidebutton.refinedstorage:grid.sorting.direction=Sorteer Richting sidebutton.refinedstorage:grid.sorting.direction.0=Oplopend sidebutton.refinedstorage:grid.sorting.direction.1=Aflopend