Show crafting btn in grid
This commit is contained in:
		@@ -210,6 +210,8 @@ public class GuiGrid extends GuiBase {
 | 
				
			|||||||
                    text = String.format("%.1f", (float) qty / 1000).replace(",", ".").replace(".0", "") + "K";
 | 
					                    text = String.format("%.1f", (float) qty / 1000).replace(",", ".").replace(".0", "") + "K";
 | 
				
			||||||
                } else if (qty == 1) {
 | 
					                } else if (qty == 1) {
 | 
				
			||||||
                    text = null;
 | 
					                    text = null;
 | 
				
			||||||
 | 
					                } else if (qty == 0) {
 | 
				
			||||||
 | 
					                    text = "Craft";
 | 
				
			||||||
                } else {
 | 
					                } else {
 | 
				
			||||||
                    text = String.valueOf(qty);
 | 
					                    text = String.valueOf(qty);
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -5,19 +5,20 @@ import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
 | 
				
			|||||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
 | 
					import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
 | 
				
			||||||
import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
 | 
					import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
 | 
				
			||||||
import refinedstorage.storage.ItemGroup;
 | 
					import refinedstorage.storage.ItemGroup;
 | 
				
			||||||
 | 
					import refinedstorage.tile.TileController;
 | 
				
			||||||
import refinedstorage.tile.grid.WirelessGrid;
 | 
					import refinedstorage.tile.grid.WirelessGrid;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import java.util.ArrayList;
 | 
					import java.util.ArrayList;
 | 
				
			||||||
import java.util.List;
 | 
					import java.util.List;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class MessageWirelessGridItems implements IMessage, IMessageHandler<MessageWirelessGridItems, IMessage> {
 | 
					public class MessageWirelessGridItems implements IMessage, IMessageHandler<MessageWirelessGridItems, IMessage> {
 | 
				
			||||||
    private List<ItemGroup> itemGroups;
 | 
					    private TileController controller;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public MessageWirelessGridItems() {
 | 
					    public MessageWirelessGridItems() {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public MessageWirelessGridItems(List<ItemGroup> itemGroups) {
 | 
					    public MessageWirelessGridItems(TileController controller) {
 | 
				
			||||||
        this.itemGroups = itemGroups;
 | 
					        this.controller = controller;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
@@ -36,11 +37,7 @@ public class MessageWirelessGridItems implements IMessage, IMessageHandler<Messa
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
    public void toBytes(ByteBuf buf) {
 | 
					    public void toBytes(ByteBuf buf) {
 | 
				
			||||||
        buf.writeInt(itemGroups.size());
 | 
					        controller.sendItemGroups(buf);
 | 
				
			||||||
 | 
					 | 
				
			||||||
        for (ItemGroup group : itemGroups) {
 | 
					 | 
				
			||||||
            group.toBytes(buf, itemGroups.indexOf(group));
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -21,6 +21,7 @@ import refinedstorage.RefinedStorageItems;
 | 
				
			|||||||
import refinedstorage.block.BlockController;
 | 
					import refinedstorage.block.BlockController;
 | 
				
			||||||
import refinedstorage.block.EnumControllerType;
 | 
					import refinedstorage.block.EnumControllerType;
 | 
				
			||||||
import refinedstorage.container.ContainerController;
 | 
					import refinedstorage.container.ContainerController;
 | 
				
			||||||
 | 
					import refinedstorage.item.ItemPattern;
 | 
				
			||||||
import refinedstorage.item.ItemWirelessGrid;
 | 
					import refinedstorage.item.ItemWirelessGrid;
 | 
				
			||||||
import refinedstorage.network.GridPullFlags;
 | 
					import refinedstorage.network.GridPullFlags;
 | 
				
			||||||
import refinedstorage.network.MessageWirelessGridItems;
 | 
					import refinedstorage.network.MessageWirelessGridItems;
 | 
				
			||||||
@@ -162,7 +163,7 @@ public class TileController extends TileBase implements IEnergyReceiver, INetwor
 | 
				
			|||||||
                    consumer.getPlayer().closeScreen(); // This will call onContainerClosed on the Container and remove it from the list
 | 
					                    consumer.getPlayer().closeScreen(); // This will call onContainerClosed on the Container and remove it from the list
 | 
				
			||||||
                } else {
 | 
					                } else {
 | 
				
			||||||
                    if (isActive()) {
 | 
					                    if (isActive()) {
 | 
				
			||||||
                        RefinedStorage.NETWORK.sendTo(new MessageWirelessGridItems(itemGroups), (EntityPlayerMP) consumer.getPlayer());
 | 
					                        RefinedStorage.NETWORK.sendTo(new MessageWirelessGridItems(this), (EntityPlayerMP) consumer.getPlayer());
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
@@ -206,6 +207,22 @@ public class TileController extends TileBase implements IEnergyReceiver, INetwor
 | 
				
			|||||||
            storage.addItems(itemGroups);
 | 
					            storage.addItems(itemGroups);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        for (TileMachine machine : machines) {
 | 
				
			||||||
 | 
					            if (machine instanceof TileInterface) {
 | 
				
			||||||
 | 
					                TileInterface tile = (TileInterface) machine;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                for (int i = 27; i < 27 + 9; ++i) {
 | 
				
			||||||
 | 
					                    ItemStack pattern = tile.getStackInSlot(i);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    if (pattern != null) {
 | 
				
			||||||
 | 
					                        ItemGroup patternGroup = new ItemGroup(ItemPattern.getResult(pattern));
 | 
				
			||||||
 | 
					                        patternGroup.setQuantity(0);
 | 
				
			||||||
 | 
					                        itemGroups.add(patternGroup);
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        combineItems();
 | 
					        combineItems();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -574,4 +591,12 @@ public class TileController extends TileBase implements IEnergyReceiver, INetwor
 | 
				
			|||||||
            drainEnergyFromWirelessGrid(player, ItemWirelessGrid.USAGE_PUSH);
 | 
					            drainEnergyFromWirelessGrid(player, ItemWirelessGrid.USAGE_PUSH);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public void sendItemGroups(ByteBuf buf) {
 | 
				
			||||||
 | 
					        buf.writeInt(getItemGroups().size());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        for (ItemGroup group : getItemGroups()) {
 | 
				
			||||||
 | 
					            group.toBytes(buf, getItemGroups().indexOf(group));
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -305,11 +305,7 @@ public class TileGrid extends TileMachine implements IGrid {
 | 
				
			|||||||
        buf.writeInt(searchBoxMode);
 | 
					        buf.writeInt(searchBoxMode);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (connected) {
 | 
					        if (connected) {
 | 
				
			||||||
            buf.writeInt(controller.getItemGroups().size());
 | 
					            controller.sendItemGroups(buf);
 | 
				
			||||||
 | 
					 | 
				
			||||||
            for (ItemGroup group : controller.getItemGroups()) {
 | 
					 | 
				
			||||||
                group.toBytes(buf, controller.getItemGroups().indexOf(group));
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
        } else {
 | 
					        } else {
 | 
				
			||||||
            buf.writeInt(0);
 | 
					            buf.writeInt(0);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user