Change model of crafter manager and handle redstone mode

This commit is contained in:
raoulvdberge
2018-03-19 13:34:12 +01:00
parent 650d4d95e4
commit 57c3f29e06
10 changed files with 54 additions and 181 deletions

View File

@@ -1,5 +1,6 @@
package com.raoulvdberge.refinedstorage.container; package com.raoulvdberge.refinedstorage.container;
import com.raoulvdberge.refinedstorage.apiimpl.network.node.NetworkNodeCrafterManager;
import com.raoulvdberge.refinedstorage.container.slot.SlotCrafterManager; import com.raoulvdberge.refinedstorage.container.slot.SlotCrafterManager;
import com.raoulvdberge.refinedstorage.gui.IResizableDisplay; import com.raoulvdberge.refinedstorage.gui.IResizableDisplay;
import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase;
@@ -64,6 +65,7 @@ public class ContainerCrafterManager extends ContainerBase {
} }
private IResizableDisplay display; private IResizableDisplay display;
private NetworkNodeCrafterManager crafterManager;
private Map<String, Integer> containerData; private Map<String, Integer> containerData;
private Map<String, IItemHandlerModifiable> dummyInventories = new HashMap<>(); private Map<String, IItemHandlerModifiable> dummyInventories = new HashMap<>();
@@ -80,6 +82,7 @@ public class ContainerCrafterManager extends ContainerBase {
super(crafterManager, player); super(crafterManager, player);
this.display = display; this.display = display;
this.crafterManager = crafterManager.getNode();
if (!player.world.isRemote) { if (!player.world.isRemote) {
addPlayerInventory(8, display.getYPlayerInventory()); addPlayerInventory(8, display.getYPlayerInventory());
@@ -132,7 +135,7 @@ public class ContainerCrafterManager extends ContainerBase {
} }
for (int slot = 0; slot < entry.getValue(); ++slot) { for (int slot = 0; slot < entry.getValue(); ++slot) {
addSlotToContainer(new SlotCrafterManager(dummy, slot, x, y, visible, display)); addSlotToContainer(new SlotCrafterManager(dummy, slot, x, y, visible, display, crafterManager));
if (visible) { if (visible) {
x += 18; x += 18;

View File

@@ -1,22 +1,25 @@
package com.raoulvdberge.refinedstorage.container.slot; package com.raoulvdberge.refinedstorage.container.slot;
import com.raoulvdberge.refinedstorage.apiimpl.network.node.NetworkNodeCrafterManager;
import com.raoulvdberge.refinedstorage.gui.IResizableDisplay; import com.raoulvdberge.refinedstorage.gui.IResizableDisplay;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
import net.minecraftforge.items.SlotItemHandler; import net.minecraftforge.items.SlotItemHandler;
public class SlotCrafterManager extends SlotItemHandler { public class SlotCrafterManager extends SlotItemHandler {
private boolean visible; private boolean visible;
private NetworkNodeCrafterManager crafterManager;
private IResizableDisplay display; private IResizableDisplay display;
public SlotCrafterManager(IItemHandler itemHandler, int index, int xPosition, int yPosition, boolean visible, IResizableDisplay display) { public SlotCrafterManager(IItemHandler itemHandler, int index, int xPosition, int yPosition, boolean visible, IResizableDisplay display, NetworkNodeCrafterManager crafterManager) {
super(itemHandler, index, xPosition, yPosition); super(itemHandler, index, xPosition, yPosition);
this.visible = visible; this.visible = visible;
this.display = display; this.display = display;
this.crafterManager = crafterManager;
} }
@Override @Override
public boolean isEnabled() { public boolean isEnabled() {
return yPos >= display.getTopHeight() && yPos < display.getTopHeight() + 18 * display.getVisibleRows() && visible; return yPos >= display.getTopHeight() && yPos < display.getTopHeight() + 18 * display.getVisibleRows() && visible && crafterManager.isActive();
} }
} }

View File

@@ -155,7 +155,7 @@ public class GuiCrafterManager extends GuiBase implements IResizableDisplay {
drawTexture(x, yy, 0, getTopHeight() + (18 * 3), screenWidth, getBottomHeight()); drawTexture(x, yy, 0, getTopHeight() + (18 * 3), screenWidth, getBottomHeight());
if (container != null) { if (container != null && crafterManager.isActive()) {
for (Slot slot : container.inventorySlots) { for (Slot slot : container.inventorySlots) {
if (slot instanceof SlotCrafterManager && slot.isEnabled()) { if (slot instanceof SlotCrafterManager && slot.isEnabled()) {
drawTexture(x + slot.xPos - 1, y + slot.yPos - 1, 0, 193, 18, 18); drawTexture(x + slot.xPos - 1, y + slot.yPos - 1, 0, 193, 18, 18);
@@ -197,7 +197,7 @@ public class GuiCrafterManager extends GuiBase implements IResizableDisplay {
drawString(7, 7, t("gui.refinedstorage:crafter_manager")); drawString(7, 7, t("gui.refinedstorage:crafter_manager"));
drawString(7, getYPlayerInventory() - 12, t("container.inventory")); drawString(7, getYPlayerInventory() - 12, t("container.inventory"));
if (container != null && container.getContainerData() != null) { if (container != null && container.getContainerData() != null && crafterManager.isActive()) {
int x = 7; int x = 7;
int y = 18 - getCurrentOffset() * 18; int y = 18 - getCurrentOffset() * 18;

View File

@@ -99,7 +99,9 @@ public abstract class GridViewBase implements IGridView {
GridSorterDirection sortingDirection = grid.getSortingDirection() == IGrid.SORTING_DIRECTION_DESCENDING ? GridSorterDirection.DESCENDING : GridSorterDirection.ASCENDING; GridSorterDirection sortingDirection = grid.getSortingDirection() == IGrid.SORTING_DIRECTION_DESCENDING ? GridSorterDirection.DESCENDING : GridSorterDirection.ASCENDING;
stacks.sort((left, right) -> new GridSorterName().compare(left, right, sortingDirection)); GridSorterName defaultSorting = new GridSorterName();
stacks.sort((left, right) -> defaultSorting.compare(left, right, sortingDirection));
sorters.stream().filter(s -> s.isApplicable(grid)).forEach(s -> { sorters.stream().filter(s -> s.isApplicable(grid)).forEach(s -> {
stacks.sort((left, right) -> s.compare(left, right, sortingDirection)); stacks.sort((left, right) -> s.compare(left, right, sortingDirection));

View File

@@ -3,91 +3,37 @@
"defaults": { "defaults": {
"model": "cube", "model": "cube",
"textures": { "textures": {
"particle": "refinedstorage:blocks/crafter_side", "particle": "refinedstorage:blocks/side",
"side": "refinedstorage:blocks/crafter_side", "north": "refinedstorage:blocks/crafter_manager_front",
"side_90": "refinedstorage:blocks/crafter_side_90", "east": "refinedstorage:blocks/grid_left",
"side_180": "refinedstorage:blocks/crafter_side_180", "south": "refinedstorage:blocks/grid_back",
"side_270": "refinedstorage:blocks/crafter_side_270", "west": "refinedstorage:blocks/grid_right",
"front": "refinedstorage:blocks/grid_front" "up": "refinedstorage:blocks/grid_top",
}, "down": "refinedstorage:blocks/bottom"
"uvlock": true }
}, },
"variants": { "variants": {
"connected": { "connected": {
"true": { "true": {
"textures": { "textures": {
"side": "refinedstorage:blocks/crafter_side_connected", "north": "refinedstorage:blocks/crafter_manager_front_connected"
"side_90": "refinedstorage:blocks/crafter_side_connected_90",
"side_180": "refinedstorage:blocks/crafter_side_connected_180",
"side_270": "refinedstorage:blocks/crafter_side_connected_270",
"front": "refinedstorage:blocks/grid_front_connected"
} }
}, },
"false": { "false": {
"textures": {
}
} }
}, },
"direction": { "direction": {
"north": { "north": {
"textures": { "y": 0
"down": "#side",
"up": "#side",
"north": "#front",
"east": "#side_90",
"south": "refinedstorage:blocks/crafter_bottom",
"west": "#side_270"
}
}, },
"east": { "east": {
"textures": { "y": 90
"down": "refinedstorage:blocks/crafter_bottom",
"up": "#side_90",
"north": "#side_270",
"east": "#front",
"south": "#side_90",
"west": "refinedstorage:blocks/crafter_bottom"
}
}, },
"south": { "south": {
"textures": { "y": 180
"down": "refinedstorage:blocks/crafter_bottom",
"up": "#side_180",
"north": "refinedstorage:blocks/crafter_bottom",
"east": "#side_270",
"south": "#front",
"west": "#side_90"
}
}, },
"west": { "west": {
"textures": { "y": 270
"down": "refinedstorage:blocks/crafter_bottom",
"up": "#side_270",
"north": "#side_90",
"east": "refinedstorage:blocks/crafter_bottom",
"south": "#side_270",
"west": "#front"
}
},
"up": {
"textures": {
"down": "refinedstorage:blocks/crafter_bottom",
"up": "#front",
"north": "#side",
"east": "#side",
"south": "#side",
"west": "#side"
}
},
"down": {
"textures": {
"down": "#front",
"up": "refinedstorage:blocks/crafter_bottom",
"north": "#side_180",
"east": "#side_180",
"south": "#side_180",
"west": "#side_180"
}
} }
} }
} }

View File

@@ -3,134 +3,44 @@
"defaults": { "defaults": {
"model": "refinedstorage:cube_glow", "model": "refinedstorage:cube_glow",
"textures": { "textures": {
"particle": "refinedstorage:blocks/crafter_side", "particle": "refinedstorage:blocks/side",
"side": "refinedstorage:blocks/crafter_side", "north": "refinedstorage:blocks/crafter_manager_front",
"side_90": "refinedstorage:blocks/crafter_side_90", "east": "refinedstorage:blocks/grid_left",
"side_180": "refinedstorage:blocks/crafter_side_180", "south": "refinedstorage:blocks/grid_back",
"side_270": "refinedstorage:blocks/crafter_side_270", "west": "refinedstorage:blocks/grid_right",
"front": "refinedstorage:blocks/grid_front", "up": "refinedstorage:blocks/grid_top",
"glow_side": "refinedstorage:blocks/none", "down": "refinedstorage:blocks/bottom",
"glow_side_90": "refinedstorage:blocks/none", "glow_north": "refinedstorage:blocks/none",
"glow_side_180": "refinedstorage:blocks/none", "glow_east": "refinedstorage:blocks/none",
"glow_side_270": "refinedstorage:blocks/none", "glow_south": "refinedstorage:blocks/none",
"glow_front": "refinedstorage:blocks/none", "glow_west": "refinedstorage:blocks/none",
"glow_up": "refinedstorage:blocks/none", "glow_up": "refinedstorage:blocks/none",
"glow_down": "refinedstorage:blocks/none" "glow_down": "refinedstorage:blocks/none"
}, }
"uvlock": true
}, },
"variants": { "variants": {
"connected": { "connected": {
"true": { "true": {
"textures": { "textures": {
"side": "refinedstorage:blocks/crafter_side_connected", "north": "refinedstorage:blocks/crafter_manager_front_connected",
"side_90": "refinedstorage:blocks/crafter_side_connected_90", "glow_north": "refinedstorage:blocks/crafter_manager_front_connected_glow"
"side_180": "refinedstorage:blocks/crafter_side_connected_180",
"side_270": "refinedstorage:blocks/crafter_side_connected_270",
"front": "refinedstorage:blocks/grid_front_connected",
"glow_side": "refinedstorage:blocks/crafter_side_connected_glow",
"glow_side_90": "refinedstorage:blocks/crafter_side_connected_90_glow",
"glow_side_180": "refinedstorage:blocks/crafter_side_connected_180_glow",
"glow_side_270": "refinedstorage:blocks/crafter_side_connected_270_glow",
"glow_front": "refinedstorage:blocks/grid_front_connected_glow"
} }
}, },
"false": { "false": {
"textures": {
}
} }
}, },
"direction": { "direction": {
"north": { "north": {
"textures": { "y": 0
"down": "#side",
"up": "#side",
"north": "#front",
"east": "#side_90",
"south": "refinedstorage:blocks/crafter_bottom",
"west": "#side_270",
"glow_down": "#glow_side",
"glow_up": "#glow_side",
"glow_north": "#glow_front",
"glow_east": "#glow_side_90",
"glow_south": "refinedstorage:blocks/none",
"glow_west": "#glow_side_270"
}
}, },
"east": { "east": {
"textures": { "y": 90
"down": "refinedstorage:blocks/crafter_bottom",
"up": "#side_90",
"north": "#side_270",
"east": "#front",
"south": "#side_90",
"west": "refinedstorage:blocks/crafter_bottom",
"glow_up": "#glow_side_90",
"glow_north": "#glow_side_270",
"glow_east": "#glow_front",
"glow_south": "#glow_side_90",
"glow_west": "refinedstorage:blocks/none"
}
}, },
"south": { "south": {
"textures": { "y": 180
"down": "refinedstorage:blocks/crafter_bottom",
"up": "#side_180",
"north": "refinedstorage:blocks/crafter_bottom",
"east": "#side_270",
"south": "#front",
"west": "#side_90",
"glow_up": "#glow_side_180",
"glow_north": "refinedstorage:blocks/none",
"glow_east": "#glow_side_270",
"glow_south": "#glow_front",
"glow_west": "#glow_side_90"
}
}, },
"west": { "west": {
"textures": { "y": 270
"down": "refinedstorage:blocks/crafter_bottom",
"up": "#side_270",
"north": "#side_90",
"east": "refinedstorage:blocks/crafter_bottom",
"south": "#side_270",
"west": "#front",
"glow_up": "#glow_side_270",
"glow_north": "#glow_side_90",
"glow_east": "refinedstorage:blocks/none",
"glow_south": "#glow_side_270",
"glow_west": "#glow_front"
}
},
"up": {
"textures": {
"down": "refinedstorage:blocks/crafter_bottom",
"up": "#front",
"north": "#side",
"east": "#side",
"south": "#side",
"west": "#side",
"glow_up": "#glow_front",
"glow_north": "#glow_side",
"glow_east": "#glow_side",
"glow_south": "#glow_side",
"glow_west": "#glow_side"
}
},
"down": {
"textures": {
"down": "#front",
"up": "refinedstorage:blocks/crafter_bottom",
"north": "#side_180",
"east": "#side_180",
"south": "#side_180",
"west": "#side_180",
"glow_down": "#glow_front",
"glow_north": "#glow_side_180",
"glow_east": "#glow_side_180",
"glow_south": "#glow_side_180",
"glow_west": "#glow_side_180"
}
} }
} }
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 596 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 794 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 533 B

View File

@@ -0,0 +1,9 @@
{
"ctm": {
"ctm_version": 1,
"layer": "CUTOUT",
"extra": {
"light": 15
}
}
}