Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions src/main/java/supersymmetry/api/recipes/SuSyRecipeMaps.java
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ public class SuSyRecipeMaps {
.setProgressBar(GuiTextures.PROGRESS_BAR_MAGNET, ProgressWidget.MoveType.HORIZONTAL)
.setSound(GTSoundEvents.CENTRIFUGE);

public static final RecipeMap<SimpleRecipeBuilder> POLISHING_MACHINE = new RecipeMap<>("polishing_machine", 1, 1, 2, 1, new SimpleRecipeBuilder(), false)
public static final RecipeMap<SimpleRecipeBuilder> WAFER_SPINNER = new RecipeMap<>("wafer_spinner", 1, 1, 2, 1, new SimpleRecipeBuilder(), false)
.setProgressBar(GuiTextures.PROGRESS_BAR_MIXER, ProgressWidget.MoveType.CIRCULAR)
.setSound(GTSoundEvents.CENTRIFUGE);

Expand Down Expand Up @@ -168,6 +168,9 @@ public class SuSyRecipeMaps {
public static final RecipeMap<SimpleRecipeBuilder> CVD_RECIPES = new RecipeMap<>("cvd", 3, 1, 2, 2, new SimpleRecipeBuilder(), false)
.setSound(GTSoundEvents.ARC);

public static final RecipeMap<SimpleRecipeBuilder> SPUTTER_DEPOSITION_RECIPES = new RecipeMap<>("sputter_deposition", 6, 1, 2, 2, new SimpleRecipeBuilder(), false)
.setSound(GTSoundEvents.ELECTROLYZER);

public static final RecipeMap<SimpleRecipeBuilder> ORE_SORTER_RECIPES = new RecipeMap<>("ore_sorter", 2, 20, 1, 1, new SimpleRecipeBuilder(), false)
.setProgressBar(GuiTextures.PROGRESS_BAR_EXTRACT, ProgressWidget.MoveType.HORIZONTAL)
.setSound(GTSoundEvents.MACERATOR);
Expand Down Expand Up @@ -267,7 +270,7 @@ public class SuSyRecipeMaps {
public static final RecipeMap<SimpleRecipeBuilder> IN_SITU_LEACHER = new RecipeMap<>("in_situ_leacher", 2, 2, 2, 2, new SimpleRecipeBuilder(), false)
.setSound(GTSoundEvents.COMPRESSOR);

public static final RecipeMap<SimpleRecipeBuilder> EUV_LITHOGRAPHY = new RecipeMap<>("euv_lithography", 3, 3, 3, 3, new SimpleRecipeBuilder(), false)
public static final RecipeMap<SimpleRecipeBuilder> EUV_LITHOGRAPHY = new RecipeMap<>("euv_lithography", 3, 3, 0, 0, new SimpleRecipeBuilder(), false)
.setSound(GTSoundEvents.ELECTROLYZER);

public static final RecipeMap<SimpleRecipeBuilder> ROTARY_KILN = new RecipeMap<>("rotary_kiln", 3, 2, 3, 3, new SimpleRecipeBuilder(), false)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ public SusyTextures(){
public static final OrientedOverlayRenderer UV_LIGHT_BOX_OVERLAY = new OrientedOverlayRenderer("machines/uv_light_box");
public static final OrientedOverlayRenderer CVD_OVERLAY = new OrientedOverlayRenderer("machines/cvd");
public static final OrientedOverlayRenderer ION_IMPLANTER_OVERLAY = new OrientedOverlayRenderer("machines/ion_implanter");
public static final OrientedOverlayRenderer SPUTTER_DEPOSITION_OVERLAY = new OrientedOverlayRenderer("machines/sputter_deposition");
public static final OrientedOverlayRenderer PHASE_SEPARATOR_OVERLAY = new OrientedOverlayRenderer("machines/phase_separator");
public static final OrientedOverlayRenderer BATH_CONDENSER_OVERLAY = new OrientedOverlayRenderer("machines/bath_condenser");
public static final OrientedOverlayRenderer CATALYTIC_REFORMER_OVERLAY = new OrientedOverlayRenderer("multiblock/catalytic_reformer");
Expand All @@ -50,7 +51,7 @@ public SusyTextures(){
public static final OrientedOverlayRenderer FLUID_DECOMPRESSOR_OVERLAY = new OrientedOverlayRenderer("machines/fluid_decompressor");
public static final OrientedOverlayRenderer ELECTROSTATIC_SEPARATOR_OVERLAY = new OrientedOverlayRenderer("machines/electrostatic_separator");
public static final OrientedOverlayRenderer TEXTILE_SPINNER_OVERLAY = new OrientedOverlayRenderer("machines/textile_spinner");
public static final OrientedOverlayRenderer POLISHING_MACHINE_OVERLAY = new OrientedOverlayRenderer("machines/polishing_machine");
public static final OrientedOverlayRenderer WAFER_SPINNER_OVERLAY = new OrientedOverlayRenderer("machines/wafer_spinner");
public static final OrientedOverlayRenderer ARC_FURNACE_OVERLAY = new OrientedOverlayRenderer("machines/multiblocks/arc_furnace");
public static final OrientedOverlayRenderer CLARIFIER_OVERLAY = new OrientedOverlayRenderer("machines/multiblocks/clarifier");
public static final OrientedOverlayRenderer CONDENSER_OVERLAY = new OrientedOverlayRenderer("machines/multiblocks/condenser");
Expand Down Expand Up @@ -103,6 +104,7 @@ public SusyTextures(){
public static final SimpleOverlayRenderer RESTRICTIVE_FILTER_FILTER_OVERLAY = new SimpleOverlayRenderer("cover/overlay_restrictive_filter");
public static final SimpleOverlayRenderer STRAND_BUS_OVERLAY = new SimpleOverlayRenderer(
"logistics/overlay_strand_bus");
public static final SimpleOverlayRenderer EUV_SAFE_CASING = new SimpleOverlayRenderer("multiblock_casing/euv_safe_casing");

public static final SimpleCubeRenderer MASONRY_BRICK = new SimpleCubeRenderer("gregtech:blocks/multiblock_casing/masonry_brick");

Expand Down
2 changes: 2 additions & 0 deletions src/main/java/supersymmetry/common/CommonProxy.java
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,7 @@ public static void registerBlocks(@NotNull RegistryEvent.Register<Block> event)
registry.register(SuSyBlocks.CONVEYOR_BELT);
registry.register(SuSyBlocks.ROCKET_ASSEMBLER_CASING);
registry.register(SuSyBlocks.REGOLITH);
registry.register(SuSyBlocks.EUV_LITHOGRAPHER_COMPONENT);

SHEETED_FRAMES.values().stream().distinct().forEach(registry::register);
}
Expand Down Expand Up @@ -200,6 +201,7 @@ public static void registerItems(@NotNull RegistryEvent.Register<Item> event) {
registry.register(createItemBlock(SuSyBlocks.CONVEYOR_BELT, VariantItemBlock::new));
registry.register(createItemBlock(SuSyBlocks.ROCKET_ASSEMBLER_CASING, VariantItemBlock::new));
registry.register(createItemBlock(SuSyBlocks.REGOLITH, VariantItemBlockFalling::new));
registry.register(createItemBlock(SuSyBlocks.EUV_LITHOGRAPHER_COMPONENT, VariantItemBlock::new));

SHEETED_FRAMES.values()
.stream().distinct()
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
package supersymmetry.common.blocks;

import gregtech.api.block.VariantBlock;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.EntityLiving;
import net.minecraft.util.BlockRenderLayer;
import net.minecraft.util.IStringSerializable;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.IBlockAccess;
import org.jetbrains.annotations.NotNull;

import javax.annotation.Nonnull;

public class BlockEUVLithographerComponent extends VariantBlock<BlockEUVLithographerComponent.EUVComponentType> {

public BlockEUVLithographerComponent() {
super(Material.IRON);
setTranslationKey("euv_lithographer_component");
setHardness(5.0f);
setResistance(5.0f);
setSoundType(SoundType.METAL);
setHarvestLevel("wrench", 1);
setDefaultState(getState(EUVComponentType.LASER));
}

@Nonnull
@Override
public BlockRenderLayer getRenderLayer() {
return BlockRenderLayer.SOLID;
}

@Override
public boolean canCreatureSpawn(@NotNull IBlockState state, @NotNull IBlockAccess world, @NotNull BlockPos pos,
@NotNull EntityLiving.SpawnPlacementType type) {
return false;
}

public enum EUVComponentType implements IStringSerializable {
LASER("laser"),
RETICLE("reticle"),
MIRROR("mirror"),
TRAY("tray"),
HANDLER("handler");

private final String name;

EUVComponentType(String name) {
this.name = name;
}

@Nonnull
public String getName() {
return this.name;
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,8 @@ public enum CasingType implements IStringSerializable {
COPPER_PIPE("copper_casing_pipe"),
HEAVY_DUTY_PAD("heavy_duty_pad"),
ADVANCED_REFRACTORY_LINING("advanced_refractory_lining"),
COALESCENCE_PLATE("coalescence_plate");
COALESCENCE_PLATE("coalescence_plate"),
EUV_SAFE_CASING("euv_safe_casing");

private final String name;

Expand Down
7 changes: 6 additions & 1 deletion src/main/java/supersymmetry/common/blocks/SuSyBlocks.java
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ public class SuSyBlocks {
public static BlockConveyor CONVEYOR_BELT;
public static BlockRocketAssemblerCasing ROCKET_ASSEMBLER_CASING;
public static BlockRegolith REGOLITH;
public static BlockEUVLithographerComponent EUV_LITHOGRAPHER_COMPONENT;

public static void init() {
COOLING_COIL = new BlockCoolingCoil();
Expand Down Expand Up @@ -134,12 +135,15 @@ public static void init() {

CONVEYOR_BELT = new BlockConveyor();
CONVEYOR_BELT.setRegistryName("conveyor_belt");

ROCKET_ASSEMBLER_CASING = new BlockRocketAssemblerCasing();
ROCKET_ASSEMBLER_CASING.setRegistryName("rocket_assembler_casing");

REGOLITH = new BlockRegolith();
REGOLITH.setRegistryName("regolith");

EUV_LITHOGRAPHER_COMPONENT = new BlockEUVLithographerComponent();
EUV_LITHOGRAPHER_COMPONENT.setRegistryName("euv_lithographer_component");
}

@SideOnly(Side.CLIENT)
Expand Down Expand Up @@ -174,6 +178,7 @@ public static void registerItemModels() {
registerItemModel(CONVEYOR_BELT);
registerItemModel(ROCKET_ASSEMBLER_CASING);
registerItemModel(REGOLITH);
registerItemModel(EUV_LITHOGRAPHER_COMPONENT);
}

@SideOnly(Side.CLIENT)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,7 @@ public class SuSyMetaTileEntities {

public static SimpleMachineMetaTileEntity[] ION_IMPLANTER;
public static SimpleMachineMetaTileEntity[] CVD;
public static SimpleMachineMetaTileEntity[] SPUTTER_DEPOSITION;

public static SimpleMachineMetaTileEntity[] WEAPONS_FACTORY;

Expand Down Expand Up @@ -172,7 +173,7 @@ public class SuSyMetaTileEntities {
public static SimpleMachineMetaTileEntity[] BATH_CONDENSER;
public static SimpleMachineMetaTileEntity[] ELECTROSTATIC_SEPARATOR;
public static SimpleMachineMetaTileEntity[] TEXTILE_SPINNER;
public static SimpleMachineMetaTileEntity[] POLISHING_MACHINE;
public static SimpleMachineMetaTileEntity[] WAFER_SPINNER;

public static MetaTileEntityPrimitiveSmelter PRIMITIVE_SMELTER;
public static MetaTileEntityPrimitiveItemBus PRIMITIVE_ITEM_IMPORT;
Expand Down Expand Up @@ -228,6 +229,8 @@ public class SuSyMetaTileEntities {
//public static MetaTileEntityStockReader STOCK_CONTENT_READER;
public static MetaTileEntityLocomotiveController STOCK_CONTROLLER;

public static MetaTileEntityEUVLithographer EUV_LITHOGRAPHER;

public static void init() {
MAGNETIC_REFRIGERATOR = registerMetaTileEntity(14500, new MetaTileEntityMagneticRefrigerator(susyId("magnetic_refrigerator")));
COAGULATION_TANK = registerMetaTileEntity(14501, new MetaTileEntityCoagulationTank(susyId("coagulation_tank")));
Expand Down Expand Up @@ -311,6 +314,9 @@ public static void init() {
CURTAIN_COATER = registerMetaTileEntity(14513, new MetaTileEntityCurtainCoater(susyId("curtain_coater")));
MILLING = registerMetaTileEntity(14514, new MetaTileEntityPreciseMillingMachine(susyId("milling")));

EUV_LITHOGRAPHER = registerMetaTileEntity(14741, new MetaTileEntityEUVLithographer(susyId("euv_lithographer")));
registerSimpleMTE(SPUTTER_DEPOSITION, 12, 14742, "sputter_deposition", SuSyRecipeMaps.SPUTTER_DEPOSITION_RECIPES, SusyTextures.SPUTTER_DEPOSITION_OVERLAY, true, GTUtility.defaultTankSizeFunction);

//thermodynamic stuff
registerSimpleMTE(FLUID_COMPRESSOR, 12, 15000, "fluid_compressor", SuSyRecipeMaps.FLUID_COMPRESSOR_RECIPES, SusyTextures.FLUID_COMPRESSOR_OVERLAY, true, GTUtility.defaultTankSizeFunction);
registerSimpleMTE(FLUID_DECOMPRESSOR, 12, 15013, "fluid_decompressor", SuSyRecipeMaps.FLUID_DECOMPRESSOR_RECIPES, SusyTextures.FLUID_DECOMPRESSOR_OVERLAY, true, GTUtility.defaultTankSizeFunction);
Expand Down Expand Up @@ -414,7 +420,7 @@ public static void init() {
}

registerSimpleMTE(ELECTROSTATIC_SEPARATOR, 12, 17035, "electrostatic_separator", SuSyRecipeMaps.ELECTROSTATIC_SEPARATOR, SusyTextures.ELECTROSTATIC_SEPARATOR_OVERLAY, true, GTUtility.defaultTankSizeFunction);
registerSimpleMTE(POLISHING_MACHINE, 12, 17048, "polishing_machine", SuSyRecipeMaps.POLISHING_MACHINE, SusyTextures.POLISHING_MACHINE_OVERLAY, true, GTUtility.defaultTankSizeFunction);
registerSimpleMTE(WAFER_SPINNER, 12, 17048, "wafer_spinner", SuSyRecipeMaps.WAFER_SPINNER, SusyTextures.WAFER_SPINNER_OVERLAY, true, GTUtility.defaultTankSizeFunction);
registerSimpleMTE(TEXTILE_SPINNER, 12, 17061, "textile_spinner", SuSyRecipeMaps.SPINNING_RECIPES, SusyTextures.TEXTILE_SPINNER_OVERLAY, true);
ArrayList<Integer> ids = new ArrayList<>();
for (int id = 14500; id < 15000; id++) {
Expand All @@ -429,7 +435,7 @@ public static void init() {
STOCK_ITEM_EXCHANGER = registerMetaTileEntity(18002, new MetaTileEntityStockItemExchanger(susyId("stock_item_exchanger")));
//STOCK_CONTENT_READER = registerMetaTileEntity(18003, new MetaTileEntityStockReader(susyId("stock_content_reader")));
STOCK_CONTROLLER = registerMetaTileEntity(18004, new MetaTileEntityLocomotiveController(susyId("stock_controller")));

//Space machines
LANDING_PAD = registerMetaTileEntity(18005, new MetaTileEntityLandingPad(susyId("landing_pad")));
SCRAP_RECYCLER = registerMetaTileEntity(18006, new MetaTileEntityScrapRecycler(susyId("scrap_recycler")));
Expand Down Expand Up @@ -504,14 +510,15 @@ private static void registerCatalystMTE(CatalystMachineMetaTileEntity[] machines
UV_LIGHT_BOX = new SimpleMachineMetaTileEntity[GTValues.OpV];
CVD = new SimpleMachineMetaTileEntity[GTValues.OpV];
ION_IMPLANTER = new SimpleMachineMetaTileEntity[GTValues.OpV];
SPUTTER_DEPOSITION = new SimpleMachineMetaTileEntity[GTValues.OpV];

FLUID_COMPRESSOR = new SimpleMachineMetaTileEntity[GTValues.OpV];
FLUID_DECOMPRESSOR = new SimpleMachineMetaTileEntity[GTValues.OpV];
WEAPONS_FACTORY = new SimpleMachineMetaTileEntity[GTValues.OpV];

ELECTROSTATIC_SEPARATOR = new SimpleMachineMetaTileEntity[GTValues.OpV];
TEXTILE_SPINNER = new SimpleMachineMetaTileEntity[GTValues.OpV];
POLISHING_MACHINE = new SimpleMachineMetaTileEntity[GTValues.OpV];
WAFER_SPINNER = new SimpleMachineMetaTileEntity[GTValues.OpV];

PHASE_SEPARATOR = new SimpleMachineMetaTileEntity[1];
BATH_CONDENSER = new SimpleMachineMetaTileEntity[1];
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
package supersymmetry.common.metatileentities.multi.electric;


import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.interfaces.IGregTechTileEntity;
import gregtech.api.metatileentity.multiblock.IMultiblockPart;
import gregtech.api.metatileentity.multiblock.RecipeMapMultiblockController;
import gregtech.api.pattern.BlockPattern;
import gregtech.api.pattern.FactoryBlockPattern;
import gregtech.api.pattern.TraceabilityPredicate;
import gregtech.client.renderer.ICubeRenderer;
import gregtech.client.renderer.texture.Textures;
import gregtech.common.blocks.BlockTurbineCasing;
import gregtech.common.blocks.MetaBlocks;
import net.minecraft.block.state.IBlockState;
import net.minecraft.util.ResourceLocation;
import supersymmetry.api.recipes.SuSyRecipeMaps;
import supersymmetry.client.renderer.textures.SusyTextures;
import supersymmetry.common.blocks.*;

import javax.annotation.Nonnull;


import static gregtech.api.util.RelativeDirection.*;

public class MetaTileEntityEUVLithographer extends RecipeMapMultiblockController {

public MetaTileEntityEUVLithographer(ResourceLocation metaTileEntityId) {
super(metaTileEntityId, SuSyRecipeMaps.EUV_LITHOGRAPHY);
}

@Override
public MetaTileEntity createMetaTileEntity(IGregTechTileEntity iGregTechTileEntity) {
return new MetaTileEntityEUVLithographer(metaTileEntityId);
}

@Override
protected BlockPattern createStructurePattern() {
TraceabilityPredicate casingPredicate = states(getCasingState()).setMinGlobalLimited(210);
return FactoryBlockPattern.start(RIGHT, FRONT, DOWN)
.aisle("CCCCCCCCCCXXXX", "CCCCCCCCCCXXXX", "CCCCCCCCCCXXXX", "CCCCCCCCCCXXXX")
.aisle("CCCCCCCCCCXXXX", "C MMRMXLLX", "C XLLX", "CCCCCCCCCCXXXX")
.aisle("CCSCCCCCCCXXXX", "C XLLX", "CATTTA XLLX", "CCCCCCCCCCXXXX")
.aisle("CCCCCCCCCCXXXX", "CTATATMMMLLLLX", "CXXXXXXXXXXLLX", "CCCCCCCCCCXXXX")
.aisle("CCCCCCCCCCXXXX", "CCCCCCCCCCXXXX", "CCCCCCCCCCXXXX", "CCCCCCCCCCXXXX")
.where('S', selfPredicate())
.where('C', casingPredicate.or(autoAbilities()))
.where('X', casingPredicate)
.where('G', states(getGearBoxState()))
.where('L', states(getLaserEmitterState()))
.where('T', states(getTrayState()))
.where('A', states(getRobotArmState()))
.where('M', states(getMirrorState()))
.where('R', states(getReticleState()))
.where(' ', air())
.build();
}

protected IBlockState getCasingState() {
return SuSyBlocks.MULTIBLOCK_CASING.getState(BlockSuSyMultiblockCasing.CasingType.EUV_SAFE_CASING);
}

protected IBlockState getGearBoxState() {
return MetaBlocks.TURBINE_CASING.getState(BlockTurbineCasing.TurbineCasingType.TUNGSTENSTEEL_GEARBOX);
}

protected IBlockState getTrayState() {
return SuSyBlocks.EUV_LITHOGRAPHER_COMPONENT.getState(BlockEUVLithographerComponent.EUVComponentType.TRAY);
}

protected IBlockState getRobotArmState() {
return SuSyBlocks.EUV_LITHOGRAPHER_COMPONENT.getState(BlockEUVLithographerComponent.EUVComponentType.HANDLER);
}

protected IBlockState getLaserEmitterState() {
return SuSyBlocks.EUV_LITHOGRAPHER_COMPONENT.getState(BlockEUVLithographerComponent.EUVComponentType.LASER);
}

protected IBlockState getMirrorState() {
return SuSyBlocks.EUV_LITHOGRAPHER_COMPONENT.getState(BlockEUVLithographerComponent.EUVComponentType.MIRROR);
}

protected IBlockState getReticleState() {
return SuSyBlocks.EUV_LITHOGRAPHER_COMPONENT.getState(BlockEUVLithographerComponent.EUVComponentType.RETICLE);
}



@Override
public ICubeRenderer getBaseTexture(IMultiblockPart iMultiblockPart) {
return SusyTextures.EUV_SAFE_CASING;
}

@Nonnull
@Override
protected ICubeRenderer getFrontOverlay() {
return Textures.BLAST_FURNACE_OVERLAY;
}

@Override
public boolean allowsExtendedFacing() {
return false;
}

public boolean allowsFlip() {
return true;
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
{
"forge_marker" : 1,
"defaults": {
"model" : "minecraft:cube_all",
"textures" : {
"all" : "gregtech:blocks/casings/euv_component/carbon_dioxide_laser"
}
},
"variants" : {
"variant=laser" : {
"model" : "minecraft:cube_all",
"textures" : {
"all" : "gregtech:blocks/casings/euv_component/carbon_dioxide_laser"
}
},
"variant=mirror" : {
"model" : "minecraft:cube_all",
"textures" : {
"all" : "gregtech:blocks/casings/euv_component/euv_laser_mirror"
}
},
"variant=reticle" : {
"model" : "minecraft:cube_bottom_top",
"textures" : {
"bottom": "gregtech:blocks/casings/euv_component/euv_laser_reticle",
"top": "gregtech:blocks/casings/solid/machine_casing_robust_tungstensteel",
"side": "gregtech:blocks/casings/euv_component/euv_laser_reticle_side"
}
},
"variant=tray" : {
"model" : "minecraft:cube_all",
"textures" : {
"all" : "gregtech:blocks/casings/euv_component/euv_wafer_stage"
}
},
"variant=handler" : {
"model" : "minecraft:cube_all",
"textures" : {
"all" : "gregtech:blocks/casings/euv_component/euv_wafer_robot_arm"
}
}
}
}
Loading
Loading