Added legacy Access Terminal
This commit is contained in:
parent
62b0907395
commit
822e2e5e11
|
@ -0,0 +1,38 @@
|
|||
package appeng.block.legacy;
|
||||
|
||||
import appeng.block.AEBaseTileBlock;
|
||||
import appeng.core.features.AEFeature;
|
||||
import appeng.core.sync.GuiBridge;
|
||||
import appeng.tile.legacy.TileTerminal;
|
||||
import appeng.util.Platform;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
public class BlockTerminal extends AEBaseTileBlock {
|
||||
|
||||
public BlockTerminal() {
|
||||
super(Material.iron);
|
||||
this.setTileEntity(TileTerminal.class);
|
||||
this.setFeature( EnumSet.of(AEFeature.Legacy) );
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onActivated(World w, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
|
||||
final TileTerminal tile = this.getTileEntity(w, x, y, z);
|
||||
if( tile != null && !player.isSneaking() ) {
|
||||
if( Platform.isClient() )
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
Platform.openGUI(player, tile, ForgeDirection.getOrientation(side), GuiBridge.GUI_ME);
|
||||
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
|
@ -48,6 +48,7 @@ import appeng.helpers.WirelessTerminalGuiObject;
|
|||
import appeng.integration.IntegrationRegistry;
|
||||
import appeng.integration.IntegrationType;
|
||||
import appeng.parts.reporting.AbstractPartTerminal;
|
||||
import appeng.tile.legacy.TileTerminal;
|
||||
import appeng.tile.misc.TileSecurity;
|
||||
import appeng.util.IConfigManagerHost;
|
||||
import appeng.util.Platform;
|
||||
|
@ -140,6 +141,9 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
|
|||
{
|
||||
this.myName = GuiText.Terminal;
|
||||
}
|
||||
else if( te instanceof TileTerminal ) {
|
||||
this.myName = GuiText.Terminal;
|
||||
}
|
||||
}
|
||||
|
||||
public void postUpdate( final List<IAEItemStack> list )
|
||||
|
|
|
@ -24,12 +24,10 @@ import appeng.api.definitions.IBlocks;
|
|||
import appeng.api.definitions.ITileDefinition;
|
||||
import appeng.api.util.IOrientableBlock;
|
||||
import appeng.block.AEBaseSlabBlock;
|
||||
import appeng.block.crafting.BlockCraftingMonitor;
|
||||
import appeng.block.crafting.BlockCraftingStorage;
|
||||
import appeng.block.crafting.BlockCraftingUnit;
|
||||
import appeng.block.crafting.BlockMolecularAssembler;
|
||||
import appeng.block.crafting.*;
|
||||
import appeng.block.grindstone.BlockCrank;
|
||||
import appeng.block.grindstone.BlockGrinder;
|
||||
import appeng.block.legacy.BlockTerminal;
|
||||
import appeng.block.misc.*;
|
||||
import appeng.block.networking.*;
|
||||
import appeng.block.qnb.BlockQuantumLinkChamber;
|
||||
|
@ -132,6 +130,9 @@ public final class ApiBlocks implements IBlocks
|
|||
|
||||
private final Set<IOrientableBlock> orientables;
|
||||
|
||||
//Legacy
|
||||
private final ITileDefinition terminal;
|
||||
|
||||
public ApiBlocks( final DefinitionConstructor constructor )
|
||||
{
|
||||
final BlockLightDetector lightDetector = new BlockLightDetector();
|
||||
|
@ -220,6 +221,10 @@ public final class ApiBlocks implements IBlocks
|
|||
this.chunkLoader = constructor.registerBlockDefinition( new BlockChunkloader() );
|
||||
this.phantomNode = constructor.registerBlockDefinition( new BlockPhantomNode() );
|
||||
this.cubeGenerator = constructor.registerBlockDefinition( new BlockCubeGenerator() );
|
||||
|
||||
//Legacy
|
||||
this.terminal = constructor.registerTileDefinition( new BlockTerminal() );
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -103,6 +103,9 @@ public final class ApiMaterials implements IMaterials
|
|||
private final IItemDefinition qESingularity;
|
||||
private final IItemDefinition blankPattern;
|
||||
|
||||
//Legacy
|
||||
private final IItemDefinition conversionMatrix;
|
||||
|
||||
public ApiMaterials( final DefinitionConstructor constructor )
|
||||
{
|
||||
final ItemMultiMaterial itemMultiMaterial = new ItemMultiMaterial();
|
||||
|
@ -179,6 +182,9 @@ public final class ApiMaterials implements IMaterials
|
|||
this.singularity = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.Singularity ) );
|
||||
this.qESingularity = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.QESingularity ) );
|
||||
this.blankPattern = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.BlankPattern ) );
|
||||
|
||||
//Legacy
|
||||
this.conversionMatrix = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.ConversionMatrix ));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -69,6 +69,7 @@ public enum AEFeature
|
|||
SpatialIO( Constants.CATEGORY_NETWORK_FEATURES ),
|
||||
QuantumNetworkBridge( Constants.CATEGORY_NETWORK_FEATURES ),
|
||||
Channels( Constants.CATEGORY_NETWORK_FEATURES ),
|
||||
Legacy( Constants.CATEGORY_NETWORK_FEATURES ),
|
||||
|
||||
LevelEmitter( Constants.CATEGORY_NETWORK_BUSES ),
|
||||
CraftingTerminal( Constants.CATEGORY_NETWORK_BUSES ),
|
||||
|
|
|
@ -105,6 +105,7 @@ public enum MaterialType
|
|||
|
||||
FormationCore( 43 ),
|
||||
AnnihilationCore( 44 ),
|
||||
ConversionMatrix(54, AEFeature.Legacy),
|
||||
|
||||
SkyDust( 45, AEFeature.Core ),
|
||||
|
||||
|
|
|
@ -0,0 +1,75 @@
|
|||
package appeng.tile.legacy;
|
||||
|
||||
import appeng.api.config.Settings;
|
||||
import appeng.api.config.SortDir;
|
||||
import appeng.api.config.SortOrder;
|
||||
import appeng.api.config.ViewItems;
|
||||
import appeng.api.networking.GridFlags;
|
||||
import appeng.api.storage.*;
|
||||
import appeng.api.storage.data.IAEFluidStack;
|
||||
import appeng.api.storage.data.IAEItemStack;
|
||||
import appeng.api.util.IConfigManager;
|
||||
import appeng.core.sync.GuiBridge;
|
||||
import appeng.me.GridAccessException;
|
||||
import appeng.tile.grid.AENetworkTile;
|
||||
import appeng.tile.storage.TileChest;
|
||||
import appeng.util.ConfigManager;
|
||||
import appeng.util.IConfigManagerHost;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
public class TileTerminal extends AENetworkTile implements ITerminalHost, IConfigManagerHost {
|
||||
|
||||
private final IConfigManager cm = new ConfigManager( this );
|
||||
|
||||
public TileTerminal()
|
||||
{
|
||||
this.getProxy().setFlags( GridFlags.REQUIRE_CHANNEL );
|
||||
this.getProxy().setIdlePowerUsage( 0.5 );
|
||||
this.getProxy().setValidSides( EnumSet.allOf( ForgeDirection.class ) );
|
||||
|
||||
this.cm.registerSetting( Settings.SORT_BY, SortOrder.NAME );
|
||||
this.cm.registerSetting( Settings.VIEW_MODE, ViewItems.ALL );
|
||||
this.cm.registerSetting( Settings.SORT_DIRECTION, SortDir.ASCENDING );
|
||||
}
|
||||
|
||||
@Override
|
||||
public IMEMonitor<IAEItemStack> getItemInventory() {
|
||||
try
|
||||
{
|
||||
return this.getProxy().getStorage().getItemInventory();
|
||||
}
|
||||
catch( final GridAccessException e )
|
||||
{
|
||||
// err nope?
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IMEMonitor<IAEFluidStack> getFluidInventory() {
|
||||
try
|
||||
{
|
||||
return this.getProxy().getStorage().getFluidInventory();
|
||||
}
|
||||
catch( final GridAccessException e )
|
||||
{
|
||||
// err nope?
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IConfigManager getConfigManager() {
|
||||
return this.cm;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateSetting(IConfigManager manager, Enum settingName, Enum newValue) {
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -51,6 +51,11 @@ tile.appliedenergistics2.BlockCraftingAccelerator.name=Crafting Co-Processing Un
|
|||
tile.appliedenergistics2.BlockCraftingUnit.name=Crafting Unit
|
||||
tile.appliedenergistics2.BlockMolecularAssembler.name=Molecular Assembler
|
||||
|
||||
#Legacy
|
||||
tile.appliedenergistics2.BlockTerminal.name=ME Access Terminal
|
||||
|
||||
item.appliedenergistics2.ItemMaterial.ConversionMatrix.name=Conversion Matrix
|
||||
|
||||
# Stairs
|
||||
tile.appliedenergistics2.ChiseledQuartzStairBlock.name=Chiseled Certus Quartz Stairs
|
||||
tile.appliedenergistics2.FluixStairBlock.name=Fluix Stairs
|
||||
|
|
|
@ -18,4 +18,6 @@ import=materials/index.recipe
|
|||
import=misc/index.recipe
|
||||
import=network/index.recipe
|
||||
import=processing/index.recipe
|
||||
import=tools/index.recipe
|
||||
import=tools/index.recipe
|
||||
|
||||
import=legacy/index.recipe
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
shaped=
|
||||
oredictionary:ingotIron netherCrystal oredictionary:ingotIron,
|
||||
oreDictionary:dustFluix ae2:ItemMaterial.LogicProcessor oreDictionary:dustFluix,
|
||||
oredictionary:ingotIron certusCrystal oredictionary:ingotIron
|
||||
-> ae2:ItemMaterial.ConversionMatrix
|
||||
|
||||
shaped=
|
||||
oredictionary:ingotIron certusCrystal oredictionary:ingotIron,
|
||||
oreDictionary:dustFluix ae2:ItemMaterial.LogicProcessor oreDictionary:dustFluix,
|
||||
oredictionary:ingotIron netherCrystal oredictionary:ingotIron
|
||||
-> ae2:ItemMaterial.ConversionMatrix
|
||||
|
||||
shaped=
|
||||
oredictionary:ingotIron oredictionary:ingotIron glass,
|
||||
ae2:CableGlass.Fluix ae2:ItemMaterial.ConversionMatrix glass,
|
||||
oredictionary:ingotIron oredictionary:ingotIron glass
|
||||
-> ae2:BlockTerminal
|
Binary file not shown.
After Width: | Height: | Size: 398 B |
Binary file not shown.
After Width: | Height: | Size: 398 B |
Binary file not shown.
After Width: | Height: | Size: 342 B |
Binary file not shown.
After Width: | Height: | Size: 438 B |
Binary file not shown.
After Width: | Height: | Size: 400 B |
Loading…
Reference in New Issue