package advancedsystemsmanager.flow.execution.commands; import advancedsystemsmanager.flow.FlowComponent; import advancedsystemsmanager.flow.execution.Executor; import advancedsystemsmanager.flow.menus.*; import advancedsystemsmanager.flow.setting.ItemSetting; import advancedsystemsmanager.reference.Names; import advancedsystemsmanager.registry.ConnectionSet; import advancedsystemsmanager.registry.SystemTypeRegistry; import advancedsystemsmanager.tileentities.TileEntityCamouflage; import advancedsystemsmanager.util.SystemCoord; import net.minecraft.item.ItemStack; import net.minecraftforge.common.util.ForgeDirection; import java.util.List; public class CommandCamouflage extends CommandBase { public CommandCamouflage() { super(CAMOUFLAGE, Names.CAMOUFLAGE, CommandType.MISC, ConnectionSet.STANDARD); } @Override public void getMenus(FlowComponent component, List<Menu> menus) { menus.add(new MenuContainer(component, SystemTypeRegistry.CAMOUFLAGE)); menus.add(new MenuCamouflageShape(component)); menus.add(new MenuCamouflageInside(component)); // menus.add(new MenuCamouflageSides(component)); menus.add(new MenuCamouflageItems(component)); } @Override public void execute(FlowComponent command, int connectionId, Executor executor) { List<SystemCoord> camouflageBlocks = getContainers(command.getManager(), (MenuContainer)command.getMenus().get(0)); if (camouflageBlocks != null) { MenuCamouflageShape shape = (MenuCamouflageShape)command.getMenus().get(1); MenuCamouflageInside inside = (MenuCamouflageInside)command.getMenus().get(2); MenuCamouflageItems items = (MenuCamouflageItems)command.getMenus().get(3); if (items.isFirstRadioButtonSelected() || items.getSettings().get(0).isValid()) { ItemStack itemStack = items.isFirstRadioButtonSelected() ? null : (items.getSettings().get(0)).getContent(); for (SystemCoord systemCoord : camouflageBlocks) { TileEntityCamouflage camouflage = (TileEntityCamouflage)systemCoord.getTileEntity(); camouflage.setBounds(shape); // for (int i = 0; i < ForgeDirection.VALID_DIRECTIONS.length; ++i) // { // if (sides.isSideRequired(i)) // { camouflage.setItem(itemStack, inside.getCurrentType()); // } // } } } } } }