diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 1b731163..00000000 --- a/.gitmodules +++ /dev/null @@ -1,7 +0,0 @@ - -[submodule "src/main/resources/assets/appliedenergistics2/lang"] - path = src/main/resources/assets/appliedenergistics2/lang - url = https://github.com/AppliedEnergistics/AppliedEnergistics-2-Localization.git -[submodule "src/api/java/appeng/api"] - path = src/api/java/appeng/api - url = https://github.com/AppliedEnergistics/Applied-Energistics-2-API.git diff --git a/src/api/java/appeng/api b/src/api/java/appeng/api deleted file mode 160000 index 5dd2dd9d..00000000 --- a/src/api/java/appeng/api +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 5dd2dd9d4cf50eeeb1b6d57d4770cbff82ebe935 diff --git a/src/api/java/appeng/api/AEApi.java b/src/api/java/appeng/api/AEApi.java new file mode 100644 index 00000000..1a2e31bc --- /dev/null +++ b/src/api/java/appeng/api/AEApi.java @@ -0,0 +1,38 @@ +package appeng.api; + +/** + * + * Entry point for api. + * + * Available IMCs: + * + */ +public class AEApi +{ + + static private IAppEngApi api = null; + + /** + * API Entry Point. + * + * @return the {@link IAppEngApi} or null if the instance could not be retrieved + */ + public static IAppEngApi instance() + { + if ( api == null ) + { + try + { + Class c = Class.forName( "appeng.core.Api" ); + api = (IAppEngApi) c.getField( "instance" ).get( c ); + } + catch (Throwable e) + { + return null; + } + } + + return api; + } + +} diff --git a/src/api/java/appeng/api/IAppEngApi.java b/src/api/java/appeng/api/IAppEngApi.java new file mode 100644 index 00000000..c8546bdb --- /dev/null +++ b/src/api/java/appeng/api/IAppEngApi.java @@ -0,0 +1,71 @@ +package appeng.api; + +import appeng.api.definitions.Blocks; +import appeng.api.definitions.Items; +import appeng.api.definitions.Materials; +import appeng.api.definitions.Parts; +import appeng.api.exceptions.FailedConnection; +import appeng.api.features.IRegistryContainer; +import appeng.api.networking.IGridBlock; +import appeng.api.networking.IGridConnection; +import appeng.api.networking.IGridHost; +import appeng.api.networking.IGridNode; +import appeng.api.parts.IPartHelper; +import appeng.api.storage.IStorageHelper; + +public interface IAppEngApi +{ + + /** + * @return Registry Container for the numerous registries in AE2. + */ + IRegistryContainer registries(); + + /** + * @return helper for working with storage data types. + */ + IStorageHelper storage(); + + /** + * @return helper for working with grids, and buses. + */ + IPartHelper partHelper(); + + /** + * @return an accessible list of all of AE's Items + */ + Items items(); + + /** + * @return an accessible list of all of AE's materials; materials are items + */ + Materials materials(); + + /** + * @return an accessible list of all of AE's blocks + */ + Blocks blocks(); + + /** + * @return an accessible list of all of AE's parts, parts are items + */ + Parts parts(); + + /** + * create a grid node for your {@link IGridHost} + * + * @param block grid block + * @return grid node of block + */ + IGridNode createGridNode(IGridBlock block); + + /** + * create a connection between two {@link IGridNode} + * + * @param a to be connected gridnode + * @param b to be connected gridnode + * @throws FailedConnection + */ + IGridConnection createGridConnection(IGridNode a, IGridNode b) throws FailedConnection; + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/LICENSE b/src/api/java/appeng/api/LICENSE new file mode 100644 index 00000000..643181ca --- /dev/null +++ b/src/api/java/appeng/api/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2013 AlgorithmX2 + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/src/api/java/appeng/api/README.md b/src/api/java/appeng/api/README.md new file mode 100644 index 00000000..2c43544e --- /dev/null +++ b/src/api/java/appeng/api/README.md @@ -0,0 +1,19 @@ +Applied-Energistics-2-API +========================= + +The API for Applied Energistics 2. It is open source to discuss changes, improve documentation, and provide better add-on support in general. + +Development and standard builds can be obtained [Here](http://ae2.ae-mod.info/Downloads/). + +Maven +========================= + +When compiling against the AE2 API you can use gradle dependencies, just add + +dependencies { + compile "appeng:appliedenergistics2:rv_-_____-__:dev" +} + +or add the compile line to your existing dependencies task to your build.gradle + +Where the __ are filled in with the correct version criteria; AE2 is available from the default forge maven so no additional repositories are necessary. diff --git a/src/api/java/appeng/api/config/AccessRestriction.java b/src/api/java/appeng/api/config/AccessRestriction.java new file mode 100644 index 00000000..4867b539 --- /dev/null +++ b/src/api/java/appeng/api/config/AccessRestriction.java @@ -0,0 +1,48 @@ +package appeng.api.config; + +public enum AccessRestriction +{ + NO_ACCESS(0), READ(1), WRITE(2), READ_WRITE(3); + + private final int permissionBit; + + private AccessRestriction(int v) { + permissionBit = v; + } + + public boolean hasPermission(AccessRestriction ar) + { + return (permissionBit & ar.permissionBit) == ar.permissionBit; + } + + public AccessRestriction restrictPermissions(AccessRestriction ar) + { + return getPermByBit( permissionBit & ar.permissionBit); + } + + public AccessRestriction addPermissions(AccessRestriction ar) + { + return getPermByBit( permissionBit | ar.permissionBit); + } + + public AccessRestriction removePermissions(AccessRestriction ar) + { + return getPermByBit( permissionBit & (~ar.permissionBit) ); + } + + private AccessRestriction getPermByBit(int bit) + { + switch (bit) + { + default: + case 0: + return NO_ACCESS; + case 1: + return READ; + case 2: + return WRITE; + case 3: + return READ_WRITE; + } + } +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/ActionItems.java b/src/api/java/appeng/api/config/ActionItems.java new file mode 100644 index 00000000..1a565910 --- /dev/null +++ b/src/api/java/appeng/api/config/ActionItems.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum ActionItems +{ + WRENCH, CLOSE, STASH, ENCODE, SUBSTITUTION +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/Actionable.java b/src/api/java/appeng/api/config/Actionable.java new file mode 100644 index 00000000..ce798f62 --- /dev/null +++ b/src/api/java/appeng/api/config/Actionable.java @@ -0,0 +1,14 @@ +package appeng.api.config; + +public enum Actionable +{ + /** + * Perform the intended action. + */ + MODULATE, + + /** + * Pretend to perform the action. + */ + SIMULATE +} diff --git a/src/api/java/appeng/api/config/CondenserOutput.java b/src/api/java/appeng/api/config/CondenserOutput.java new file mode 100644 index 00000000..e2c501d4 --- /dev/null +++ b/src/api/java/appeng/api/config/CondenserOutput.java @@ -0,0 +1,15 @@ +package appeng.api.config; + + +public enum CondenserOutput +{ + + TRASH, // 0 + + MATTER_BALLS, // 256 + + SINGULARITY; // 250,000 + + public int requiredPower = 0; + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/CopyMode.java b/src/api/java/appeng/api/config/CopyMode.java new file mode 100644 index 00000000..31cda813 --- /dev/null +++ b/src/api/java/appeng/api/config/CopyMode.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum CopyMode +{ + CLEAR_ON_REMOVE, KEEP_ON_REMOVE +} diff --git a/src/api/java/appeng/api/config/FullnessMode.java b/src/api/java/appeng/api/config/FullnessMode.java new file mode 100644 index 00000000..43b22bc4 --- /dev/null +++ b/src/api/java/appeng/api/config/FullnessMode.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum FullnessMode +{ + EMPTY, HALF, FULL +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/FuzzyMode.java b/src/api/java/appeng/api/config/FuzzyMode.java new file mode 100644 index 00000000..e5fa8ce7 --- /dev/null +++ b/src/api/java/appeng/api/config/FuzzyMode.java @@ -0,0 +1,21 @@ +package appeng.api.config; + +public enum FuzzyMode +{ + // Note that percentage damaged, is the inverse of percentage durability. + IGNORE_ALL(-1), PERCENT_99(0), PERCENT_75(25), PERCENT_50(50), PERCENT_25(75); + + final public float breakPoint; + final public float percentage; + + private FuzzyMode(float p) { + percentage = p; + breakPoint = p / 100.0f; + } + + public int calculateBreakPoint(int maxDamage) + { + return (int) ((percentage * maxDamage) / 100.0f); + } + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/IncludeExclude.java b/src/api/java/appeng/api/config/IncludeExclude.java new file mode 100644 index 00000000..3e74db9a --- /dev/null +++ b/src/api/java/appeng/api/config/IncludeExclude.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum IncludeExclude +{ + WHITELIST, BLACKLIST +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/LevelEmitterMode.java b/src/api/java/appeng/api/config/LevelEmitterMode.java new file mode 100644 index 00000000..46709c8a --- /dev/null +++ b/src/api/java/appeng/api/config/LevelEmitterMode.java @@ -0,0 +1,10 @@ +package appeng.api.config; + +public enum LevelEmitterMode +{ + + STORED_AMOUNT, + + STORABLE_AMOUNT + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/LevelType.java b/src/api/java/appeng/api/config/LevelType.java new file mode 100644 index 00000000..58d1a6b1 --- /dev/null +++ b/src/api/java/appeng/api/config/LevelType.java @@ -0,0 +1,10 @@ +package appeng.api.config; + +public enum LevelType +{ + + ITEM_LEVEL, + + ENERGY_LEVEL + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/ModSettings.java b/src/api/java/appeng/api/config/ModSettings.java new file mode 100644 index 00000000..9b578dc0 --- /dev/null +++ b/src/api/java/appeng/api/config/ModSettings.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum ModSettings +{ + +} diff --git a/src/api/java/appeng/api/config/NetworkEmitterMode.java b/src/api/java/appeng/api/config/NetworkEmitterMode.java new file mode 100644 index 00000000..19ae7023 --- /dev/null +++ b/src/api/java/appeng/api/config/NetworkEmitterMode.java @@ -0,0 +1,12 @@ +package appeng.api.config; + +public enum NetworkEmitterMode +{ + + POWER_LEVEL, + + BOOTING, + + CHANNEL_ERROR + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/OperationMode.java b/src/api/java/appeng/api/config/OperationMode.java new file mode 100644 index 00000000..f6d80ea5 --- /dev/null +++ b/src/api/java/appeng/api/config/OperationMode.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum OperationMode +{ + FILL, EMPTY +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/OutputMode.java b/src/api/java/appeng/api/config/OutputMode.java new file mode 100644 index 00000000..ebb8cda8 --- /dev/null +++ b/src/api/java/appeng/api/config/OutputMode.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum OutputMode +{ + EXPORT_ONLY, EXPORT_OR_CRAFT, CRAFT_ONLY +} diff --git a/src/api/java/appeng/api/config/PowerMultiplier.java b/src/api/java/appeng/api/config/PowerMultiplier.java new file mode 100644 index 00000000..d1a6800c --- /dev/null +++ b/src/api/java/appeng/api/config/PowerMultiplier.java @@ -0,0 +1,21 @@ +package appeng.api.config; + +public enum PowerMultiplier +{ + ONE, CONFIG; + + /** + * please do not edit this value, it is set when AE loads its config files. + */ + public double multiplier = 1.0; + + public double multiply(double in) + { + return in * multiplier; + } + + public double divide(double in) + { + return in / multiplier; + } +} diff --git a/src/api/java/appeng/api/config/PowerUnits.java b/src/api/java/appeng/api/config/PowerUnits.java new file mode 100644 index 00000000..edcf5d71 --- /dev/null +++ b/src/api/java/appeng/api/config/PowerUnits.java @@ -0,0 +1,42 @@ +package appeng.api.config; + +public enum PowerUnits +{ + AE("gui.appliedenergistics2.units.appliedenergstics"), // Native Units - AE Energy + MJ("gui.appliedenergistics2.units.buildcraft"), // BuildCraft - Minecraft Joules + EU("gui.appliedenergistics2.units.ic2"), // IndustrialCraft 2 - Energy Units + WA("gui.appliedenergistics2.units.rotarycraft"), // RotaryCraft - Watts + RF("gui.appliedenergistics2.units.thermalexpansion"), // ThermalExpansion - Redstone Flux + MK("gui.appliedenergistics2.units.mekanism"); // Mekanism - Joules + + private PowerUnits(String un) { + unlocalizedName = un; + } + + /** + * please do not edit this value, it is set when AE loads its config files. + */ + public double conversionRatio = 1.0; + + /** + * unlocalized name for the power unit. + */ + final public String unlocalizedName; + + /** + * do power conversion using AE's conversion rates. + * + * Example: PowerUnits.EU.convertTo( PowerUnits.AE, 32 ); + * + * will normally returns 64, as it will convert the EU, to AE with AE's power settings. + * + * @param target target power unit + * @param value value + * @return value converted to target units, from this units. + */ + public double convertTo(PowerUnits target, double value) + { + return (value * conversionRatio) / target.conversionRatio; + } + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/RedstoneMode.java b/src/api/java/appeng/api/config/RedstoneMode.java new file mode 100644 index 00000000..91be1156 --- /dev/null +++ b/src/api/java/appeng/api/config/RedstoneMode.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum RedstoneMode +{ + IGNORE, LOW_SIGNAL, HIGH_SIGNAL, SIGNAL_PULSE +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/RelativeDirection.java b/src/api/java/appeng/api/config/RelativeDirection.java new file mode 100644 index 00000000..6b02c3de --- /dev/null +++ b/src/api/java/appeng/api/config/RelativeDirection.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum RelativeDirection +{ + LEFT, RIGHT, UP, DOW +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/SearchBoxMode.java b/src/api/java/appeng/api/config/SearchBoxMode.java new file mode 100644 index 00000000..64fc28f6 --- /dev/null +++ b/src/api/java/appeng/api/config/SearchBoxMode.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum SearchBoxMode +{ + AUTOSEARCH, MANUAL_SEARCH, NEI_AUTOSEARCH, NEI_MANUAL_SEARCH +} diff --git a/src/api/java/appeng/api/config/SecurityPermissions.java b/src/api/java/appeng/api/config/SecurityPermissions.java new file mode 100644 index 00000000..85d35740 --- /dev/null +++ b/src/api/java/appeng/api/config/SecurityPermissions.java @@ -0,0 +1,47 @@ +package appeng.api.config; + +/** + * Represent the security systems basic permissions, these are not for anti-griefing, they are part of the mod as a + * gameplay feature. + */ +public enum SecurityPermissions +{ + /** + * required to insert items into the network via terminal ( also used for machines based on the owner of the + * network, which is determined by its Security Block. ) + */ + INJECT, + + /** + * required to extract items from the network via terminal ( also used for machines based on the owner of the + * network, which is determined by its Security Block. ) + */ + EXTRACT, + + /** + * required to request crafting from the network via terminal. + */ + CRAFT, + + /** + * required to modify automation, and make modifications to the networks physical layout. + */ + BUILD, + + /** + * required to modify the security blocks settings. + */ + SECURITY; + + final private String unlocalizedName = "gui.appliedenergistics2.security." + name().toLowerCase(); + + public String getUnlocalizedName() + { + return unlocalizedName + ".name"; + } + + public String getUnlocalizedTip() + { + return unlocalizedName + ".tip"; + } +} diff --git a/src/api/java/appeng/api/config/Settings.java b/src/api/java/appeng/api/config/Settings.java new file mode 100644 index 00000000..691ad807 --- /dev/null +++ b/src/api/java/appeng/api/config/Settings.java @@ -0,0 +1,46 @@ +package appeng.api.config; + +import java.util.EnumSet; + +public enum Settings +{ + LEVEL_EMITTER_MODE(EnumSet.allOf( LevelEmitterMode.class )), + + REDSTONE_EMITTER(EnumSet.of( RedstoneMode.HIGH_SIGNAL, RedstoneMode.LOW_SIGNAL )), REDSTONE_CONTROLLED(EnumSet.allOf( RedstoneMode.class )), + + CONDENSER_OUTPUT(EnumSet.allOf( CondenserOutput.class )), + + POWER_UNITS(EnumSet.allOf( PowerUnits.class )), ACCESS(EnumSet.of( AccessRestriction.READ_WRITE, AccessRestriction.READ, AccessRestriction.WRITE )), + + SORT_DIRECTION(EnumSet.allOf( SortDir.class )), SORT_BY(EnumSet.allOf( SortOrder.class )), + + SEARCH_TOOLTIPS(EnumSet.of( YesNo.YES, YesNo.NO )), VIEW_MODE(EnumSet.allOf( ViewItems.class )), SEARCH_MODE(EnumSet.allOf( SearchBoxMode.class )), + + ACTIONS(EnumSet.allOf( ActionItems.class )), IO_DIRECTION(EnumSet.of( RelativeDirection.LEFT, RelativeDirection.RIGHT )), + + BLOCK(EnumSet.of( YesNo.YES, YesNo.NO )), OPERATION_MODE(EnumSet.allOf( OperationMode.class )), + + FULLNESS_MODE(EnumSet.allOf( FullnessMode.class )), CRAFT_ONLY(EnumSet.of( YesNo.YES, YesNo.NO )), + + FUZZY_MODE(EnumSet.allOf( FuzzyMode.class )), LEVEL_TYPE(EnumSet.allOf( LevelType.class )), + + TERMINAL_STYLE(EnumSet.of( TerminalStyle.TALL, TerminalStyle.SMALL )), COPY_MODE(EnumSet.allOf( CopyMode.class )), + + INTERFACE_TERMINAL(EnumSet.of( YesNo.YES, YesNo.NO )), CRAFT_VIA_REDSTONE(EnumSet.of( YesNo.YES, YesNo.NO )), + + STORAGE_FILTER(EnumSet.allOf( StorageFilter.class )); + + private EnumSet values; + + public EnumSet getPossibleValues() + { + return values; + } + + private Settings(EnumSet set) { + if ( set == null || set.isEmpty() ) + throw new RuntimeException( "Invalid configuration." ); + values = set; + } + +} diff --git a/src/api/java/appeng/api/config/SortDir.java b/src/api/java/appeng/api/config/SortDir.java new file mode 100644 index 00000000..140393bb --- /dev/null +++ b/src/api/java/appeng/api/config/SortDir.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum SortDir +{ + ASCENDING, DESCENDING +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/SortOrder.java b/src/api/java/appeng/api/config/SortOrder.java new file mode 100644 index 00000000..90d72c96 --- /dev/null +++ b/src/api/java/appeng/api/config/SortOrder.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum SortOrder +{ + NAME, AMOUNT, MOD, INVTWEAKS +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/StorageFilter.java b/src/api/java/appeng/api/config/StorageFilter.java new file mode 100644 index 00000000..3b8f588f --- /dev/null +++ b/src/api/java/appeng/api/config/StorageFilter.java @@ -0,0 +1,10 @@ +package appeng.api.config; + +public enum StorageFilter +{ + + NONE, + + EXTRACTABLE_ONLY + +} diff --git a/src/api/java/appeng/api/config/TerminalStyle.java b/src/api/java/appeng/api/config/TerminalStyle.java new file mode 100644 index 00000000..147aa9c9 --- /dev/null +++ b/src/api/java/appeng/api/config/TerminalStyle.java @@ -0,0 +1,12 @@ +package appeng.api.config; + +public enum TerminalStyle +{ + + TALL, + + FULL, + + SMALL + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/TunnelType.java b/src/api/java/appeng/api/config/TunnelType.java new file mode 100644 index 00000000..f45b9874 --- /dev/null +++ b/src/api/java/appeng/api/config/TunnelType.java @@ -0,0 +1,15 @@ +package appeng.api.config; + +public enum TunnelType +{ + ME, // Network Tunnel + BC_POWER, // MJ Tunnel + IC2_POWER, // EU Tunnel + RF_POWER, // RF Tunnel + REDSTONE, // Redstone Tunnel + FLUID, // Fluid Tunnel + ITEM, // Item Tunnel + LIGHT, // Light Tunnel + BUNDLED_REDSTONE, // Bundled Redstone Tunnel + COMPUTER_MESSAGE // Computer Message Tunnel +} diff --git a/src/api/java/appeng/api/config/Upgrades.java b/src/api/java/appeng/api/config/Upgrades.java new file mode 100644 index 00000000..cd3a2d22 --- /dev/null +++ b/src/api/java/appeng/api/config/Upgrades.java @@ -0,0 +1,39 @@ +package appeng.api.config; + +import java.util.HashMap; + +import net.minecraft.item.ItemStack; + +public enum Upgrades +{ + /** + * Gold Tier Upgrades. + */ + CAPACITY(0), REDSTONE(0), CRAFTING(0), + + /** + * Diamond Tier Upgrades. + */ + FUZZY(1), SPEED(1), INVERTER(1); + + public final int myTier; + public final HashMap supportedMax = new HashMap(); + + private Upgrades(int tier) { + myTier = tier; + } + + /** + * @return list of Items/Blocks that support this upgrade, and how many it supports. + */ + public HashMap getSupported() + { + return supportedMax; + } + + public void registerItem(ItemStack myItem, int maxSupported) + { + if ( myItem != null ) + supportedMax.put( myItem, maxSupported ); + } +} diff --git a/src/api/java/appeng/api/config/ViewItems.java b/src/api/java/appeng/api/config/ViewItems.java new file mode 100644 index 00000000..ffb2e203 --- /dev/null +++ b/src/api/java/appeng/api/config/ViewItems.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum ViewItems +{ + ALL, STORED, CRAFTABLE +} \ No newline at end of file diff --git a/src/api/java/appeng/api/config/YesNo.java b/src/api/java/appeng/api/config/YesNo.java new file mode 100644 index 00000000..ccb35bd5 --- /dev/null +++ b/src/api/java/appeng/api/config/YesNo.java @@ -0,0 +1,6 @@ +package appeng.api.config; + +public enum YesNo +{ + YES, NO, UNDECIDED +} diff --git a/src/api/java/appeng/api/definitions/Blocks.java b/src/api/java/appeng/api/definitions/Blocks.java new file mode 100644 index 00000000..d850e6dc --- /dev/null +++ b/src/api/java/appeng/api/definitions/Blocks.java @@ -0,0 +1,89 @@ +package appeng.api.definitions; + +import appeng.api.util.AEItemDefinition; + +public class Blocks +{ + + /* + * World Gen + */ + public AEItemDefinition blockQuartzOre; + public AEItemDefinition blockQuartzOreCharged; + public AEItemDefinition blockMatrixFrame; + + /* + * Decorative + */ + public AEItemDefinition blockQuartz; + public AEItemDefinition blockQuartzPillar; + public AEItemDefinition blockQuartzChiseled; + public AEItemDefinition blockQuartzGlass; + public AEItemDefinition blockQuartzVibrantGlass; + public AEItemDefinition blockQuartzTorch; + public AEItemDefinition blockFluix; + public AEItemDefinition blockSkyStone; + public AEItemDefinition blockSkyChest; + public AEItemDefinition blockSkyCompass; + + /* + * Misc + */ + public AEItemDefinition blockGrindStone; + public AEItemDefinition blockCrankHandle; + public AEItemDefinition blockInscriber; + public AEItemDefinition blockWireless; + public AEItemDefinition blockCharger; + public AEItemDefinition blockTinyTNT; + public AEItemDefinition blockSecurity; + + /* + * Quantum Network Bridge + */ + public AEItemDefinition blockQuantumRing; + public AEItemDefinition blockQuantumLink; + + /* + * Spatial IO + */ + public AEItemDefinition blockSpatialPylon; + public AEItemDefinition blockSpatialIOPort; + + /* + * Bus / Cables + */ + public AEItemDefinition blockMultiPart; + + /* + * Machines + */ + public AEItemDefinition blockController; + public AEItemDefinition blockDrive; + public AEItemDefinition blockChest; + public AEItemDefinition blockInterface; + public AEItemDefinition blockCellWorkbench; + public AEItemDefinition blockIOPort; + public AEItemDefinition blockCondenser; + public AEItemDefinition blockEnergyAcceptor; + public AEItemDefinition blockVibrationChamber; + public AEItemDefinition blockQuartzGrowthAccelerator; + + public AEItemDefinition blockEnergyCell; + public AEItemDefinition blockEnergyCellDense; + public AEItemDefinition blockEnergyCellCreative; + + // rv1 + public AEItemDefinition blockCraftingUnit; + public AEItemDefinition blockCraftingAccelerator; + public AEItemDefinition blockCraftingStorage1k; + public AEItemDefinition blockCraftingStorage4k; + public AEItemDefinition blockCraftingStorage16k; + public AEItemDefinition blockCraftingStorage64k; + public AEItemDefinition blockCraftingMonitor; + + public AEItemDefinition blockMolecularAssembler; + + public AEItemDefinition blockLightDetector; + public AEItemDefinition blockPaint; + +} diff --git a/src/api/java/appeng/api/definitions/Items.java b/src/api/java/appeng/api/definitions/Items.java new file mode 100644 index 00000000..f0b6a2ab --- /dev/null +++ b/src/api/java/appeng/api/definitions/Items.java @@ -0,0 +1,54 @@ +package appeng.api.definitions; + +import appeng.api.util.AEColoredItemDefinition; +import appeng.api.util.AEItemDefinition; + +public class Items +{ + + public AEItemDefinition itemCertusQuartzAxe; + public AEItemDefinition itemCertusQuartzHoe; + public AEItemDefinition itemCertusQuartzShovel; + public AEItemDefinition itemCertusQuartzPick; + public AEItemDefinition itemCertusQuartzSword; + public AEItemDefinition itemCertusQuartzWrench; + public AEItemDefinition itemCertusQuartzKnife; + + public AEItemDefinition itemNetherQuartzAxe; + public AEItemDefinition itemNetherQuartzHoe; + public AEItemDefinition itemNetherQuartzShovel; + public AEItemDefinition itemNetherQuartzPick; + public AEItemDefinition itemNetherQuartzSword; + public AEItemDefinition itemNetherQuartzWrench; + public AEItemDefinition itemNetherQuartzKnife; + + public AEItemDefinition itemEntropyManipulator; + public AEItemDefinition itemWirelessTerminal; + public AEItemDefinition itemBiometricCard; + public AEItemDefinition itemChargedStaff; + public AEItemDefinition itemMassCannon; + public AEItemDefinition itemMemoryCard; + public AEItemDefinition itemNetworkTool; + public AEItemDefinition itemPortableCell; + + public AEItemDefinition itemCellCreative; + public AEItemDefinition itemViewCell; + + public AEItemDefinition itemCell1k; + public AEItemDefinition itemCell4k; + public AEItemDefinition itemCell16k; + public AEItemDefinition itemCell64k; + + public AEItemDefinition itemSpatialCell2; + public AEItemDefinition itemSpatialCell16; + public AEItemDefinition itemSpatialCell128; + + public AEItemDefinition itemFacade; + public AEItemDefinition itemCrystalSeed; + + // rv1 + public AEItemDefinition itemEncodedPattern; + public AEItemDefinition itemColorApplicator; + public AEColoredItemDefinition itemPaintBall; + public AEColoredItemDefinition itemLumenPaintBall; +} diff --git a/src/api/java/appeng/api/definitions/Materials.java b/src/api/java/appeng/api/definitions/Materials.java new file mode 100644 index 00000000..b6ae52c4 --- /dev/null +++ b/src/api/java/appeng/api/definitions/Materials.java @@ -0,0 +1,80 @@ +package appeng.api.definitions; + +import appeng.api.util.AEItemDefinition; + +public class Materials +{ + + public AEItemDefinition materialCell2SpatialPart; + public AEItemDefinition materialCell16SpatialPart; + public AEItemDefinition materialCell128SpatialPart; + + public AEItemDefinition materialSilicon; + public AEItemDefinition materialSkyDust; + + public AEItemDefinition materialCalcProcessorPress; + public AEItemDefinition materialEngProcessorPress; + public AEItemDefinition materialLogicProcessorPress; + + public AEItemDefinition materialCalcProcessorPrint; + public AEItemDefinition materialEngProcessorPrint; + public AEItemDefinition materialLogicProcessorPrint; + + public AEItemDefinition materialSiliconPress; + public AEItemDefinition materialSiliconPrint; + + public AEItemDefinition materialNamePress; + + public AEItemDefinition materialLogicProcessor; + public AEItemDefinition materialCalcProcessor; + public AEItemDefinition materialEngProcessor; + + public AEItemDefinition materialBasicCard; + public AEItemDefinition materialAdvCard; + + public AEItemDefinition materialPurifiedCertusQuartzCrystal; + public AEItemDefinition materialPurifiedNetherQuartzCrystal; + public AEItemDefinition materialPurifiedFluixCrystal; + + public AEItemDefinition materialCell1kPart; + public AEItemDefinition materialCell4kPart; + public AEItemDefinition materialCell16kPart; + public AEItemDefinition materialCell64kPart; + public AEItemDefinition materialEmptyStorageCell; + + public AEItemDefinition materialCardRedstone; + public AEItemDefinition materialCardSpeed; + public AEItemDefinition materialCardCapacity; + public AEItemDefinition materialCardFuzzy; + public AEItemDefinition materialCardInverter; + public AEItemDefinition materialCardCrafting; + + public AEItemDefinition materialEnderDust; + public AEItemDefinition materialFlour; + public AEItemDefinition materialGoldDust; + public AEItemDefinition materialIronDust; + public AEItemDefinition materialFluixDust; + public AEItemDefinition materialCertusQuartzDust; + public AEItemDefinition materialNetherQuartzDust; + + public AEItemDefinition materialMatterBall; + public AEItemDefinition materialIronNugget; + + public AEItemDefinition materialCertusQuartzCrystal; + public AEItemDefinition materialCertusQuartzCrystalCharged; + public AEItemDefinition materialFluixCrystal; + public AEItemDefinition materialFluixPearl; + + public AEItemDefinition materialWoodenGear; + + public AEItemDefinition materialWireless; + public AEItemDefinition materialWirelessBooster; + + public AEItemDefinition materialAnnihilationCore; + public AEItemDefinition materialFormationCore; + + public AEItemDefinition materialSingularity; + public AEItemDefinition materialQESingularity; + public AEItemDefinition materialBlankPattern; + +} diff --git a/src/api/java/appeng/api/definitions/Parts.java b/src/api/java/appeng/api/definitions/Parts.java new file mode 100644 index 00000000..00d6dad2 --- /dev/null +++ b/src/api/java/appeng/api/definitions/Parts.java @@ -0,0 +1,54 @@ +package appeng.api.definitions; + +import appeng.api.util.AEColoredItemDefinition; +import appeng.api.util.AEItemDefinition; + +public class Parts +{ + + public AEColoredItemDefinition partCableSmart; + public AEColoredItemDefinition partCableCovered; + public AEColoredItemDefinition partCableGlass; + public AEColoredItemDefinition partCableDense; + + public AEColoredItemDefinition partLumenCableSmart; + public AEColoredItemDefinition partLumenCableCovered; + public AEColoredItemDefinition partLumenCableGlass; + public AEColoredItemDefinition partLumenCableDense; + + public AEItemDefinition partQuartzFiber; + public AEItemDefinition partToggleBus; + public AEItemDefinition partInvertedToggleBus; + + public AEItemDefinition partStorageBus; + public AEItemDefinition partImportBus; + public AEItemDefinition partExportBus; + public AEItemDefinition partInterface; + + public AEItemDefinition partLevelEmitter; + + public AEItemDefinition partAnnihilationPlane; + public AEItemDefinition partFormationPlane; + + public AEItemDefinition partP2PTunnelME; + public AEItemDefinition partP2PTunnelRedstone; + public AEItemDefinition partP2PTunnelItems; + public AEItemDefinition partP2PTunnelLiquids; + public AEItemDefinition partP2PTunnelMJ; + public AEItemDefinition partP2PTunnelEU; + public AEItemDefinition partP2PTunnelRF; + public AEItemDefinition partP2PTunnelLight; + + public AEItemDefinition partCableAnchor; + public AEItemDefinition partMonitor; + public AEItemDefinition partSemiDarkMonitor; + public AEItemDefinition partDarkMonitor; + + public AEItemDefinition partInterfaceTerminal; + public AEItemDefinition partPatternTerminal; + public AEItemDefinition partCraftingTerminal; + public AEItemDefinition partTerminal; + public AEItemDefinition partStorageMonitor; + public AEItemDefinition partConversionMonitor; + +} diff --git a/src/api/java/appeng/api/events/LocatableEventAnnounce.java b/src/api/java/appeng/api/events/LocatableEventAnnounce.java new file mode 100644 index 00000000..af9b6f85 --- /dev/null +++ b/src/api/java/appeng/api/events/LocatableEventAnnounce.java @@ -0,0 +1,28 @@ +package appeng.api.events; + +import appeng.api.features.ILocatable; +import cpw.mods.fml.common.eventhandler.Event; + +/** + * Input Event: + * + * Used to Notify the Location Registry of objects, and their availability. + */ +public class LocatableEventAnnounce extends Event +{ + + public enum LocatableEvent + { + Register, // Adds the locatable to the registry + Unregister // Removes the locatable from the registry + } + + final public ILocatable target; + final public LocatableEvent change; + + public LocatableEventAnnounce(ILocatable o, LocatableEvent ev) { + target = o; + change = ev; + } + +} diff --git a/src/api/java/appeng/api/exceptions/AppEngException.java b/src/api/java/appeng/api/exceptions/AppEngException.java new file mode 100644 index 00000000..9c3d9ea9 --- /dev/null +++ b/src/api/java/appeng/api/exceptions/AppEngException.java @@ -0,0 +1,11 @@ +package appeng.api.exceptions; + +public class AppEngException extends Exception +{ + + private static final long serialVersionUID = -9051434206368465494L; + + public AppEngException(String t) { + super( t ); + } +} diff --git a/src/api/java/appeng/api/exceptions/FailedConnection.java b/src/api/java/appeng/api/exceptions/FailedConnection.java new file mode 100644 index 00000000..f4abed64 --- /dev/null +++ b/src/api/java/appeng/api/exceptions/FailedConnection.java @@ -0,0 +1,10 @@ +package appeng.api.exceptions; + +public class FailedConnection extends Exception +{ + + private static final long serialVersionUID = -2544208090248293753L; + + public FailedConnection() { + } +} diff --git a/src/api/java/appeng/api/exceptions/MissingIngredientError.java b/src/api/java/appeng/api/exceptions/MissingIngredientError.java new file mode 100644 index 00000000..51a200a0 --- /dev/null +++ b/src/api/java/appeng/api/exceptions/MissingIngredientError.java @@ -0,0 +1,11 @@ +package appeng.api.exceptions; + +public class MissingIngredientError extends Exception { + + private static final long serialVersionUID = -998858343831371697L; + + public MissingIngredientError(String n) { + super( n ); + } + +} diff --git a/src/api/java/appeng/api/exceptions/ModNotInstalled.java b/src/api/java/appeng/api/exceptions/ModNotInstalled.java new file mode 100644 index 00000000..7744a1fb --- /dev/null +++ b/src/api/java/appeng/api/exceptions/ModNotInstalled.java @@ -0,0 +1,12 @@ +package appeng.api.exceptions; + +public class ModNotInstalled extends Exception +{ + + private static final long serialVersionUID = -9052435206368425494L; + + public ModNotInstalled(String t) { + super( t ); + } + +} diff --git a/src/api/java/appeng/api/exceptions/RecipeError.java b/src/api/java/appeng/api/exceptions/RecipeError.java new file mode 100644 index 00000000..a07f6438 --- /dev/null +++ b/src/api/java/appeng/api/exceptions/RecipeError.java @@ -0,0 +1,12 @@ +package appeng.api.exceptions; + +public class RecipeError extends Exception +{ + + private static final long serialVersionUID = -6602870588617670262L; + + public RecipeError(String n) { + super( n ); + } + +} diff --git a/src/api/java/appeng/api/exceptions/RegistrationError.java b/src/api/java/appeng/api/exceptions/RegistrationError.java new file mode 100644 index 00000000..30592ba0 --- /dev/null +++ b/src/api/java/appeng/api/exceptions/RegistrationError.java @@ -0,0 +1,12 @@ +package appeng.api.exceptions; + +public class RegistrationError extends Exception +{ + + private static final long serialVersionUID = -6602870588617670263L; + + public RegistrationError(String n) { + super( n ); + } + +} diff --git a/src/api/java/appeng/api/features/IGrinderEntry.java b/src/api/java/appeng/api/features/IGrinderEntry.java new file mode 100644 index 00000000..a7549f2f --- /dev/null +++ b/src/api/java/appeng/api/features/IGrinderEntry.java @@ -0,0 +1,96 @@ +package appeng.api.features; + +import net.minecraft.item.ItemStack; + +/** + * Registration Records for {@link IGrinderRegistry} + */ +public interface IGrinderEntry +{ + + /** + * the current input + * + * @return input that the grinder will accept. + */ + public ItemStack getInput(); + + /** + * lets you change the grinder recipe by changing its input. + * + * @param input input item + */ + public void setInput(ItemStack input); + + /** + * gets the current output + * + * @return output that the grinder will produce + */ + public ItemStack getOutput(); + + /** + * gets the current output + * + * @return output that the grinder will produce + */ + public ItemStack getOptionalOutput(); + + /** + * gets the current output + * + * @return output that the grinder will produce + */ + public ItemStack getSecondOptionalOutput(); + + /** + * allows you to change the output. + * + * @param output output item + */ + public void setOutput(ItemStack output); + + /** + * stack, and 0.0-1.0 chance that it will be generated. + * + * @param output output item + * @param chance generation chance + */ + public void setOptionalOutput(ItemStack output, float chance); + + /** + * 0.0 - 1.0 the chance that the optional output will be generated. + * + * @return chance of optional output + */ + public float getOptionalChance(); + + /** + * stack, and 0.0-1.0 chance that it will be generated. + * + * @param output second optional output item + * @param chance second optional output chance + */ + public void setSecondOptionalOutput(ItemStack output, float chance); + + /** + * 0.0 - 1.0 the chance that the optional output will be generated. + * + * @return second optional output chance + */ + public float getSecondOptionalChance(); + + /** + * Energy cost, in turns. + * + * @return number of turns it takes to produce the output from the input. + */ + public int getEnergyCost(); + + /** + * Allows you to adjust the number of turns + * + * @param c number of turns to produce output. + */ + public void setEnergyCost(int c); +} diff --git a/src/api/java/appeng/api/features/IGrinderRegistry.java b/src/api/java/appeng/api/features/IGrinderRegistry.java new file mode 100644 index 00000000..e34a9225 --- /dev/null +++ b/src/api/java/appeng/api/features/IGrinderRegistry.java @@ -0,0 +1,61 @@ +package appeng.api.features; + +import net.minecraft.item.ItemStack; + +import java.util.List; + +/** + * Lets you manipulate Grinder Recipes, by adding or editing existing ones. + */ +public interface IGrinderRegistry +{ + + /** + * Current list of registered recipes, you can modify this if you want too. + * + * @return currentlyRegisteredRecipes + */ + public List getRecipes(); + + /** + * add a new recipe the easy way, in → out, how many turns., duplicates will not be added. + * + * @param in input + * @param out output + * @param turns amount of turns to turn the input into the output + */ + public void addRecipe(ItemStack in, ItemStack out, int turns); + + /** + * add a new recipe with optional outputs, duplicates will not be added. + * + * @param in input + * @param out output + * @param optional optional output + * @param chance chance to get the optional output within 0.0 - 1.0 + * @param turns amount of turns to turn the input into the outputs + */ + void addRecipe(ItemStack in, ItemStack out, ItemStack optional, float chance, int turns); + + /** + * add a new recipe with optional outputs, duplicates will not be added. + * + * @param in input + * @param out output + * @param optional optional output + * @param chance chance to get the optional output within 0.0 - 1.0 + * @param optional2 second optional output + * @param chance2 chance to get the second optional output within 0.0 - 1.0 + * @param turns amount of turns to turn the input into the outputs + */ + void addRecipe(ItemStack in, ItemStack out, ItemStack optional, float chance, ItemStack optional2, float chance2, int turns); + + /** + * Searches for a recipe for a given input, and returns it. + * + * @param input input + * @return identified recipe or null + */ + public IGrinderEntry getRecipeForInput(ItemStack input); + +} diff --git a/src/api/java/appeng/api/features/IItemComparison.java b/src/api/java/appeng/api/features/IItemComparison.java new file mode 100644 index 00000000..856049cc --- /dev/null +++ b/src/api/java/appeng/api/features/IItemComparison.java @@ -0,0 +1,10 @@ +package appeng.api.features; + +public interface IItemComparison +{ + + public boolean sameAsPrecise(IItemComparison comp); + + public boolean sameAsFuzzy(IItemComparison comp); + +} diff --git a/src/api/java/appeng/api/features/IItemComparisonProvider.java b/src/api/java/appeng/api/features/IItemComparisonProvider.java new file mode 100644 index 00000000..6b7a11b1 --- /dev/null +++ b/src/api/java/appeng/api/features/IItemComparisonProvider.java @@ -0,0 +1,30 @@ +package appeng.api.features; + +import net.minecraft.item.ItemStack; + +/** + * Provider for special comparisons. when an item is encountered AE Will request + * if the comparison function handles the item, by trying to request a + * IItemComparison class. + */ +public interface IItemComparisonProvider +{ + + /** + * should return a new IItemComparison, or return null if it doesn't handle + * the supplied item. + * + * @param is item + * @return IItemComparison, or null + */ + IItemComparison getComparison(ItemStack is); + + /** + * Simple test for support ( AE generally skips this and calls the above function. ) + * + * @param stack item + * @return true, if getComparison will return a valid IItemComparison Object + */ + public boolean canHandle(ItemStack stack); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/features/ILocatable.java b/src/api/java/appeng/api/features/ILocatable.java new file mode 100644 index 00000000..e81ff42e --- /dev/null +++ b/src/api/java/appeng/api/features/ILocatable.java @@ -0,0 +1,17 @@ +package appeng.api.features; + +import appeng.api.events.LocatableEventAnnounce; + +/** + * A registration record for the {@link ILocatableRegistry} use the {@link LocatableEventAnnounce} event on the Forge + * Event bus to update the registry. + */ +public interface ILocatable +{ + + /** + * @return the serial for a locatable object + */ + long getLocatableSerial(); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/features/ILocatableRegistry.java b/src/api/java/appeng/api/features/ILocatableRegistry.java new file mode 100644 index 00000000..c07b2300 --- /dev/null +++ b/src/api/java/appeng/api/features/ILocatableRegistry.java @@ -0,0 +1,18 @@ +package appeng.api.features; + +/** + * A Registry for locatable items, works based on serial numbers. + */ +public interface ILocatableRegistry +{ + + /** + * Attempts to find the object with the serial specified, if it can it + * returns the object. + * + * @param serial serial + * @return requestedObject, or null + */ + public abstract Object findLocatableBySerial(long serial); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/features/IMatterCannonAmmoRegistry.java b/src/api/java/appeng/api/features/IMatterCannonAmmoRegistry.java new file mode 100644 index 00000000..18d9683c --- /dev/null +++ b/src/api/java/appeng/api/features/IMatterCannonAmmoRegistry.java @@ -0,0 +1,24 @@ +package appeng.api.features; + +import net.minecraft.item.ItemStack; + +public interface IMatterCannonAmmoRegistry +{ + + /** + * register a new ammo, generally speaking this is based off of atomic weight to make it easier to guess at + * + * @param ammo new ammo + * @param weight atomic weight + */ + void registerAmmo(ItemStack ammo, double weight); + + /** + * get the penetration value for a particular ammo, 0 indicates a non-ammo. + * + * @param is ammo + * @return 0 or a valid penetration value. + */ + float getPenetration(ItemStack is); + +} diff --git a/src/api/java/appeng/api/features/INetworkEncodable.java b/src/api/java/appeng/api/features/INetworkEncodable.java new file mode 100644 index 00000000..2fa66bf9 --- /dev/null +++ b/src/api/java/appeng/api/features/INetworkEncodable.java @@ -0,0 +1,27 @@ +package appeng.api.features; + +import net.minecraft.item.ItemStack; + +public interface INetworkEncodable { + + /** + * Used to get the current key from the item. + * + * @param item item + * @return string key of item + */ + String getEncryptionKey(ItemStack item); + + /** + * Encode the wireless frequency via the Controller. + * + * @param item + * the wireless terminal. + * @param encKey + * the wireless encryption key. + * @param name + * null for now. + */ + void setEncryptionKey(ItemStack item, String encKey, String name); + +} diff --git a/src/api/java/appeng/api/features/IP2PTunnelRegistry.java b/src/api/java/appeng/api/features/IP2PTunnelRegistry.java new file mode 100644 index 00000000..e1c85c71 --- /dev/null +++ b/src/api/java/appeng/api/features/IP2PTunnelRegistry.java @@ -0,0 +1,31 @@ +package appeng.api.features; + +import net.minecraft.item.ItemStack; +import appeng.api.config.TunnelType; + +/** + * A Registry for how p2p Tunnels are attuned + */ +public interface IP2PTunnelRegistry +{ + + /** + * Allows third parties to register items from their mod as potential + * attunements for AE's P2P Tunnels + * + * @param trigger + * - the item which triggers attunement + * @param type + * - the type of tunnel + */ + public abstract void addNewAttunement(ItemStack trigger, TunnelType type); + + /** + * returns null if no attunement can be found. + * + * @param trigger attunement trigger + * @return null if no attunement can be found or attunement + */ + TunnelType getTunnelTypeByItem(ItemStack trigger); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/features/IPlayerRegistry.java b/src/api/java/appeng/api/features/IPlayerRegistry.java new file mode 100644 index 00000000..d52b0a03 --- /dev/null +++ b/src/api/java/appeng/api/features/IPlayerRegistry.java @@ -0,0 +1,32 @@ +package appeng.api.features; + +import net.minecraft.entity.player.EntityPlayer; + +import com.mojang.authlib.GameProfile; + +/** + * Maintains a save specific list of userids and username combinations this greatly simplifies storage internally and + * gives a common place to look up and get IDs for the security framework. + */ +public interface IPlayerRegistry +{ + + /** + * @param gameProfile user game profile + * @return user id of a username. + */ + int getID(GameProfile gameProfile); + + /** + * @param player player + * @return user id of a player entity. + */ + int getID(EntityPlayer player); + + /** + * @param playerID to be found player id + * @return PlayerEntity, or null if the player could not be found. + */ + EntityPlayer findPlayer(int playerID); + +} diff --git a/src/api/java/appeng/api/features/IRecipeHandlerRegistry.java b/src/api/java/appeng/api/features/IRecipeHandlerRegistry.java new file mode 100644 index 00000000..ee8324bb --- /dev/null +++ b/src/api/java/appeng/api/features/IRecipeHandlerRegistry.java @@ -0,0 +1,49 @@ +package appeng.api.features; + +import appeng.api.recipes.ICraftHandler; +import appeng.api.recipes.IRecipeHandler; +import appeng.api.recipes.ISubItemResolver; + +public interface IRecipeHandlerRegistry +{ + + /** + * Add a new Recipe Handler to the parser. + * + * MUST BE CALLED IN PRE-INIT + * + * @param name name of crafthandler + * @param handler class of crafthandler + */ + void addNewCraftHandler(String name, Class handler); + + /** + * Add a new resolver to the parser. + * + * MUST BE CALLED IN PRE-INIT + * + * @param sir sub item resolver + */ + void addNewSubItemResolver(ISubItemResolver sir); + + /** + * @param name name of crafting handler + * @return A recipe handler by name, returns null on failure. + */ + ICraftHandler getCraftHandlerFor(String name); + + /** + * @return a new recipe handler, which can be used to parse, and read recipe files. + */ + public IRecipeHandler createNewRecipehandler(); + + /** + * resolve sub items by name. + * + * @param nameSpace namespace of item + * @param itemName full name of item + * @return ResolverResult or ResolverResultSet + */ + Object resolveItem(String nameSpace, String itemName); + +} diff --git a/src/api/java/appeng/api/features/IRegistryContainer.java b/src/api/java/appeng/api/features/IRegistryContainer.java new file mode 100644 index 00000000..c2a74e7f --- /dev/null +++ b/src/api/java/appeng/api/features/IRegistryContainer.java @@ -0,0 +1,76 @@ +package appeng.api.features; + +import appeng.api.movable.IMovableRegistry; +import appeng.api.networking.IGridCacheRegistry; +import appeng.api.storage.ICellRegistry; +import appeng.api.storage.IExternalStorageRegistry; + +public interface IRegistryContainer +{ + + /** + * Use the movable registry to white list your tiles. + */ + IMovableRegistry movable(); + + /** + * Add new Grid Caches for use during run time, only use during loading phase. + */ + IGridCacheRegistry gridCache(); + + /** + * Add additional storage bus handlers to improve interplay with mod blocks that contains special inventories that + * function unlike vanilla chests. AE uses this internally for barrels, DSU's, quantum chests, AE Networks and more. + */ + IExternalStorageRegistry externalStorage(); + + /** + * Add additional special comparison functionality, AE Uses this internally for Bees. + */ + ISpecialComparisonRegistry specialComparison(); + + /** + * Lets you register your items as wireless terminals + */ + IWirelessTermRegistry wireless(); + + /** + * Allows you to register new cell types, these will function in drives + */ + ICellRegistry cell(); + + /** + * Manage grinder recipes via API + */ + IGrinderRegistry grinder(); + + /** + * get access to the locatable registry + */ + ILocatableRegistry locatable(); + + /** + * get access to the p2p tunnel registry. + */ + IP2PTunnelRegistry p2pTunnel(); + + /** + * get access to the ammo registry. + */ + IMatterCannonAmmoRegistry matterCannon(); + + /** + * get access to the player registry + */ + IPlayerRegistry players(); + + /** + * get access to the ae2 recipe api + */ + IRecipeHandlerRegistry recipes(); + + /** + * get access to the world-gen api. + */ + IWorldGen worldgen(); +} diff --git a/src/api/java/appeng/api/features/ISpecialComparisonRegistry.java b/src/api/java/appeng/api/features/ISpecialComparisonRegistry.java new file mode 100644 index 00000000..c51d85b4 --- /dev/null +++ b/src/api/java/appeng/api/features/ISpecialComparisonRegistry.java @@ -0,0 +1,27 @@ +package appeng.api.features; + +import net.minecraft.item.ItemStack; + +/** + * A Registry of any special comparison handlers for AE To use. + * + */ +public interface ISpecialComparisonRegistry +{ + + /** + * return TheHandler or null. + * + * @param stack item + * @return a handler it found for a specific item + */ + IItemComparison getSpecialComparison(ItemStack stack); + + /** + * Register a new special comparison function with AE. + * + * @param prov comparison provider + */ + public void addComparisonProvider(IItemComparisonProvider prov); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/features/IWirelessTermHandler.java b/src/api/java/appeng/api/features/IWirelessTermHandler.java new file mode 100644 index 00000000..7c29ea48 --- /dev/null +++ b/src/api/java/appeng/api/features/IWirelessTermHandler.java @@ -0,0 +1,46 @@ +package appeng.api.features; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import appeng.api.util.IConfigManager; + +/** + * A handler for a wireless terminal. + */ +public interface IWirelessTermHandler extends INetworkEncodable +{ + + /** + * @param is wireless terminal + * @return true, if usePower, hasPower, etc... can be called for the provided item + */ + boolean canHandle(ItemStack is); + + /** + * use an amount of power, in AE units + * + * @param amount + * is in AE units ( 5 per MJ ), if you return false, the item should be dead and return false for + * hasPower + * @param is wireless terminal + * @return true if wireless terminal uses power + */ + boolean usePower(EntityPlayer player, double amount, ItemStack is); + + /** + * gets the power status of the item. + * + * @param is wireless terminal + * @return returns true if there is any power left. + */ + boolean hasPower(EntityPlayer player, double amount, ItemStack is); + + /** + * Return the config manager for the wireless terminal. + * + * @param is wireless terminal + * @return config manager of wireless terminal + */ + IConfigManager getConfigManager(ItemStack is); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/features/IWirelessTermRegistry.java b/src/api/java/appeng/api/features/IWirelessTermRegistry.java new file mode 100644 index 00000000..9d6d911b --- /dev/null +++ b/src/api/java/appeng/api/features/IWirelessTermRegistry.java @@ -0,0 +1,39 @@ +package appeng.api.features; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; + +/** + * Registration record for a Custom Cell handler. + */ +public interface IWirelessTermRegistry +{ + + /** + * add this handler to the list of other wireless handler. + * + * @param handler wireless handler + */ + void registerWirelessHandler(IWirelessTermHandler handler); + + /** + * @param is item which might have a handler + * @return true if there is a handler for this item + */ + boolean isWirelessTerminal(ItemStack is); + + /** + * @param is item with handler + * @return a register handler for the item in question, or null if there + * isn't one + */ + IWirelessTermHandler getWirelessTerminalHandler(ItemStack is); + + /** + * opens the wireless terminal gui, the wireless terminal item, must be in + * the active slot on the tool bar. + */ + void openWirelessTerminalGui(ItemStack item, World w, EntityPlayer player); + +} diff --git a/src/api/java/appeng/api/features/IWorldGen.java b/src/api/java/appeng/api/features/IWorldGen.java new file mode 100644 index 00000000..cadc56a7 --- /dev/null +++ b/src/api/java/appeng/api/features/IWorldGen.java @@ -0,0 +1,22 @@ +package appeng.api.features; + +import net.minecraft.world.World; +import net.minecraft.world.WorldProvider; + +public interface IWorldGen +{ + + public enum WorldGenType + { + CertusQuartz, ChargedCertusQuartz, Meteorites + } + + public void disableWorldGenForProviderID(WorldGenType type, Class provider); + + public void enableWorldGenForDimension(WorldGenType type, int dimID); + + public void disableWorldGenForDimension(WorldGenType type, int dimID); + + boolean isWorldGenEnabled(WorldGenType type, World w); + +} diff --git a/src/api/java/appeng/api/implementations/ICraftingPatternItem.java b/src/api/java/appeng/api/implementations/ICraftingPatternItem.java new file mode 100644 index 00000000..c3d0a52e --- /dev/null +++ b/src/api/java/appeng/api/implementations/ICraftingPatternItem.java @@ -0,0 +1,22 @@ +package appeng.api.implementations; + +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; +import appeng.api.networking.crafting.ICraftingPatternDetails; + +/** + * Implemented on {@link Item} + */ +public interface ICraftingPatternItem +{ + + /** + * Access Details about a pattern + * + * @param is pattern + * @param w crafting world + * @return details of pattern + */ + ICraftingPatternDetails getPatternForItem(ItemStack is, World w); +} diff --git a/src/api/java/appeng/api/implementations/IPowerChannelState.java b/src/api/java/appeng/api/implementations/IPowerChannelState.java new file mode 100644 index 00000000..b17f9251 --- /dev/null +++ b/src/api/java/appeng/api/implementations/IPowerChannelState.java @@ -0,0 +1,19 @@ +package appeng.api.implementations; + +/** + * This is intended for use on the client side to provide details to WAILA. + */ +public interface IPowerChannelState +{ + + /** + * @return true if the part/tile is powered. + */ + boolean isPowered(); + + /** + * @return true if the part/tile isActive + */ + boolean isActive(); + +} diff --git a/src/api/java/appeng/api/implementations/IUpgradeableHost.java b/src/api/java/appeng/api/implementations/IUpgradeableHost.java new file mode 100644 index 00000000..45a98af1 --- /dev/null +++ b/src/api/java/appeng/api/implementations/IUpgradeableHost.java @@ -0,0 +1,23 @@ +package appeng.api.implementations; + +import appeng.api.util.IConfigurableObject; +import net.minecraft.tileentity.TileEntity; +import appeng.api.config.Upgrades; +import appeng.api.implementations.tiles.ISegmentedInventory; + +public interface IUpgradeableHost extends IConfigurableObject, ISegmentedInventory +{ + + /** + * determine how many of an upgrade are installed. + */ + int getInstalledUpgrades(Upgrades u); + + /** + * the tile... + * + * @return tile entity + */ + TileEntity getTile(); + +} diff --git a/src/api/java/appeng/api/implementations/TransitionResult.java b/src/api/java/appeng/api/implementations/TransitionResult.java new file mode 100644 index 00000000..bc1e5e1f --- /dev/null +++ b/src/api/java/appeng/api/implementations/TransitionResult.java @@ -0,0 +1,16 @@ +package appeng.api.implementations; + +/** + * Defines the result of performing a transition from the world into a storage + * cell, if its possible, and what the energy usage is. + */ +public class TransitionResult +{ + public final boolean success; + public final double energyUsage; + + public TransitionResult(boolean _success, double power) { + success = _success; + energyUsage = power; + } +} diff --git a/src/api/java/appeng/api/implementations/guiobjects/IGuiItem.java b/src/api/java/appeng/api/implementations/guiobjects/IGuiItem.java new file mode 100644 index 00000000..5ee7a832 --- /dev/null +++ b/src/api/java/appeng/api/implementations/guiobjects/IGuiItem.java @@ -0,0 +1,15 @@ +package appeng.api.implementations.guiobjects; + +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; + +/** + * Implemented on Item objects, to return objects used to manage, and interact + * with the contents. + */ +public interface IGuiItem +{ + + IGuiItemObject getGuiObject(ItemStack is, World world, int x, int y, int z); + +} diff --git a/src/api/java/appeng/api/implementations/guiobjects/IGuiItemObject.java b/src/api/java/appeng/api/implementations/guiobjects/IGuiItemObject.java new file mode 100644 index 00000000..1b1dfe64 --- /dev/null +++ b/src/api/java/appeng/api/implementations/guiobjects/IGuiItemObject.java @@ -0,0 +1,9 @@ +package appeng.api.implementations.guiobjects; + +import net.minecraft.item.ItemStack; + +public interface IGuiItemObject +{ + + public ItemStack getItemStack(); +} diff --git a/src/api/java/appeng/api/implementations/guiobjects/INetworkTool.java b/src/api/java/appeng/api/implementations/guiobjects/INetworkTool.java new file mode 100644 index 00000000..b4d19999 --- /dev/null +++ b/src/api/java/appeng/api/implementations/guiobjects/INetworkTool.java @@ -0,0 +1,14 @@ +package appeng.api.implementations.guiobjects; + +import net.minecraft.inventory.IInventory; +import appeng.api.networking.IGridHost; + +/** + * Obtained via {@link IGuiItem} getGuiObject + */ +public interface INetworkTool extends IInventory, IGuiItemObject +{ + + IGridHost getGridHost(); // null for most purposes. + +} diff --git a/src/api/java/appeng/api/implementations/guiobjects/IPortableCell.java b/src/api/java/appeng/api/implementations/guiobjects/IPortableCell.java new file mode 100644 index 00000000..779e741c --- /dev/null +++ b/src/api/java/appeng/api/implementations/guiobjects/IPortableCell.java @@ -0,0 +1,14 @@ +package appeng.api.implementations.guiobjects; + +import appeng.api.networking.energy.IEnergySource; +import appeng.api.storage.IMEMonitor; +import appeng.api.storage.ITerminalHost; +import appeng.api.storage.data.IAEItemStack; + +/** + * Obtained via {@link IGuiItem} getGuiObject + */ +public interface IPortableCell extends ITerminalHost, IMEMonitor, IEnergySource, IGuiItemObject +{ + +} diff --git a/src/api/java/appeng/api/implementations/items/IAEItemPowerStorage.java b/src/api/java/appeng/api/implementations/items/IAEItemPowerStorage.java new file mode 100644 index 00000000..5ab2ac99 --- /dev/null +++ b/src/api/java/appeng/api/implementations/items/IAEItemPowerStorage.java @@ -0,0 +1,48 @@ +package appeng.api.implementations.items; + +import net.minecraft.item.ItemStack; +import appeng.api.config.AccessRestriction; +import appeng.api.networking.energy.IAEPowerStorage; + +/** + * Basically the same as {@link IAEPowerStorage}, but for items. + */ +public interface IAEItemPowerStorage +{ + + /** + * Inject amt, power into the device, it will store what it can, and return + * the amount unable to be stored. + * + * @return amount unable to be stored + */ + public double injectAEPower(ItemStack is, double amt); + + /** + * Attempt to extract power from the device, it will extract what it can and + * return it. + * + * @param amt to be extracted power from device + * @return what it could extract + */ + public double extractAEPower(ItemStack is, double amt); + + /** + * @return the current maximum power ( this can change :P ) + */ + public double getAEMaxPower(ItemStack is); + + /** + * @return the current AE Power Level, this may exceed getMEMaxPower() + */ + public double getAECurrentPower(ItemStack is); + + /** + * Control the power flow by telling what the network can do, either add? or + * subtract? or both! + * + * @return access restriction of network + */ + public AccessRestriction getPowerFlow(ItemStack is); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/implementations/items/IAEWrench.java b/src/api/java/appeng/api/implementations/items/IAEWrench.java new file mode 100644 index 00000000..9f913fa7 --- /dev/null +++ b/src/api/java/appeng/api/implementations/items/IAEWrench.java @@ -0,0 +1,25 @@ +package appeng.api.implementations.items; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; + +/** + * Implemented on AE's wrench(s) as a substitute for if BC's API is not + * available. + */ +public interface IAEWrench +{ + + /** + * Check if the wrench can be used. + * + * @param player wrenching player + * @param x x pos of wrenched block + * @param y y pos of wrenched block + * @param z z pos of wrenched block + * + * @return true if wrench can be used + */ + boolean canWrench(ItemStack wrench, EntityPlayer player, int x, int y, int z); + +} diff --git a/src/api/java/appeng/api/implementations/items/IBiometricCard.java b/src/api/java/appeng/api/implementations/items/IBiometricCard.java new file mode 100644 index 00000000..bbf8f8e5 --- /dev/null +++ b/src/api/java/appeng/api/implementations/items/IBiometricCard.java @@ -0,0 +1,63 @@ +package appeng.api.implementations.items; + +import appeng.api.config.SecurityPermissions; +import appeng.api.features.IPlayerRegistry; +import appeng.api.networking.security.ISecurityRegistry; +import com.mojang.authlib.GameProfile; +import net.minecraft.item.ItemStack; + +import java.util.EnumSet; + +public interface IBiometricCard +{ + + /** + * Set the {@link GameProfile} to null, to clear it. + */ + void setProfile(ItemStack itemStack, GameProfile username); + + /** + * @return {@link GameProfile} of the player encoded on this card, or a blank string. + */ + GameProfile getProfile(ItemStack is); + + /** + * @param itemStack card + * @return the full list of permissions encoded on the card. + */ + EnumSet getPermissions(ItemStack itemStack); + + /** + * Check if a permission is encoded on the card. + * + * @param permission card + * @return true if this permission is set on the card. + */ + boolean hasPermission(ItemStack is, SecurityPermissions permission); + + /** + * remove a permission from the item stack. + * + * @param itemStack card + * @param permission to be removed permission + */ + void removePermission(ItemStack itemStack, SecurityPermissions permission); + + /** + * add a permission to the item stack. + * + * @param itemStack card + * @param permission to be added permission + */ + void addPermission(ItemStack itemStack, SecurityPermissions permission); + + /** + * lets you handle submission of security values on the card for custom behavior. + * + * @param registry security registry + * @param pr player registry + * @param is card + */ + void registerPermissions(ISecurityRegistry registry, IPlayerRegistry pr, ItemStack is); + +} diff --git a/src/api/java/appeng/api/implementations/items/IGrowableCrystal.java b/src/api/java/appeng/api/implementations/items/IGrowableCrystal.java new file mode 100644 index 00000000..391482ee --- /dev/null +++ b/src/api/java/appeng/api/implementations/items/IGrowableCrystal.java @@ -0,0 +1,14 @@ +package appeng.api.implementations.items; + +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.item.ItemStack; + +public interface IGrowableCrystal +{ + + ItemStack triggerGrowth(ItemStack is); + + float getMultiplier(Block blk, Material mat); + +} diff --git a/src/api/java/appeng/api/implementations/items/IItemGroup.java b/src/api/java/appeng/api/implementations/items/IItemGroup.java new file mode 100644 index 00000000..2dce5719 --- /dev/null +++ b/src/api/java/appeng/api/implementations/items/IItemGroup.java @@ -0,0 +1,21 @@ +package appeng.api.implementations.items; + +import net.minecraft.item.ItemStack; + +import java.util.Set; + +/** + * Lets you specify the name of the group of items this falls under. + */ +public interface IItemGroup +{ + + /** + * returning null, is the same as not implementing the interface at all. + * + * @param is item + * @return an unlocalized string to use for the items group name. + */ + String getUnlocalizedGroupName(Set otherItems, ItemStack is); + +} diff --git a/src/api/java/appeng/api/implementations/items/IMemoryCard.java b/src/api/java/appeng/api/implementations/items/IMemoryCard.java new file mode 100644 index 00000000..14692313 --- /dev/null +++ b/src/api/java/appeng/api/implementations/items/IMemoryCard.java @@ -0,0 +1,56 @@ +package appeng.api.implementations.items; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; + +/** + * Memory Card API + * + * AE's Memory Card Item Class implements this interface. + */ +public interface IMemoryCard +{ + + /** + * Configures the data stored on the memory card, the SettingsName, will be + * localized when displayed. + * + * @param is item + * @param SettingsName + * unlocalized string that represents the tile entity. + * @param data + * may contain a String called "tooltip" which is is a + * unlocalized string displayed after the settings name, optional + * but can be used to add details to the card for later. + */ + void setMemoryCardContents(ItemStack is, String SettingsName, NBTTagCompound data); + + /** + * returns the settings name provided by a previous call to + * setMemoryCardContents, or "AppEng.GuiITooltip.Blank" if there was no + * previous call to setMemoryCardContents. + * + * @param is item + * @return setting name + */ + String getSettingsName(ItemStack is); + + /** + * @param is item + * @return the NBT Data previously saved by setMemoryCardContents, or an + * empty NBTCompound + */ + NBTTagCompound getData(ItemStack is); + + /** + * notify the user of a outcome related to the memory card. + * + * @param player + * that used the card. + * @param msg + * which message to send. + */ + void notifyUser(EntityPlayer player, MemoryCardMessages msg); + +} diff --git a/src/api/java/appeng/api/implementations/items/ISpatialStorageCell.java b/src/api/java/appeng/api/implementations/items/ISpatialStorageCell.java new file mode 100644 index 00000000..5aaf997a --- /dev/null +++ b/src/api/java/appeng/api/implementations/items/ISpatialStorageCell.java @@ -0,0 +1,69 @@ +package appeng.api.implementations.items; + +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; +import appeng.api.implementations.TransitionResult; +import appeng.api.util.WorldCoord; + +/** + * Implemented on a {@link Item} + */ +public interface ISpatialStorageCell +{ + + /** + * @param is spatial storage cell + * @return true if this item is a spatial storage cell + */ + boolean isSpatialStorage(ItemStack is); + + /** + * @param is spatial storage cell + * @return the maximum size of the spatial storage cell along any given axis + */ + int getMaxStoredDim(ItemStack is); + + /** + * @param is spatial storage cell + * @return the world for this cell + */ + World getWorld(ItemStack is); + + /** + * get the currently stored size. + * + * @param is spatial storage cell + * @return size of spatial + */ + WorldCoord getStoredSize(ItemStack is); + + /** + * Minimum coordinates in its world for the storage cell. + * + * @param is spatial storage cell + * @return minimum coordinate of dimension + */ + WorldCoord getMin(ItemStack is); + + /** + * Maximum coordinates in its world for the storage cell. + * + * @param is spatial storage cell + * @return maximum coordinate of dimension + */ + WorldCoord getMax(ItemStack is); + + /** + * Perform a spatial swap with the contents of the cell, and the world. + * + * @param is spatial storage cell + * @param w world of spatial + * @param min min coord + * @param max max coord + * @param doTransition transition + * @return result of transition + */ + TransitionResult doSpatialTransition(ItemStack is, World w, WorldCoord min, WorldCoord max, boolean doTransition); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/implementations/items/IStorageCell.java b/src/api/java/appeng/api/implementations/items/IStorageCell.java new file mode 100644 index 00000000..ef0d8420 --- /dev/null +++ b/src/api/java/appeng/api/implementations/items/IStorageCell.java @@ -0,0 +1,82 @@ +package appeng.api.implementations.items; + +import net.minecraft.item.ItemStack; +import appeng.api.storage.ICellWorkbenchItem; +import appeng.api.storage.data.IAEItemStack; + +/** + * Any item which implements this can be treated as an IMEInventory via + * Util.getCell / Util.isCell It automatically handles the internals and NBT + * data, which is both nice, and bad for you! + * + * Good cause it means you don't have to do anything, bad because you have + * little to no control over it. + * + * The standard AE implementation only provides 1-63 Types + * + */ +public interface IStorageCell extends ICellWorkbenchItem +{ + + /** + * If this returns something where N % 8 != 0 Then you will be shot on + * sight, or your car will explode, something like that least... + * + * @param cellItem item + * @return number of bytes + */ + int getBytes(ItemStack cellItem); + + /** + * Determines the number of bytes used for any type included on the cell. + * + * @param cellItem item + * @return number of bytes + */ + int BytePerType(ItemStack cellItem); + + /** + * Must be between 1 and 63, indicates how many types you want to store on + * the item. + * + * @param cellItem item + * @return number of types + */ + int getTotalTypes(ItemStack cellItem); + + /** + * Allows you to fine tune which items are allowed on a given cell, if you + * don't care, just return false; As the handler for this type of cell is + * still the default cells, the normal AE black list is also applied. + * + * @param cellItem item + * @param requestedAddition requested addition + * @return true to preventAdditionOfItem + */ + boolean isBlackListed(ItemStack cellItem, IAEItemStack requestedAddition); + + /** + * Allows you to specify if this storage cell can be stored inside other + * storage cells, only set this for special items like the matter cannon + * that are not general purpose storage. + * + * @return true if the storage cell can be stored inside other storage + * cells, this is generally false, except for certain situations + * such as the matter cannon. + */ + boolean storableInStorageCell(); + + /** + * Allows an item to selectively enable or disable its status as a storage + * cell. + * + * @param i item + * @return if the ItemStack should behavior as a storage cell. + */ + boolean isStorageCell(ItemStack i); + + /** + * @return drain in ae/t this storage cell will use. + */ + double getIdleDrain(); +} diff --git a/src/api/java/appeng/api/implementations/items/IStorageComponent.java b/src/api/java/appeng/api/implementations/items/IStorageComponent.java new file mode 100644 index 00000000..497d2768 --- /dev/null +++ b/src/api/java/appeng/api/implementations/items/IStorageComponent.java @@ -0,0 +1,30 @@ +package appeng.api.implementations.items; + +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; + +/** + * Implemented on a {@link Item} + */ +public interface IStorageComponent +{ + + /** + * This isn't necessarily the same as if you make a storage cell out of it, + * but all of AE's default cells do it that way, its currently only used for + * the condenser. + * + * @param is item + * @return number of bytes + */ + int getBytes(ItemStack is); + + /** + * Just true or false for the item stack. + * + * @param is item + * @return true if item is a storage component + */ + boolean isStorageComponent(ItemStack is); + +} diff --git a/src/api/java/appeng/api/implementations/items/IUpgradeModule.java b/src/api/java/appeng/api/implementations/items/IUpgradeModule.java new file mode 100644 index 00000000..55a8166b --- /dev/null +++ b/src/api/java/appeng/api/implementations/items/IUpgradeModule.java @@ -0,0 +1,15 @@ +package appeng.api.implementations.items; + +import net.minecraft.item.ItemStack; +import appeng.api.config.Upgrades; + +public interface IUpgradeModule +{ + + /** + * @param itemstack item with potential upgrades + * @return null, or a valid upgrade type. + */ + Upgrades getType(ItemStack itemstack); + +} diff --git a/src/api/java/appeng/api/implementations/items/MemoryCardMessages.java b/src/api/java/appeng/api/implementations/items/MemoryCardMessages.java new file mode 100644 index 00000000..6a7f958e --- /dev/null +++ b/src/api/java/appeng/api/implementations/items/MemoryCardMessages.java @@ -0,0 +1,9 @@ +package appeng.api.implementations.items; + +/** + * Status Results for use with {@link IMemoryCard} + */ +public enum MemoryCardMessages +{ + INVALID_MACHINE, SETTINGS_LOADED, SETTINGS_SAVED, SETTINGS_CLEARED +} diff --git a/src/api/java/appeng/api/implementations/parts/IPartCable.java b/src/api/java/appeng/api/implementations/parts/IPartCable.java new file mode 100644 index 00000000..16009ca4 --- /dev/null +++ b/src/api/java/appeng/api/implementations/parts/IPartCable.java @@ -0,0 +1,61 @@ +package appeng.api.implementations.parts; + +import appeng.api.networking.IGridHost; +import appeng.api.parts.BusSupport; +import appeng.api.parts.IPart; +import appeng.api.parts.IPartHost; +import appeng.api.util.AECableType; +import appeng.api.util.AEColor; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraftforge.common.util.ForgeDirection; + +import java.util.EnumSet; + +/** + * Implemented on the {@link IPart}s cable objects that can be placed at {@link ForgeDirection}.UNKNOWN in + * {@link IPartHost}s + */ +public interface IPartCable extends IPart, IGridHost +{ + + /** + * does this cable support buses? + */ + BusSupport supportsBuses(); + + /** + * @return the current color of the cable. + */ + AEColor getCableColor(); + + /** + * @return the Cable type. + */ + AECableType getCableConnectionType(); + + /** + * Change the color of the cable, this should cost a small amount of dye, or something. + * + * @param newColor new color + * @return if the color change was successful. + */ + boolean changeColor(AEColor newColor, EntityPlayer who); + + /** + * Change sides on the cables node. + * + * Called by AE, do not invoke. + * + * @param sides sides of cable + */ + void setValidSides(EnumSet sides); + + /** + * used to tests if a cable connects to neighbors visually. + * + * @param side neighbor side + * @return true if this side is currently connects to an external block. + */ + boolean isConnected(ForgeDirection side); + +} diff --git a/src/api/java/appeng/api/implementations/parts/IPartMonitor.java b/src/api/java/appeng/api/implementations/parts/IPartMonitor.java new file mode 100644 index 00000000..2bf93661 --- /dev/null +++ b/src/api/java/appeng/api/implementations/parts/IPartMonitor.java @@ -0,0 +1,18 @@ +package appeng.api.implementations.parts; + +import appeng.api.networking.IGridHost; +import appeng.api.parts.IPart; + +/** + * Implemented by all screen like parts provided by AE. + */ +public interface IPartMonitor extends IPart, IGridHost +{ + + /** + * @return if the device is online you should check this before providing + * any other information. + */ + boolean isPowered(); + +} diff --git a/src/api/java/appeng/api/implementations/parts/IPartStorageMonitor.java b/src/api/java/appeng/api/implementations/parts/IPartStorageMonitor.java new file mode 100644 index 00000000..44def099 --- /dev/null +++ b/src/api/java/appeng/api/implementations/parts/IPartStorageMonitor.java @@ -0,0 +1,26 @@ +package appeng.api.implementations.parts; + +import appeng.api.networking.IGridHost; +import appeng.api.parts.IPart; +import appeng.api.storage.data.IAEStack; +import appeng.api.util.INetworkToolAgent; + +/** + * The Storage monitor is a {@link IPart} located on the sides of a IPartHost + */ +public interface IPartStorageMonitor extends IPartMonitor, IPart, IGridHost, INetworkToolAgent +{ + + /** + * @return the item being displayed on the storage monitor, in AEStack Form, can be either a IAEItemStack or an + * IAEFluidStack the quantity is important remember to use getStackSize() on the IAEStack, and not on the + * FluidStack/ItemStack acquired from it. + */ + IAEStack getDisplayed(); + + /** + * @return the current locked state of the Storage Monitor + */ + boolean isLocked(); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/implementations/tiles/IChestOrDrive.java b/src/api/java/appeng/api/implementations/tiles/IChestOrDrive.java new file mode 100644 index 00000000..0b1388b9 --- /dev/null +++ b/src/api/java/appeng/api/implementations/tiles/IChestOrDrive.java @@ -0,0 +1,40 @@ +package appeng.api.implementations.tiles; + +import appeng.api.networking.IGridHost; +import appeng.api.storage.ICellContainer; +import appeng.api.util.IOrientable; + +public interface IChestOrDrive extends ICellContainer, IGridHost, IOrientable +{ + + /** + * @return how many slots are available. Chest has 1, Drive has 10. + */ + int getCellCount(); + + /** + * 0 - cell is missing. + * + * 1 - green, + * + * 2 - orange, + * + * 3 - red + * + * @param slot slot index + * @return status of the slot, one of the above indices. + */ + int getCellStatus(int slot); + + /** + * @return if the device is online you should check this before providing any other information. + */ + boolean isPowered(); + + /** + * @param slot slot index + * @return is the cell currently blinking to show activity. + */ + boolean isCellBlinking(int slot); + +} diff --git a/src/api/java/appeng/api/implementations/tiles/IColorableTile.java b/src/api/java/appeng/api/implementations/tiles/IColorableTile.java new file mode 100644 index 00000000..03874ae2 --- /dev/null +++ b/src/api/java/appeng/api/implementations/tiles/IColorableTile.java @@ -0,0 +1,14 @@ +package appeng.api.implementations.tiles; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraftforge.common.util.ForgeDirection; +import appeng.api.util.AEColor; + +public interface IColorableTile +{ + + AEColor getColor(); + + boolean recolourBlock(ForgeDirection side, AEColor colour, EntityPlayer who); + +} diff --git a/src/api/java/appeng/api/implementations/tiles/ICraftingMachine.java b/src/api/java/appeng/api/implementations/tiles/ICraftingMachine.java new file mode 100644 index 00000000..2f6071f5 --- /dev/null +++ b/src/api/java/appeng/api/implementations/tiles/ICraftingMachine.java @@ -0,0 +1,29 @@ +package appeng.api.implementations.tiles; + +import net.minecraft.inventory.InventoryCrafting; +import net.minecraftforge.common.util.ForgeDirection; +import appeng.api.networking.crafting.ICraftingPatternDetails; + +public interface ICraftingMachine +{ + + /** + * inserts a crafting plan, and the necessary items into the crafting machine. + * + * @param patternDetails details of pattern + * @param table crafting table + * @param ejectionDirection ejection direction + * + * @return if it was accepted, all or nothing. + */ + boolean pushPattern(ICraftingPatternDetails patternDetails, InventoryCrafting table, ForgeDirection ejectionDirection); + + /** + * check if the crafting machine is accepting pushes via pushPattern, if this is false, all calls to push will fail, + * you can try inserting into the inventory instead. + * + * @return true, if pushPattern can complete, if its false push will always be false. + */ + boolean acceptsPlans(); + +} diff --git a/src/api/java/appeng/api/implementations/tiles/ICrankable.java b/src/api/java/appeng/api/implementations/tiles/ICrankable.java new file mode 100644 index 00000000..b709e23d --- /dev/null +++ b/src/api/java/appeng/api/implementations/tiles/ICrankable.java @@ -0,0 +1,35 @@ +package appeng.api.implementations.tiles; + +import net.minecraftforge.common.util.ForgeDirection; + +/** + * Crank/Crankable API, + * + * Tiles that Implement this can receive power, from the crank, and have the + * crank placed on them. + * + * Tiles that access other tiles that implement this method can act as Cranks. + * + * This interface must be implemented by a tile entity. + */ +public interface ICrankable +{ + + /** + * Test if the crank can turn, return false if there is no work to be done. + * + * @return if crank should be allowed to turn. + */ + boolean canTurn(); + + /** + * The crank has completed one turn. + */ + void applyTurn(); + + /** + * @return true if the crank can attach on the given side. + */ + boolean canCrankAttach(ForgeDirection directionToCrank); + +} diff --git a/src/api/java/appeng/api/implementations/tiles/ICrystalGrowthAccelerator.java b/src/api/java/appeng/api/implementations/tiles/ICrystalGrowthAccelerator.java new file mode 100644 index 00000000..a9cccf8c --- /dev/null +++ b/src/api/java/appeng/api/implementations/tiles/ICrystalGrowthAccelerator.java @@ -0,0 +1,8 @@ +package appeng.api.implementations.tiles; + +public interface ICrystalGrowthAccelerator +{ + + boolean isPowered(); + +} diff --git a/src/api/java/appeng/api/implementations/tiles/IMEChest.java b/src/api/java/appeng/api/implementations/tiles/IMEChest.java new file mode 100644 index 00000000..71a7ec3a --- /dev/null +++ b/src/api/java/appeng/api/implementations/tiles/IMEChest.java @@ -0,0 +1,8 @@ +package appeng.api.implementations.tiles; + +import appeng.api.networking.energy.IEnergySource; + +public interface IMEChest extends IChestOrDrive, ITileStorageMonitorable, IEnergySource +{ + +} diff --git a/src/api/java/appeng/api/implementations/tiles/ISegmentedInventory.java b/src/api/java/appeng/api/implementations/tiles/ISegmentedInventory.java new file mode 100644 index 00000000..b985b044 --- /dev/null +++ b/src/api/java/appeng/api/implementations/tiles/ISegmentedInventory.java @@ -0,0 +1,17 @@ +package appeng.api.implementations.tiles; + +import net.minecraft.inventory.IInventory; + +public interface ISegmentedInventory +{ + + /** + * Access an internal inventory, note, not all inventories contain real items, some may be ghost items, and treating + * them a real inventories will result in duplication. + * + * @param name inventory name + * @return inventory with inventory name + */ + IInventory getInventoryByName(String name); + +} diff --git a/src/api/java/appeng/api/implementations/tiles/ITileStorageMonitorable.java b/src/api/java/appeng/api/implementations/tiles/ITileStorageMonitorable.java new file mode 100644 index 00000000..f6ef62fb --- /dev/null +++ b/src/api/java/appeng/api/implementations/tiles/ITileStorageMonitorable.java @@ -0,0 +1,15 @@ +package appeng.api.implementations.tiles; + +import net.minecraftforge.common.util.ForgeDirection; +import appeng.api.networking.security.BaseActionSource; +import appeng.api.storage.IStorageMonitorable; + +/** + * Implemented on inventories that can share their inventories with other networks, best example, ME Interface. + */ +public interface ITileStorageMonitorable +{ + + IStorageMonitorable getMonitorable(ForgeDirection side, BaseActionSource src); + +} diff --git a/src/api/java/appeng/api/implementations/tiles/IViewCellStorage.java b/src/api/java/appeng/api/implementations/tiles/IViewCellStorage.java new file mode 100644 index 00000000..ab926a4e --- /dev/null +++ b/src/api/java/appeng/api/implementations/tiles/IViewCellStorage.java @@ -0,0 +1,15 @@ +package appeng.api.implementations.tiles; + +import net.minecraft.inventory.IInventory; + +public interface IViewCellStorage +{ + + /** + * should contains at least 5 slot, the first 5 + * + * @return inventory with at least 5 slot + */ + IInventory getViewCellStorage(); + +} diff --git a/src/api/java/appeng/api/implementations/tiles/IWirelessAccessPoint.java b/src/api/java/appeng/api/implementations/tiles/IWirelessAccessPoint.java new file mode 100644 index 00000000..bd9ed9a0 --- /dev/null +++ b/src/api/java/appeng/api/implementations/tiles/IWirelessAccessPoint.java @@ -0,0 +1,30 @@ +package appeng.api.implementations.tiles; + +import appeng.api.networking.IGrid; +import appeng.api.networking.security.IActionHost; +import appeng.api.util.DimensionalCoord; + +public interface IWirelessAccessPoint extends IActionHost +{ + + /** + * @return location of WAP + */ + DimensionalCoord getLocation(); + + /** + * @return max range for this WAP + */ + double getRange(); + + /** + * @return can you use this WAP? + */ + boolean isActive(); + + /** + * @return grid of linked WAP + */ + IGrid getGrid(); + +} diff --git a/src/api/java/appeng/api/integration/IBeeComparison.java b/src/api/java/appeng/api/integration/IBeeComparison.java new file mode 100644 index 00000000..ab1ccb44 --- /dev/null +++ b/src/api/java/appeng/api/integration/IBeeComparison.java @@ -0,0 +1,20 @@ +package appeng.api.integration; + +/** + * An interface to get access to the individual settings for AE's Internal Bee + * Comparison handler. + * + * Assessable via: ( IBeeComparison ) + * IAEItemStack.getTagCompound().getSpecialComparison() + * + * If you don't have the forestry API, just delete this file when using the API. + */ +public interface IBeeComparison +{ + + /** + * @return the Forestry IIndividual for this comparison object - cast this to a IIndividual if you want to use it. + */ + Object getIndividual(); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/movable/IMovableHandler.java b/src/api/java/appeng/api/movable/IMovableHandler.java new file mode 100644 index 00000000..78817bb0 --- /dev/null +++ b/src/api/java/appeng/api/movable/IMovableHandler.java @@ -0,0 +1,44 @@ +package appeng.api.movable; + +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.World; + +public interface IMovableHandler +{ + + /** + * if you return true from this, your saying you can handle the class, not + * that single entity, you cannot opt out of single entities. + * + * @param myClass tile entity class + * @param tile tile entity + * @return true if it can handle moving + */ + boolean canHandle(Class myClass, TileEntity tile); + + /** + * request that the handler move the the tile from its current location to + * the new one. the tile has already been invalidated, and the blocks have + * already been fully moved. + * + * Potential Example: + * + *
+	 * {@code
+	 * Chunk c = world.getChunkFromBlockCoords( x, z ); c.setChunkBlockTileEntity( x
+	 * & 0xF, y + y, z & 0xF, tile );
+	 * 
+	 * if ( c.isChunkLoaded ) { world.addTileEntity( tile ); world.markBlockForUpdate( x,
+	 * y, z ); }
+	 * }
+	 * 
+ * + * @param tile to be moved tile + * @param world world of tile + * @param x x coord of tile + * @param y y coord of tile + * @param z z coord of tile + */ + void moveTile(TileEntity tile, World world, int x, int y, int z); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/movable/IMovableRegistry.java b/src/api/java/appeng/api/movable/IMovableRegistry.java new file mode 100644 index 00000000..6a0d4a9f --- /dev/null +++ b/src/api/java/appeng/api/movable/IMovableRegistry.java @@ -0,0 +1,97 @@ +package appeng.api.movable; + +import net.minecraft.block.Block; +import net.minecraft.tileentity.TileEntity; + +/** + * Used to determine if a tile is marked as movable, a block will be considered movable, if... + * + * 1. The Tile or its super classes have been white listed with whiteListTileEntity. + * + * 2. The Tile has been register with the IMC ( which basically calls whiteListTileEntity. ) + * + * 3. The Tile implements IMovableTile 4. A IMovableHandler is register that returns canHandle = true for the Tile + * Entity Class + * + * IMC Example: FMLInterModComms.sendMessage( "appliedenergistics2", "movabletile", "appeng.common.AppEngTile" ); + * + * The movement process is as follows, + * + * 1. IMovableTile.prepareToMove() or TileEntity.invalidate() depending on your opt-in method. 2. The tile will be + * removed from the world. 3. Its world, coordinates will be changed. *** this can be overridden with a IMovableHandler + * *** 4. It will then be re-added to the world, or a new world. 5. TileEntity.validate() 6. IMovableTile.doneMoving ( + * if you implemented IMovableTile ) + * + * Please note, this is a 100% white list only feature, I will never opt in any non-vanilla, non-AE blocks. If you do + * not want to support your tiles being moved, you don't have to do anything. + * + * I appreciate anyone that takes the effort to get their tiles to work with this system to create a better use + * experience. + * + * If you need a build of deobf build of AE for testing, do not hesitate to ask. + */ +public interface IMovableRegistry +{ + + /** + * Black list a block from movement, please only use this to prevent exploits. + * + * You can also use the IMC, FMLInterModComms.sendMessage( "appliedenergistics2", "whitelist-spatial", + * "appeng.common.AppEngTile" ); + * + * @param blk block + */ + void blacklistBlock(Block blk); + + /** + * White list your tile entity with the registry. + * + * You can also use the IMC, FMLInterModComms.sendMessage( "appliedenergistics2", "blacklist-block-spatial", new + * ItemStack(...) ); + * + * If you tile is handled with IMovableHandler or IMovableTile you do not need to white list it. + */ + void whiteListTileEntity(Class c); + + /** + * @param te to be moved tile entity + * @return true if the tile has accepted your request to move it + */ + boolean askToMove(TileEntity te); + + /** + * tells the tile you are done moving it. + * + * @param te moved tile entity + */ + void doneMoving(TileEntity te); + + /** + * add a new handler movable handler. + * + * @param handler moving handler + */ + void addHandler(IMovableHandler handler); + + /** + * handlers are used to perform movement, this allows you to override AE's internal version. + * + * only valid after askToMove(...) = true + * + * @param te tile entity + * @return moving handler of tile entity + */ + IMovableHandler getHandler(TileEntity te); + + /** + * @return a copy of the default handler + */ + IMovableHandler getDefaultHandler(); + + /** + * @param blk block + * @return true if this block is blacklisted + */ + boolean isBlacklisted(Block blk); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/movable/IMovableTile.java b/src/api/java/appeng/api/movable/IMovableTile.java new file mode 100644 index 00000000..9139a41b --- /dev/null +++ b/src/api/java/appeng/api/movable/IMovableTile.java @@ -0,0 +1,23 @@ +package appeng.api.movable; + +/** + * You can implement this, or use the IMovableRegistry to white list your tile, + * please see the registry for more information. + */ +public interface IMovableTile +{ + + /** + * notification that your block will be moved, called instead of invalidate, + * return false to prevent movement. + * + * @return false to prevent movement + */ + boolean prepareToMove(); + + /** + * notification that your block was moved, called after validate. + */ + void doneMoving(); + +} diff --git a/src/api/java/appeng/api/networking/GridFlags.java b/src/api/java/appeng/api/networking/GridFlags.java new file mode 100644 index 00000000..6351ee95 --- /dev/null +++ b/src/api/java/appeng/api/networking/GridFlags.java @@ -0,0 +1,45 @@ +package appeng.api.networking; + +/** + * Various flags to determine network node behavior. + */ +public enum GridFlags +{ + /** + * import/export buses, terminals, and other devices that use network features, will use this setting. + */ + REQUIRE_CHANNEL, + + /** + * P2P ME tunnels use this setting. + */ + COMPRESSED_CHANNEL, + + /** + * cannot carry channels over this node. + */ + CANNOT_CARRY, + + /** + * Used by P2P Tunnels to prevent tunnels from tunneling recursively. + */ + CANNOT_CARRY_COMPRESSED, + + /** + * This node can transmit 32 signals, this should only apply to Tier2 Cable, P2P Tunnels, and Quantum Network + * Bridges. + */ + DENSE_CAPACITY, + + /** + * This block is part of a multiblock, used in conjunction with REQUIRE_CHANNEL, and {@link IGridMultiblock} see this + * interface for details. + */ + MULTIBLOCK, + + /** + * Indicates which path might be preferred, this only matters if two routes of equal length exist, ad only changes + * the order they are processed in. + */ + PREFERRED +} diff --git a/src/api/java/appeng/api/networking/GridNotification.java b/src/api/java/appeng/api/networking/GridNotification.java new file mode 100644 index 00000000..78c4d19d --- /dev/null +++ b/src/api/java/appeng/api/networking/GridNotification.java @@ -0,0 +1,9 @@ +package appeng.api.networking; + +public enum GridNotification +{ + /** + * the visible connections for this node have changed, useful for cable. + */ + ConnectionsChanged, +} diff --git a/src/api/java/appeng/api/networking/IGrid.java b/src/api/java/appeng/api/networking/IGrid.java new file mode 100644 index 00000000..72c61154 --- /dev/null +++ b/src/api/java/appeng/api/networking/IGrid.java @@ -0,0 +1,71 @@ +package appeng.api.networking; + +import appeng.api.networking.events.MENetworkEvent; +import appeng.api.util.IReadOnlyCollection; + +/** + * Gives you access to Grid based information. + * + * Don't Implement. + */ +public interface IGrid +{ + + /** + * Get Access to various grid modules + * + * @param iface face + * @return the IGridCache you requested. + */ + public C getCache(Class iface); + + /** + * Post an event into the network event bus. + * + * @param ev + * - event to post + * @return returns ev back to original poster + */ + public MENetworkEvent postEvent(MENetworkEvent ev); + + /** + * Post an event into the network event bus, but direct it at a single node. + * + * @param ev + * event to post + * @return returns ev back to original poster + */ + public MENetworkEvent postEventTo(IGridNode node, MENetworkEvent ev); + + /** + * get a list of the diversity of classes, you can use this to better detect which machines your interested in, + * rather then iterating the entire grid to test them. + * + * @return IReadOnlyCollection of all available host types (Of Type IGridHost). + */ + public IReadOnlyCollection> getMachinesClasses(); + + /** + * Get machines on the network. + * + * @param gridHostClass class of the grid host + * @return IMachineSet of all nodes belonging to hosts of specified class. + */ + public IMachineSet getMachines(Class gridHostClass); + + /** + * @return IReadOnlyCollection for all nodes on the network, node visitors are preferred. + */ + IReadOnlyCollection getNodes(); + + /** + * @return true if the last node has been removed from the grid. + */ + public boolean isEmpty(); + + /** + * @return the node considered the pivot point of the grid. + */ + public IGridNode getPivot(); + +} diff --git a/src/api/java/appeng/api/networking/IGridBlock.java b/src/api/java/appeng/api/networking/IGridBlock.java new file mode 100644 index 00000000..a8d7df17 --- /dev/null +++ b/src/api/java/appeng/api/networking/IGridBlock.java @@ -0,0 +1,89 @@ +package appeng.api.networking; + +import appeng.api.parts.IPart; +import appeng.api.util.AEColor; +import appeng.api.util.DimensionalCoord; +import net.minecraft.item.ItemStack; +import net.minecraftforge.common.util.ForgeDirection; + +import java.util.EnumSet; + +/** + * An Implementation is required to create your node for IGridHost + * + * Implement for use with IGridHost + */ +public interface IGridBlock +{ + + /** + * how much power to drain per tick as part of idle network usage. + * + * if the value of this changes, you must post a MENetworkPowerIdleChange + * + * @return ae/t to use. + */ + double getIdlePowerUsage(); + + /** + * Various flags that AE uses to modify basic behavior for various parts of the network. + * + * @return Set of flags for this IGridBlock + */ + EnumSet getFlags(); + + /** + * generally speaking you will return true for this, the one exception is buses, or worm holes where the node + * represents something that isn't a real connection in the world, but rather one represented internally to the + * block. + * + * @return if the world can connect to this node, and the node can connect to the world. + */ + boolean isWorldAccessible(); + + /** + * @return current location of this node + */ + DimensionalCoord getLocation(); + + /** + * @return Transparent, or a valid color, NULL IS NOT A VALID RETURN + */ + AEColor getGridColor(); + + /** + * Notifies your IGridBlock that changes were made to your connections + */ + void onGridNotification(GridNotification notification); + + /** + * Update Blocks network/connection/booting status. grid, + * + * @param grid grid + * @param channelsInUse used channels + */ + public void setNetworkStatus(IGrid grid, int channelsInUse); + + /** + * Determine which sides of the block can be connected too, only used when isWorldAccessible returns true, not used + * for {@link IPart} implementations. + */ + EnumSet getConnectableSides(); + + /** + * @return the IGridHost for the node, this will be an IGridPart or a TileEntity generally speaking. + */ + IGridHost getMachine(); + + /** + * called when the grid for the node has changed, the general grid state should not be trusted at this point. + */ + void gridChanged(); + + /** + * Determines what item stack is used to render this node in the GUI. + * + * @return the render item stack to use to render this node, null is valid, and will not show this node. + */ + public ItemStack getMachineRepresentation(); +} diff --git a/src/api/java/appeng/api/networking/IGridCache.java b/src/api/java/appeng/api/networking/IGridCache.java new file mode 100644 index 00000000..f920d5ae --- /dev/null +++ b/src/api/java/appeng/api/networking/IGridCache.java @@ -0,0 +1,71 @@ +package appeng.api.networking; + +/** + * + * Allows you to create a network wise service, AE2 uses these for providing + * item, spatial, and tunnel services. + * + * Any Class that implements this, should have a public default constructor that + * takes a single argument of type IGrid. + * + */ +public interface IGridCache +{ + + /** + * Called each tick for the network, allows you to have active network wide + * behaviors. + * + */ + void onUpdateTick(); + + /** + * inform your cache, that a machine was removed from the grid. + * + * Important: Do not trust the grids state in this method, interact only + * with the node you are passed, if you need to manage other grid + * information, do it on the next updateTick. + * + * @param gridNode removed from that grid + * @param machine to be removed machine + */ + void removeNode(IGridNode gridNode, IGridHost machine); + + /** + * informs you cache that a machine was added to the grid. + * + * Important: Do not trust the grids state in this method, interact only + * with the node you are passed, if you need to manage other grid + * information, do it on the next updateTick. + * + * @param gridNode added to grid node + * @param machine to be added machine + */ + void addNode(IGridNode gridNode, IGridHost machine); + + /** + * Called when a grid splits into two grids, AE will call a split as it + * Iteratively processes changes. The destination should receive half, and + * the current cache should receive half. + * + * @param destinationStorage storage which receives half of old grid + */ + void onSplit(IGridStorage destinationStorage); + + /** + * Called when two grids merge into one, AE will call a join as it + * Iteratively processes changes. Use this method to incorporate all the + * data from the source into your cache. + * + * @param sourceStorage old storage + */ + void onJoin(IGridStorage sourceStorage); + + /** + * Called when saving changes, + * + * @param destinationStorage storage + */ + void populateGridStorage(IGridStorage destinationStorage); + +} diff --git a/src/api/java/appeng/api/networking/IGridCacheRegistry.java b/src/api/java/appeng/api/networking/IGridCacheRegistry.java new file mode 100644 index 00000000..8061f8cb --- /dev/null +++ b/src/api/java/appeng/api/networking/IGridCacheRegistry.java @@ -0,0 +1,27 @@ +package appeng.api.networking; + +import java.util.HashMap; + +/** + * A registry of grid caches to extend grid functionality. + */ +public interface IGridCacheRegistry +{ + + /** + * Register a new grid cache for use during operation, must be called during the loading phase. + * + * @param iface grid cache class + */ + void registerGridCache(Class iface, Class implementation); + + /** + * requests a new instance of a grid cache for use, used internally + * + * @param grid grid + * + * @return a new HashMap of IGridCaches from the registry, called from IGrid when constructing a new grid. + */ + HashMap, IGridCache> createCacheInstance(IGrid grid); + +} diff --git a/src/api/java/appeng/api/networking/IGridConnection.java b/src/api/java/appeng/api/networking/IGridConnection.java new file mode 100644 index 00000000..9d5bb666 --- /dev/null +++ b/src/api/java/appeng/api/networking/IGridConnection.java @@ -0,0 +1,58 @@ +package appeng.api.networking; + +import net.minecraftforge.common.util.ForgeDirection; + +/** + * Access to AE's internal grid connections. + * + * Messing with connection is generally completely unnecessary, you should be able to just use IGridNode.updateState() + * to have AE manage them for you. + * + * Don't Implement. + */ +public interface IGridConnection +{ + + /** + * lets you get the opposing node of the connection by passing your own node. + * + * @param gridNode current grid node + * @return the IGridNode which represents the opposite side of the connection. + */ + IGridNode getOtherSide(IGridNode gridNode); + + /** + * determine the direction of the connection based on your node. + * + * @param gridNode current grid node + * @return the direction of the connection, only valid for in world connections. + */ + ForgeDirection getDirection(IGridNode gridNode); + + /** + * by destroying a connection you may create new grids, and trigger un-expected behavior, you should only destroy + * connections if you created them. + */ + void destroy(); + + /** + * @return node A + */ + IGridNode a(); + + /** + * @return node B + */ + IGridNode b(); + + /** + * @return if the connection is invisible this returns false + */ + boolean hasDirection(); + + /** + * @return how many channels pass over this connections. + */ + int getUsedChannels(); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/networking/IGridConnectionVisitor.java b/src/api/java/appeng/api/networking/IGridConnectionVisitor.java new file mode 100644 index 00000000..d79ce670 --- /dev/null +++ b/src/api/java/appeng/api/networking/IGridConnectionVisitor.java @@ -0,0 +1,14 @@ +package appeng.api.networking; + +public interface IGridConnectionVisitor extends IGridVisitor +{ + + /** + * Called for each connection on the network. + * + * @param n + * the connection. + */ + public void visitConnection(IGridConnection n); + +} diff --git a/src/api/java/appeng/api/networking/IGridHost.java b/src/api/java/appeng/api/networking/IGridHost.java new file mode 100644 index 00000000..4af28c9a --- /dev/null +++ b/src/api/java/appeng/api/networking/IGridHost.java @@ -0,0 +1,43 @@ +package appeng.api.networking; + +import net.minecraft.tileentity.TileEntity; +import net.minecraftforge.common.util.ForgeDirection; +import appeng.api.parts.IPart; +import appeng.api.util.AECableType; + +/** + * + * Implement to create a networked {@link TileEntity} or {@link IPart} must + * be implemented for a part, or tile entity to become part of a grid. + * + */ +public interface IGridHost +{ + + /** + * get the grid node for a particular side of a block, you can return null, + * by returning a valid node later and calling updateState, you can join the + * Grid when your block is ready. + * + * @param dir + * feel free to ignore this, most blocks will use the same node + * for every side. + * @return a new IGridNode, create these with + * AEApi.instance().createGridNode( MyIGridBlock ) + */ + public IGridNode getGridNode(ForgeDirection dir); + + /** + * Determines how cables render when they connect to this block. Priority is + * Smart > Covered > Glass + * + * @param dir direction + */ + public AECableType getCableConnectionType(ForgeDirection dir); + + /** + * break this host, its violating security rules, just break your block, or part. + */ + public void securityBreak(); + +} diff --git a/src/api/java/appeng/api/networking/IGridMultiblock.java b/src/api/java/appeng/api/networking/IGridMultiblock.java new file mode 100644 index 00000000..83f580e7 --- /dev/null +++ b/src/api/java/appeng/api/networking/IGridMultiblock.java @@ -0,0 +1,20 @@ +package appeng.api.networking; + +import java.util.Iterator; + +/** + * An extension of IGridBlock, only means something when your getFlags() contains REQUIRE_CHANNEL, when done properly it + * will call the method to get a list of all related nodes and give each of them a channel simultaneously for the entire + * set. This means your entire Multiblock can work with a single channel, instead of one channel per block. + */ +public interface IGridMultiblock extends IGridBlock +{ + + /** + * Used to acquire a list of all nodes that are part of the multiblock. + * + * @return an iterator that will iterate all the nodes for the multiblock. ( read-only iterator expected. ) + */ + Iterator getMultiblockNodes(); + +} diff --git a/src/api/java/appeng/api/networking/IGridNode.java b/src/api/java/appeng/api/networking/IGridNode.java new file mode 100644 index 00000000..21bd2c20 --- /dev/null +++ b/src/api/java/appeng/api/networking/IGridNode.java @@ -0,0 +1,141 @@ +package appeng.api.networking; + +import appeng.api.IAppEngApi; +import appeng.api.util.IReadOnlyCollection; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; + +import java.util.EnumSet; + +/** + * + * Gives you a view into your Nodes connections and information. + * + * updateState, getGrid, destroy are required to implement a proper IGridHost. + * + * Don't Implement; Acquire from {@link IAppEngApi}.createGridNode + * + */ +public interface IGridNode +{ + + /** + * lets you walk the grid stating at the current node using a IGridVisitor, generally not needed, please use only if + * required. + * + * @param visitor visitor + */ + void beginVisit(IGridVisitor visitor); + + /** + * inform the node that your IGridBlock has changed its internal state, and force the node to update. + * + * ALWAYS make sure that your tile entity is in the world, and has its node properly saved to be returned from the + * host before updating state, + * + * If your entity is not in the world, or if you IGridHost returns a different node for the same side you will + * likely crash the game. + * + */ + void updateState(); + + /** + * get the machine represented by the node. + * + * @return grid host + */ + IGridHost getMachine(); + + /** + * get the grid for the node, this can change at a moments notice. + * + * @return grid + */ + IGrid getGrid(); + + /** + * By destroying your node, you destroy any connections, and its existence in the grid, use in invalidate, or + * onChunkUnload + */ + void destroy(); + + /** + * @return the world the node is located in + */ + World getWorld(); + + /** + * + * @return a set of the connected sides, UNKNOWN represents an invisible connection + */ + EnumSet getConnectedSides(); + + /** + * lets you iterate a nodes connections + * + * @return grid connections + */ + IReadOnlyCollection getConnections(); + + /** + * @return the IGridBlock for this node + */ + IGridBlock getGridBlock(); + + /** + * Reflects the networks status, returns true only if the network is powered, and the network is not booting, this + * also takes into account channels. + * + * @return true if is Network node active, and participating. + */ + boolean isActive(); + + /** + * this should be called for each node you create, if you have a nodeData compound to load from, you can store all + * your nods on a single compound using name. + * + * Important: You must call this before updateState. + * + * @param name nbt name + * @param nodeData to be loaded data + */ + void loadFromNBT(String name, NBTTagCompound nodeData); + + /** + * this should be called for each node you maintain, you can save all your nodes to the same tag with different + * names, if you fail to complete the load / save procedure, network state may be lost between game load/saves. + * + * @param name nbt name + * @param nodeData to be saved data + */ + void saveToNBT(String name, NBTTagCompound nodeData); + + /** + * @return if the node's channel requirements are currently met, use this for display purposes, use isActive for + * status. + */ + boolean meetsChannelRequirements(); + + /** + * see if this node has a certain flag + * + * @param flag flags + * @return true if has flag + */ + boolean hasFlag(GridFlags flag); + + /** + * tell the node who was responsible for placing it, failure to do this may result in in-compatibility with the + * security system. Called instead of loadFromNBT when initially placed, once set never required again, the value is saved with the Node NBT. + * + * @param playerID new player id + */ + void setPlayerID(int playerID); + + /** + * @return the ownerID this represents the person who placed the node. + */ + int getPlayerID(); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/networking/IGridStorage.java b/src/api/java/appeng/api/networking/IGridStorage.java new file mode 100644 index 00000000..c4c7c1e7 --- /dev/null +++ b/src/api/java/appeng/api/networking/IGridStorage.java @@ -0,0 +1,18 @@ +package appeng.api.networking; + +import net.minecraft.nbt.NBTTagCompound; + +public interface IGridStorage +{ + + /** + * @return an NBTTagCompound that can be read, and written too. + */ + NBTTagCompound dataObject(); + + /** + * @return the id for this grid storage object, used internally + */ + long getID(); + +} diff --git a/src/api/java/appeng/api/networking/IGridVisitor.java b/src/api/java/appeng/api/networking/IGridVisitor.java new file mode 100644 index 00000000..2593160f --- /dev/null +++ b/src/api/java/appeng/api/networking/IGridVisitor.java @@ -0,0 +1,21 @@ +package appeng.api.networking; + +/** + * Simple Visitor pattern access to network nodes. + */ +public interface IGridVisitor +{ + + /** + * Called for each node on the network. + * + * By returning false your informing the host to stop visiting nodes beyond the current node. + * + * @param n + * the current node. + * + * @return true to continue visiting nodes beyond this node. + */ + public boolean visitNode(IGridNode n); + +} diff --git a/src/api/java/appeng/api/networking/IMachineSet.java b/src/api/java/appeng/api/networking/IMachineSet.java new file mode 100644 index 00000000..080eeb2b --- /dev/null +++ b/src/api/java/appeng/api/networking/IMachineSet.java @@ -0,0 +1,13 @@ +package appeng.api.networking; + +import appeng.api.util.IReadOnlyCollection; + +public interface IMachineSet extends IReadOnlyCollection +{ + + /** + * @return the machine class for this set. + */ + Class getMachineClass(); + +} diff --git a/src/api/java/appeng/api/networking/crafting/CraftingItemList.java b/src/api/java/appeng/api/networking/crafting/CraftingItemList.java new file mode 100644 index 00000000..1b2db3a2 --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/CraftingItemList.java @@ -0,0 +1,6 @@ +package appeng.api.networking.crafting; + +public enum CraftingItemList +{ + ALL, STORAGE, ACTIVE, PENDING +} diff --git a/src/api/java/appeng/api/networking/crafting/ICraftingCPU.java b/src/api/java/appeng/api/networking/crafting/ICraftingCPU.java new file mode 100644 index 00000000..0f00e53a --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/ICraftingCPU.java @@ -0,0 +1,35 @@ +package appeng.api.networking.crafting; + +import appeng.api.networking.security.BaseActionSource; +import appeng.api.networking.storage.IBaseMonitor; +import appeng.api.storage.data.IAEItemStack; + +public interface ICraftingCPU extends IBaseMonitor +{ + + /** + * @return true if the CPU currently has a job. + */ + boolean isBusy(); + + /** + * @return the action source for the CPU. + */ + BaseActionSource getActionSource(); + + /** + * @return the available storage in bytes + */ + long getAvailableStorage(); + + /** + * @return the number of co-processors in the CPU. + */ + int getCoProcessors(); + + /** + * @return an empty string or the name of the cpu. + */ + String getName(); + +} diff --git a/src/api/java/appeng/api/networking/crafting/ICraftingCallback.java b/src/api/java/appeng/api/networking/crafting/ICraftingCallback.java new file mode 100644 index 00000000..e61ae2cc --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/ICraftingCallback.java @@ -0,0 +1,14 @@ +package appeng.api.networking.crafting; + +public interface ICraftingCallback +{ + + /** + * this call back is synchronized with the world you passed. + * + * @param job + * - final job + */ + public void calculationComplete(ICraftingJob job); + +} diff --git a/src/api/java/appeng/api/networking/crafting/ICraftingGrid.java b/src/api/java/appeng/api/networking/crafting/ICraftingGrid.java new file mode 100644 index 00000000..8ac1dc83 --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/ICraftingGrid.java @@ -0,0 +1,84 @@ +package appeng.api.networking.crafting; + +import appeng.api.networking.IGrid; +import appeng.api.networking.IGridCache; +import appeng.api.networking.security.BaseActionSource; +import appeng.api.storage.data.IAEItemStack; +import com.google.common.collect.ImmutableCollection; +import com.google.common.collect.ImmutableSet; +import net.minecraft.world.World; + +import java.util.concurrent.Future; + +public interface ICraftingGrid extends IGridCache +{ + + /** + * @param whatToCraft requested craft + * @param world crafting world + * @param slot slot index + * @param details pattern details + * @return a collection of crafting patterns for the item in question. + */ + ImmutableCollection getCraftingFor(IAEItemStack whatToCraft, ICraftingPatternDetails details, int slot, World world); + + /** + * Begin calculating a crafting job. + * + * @param world crafting world + * @param grid network + * @param actionSrc source + * @param craftWhat result + * @param callback callback + * -- optional + * + * @return a future which will at an undetermined point in the future get you the {@link ICraftingJob} do not wait + * on this, your be waiting forever. + */ + Future beginCraftingJob(World world, IGrid grid, BaseActionSource actionSrc, IAEItemStack craftWhat, ICraftingCallback callback); + + /** + * Submit the job to the Crafting system for processing. + * + * @param job + * - the crafting job from beginCraftingJob + * @param requestingMachine + * - a machine if its being requested via automation, may be null. + * @param target + * - can be null + * + * @param prioritizePower + * - if cpu is null, this determine if the system should prioritize power, or if it should find the lower + * end cpus, automatic processes generally should pick lower end cpus. + * + * @param src + * - the action source to use when starting the job, this will be used for extracting items, should + * usually be the same as the one provided to beginCraftingJob. + * + * @return null ( if failed ) or an {@link ICraftingLink} other wise, if you send requestingMachine you need to + * properly keep track of this and handle the nbt saving and loading of the object as well as the + * {@link ICraftingRequester} methods. if you send null, this object should be discarded after verifying the + * return state. + */ + ICraftingLink submitJob(ICraftingJob job, ICraftingRequester requestingMachine, ICraftingCPU target, boolean prioritizePower, BaseActionSource src); + + /** + * @return list of all the crafting cpus on the grid + */ + ImmutableSet getCpus(); + + /** + * @param what to be requested item + * @return true if the item can be requested via a crafting emitter. + */ + boolean canEmitFor(IAEItemStack what); + + /** + * is this item being crafted? + * + * @param aeStackInSlot item being crafted + * @return true if it is being crafting + */ + boolean isRequesting(IAEItemStack aeStackInSlot); + +} diff --git a/src/api/java/appeng/api/networking/crafting/ICraftingJob.java b/src/api/java/appeng/api/networking/crafting/ICraftingJob.java new file mode 100644 index 00000000..8eeb29eb --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/ICraftingJob.java @@ -0,0 +1,33 @@ +package appeng.api.networking.crafting; + +import appeng.api.storage.data.IAEItemStack; +import appeng.api.storage.data.IItemList; + +public interface ICraftingJob +{ + + /** + * @return if this job is a simulation, simulations cannot be submitted and only represent 1 possible future + * crafting job with fake items. + */ + boolean isSimulation(); + + /** + * @return total number of bytes to process this job. + */ + long getByteTotal(); + + /** + * Populates the plan list with stack size, and requestable values that represent the stored, and crafting job + * contents respectively. + * + * @param plan plan + */ + void populatePlan(IItemList plan); + + /** + * @return the final output of the job. + */ + IAEItemStack getOutput(); + +} diff --git a/src/api/java/appeng/api/networking/crafting/ICraftingLink.java b/src/api/java/appeng/api/networking/crafting/ICraftingLink.java new file mode 100644 index 00000000..be7f4f38 --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/ICraftingLink.java @@ -0,0 +1,40 @@ +package appeng.api.networking.crafting; + +import net.minecraft.nbt.NBTTagCompound; + +public interface ICraftingLink +{ + + /** + * @return true if the job was canceled. + */ + boolean isCanceled(); + + /** + * @return true if the job was completed. + */ + boolean isDone(); + + /** + * cancels the job. + */ + void cancel(); + + /** + * @return true if this link was generated without a requesting machine, such as a player generated request. + */ + boolean isStandalone(); + + /** + * write the link to an NBT Tag + * + * @param tag to be written data + */ + void writeToNBT(NBTTagCompound tag); + + /** + * @return the crafting ID for this link. + */ + String getCraftingID(); + +} diff --git a/src/api/java/appeng/api/networking/crafting/ICraftingMedium.java b/src/api/java/appeng/api/networking/crafting/ICraftingMedium.java new file mode 100644 index 00000000..b84e7937 --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/ICraftingMedium.java @@ -0,0 +1,26 @@ +package appeng.api.networking.crafting; + +import net.minecraft.inventory.InventoryCrafting; + +/** + * A place to send Items for crafting purposes, this is considered part of AE's External crafting system. + */ +public interface ICraftingMedium +{ + + /** + * instruct a medium to create the item represented by the pattern+details, the items on the table, and where if + * possible the output should be directed. + * + * @param patternDetails details + * @param table crafting table + * @return if the pattern was successfully pushed. + */ + boolean pushPattern(ICraftingPatternDetails patternDetails, InventoryCrafting table); + + /** + * @return if this is false, the crafting engine will refuse to send new jobs to this medium. + */ + boolean isBusy(); + +} diff --git a/src/api/java/appeng/api/networking/crafting/ICraftingPatternDetails.java b/src/api/java/appeng/api/networking/crafting/ICraftingPatternDetails.java new file mode 100644 index 00000000..0fb4eb34 --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/ICraftingPatternDetails.java @@ -0,0 +1,83 @@ +package appeng.api.networking.crafting; + +import net.minecraft.inventory.InventoryCrafting; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; +import appeng.api.implementations.ICraftingPatternItem; +import appeng.api.storage.data.IAEItemStack; + +/** + * do not implement provided by {@link ICraftingPatternItem} + * + * caching this instance will increase performance of validation and checks. + */ +public interface ICraftingPatternDetails +{ + + /** + * @return source item. + */ + ItemStack getPattern(); + + /** + * @param slotIndex specific slot index + * @param itemStack item in slot + * @param world crafting world + * + * @return if an item can be used in the specific slot for this pattern. + */ + boolean isValidItemForSlot(int slotIndex, ItemStack itemStack, World world); + + /** + * @return if this pattern is a crafting pattern ( work bench ) + */ + boolean isCraftable(); + + /** + * @return a list of the inputs, will include nulls. + */ + IAEItemStack[] getInputs(); + + /** + * @return a list of the inputs, will be clean + */ + IAEItemStack[] getCondensedInputs(); + + /** + * @return a list of the outputs, will be clean + */ + IAEItemStack[] getCondensedOutputs(); + + /** + * @return a list of the outputs, will include nulls. + */ + IAEItemStack[] getOutputs(); + + /** + * @return if this pattern is enabled to support substitutions. + */ + boolean canSubstitute(); + + /** + * Allow using this instance of the pattern details to preform the crafting action with performance enhancements. + * + * @param craftingInv inventory + * @param world crafting world + * @return the crafted ( work bench ) item. + */ + ItemStack getOutput(InventoryCrafting craftingInv, World world); + + /** + * Set the priority the of this pattern. + * + * @param priority priority of pattern + */ + void setPriority(int priority); + + /** + * Get the priority of this pattern + * + * @return the priority of this pattern + */ + int getPriority(); +} diff --git a/src/api/java/appeng/api/networking/crafting/ICraftingProvider.java b/src/api/java/appeng/api/networking/crafting/ICraftingProvider.java new file mode 100644 index 00000000..edd05177 --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/ICraftingProvider.java @@ -0,0 +1,19 @@ +package appeng.api.networking.crafting; + +import appeng.api.networking.events.MENetworkCraftingPatternChange; + +/** + * Allows a IGridHost to provide crafting patterns to the network, post a {@link MENetworkCraftingPatternChange} to tell + * AE2 to update. + */ +public interface ICraftingProvider extends ICraftingMedium +{ + + /** + * called when the network is looking for possible crafting jobs. + * + * @param craftingTracker crafting helper + */ + void provideCrafting(ICraftingProviderHelper craftingTracker); + +} diff --git a/src/api/java/appeng/api/networking/crafting/ICraftingProviderHelper.java b/src/api/java/appeng/api/networking/crafting/ICraftingProviderHelper.java new file mode 100644 index 00000000..f31a01a8 --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/ICraftingProviderHelper.java @@ -0,0 +1,21 @@ +package appeng.api.networking.crafting; + +import appeng.api.storage.data.IAEItemStack; + +/** + * Passed to a ICraftingProvider as a interface to manipulate the available crafting jobs. + */ +public interface ICraftingProviderHelper +{ + + /** + * Add new Pattern to AE's crafting cache. + */ + void addCraftingOption(ICraftingMedium medium, ICraftingPatternDetails api); + + /** + * Set an item can Emitable + */ + void setEmitable(IAEItemStack what); + +} diff --git a/src/api/java/appeng/api/networking/crafting/ICraftingRequester.java b/src/api/java/appeng/api/networking/crafting/ICraftingRequester.java new file mode 100644 index 00000000..0f29bdcf --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/ICraftingRequester.java @@ -0,0 +1,37 @@ +package appeng.api.networking.crafting; + +import appeng.api.config.Actionable; +import appeng.api.networking.security.IActionHost; +import appeng.api.storage.data.IAEItemStack; + +import com.google.common.collect.ImmutableSet; + +public interface ICraftingRequester extends IActionHost +{ + + /** + * called when the host is added to the grid, and should return all crafting links it poses so they can be connected + * with the cpu that hosts the job. + * + * @return set of jobs, or an empty list. + */ + ImmutableSet getRequestedJobs(); + + /** + * items are injected into the requester as they are completed, any items that cannot be taken, or are unwanted can + * be returned. + * + * @param items item + * @param mode action mode + * @return unwanted item + */ + IAEItemStack injectCraftedItems(ICraftingLink link, IAEItemStack items, Actionable mode); + + /** + * called when the job changes from in progress, to either complete, or canceled. + * + * after this call the crafting link is "dead" and should be discarded. + */ + void jobStateChange(ICraftingLink link); + +} diff --git a/src/api/java/appeng/api/networking/crafting/ICraftingWatcher.java b/src/api/java/appeng/api/networking/crafting/ICraftingWatcher.java new file mode 100644 index 00000000..64cffd3e --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/ICraftingWatcher.java @@ -0,0 +1,10 @@ +package appeng.api.networking.crafting; + +import java.util.Collection; + +import appeng.api.storage.data.IAEStack; + +public interface ICraftingWatcher extends Collection +{ + +} diff --git a/src/api/java/appeng/api/networking/crafting/ICraftingWatcherHost.java b/src/api/java/appeng/api/networking/crafting/ICraftingWatcherHost.java new file mode 100644 index 00000000..b5ae4384 --- /dev/null +++ b/src/api/java/appeng/api/networking/crafting/ICraftingWatcherHost.java @@ -0,0 +1,24 @@ +package appeng.api.networking.crafting; + +import appeng.api.storage.data.IAEItemStack; + +public interface ICraftingWatcherHost +{ + + /** + * provides the ICraftingWatcher for this host, for the current network, is called when the hot changes networks. + * You do not need to clear your old watcher, its already been removed by the time this gets called. + * + * @param newWatcher crafting watcher for this host + */ + void updateWatcher(ICraftingWatcher newWatcher); + + /** + * Called when a crafting status changes. + * + * @param craftingGrid current crafting grid + * @param what change + */ + void onRequestChange(ICraftingGrid craftingGrid, IAEItemStack what); + +} diff --git a/src/api/java/appeng/api/networking/energy/IAEPowerStorage.java b/src/api/java/appeng/api/networking/energy/IAEPowerStorage.java new file mode 100644 index 00000000..a97c5e60 --- /dev/null +++ b/src/api/java/appeng/api/networking/energy/IAEPowerStorage.java @@ -0,0 +1,47 @@ +package appeng.api.networking.energy; + +import appeng.api.config.AccessRestriction; +import appeng.api.config.Actionable; + +/** + * Used to access information about AE's various power accepting blocks for monitoring purposes. + */ +public interface IAEPowerStorage extends IEnergySource +{ + + /** + * Inject amt, power into the device, it will store what it can, and return the amount unable to be stored. + * + * @param amt to be injected amount + * @param mode action mode + * + * @return amount of power which was unable to be stored + */ + public double injectAEPower(double amt, Actionable mode); + + /** + * @return the current maximum power ( this can change :P ) + */ + public double getAEMaxPower(); + + /** + * @return the current AE Power Level, this may exceed getMEMaxPower() + */ + public double getAECurrentPower(); + + /** + * Checked on network reset to see if your block can be used as a public power storage ( use getPowerFlow to control + * the behavior ) + * + * @return true if it can be used as a public power storage + */ + public boolean isAEPublicPowerStorage(); + + /** + * Control the power flow by telling what the network can do, either add? or subtract? or both! + * + * @return access restriction what the network can do + */ + public AccessRestriction getPowerFlow(); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/networking/energy/IEnergyGrid.java b/src/api/java/appeng/api/networking/energy/IEnergyGrid.java new file mode 100644 index 00000000..38f9bbd1 --- /dev/null +++ b/src/api/java/appeng/api/networking/energy/IEnergyGrid.java @@ -0,0 +1,82 @@ +package appeng.api.networking.energy; + +import appeng.api.config.Actionable; +import appeng.api.networking.IGridCache; +import appeng.api.networking.events.MENetworkPowerStatusChange; + +/** + * AE's Power system. + */ +public interface IEnergyGrid extends IGridCache, IEnergySource, IEnergyGridProvider +{ + + /** + * @return the current calculated idle energy drain each tick, is used internally to drain power for each tick. + */ + public double getIdlePowerUsage(); + + /** + * @return the average power drain over the past 10 ticks, includes idle usage during this time, and all use of + * extractPower. + */ + public double getAvgPowerUsage(); + + /** + * @return the average energy injected into the system per tick, for the last 10 ticks. + */ + public double getAvgPowerInjection(); + + /** + * AE maintains an idle draw of power separate from active power draw, it condenses this into a single operation + * that determines the networks "powered state" if the network is considered off-line, your machines should not + * function. + * + * {@link MENetworkPowerStatusChange} events are posted when this value changes if you need to be notified of the + * change, most machines can simply test the value when they operate. + * + * @return if the network is powered or not. + */ + public boolean isNetworkPowered(); + + /** + * AE will accept any power, and store it, to maintain sanity please don't send more then 10,000 at a time. + * + * IMPORTANT: Network power knows no bounds, for less spamy power flow, networks can store more then their allotted + * storage, however, it should be kept to a minimum, to help with this, this method returns the networks current + * OVERFLOW, this is not energy you can store some where else, its already stored in the network, you can extract it + * if you want, however it it owned by the network, this is different then IAEEnergyStore + * + * Another important note, is that if a network that had overflow is deleted, its power is gone, this is one of the + * reasons why keeping overflow to a minimum is important. + * + * @param amt + * power to inject into the network + * @param mode + * should the action be simulated or performed? + * @return the amount of power that the network has OVER the limit. + */ + public double injectPower(double amt, Actionable mode); + + /** + * this is should be considered an estimate, and not relied upon for real calculations. + * + * @return estimated available power. + */ + public double getStoredPower(); + + /** + * this is should be considered an estimate, and not relied upon for real calculations. + * + * @return estimated available power. + */ + double getMaxStoredPower(); + + /** + * Calculation will be capped at maxRequired, this improves performance by limiting the number of nodes needed to + * calculate the demand. + * + * @return Amount of power required to charge the grid, in AE. + */ + public double getEnergyDemand(double maxRequired); + +} diff --git a/src/api/java/appeng/api/networking/energy/IEnergyGridProvider.java b/src/api/java/appeng/api/networking/energy/IEnergyGridProvider.java new file mode 100644 index 00000000..a7412630 --- /dev/null +++ b/src/api/java/appeng/api/networking/energy/IEnergyGridProvider.java @@ -0,0 +1,28 @@ +package appeng.api.networking.energy; + +import java.util.Set; + +import appeng.api.config.Actionable; + +/** + * internal use only. + */ +public interface IEnergyGridProvider +{ + + /** + * internal use only + */ + public double extractAEPower(double amt, Actionable mode, Set seen); + + /** + * internal use only + */ + public double injectAEPower(double amt, Actionable mode, Set seen); + + /** + * internal use only + */ + public double getEnergyDemand(double d, Set seen); + +} diff --git a/src/api/java/appeng/api/networking/energy/IEnergySource.java b/src/api/java/appeng/api/networking/energy/IEnergySource.java new file mode 100644 index 00000000..52a8c272 --- /dev/null +++ b/src/api/java/appeng/api/networking/energy/IEnergySource.java @@ -0,0 +1,18 @@ +package appeng.api.networking.energy; + +import appeng.api.config.Actionable; +import appeng.api.config.PowerMultiplier; + +public interface IEnergySource +{ + + /** + * Extract power from the network. + * + * @param amt extracted power + * @param mode should the action be simulated or performed? + * @return returns extracted power. + */ + public double extractAEPower(double amt, Actionable mode, PowerMultiplier usePowerMultiplier); + +} diff --git a/src/api/java/appeng/api/networking/energy/IEnergyWatcher.java b/src/api/java/appeng/api/networking/energy/IEnergyWatcher.java new file mode 100644 index 00000000..20e7a8ec --- /dev/null +++ b/src/api/java/appeng/api/networking/energy/IEnergyWatcher.java @@ -0,0 +1,8 @@ +package appeng.api.networking.energy; + +import java.util.Collection; + +public interface IEnergyWatcher extends Collection +{ + +} diff --git a/src/api/java/appeng/api/networking/energy/IEnergyWatcherHost.java b/src/api/java/appeng/api/networking/energy/IEnergyWatcherHost.java new file mode 100644 index 00000000..775380ca --- /dev/null +++ b/src/api/java/appeng/api/networking/energy/IEnergyWatcherHost.java @@ -0,0 +1,21 @@ +package appeng.api.networking.energy; + +public interface IEnergyWatcherHost +{ + + /** + * provides the IEnergyWatcher for this host, for the current network, is called when the hot changes networks. You + * do not need to clear your old watcher, its already been removed by the time this gets called. + * + * @param newWatcher new watcher + */ + void updateWatcher(IEnergyWatcher newWatcher); + + /** + * Called when a threshold is crossed. + * + * @param energyGrid grid + */ + void onThresholdPass(IEnergyGrid energyGrid); + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkBootingStatusChange.java b/src/api/java/appeng/api/networking/events/MENetworkBootingStatusChange.java new file mode 100644 index 00000000..284c64e4 --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkBootingStatusChange.java @@ -0,0 +1,14 @@ +package appeng.api.networking.events; + +import appeng.api.networking.IGridNode; + +/** + * Posted by the network when the booting status of the network goes up + * or down, the change is reflected via {@link IGridNode}.isActive() + * + * Note: Most machines just need to check {@link IGridNode}.isActive() + */ +public class MENetworkBootingStatusChange extends MENetworkEvent +{ + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkCellArrayUpdate.java b/src/api/java/appeng/api/networking/events/MENetworkCellArrayUpdate.java new file mode 100644 index 00000000..aec90e78 --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkCellArrayUpdate.java @@ -0,0 +1,15 @@ +package appeng.api.networking.events; + +/** + * Posted by storage devices to inform AE to refresh its storage structure. + * + * This is done in cases such as a storage cell being removed or added to a + * drive. + * + * you do not need to send this event when your node is added / removed from the + * grid. + */ +public class MENetworkCellArrayUpdate extends MENetworkEvent +{ + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkChannelChanged.java b/src/api/java/appeng/api/networking/events/MENetworkChannelChanged.java new file mode 100644 index 00000000..bce30749 --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkChannelChanged.java @@ -0,0 +1,18 @@ +package appeng.api.networking.events; + +import appeng.api.networking.IGridNode; + +/** + * Posted by storage devices to inform AE the channel cache that the included node has changed its mind about its + * channel requirements. + */ +public class MENetworkChannelChanged extends MENetworkEvent +{ + + public final IGridNode node; + + public MENetworkChannelChanged(IGridNode n) { + node = n; + } + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkChannelsChanged.java b/src/api/java/appeng/api/networking/events/MENetworkChannelsChanged.java new file mode 100644 index 00000000..ebfed6cb --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkChannelsChanged.java @@ -0,0 +1,13 @@ +package appeng.api.networking.events; + +import appeng.api.networking.IGridHost; + +/** + * Posted to the {@link IGridHost} when the channels on the node connections are altered. + * + * Never posted IGridCaches. + */ +public class MENetworkChannelsChanged extends MENetworkEvent +{ + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkControllerChange.java b/src/api/java/appeng/api/networking/events/MENetworkControllerChange.java new file mode 100644 index 00000000..97db1648 --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkControllerChange.java @@ -0,0 +1,11 @@ +package appeng.api.networking.events; + +/** + * Event posted when the networks controller state changes, this can be from no + * controller to 1 controller, or any time the network changes from conflicted + * to not conflicted. + */ +public class MENetworkControllerChange extends MENetworkEvent +{ + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkCraftingCpuChange.java b/src/api/java/appeng/api/networking/events/MENetworkCraftingCpuChange.java new file mode 100644 index 00000000..a52eab52 --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkCraftingCpuChange.java @@ -0,0 +1,14 @@ +package appeng.api.networking.events; + +import appeng.api.networking.IGridNode; + +public class MENetworkCraftingCpuChange extends MENetworkEvent +{ + + public final IGridNode node; + + public MENetworkCraftingCpuChange(IGridNode n) { + node = n; + } + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkCraftingPatternChange.java b/src/api/java/appeng/api/networking/events/MENetworkCraftingPatternChange.java new file mode 100644 index 00000000..13f735fd --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkCraftingPatternChange.java @@ -0,0 +1,17 @@ +package appeng.api.networking.events; + +import appeng.api.networking.IGridNode; +import appeng.api.networking.crafting.ICraftingProvider; + +public class MENetworkCraftingPatternChange extends MENetworkEvent +{ + + public final ICraftingProvider provider; + public final IGridNode node; + + public MENetworkCraftingPatternChange(ICraftingProvider p, IGridNode n) { + provider = p; + node = n; + } + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkEvent.java b/src/api/java/appeng/api/networking/events/MENetworkEvent.java new file mode 100644 index 00000000..34a2731d --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkEvent.java @@ -0,0 +1,53 @@ +package appeng.api.networking.events; + +import appeng.api.networking.IGrid; + +/** + * Part of AE's Event Bus. + * + * Posted via {@link IGrid}.postEvent or {@link IGrid}.postEventTo + */ +public class MENetworkEvent +{ + + private int visited = 0; + private boolean canceled = false; + + /** + * Call to prevent AE from posting the event to any further objects. + */ + public void cancel() + { + canceled = true; + } + + /** + * called by AE after each object is called to cancel any future calls. + * + * @return true to cancel future calls + */ + public boolean isCanceled() + { + return canceled; + } + + /** + * the number of objects that were visited by the event. + * + * @return number of visitors + */ + public int getVisitedObjects() + { + return visited; + } + + /** + * Called by AE after iterating the event subscribers. + * + * @param v current number of visitors + */ + public void setVisitedObjects(int v) + { + visited = v; + } +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkEventSubscribe.java b/src/api/java/appeng/api/networking/events/MENetworkEventSubscribe.java new file mode 100644 index 00000000..b3b8fb9a --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkEventSubscribe.java @@ -0,0 +1,15 @@ +package appeng.api.networking.events; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +import appeng.api.networking.IGridCache; +import appeng.api.networking.IGridHost; + +/** + * Usable on any {@link IGridHost}, or {@link IGridCache} + */ +@Retention(RetentionPolicy.RUNTIME) +public @interface MENetworkEventSubscribe { + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkPostCacheConstruction.java b/src/api/java/appeng/api/networking/events/MENetworkPostCacheConstruction.java new file mode 100644 index 00000000..05b28128 --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkPostCacheConstruction.java @@ -0,0 +1,10 @@ +package appeng.api.networking.events; + +/** + * Posted after all the caches are available, but before the grid is fully + * constructed, can be used to perform cross cache construction processes. + */ +public class MENetworkPostCacheConstruction extends MENetworkEvent +{ + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkPowerIdleChange.java b/src/api/java/appeng/api/networking/events/MENetworkPowerIdleChange.java new file mode 100644 index 00000000..803c5a7e --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkPowerIdleChange.java @@ -0,0 +1,21 @@ +package appeng.api.networking.events; + +import appeng.api.networking.IGridNode; + +/** + * Implementers of a IGridBlock must post this event when your getIdlePowerUsage + * starts returning a new value, if you do not post this event the network will + * not change the idle draw. + * + * you do not need to send this event when your node is added / removed from the grid. + */ +public class MENetworkPowerIdleChange extends MENetworkEvent +{ + + public final IGridNode node; + + public MENetworkPowerIdleChange(IGridNode nodeThatChanged) { + node = nodeThatChanged; + } + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkPowerStatusChange.java b/src/api/java/appeng/api/networking/events/MENetworkPowerStatusChange.java new file mode 100644 index 00000000..c89db973 --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkPowerStatusChange.java @@ -0,0 +1,16 @@ +package appeng.api.networking.events; + +import appeng.api.networking.IGridNode; +import appeng.api.networking.energy.IEnergyGrid; + +/** + * Posted by the network when the power status of the network goes up or down, + * the change is reflected via the {@link IEnergyGrid}.isNetworkPowered() or via + * {@link IGridNode}.isActive() + * + * Note: Most machines just need to check {@link IGridNode}.isActive() + */ +public class MENetworkPowerStatusChange extends MENetworkEvent +{ + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkPowerStorage.java b/src/api/java/appeng/api/networking/events/MENetworkPowerStorage.java new file mode 100644 index 00000000..34643450 --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkPowerStorage.java @@ -0,0 +1,38 @@ +package appeng.api.networking.events; + +import appeng.api.networking.energy.IAEPowerStorage; + +/** + * informs the network, that a {@link IAEPowerStorage} block that had either run, + * out of power, or was full, is no longer in that state. + * + * failure to post this event when your {@link IAEPowerStorage} changes state will + * result in your block not charging, or not-discharging. + * + * you do not need to send this event when your node is added / removed from the grid. + */ +public class MENetworkPowerStorage extends MENetworkEvent +{ + + public enum PowerEventType + { + /** + * informs the network this tile is ready to receive power again. + */ + REQUEST_POWER, + + /** + * informs the network this tile is ready to provide power again. + */ + PROVIDE_POWER + } + + public final IAEPowerStorage storage; + public final PowerEventType type; + + public MENetworkPowerStorage(IAEPowerStorage t, PowerEventType y) { + storage = t; + type = y; + } + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkSecurityChange.java b/src/api/java/appeng/api/networking/events/MENetworkSecurityChange.java new file mode 100644 index 00000000..b872f03b --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkSecurityChange.java @@ -0,0 +1,9 @@ +package appeng.api.networking.events; + +/** + * Posted by the security framework when permissions change + */ +public class MENetworkSecurityChange extends MENetworkEvent +{ + +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkSpatialEvent.java b/src/api/java/appeng/api/networking/events/MENetworkSpatialEvent.java new file mode 100644 index 00000000..ba487aee --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkSpatialEvent.java @@ -0,0 +1,22 @@ +package appeng.api.networking.events; + +import appeng.api.networking.IGridHost; + +/** + * An event that is posted whenever a spatial IO is actived, called for IGridCache + */ +public class MENetworkSpatialEvent extends MENetworkEvent +{ + public final IGridHost host; + public final double spatialEnergyUsage; + + /** + * @param SpatialIO ( instance of the SpatialIO block ) + * @param EnergyUsage ( the amount of energy that the SpatialIO uses) + */ + public MENetworkSpatialEvent(IGridHost SpatialIO, double EnergyUsage) + { + host = SpatialIO; + spatialEnergyUsage = EnergyUsage; + } +} diff --git a/src/api/java/appeng/api/networking/events/MENetworkStorageEvent.java b/src/api/java/appeng/api/networking/events/MENetworkStorageEvent.java new file mode 100644 index 00000000..36a93624 --- /dev/null +++ b/src/api/java/appeng/api/networking/events/MENetworkStorageEvent.java @@ -0,0 +1,25 @@ +package appeng.api.networking.events; + +import appeng.api.storage.IMEMonitor; +import appeng.api.storage.StorageChannel; + +/** + * posted by the network when the networks Storage Changes, you can use the currentItems list to check levels, and + * update status. + * + * this is the least useful method of getting info about changes in the network. + * + * Do not modify the list or its contents in anyway. + */ +public class MENetworkStorageEvent extends MENetworkEvent +{ + + public final IMEMonitor monitor; + public final StorageChannel channel; + + public MENetworkStorageEvent(IMEMonitor o, StorageChannel chan) { + monitor = o; + channel = chan; + } + +} diff --git a/src/api/java/appeng/api/networking/pathing/ControllerState.java b/src/api/java/appeng/api/networking/pathing/ControllerState.java new file mode 100644 index 00000000..37042720 --- /dev/null +++ b/src/api/java/appeng/api/networking/pathing/ControllerState.java @@ -0,0 +1,19 @@ +package appeng.api.networking.pathing; + +public enum ControllerState +{ + /** + * No controller blocks are present in the network. + */ + NO_CONTROLLER, + + /** + * Controller rules followed, booting enabled. + */ + CONTROLLER_ONLINE, + + /** + * Controller rules not followed, lock up while booting. + */ + CONTROLLER_CONFLICT +} diff --git a/src/api/java/appeng/api/networking/pathing/IPathingGrid.java b/src/api/java/appeng/api/networking/pathing/IPathingGrid.java new file mode 100644 index 00000000..90f30e04 --- /dev/null +++ b/src/api/java/appeng/api/networking/pathing/IPathingGrid.java @@ -0,0 +1,24 @@ +package appeng.api.networking.pathing; + +import appeng.api.networking.IGridCache; + +public interface IPathingGrid extends IGridCache +{ + + /** + * @return true if the network is in its booting stage + */ + boolean isNetworkBooting(); + + /** + * @return the controller state of the network, useful if you want to + * require a controller for a feature. + */ + ControllerState getControllerState(); + + /** + * trigger a network reset, booting, pathfinding and all. + */ + void repath(); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/networking/security/BaseActionSource.java b/src/api/java/appeng/api/networking/security/BaseActionSource.java new file mode 100644 index 00000000..193b37e8 --- /dev/null +++ b/src/api/java/appeng/api/networking/security/BaseActionSource.java @@ -0,0 +1,16 @@ +package appeng.api.networking.security; + +public class BaseActionSource +{ + + public boolean isPlayer() + { + return false; + } + + public boolean isMachine() + { + return false; + } + +} diff --git a/src/api/java/appeng/api/networking/security/IActionHost.java b/src/api/java/appeng/api/networking/security/IActionHost.java new file mode 100644 index 00000000..e6aa7a19 --- /dev/null +++ b/src/api/java/appeng/api/networking/security/IActionHost.java @@ -0,0 +1,19 @@ +package appeng.api.networking.security; + +import appeng.api.networking.IGridHost; +import appeng.api.networking.IGridNode; + +public interface IActionHost extends IGridHost +{ + + /** + * Used to for calculating security rules, you must supply a node from your + * IGridHost for the security test, this should be the primary node for the + * machine, unless the action is preformed by a non primary node. + * + * @return the the gridnode that actions from this IGridHost are preformed + * by. + */ + IGridNode getActionableNode(); + +} diff --git a/src/api/java/appeng/api/networking/security/ISecurityGrid.java b/src/api/java/appeng/api/networking/security/ISecurityGrid.java new file mode 100644 index 00000000..aed72a7c --- /dev/null +++ b/src/api/java/appeng/api/networking/security/ISecurityGrid.java @@ -0,0 +1,40 @@ +package appeng.api.networking.security; + +import net.minecraft.entity.player.EntityPlayer; +import appeng.api.config.SecurityPermissions; +import appeng.api.networking.IGridCache; + +public interface ISecurityGrid extends IGridCache +{ + + /** + * @return true if a security provider is in the network ( and only 1 ) + */ + boolean isAvailable(); + + /** + * Check if a player has permissions. + * + * @param player to be checked player + * @param perm checked permissions + * + * @return true if the player has permissions. + */ + boolean hasPermission(EntityPlayer player, SecurityPermissions perm); + + /** + * Check if a player has permissions. + * + * @param playerID id of player + * @param perm checked permissions + * + * @return true if the player has permissions. + */ + boolean hasPermission(int playerID, SecurityPermissions perm); + + /** + * @return PlayerID of the admin, or owner, this is the person who placed the security block. + */ + int getOwner(); + +} diff --git a/src/api/java/appeng/api/networking/security/ISecurityProvider.java b/src/api/java/appeng/api/networking/security/ISecurityProvider.java new file mode 100644 index 00000000..be9ad4a8 --- /dev/null +++ b/src/api/java/appeng/api/networking/security/ISecurityProvider.java @@ -0,0 +1,38 @@ +package appeng.api.networking.security; + +import appeng.api.config.SecurityPermissions; + +import java.util.EnumSet; +import java.util.HashMap; + +/** + * Implemented on Security Terminal to interface with security cache. + */ +public interface ISecurityProvider +{ + + /** + * used to represent the security key for the network, should be based on a unique timestamp. + * + * @return unique key. + */ + long getSecurityKey(); + + /** + * Push permission data into security cache. + * + * @param playerPerms player permissions + */ + void readPermissions(HashMap> playerPerms); + + /** + * @return is security on or off? + */ + boolean isSecurityEnabled(); + + /** + * @return player ID for who placed the security provider. + */ + int getOwner(); + +} diff --git a/src/api/java/appeng/api/networking/security/ISecurityRegistry.java b/src/api/java/appeng/api/networking/security/ISecurityRegistry.java new file mode 100644 index 00000000..b1abf80c --- /dev/null +++ b/src/api/java/appeng/api/networking/security/ISecurityRegistry.java @@ -0,0 +1,21 @@ +package appeng.api.networking.security; + +import appeng.api.config.SecurityPermissions; + +import java.util.EnumSet; + +/** + * Used by vanilla Security Terminal to post biometric data into the security cache. + */ +public interface ISecurityRegistry +{ + + /** + * Submit Permissions into the register. + * + * @param PlayerID player id + * @param permissions permissions of player + */ + void addPlayer(int PlayerID, EnumSet permissions); + +} diff --git a/src/api/java/appeng/api/networking/security/MachineSource.java b/src/api/java/appeng/api/networking/security/MachineSource.java new file mode 100644 index 00000000..ddce68fa --- /dev/null +++ b/src/api/java/appeng/api/networking/security/MachineSource.java @@ -0,0 +1,18 @@ +package appeng.api.networking.security; + +public class MachineSource extends BaseActionSource +{ + + public final IActionHost via; + + @Override + public boolean isMachine() + { + return true; + } + + public MachineSource(IActionHost v) { + via = v; + } + +} diff --git a/src/api/java/appeng/api/networking/security/PlayerSource.java b/src/api/java/appeng/api/networking/security/PlayerSource.java new file mode 100644 index 00000000..335a16ae --- /dev/null +++ b/src/api/java/appeng/api/networking/security/PlayerSource.java @@ -0,0 +1,22 @@ +package appeng.api.networking.security; + +import net.minecraft.entity.player.EntityPlayer; + +public class PlayerSource extends BaseActionSource +{ + + public final EntityPlayer player; + public final IActionHost via; + + @Override + public boolean isPlayer() + { + return true; + } + + public PlayerSource(EntityPlayer p, IActionHost v) { + player = p; + via = v; + } + +} diff --git a/src/api/java/appeng/api/networking/spatial/ISpatialCache.java b/src/api/java/appeng/api/networking/spatial/ISpatialCache.java new file mode 100644 index 00000000..2921553f --- /dev/null +++ b/src/api/java/appeng/api/networking/spatial/ISpatialCache.java @@ -0,0 +1,39 @@ +package appeng.api.networking.spatial; + +import appeng.api.networking.IGridCache; +import appeng.api.util.DimensionalCoord; + +public interface ISpatialCache extends IGridCache +{ + + /** + * @return true if a region is defined at all, it doesn't have to be valid, but all points must be in the same world. + */ + boolean hasRegion(); + + /** + * @return true if the region defined is valid according to all rules. + */ + boolean isValidRegion(); + + /** + * @return the minimum anchor point for the spatial region. + */ + DimensionalCoord getMin(); + + /** + * @return the maximum anchor point for the spatial region. + */ + DimensionalCoord getMax(); + + /** + * @return how many AE units are required to preform the activation + */ + long requiredPower(); + + /** + * @return current 100% - 0% efficiency. + */ + float currentEfficiency(); + +} diff --git a/src/api/java/appeng/api/networking/storage/IBaseMonitor.java b/src/api/java/appeng/api/networking/storage/IBaseMonitor.java new file mode 100644 index 00000000..9f1848f6 --- /dev/null +++ b/src/api/java/appeng/api/networking/storage/IBaseMonitor.java @@ -0,0 +1,19 @@ +package appeng.api.networking.storage; + +import appeng.api.storage.IMEMonitorHandlerReceiver; +import appeng.api.storage.data.IAEStack; + +public interface IBaseMonitor +{ + + /** + * add a new Listener to the monitor, be sure to properly remove yourself when your done. + */ + void addListener(IMEMonitorHandlerReceiver l, Object verificationToken); + + /** + * remove a Listener to the monitor. + */ + void removeListener(IMEMonitorHandlerReceiver l); + +} diff --git a/src/api/java/appeng/api/networking/storage/IStackWatcher.java b/src/api/java/appeng/api/networking/storage/IStackWatcher.java new file mode 100644 index 00000000..f27ecf77 --- /dev/null +++ b/src/api/java/appeng/api/networking/storage/IStackWatcher.java @@ -0,0 +1,10 @@ +package appeng.api.networking.storage; + +import java.util.Collection; + +import appeng.api.storage.data.IAEStack; + +public interface IStackWatcher extends Collection +{ + +} diff --git a/src/api/java/appeng/api/networking/storage/IStackWatcherHost.java b/src/api/java/appeng/api/networking/storage/IStackWatcherHost.java new file mode 100644 index 00000000..62b2541f --- /dev/null +++ b/src/api/java/appeng/api/networking/storage/IStackWatcherHost.java @@ -0,0 +1,30 @@ +package appeng.api.networking.storage; + +import appeng.api.networking.security.BaseActionSource; +import appeng.api.storage.StorageChannel; +import appeng.api.storage.data.IAEStack; +import appeng.api.storage.data.IItemList; + +public interface IStackWatcherHost +{ + + /** + * provides the IStackWatcher for this host, for the current network, is called when the hot changes networks. You + * do not need to clear your old watcher, its already been removed by the time this gets called. + * + * @param newWatcher stack watcher + */ + void updateWatcher(IStackWatcher newWatcher); + + /** + * Called when a watched item changes amounts. + * + * @param o changed item list + * @param fullStack old stack + * @param diffStack new stack + * @param src action source + * @param chan storage channel + */ + void onStackChange(IItemList o, IAEStack fullStack, IAEStack diffStack, BaseActionSource src, StorageChannel chan); + +} diff --git a/src/api/java/appeng/api/networking/storage/IStorageGrid.java b/src/api/java/appeng/api/networking/storage/IStorageGrid.java new file mode 100644 index 00000000..774e96dc --- /dev/null +++ b/src/api/java/appeng/api/networking/storage/IStorageGrid.java @@ -0,0 +1,45 @@ +package appeng.api.networking.storage; + +import appeng.api.networking.IGridCache; +import appeng.api.networking.IGridHost; +import appeng.api.networking.security.BaseActionSource; +import appeng.api.storage.ICellContainer; +import appeng.api.storage.ICellProvider; +import appeng.api.storage.IStorageMonitorable; +import appeng.api.storage.StorageChannel; +import appeng.api.storage.data.IAEStack; + +/** + * Common base class for item / fluid storage caches. + */ +public interface IStorageGrid extends IGridCache, IStorageMonitorable +{ + + /** + * Used to inform the network of alterations to the storage system that fall outside of the standard Network + * operations, Examples, ME Chest inputs from the world, or a Storage Bus detecting modifications made to the chest + * by an outside force. + * + * Expects the input to have either a negative or a positive stack size to correspond to the injection, or + * extraction operation. + * + * @param input injected items + */ + void postAlterationOfStoredItems(StorageChannel chan, Iterable input, BaseActionSource src); + + /** + * Used to add a cell provider to the storage system + * + * THIS IT NOT FOR USE {@link IGridHost} THAT PROVIDE {@link ICellContainer} - those are automatically handled by + * the storage system. + * + * @param cc to be added cell provider + */ + void registerCellProvider(ICellProvider cc); + + /** + * remove a provider added with addCellContainer + */ + void unregisterCellProvider(ICellProvider cc); + +} diff --git a/src/api/java/appeng/api/networking/ticking/IGridTickable.java b/src/api/java/appeng/api/networking/ticking/IGridTickable.java new file mode 100644 index 00000000..66d3c898 --- /dev/null +++ b/src/api/java/appeng/api/networking/ticking/IGridTickable.java @@ -0,0 +1,56 @@ +package appeng.api.networking.ticking; + +import appeng.api.networking.IGridNode; + +/** + * Implement on IGridHosts which want to use AE's Network Ticking Feature. + */ +public interface IGridTickable +{ + + /** + * Important note regarding IGridTickables with more then one one node, + * + * If your IGridHost hosts multiple nodes, it may be on multiple grids, or + * its node may be present on the same grid multiple times, this is as + * designed, however if you choose to use the grid to tick these Hosts you + * must be aware that they they should probably pick a single node to tick + * for, and not tick for each node. + * + */ + + /** + * You can return null, if you wish to tick using MC's ticking mechanism, or + * you can return a valid TickingRequest to tell AE a guide for which type + * of responsiveness your device wants. + * + * this will be called for your tile any time your tile changes grids, this + * can happen at any time, so if your using the sleep feature you may wish + * to preserve your sleep, in the result of this method. or you can simply + * reset it. + * + * @return null or a valid new TickingRequest + * + */ + TickingRequest getTickingRequest(IGridNode node); + + /** + * AE lets you adjust your tick rate based on the results of your tick, if + * your block as accomplished work you may wish to increase the ticking + * speed, if your block is idle you may wish to slow it down. + * + * Its up to you. + * + * Note: this is never called if you return null from getTickingRequest. + * + * @param TicksSinceLastCall + * the number of world ticks that were skipped since your last + * tick, you can use this to adjust speed of processing or adjust + * your tick rate. + * + * @return tick rate adjustment. + * + */ + TickRateModulation tickingRequest(IGridNode node, int TicksSinceLastCall); + +} diff --git a/src/api/java/appeng/api/networking/ticking/ITickManager.java b/src/api/java/appeng/api/networking/ticking/ITickManager.java new file mode 100644 index 00000000..d5cbbf0b --- /dev/null +++ b/src/api/java/appeng/api/networking/ticking/ITickManager.java @@ -0,0 +1,44 @@ +package appeng.api.networking.ticking; + +import appeng.api.networking.IGridCache; +import appeng.api.networking.IGridNode; + +/** + * + * The network tick manager. + * + */ +public interface ITickManager extends IGridCache +{ + + /** + * immediately sets the node to tick, only valid if your node is marked as "Alertable" in its TickingRequest + * + * Sleeping Devices Still Alertable, when your tile is alerted its new status is determined by the result of its + * tick. + * + * @param node gridnode + */ + boolean alertDevice(IGridNode node); + + /** + * + * disables ticking for your device. + * + * @param node gridnode + * + * @return if the call was successful. + */ + boolean sleepDevice(IGridNode node); + + /** + * + * enables ticking for your device, undoes a sleepDevice call. + * + * @param node gridnode + * + * @return if the call was successful. + */ + boolean wakeDevice(IGridNode node); + +} diff --git a/src/api/java/appeng/api/networking/ticking/TickRateModulation.java b/src/api/java/appeng/api/networking/ticking/TickRateModulation.java new file mode 100644 index 00000000..1298b5ab --- /dev/null +++ b/src/api/java/appeng/api/networking/ticking/TickRateModulation.java @@ -0,0 +1,34 @@ +package appeng.api.networking.ticking; + +public enum TickRateModulation +{ + /** + * same as idle, but also puts the node to sleep. + */ + SLEEP, + + /** + * set tick rate to maximum. + */ + IDLE, + + /** + * decrease the tick rate marginally. + */ + SLOWER, + + /** + * continue at current rate. + */ + SAME, + + /** + * increase the tick rate marginally. + */ + FASTER, + + /** + * changes the tick rate to the minimum tick rate. + */ + URGENT +} diff --git a/src/api/java/appeng/api/networking/ticking/TickingRequest.java b/src/api/java/appeng/api/networking/ticking/TickingRequest.java new file mode 100644 index 00000000..02ac54e6 --- /dev/null +++ b/src/api/java/appeng/api/networking/ticking/TickingRequest.java @@ -0,0 +1,54 @@ +package appeng.api.networking.ticking; + +/** + * + * Describes how your tiles ticking is executed. + * + */ +public class TickingRequest +{ + + /** + * the minimum number of ticks that must pass between ticks. + * + * Valid Values are : 1+ + * + * Suggested is 5-20 + * + */ + public final int minTickRate; + + /** + * the maximum number of ticks that can pass between ticks, if this value is + * exceeded the tile must tick. + * + * Valid Values are 1+ + * + * Suggested is 20-40 + * + */ + public final int maxTickRate; + + /** + * + * Determines the current expected state of your node, if your node expects + * to be sleeping, then return true. + * + */ + public final boolean isSleeping; + + /** + * + * True only if you call {@link ITickManager}.alertDevice( IGridNode ); + * + */ + public final boolean canBeAlerted; + + public TickingRequest(int min, int max, boolean sleep, boolean alertable) { + minTickRate = min; + maxTickRate = max; + isSleeping = sleep; + canBeAlerted = alertable; + } + +} diff --git a/src/api/java/appeng/api/package-info.java b/src/api/java/appeng/api/package-info.java new file mode 100644 index 00000000..0e52e08c --- /dev/null +++ b/src/api/java/appeng/api/package-info.java @@ -0,0 +1,5 @@ +@API(apiVersion = "rv2", owner = "appliedenergistics2", provides = "appliedenergistics2|API") +package appeng.api; + +import cpw.mods.fml.common.API; + diff --git a/src/api/java/appeng/api/parts/BusSupport.java b/src/api/java/appeng/api/parts/BusSupport.java new file mode 100644 index 00000000..1702bbce --- /dev/null +++ b/src/api/java/appeng/api/parts/BusSupport.java @@ -0,0 +1,10 @@ +package appeng.api.parts; + +public enum BusSupport +{ + CABLE, + + DENSE_CABLE, + + NO_PARTS +} diff --git a/src/api/java/appeng/api/parts/CableRenderMode.java b/src/api/java/appeng/api/parts/CableRenderMode.java new file mode 100644 index 00000000..2e64f356 --- /dev/null +++ b/src/api/java/appeng/api/parts/CableRenderMode.java @@ -0,0 +1,17 @@ +package appeng.api.parts; + +public enum CableRenderMode +{ + + Standard(false), + + CableView(true); + + public final boolean transparentFacades; + public final boolean opaqueFacades; + + private CableRenderMode(boolean hideFacades) { + this.transparentFacades = hideFacades; + opaqueFacades = !hideFacades; + } +} diff --git a/src/api/java/appeng/api/parts/IAlphaPassItem.java b/src/api/java/appeng/api/parts/IAlphaPassItem.java new file mode 100644 index 00000000..b2dba861 --- /dev/null +++ b/src/api/java/appeng/api/parts/IAlphaPassItem.java @@ -0,0 +1,16 @@ +package appeng.api.parts; + +import net.minecraft.item.ItemStack; + +public interface IAlphaPassItem +{ + + /** + * Extend, and return true to enable a second pass for your parts in the bus rendering pipe line. + * + * @param is item + * @return true to enable a second pass for your parts in the bus rendering pipe line. + */ + boolean useAlphaPass(ItemStack is); + +} diff --git a/src/api/java/appeng/api/parts/IBoxProvider.java b/src/api/java/appeng/api/parts/IBoxProvider.java new file mode 100644 index 00000000..653089a9 --- /dev/null +++ b/src/api/java/appeng/api/parts/IBoxProvider.java @@ -0,0 +1,13 @@ +package appeng.api.parts; + +public interface IBoxProvider +{ + + /** + * add your collision information to the the list. + * + * @param boxes collision boxes + */ + void getBoxes(IPartCollisionHelper boxes); + +} diff --git a/src/api/java/appeng/api/parts/IFacadeContainer.java b/src/api/java/appeng/api/parts/IFacadeContainer.java new file mode 100644 index 00000000..397fbecc --- /dev/null +++ b/src/api/java/appeng/api/parts/IFacadeContainer.java @@ -0,0 +1,75 @@ +package appeng.api.parts; + +import io.netty.buffer.ByteBuf; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraftforge.common.util.ForgeDirection; + +import java.io.IOException; + +/** + * Used Internally. + * + * not intended for implementation. + */ +public interface IFacadeContainer +{ + + /** + * Attempts to add the {@link IFacadePart} to the given side. + * + * @return true if the facade as successfully added. + */ + boolean addFacade(IFacadePart a); + + /** + * Removed the facade on the given side, or does nothing. + */ + void removeFacade(IPartHost host, ForgeDirection side); + + /** + * @return the {@link IFacadePart} for a given side, or null. + */ + IFacadePart getFacade(ForgeDirection s); + + /** + * rotate the facades left. + */ + void rotateLeft(); + + /** + * write nbt data + * + * @param data to be written data + */ + void writeToNBT(NBTTagCompound data); + + /** + * read from stream + * + * @param data to be read data + * @return true if it was readable + * @throws IOException + */ + boolean readFromStream(ByteBuf data) throws IOException; + + /** + * read from NBT + * + * @param data to be read data + */ + void readFromNBT(NBTTagCompound data); + + /** + * write to stream + * + * @param data to be written data + * @throws IOException + */ + void writeToStream(ByteBuf data) throws IOException; + + /** + * @return true if there are no facades. + */ + boolean isEmpty(); + +} diff --git a/src/api/java/appeng/api/parts/IFacadePart.java b/src/api/java/appeng/api/parts/IFacadePart.java new file mode 100644 index 00000000..cbe647ae --- /dev/null +++ b/src/api/java/appeng/api/parts/IFacadePart.java @@ -0,0 +1,77 @@ +package appeng.api.parts; + +import net.minecraft.client.renderer.RenderBlocks; +import net.minecraft.entity.Entity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.AxisAlignedBB; +import net.minecraftforge.common.util.ForgeDirection; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + +/** + * Used Internally. + * + * not intended for implementation. + */ +public interface IFacadePart +{ + + /** + * used to save the part. + */ + ItemStack getItemStack(); + + /** + * used to collide, and pick the part + * + * @param ch collision helper + * @param e colliding entity + */ + void getBoxes(IPartCollisionHelper ch, Entity e); + + /** + * render the part. + * + * @param x x pos of part + * @param y y pos of part + * @param z z pos of part + * @param instance render helper + * @param renderer renderer + * @param fc face container + * @param busBounds bounding box + * @param renderStilt if to render stilt + */ + @SideOnly(Side.CLIENT) + void renderStatic(int x, int y, int z, IPartRenderHelper instance, RenderBlocks renderer, IFacadeContainer fc, AxisAlignedBB busBounds, boolean renderStilt); + + /** + * render the part in inventory. + * + * @param instance render helper + * @param renderer renderer + */ + @SideOnly(Side.CLIENT) + void renderInventory(IPartRenderHelper instance, RenderBlocks renderer); + + /** + * @return side the facade is in + */ + ForgeDirection getSide(); + + /** + * @return the box for the face of the facade + */ + AxisAlignedBB getPrimaryBox(); + + Item getItem(); + + int getItemDamage(); + + boolean isBC(); + + void setThinFacades(boolean useThinFacades); + + boolean isTransparent(); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/parts/IPart.java b/src/api/java/appeng/api/parts/IPart.java new file mode 100644 index 00000000..fdc4e0da --- /dev/null +++ b/src/api/java/appeng/api/parts/IPart.java @@ -0,0 +1,273 @@ +package appeng.api.parts; + +import appeng.api.networking.IGridNode; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; +import net.minecraft.client.renderer.RenderBlocks; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.IIcon; +import net.minecraft.util.Vec3; +import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; + +import java.io.IOException; +import java.util.List; +import java.util.Random; + +public interface IPart extends IBoxProvider +{ + + /** + * get an ItemStack that represents the bus, should contain the settings for whatever, can also be used in + * conjunction with removePart to take a part off and drop it or something. + * + * This is used to drop the bus, and to save the bus, when saving the bus, wrenched is false, and writeToNBT will be + * called to save important details about the part, if the part is wrenched include in your NBT Data any settings + * you might want to keep around, you can restore those settings when constructing your part. + * + * @param type , what kind of ItemStack to return? + * + * @return item of part + */ + ItemStack getItemStack(PartItemStack type); + + /** + * render item form for inventory, or entity. + * + * GL Available + * + * @param rh helper + * @param renderer renderer + */ + @SideOnly(Side.CLIENT) + void renderInventory(IPartRenderHelper rh, RenderBlocks renderer); + + /** + * render world renderer ( preferred ) + * + * GL is NOT Available + * + * @param x x coord + * @param y y coord + * @param z z coord + * @param rh helper + * @param renderer renderer + */ + @SideOnly(Side.CLIENT) + void renderStatic(int x, int y, int z, IPartRenderHelper rh, RenderBlocks renderer); + + /** + * render TESR. + * + * GL Available + * + * @param x x coord + * @param y y coord + * @param z z coord + * @param rh helper + * @param renderer renderer + */ + @SideOnly(Side.CLIENT) + void renderDynamic(double x, double y, double z, IPartRenderHelper rh, RenderBlocks renderer); + + /** + * @return the Block sheet icon used when rendering the breaking particles, return null to use the ItemStack + * texture. + */ + @SideOnly(Side.CLIENT) + IIcon getBreakingTexture(); + + /** + * return true only if your part require dynamic rendering, must be consistent. + * + * @return true to enable renderDynamic + */ + boolean requireDynamicRender(); + + /** + * @return if the bus has a solid side, and you can place random stuff on it like torches or levers + */ + boolean isSolid(); + + /** + * @return true if this part can connect to redstone ( also MFR Rednet ) + */ + boolean canConnectRedstone(); + + /** + * Write the part information for saving, the part will be saved with getItemStack(false) and this method will be + * called after to load settings, inventory or other values from the world. + * + * @param data to be written nbt data + */ + void writeToNBT(NBTTagCompound data); + + /** + * Read the previously written NBT Data. this is the mirror for writeToNBT + * + * @param data to be read nbt data + */ + void readFromNBT(NBTTagCompound data); + + /** + * @return get the amount of light produced by the bus + */ + int getLightLevel(); + + /** + * does this part act like a ladder? + * + * @param entity climbing entity + * + * @return true if entity can climb + */ + boolean isLadder(EntityLivingBase entity); + + /** + * a block around the bus's host has been changed. + */ + void onNeighborChanged(); + + /** + * @return output redstone on facing side + */ + int isProvidingStrongPower(); + + /** + * @return output redstone on facing side + */ + int isProvidingWeakPower(); + + /** + * write data to bus packet. + * + * @param data to be written data + * + * @throws IOException + */ + void writeToStream(ByteBuf data) throws IOException; + + /** + * read data from bus packet. + * + * @param data to be read data + * + * @return true will re-draw the part. + * + * @throws IOException + */ + boolean readFromStream(ByteBuf data) throws IOException; + + /** + * get the Grid Node for the Bus, be sure your IGridBlock is NOT isWorldAccessible, if it is your going to cause + * crashes. + * + * or null if you don't have a grid node. + * + * @return grid node + */ + IGridNode getGridNode(); + + /** + * called when an entity collides with the bus. + * + * @param entity colliding entity + */ + void onEntityCollision(Entity entity); + + /** + * called when your part is being removed from the world. + */ + void removeFromWorld(); + + /** + * called when your part is being added to the world. + */ + void addToWorld(); + + /** + * used for tunnels. + * + * @return a grid node that represents the external facing side, these must be isWorldAccessible with the correct + * faces marked as external + */ + IGridNode getExternalFacingNode(); + + /** + * called by the Part host to keep your part informed. + * + * @param host part side + * @param tile tile entity of part + */ + void setPartHostInfo(ForgeDirection side, IPartHost host, TileEntity tile); + + /** + * Called when you right click the part, very similar to Block.onActivateBlock + * + * @param player right clicking player + * @param pos position of block + * + * @return if your activate method performed something. + */ + boolean onActivate(EntityPlayer player, Vec3 pos); + + /** + * Called when you right click the part, very similar to Block.onActivateBlock + * + * @param player shift right clicking player + * @param pos position of block + * + * @return if your activate method performed something, you should use false unless you really need it. + */ + boolean onShiftActivate(EntityPlayer player, Vec3 pos); + + /** + * Add drops to the items being dropped into the world, if your item stores its contents when wrenched use the + * wrenched boolean to control what data is saved vs dropped when it is broken. + * + * @param drops item drops if wrenched + * @param wrenched control flag for wrenched vs broken + */ + void getDrops(List drops, boolean wrenched); + + /** + * @return 0 - 8, reasonable default 3-4, this controls the cable connection to the node. + */ + int cableConnectionRenderTo(); + + /** + * same as Block.randomDisplayTick, for but parts. + * + * @param world world of block + * @param x x coord of block + * @param y y coord of block + * @param z z coord of block + * @param r random + */ + void randomDisplayTick(World world, int x, int y, int z, Random r); + + /** + * Called when placed in the world by a player, this happens before addWorld. + * + * @param player placing player + * @param held held item + * @param side placing side + */ + void onPlacement(EntityPlayer player, ItemStack held, ForgeDirection side); + + /** + * Used to determine which parts can be placed on what cables. + * + * @param what placed part + * + * @return true if the part can be placed on this support. + */ + boolean canBePlacedOn(BusSupport what); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/parts/IPartCollisionHelper.java b/src/api/java/appeng/api/parts/IPartCollisionHelper.java new file mode 100644 index 00000000..c7fcb9a6 --- /dev/null +++ b/src/api/java/appeng/api/parts/IPartCollisionHelper.java @@ -0,0 +1,42 @@ +package appeng.api.parts; + +import net.minecraftforge.common.util.ForgeDirection; + +public interface IPartCollisionHelper +{ + + /** + * add a collision box, expects 0.0 - 16.0 block coords. + * + * No complaints about the size, I like using pixels :P + * + * @param minX minimal x collision + * @param minY minimal y collision + * @param minZ minimal z collision + * @param maxX maximal x collision + * @param maxY maximal y collision + * @param maxZ maximal z collision + */ + void addBox(double minX, double minY, double minZ, double maxX, double maxY, double maxZ); + + /** + * @return east in world space. + */ + ForgeDirection getWorldX(); + + /** + * @return up in world space. + */ + ForgeDirection getWorldY(); + + /** + * @return forward in world space. + */ + ForgeDirection getWorldZ(); + + /** + * @return true if this test is to get the BB Collision information. + */ + boolean isBBCollision(); + +} diff --git a/src/api/java/appeng/api/parts/IPartHelper.java b/src/api/java/appeng/api/parts/IPartHelper.java new file mode 100644 index 00000000..7cf451ed --- /dev/null +++ b/src/api/java/appeng/api/parts/IPartHelper.java @@ -0,0 +1,61 @@ +package appeng.api.parts; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; + +public interface IPartHelper +{ + + /** + * Register a new layer with the part layer system, this allows you to write + * an in between between tile entities and parts. + * + * AE By Default includes, + * + * 1. ISidedInventory ( and by extension IInventory. ) + * + * 2. IFluidHandler Forge Fluids + * + * 3. IPowerEmitter BC Power output. + * + * 4. IPowerReceptor BC Power input. + * + * 5. IEnergySink IC2 Power input. + * + * 6. IEnergySource IC2 Power output. + * + * 7. IPipeConnection BC Pipe Connections + * + * As long as a valid layer is registered for a interface you can simply + * implement that interface on a part get implement it. + * + * @return true on success, false on failure, usually a error will be logged + * as well. + */ + boolean registerNewLayer(String string, String layerInterface); + + /** + * Register IBusItem with renderer + */ + void setItemBusRenderer(IPartItem i); + + /** + * use in use item, to try and place a IBusItem + * + * @param is ItemStack of an item which implements {@link IPartItem} + * @param x x pos of part + * @param y y pos of part + * @param z z pos of part + * @param side side which the part should be on + * @param player player placing part + * @param world part in world + * @return true if placing was successful + */ + boolean placeBus(ItemStack is, int x, int y, int z, int side, EntityPlayer player, World world); + + /** + * @return the render mode + */ + CableRenderMode getCableRenderMode(); +} diff --git a/src/api/java/appeng/api/parts/IPartHost.java b/src/api/java/appeng/api/parts/IPartHost.java new file mode 100644 index 00000000..b18712dc --- /dev/null +++ b/src/api/java/appeng/api/parts/IPartHost.java @@ -0,0 +1,152 @@ +package appeng.api.parts; + +import appeng.api.util.AEColor; +import appeng.api.util.DimensionalCoord; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.Vec3; +import net.minecraftforge.common.util.ForgeDirection; + +import java.util.Set; + +/** + * Implemented on AE's TileEntity or AE's FMP Part. + * + * Do Not Implement + */ +public interface IPartHost +{ + + /** + * @return the facade container + */ + IFacadeContainer getFacadeContainer(); + + /** + * Test if you can add a part to the specified side of the Part Host, {@link ForgeDirection}.UNKNOWN is used to + * represent the cable in the middle. + * + * @param part to be added part + * @param side part placed onto side + * @return returns false if the part cannot be added. + */ + boolean canAddPart(ItemStack part, ForgeDirection side); + + /** + * try to add a new part to the specified side, returns false if it failed to be added. + * + * @param is new part + * @param side onto side + * @param owner with owning player + * @return null if the item failed to add, the side it was placed on other wise ( may different for cables, + * {@link ForgeDirection}.UNKNOWN ) + */ + ForgeDirection addPart(ItemStack is, ForgeDirection side, EntityPlayer owner); + + /** + * Get part by side ( center is {@link ForgeDirection}.UNKNOWN ) + * + * @param side side of part + * @return the part located on the specified side, or null if there is no part. + */ + IPart getPart(ForgeDirection side); + + /** + * removes the part on the side, this doesn't drop it or anything, if you don't do something with it, its just + * "gone" and its never coming back; think about it. + * + * if you want to drop the part you must request it prior to removing it. + * + * @param side side of part + * @param suppressUpdate + * - used if you need to replace a part's instance, without really removing it first. + */ + void removePart(ForgeDirection side, boolean suppressUpdate); + + /** + * something changed, might want to send a packet to clients to update state. + */ + void markForUpdate(); + + /** + * @return the physical location of the part host in the universe. + */ + DimensionalCoord getLocation(); + + /** + * @return the tile entity for the host, this can either be an FMP tile, or a AE tile + */ + TileEntity getTile(); + + /** + * @return the color of the host type ( this is determined by the middle cable. ) if no cable is present, it returns + * {@link AEColor} .Transparent other wise it returns the color of the cable in the center. + */ + AEColor getColor(); + + /** + * destroys the part container, for internal use. + */ + void clearContainer(); + + /** + * Used to test for FMP microblock blocking internally. + * + * @return returns if microblocks are blocking this cable path. + */ + boolean isBlocked(ForgeDirection side); + + /** + * finds the part located at the position ( pos must be relative, not global ) + * + * @param pos part position + * @return a new SelectedPart, this is never null. + */ + SelectedPart selectPart(Vec3 pos); + + /** + * can be used by parts to trigger the tile or part to save. + */ + void markForSave(); + + /** + * part of the {@link LayerBase} + */ + void partChanged(); + + /** + * get the redstone state of host on this side, this value is cached internally. + * + * @param side side of part + * @return true of the part host is receiving redstone from an external source. + */ + boolean hasRedstone(ForgeDirection side); + + /** + * returns false if this block contains any parts or facades, true other wise. + */ + boolean isEmpty(); + + /** + * @return a mutable list of flags you can adjust to track state. + */ + Set getLayerFlags(); + + /** + * remove host from world... + */ + void cleanup(); + + /** + * notify neighbors uf updated status. + */ + void notifyNeighbors(); + + /** + * true if the tile is in the world, other wise false. + * + * @return true if tile is in world + */ + boolean isInWorld(); +} \ No newline at end of file diff --git a/src/api/java/appeng/api/parts/IPartItem.java b/src/api/java/appeng/api/parts/IPartItem.java new file mode 100644 index 00000000..ca7a4b4f --- /dev/null +++ b/src/api/java/appeng/api/parts/IPartItem.java @@ -0,0 +1,42 @@ +package appeng.api.parts; + +import net.minecraft.item.ItemStack; + +//@formatter:off +/** + * This is a pretty basic requirement, once you implement the interface, and createPartFromItemStack + * + * you must register your bus with the Bus renderer, using AEApi.instance().partHelper().setItemBusRenderer( this ); + * + * then simply add these two methods, which tell MC to use the Block Textures, and call AE's Bus Placement Code. + * + *
+ * 
+ * {@literal @}Override
+ * {@literal @}SideOnly(Side.CLIENT)
+ * public int getSpriteNumber()
+ * {
+ *     return 0;
+ * }
+ *
+ * {@literal @}Override
+ * public boolean onItemUse(ItemStack is, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ)
+ * {
+ *     return AEApi.instance().partHelper().placeBus( is, x, y, z, side, player, world );
+ * }
+ * 
+ * 
+ * + */ +public interface IPartItem +{ + + /** + * create a new part instance, from the item stack. + * + * @param is item + * @return part from item + */ + IPart createPartFromItemStack(ItemStack is); + +} diff --git a/src/api/java/appeng/api/parts/IPartRenderHelper.java b/src/api/java/appeng/api/parts/IPartRenderHelper.java new file mode 100644 index 00000000..b00a7ca6 --- /dev/null +++ b/src/api/java/appeng/api/parts/IPartRenderHelper.java @@ -0,0 +1,178 @@ +package appeng.api.parts; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.block.Block; +import net.minecraft.client.renderer.RenderBlocks; +import net.minecraft.util.IIcon; +import net.minecraftforge.common.util.ForgeDirection; + +import java.util.EnumSet; + +public interface IPartRenderHelper +{ + + /** + * sets the Render Helpers Block Bounds. 0.0 - 16.0 block coords. + * + * No complaints about the size, I like using pixels :P + * + * @param minX minimal x bound + * @param minY minimal y bound + * @param minZ minimal z bound + * @param maxX maximal x bound + * @param maxY maximal y bound + * @param maxZ maximal z bound + */ + void setBounds(float minX, float minY, float minZ, float maxX, float maxY, float maxZ); + + /** + * static renderer + * + * render a single face. + * + * @param x x coord of part + * @param y y coord of part + * @param z z coord of part + * @param ico icon of part + * @param face direction its facing + * @param renderer renderer of part + */ + @SideOnly(Side.CLIENT) + void renderFace(int x, int y, int z, IIcon ico, ForgeDirection face, RenderBlocks renderer); + + /** + * static renderer + * + * render a box with a cut out box in the center. + * + * @param x x pos of part + * @param y y pos of part + * @param z z pos of part + * @param ico icon of part + * @param face face of part + * @param edgeThickness thickness of the edge + * @param renderer renderer + */ + @SideOnly(Side.CLIENT) + void renderFaceCutout(int x, int y, int z, IIcon ico, ForgeDirection face, float edgeThickness, RenderBlocks renderer); + + /** + * static renderer + * + * render a block of specified bounds. + * + * @param x x pos of block + * @param y y pos of block + * @param z z pos of block + * @param renderer renderer + */ + @SideOnly(Side.CLIENT) + void renderBlock(int x, int y, int z, RenderBlocks renderer); + + /** + * render a single face in inventory renderer. + * + * @param IIcon icon of part + * @param direction face of part + * @param renderer renderer + */ + @SideOnly(Side.CLIENT) + void renderInventoryFace(IIcon IIcon, ForgeDirection direction, RenderBlocks renderer); + + /** + * render a box in inventory renderer. + * + * @param renderer renderer + */ + @SideOnly(Side.CLIENT) + void renderInventoryBox(RenderBlocks renderer); + + /** + * inventory, and static renderer. + * + * set unique icons for each side of the block. + * + * @param down down face + * @param up up face + * @param north north face + * @param south south face + * @param west west face + * @param east east face + */ + void setTexture(IIcon down, IIcon up, IIcon north, IIcon south, IIcon west, IIcon east); + + /** + * inventory, and static renderer. + * + * set all sides to a single IIcon. + * + * @param ico to be set icon + */ + void setTexture(IIcon ico); + + /** + * configure the color multiplier for the inventory renderer. + * + * @param whiteVariant color multiplier + */ + void setInvColor(int whiteVariant); + + /** + * @return the block used for rendering, might need it for some reason... + */ + Block getBlock(); + + /** + * @return the east vector in world directions, rather then renderer + */ + ForgeDirection getWorldX(); + + /** + * @return the up vector in world directions, rather then renderer. + */ + ForgeDirection getWorldY(); + + /** + * @return the forward vector in world directions, rather then renderer. + */ + ForgeDirection getWorldZ(); + + /** + * Pre-Calculates default lighting for the part, call this before using the render helper to render anything else to + * get simplified, but faster lighting for more then one block. + * + * Only worth it if you render more then 1 block. + */ + ISimplifiedBundle useSimplifiedRendering(int x, int y, int z, IBoxProvider p, ISimplifiedBundle sim); + + /** + * disables, useSimplifiedRendering. + */ + void normalRendering(); + + /** + * render a block using the current renderer state. + * + * @param x x pos of part + * @param y y pos of part + * @param z z pos of part + * @param renderer renderer of part + */ + void renderBlockCurrentBounds(int x, int y, int z, RenderBlocks renderer); + + /** + * allow you to enable your part to render during the alpha pass or the standard pass. + * + * @param pass render pass + */ + void renderForPass(int pass); + + /** + * Set which faces to render, remember to set back to ALL when you are done. + * + * @param complementOf sides to render + */ + void setFacesToRender(EnumSet complementOf); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/parts/ISimplifiedBundle.java b/src/api/java/appeng/api/parts/ISimplifiedBundle.java new file mode 100644 index 00000000..ad093459 --- /dev/null +++ b/src/api/java/appeng/api/parts/ISimplifiedBundle.java @@ -0,0 +1,7 @@ +package appeng.api.parts; + + +public interface ISimplifiedBundle +{ + +} diff --git a/src/api/java/appeng/api/parts/LayerBase.java b/src/api/java/appeng/api/parts/LayerBase.java new file mode 100644 index 00000000..e976654b --- /dev/null +++ b/src/api/java/appeng/api/parts/LayerBase.java @@ -0,0 +1,55 @@ +package appeng.api.parts; + +import net.minecraft.tileentity.TileEntity; +import net.minecraftforge.common.util.ForgeDirection; + +import java.util.Set; + +/** + * All Layers must extends this, this get part implementation is provided to interface with the parts, however a real + * implementation will be used at runtime. + */ +public abstract class LayerBase extends TileEntity // implements IPartHost +{ + + /** + * Grants access for the layer to the parts of the host. + * + * This Method looks silly, that is because its not used at runtime, a real implementation will be used instead. + * + * @param side side of part + * @return the part for the requested side. + */ + public IPart getPart(ForgeDirection side) + { + return null; // place holder. + } + + /** + * called when the parts change in the container, YOU MUST CALL super.PartChanged(); + */ + public void notifyNeighbors() + { + } + + /** + * called when the parts change in the container, YOU MUST CALL super.PartChanged(); + */ + public void partChanged() + { + } + + /** + * @return a mutable list of flags you can adjust to track state. + */ + public Set getLayerFlags() + { + return null; // place holder. + } + + public void markForSave() + { + // something! + } + +} diff --git a/src/api/java/appeng/api/parts/LayerFlags.java b/src/api/java/appeng/api/parts/LayerFlags.java new file mode 100644 index 00000000..08d720be --- /dev/null +++ b/src/api/java/appeng/api/parts/LayerFlags.java @@ -0,0 +1,8 @@ +package appeng.api.parts; + +public enum LayerFlags +{ + + IC2_ENET + +} diff --git a/src/api/java/appeng/api/parts/PartItemStack.java b/src/api/java/appeng/api/parts/PartItemStack.java new file mode 100644 index 00000000..4c8c72dc --- /dev/null +++ b/src/api/java/appeng/api/parts/PartItemStack.java @@ -0,0 +1,14 @@ +package appeng.api.parts; + +public enum PartItemStack +{ + Pick, + + Break, + + Wrench, + + Network, + + World +} diff --git a/src/api/java/appeng/api/parts/SelectedPart.java b/src/api/java/appeng/api/parts/SelectedPart.java new file mode 100644 index 00000000..b381e111 --- /dev/null +++ b/src/api/java/appeng/api/parts/SelectedPart.java @@ -0,0 +1,44 @@ +package appeng.api.parts; + +import net.minecraftforge.common.util.ForgeDirection; + +/** + * Reports a selected part from th IPartHost + */ +public class SelectedPart +{ + + /** + * selected part. + */ + public final IPart part; + + /** + * facade part. + */ + public final IFacadePart facade; + + /** + * side the part is mounted too, or {@link ForgeDirection}.UNKNOWN for cables. + */ + public final ForgeDirection side; + + public SelectedPart() { + part = null; + facade = null; + side = ForgeDirection.UNKNOWN; + } + + public SelectedPart(IPart part, ForgeDirection side) { + this.part = part; + facade = null; + this.side = side; + } + + public SelectedPart(IFacadePart facade, ForgeDirection side) { + part = null; + this.facade = facade; + this.side = side; + } + +} diff --git a/src/api/java/appeng/api/recipes/ICraftHandler.java b/src/api/java/appeng/api/recipes/ICraftHandler.java new file mode 100644 index 00000000..df574c7f --- /dev/null +++ b/src/api/java/appeng/api/recipes/ICraftHandler.java @@ -0,0 +1,29 @@ +package appeng.api.recipes; + +import appeng.api.exceptions.MissingIngredientError; +import appeng.api.exceptions.RecipeError; +import appeng.api.exceptions.RegistrationError; + +import java.util.List; + +public interface ICraftHandler +{ + + /** + * Called when your recipe handler receives a newly parsed list of inputs/outputs. + * + * @param input parsed inputs + * @param output parsed outputs + * @throws RecipeError + */ + public void setup(List> input, List> output) throws RecipeError; + + /** + * called when all recipes are parsed, and your required to register your recipe. + * + * @throws RegistrationError + * @throws MissingIngredientError + */ + public void register() throws RegistrationError, MissingIngredientError; + +} diff --git a/src/api/java/appeng/api/recipes/IIngredient.java b/src/api/java/appeng/api/recipes/IIngredient.java new file mode 100644 index 00000000..9a8cbb91 --- /dev/null +++ b/src/api/java/appeng/api/recipes/IIngredient.java @@ -0,0 +1,64 @@ +package appeng.api.recipes; + +import net.minecraft.item.ItemStack; +import appeng.api.exceptions.MissingIngredientError; +import appeng.api.exceptions.RegistrationError; + +public interface IIngredient { + + /** + * Acquire a single input stack for the current recipe, if more then one ItemStack is possible a + * RegistrationError exception will be thrown, ignore these and let the system handle the error. + * + * @return a single ItemStack for the recipe handler. + * + * @throws RegistrationError + * @throws MissingIngredientError + */ + ItemStack getItemStack() throws RegistrationError, MissingIngredientError; + + /** + * Acquire a list of all the input stacks for the current recipe, this is for handlers that support + * multiple inputs per slot. + * + * @return an array of ItemStacks for the recipe handler. + * @throws RegistrationError + * @throws MissingIngredientError + */ + ItemStack[] getItemStackSet() throws RegistrationError, MissingIngredientError; + + /** + * If you wish to support air, you must test before getting the ItemStack, or ItemStackSet + * + * @return true if this slot contains no ItemStack, this is passed as "_" + */ + public boolean isAir(); + + /** + * @return The Name Space of the item. Prefer getItemStack or getItemStackSet + */ + public String getNameSpace(); + + /** + * @return The Name of the item. Prefer getItemStack or getItemStackSet + */ + public String getItemName(); + + /** + * @return The Damage Value of the item. Prefer getItemStack or getItemStackSet + */ + public int getDamageValue(); + + /** + * @return The Damage Value of the item. Prefer getItemStack or getItemStackSet + */ + public int getQty(); + + /** + * Bakes the lists in for faster runtime lookups. + * @throws MissingIngredientError + * @throws RegistrationError + */ + void bake() throws RegistrationError, MissingIngredientError; + +} diff --git a/src/api/java/appeng/api/recipes/IRecipeHandler.java b/src/api/java/appeng/api/recipes/IRecipeHandler.java new file mode 100644 index 00000000..153d1623 --- /dev/null +++ b/src/api/java/appeng/api/recipes/IRecipeHandler.java @@ -0,0 +1,22 @@ +package appeng.api.recipes; + +/** + * Represents the AE2 Recipe Loading/Reading Class + */ +public interface IRecipeHandler +{ + + /** + * Call when you want to read recipes in from a file based on a loader + * + * @param loader recipe loader + * @param path path of file + */ + void parseRecipes(IRecipeLoader loader, String path); + + /** + * this loads the read recipes into minecraft, should be called in Init. + */ + void injectRecipes(); + +} diff --git a/src/api/java/appeng/api/recipes/IRecipeLoader.java b/src/api/java/appeng/api/recipes/IRecipeLoader.java new file mode 100644 index 00000000..a85dbeba --- /dev/null +++ b/src/api/java/appeng/api/recipes/IRecipeLoader.java @@ -0,0 +1,10 @@ +package appeng.api.recipes; + +import java.io.BufferedReader; + +public interface IRecipeLoader +{ + + BufferedReader getFile(String s) throws Exception; + +} diff --git a/src/api/java/appeng/api/recipes/ISubItemResolver.java b/src/api/java/appeng/api/recipes/ISubItemResolver.java new file mode 100644 index 00000000..49a0bf31 --- /dev/null +++ b/src/api/java/appeng/api/recipes/ISubItemResolver.java @@ -0,0 +1,13 @@ +package appeng.api.recipes; + +public interface ISubItemResolver +{ + + /** + * @param namespace namespace of sub item + * @param fullName name of sub item + * @return either a ResolveResult, or a ResolverResultSet + */ + public Object resolveItemByName(String namespace, String fullName); + +} diff --git a/src/api/java/appeng/api/recipes/ResolverResult.java b/src/api/java/appeng/api/recipes/ResolverResult.java new file mode 100644 index 00000000..03e696f0 --- /dev/null +++ b/src/api/java/appeng/api/recipes/ResolverResult.java @@ -0,0 +1,24 @@ +package appeng.api.recipes; + +import net.minecraft.nbt.NBTTagCompound; + +public class ResolverResult +{ + + final public String itemName; + final public int damageValue; + final public NBTTagCompound compound; + + public ResolverResult(String name, int damage) { + itemName = name; + damageValue = damage; + compound = null; + } + + public ResolverResult(String name, int damage, NBTTagCompound data) { + itemName = name; + damageValue = damage; + compound = data; + } + +} diff --git a/src/api/java/appeng/api/recipes/ResolverResultSet.java b/src/api/java/appeng/api/recipes/ResolverResultSet.java new file mode 100644 index 00000000..d9e34aa4 --- /dev/null +++ b/src/api/java/appeng/api/recipes/ResolverResultSet.java @@ -0,0 +1,19 @@ +package appeng.api.recipes; + +import java.util.Arrays; +import java.util.List; + +import net.minecraft.item.ItemStack; + +public class ResolverResultSet +{ + + public final String name; + public final List results; + + public ResolverResultSet(String myName, ItemStack... set) { + results = Arrays.asList( set ); + name = myName; + } + +} diff --git a/src/api/java/appeng/api/storage/ICellContainer.java b/src/api/java/appeng/api/storage/ICellContainer.java new file mode 100644 index 00000000..8b1f7c21 --- /dev/null +++ b/src/api/java/appeng/api/storage/ICellContainer.java @@ -0,0 +1,18 @@ +package appeng.api.storage; + +import appeng.api.networking.security.IActionHost; + +/** + * Represents a IGridhost that contributes to storage, such as a ME Chest, or ME Drive. + */ +public interface ICellContainer extends IActionHost, ICellProvider, ISaveProvider +{ + + /** + * tell the Cell container that this slot should blink, the slot number is relative to the + * + * @param slot slot index + */ + void blinkCell(int slot); + +} diff --git a/src/api/java/appeng/api/storage/ICellHandler.java b/src/api/java/appeng/api/storage/ICellHandler.java new file mode 100644 index 00000000..1ddc839a --- /dev/null +++ b/src/api/java/appeng/api/storage/ICellHandler.java @@ -0,0 +1,100 @@ +package appeng.api.storage; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; +import appeng.api.implementations.tiles.IChestOrDrive; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + +/** + * Registration record for {@link ICellRegistry} + */ +public interface ICellHandler +{ + + /** + * return true if the provided item is handled by your cell handler. ( AE May choose to skip this method, and just + * request a handler ) + * + * @param is to be checked item + * @return return true, if getCellHandler will not return null. + */ + boolean isCell(ItemStack is); + + /** + * If you cannot handle the provided item, return null + * + * @param is + * a storage cell item. + * @param host + * anytime the contents of your storage cell changes it should use this to request a save, please + * note, this value can be null. + * @param channel + * the storage channel requested. + * + * @return a new IMEHandler for the provided item + */ + IMEInventoryHandler getCellInventory(ItemStack is, ISaveProvider host, StorageChannel channel); + + /** + * @return the ME Chest texture for light pixels this storage cell type, should be 10x10 with 3px of transparent + * padding on a 16x16 texture, null is valid if your cell cannot be used in the ME Chest. refer to the + * assets for examples. + */ + @SideOnly(Side.CLIENT) + IIcon getTopTexture_Light(); + + /** + * @return the ME Chest texture for medium pixels this storage cell type, should be 10x10 with 3px of transparent + * padding on a 16x16 texture, null is valid if your cell cannot be used in the ME Chest. refer to the + * assets for examples. + */ + @SideOnly(Side.CLIENT) + IIcon getTopTexture_Medium(); + + /** + * @return the ME Chest texture for dark pixels this storage cell type, should be 10x10 with 3px of transparent + * padding on a 16x16 texture, null is valid if your cell cannot be used in the ME Chest. refer to the + * assets for examples. + */ + @SideOnly(Side.CLIENT) + IIcon getTopTexture_Dark(); + + /** + * + * Called when the storage cell is planed in an ME Chest and the user tries to open the terminal side, if your item + * is not available via ME Chests simply tell the user they can't use it, or something, other wise you should open + * your gui and display the cell to the user. + * + * @param player player opening chest gui + * @param chest to be opened chest + * @param cellHandler cell handler + * @param inv inventory handler + * @param is item + * @param chan storage channel + */ + void openChestGui(EntityPlayer player, IChestOrDrive chest, ICellHandler cellHandler, IMEInventoryHandler inv, ItemStack is, StorageChannel chan); + + /** + * 0 - cell is missing. + * + * 1 - green, ( usually means available room for types or items. ) + * + * 2 - orange, ( usually means available room for items, but not types. ) + * + * 3 - red, ( usually means the cell is 100% full ) + * + * @param is the cell item. ( use the handler for any details you can ) + * @param handler the handler for the cell is provides for reference, you can cast this to your handler. + * + * @return get the status of the cell based on its contents. + */ + int getStatusForCell(ItemStack is, IMEInventory handler); + + /** + * @return the ae/t to drain for this storage cell inside a chest/drive. + */ + double cellIdleDrain(ItemStack is, IMEInventory handler); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/storage/ICellInventory.java b/src/api/java/appeng/api/storage/ICellInventory.java new file mode 100644 index 00000000..c48567d4 --- /dev/null +++ b/src/api/java/appeng/api/storage/ICellInventory.java @@ -0,0 +1,96 @@ +package appeng.api.storage; + +import net.minecraft.inventory.IInventory; +import net.minecraft.item.ItemStack; +import appeng.api.config.FuzzyMode; +import appeng.api.storage.data.IAEItemStack; + +public interface ICellInventory extends IMEInventory +{ + + /** + * @return the item stack of this storage cell. + */ + ItemStack getItemStack(); + + /** + * @return idle cost for this Storage Cell + */ + double getIdleDrain(); + + /** + * @return fuzzy setting + */ + FuzzyMode getFuzzyMode(); + + /** + * @return access configured list + */ + IInventory getConfigInventory(); + + /** + * @return access installed upgrades. + */ + IInventory getUpgradesInventory(); + + /** + * @return How many bytes are used for each type? + */ + int getBytesPerType(); + + /** + * @return true if a new item type can be added. + */ + boolean canHoldNewItem(); + + /** + * @return total byte storage. + */ + long getTotalBytes(); + + /** + * @return how many bytes are free. + */ + long getFreeBytes(); + + /** + * @return how many bytes are in use. + */ + long getUsedBytes(); + + /** + * @return max number of types. + */ + long getTotalItemTypes(); + + /** + * @return how many items are stored. + */ + long getStoredItemCount(); + + /** + * @return how many items types are currently stored. + */ + long getStoredItemTypes(); + + /** + * @return how many item types remain. + */ + long getRemainingItemTypes(); + + /** + * @return how many more items can be stored. + */ + long getRemainingItemCount(); + + /** + * @return how many items can be added without consuming another byte. + */ + int getUnusedItemCount(); + + /** + * @return the status number for this drive. + */ + int getStatusForCell(); + +} diff --git a/src/api/java/appeng/api/storage/ICellInventoryHandler.java b/src/api/java/appeng/api/storage/ICellInventoryHandler.java new file mode 100644 index 00000000..b7e0d610 --- /dev/null +++ b/src/api/java/appeng/api/storage/ICellInventoryHandler.java @@ -0,0 +1,20 @@ +package appeng.api.storage; + +import appeng.api.config.IncludeExclude; +import appeng.api.storage.data.IAEItemStack; + +public interface ICellInventoryHandler extends IMEInventoryHandler +{ + + /** + * @return get access to the Cell Inventory. + */ + ICellInventory getCellInv(); + + boolean isPreformatted(); + + boolean isFuzzy(); + + IncludeExclude getIncludeExcludeMode(); + +} diff --git a/src/api/java/appeng/api/storage/ICellProvider.java b/src/api/java/appeng/api/storage/ICellProvider.java new file mode 100644 index 00000000..643439d6 --- /dev/null +++ b/src/api/java/appeng/api/storage/ICellProvider.java @@ -0,0 +1,29 @@ +package appeng.api.storage; + +import java.util.List; + +/** + * Allows you to provide cells via non IGridHosts directly to the storage system, drives, and similar features should go + * though {@link ICellContainer} and be automatically handled by the storage system. + */ +public interface ICellProvider +{ + + /** + * Inventory of the tile for use with ME, should always return an valid list, never NULL. + * + * You must return the correct Handler for the correct channel, if your handler returns a IAEItemStack handler, for + * a Fluid Channel stuffs going to explode, same with the reverse. + * + * @return a valid list of handlers, NEVER NULL + */ + List getCellArray(StorageChannel channel); + + /** + * the storage's priority. + * + * Positive and negative are supported + */ + int getPriority(); + +} diff --git a/src/api/java/appeng/api/storage/ICellRegistry.java b/src/api/java/appeng/api/storage/ICellRegistry.java new file mode 100644 index 00000000..4e983102 --- /dev/null +++ b/src/api/java/appeng/api/storage/ICellRegistry.java @@ -0,0 +1,50 @@ +package appeng.api.storage; + +import net.minecraft.item.ItemStack; +import appeng.api.IAppEngApi; + +/** + * Storage Cell Registry, used for specially implemented cells, if you just want to make a item act like a cell, or new + * cell with different bytes, then you should probably consider IStorageCell instead its considerably simpler. + * + * Do not Implement, obtained via {@link IAppEngApi}.getCellRegistry() + */ +public interface ICellRegistry +{ + + /** + * Register a new handler. + * + * @param handler cell handler + */ + void addCellHandler(ICellHandler handler); + + /** + * return true, if you can get a InventoryHandler for the item passed. + * + * @param is to be checked item + * @return true if the provided item, can be handled by a handler in AE, ( AE May choose to skip this and just get + * the handler instead. ) + */ + boolean isCellHandled(ItemStack is); + + /** + * get the handler, for the requested type. + * + * @param is to be checked item + * @return the handler registered for this item type. + */ + ICellHandler getHandler(ItemStack is); + + /** + * returns an IMEInventoryHandler for the provided item. + * + * @param is item with inventory handler + * @param host can be null, or the hosting tile / part. + * @param chan the storage channel to request the handler for. + * + * @return new IMEInventoryHandler, or null if there isn't one. + */ + IMEInventoryHandler getCellInventory(ItemStack is, ISaveProvider host, StorageChannel chan); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/storage/ICellWorkbenchItem.java b/src/api/java/appeng/api/storage/ICellWorkbenchItem.java new file mode 100644 index 00000000..e4fab828 --- /dev/null +++ b/src/api/java/appeng/api/storage/ICellWorkbenchItem.java @@ -0,0 +1,45 @@ +package appeng.api.storage; + +import net.minecraft.inventory.IInventory; +import net.minecraft.item.ItemStack; +import appeng.api.config.FuzzyMode; + +public interface ICellWorkbenchItem +{ + + /** + * if this return false, the item will not be treated as a cell, and cannot be inserted into the work bench. + * + * @param is item + * @return true if the item should be editable in the cell workbench. + */ + boolean isEditable(ItemStack is); + + /** + * used to edit the upgrade slots on your cell, should have a capacity of 0-24, you are also responsible for + * implementing the valid checks, and any storage/usage of them. + * + * onInventoryChange will be called when saving is needed. + */ + IInventory getUpgradesInventory(ItemStack is); + + /** + * Used to extract, or mirror the contents of the work bench onto the cell. + * + * - This should have exactly 63 slots, any more, or less might cause issues. + * + * onInventoryChange will be called when saving is needed. + */ + IInventory getConfigInventory(ItemStack is); + + /** + * @return the current fuzzy status. + */ + FuzzyMode getFuzzyMode(ItemStack is); + + /** + * sets the setting on the cell. + */ + void setFuzzyMode(ItemStack is, FuzzyMode fzMode); + +} diff --git a/src/api/java/appeng/api/storage/IExternalStorageHandler.java b/src/api/java/appeng/api/storage/IExternalStorageHandler.java new file mode 100644 index 00000000..a17cdd6f --- /dev/null +++ b/src/api/java/appeng/api/storage/IExternalStorageHandler.java @@ -0,0 +1,37 @@ +package appeng.api.storage; + +import net.minecraft.tileentity.TileEntity; +import net.minecraftforge.common.util.ForgeDirection; +import appeng.api.networking.security.BaseActionSource; + +/** + * A Registration Record for {@link IExternalStorageRegistry} + */ +public interface IExternalStorageHandler +{ + + /** + * if this can handle the provided inventory, return true. ( Generally skipped by AE, and it just calls getInventory + * ) + * + * @param te to be handled tile entity + * @param mySrc source + * @return true, if it can get a handler via getInventory + */ + boolean canHandle(TileEntity te, ForgeDirection d, StorageChannel channel, BaseActionSource mySrc); + + /** + * if this can handle the given inventory, return the a IMEInventory implementing class for it, if not return null + * + * please note that if your inventory changes and requires polling, you must use an {@link IMEMonitor} instead of an + * {@link IMEInventory} failure to do so will result in invalid item counts and reporting of the inventory. + * + * @param te to be handled tile entity + * @param d direction + * @param channel channel + * @param src source + * @return The Handler for the inventory + */ + IMEInventory getInventory(TileEntity te, ForgeDirection d, StorageChannel channel, BaseActionSource src); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/storage/IExternalStorageRegistry.java b/src/api/java/appeng/api/storage/IExternalStorageRegistry.java new file mode 100644 index 00000000..7edbc8b9 --- /dev/null +++ b/src/api/java/appeng/api/storage/IExternalStorageRegistry.java @@ -0,0 +1,32 @@ +package appeng.api.storage; + +import net.minecraft.tileentity.TileEntity; +import net.minecraftforge.common.util.ForgeDirection; +import appeng.api.IAppEngApi; +import appeng.api.networking.security.BaseActionSource; + +/** + * A Registry of External Storage handlers. + * + * Do not implement obtain via {@link IAppEngApi}.registries().getExternalStorageRegistry() + */ +public interface IExternalStorageRegistry +{ + + /** + * A registry for StorageBus interactions + * + * @param esh storage handler + */ + void addExternalStorageInterface(IExternalStorageHandler esh); + + /** + * @param te tile entity + * @param opposite direction + * @param channel channel + * @param mySrc source + * @return the handler for a given tile / forge direction + */ + IExternalStorageHandler getHandler(TileEntity te, ForgeDirection opposite, StorageChannel channel, BaseActionSource mySrc); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/storage/IMEInventory.java b/src/api/java/appeng/api/storage/IMEInventory.java new file mode 100644 index 00000000..d51be9fa --- /dev/null +++ b/src/api/java/appeng/api/storage/IMEInventory.java @@ -0,0 +1,56 @@ +package appeng.api.storage; + +import appeng.api.config.Actionable; +import appeng.api.networking.security.BaseActionSource; +import appeng.api.storage.data.IAEStack; +import appeng.api.storage.data.IItemList; + +/** + * AE's Equivalent to IInventory, used to reading contents, and manipulating contents of ME Inventories. + * + * Implementations should COMPLETELY ignore stack size limits from an external view point, Meaning that you can inject + * Integer.MAX_VALUE items and it should work as defined, or be able to extract Integer.MAX_VALUE and have it work as + * defined, Translations to MC's max stack size are external to the AE API. + * + * If you want to request a stack of an item, you should should determine that prior to requesting the stack from the + * inventory. + */ +public interface IMEInventory +{ + + /** + * Store new items, or simulate the addition of new items into the ME Inventory. + * + * @param input item to add. + * @param type action type + * @param src action source + * @return returns the number of items not added. + */ + public StackType injectItems(StackType input, Actionable type, BaseActionSource src); + + /** + * Extract the specified item from the ME Inventory + * + * @param request + * item to request ( with stack size. ) + * @param mode + * simulate, or perform action? + * @return returns the number of items extracted, null + */ + public StackType extractItems(StackType request, Actionable mode, BaseActionSource src); + + /** + * request a full report of all available items, storage. + * + * @param out + * the IItemList the results will be written too + * @return returns same list that was passed in, is passed out + */ + public IItemList getAvailableItems(IItemList out); + + /** + * @return the type of channel your handler should be part of + */ + public StorageChannel getChannel(); + +} diff --git a/src/api/java/appeng/api/storage/IMEInventoryHandler.java b/src/api/java/appeng/api/storage/IMEInventoryHandler.java new file mode 100644 index 00000000..a93d8b86 --- /dev/null +++ b/src/api/java/appeng/api/storage/IMEInventoryHandler.java @@ -0,0 +1,67 @@ +package appeng.api.storage; + +import appeng.api.config.AccessRestriction; +import appeng.api.storage.data.IAEStack; + +/** + * Thin logic layer that can be swapped with different IMEInventory implementations, used to handle features related to + * storage, that are Separate from the storage medium itself. + * + * @param + */ +public interface IMEInventoryHandler extends IMEInventory +{ + + /** + * determine if items can be injected/extracted. + * + * @return the access + */ + public AccessRestriction getAccess(); + + /** + * determine if a particular item is prioritized for this inventory handler, if it is, then it will be added to this + * inventory prior to any non-prioritized inventories. + * + * @param input + * - item that might be added + * @return if its prioritized + */ + public boolean isPrioritized(StackType input); + + /** + * determine if an item can be accepted and stored. + * + * @param input + * - item that might be added + * @return if the item can be added + */ + public boolean canAccept(StackType input); + + /** + * determine what the priority of the inventory is. + * + * @return the priority, zero is default, positive and negative are supported. + */ + public int getPriority(); + + /** + * pass back value for blinkCell. + * + * @return the slot index for the cell that this represents in the storage unit, the method on the + * {@link ICellContainer} will be called with this value, only trust the return value of this method if you + * are the implementer of the {@link IMEInventoryHandler}. + */ + public int getSlot(); + + /** + * AE Uses a two pass placement system, the first pass checks contents and tries to find a place where the item + * belongs, however in some cases you can save processor time, or require that the second, or first pass is simply + * ignored, this allows you to do that. + * + * @param i + * - pass number ( 1 or 2 ) + * @return true, if this inventory is valid for this pass. + */ + public boolean validForPass(int i); +} diff --git a/src/api/java/appeng/api/storage/IMEMonitor.java b/src/api/java/appeng/api/storage/IMEMonitor.java new file mode 100644 index 00000000..439bb00e --- /dev/null +++ b/src/api/java/appeng/api/storage/IMEMonitor.java @@ -0,0 +1,24 @@ +package appeng.api.storage; + +import appeng.api.networking.storage.IBaseMonitor; +import appeng.api.storage.data.IAEStack; +import appeng.api.storage.data.IItemList; + +public interface IMEMonitor extends IMEInventoryHandler, IBaseMonitor +{ + + @Override + @Deprecated + /** + * This method is discouraged when accessing data via a IMEMonitor + */ + public IItemList getAvailableItems(IItemList out); + + /** + * Get access to the full item list of the network, preferred over {@link IMEInventory} .getAvailableItems(...) + * + * @return full storage list. + */ + IItemList getStorageList(); + +} diff --git a/src/api/java/appeng/api/storage/IMEMonitorHandlerReceiver.java b/src/api/java/appeng/api/storage/IMEMonitorHandlerReceiver.java new file mode 100644 index 00000000..f0f50d97 --- /dev/null +++ b/src/api/java/appeng/api/storage/IMEMonitorHandlerReceiver.java @@ -0,0 +1,30 @@ +package appeng.api.storage; + +import appeng.api.networking.security.BaseActionSource; +import appeng.api.networking.storage.IBaseMonitor; +import appeng.api.storage.data.IAEStack; + +public interface IMEMonitorHandlerReceiver +{ + + /** + * return true if this object should remain as a listener. + * + * @param verificationToken to be checked object + * @return true if object should remain as a listener + */ + boolean isValid(Object verificationToken); + + /** + * called when changes are made to the Monitor, but only if listener is still valid. + * + * @param change done change + */ + void postChange(IBaseMonitor monitor, Iterable change, BaseActionSource actionSource); + + /** + * called when the list updates its contents, this is mostly for handling power events. + */ + void onListUpdate(); + +} diff --git a/src/api/java/appeng/api/storage/ISaveProvider.java b/src/api/java/appeng/api/storage/ISaveProvider.java new file mode 100644 index 00000000..a88bfc5b --- /dev/null +++ b/src/api/java/appeng/api/storage/ISaveProvider.java @@ -0,0 +1,9 @@ +package appeng.api.storage; + + +public interface ISaveProvider +{ + + void saveChanges(IMEInventory cellInventory); + +} diff --git a/src/api/java/appeng/api/storage/IStorageHelper.java b/src/api/java/appeng/api/storage/IStorageHelper.java new file mode 100644 index 00000000..3f3ceb7e --- /dev/null +++ b/src/api/java/appeng/api/storage/IStorageHelper.java @@ -0,0 +1,94 @@ +package appeng.api.storage; + +import appeng.api.networking.crafting.ICraftingLink; +import appeng.api.networking.crafting.ICraftingRequester; +import appeng.api.networking.energy.IEnergySource; +import appeng.api.networking.security.BaseActionSource; +import appeng.api.storage.data.IAEFluidStack; +import appeng.api.storage.data.IAEItemStack; +import appeng.api.storage.data.IItemList; +import io.netty.buffer.ByteBuf; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraftforge.fluids.FluidStack; + +import java.io.IOException; + +public interface IStorageHelper +{ + + /** + * load a crafting link from nbt data. + * + * @param data to be loaded data + * @return crafting link + */ + ICraftingLink loadCraftingLink(NBTTagCompound data, ICraftingRequester req); + + /** + * @param is + * An ItemStack + * + * @return a new instance of {@link IAEItemStack} from a MC {@link ItemStack} + */ + IAEItemStack createItemStack(ItemStack is); + + /** + * @param is + * A FluidStack + * + * @return a new instance of {@link IAEFluidStack} from a Forge {@link FluidStack} + */ + IAEFluidStack createFluidStack(FluidStack is); + + /** + * @return a new instance of {@link IItemList} for items + */ + IItemList createItemList(); + + /** + * @return a new instance of {@link IItemList} for fluids + */ + IItemList createFluidList(); + + /** + * Read a AE Item Stack from a byte stream, returns a AE item stack or null. + * + * @param input to be loaded data + * @return item based of data + * @throws IOException if file could not be read + */ + IAEItemStack readItemFromPacket(ByteBuf input) throws IOException; + + /** + * Read a AE Fluid Stack from a byte stream, returns a AE fluid stack or null. + * + * @param input to be loaded data + * @return fluid based on data + * @throws IOException if file could not be written + */ + IAEFluidStack readFluidFromPacket(ByteBuf input) throws IOException; + + /** + * use energy from energy, to remove request items from cell, at the request of src. + * + * @param energy to be drained energy source + * @param cell cell of requested items + * @param request requested items + * @param src action source + * @return items that successfully extracted. + */ + IAEItemStack poweredExtraction(IEnergySource energy, IMEInventory cell, IAEItemStack request, BaseActionSource src); + + /** + * use energy from energy, to inject input items into cell, at the request of src + * + * @param energy to be added energy source + * @param cell injected cell + * @param input to be injected items + * @param src action source + * @return items that failed to insert. + */ + IAEItemStack poweredInsert(IEnergySource energy, IMEInventory cell, IAEItemStack input, BaseActionSource src); + +} diff --git a/src/api/java/appeng/api/storage/IStorageMonitorable.java b/src/api/java/appeng/api/storage/IStorageMonitorable.java new file mode 100644 index 00000000..ea7293a8 --- /dev/null +++ b/src/api/java/appeng/api/storage/IStorageMonitorable.java @@ -0,0 +1,25 @@ +package appeng.api.storage; + +import appeng.api.implementations.tiles.ITileStorageMonitorable; +import appeng.api.storage.data.IAEFluidStack; +import appeng.api.storage.data.IAEItemStack; + +/** + * represents the internal behavior of a {@link ITileStorageMonitorable} use it to get this value for a tile, or part. + * + * never check a tile for this, always go though ITileStorageMonitorable if you wish to use this interface. + */ +public interface IStorageMonitorable +{ + + /** + * Access the item inventory for the monitorable storage. + */ + IMEMonitor getItemInventory(); + + /** + * Access the fluid inventory for the monitorable storage. + */ + IMEMonitor getFluidInventory(); + +} diff --git a/src/api/java/appeng/api/storage/ITerminalHost.java b/src/api/java/appeng/api/storage/ITerminalHost.java new file mode 100644 index 00000000..70f76bd0 --- /dev/null +++ b/src/api/java/appeng/api/storage/ITerminalHost.java @@ -0,0 +1,8 @@ +package appeng.api.storage; + +import appeng.api.util.IConfigurableObject; + +public interface ITerminalHost extends IStorageMonitorable, IConfigurableObject +{ + +} diff --git a/src/api/java/appeng/api/storage/MEMonitorHandler.java b/src/api/java/appeng/api/storage/MEMonitorHandler.java new file mode 100644 index 00000000..0af84ecc --- /dev/null +++ b/src/api/java/appeng/api/storage/MEMonitorHandler.java @@ -0,0 +1,173 @@ +package appeng.api.storage; + +import appeng.api.config.AccessRestriction; +import appeng.api.config.Actionable; +import appeng.api.networking.security.BaseActionSource; +import appeng.api.storage.data.IAEStack; +import appeng.api.storage.data.IItemList; +import com.google.common.collect.ImmutableList; + +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map.Entry; + +/** + * Common implementation of a simple class that monitors injection/extraction of a inventory to send events to a list of + * listeners. + * + * @param + */ +public class MEMonitorHandler implements IMEMonitor +{ + + private final IMEInventoryHandler internalHandler; + private final IItemList cachedList; + private final HashMap, Object> listeners = new HashMap, Object>(); + + protected boolean hasChanged = true; + + protected IMEInventoryHandler getHandler() + { + return internalHandler; + } + + protected Iterator, Object>> getListeners() + { + return listeners.entrySet().iterator(); + } + + protected void postChangesToListeners( Iterable changes, BaseActionSource src) + { + notifyListenersOfChange( changes, src ); + } + + protected void notifyListenersOfChange(Iterable diff, BaseActionSource src) + { + hasChanged = true;// need to update the cache. + Iterator, Object>> i = getListeners(); + while (i.hasNext()) + { + Entry, Object> o = i.next(); + IMEMonitorHandlerReceiver receiver = o.getKey(); + if ( receiver.isValid( o.getValue() ) ) + receiver.postChange( this, diff, src ); + else + i.remove(); + } + } + + private StackType monitorDifference(IAEStack original, StackType leftOvers, boolean extraction, BaseActionSource src) + { + StackType diff = (StackType) original.copy(); + + if ( extraction ) + diff.setStackSize( leftOvers == null ? 0 : -leftOvers.getStackSize() ); + else if ( leftOvers != null ) + diff.decStackSize( leftOvers.getStackSize() ); + + if ( diff.getStackSize() != 0 ) + postChangesToListeners( ImmutableList.of( diff ), src ); + + return leftOvers; + } + + public MEMonitorHandler(IMEInventoryHandler t) { + internalHandler = t; + cachedList = (IItemList) t.getChannel().createList(); + } + + public MEMonitorHandler(IMEInventoryHandler t, StorageChannel chan) { + internalHandler = t; + cachedList = (IItemList) chan.createList(); + } + + @Override + public void addListener(IMEMonitorHandlerReceiver l, Object verificationToken) + { + listeners.put( l, verificationToken ); + } + + @Override + public void removeListener(IMEMonitorHandlerReceiver l) + { + listeners.remove( l ); + } + + @Override + public StackType injectItems(StackType input, Actionable mode, BaseActionSource src) + { + if ( mode == Actionable.SIMULATE ) + return getHandler().injectItems( input, mode, src ); + return monitorDifference(input.copy(), getHandler().injectItems(input, mode, src), false, src); + } + + @Override + public StackType extractItems(StackType request, Actionable mode, BaseActionSource src) + { + if ( mode == Actionable.SIMULATE ) + return getHandler().extractItems( request, mode, src ); + return monitorDifference(request.copy(), getHandler().extractItems(request, mode, src), true, src); + } + + @Override + public IItemList getStorageList() + { + if ( hasChanged ) + { + hasChanged = false; + cachedList.resetStatus(); + return getAvailableItems( cachedList ); + } + + return cachedList; + } + + @Override + public IItemList getAvailableItems(IItemList out) + { + return getHandler().getAvailableItems( out ); + } + + @Override + public StorageChannel getChannel() + { + return getHandler().getChannel(); + } + + @Override + public AccessRestriction getAccess() + { + return getHandler().getAccess(); + } + + @Override + public boolean isPrioritized(StackType input) + { + return getHandler().isPrioritized( input ); + } + + @Override + public boolean canAccept(StackType input) + { + return getHandler().canAccept( input ); + } + + @Override + public int getPriority() + { + return getHandler().getPriority(); + } + + @Override + public int getSlot() + { + return getHandler().getSlot(); + } + + @Override + public boolean validForPass(int i) + { + return getHandler().validForPass( i ); + } + +} diff --git a/src/api/java/appeng/api/storage/StorageChannel.java b/src/api/java/appeng/api/storage/StorageChannel.java new file mode 100644 index 00000000..1ada1509 --- /dev/null +++ b/src/api/java/appeng/api/storage/StorageChannel.java @@ -0,0 +1,33 @@ +package appeng.api.storage; + +import appeng.api.AEApi; +import appeng.api.storage.data.IAEFluidStack; +import appeng.api.storage.data.IAEItemStack; +import appeng.api.storage.data.IAEStack; +import appeng.api.storage.data.IItemList; + +public enum StorageChannel +{ + /** + * AE2's Default Storage. + */ + ITEMS( IAEItemStack.class ), + + /** + * AE2's Fluid Based Storage ( mainly added to better support ExtraCells ) + */ + FLUIDS( IAEFluidStack.class ); + + public final Class type; + + private StorageChannel( Class t ) { + type = t; + } + + public IItemList createList() { + if ( this == ITEMS ) + return AEApi.instance().storage().createItemList(); + else + return AEApi.instance().storage().createFluidList(); + } +} diff --git a/src/api/java/appeng/api/storage/data/IAEFluidStack.java b/src/api/java/appeng/api/storage/data/IAEFluidStack.java new file mode 100644 index 00000000..9a1ad283 --- /dev/null +++ b/src/api/java/appeng/api/storage/data/IAEFluidStack.java @@ -0,0 +1,52 @@ +package appeng.api.storage.data; + +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidStack; + +/** + * An alternate version of FluidStack for AE to keep tabs on things easier, and + * to support larger storage. stackSizes of getFluidStack will be capped. + * + * You may hold on to these if you want, just make sure you let go of them when + * your not using them. + * + * Don't Implement. + * + * Construct with Util.createFluidStack( FluidStack ) + * + */ +public interface IAEFluidStack extends IAEStack +{ + + /** + * creates a standard Forge FluidStack for the fluid. + * + * @return new FluidStack + */ + FluidStack getFluidStack(); + + /** + * create a AE Fluid clone. + * + * @return the copy. + */ + @Override + public IAEFluidStack copy(); + + /** + * Combines two IAEItemStacks via addition. + * + * @param option + * , to add to the current one. + */ + @Override + void add(IAEFluidStack option); + + /** + * quick way to get access to the Forge Fluid Definition. + * + * @return fluid definition + */ + Fluid getFluid(); + +} diff --git a/src/api/java/appeng/api/storage/data/IAEItemStack.java b/src/api/java/appeng/api/storage/data/IAEItemStack.java new file mode 100644 index 00000000..26cbbb58 --- /dev/null +++ b/src/api/java/appeng/api/storage/data/IAEItemStack.java @@ -0,0 +1,82 @@ +package appeng.api.storage.data; + +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; + +/** + * An alternate version of ItemStack for AE to keep tabs on things easier, and to support larger storage. stackSizes of + * getItemStack will be capped. + * + * You may hold on to these if you want, just make sure you let go of them when your not using them. + * + * Don't Implement. + * + * Construct with Util.createItemStack( ItemStack ) + */ +public interface IAEItemStack extends IAEStack +{ + + /** + * creates a standard MC ItemStack for the item. + * + * @return new ItemStack + */ + public ItemStack getItemStack(); + + /** + * create a AE Item clone + * + * @return the copy + */ + @Override + public IAEItemStack copy(); + + /** + * is there NBT Data for this item? + * + * @return if there is + */ + boolean hasTagCompound(); + + /** + * Combines two IAEItemStacks via addition. + * + * @param option + * to add to the current one. + */ + @Override + void add(IAEItemStack option); + + /** + * quick way to get access to the MC Item Definition. + * + * @return item definition + */ + Item getItem(); + + /** + * @return the items damage value + */ + int getItemDamage(); + + /** + * Compare the Ore Dictionary ID for this to another item. + */ + boolean sameOre(IAEItemStack is); + + /** + * compare the item/damage/nbt of the stack. + * + * @param otherStack to be compared item + * @return true if it is the same type (same item, damage, nbt) + */ + boolean isSameType(IAEItemStack otherStack); + + /** + * compare the item/damage/nbt of the stack. + * + * @param stored to be compared item + * @return true if it is the same type (same item, damage, nbt) + */ + boolean isSameType(ItemStack stored); +} \ No newline at end of file diff --git a/src/api/java/appeng/api/storage/data/IAEStack.java b/src/api/java/appeng/api/storage/data/IAEStack.java new file mode 100644 index 00000000..64a5963c --- /dev/null +++ b/src/api/java/appeng/api/storage/data/IAEStack.java @@ -0,0 +1,178 @@ +package appeng.api.storage.data; + +import appeng.api.config.FuzzyMode; +import appeng.api.storage.StorageChannel; +import io.netty.buffer.ByteBuf; +import net.minecraft.nbt.NBTTagCompound; + +import java.io.IOException; + +public interface IAEStack +{ + + /** + * add two stacks together + * + * @param is added item + */ + void add(StackType is); + + /** + * number of items in the stack. + * + * @return basically ItemStack.stackSize + */ + long getStackSize(); + + /** + * changes the number of items in the stack. + * + * @param stackSize + * , ItemStack.stackSize = N + */ + StackType setStackSize(long stackSize); + + /** + * Same as getStackSize, but for requestable items. ( LP ) + * + * @return basically itemStack.stackSize but for requestable items. + */ + long getCountRequestable(); + + /** + * Same as setStackSize, but for requestable items. ( LP ) + * + * @return basically itemStack.stackSize = N but for setStackSize items. + */ + StackType setCountRequestable(long countRequestable); + + /** + * true, if the item can be crafted. + * + * @return true, if it can be crafted. + */ + boolean isCraftable(); + + /** + * change weather the item can be crafted. + * + * @param isCraftable can item be crafted + */ + StackType setCraftable(boolean isCraftable); + + /** + * clears, requestable, craftable, and stack sizes. + */ + StackType reset(); + + /** + * returns true, if the item can be crafted, requested, or extracted. + * + * @return isThisRecordMeaningful + */ + boolean isMeaningful(); + + /** + * Adds more to the stack size... + * + * @param i additional stack size + */ + void incStackSize(long i); + + /** + * removes some from the stack size. + */ + void decStackSize(long i); + + /** + * adds items to the requestable + * + * @param i increased amount of requested items + */ + void incCountRequestable(long i); + + /** + * removes items from the requestable + * + * @param i decreased amount of requested items + */ + void decCountRequestable(long i); + + /** + * write to a NBTTagCompound. + * + * @param i to be written data + */ + void writeToNBT(NBTTagCompound i); + + /** + * Compare stacks using precise logic. + * + * a IAEItemStack to another AEItemStack or a ItemStack. + * + * or + * + * IAEFluidStack, FluidStack + * + * @param obj compared object + * @return true if they are the same. + */ + @Override + boolean equals(Object obj); + + /** + * compare stacks using fuzzy logic + * + * a IAEItemStack to another AEItemStack or a ItemStack. + * + * @param st stacks + * @param mode used fuzzy mode + * @return true if two stacks are equal based on AE Fuzzy Comparison. + */ + boolean fuzzyComparison(Object st, FuzzyMode mode); + + /** + * Slower for disk saving, but smaller/more efficient for packets. + * + * @param data to be written data + * @throws IOException + */ + void writeToPacket(ByteBuf data) throws IOException; + + /** + * Clone the Item / Fluid Stack + * + * @return a new Stack, which is copied from the original. + */ + StackType copy(); + + /** + * create an empty stack. + * + * @return a new stack, which represents an empty copy of the original. + */ + StackType empty(); + + /** + * obtain the NBT Data for the item. + * + * @return nbt data + */ + IAETagCompound getTagCompound(); + + /** + * @return true if the stack is a {@link IAEItemStack} + */ + boolean isItem(); + + /** + * @return true if the stack is a {@link IAEFluidStack} + */ + boolean isFluid(); + + /** + * @return ITEM or FLUID + */ + StorageChannel getChannel(); + +} diff --git a/src/api/java/appeng/api/storage/data/IAETagCompound.java b/src/api/java/appeng/api/storage/data/IAETagCompound.java new file mode 100644 index 00000000..ef283978 --- /dev/null +++ b/src/api/java/appeng/api/storage/data/IAETagCompound.java @@ -0,0 +1,33 @@ +package appeng.api.storage.data; + +import net.minecraft.nbt.NBTTagCompound; +import appeng.api.features.IItemComparison; + +/** + * Don't cast this... either compare with it, or copy it. + * + * Don't Implement. + */ +public interface IAETagCompound +{ + + /** + * @return a copy ( the copy will not be a IAETagCompound, it will be a NBTTagCompound ) + */ + public NBTTagCompound getNBTTagCompoundCopy(); + + /** + * compare to other NBTTagCompounds or IAETagCompounds + * + * @param a compared object + * @return true, if they are the same. + */ + @Override + boolean equals(Object a); + + /** + * @return the special comparison for this tag + */ + IItemComparison getSpecialComparison(); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/storage/data/IItemContainer.java b/src/api/java/appeng/api/storage/data/IItemContainer.java new file mode 100644 index 00000000..fb12493d --- /dev/null +++ b/src/api/java/appeng/api/storage/data/IItemContainer.java @@ -0,0 +1,42 @@ +package appeng.api.storage.data; + +import appeng.api.config.FuzzyMode; + +import java.util.Collection; + +/** + * Represents a list of items in AE. + * + * Don't Implement. + * + * Construct with Util.createItemList() + */ +public interface IItemContainer +{ + + /** + * add a stack to the list, this will merge the stack with an item already in the list if found. + * + * @param option added stack + */ + public void add(StackType option); // adds stack as is + + /** + * @param i compared item + * @return a stack equivalent to the stack passed in, but with the correct stack size information, or null if its + * not present + */ + StackType findPrecise(StackType i); + + /** + * @param input compared item + * @return a list of relevant fuzzy matched stacks + */ + public Collection findFuzzy(StackType input, FuzzyMode fuzzy); + + /** + * @return true if there are no items in the list + */ + public boolean isEmpty(); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/storage/data/IItemList.java b/src/api/java/appeng/api/storage/data/IItemList.java new file mode 100644 index 00000000..d8f06d11 --- /dev/null +++ b/src/api/java/appeng/api/storage/data/IItemList.java @@ -0,0 +1,59 @@ +package appeng.api.storage.data; + +import java.util.Iterator; + +/** + * Represents a list of items in AE. + * + * Don't Implement. + * + * Construct with Util.createItemList() + */ +public interface IItemList extends IItemContainer, Iterable +{ + + /** + * add a stack to the list stackSize is used to add to stackSize, this will merge the stack with an item already in + * the list if found. + * + * @param option stacktype option + */ + public void addStorage(StackType option); // adds a stack as stored + + /** + * add a stack to the list as craftable, this will merge the stack with an item already in the list if found. + * + * @param option stacktype option + */ + public void addCrafting(StackType option); + + /** + * add a stack to the list, stack size is used to add to requestable, this will merge the stack with an item already + * in the list if found. + * + * @param option stacktype option + */ + public void addRequestable(StackType option); // adds a stack as requestable + + /** + * @return the first item in the list + */ + StackType getFirstItem(); + + /** + * @return the number of items in the list + */ + int size(); + + /** + * allows you to iterate the list. + */ + @Override + public Iterator iterator(); + + /** + * resets stack sizes to 0. + */ + void resetStatus(); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/util/AECableType.java b/src/api/java/appeng/api/util/AECableType.java new file mode 100644 index 00000000..c1ee4eed --- /dev/null +++ b/src/api/java/appeng/api/util/AECableType.java @@ -0,0 +1,30 @@ +package appeng.api.util; + +public enum AECableType +{ + /** + * No Cable present. + */ + NONE, + + /** + * Connections to this block should render as glass. + */ + GLASS, + + /** + * Connections to this block should render as covered. + */ + COVERED, + + /** + * Connections to this block should render as smart. + */ + SMART, + + /** + * Dense Cable, represents a tier 2 block that can carry 32 channels. + */ + DENSE, + +} diff --git a/src/api/java/appeng/api/util/AEColor.java b/src/api/java/appeng/api/util/AEColor.java new file mode 100644 index 00000000..83a45894 --- /dev/null +++ b/src/api/java/appeng/api/util/AEColor.java @@ -0,0 +1,88 @@ +package appeng.api.util; + +import net.minecraft.util.StatCollector; + +/** + * List of all colors supported by AE, their names, and various colors for display. + * + * Should be the same order as Dyes, excluding Transparent. + */ +public enum AEColor +{ + + White("gui.appliedenergistics2.White", 0xBEBEBE, 0xDBDBDB, 0xFAFAFA), + + Orange("gui.appliedenergistics2.Orange", 0xF99739, 0xFAAE44, 0xF4DEC3), + + Magenta("gui.appliedenergistics2.Magenta", 0x821E82, 0xB82AB8, 0xC598C8), + + LightBlue("gui.appliedenergistics2.LightBlue", 0x628DCB, 0x82ACE7, 0xD8F6FF), + + Yellow("gui.appliedenergistics2.Yellow", 0xFFF7AA, 0xF8FF4A, 0xFFFFE8), + + Lime("gui.appliedenergistics2.Lime", 0x7CFF4A, 0xBBFF51, 0xE7F7D7), + + Pink("gui.appliedenergistics2.Pink", 0xDC8DB5, 0xF8B5D7, 0xF7DEEB), + + Gray("gui.appliedenergistics2.Gray", 0x7C7C7C, 0xA0A0A0, 0xC9C9C9), + + LightGray("gui.appliedenergistics2.LightGray", 0x9D9D9D, 0xCDCDCD, 0xEFEFEF), + + Cyan("gui.appliedenergistics2.Cyan", 0x2F9BA5, 0x51AAC6, 0xAEDDF4), + + Purple("gui.appliedenergistics2.Purple", 0x8230B2, 0xA453CE, 0xC7A3CC), + + Blue("gui.appliedenergistics2.Blue", 0x2D29A0, 0x514AFF, 0xDDE6FF), + + Brown("gui.appliedenergistics2.Brown", 0x724E35, 0xB7967F, 0xE0D2C8), + + Green("gui.appliedenergistics2.Green", 0x45A021, 0x60E32E, 0xE3F2E3), + + Red("gui.appliedenergistics2.Red", 0xA50029, 0xFF003C, 0xFFE6ED), + + Black("gui.appliedenergistics2.Black", 0x2B2B2B, 0x565656, 0x848484), + + Transparent("gui.appliedenergistics2.Fluix", 0x1B2344, 0x895CA8, 0xD7BBEC); + + /** + * Unlocalized name for color. + */ + final public String unlocalizedName; + + /** + * Darkest Variant of the color, nearly black; as a RGB HEX Integer + */ + final public int blackVariant; + + /** + * The Variant of the color that is used to represent the color normally; as a RGB HEX Integer + */ + final public int mediumVariant; + + /** + * Lightest Variant of the color, nearly white; as a RGB HEX Integer + */ + final public int whiteVariant; + + AEColor(String unlocalizedName, int blackHex, int medHex, int whiteHex) { + this.unlocalizedName = unlocalizedName; + blackVariant = blackHex; + mediumVariant = medHex; + whiteVariant = whiteHex; + } + + /** + * Logic to see which colors match each other.. special handle for Transparent + */ + public boolean matches(AEColor color) + { + return equals(Transparent) || color.equals(Transparent) || equals(color); + } + + @Override + public String toString() + { + return StatCollector.translateToLocal( unlocalizedName ); + } + +} diff --git a/src/api/java/appeng/api/util/AEColoredItemDefinition.java b/src/api/java/appeng/api/util/AEColoredItemDefinition.java new file mode 100644 index 00000000..75a56f5e --- /dev/null +++ b/src/api/java/appeng/api/util/AEColoredItemDefinition.java @@ -0,0 +1,47 @@ +package appeng.api.util; + +import net.minecraft.block.Block; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.tileentity.TileEntity; + +public interface AEColoredItemDefinition +{ + + /** + * @return the {@link Block} Implementation if applicable + */ + Block block(AEColor color); + + /** + * @return the {@link Item} Implementation if applicable + */ + Item item(AEColor color); + + /** + * @return the {@link TileEntity} Class if applicable. + */ + Class entity(AEColor color); + + /** + * @return an {@link ItemStack} with specified quantity of this item. + */ + ItemStack stack(AEColor color, int stackSize); + + /** + * @param stackSize + * - stack size of the result. + * @return an array of all colors. + */ + ItemStack[] allStacks(int stackSize); + + /** + * Compare {@link ItemStack} with this {@link AEItemDefinition} + * + * @param color compared color of item + * @param comparableItem compared item + * @return true if the item stack is a matching item. + */ + boolean sameAs(AEColor color, ItemStack comparableItem); + +} diff --git a/src/api/java/appeng/api/util/AEItemDefinition.java b/src/api/java/appeng/api/util/AEItemDefinition.java new file mode 100644 index 00000000..9fdd987c --- /dev/null +++ b/src/api/java/appeng/api/util/AEItemDefinition.java @@ -0,0 +1,54 @@ +package appeng.api.util; + +import net.minecraft.block.Block; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.IBlockAccess; + +/** + * Gives easy access to different part of the various, items/blocks/materials in AE. + */ +public interface AEItemDefinition +{ + + /** + * @return the {@link Block} Implementation if applicable + */ + Block block(); + + /** + * @return the {@link Item} Implementation if applicable + */ + Item item(); + + /** + * @return the {@link TileEntity} Class if applicable. + */ + Class entity(); + + /** + * @return an {@link ItemStack} with specified quantity of this item. + */ + ItemStack stack(int stackSize); + + /** + * Compare {@link ItemStack} with this {@link AEItemDefinition} + * + * @param comparableItem compared item + * @return true if the item stack is a matching item. + */ + boolean sameAsStack(ItemStack comparableItem); + + /** + * Compare Block with world. + * + * @param world world of block + * @param x x pos of block + * @param y y pos of block + * @param z z pos of block + * + * @return if the block is placed in the world at the specific location. + */ + boolean sameAsBlock(IBlockAccess world, int x, int y, int z); +} diff --git a/src/api/java/appeng/api/util/DimensionalCoord.java b/src/api/java/appeng/api/util/DimensionalCoord.java new file mode 100644 index 00000000..2f528a0a --- /dev/null +++ b/src/api/java/appeng/api/util/DimensionalCoord.java @@ -0,0 +1,71 @@ +package appeng.api.util; + +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.World; + +/** + * Represents a location in the Minecraft Universe + */ +public class DimensionalCoord extends WorldCoord +{ + + private final World w; + private final int dimId; + + public DimensionalCoord(DimensionalCoord s) { + super( s.x, s.y, s.z ); + w = s.w; + dimId = s.dimId; + } + + public DimensionalCoord(TileEntity s) { + super( s ); + w = s.getWorldObj(); + dimId = w.provider.dimensionId; + } + + public DimensionalCoord(World _w, int _x, int _y, int _z) { + super( _x, _y, _z ); + w = _w; + dimId = _w.provider.dimensionId; + } + + @Override + public DimensionalCoord copy() + { + return new DimensionalCoord( this ); + } + + public boolean isEqual(DimensionalCoord c) + { + return x == c.x && y == c.y && z == c.z && c.w == this.w; + } + + @Override + public boolean equals(Object obj) + { + return obj instanceof DimensionalCoord && isEqual((DimensionalCoord) obj); + } + + @Override + public int hashCode() + { + return super.hashCode() ^ dimId; + } + + public boolean isInWorld(World world) + { + return w == world; + } + + @Override + public String toString() + { + return dimId + "," + super.toString(); + } + + public World getWorld() + { + return w; + } +} diff --git a/src/api/java/appeng/api/util/ICommonTile.java b/src/api/java/appeng/api/util/ICommonTile.java new file mode 100644 index 00000000..2f8b3881 --- /dev/null +++ b/src/api/java/appeng/api/util/ICommonTile.java @@ -0,0 +1,23 @@ +package appeng.api.util; + +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; + +import java.util.ArrayList; + +public interface ICommonTile +{ + + /** + * implemented on AE's Tile Entities, Gets a list of drops that the entity will normally drop, this doesn't include + * the block itself. + * + * @param world world of tile entity + * @param x x pos of tile entity + * @param y y pos of tile entity + * @param z z pos of tile entity + * @param drops drops of tile entity + */ + void getDrops(World world, int x, int y, int z, ArrayList drops); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/util/IConfigManager.java b/src/api/java/appeng/api/util/IConfigManager.java new file mode 100644 index 00000000..d383f981 --- /dev/null +++ b/src/api/java/appeng/api/util/IConfigManager.java @@ -0,0 +1,61 @@ +package appeng.api.util; + +import net.minecraft.nbt.NBTTagCompound; + +import java.util.Set; + +/** + * Used to adjust settings on an object, + * + * Obtained via {@link IConfigurableObject} + */ +public interface IConfigManager +{ + + /** + * get a list of different settings + * + * @return enum set of settings + */ + Set getSettings(); + + /** + * used to initialize the configuration manager, should be called for all settings. + * + * @param settingName name of setting + * @param defaultValue default value of setting + */ + void registerSetting(Enum settingName, Enum defaultValue); + + /** + * Get Value of a particular setting + * + * @param settingName name of setting + * @return value of setting + */ + Enum getSetting(Enum settingName); + + /** + * Change setting + * + * @param settingName to be changed setting + * @param newValue new value for setting + * @return changed setting + */ + Enum putSetting(Enum settingName, Enum newValue); + + /** + * write all settings to the NBT Tag so they can be read later. + * + * @param dest to be written nbt tag + */ + void writeToNBT(NBTTagCompound dest); + + /** + * Only works after settings have been registered + * + * @param src to be read nbt tag + */ + void readFromNBT(NBTTagCompound src); + +} diff --git a/src/api/java/appeng/api/util/IConfigurableObject.java b/src/api/java/appeng/api/util/IConfigurableObject.java new file mode 100644 index 00000000..6a3ef669 --- /dev/null +++ b/src/api/java/appeng/api/util/IConfigurableObject.java @@ -0,0 +1,14 @@ +package appeng.api.util; + +/** + * Implemented by various Tiles or Parts in AE + */ +public interface IConfigurableObject +{ + + /** + * get the config manager for the object. + */ + IConfigManager getConfigManager(); + +} diff --git a/src/api/java/appeng/api/util/INetworkToolAgent.java b/src/api/java/appeng/api/util/INetworkToolAgent.java new file mode 100644 index 00000000..c2e511be --- /dev/null +++ b/src/api/java/appeng/api/util/INetworkToolAgent.java @@ -0,0 +1,13 @@ +package appeng.api.util; + +import net.minecraft.util.MovingObjectPosition; + +/** + * Implement on Tile or part to customize if the info gui opens, or an action is preformed. + */ +public interface INetworkToolAgent +{ + + boolean showNetworkInfo(MovingObjectPosition where); + +} diff --git a/src/api/java/appeng/api/util/IOrientable.java b/src/api/java/appeng/api/util/IOrientable.java new file mode 100644 index 00000000..8574a43a --- /dev/null +++ b/src/api/java/appeng/api/util/IOrientable.java @@ -0,0 +1,37 @@ +package appeng.api.util; + +import net.minecraftforge.common.util.ForgeDirection; + +/** + * Nearly all of AE's Tile Entities implement IOrientable. + * + * and it can be used to manipulate the direction of some machines, most of these orientations are purely visual. + * + * AE also responds to Block.rotateBlock + */ +public interface IOrientable +{ + + /** + * @return true or false, if the tile rotation is meaningful, or even changeable + */ + boolean canBeRotated(); + + /** + * @return the direction the tile is facing + */ + ForgeDirection getForward(); + + /** + * @return the direction top of the tile + */ + ForgeDirection getUp(); + + /** + * Update the orientation + * @param Forward new forward direction + * @param Up new upwards direction + */ + void setOrientation(ForgeDirection Forward, ForgeDirection Up); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/util/IOrientableBlock.java b/src/api/java/appeng/api/util/IOrientableBlock.java new file mode 100644 index 00000000..84be3fc4 --- /dev/null +++ b/src/api/java/appeng/api/util/IOrientableBlock.java @@ -0,0 +1,25 @@ +package appeng.api.util; + +import net.minecraft.world.IBlockAccess; + +/** + * Implemented on many of AE's non Tile Entity Blocks as a way to get a IOrientable. + */ +public interface IOrientableBlock +{ + + /** + * @return if this block uses metadata to store its rotation. + */ + boolean usesMetadata(); + + /** + * @param world world of block + * @param x x pos of block + * @param y y pos of block + * @param z z pos of block + * @return a IOrientable if applicable + */ + IOrientable getOrientable(IBlockAccess world, int x, int y, int z); + +} \ No newline at end of file diff --git a/src/api/java/appeng/api/util/IReadOnlyCollection.java b/src/api/java/appeng/api/util/IReadOnlyCollection.java new file mode 100644 index 00000000..ab087ca7 --- /dev/null +++ b/src/api/java/appeng/api/util/IReadOnlyCollection.java @@ -0,0 +1,21 @@ +package appeng.api.util; + +public interface IReadOnlyCollection extends Iterable +{ + + /** + * @return the objects in in the set. + */ + int size(); + + /** + * @return true if there are objects in the set + */ + boolean isEmpty(); + + /** + * @return return true if the object is part of the set. + */ + boolean contains(Object node); + +} diff --git a/src/api/java/appeng/api/util/WorldCoord.java b/src/api/java/appeng/api/util/WorldCoord.java new file mode 100644 index 00000000..e09f01ce --- /dev/null +++ b/src/api/java/appeng/api/util/WorldCoord.java @@ -0,0 +1,136 @@ +package appeng.api.util; + +import net.minecraft.tileentity.TileEntity; +import net.minecraftforge.common.util.ForgeDirection; + +/** + * Represents a relative coordinate, either relative to another object, or + * relative to the origin of a dimension. + */ +public class WorldCoord +{ + + public int x; + public int y; + public int z; + + public WorldCoord add(ForgeDirection direction, int length) + { + x += direction.offsetX * length; + y += direction.offsetY * length; + z += direction.offsetZ * length; + return this; + } + + public WorldCoord subtract(ForgeDirection direction, int length) + { + x -= direction.offsetX * length; + y -= direction.offsetY * length; + z -= direction.offsetZ * length; + return this; + } + + public WorldCoord add(int _x, int _y, int _z) + { + x += _x; + y += _y; + z += _z; + return this; + } + + public WorldCoord subtract(int _x, int _y, int _z) + { + x -= _x; + y -= _y; + z -= _z; + return this; + } + + public WorldCoord multiple(int _x, int _y, int _z) + { + x *= _x; + y *= _y; + z *= _z; + return this; + } + + public WorldCoord divide(int _x, int _y, int _z) + { + x /= _x; + y /= _y; + z /= _z; + return this; + } + + public WorldCoord(int _x, int _y, int _z) { + x = _x; + y = _y; + z = _z; + } + + public WorldCoord(TileEntity s) { + this( s.xCoord, s.yCoord, s.zCoord ); + } + + /** + * Will Return NULL if it's at some diagonal! + */ + public ForgeDirection directionTo(WorldCoord loc) + { + int ox = x - loc.x; + int oy = y - loc.y; + int oz = z - loc.z; + + int xlen = Math.abs( ox ); + int ylen = Math.abs( oy ); + int zlen = Math.abs( oz ); + + if ( loc.isEqual( this.copy().add( ForgeDirection.EAST, xlen ) ) ) + return ForgeDirection.EAST; + + if ( loc.isEqual( this.copy().add( ForgeDirection.WEST, xlen ) ) ) + return ForgeDirection.WEST; + + if ( loc.isEqual( this.copy().add( ForgeDirection.NORTH, zlen ) ) ) + return ForgeDirection.NORTH; + + if ( loc.isEqual( this.copy().add( ForgeDirection.SOUTH, zlen ) ) ) + return ForgeDirection.SOUTH; + + if ( loc.isEqual( this.copy().add( ForgeDirection.UP, ylen ) ) ) + return ForgeDirection.UP; + + if ( loc.isEqual( this.copy().add( ForgeDirection.DOWN, ylen ) ) ) + return ForgeDirection.DOWN; + + return null; + } + + public boolean isEqual(WorldCoord c) + { + return x == c.x && y == c.y && z == c.z; + } + + public WorldCoord copy() + { + return new WorldCoord( x, y, z ); + } + + @Override + public boolean equals(Object obj) + { + return obj instanceof WorldCoord && isEqual((WorldCoord) obj); + } + + @Override + public String toString() + { + return "" + x + "," + y + "," + z; + } + + @Override + public int hashCode() + { + return (y << 24) ^ x ^ z; + } +} diff --git a/src/main/resources/assets/appliedenergistics2/lang b/src/main/resources/assets/appliedenergistics2/lang deleted file mode 160000 index 1f26140c..00000000 --- a/src/main/resources/assets/appliedenergistics2/lang +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 1f26140cdc3c6352f1c5c52b210c1221317f7cfd diff --git a/src/main/resources/assets/appliedenergistics2/lang/README.md b/src/main/resources/assets/appliedenergistics2/lang/README.md new file mode 100644 index 00000000..b4515949 --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/README.md @@ -0,0 +1,24 @@ +Applied Energistics 2 Localization +================================================== + +### English Text + +en_US is included in this repository, fixes to typos are welcome, I AlgorithmX2 will mostly likely be one of the sole contributors to this file however. + +### Encoding + +Files must be encoded as UTF-8. + +### License + +All Text and Translations submitted here can be used for any purpose, and may be re-distributed or used without any limitations. + +### New Translations + +You can provide any additional languages by creating a new file with the appropriate language code. + +### Final Note + +If you have have issues localizing something feel free to contact me on IRC, at #AppliedEnergistics on Esper.net + +Thanks to everyone helping out to improve localization of AE2. \ No newline at end of file diff --git a/src/main/resources/assets/appliedenergistics2/lang/cs_CZ.lang b/src/main/resources/assets/appliedenergistics2/lang/cs_CZ.lang new file mode 100644 index 00000000..c5f997cc --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/cs_CZ.lang @@ -0,0 +1,506 @@ +tile.appliedenergistics2.BlockCableBus.name=AE2 kabel a/nebo sběrnice +tile.appliedenergistics2.BlockCellWorkbench.name=Pracovní stůl pro články +tile.appliedenergistics2.BlockCharger.name=Nabíječ +tile.appliedenergistics2.BlockChest.name=ME truhla +tile.appliedenergistics2.BlockCondenser.name=Kondenzátor hmoty +tile.appliedenergistics2.BlockController.name=ME regulátor +tile.appliedenergistics2.BlockCrank.name=Dřevěná klika +tile.appliedenergistics2.BlockCreativeEnergyCell.name=Kreativní energetický článek +tile.appliedenergistics2.BlockDenseEnergyCell.name=Pevný energetický článek +tile.appliedenergistics2.BlockEnergyCell.name=Energetický článek +tile.appliedenergistics2.BlockDrive.name=ME jednotka +tile.appliedenergistics2.BlockEnergyAcceptor.name=Energetická jednotka +tile.appliedenergistics2.BlockGrinder.name=Křemenný drtič +tile.appliedenergistics2.BlockMatrixFrame.name=Maticový rám +tile.appliedenergistics2.BlockIOPort.name=ME IO přesun +tile.appliedenergistics2.BlockInscriber.name=Zapisovač +tile.appliedenergistics2.BlockInterface.name=ME rozhraní +tile.appliedenergistics2.BlockQuantumLinkChamber.name=ME kvantová spojovací komora +tile.appliedenergistics2.BlockQuantumRing.name=ME kvantový prsten +tile.appliedenergistics2.BlockFluix.name=Fluixový blok +tile.appliedenergistics2.BlockQuartz.name=Nakloněný křemenný blok +tile.appliedenergistics2.BlockQuartzChiseled.name=Opracovaný nakloněný křemenný blok +tile.appliedenergistics2.BlockQuartzGlass.name=Křemenné sklo +tile.appliedenergistics2.BlockQuartzLamp.name=Vibrující křemenné sklo +tile.appliedenergistics2.BlockQuartzPillar.name=Nakloněný křemenný pilíř +tile.appliedenergistics2.BlockQuartzTorch.name=Nabité křemenné svítidlo +tile.appliedenergistics2.BlockLightDetector.name=Světlé detekční svítidlo +tile.appliedenergistics2.BlockSpatialIOPort.name=Prostorový IO přesun +tile.appliedenergistics2.BlockSpatialPylon.name=Prostorový stožár +tile.appliedenergistics2.BlockTinyTNT.name=Malinké TNT +tile.appliedenergistics2.BlockVibrationChamber.name=Vibrační komora +tile.appliedenergistics2.BlockWireless.name=ME bezdrátový přístupový bod +tile.appliedenergistics2.OreQuartz.name=Nakloněná křemenná ruda +tile.appliedenergistics2.OreQuartzCharged.name=Nabitá nakloněná křemenná ruda +tile.appliedenergistics2.BlockSecurity.name=ME bezpečnostní terminál +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=Krystalický akcelerátor růstu +tile.appliedenergistics2.BlockSkyStone.name=Nebeský kámen +tile.appliedenergistics2.BlockSkyStone.Block.name=Nebeský kamenný blok +tile.appliedenergistics2.BlockSkyStone.Brick.name=Nebeská kamenná cihla +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=Nebeská kamenná malá cihla +tile.appliedenergistics2.BlockSkyChest.name=Nebeská kamenná truhla +tile.appliedenergistics2.BlockSkyChest.Block.name=Nebeská kamenná bloková truhla +tile.appliedenergistics2.BlockSkyCompass.name=Meteoritový kompas +tile.appliedenergistics2.BlockCraftingMonitor.name=Výrobní monitor +tile.appliedenergistics2.BlockCraftingStorage.name=1k výrobní úložiště +tile.appliedenergistics2.BlockCraftingStorage4k.name=4k výrobní úložiště +tile.appliedenergistics2.BlockCraftingStorage16k.name=16k výrobní úložiště +tile.appliedenergistics2.BlockCraftingStorage64k.name=64k výrobní úložiště +tile.appliedenergistics2.BlockCraftingAccelerator.name=Výrobní re-procesní jednotka +tile.appliedenergistics2.BlockCraftingUnit.name=Výrobní jednotka +tile.appliedenergistics2.BlockMolecularAssembler.name=Molekulární sestavovač + +chat.appliedenergistics2.ChestCannotReadStorageCell=ME truhla nemůže přečíst úložný článek. +chat.appliedenergistics2.SettingCleared=Nastavení promazáno. +chat.appliedenergistics2.OutOfRange=Bezdrátový signál je mimo dosah. +chat.appliedenergistics2.InvalidMachine=Nesprávný stroj. +chat.appliedenergistics2.LoadedSettings=Nastavení úspěšně načteno. +chat.appliedenergistics2.DeviceNotPowered=Zařízení je vybité. +chat.appliedenergistics2.MachineNotPowered=Stroj není napájený. +chat.appliedenergistics2.CommunicationError=Chyba při komunikaci se sítí. +chat.appliedenergistics2.SavedSettings=Nastavení úspěšně uloženo. +chat.appliedenergistics2.AmmoDepleted=Munice vyplýtvaná. +chat.appliedenergistics2.isNowLocked=Monitor je nyní uzamčen. +chat.appliedenergistics2.isNowUnlocked=Monitor je nyní odemčen. + +itemGroup.appliedenergistics2=Applied Energistics 2 +itemGroup.appliedenergistics2.facades=Applied Energistics 2 - Fasády + +gui.appliedenergistics2.CraftingTerminal=Výrobní terminál +gui.appliedenergistics2.METunnel=ME +gui.appliedenergistics2.ItemTunnel=Předmět +gui.appliedenergistics2.FluidTunnel=Tekutina +gui.appliedenergistics2.RedstoneTunnel=Rudit +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU +gui.appliedenergistics2.RFTunnel=RF +gui.appliedenergistics2.LightTunnel=Světlo + +gui.appliedenergistics2.security.extract.name=Vybrat +gui.appliedenergistics2.security.inject.name=Vložit +gui.appliedenergistics2.security.craft.name=Vyrobit +gui.appliedenergistics2.security.build.name=Postavit +gui.appliedenergistics2.security.security.name=Zabezpečení + +gui.appliedenergistics2.security.extract.tip=Uživatel není oprávněn odstraňovat předměty z úložiště. +gui.appliedenergistics2.security.inject.tip=Uživatel je oprávněn ukládat nové předměty do úložiště. +gui.appliedenergistics2.security.craft.tip=Uživatel může vytvořit nové požadavky na výrobu. +gui.appliedenergistics2.security.build.tip=Uživatel může měnit fyzickou strukturu sítě a její nastavení. +gui.appliedenergistics2.security.security.tip=Uživatel má přístupové a modifikační práva k bezpečnostnímu terminálu sítě. + +gui.appliedenergistics2.Efficiency=Efektivita +gui.appliedenergistics2.RequiredPower=Potřebná energie +gui.appliedenergistics2.StoredPower=Uložená energie +gui.appliedenergistics2.MaxPower=Maximální energie +gui.appliedenergistics2.QuartzCuttingKnife=Křemenný sekáček +gui.appliedenergistics2.Inscriber=Zapisovač +gui.appliedenergistics2.Wireless=Bezdrátový přístupový bod +gui.appliedenergistics2.WirelessTerminal=Bezdrátový terminál +gui.appliedenergistics2.NoPermissions=Nevybrány žádné oprávnění +gui.appliedenergistics2.SecurityCardEditor=Editor biometrických karet +gui.appliedenergistics2.Encoded=Kódované +gui.appliedenergistics2.Priority=Priorita +gui.appliedenergistics2.StorageBus=Sběrnice úložiště +gui.appliedenergistics2.EnergyDrain=Pasivní vypuštění +gui.appliedenergistics2.Installed=Nainstalováno +gui.appliedenergistics2.NetworkTool=Síťový nástroj +gui.appliedenergistics2.PowerUsageRate=Využití energie +gui.appliedenergistics2.PowerInputRate=Generace energie +gui.appliedenergistics2.PortableCell=Přenosný článek +gui.appliedenergistics2.Security=Bezpečnostní označení +gui.appliedenergistics2.CellWorkbench=Pracovní stůl pro články +gui.appliedenergistics2.QuantumLinkChamber=Kvantová spojovací komora +gui.appliedenergistics2.IOPort=ME IO přesun +gui.appliedenergistics2.Chest=ME truhla +gui.appliedenergistics2.Condenser=Kondenzátor hmoty +gui.appliedenergistics2.Config=Nastavení +gui.appliedenergistics2.Drive=ME jednotka +gui.appliedenergistics2.ExportBus=ME exportní sběrnice +gui.appliedenergistics2.GrindStone=Mlýnek +gui.appliedenergistics2.ImportBus=ME importní sběrnice +gui.appliedenergistics2.Interface=ME rozhraní +gui.appliedenergistics2.LevelEmitter=ME úrovňový vysílač +gui.appliedenergistics2.Of= +gui.appliedenergistics2.Patterns=Schémata +gui.appliedenergistics2.SpatialIOPort=Prostorový IO přesun +gui.appliedenergistics2.StoredEnergy=Uskladněná energie +gui.appliedenergistics2.StoredItems=Uskladněné předměty +gui.appliedenergistics2.Terminal=Terminál +gui.appliedenergistics2.InterfaceTerminal=Terminál rozhraní +gui.appliedenergistics2.InterfaceTerminalHint=Zobrazí nebo skryje Terminál rozhraní. +gui.appliedenergistics2.FormationPlane=Formační plocha +gui.appliedenergistics2.VibrationChamber=Vibrační komora +gui.appliedenergistics2.NetworkDetails=Detaily sítě +gui.appliedenergistics2.StorageCells=ME úložný článek +gui.appliedenergistics2.IOBuses=ME importní/exportní sběrnice +gui.appliedenergistics2.Stores=Uskladňuje +gui.appliedenergistics2.BytesUsed=Použito bitů +gui.appliedenergistics2.Types=Typy +gui.appliedenergistics2.Blank=Prázdný +gui.appliedenergistics2.Unlinked=Nespárovaný +gui.appliedenergistics2.Linked=Spárovaný +gui.appliedenergistics2.StoredSize=Uskladněná velikost +gui.appliedenergistics2.SkyChest=Nebeská kamenná truhla +gui.appliedenergistics2.PatternTerminal=Terminál schémat +gui.appliedenergistics2.CraftingPattern=Výrobní schéma +gui.appliedenergistics2.MolecularAssembler=Molekulární sestavovač +gui.appliedenergistics2.ProcessingPattern=Procesní schéma +gui.appliedenergistics2.Crafts=Výroby +gui.appliedenergistics2.And=a +gui.appliedenergistics2.Creates=Vytvoří +gui.appliedenergistics2.With=s +gui.appliedenergistics2.InWorldCrafting=AE2 Výroba ve světě +gui.appliedenergistics2.inWorldFluix=Vhoď 1 Nabitý nakloněný křemen + 1 Křemen + Ruditový prach do louže hned vedle dalších a počkej chvilku pro obdržení 2 Fluixových krystalů. +gui.appliedenergistics2.inWorldPurificationCertus=Vhoď Semínko nakloněného křemene vyrobené z Nakloněného křemenného prachu a Písek do louže z vody; pro zrychlení procesu přidej Krystalický akcelerátor růstu. +gui.appliedenergistics2.inWorldPurificationNether=Vhoď Semínko křemene vyrobené z Křemenného prachu a Písek do louže z vody; pro zrychlení procesu přidej Krystalický akcelerátor růstu. +gui.appliedenergistics2.inWorldPurificationFluix=Vhoď Fluixové semínko vyrobené z Fluixového prachu a Písek do louže z vody; pro zrychlení procesu přidej Krystalický akcelerátor růstu +gui.appliedenergistics2.inWorldSingularity=Pro výrobu vyhoď 1 Singularitu a 1 Prach z endu a vyvolej explozi v dosahu těchto předmětů. +gui.appliedenergistics2.ChargedQuartz=Nabitý nakloněný křemen je vyroben vložením nenabitého Nakloněného křemenného krystalu do Nabíječky a přivedením energie. +gui.appliedenergistics2.ChargedQuartzFind=Nabitý nakloněný křemen může být velmi zřídka nalezen běžně ve světě. Objevuje se podobně jako normální Nakloněný křemen, jen jiskří. +gui.appliedenergistics2.OfSecondOutput=% Šance pro druhý produkt. +gui.appliedenergistics2.NoSecondOutput=Žádný druhotní produkt +gui.appliedenergistics2.SelectAmount=Vyber množství +gui.appliedenergistics2.CopyMode=Mód kopírování +gui.appliedenergistics2.CopyModeDesc=Nastavuje zda obsah konfiguračního panelu je smazán když odebereš článek. +gui.appliedenergistics2.Next=Další +gui.appliedenergistics2.Lumen=Lumen +gui.appliedenergistics2.Empty=Prázdný +gui.appliedenergistics2.Stored=Uskladněno +gui.appliedenergistics2.Cancel=Zrušit +gui.appliedenergistics2.Crafting=Výroba +gui.appliedenergistics2.Scheduled=Naplánováno +gui.appliedenergistics2.CraftingStatus=Status výroby +gui.appliedenergistics2.FromStorage=Dostupné +gui.appliedenergistics2.ToCraft=Na výrobu +gui.appliedenergistics2.CraftingPlan=Výrobní plán +gui.appliedenergistics2.Automatic=Automatické +gui.appliedenergistics2.Start=Start +gui.appliedenergistics2.Missing=Chybějící +gui.appliedenergistics2.Bytes=Uskladnění +gui.appliedenergistics2.Simulation=Simulace +gui.appliedenergistics2.CoProcessors=Re-procesory +gui.appliedenergistics2.CraftingCPU=Výrobní CPU +gui.appliedenergistics2.NoCraftingCPUs=Není dostupné žádné výrobní CPU +gui.appliedenergistics2.CalculatingWait=Vypočítávám, prosím čekejte... +gui.appliedenergistics2.Clean=Vyčistit +gui.appliedenergistics2.InvalidPattern=Nesprávné schéma +gui.appliedenergistics2.Range=Vzdálenost +gui.appliedenergistics2.TransparentFacades=Průhledné fasády +gui.appliedenergistics2.TransparentFacadesHint=Nastavuje viditelnost fasád když máš síťový nástroj ve svém panelu nástrojů. +gui.appliedenergistics2.CPUs=CPU +gui.appliedenergistics2.NoCraftingJobs=Není aktivní žádná výrobní práce +gui.appliedenergistics2.FacadeCrafting=Výroba fasád +gui.appliedenergistics2.inWorldCraftingPresses=Výrobní otisky mohou být nalezeny ve středu meteoritů, které mohou být nalezeny kompasem meteoritů. +gui.appliedenergistics2.Included=Včetně +gui.appliedenergistics2.Excluded=Kromě +gui.appliedenergistics2.Partitioned=Rozděleno +gui.appliedenergistics2.Precise=Přesný +gui.appliedenergistics2.Fuzzy=Rozmazaný + +gui.tooltips.appliedenergistics2.Stash=Ukládá předměty +gui.tooltips.appliedenergistics2.StashDesc=Navrátí předměty z výrobního pole zpět do síťového úložiště. +gui.tooltips.appliedenergistics2.Substitutions=Rudo-slovníková záměna +gui.tooltips.appliedenergistics2.SubstitutionsDesc=Upraví volby záměny pro vstupní komponenty. +gui.tooltips.appliedenergistics2.SubstitutionsOn=Záměna povolena +gui.tooltips.appliedenergistics2.SubstitutionsOff=Záměna zakázána +gui.tooltips.appliedenergistics2.Encode=Zakódovat schéma +gui.tooltips.appliedenergistics2.EncodeDescription=Zapíše vložené schéma do aktuálního schématu, nebo dostupného přázdného schématu. +gui.tooltips.appliedenergistics2.FuzzyMode=Rozmazané porovnání +gui.tooltips.appliedenergistics2.FZPercent_25=Rozdělit poškození na 25% +gui.tooltips.appliedenergistics2.FZPercent_50=Rozdělit poškození na 50% +gui.tooltips.appliedenergistics2.FZPercent_75=Rozdělit poškození na 75% +gui.tooltips.appliedenergistics2.FZPercent_99=Rozdělit poškození na 99% +gui.tooltips.appliedenergistics2.SortOrder=Řazení +gui.tooltips.appliedenergistics2.SortBy=Řadit podle +gui.tooltips.appliedenergistics2.FZIgnoreAll=Odpovídá jakémukoliv +gui.tooltips.appliedenergistics2.TransferDirection=Směr přesunu +gui.tooltips.appliedenergistics2.TransferToNetwork=Přesunout data do sítě +gui.tooltips.appliedenergistics2.TransferToStorageCell=Přesunout data do úložného článku +gui.tooltips.appliedenergistics2.ToggleSortDirection=Přepnout směr řazení +gui.tooltips.appliedenergistics2.StoredItems=Uložené předměty +gui.tooltips.appliedenergistics2.StoredCraftable=Uložené / Vyrobitelné +gui.tooltips.appliedenergistics2.View=Zobrazit +gui.tooltips.appliedenergistics2.RedstoneMode=Ruditový mód +gui.tooltips.appliedenergistics2.OperationMode=Operační mód +gui.tooltips.appliedenergistics2.NumberOfItems=Počet předmětů +gui.tooltips.appliedenergistics2.ItemName=Jméno předmětu +gui.tooltips.appliedenergistics2.PowerUnits=Jednotky energie +gui.tooltips.appliedenergistics2.IOMode=Vstupní/Výstupní mód +gui.tooltips.appliedenergistics2.CondenserOutput=ME kondenzátor - Výstup +gui.tooltips.appliedenergistics2.PartitionStorage=Úložiště oddílů +gui.tooltips.appliedenergistics2.Clear=Vyčistit +gui.tooltips.appliedenergistics2.TrashController=Mazání přes Shift / Klikání s mezerníkem. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=Blokovací mód +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=Výrobní mód +gui.tooltips.appliedenergistics2.Trash=Zničit předměty +gui.tooltips.appliedenergistics2.MatterBalls=Kondenzovat do hmotných míčů\n%s za předmět +gui.tooltips.appliedenergistics2.Singularity=Kondenzovat do Singularit\n%s za předmět +gui.tooltips.appliedenergistics2.Read=Pouze extrakce +gui.tooltips.appliedenergistics2.Write=Pouze vklánání +gui.tooltips.appliedenergistics2.ReadWrite=Obousměrný +gui.tooltips.appliedenergistics2.AlwaysActive=Vždy aktivní +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=Aktivní bez signálu +gui.tooltips.appliedenergistics2.ActiveWithSignal=Aktivní se signálem +gui.tooltips.appliedenergistics2.ActiveOnPulse=Aktivní jednou za pulz +gui.tooltips.appliedenergistics2.EmitLevelsBelow=Vysílá, když jsou úrovně pod, nebo odpovídají limitu. +gui.tooltips.appliedenergistics2.EmitLevelAbove=Vysílá, když jsou úrovně nad, nebo odpovídají limitu. +gui.tooltips.appliedenergistics2.SearchMode_Auto=Automatické vyhledávání +gui.tooltips.appliedenergistics2.SearchMode_Standard=Standartní vyhledávání +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=NEI automatické synchronizování +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=NEI standartní synchronizování +gui.tooltips.appliedenergistics2.SearchMode=Mód vyhledávacího rámečku +gui.tooltips.appliedenergistics2.PartitionStorageHint=Nastavuje oddíly založené na právě uložených předmětech. +gui.tooltips.appliedenergistics2.ClearSettings=Promazat konfiguraci/nastavení +gui.tooltips.appliedenergistics2.Craftable=Vyrobitelné +gui.tooltips.appliedenergistics2.MoveWhenEmpty=Přesune na výstup pokud je prázdné. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=Přesune na výstup když je práce hotova. +gui.tooltips.appliedenergistics2.MoveWhenFull=Přesune na výstup pokud je plný. +gui.tooltips.appliedenergistics2.Disabled=Zakázáno +gui.tooltips.appliedenergistics2.Enable=Povoleno +gui.tooltips.appliedenergistics2.Blocking=Neposouvá výrobní předměty pokud inventář obsahuje předměty. +gui.tooltips.appliedenergistics2.NonBlocking=Ignoruje obsah cílového inventáře. +gui.tooltips.appliedenergistics2.Craft=Výrobní chování +gui.tooltips.appliedenergistics2.CraftOnly=Nepoužívá uložené předměty, pouze při exportu vyrábí předměty. +gui.tooltips.appliedenergistics2.CraftEither=Používá uložené předměty, nebo pri exportu vyrábí předměty. +gui.tooltips.appliedenergistics2.LevelType=Typ úrovně +gui.tooltips.appliedenergistics2.LevelType_Energy=Energie +gui.tooltips.appliedenergistics2.LevelType_Item=Předmět +gui.tooltips.appliedenergistics2.InventoryTweaks=Vylepšení inventáře +gui.tooltips.appliedenergistics2.Mod=Mód +gui.tooltips.appliedenergistics2.TerminalStyle=Styl terminálu +gui.tooltips.appliedenergistics2.TerminalStyle_Full=Celo-obrazový terminál +gui.tooltips.appliedenergistics2.TerminalStyle_Tall=Vysoko-centrovaný terminál +gui.tooltips.appliedenergistics2.TerminalStyle_Small=Nízko-centrovaný terminál +gui.tooltips.appliedenergistics2.DoesntDespawn=Tento předmět nezmizí ze země. +gui.tooltips.appliedenergistics2.EmitterMode=Mód vysílací výroby +gui.tooltips.appliedenergistics2.CraftViaRedstone=Vyšli ruditový signál pro výrobu předmětu. +gui.tooltips.appliedenergistics2.EmitWhenCrafting=Vyšle ruditový signál pokud se předmět vyrábí. +gui.tooltips.appliedenergistics2.ReportInaccessibleItems=Nahlásí nepřístupné předměty +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsYes=Ano: Předměty, které nemohou být vyextraktovány budou vidět. +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsNo=Ne: Vidět budou pouze předměty, které mohou být vyextrahovány. + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=Minecraftové Jouly +gui.appliedenergistics2.units.ic2=Jednotky energie +gui.appliedenergistics2.units.mekanism=Jouly +gui.appliedenergistics2.units.rotarycraft=Watty +gui.appliedenergistics2.units.thermalexpansion=Ruditový Flux + +gui.appliedenergistics2.White=Bílá +gui.appliedenergistics2.Orange=Oranžová +gui.appliedenergistics2.Magenta=Purpurová +gui.appliedenergistics2.LightBlue=Světle modrá +gui.appliedenergistics2.Yellow=Žlutá +gui.appliedenergistics2.Lime=Světle zelená +gui.appliedenergistics2.Pink=Růžová +gui.appliedenergistics2.Gray=Šedá +gui.appliedenergistics2.LightGray=Světle šedá +gui.appliedenergistics2.Cyan=Azurová +gui.appliedenergistics2.Purple=Fialová +gui.appliedenergistics2.Blue=Modrá +gui.appliedenergistics2.Brown=Hnědá +gui.appliedenergistics2.Green=Zelená +gui.appliedenergistics2.Red=Červená +gui.appliedenergistics2.Black=Černá +gui.appliedenergistics2.Fluix=Fluix + +waila.appliedenergistics2.DeviceOnline=Zařízení Online +waila.appliedenergistics2.DeviceOffline=Zařízení Offline +waila.appliedenergistics2.DeviceMissingChannel=Zařízení postrádá kanál +waila.appliedenergistics2.Locked=Zamčeno +waila.appliedenergistics2.Unlocked=Odemčeno +waila.appliedenergistics2.Showing=Zobrazuje +waila.appliedenergistics2.Contains=Obsahuje +waila.appliedenergistics2.Channels=Kanály + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=1k ME úložný článek +item.appliedenergistics2.ItemBasicStorageCell.4k.name=4k ME úložný článek +item.appliedenergistics2.ItemBasicStorageCell.16k.name=16k ME úložný článek +item.appliedenergistics2.ItemBasicStorageCell.64k.name=64k ME úložný článek +item.appliedenergistics2.ItemCreativeStorageCell.name=Kreativní ME úložný článek +item.appliedenergistics2.ItemEncodedPattern.name=Kódované schéma +item.appliedenergistics2.ItemViewCell.name=Zobrazit článek +item.appliedenergistics2.ItemFacade.name=Kabelová fasáda + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=Semínko nakloněného křemene +item.appliedenergistics2.ItemCrystalSeed.Nether.name=Semínko křemene +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=Semínko Fluixu +item.appliedenergistics2.ItemMaterial.InvalidType.name=Tento předmět je zakázaný. +item.appliedenergistics2.ItemMaterial.AdvCard.name=Pokročilá karta +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=Jádro zkázy +item.appliedenergistics2.ItemMaterial.BasicCard.name=Běžná karta +item.appliedenergistics2.ItemMaterial.BlankPattern.name=Prázdné schéma +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=Výpočetní procesor +item.appliedenergistics2.ItemMaterial.CardCapacity.name=Kapacitní karta +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=Rozmazaná karta +item.appliedenergistics2.ItemMaterial.CardInverter.name=Měničová karta +item.appliedenergistics2.ItemMaterial.CardRedstone.name=Ruditová karta +item.appliedenergistics2.ItemMaterial.CardSpeed.name=Akcelerační karta +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=2³ Prostorový komponent +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=16³ Prostorový komponent +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=128³ Prostorový komponent +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=1k ME Úložný komponent +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=4k ME Úložný komponent +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=16k ME Úložný komponent +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=64k ME Úložný komponent +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=Krystal nakloněného křemene +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=Nabitý krystal nakloněného křemene +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=Prach nakloněného křemene +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=ME úložné pouzdro +item.appliedenergistics2.ItemMaterial.EnderDust.name=Prach z Endu +item.appliedenergistics2.ItemMaterial.EngProcessor.name=Inženýrský procesor +item.appliedenergistics2.ItemMaterial.Flour.name=Mouka +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=Fluixový krystal +item.appliedenergistics2.ItemMaterial.FluixDust.name=Fluixový prach +item.appliedenergistics2.ItemMaterial.FluixPearl.name=Fluixová perla +item.appliedenergistics2.ItemMaterial.FormationCore.name=Formační jádro +item.appliedenergistics2.ItemMaterial.GoldDust.name=Zlatý prach +item.appliedenergistics2.ItemMaterial.IronDust.name=Železný prach +item.appliedenergistics2.ItemMaterial.IronNugget.name=Železná hrudka +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=Logický procesor +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=Nedokončený logický procesor +item.appliedenergistics2.ItemMaterial.MatterBall.name=Hmotný míč +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=Křemenný prach +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=Čistý nahnutý křemenný krystal +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=Čistý Fluixový krystal +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=Čistý křemenný krystal +item.appliedenergistics2.ItemMaterial.QESingularity.name=Kvantová zapletená singularita +item.appliedenergistics2.ItemMaterial.Silicon.name=Křemík +item.appliedenergistics2.ItemMaterial.Singularity.name=Singularita +item.appliedenergistics2.ItemMaterial.Wireless.name=Bezdrátový přijímač +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=Bezdrátový posilovač +item.appliedenergistics2.ItemMaterial.WoodenGear.name=Dřevěné kolečko +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=Výtisk inženýrského zapisovače +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=Výtisk kalkulačního zapisovače +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=Výtisk logického zapisovače +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=Vytisknutý inženýrský obvod +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=Vytisknutý kalkulační obvod +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=Vytisknutý logický obvod +item.appliedenergistics2.ItemMaterial.SiliconPress.name=Výtisk křemíkového zapisovače +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=Vytisknutý křemík +item.appliedenergistics2.ItemMaterial.NamePress.name=Výtisk jmenového zapisovače +item.appliedenergistics2.ItemMaterial.SkyDust.name=Prach nebeského kamene +item.appliedenergistics2.ItemMaterial.CardCrafting.name=Výrobní karta + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=ME plocha zkázy +item.appliedenergistics2.ItemPart.CableAnchor.name=Kabelová kotva +item.appliedenergistics2.ItemPart.CableCovered.name=ME krytý kabel +item.appliedenergistics2.ItemPart.CableGlass.name=ME skleněný kabel +item.appliedenergistics2.ItemPart.CableSmart.name=ME chytrý kabel +item.appliedenergistics2.ItemPart.CableDense.name=ME silný kabel +item.appliedenergistics2.ItemPart.StorageMonitor.name=ME monitor úložiště +item.appliedenergistics2.ItemPart.ConversionMonitor.name=ME konverzní monitor +item.appliedenergistics2.ItemPart.CraftingTerminal.name=ME výrobní terminál +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=Osvětlený panel +item.appliedenergistics2.ItemPart.Monitor.name=Světlě osvětlený panel +item.appliedenergistics2.ItemPart.DarkMonitor.name=Tmavě osvětlený panel +item.appliedenergistics2.ItemPart.ExportBus.name=ME exportní sběrnice +item.appliedenergistics2.ItemPart.FormationPlane.name=ME formační plocha +item.appliedenergistics2.ItemPart.ImportBus.name=ME importní sběrnice +item.appliedenergistics2.ItemPart.Interface.name=ME rozhraní +item.appliedenergistics2.ItemPart.LevelEmitter.name=ME úrovňový vysílač +item.appliedenergistics2.ItemPart.P2PTunnel.name=P2P tunel +item.appliedenergistics2.ItemPart.PatternTerminal.name=ME terminál schémat +item.appliedenergistics2.ItemPart.QuartzFiber.name=Křemenné vlákno +item.appliedenergistics2.ItemPart.StorageBus.name=ME úložná sběrnice +item.appliedenergistics2.ItemPart.Terminal.name=ME terminál +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=ME převrácená přepínaci sběrnice +item.appliedenergistics2.ItemPart.ToggleBus.name=ME přepínací sběrnice +item.appliedenergistics2.ItemPart.CraftingMonitor.name=ME výrobní monitor +item.appliedenergistics2.ItemPart.InterfaceTerminal.name=ME terminál rozhraní + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=128³ Prostorový úložný článek +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=16³ Prostorový úložný článek +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=2³ Prostorový úložný článek + +item.appliedenergistics2.ToolCertusQuartzAxe.name=Sekera z nakloněného křemenu +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=Sekáček z nakloněného křemenu +item.appliedenergistics2.ToolCertusQuartzHoe.name=Motyka z nakloněného křemenu +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=Krumpáč z nakloněného křemenu +item.appliedenergistics2.ToolCertusQuartzSpade.name=Lopata z nakloněného křemenu +item.appliedenergistics2.ToolCertusQuartzSword.name=Meč z nakloněného křemenu +item.appliedenergistics2.ToolCertusQuartzWrench.name=Klíč z nakloněného křemenu + +item.appliedenergistics2.ToolNetherQuartzAxe.name=Sekera z křemenu +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=Sekáček z křemenu +item.appliedenergistics2.ToolNetherQuartzHoe.name=Motyka z křemenu +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=Krumpáč z křemenu +item.appliedenergistics2.ToolNetherQuartzSpade.name=Lopata z křemenu +item.appliedenergistics2.ToolNetherQuartzSword.name=Meč z křemenu +item.appliedenergistics2.ToolNetherQuartzWrench.name=Klíč z křemenu + +item.appliedenergistics2.ItemPaintBall.name=Malovací míč +item.appliedenergistics2.ToolPortableCell.name=Přenosný článek +item.appliedenergistics2.ToolNetworkTool.name=Síťový nástroj +item.appliedenergistics2.ToolChargedStaff.name=Nabitá hůl +item.appliedenergistics2.ToolEntropyManipulator.name=Manipulátor entropie +item.appliedenergistics2.ToolMassCannon.name=Hmotový kanón +item.appliedenergistics2.ToolMemoryCard.name=Paměťová karta +item.appliedenergistics2.ToolColorApplicator.name=Aplikátor barev +item.appliedenergistics2.ToolWirelessTerminal.name=Bezdrátový terminál +item.appliedenergistics2.ToolBiometricCard.name=Biometrická karta + +item.appliedenergistics2.ToolDebugCard.name=Dev.DebugovacíKarta +item.appliedenergistics2.ToolReplicatorCard.name=Dev.ReplikačníKarta + +commands.ae2.usage=Příkazy poskytované módem Applied Energistics 2 - použij /ae2 list pro seznam a /ae2 help _____ pro nápovědu s příkazem. +commands.ae2.permissions=Nemáš dostatečná oprávnění pro použití tohoto příkazu. +commands.ae2.ChunkLogger=Zapíná a vypíná načítání a uvolňování chunků do serverového logu. ( OP ) +commands.ae2.ChunkLoggerOn=Logování chunků je zapnuto +commands.ae2.ChunkLoggerOff=Logování chunků je vypnuto +commands.ae2.Supporters=Zobrazí seznam lidí podporujících AE2 + +achievement.ae2.Compass=Lovec meteoritů +achievement.ae2.Compass.desc=Výroba Meteoritského kompasu +achievement.ae2.Presses=Neznámá technologie +achievement.ae2.Presses.desc=Najdi otisk procesoru +achievement.ae2.SpatialIO=Prostorová koordinace +achievement.ae2.SpatialIO.desc=Vyrob prostorový IO přesun +achievement.ae2.SpatialIOExplorer=Odvážně se tam vrhni +achievement.ae2.SpatialIOExplorer.desc=Nech se uložit v prostorovém úložném článku +achievement.ae2.StorageCell=Lepší než truhly +achievement.ae2.StorageCell.desc=Vyrob úložný článek +achievement.ae2.IOPort=Promíchání úložných článků +achievement.ae2.IOPort.desc=Vyrob IO přesun +achievement.ae2.CraftingTerminal=(Mnohem) větší stůl +achievement.ae2.CraftingTerminal.desc=Vyrob Výrobní terminál +achievement.ae2.PatternTerminal=Výrobní mistr +achievement.ae2.PatternTerminal.desc=Vyrob Terminál schémat +achievement.ae2.ChargedQuartz=Šokující +achievement.ae2.ChargedQuartz.desc=Najdi Nabitý křemen +achievement.ae2.Fluix=Nepřírodní +achievement.ae2.Fluix.desc=Vyrob Fluixové krystaly +achievement.ae2.Charger=Fluixová produkce +achievement.ae2.Charger.desc=Vyrob Nabíječ +achievement.ae2.CrystalGrowthAccelerator=Akcelerátor je porozumění +achievement.ae2.CrystalGrowthAccelerator.desc=Vyrob Krystalický akcelerátor růstu +achievement.ae2.GlassCable=Připojení Fluixové energie +achievement.ae2.GlassCable.desc=Vyrob ME skleněný kabel +achievement.ae2.Networking1=Síťový učeň +achievement.ae2.Networking1.desc=Dosáhni 8 kanálů za použití zařízení v síti. +achievement.ae2.Controller=Síťový rozvaděč +achievement.ae2.Controller.desc=Vyrob Ovladač +achievement.ae2.Networking2=Síťový inženýr +achievement.ae2.Networking2.desc=Dosáhni 128 kanálů za použití zařízení v síti. +achievement.ae2.Networking3=Síťový administrátor +achievement.ae2.Networking3.desc=Dosáhni 2048 kanálů za použití zařízení v síti. +achievement.ae2.P2P=Topologie sítí +achievement.ae2.P2P.desc=Vyrob P2P most +achievement.ae2.Recursive=Rekurzivní síťaření +achievement.ae2.Recursive.desc=Umísti rozhraní na úložnou sběrnici. +achievement.ae2.CraftingCPU=Výroba další generace +achievement.ae2.CraftingCPU.desc=Vyrob výrobní jednotku +achievement.ae2.Facade=Síťová estetika +achievement.ae2.Facade.desc=Vyrob kabelovou fasádu +achievement.ae2.NetworkTool=Síťová diagnostika +achievement.ae2.NetworkTool.desc=Vyrob síťový nástroj +achievement.ae2.PortableCell=Úložný Nomand +achievement.ae2.PortableCell.desc=Vyrob přenosný článek +achievement.ae2.StorageBus=Neomezený potenciál +achievement.ae2.StorageBus.desc=Vyrob úložnou sběrnici +achievement.ae2.QNB=Kvantové tunelování +achievement.ae2.QNB.desc=Vyrob kvantové spojení + +stat.ae2.ItemsInserted=Předměty přidány do ME úložiště +stat.ae2.ItemsExtracted=Předměty odebrány z ME úložiště +stat.ae2.TurnedCranks=Otočené kliky \ No newline at end of file diff --git a/src/main/resources/assets/appliedenergistics2/lang/de_DE.lang b/src/main/resources/assets/appliedenergistics2/lang/de_DE.lang new file mode 100644 index 00000000..7a49494b --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/de_DE.lang @@ -0,0 +1,451 @@ +tile.appliedenergistics2.BlockCableBus.name=AE2-Kabel und/oder Bus +tile.appliedenergistics2.BlockCellWorkbench.name=Zellenwerkbank +tile.appliedenergistics2.BlockCharger.name=Ladegerät +tile.appliedenergistics2.BlockChest.name=ME-Truhe +tile.appliedenergistics2.BlockCondenser.name=Materiekondensator +tile.appliedenergistics2.BlockController.name=ME-Controller +tile.appliedenergistics2.BlockCrank.name=Holzkurbel +tile.appliedenergistics2.BlockCreativeEnergyCell.name=Kreative Energiezelle +tile.appliedenergistics2.BlockDenseEnergyCell.name=Dichte Energiezelle +tile.appliedenergistics2.BlockEnergyCell.name=Energiezelle +tile.appliedenergistics2.BlockDrive.name=ME-Laufwerk +tile.appliedenergistics2.BlockEnergyAcceptor.name=Energieakzeptor +tile.appliedenergistics2.BlockGrinder.name=Quarzmühlstein +tile.appliedenergistics2.BlockMatrixFrame.name=Matrixrahmen +tile.appliedenergistics2.BlockIOPort.name=ME-IO-Port +tile.appliedenergistics2.BlockInscriber.name=Gravurmaschine +tile.appliedenergistics2.BlockInterface.name=ME-Schnittstelle +tile.appliedenergistics2.BlockQuantumLinkChamber.name=ME-Quantentunnelkammer +tile.appliedenergistics2.BlockQuantumRing.name=ME-Quantentunnelring +tile.appliedenergistics2.BlockFluix.name=Fluix-Block +tile.appliedenergistics2.BlockQuartz.name=Certusquarzblock +tile.appliedenergistics2.BlockQuartzChiseled.name=Gemeißelter Certusquarzblock +tile.appliedenergistics2.BlockQuartzGlass.name=Quarzglas +tile.appliedenergistics2.BlockQuartzLamp.name=Polarisiertes Quarzglas +tile.appliedenergistics2.BlockQuartzPillar.name=Certusquarzsäule +tile.appliedenergistics2.BlockQuartzTorch.name=Geladene Quarzleuchte +tile.appliedenergistics2.BlockLightDetector.name=Quarzlichtsensor +tile.appliedenergistics2.BlockSpatialIOPort.name=IO-Raumport +tile.appliedenergistics2.BlockSpatialPylon.name=Raumpylon +tile.appliedenergistics2.BlockTinyTNT.name=Mini-TNT +tile.appliedenergistics2.BlockVibrationChamber.name=Vibrationskammer +tile.appliedenergistics2.BlockWireless.name=Drahtloser ME-Zugangspunkt +tile.appliedenergistics2.OreQuartz.name=Certusquarzerz +tile.appliedenergistics2.OreQuartzCharged.name=Geladenes Certusquarzerz +tile.appliedenergistics2.BlockSecurity.name=ME-Sicherheitskonsole +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=Kristallwachstumsbeschleuniger +tile.appliedenergistics2.BlockSkyStone.name=Himmelsstein +tile.appliedenergistics2.BlockSkyStone.Block.name=Himmelssteinblock +tile.appliedenergistics2.BlockSkyStone.Brick.name=Himmelssteinziegel +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=Kleine Himmelssteinziegel +tile.appliedenergistics2.BlockSkyChest.name=Himmelssteintruhe +tile.appliedenergistics2.BlockSkyChest.Block.name=Himmelssteinblocktruhe +tile.appliedenergistics2.BlockSkyCompass.name=Meteoritenkompass +tile.appliedenergistics2.BlockCraftingMonitor.name=Fertigungsmonitor +tile.appliedenergistics2.BlockCraftingStorage.name=1k-Fertigungsspeicher +tile.appliedenergistics2.BlockCraftingStorage4k.name=4k-Fertigungsspeicher +tile.appliedenergistics2.BlockCraftingStorage16k.name=16k-Fertigungsspeicher +tile.appliedenergistics2.BlockCraftingStorage64k.name=64k-Fertigungsspeicher +tile.appliedenergistics2.BlockCraftingAccelerator.name=Fertigungs-Prozessoreinheit +tile.appliedenergistics2.BlockCraftingUnit.name=Fertigungseinheit +tile.appliedenergistics2.BlockMolecularAssembler.name=Molekularassembler + +chat.appliedenergistics2.ChestCannotReadStorageCell=ME-Truhe kann Speicherzelle nicht einlesen. +chat.appliedenergistics2.SettingCleared=Einstellung gelöscht. +chat.appliedenergistics2.OutOfRange=Drahtloser Zugangspunkt außer Reichweite. +chat.appliedenergistics2.InvalidMachine=Ungültige Maschine. +chat.appliedenergistics2.LoadedSettings=Einstellungen erfolgreich geladen. +chat.appliedenergistics2.DeviceNotPowered=Gerät hat zu wenig Energie +chat.appliedenergistics2.MachineNotPowered=Maschine bekommt keine Energie. +chat.appliedenergistics2.CommunicationError=Fehler beim Kommunizieren mit dem Netzwerk. +chat.appliedenergistics2.SavedSettings=Einstellungen erfolgreich gespeichert. +chat.appliedenergistics2.AmmoDepleted=Munition verbraucht. +chat.appliedenergistics2.isNowLocked=Monitor ist nun gesperrt. +chat.appliedenergistics2.isNowUnlocked=Monitor ist nun entsperrt. + +itemGroup.appliedenergistics2=Applied Energistics 2 +itemGroup.appliedenergistics2.facades=Applied Energistics 2 - Fassaden + +gui.appliedenergistics2.CraftingTerminal=Fertigungskonsole +gui.appliedenergistics2.METunnel=ME +gui.appliedenergistics2.ItemTunnel=Item +gui.appliedenergistics2.FluidTunnel=Flüssigkeiten +gui.appliedenergistics2.RedstoneTunnel=Redstone +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU +gui.appliedenergistics2.RFTunnel=RF +gui.appliedenergistics2.LightTunnel=Licht + +gui.appliedenergistics2.security.extract.name=Extrahieren +gui.appliedenergistics2.security.inject.name=Deponieren +gui.appliedenergistics2.security.craft.name=Fertigen +gui.appliedenergistics2.security.build.name=Bauen +gui.appliedenergistics2.security.security.name=Sicherheit + +gui.appliedenergistics2.security.extract.tip=Der Nutzer darf Items aus dem Lager nehmen. +gui.appliedenergistics2.security.inject.tip=Der Nutzer darf neue Items ins Lager legen. +gui.appliedenergistics2.security.craft.tip=Der Nutzer darf Fertigungsanforderungen stellen. +gui.appliedenergistics2.security.build.tip=Der Nutzer darf die physikalische Struktur des Netzwerks verändern und Konfigurationsänderungen vornehmen. +gui.appliedenergistics2.security.security.tip=Der Nutzer darf auf die Sicherheitskonsole des Netzwerks zugreifen. + +gui.appliedenergistics2.Efficiency=Effizienz +gui.appliedenergistics2.RequiredPower=Benötigte Energie +gui.appliedenergistics2.StoredPower=Gespeicherte Energie +gui.appliedenergistics2.MaxPower=Max Energie +gui.appliedenergistics2.QuartzCuttingKnife=Quarzmeißel +gui.appliedenergistics2.Inscriber=Gravurdrucker +gui.appliedenergistics2.Wireless=Drahtloser Zugangspunkt +gui.appliedenergistics2.WirelessTerminal=Drahtloskonsole +gui.appliedenergistics2.NoPermissions=Keine Erlaubnis ausgewählt +gui.appliedenergistics2.SecurityCardEditor=Biometrischer Karteneditor +gui.appliedenergistics2.Encoded=Verschlüsselt +gui.appliedenergistics2.Priority=Priorität +gui.appliedenergistics2.StorageBus=Speicherbus +gui.appliedenergistics2.EnergyDrain=Passivverbrauch +gui.appliedenergistics2.Installed=Installiert +gui.appliedenergistics2.NetworkTool=Netzwerksonde +gui.appliedenergistics2.PowerUsageRate=Energienutzung +gui.appliedenergistics2.PowerInputRate=Energiespeisung +gui.appliedenergistics2.PortableCell=Tragbare Zelle +gui.appliedenergistics2.Security=Sicherheitsterm +gui.appliedenergistics2.CellWorkbench=Zellenwerkbank +gui.appliedenergistics2.QuantumLinkChamber=Quanten-Tunnelkammer +gui.appliedenergistics2.IOPort=ME-IO-Port +gui.appliedenergistics2.Chest=ME-Truhe +gui.appliedenergistics2.Condenser=Materiekondensator +gui.appliedenergistics2.Config=Config +gui.appliedenergistics2.Drive=ME-Laufwerk +gui.appliedenergistics2.ExportBus=ME-Exportbus +gui.appliedenergistics2.GrindStone=Mühlstein +gui.appliedenergistics2.ImportBus=ME-Importbus +gui.appliedenergistics2.Interface=ME-Schnittstelle +gui.appliedenergistics2.LevelEmitter=ME-Füllstandsemitter +gui.appliedenergistics2.Of=Von +gui.appliedenergistics2.Patterns=Schablonen +gui.appliedenergistics2.SpatialIOPort=IO-Raumport +gui.appliedenergistics2.StoredEnergy=Gespeicherte Energie +gui.appliedenergistics2.StoredItems=Gespeicherte Items +gui.appliedenergistics2.Terminal=Konsole +gui.appliedenergistics2.InterfaceTerminal=Schnittstellenkonsole +gui.appliedenergistics2.InterfaceTerminalHint=Zeige oder verstecke die Schnittstelle in der Konsole. +gui.appliedenergistics2.FormationPlane=Formationsfläche +gui.appliedenergistics2.VibrationChamber=Vibrationskammer +gui.appliedenergistics2.NetworkDetails=Netzwerkdetails +gui.appliedenergistics2.StorageCells=ME-Speicherzellen +gui.appliedenergistics2.IOBuses=ME-Import-/Exportbus +gui.appliedenergistics2.Stores=Speichert +gui.appliedenergistics2.BytesUsed=Genutzte Bytes +gui.appliedenergistics2.Types=Typen +gui.appliedenergistics2.Blank=Leer +gui.appliedenergistics2.Unlinked=Nicht verbunden +gui.appliedenergistics2.Linked=Verbunden +gui.appliedenergistics2.StoredSize=Gespeicherte Größe +gui.appliedenergistics2.SkyChest=Himmelssteintruhe +gui.appliedenergistics2.PatternTerminal=Schablonenkonsole +gui.appliedenergistics2.CraftingPattern=Fertigungsschablone +gui.appliedenergistics2.MolecularAssembler=Molekularassembler +gui.appliedenergistics2.ProcessingPattern=Processing Pattern +gui.appliedenergistics2.Crafts=Fertigt +gui.appliedenergistics2.And=und +gui.appliedenergistics2.Creates=Kreiert +gui.appliedenergistics2.With=mit +gui.appliedenergistics2.InWorldCrafting=AE2 In-World-Fertigung +gui.appliedenergistics2.inWorldFluix=Wirf 1 Geladenes Certusquarzstück + 1 Netherquarz + Redstone-Staub nebeneinander in eine Pfütze und warte einen Moment. +gui.appliedenergistics2.inWorldPurificationCertus=Wirf einen Certusquarzkeim, gemacht aus Certusquarzstaub und Sand, in eine Pfütze Wasser; um den Prozess zu beschleunigen, füge Kristallwachstumsbeschleuniger hinzu. +gui.appliedenergistics2.inWorldPurificationNether=Wirf einen Netherquarzkeim, gemacht aus Netherquarzstaub und Sand, in eine Pfütze Wasser; um den Prozess zu beschleunigen, füge Kristallwachstumsbeschleuniger hinzu. +gui.appliedenergistics2.inWorldPurificationFluix=Wirf einen Fluix-Keim, gemacht aus Fluix-Staub und Sand, in eine Pfütze Wasser; um den Prozess zu beschleunigen, füge Kristallwachstumsbeschleuniger hinzu. +gui.appliedenergistics2.inWorldSingularity=Wirf zum Erschaffen 1 Singularität und 1 Enderstaub zusammen und erzeuge in Reichweite der Items eine Explosion. +gui.appliedenergistics2.ChargedQuartz=Geladener Certusquarz entsteht durch Einfügen eines Ungeladenen Certusquarzkristalls in ein Ladegerät, das Energie erhält. +gui.appliedenergistics2.ChargedQuartzFind=Geladener Certusquarz kann relativ selten in der Welt gefunden werden, er sieht aus wie gewöhnlicher Certusquarz, aber er funkelt. +gui.appliedenergistics2.OfSecondOutput=% Chance für Nebenprodukt. +gui.appliedenergistics2.NoSecondOutput=Kein Nebenprodukt +gui.appliedenergistics2.SelectAmount=Menge wählen +gui.appliedenergistics2.CopyMode=Kopiermodus +gui.appliedenergistics2.CopyModeDesc=Kontrolliert, ob der Inhalt der Konfigurationsfläche entfernt wird, wenn du die Zelle entfernst. +gui.appliedenergistics2.Next=Weiter +gui.appliedenergistics2.Lumen=Lumen +gui.appliedenergistics2.Empty=Leer +gui.appliedenergistics2.Stored=Gespeichert +gui.appliedenergistics2.Cancel=Abbrechen +gui.appliedenergistics2.Crafting=Fertigung +gui.appliedenergistics2.Scheduled=Geplant +gui.appliedenergistics2.CraftingStatus=Fertigungsstatus +gui.appliedenergistics2.FromStorage=Verfügbar +gui.appliedenergistics2.ToCraft=Zu fertigen +gui.appliedenergistics2.CraftingPlan=Fertigungsplan +gui.appliedenergistics2.Automatic=Automatisch +gui.appliedenergistics2.Start=Start +gui.appliedenergistics2.Missing=Fehlend +gui.appliedenergistics2.Bytes=Speicher +gui.appliedenergistics2.Simulation=Simulation +gui.appliedenergistics2.CoProcessors=Co-Prozessoren +gui.appliedenergistics2.CraftingCPU=Fertigungs-CPU +gui.appliedenergistics2.NoCraftingCPUs=Keine Fertigungs-CPUs verfügbar +gui.appliedenergistics2.CalculatingWait=Berechnung, bitte warten... +gui.appliedenergistics2.Clean=Löschen +gui.appliedenergistics2.InvalidPattern=Ungültige Schablone +gui.appliedenergistics2.Range=Reichweite +gui.appliedenergistics2.TransparentFacades=Transparente Fassaden +gui.appliedenergistics2.TransparentFacadesHint=Kontrolliert Sichtbarkeit von Fassaden, währen sich die Netzwerksonde in deiner Hotbar befindet. +gui.appliedenergistics2.CPUs=CPU +gui.appliedenergistics2.NoCraftingJobs=Kein aktiver Fertigungsauftrag +gui.appliedenergistics2.FacadeCrafting=Fassadenfertigung +gui.appliedenergistics2.inWorldCraftingPresses=Gravurdrucke sind im Zentrum von Meteoriten zu finden, welche man in der Welt gelegentlich sieht; sie können mit Hilfe eines Meteoritenkompasses lokalisiert werden. +gui.appliedenergistics2.Included=Einschließlich +gui.appliedenergistics2.Excluded=Ausschließlich +gui.appliedenergistics2.Partitioned=Partitioniert +gui.appliedenergistics2.Precise=Präzise +gui.appliedenergistics2.Fuzzy=Ungenau + +gui.tooltips.appliedenergistics2.Stash=Items lagern +gui.tooltips.appliedenergistics2.StashDesc=Items aus dem Fertigungsgitter in Netzwerkspeicher zurücksenden. +gui.tooltips.appliedenergistics2.Substitutions=Ore-Dict-Ersetzung +gui.tooltips.appliedenergistics2.SubstitutionsDesc=Ersetzungsoptionen für Eingangskomponenten ändern +gui.tooltips.appliedenergistics2.SubstitutionsOn=Ersetzung aktiviert +gui.tooltips.appliedenergistics2.SubstitutionsOff=Ersetzung deaktiviert +gui.tooltips.appliedenergistics2.Encode=Schablone kodieren +gui.tooltips.appliedenergistics2.EncodeDescription=Beschreibe die aktuell kodierte Schablone oder eine Leere Schablone mit der eingegebenen Vorlage. +gui.tooltips.appliedenergistics2.FuzzyMode=Ungenauer Vergleich +gui.tooltips.appliedenergistics2.FZPercent_25=Aufteilen bei 25% +gui.tooltips.appliedenergistics2.FZPercent_50=Aufteilen bei 50% +gui.tooltips.appliedenergistics2.FZPercent_75=Aufteilen bei 75% +gui.tooltips.appliedenergistics2.FZPercent_99=Aufteilen bei 99% +gui.tooltips.appliedenergistics2.SortOrder=Sortierreihenfolge +gui.tooltips.appliedenergistics2.SortBy=Sortiere nach +gui.tooltips.appliedenergistics2.FZIgnoreAll=Nutze jegliche Variante +gui.tooltips.appliedenergistics2.TransferDirection=Transferrichtung +gui.tooltips.appliedenergistics2.TransferToNetwork=Daten ins Netzwerk transferieren +gui.tooltips.appliedenergistics2.TransferToStorageCell=Daten auf Speicherzelle transferieren +gui.tooltips.appliedenergistics2.ToggleSortDirection=Wechsle Sortierrichtung +gui.tooltips.appliedenergistics2.StoredItems=Gespeicherte Items +gui.tooltips.appliedenergistics2.StoredCraftable=Gespeichert / Herstellbar +gui.tooltips.appliedenergistics2.View=Ansicht +gui.tooltips.appliedenergistics2.RedstoneMode=Redstone-Modus +gui.tooltips.appliedenergistics2.OperationMode=Betriebsart +gui.tooltips.appliedenergistics2.NumberOfItems=Nummer der Items +gui.tooltips.appliedenergistics2.ItemName=Item-Name +gui.tooltips.appliedenergistics2.PowerUnits=Energieeinheiten +gui.tooltips.appliedenergistics2.IOMode=Input/Output-Modus +gui.tooltips.appliedenergistics2.CondenserOutput=ME-Kondensator - Output +gui.tooltips.appliedenergistics2.PartitionStorage=Partitionsspeicher +gui.tooltips.appliedenergistics2.Clear=Leeren +gui.tooltips.appliedenergistics2.TrashController=Löschung via Shift-/Space-klick. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=Blockierungsmodus +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=Fertigungsmodus +gui.tooltips.appliedenergistics2.Trash=Zerstöre Items +gui.tooltips.appliedenergistics2.MatterBalls=Zu Materiebällen kondensieren \n%s pro Ball +gui.tooltips.appliedenergistics2.Singularity=Zu Singularitäten kondensieren \n%s pro Singularität +gui.tooltips.appliedenergistics2.Read=Nur Extrahieren +gui.tooltips.appliedenergistics2.Write=Nur Insertieren +gui.tooltips.appliedenergistics2.ReadWrite=In beide Richtungen +gui.tooltips.appliedenergistics2.AlwaysActive=Immer aktiv +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=Aktiv ohne Signal +gui.tooltips.appliedenergistics2.ActiveWithSignal=Aktiv mit Signal +gui.tooltips.appliedenergistics2.ActiveOnPulse=Einmalig aktiv je Puls +gui.tooltips.appliedenergistics2.EmitLevelsBelow=Signal, wenn Limit erreicht oder unterschritten. +gui.tooltips.appliedenergistics2.EmitLevelAbove=Signal, wenn Limit erreicht oder überschritten. +gui.tooltips.appliedenergistics2.SearchMode_Auto=Automatische Suche +gui.tooltips.appliedenergistics2.SearchMode_Standard=Standard-Suche +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=Automatische Suche mit NEI +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=Standard-Suche mit NEI +gui.tooltips.appliedenergistics2.SearchMode=Suchleistenmodus +gui.tooltips.appliedenergistics2.PartitionStorageHint=Partition mit aktuell gespeicherten Items erstellen. +gui.tooltips.appliedenergistics2.ClearSettings=Config/Einstellungen löschen +gui.tooltips.appliedenergistics2.Craftable=Herstellbar +gui.tooltips.appliedenergistics2.MoveWhenEmpty=Auswerfen wenn leer. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=Auswerfen wenn fertig. +gui.tooltips.appliedenergistics2.MoveWhenFull=Auswerfen wenn voll. +gui.tooltips.appliedenergistics2.Disabled=Deaktiviert +gui.tooltips.appliedenergistics2.Enable=Aktiviert +gui.tooltips.appliedenergistics2.Blocking=Nicht fertigen, wenn Zielinventar Items enthält. +gui.tooltips.appliedenergistics2.NonBlocking=Inhalt des Zielinventars ignorieren. +gui.tooltips.appliedenergistics2.Craft=Fertigungsverhalten +gui.tooltips.appliedenergistics2.CraftOnly=Beim Export gelagerte Items nicht verwenden, nur Items fertigen. +gui.tooltips.appliedenergistics2.CraftEither=Beim Export gelagerte Items verwenden oder fertigen. +gui.tooltips.appliedenergistics2.LevelType=Level-Typ +gui.tooltips.appliedenergistics2.LevelType_Energy=Energie +gui.tooltips.appliedenergistics2.LevelType_Item=Item +gui.tooltips.appliedenergistics2.InventoryTweaks=Inventory Tweaks +gui.tooltips.appliedenergistics2.Mod=Mod +gui.tooltips.appliedenergistics2.TerminalStyle=Konsolen-Stil +gui.tooltips.appliedenergistics2.TerminalStyle_Full=Vollbildschirmskonsole +gui.tooltips.appliedenergistics2.TerminalStyle_Tall=Hohe zentrierte Konsole +gui.tooltips.appliedenergistics2.TerminalStyle_Small=Kleine zentrierte Konsole +gui.tooltips.appliedenergistics2.DoesntDespawn=Dieses Item wird nicht verschwinden. +gui.tooltips.appliedenergistics2.EmitterMode=Fertigungs-Emittermodus +gui.tooltips.appliedenergistics2.CraftViaRedstone=Stoße Redstone-Signal aus, um Item zu fertigen. +gui.tooltips.appliedenergistics2.EmitWhenCrafting=Stoße Redstone-Signal aus, während das Item gefertigt wird. +gui.tooltips.appliedenergistics2.ReportInaccessibleItems=Melde unerreichbare Items +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsYes=Ja: Items, die nicht extrahiert werden können, werden sichtbar. +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsNo=Nein: Nur extrahierbare Items werden sichtbar. + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=Minecraft Joules +gui.appliedenergistics2.units.ic2=Energy Units +gui.appliedenergistics2.units.mekanism=Joules +gui.appliedenergistics2.units.rotarycraft=Watt +gui.appliedenergistics2.units.thermalexpansion=Redstone Flux + +gui.appliedenergistics2.White=Weiß +gui.appliedenergistics2.Orange=Orange +gui.appliedenergistics2.Magenta=Magenta +gui.appliedenergistics2.LightBlue=Hellblau +gui.appliedenergistics2.Yellow=Gelb +gui.appliedenergistics2.Lime=Hellgrün +gui.appliedenergistics2.Pink=Pink +gui.appliedenergistics2.Gray=Grau +gui.appliedenergistics2.LightGray=Hellgrau +gui.appliedenergistics2.Cyan=Türkis +gui.appliedenergistics2.Purple=Violett +gui.appliedenergistics2.Blue=Blau +gui.appliedenergistics2.Brown=Braun +gui.appliedenergistics2.Green=Grün +gui.appliedenergistics2.Red=Rot +gui.appliedenergistics2.Black=Schwarz +gui.appliedenergistics2.Fluix=Fluix + +waila.appliedenergistics2.DeviceOnline=Gerät Online +waila.appliedenergistics2.DeviceOffline=Gerät Offline +waila.appliedenergistics2.DeviceMissingChannel=Gerät ohne Kanal +waila.appliedenergistics2.Locked=Gesperrt +waila.appliedenergistics2.Unlocked=Entsperrt +waila.appliedenergistics2.Showing=Zeigt +waila.appliedenergistics2.Contains=Enthält +waila.appliedenergistics2.Channels=Kanäle + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=1k-ME-Speicherzelle +item.appliedenergistics2.ItemBasicStorageCell.4k.name=4k-ME-Speicherzelle +item.appliedenergistics2.ItemBasicStorageCell.16k.name=16k-ME-Speicherzelle +item.appliedenergistics2.ItemBasicStorageCell.64k.name=64k-ME-Speicherzelle +item.appliedenergistics2.ItemCreativeStorageCell.name=Kreative ME-Speicherzelle +item.appliedenergistics2.ItemEncodedPattern.name=Kodierte ME-Schablone +item.appliedenergistics2.ItemViewCell.name=Sichtzelle +item.appliedenergistics2.ItemFacade.name=Kabelfassade + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=Certusquarzkeim +item.appliedenergistics2.ItemCrystalSeed.Nether.name=Netherquarzkeim +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=Fluix-Keim +item.appliedenergistics2.ItemMaterial.InvalidType.name=Dieses Item ist deaktiviert. +item.appliedenergistics2.ItemMaterial.AdvCard.name=Fortgeschrittene Karte +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=Annihilationskern +item.appliedenergistics2.ItemMaterial.BasicCard.name=Basiskarte +item.appliedenergistics2.ItemMaterial.BlankPattern.name=Leere Schablone +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=Kalkulationsprozessor +item.appliedenergistics2.ItemMaterial.CardCapacity.name=Kapazitätskarte +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=Ungenauigkeitskarte +item.appliedenergistics2.ItemMaterial.CardInverter.name=Umkehrungskarte +item.appliedenergistics2.ItemMaterial.CardRedstone.name=Redstone-Karte +item.appliedenergistics2.ItemMaterial.CardSpeed.name=Beschleunigungskarte +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=2³ Spatial Component +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=16³ Spatial Component +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=128³ Spatial Component +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=1k-ME-Speicherkomponente +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=4k-ME-Speicherkomponente +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=16k-ME-Speicherkomponente +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=64k-ME-Speicherkomponente +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=Certusquarzkristall +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=Geladener Certusquarzkristall +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=Certusquarzstaub +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=ME-Speichergehäuse +item.appliedenergistics2.ItemMaterial.EnderDust.name=Enderstaub +item.appliedenergistics2.ItemMaterial.EngProcessor.name=Konstruktionsprozessor +item.appliedenergistics2.ItemMaterial.Flour.name=Mehl +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=Fluixkristall +item.appliedenergistics2.ItemMaterial.FluixDust.name=Fluixstaub +item.appliedenergistics2.ItemMaterial.FluixPearl.name=Fluixperle +item.appliedenergistics2.ItemMaterial.FormationCore.name=Formationskern +item.appliedenergistics2.ItemMaterial.GoldDust.name=Goldstaub +item.appliedenergistics2.ItemMaterial.IronDust.name=Eisenstaub +item.appliedenergistics2.ItemMaterial.IronNugget.name=Eisennugget +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=Logikprozessor +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=Unfertiger Logikprozessor +item.appliedenergistics2.ItemMaterial.MatterBall.name=Materieball +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=Netherquarzstaub +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=Reiner Certusquarzkristall +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=Reiner Fluixkristall +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=Reiner Netherquarzkristall +item.appliedenergistics2.ItemMaterial.QESingularity.name=Quantenverschränkte Singularität +item.appliedenergistics2.ItemMaterial.Silicon.name=Silizium +item.appliedenergistics2.ItemMaterial.Singularity.name=Singularität +item.appliedenergistics2.ItemMaterial.Wireless.name=Drahtlosempfänger +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=Drahtlosverstärker +item.appliedenergistics2.ItemMaterial.WoodenGear.name=Holzzahnrad +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=Gravur-Konstruktionsdruck +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=Gravur-Kalkulationsdruck +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=Gravur-Logikdruck +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=Gedruckter Konstruktionsschaltkreis +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=Gedruckter Kalkulationsschaltkreis +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=Gedruckter Logikschaltkreis +item.appliedenergistics2.ItemMaterial.SiliconPress.name=Gravur-Siliziumdruck +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=Gedrucktes Silizium +item.appliedenergistics2.ItemMaterial.NamePress.name=Schreiber-Namensdruck +item.appliedenergistics2.ItemMaterial.SkyDust.name=Himmelssteinstaub +item.appliedenergistics2.ItemMaterial.CardCrafting.name=Fertigungskarte + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=ME-Annihilationsfeld +item.appliedenergistics2.ItemPart.CableAnchor.name=Kabelanker +item.appliedenergistics2.ItemPart.CableCovered.name=Verdecktes ME-Kabel +item.appliedenergistics2.ItemPart.CableGlass.name=ME-Glaskabel +item.appliedenergistics2.ItemPart.CableSmart.name=Schlaues ME-Kabel +item.appliedenergistics2.ItemPart.CableDense.name=Dichtes ME-Kabel +item.appliedenergistics2.ItemPart.StorageMonitor.name=ME-Speichermonitor +item.appliedenergistics2.ItemPart.ConversionMonitor.name=ME-Konversionsmonitor +item.appliedenergistics2.ItemPart.CraftingTerminal.name=ME-Fertigungskonsole +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=Leuchtfeld +item.appliedenergistics2.ItemPart.Monitor.name=Helles Leuchtfeld +item.appliedenergistics2.ItemPart.DarkMonitor.name=Dunkles Leuchtfeld +item.appliedenergistics2.ItemPart.ExportBus.name=ME-Exportbus +item.appliedenergistics2.ItemPart.FormationPlane.name=ME-Formationsfeld +item.appliedenergistics2.ItemPart.ImportBus.name=ME-Importbus +item.appliedenergistics2.ItemPart.Interface.name=ME-Schnittstelle +item.appliedenergistics2.ItemPart.LevelEmitter.name=ME-Füllstandsemitter +item.appliedenergistics2.ItemPart.P2PTunnel.name=P2P-Tunnel +item.appliedenergistics2.ItemPart.PatternTerminal.name=ME-Schablonenkonsole +item.appliedenergistics2.ItemPart.QuartzFiber.name=Quarzfaser +item.appliedenergistics2.ItemPart.StorageBus.name=ME-Speicherbus +item.appliedenergistics2.ItemPart.Terminal.name=ME-Konsole +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=Invertierter schaltbarer ME-Bus +item.appliedenergistics2.ItemPart.ToggleBus.name=Schaltbarer ME-Bus +item.appliedenergistics2.ItemPart.CraftingMonitor.name=ME-Fertigungsmonitor +item.appliedenergistics2.ItemPart.InterfaceTerminal.name=ME-Schnittstellenkonsole + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=128³-Raumspeicherzelle +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=16³-Raumspeicherzelle +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=2³-Raumspeicherzelle + +item.appliedenergistics2.ToolCertusQuartzAxe.name=Certusquarzaxt +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=Certusquarzmeißel +item.appliedenergistics2.ToolCertusQuartzHoe.name=Certusquarzhacke +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=Certusquarzspitzhacke +item.appliedenergistics2.ToolCertusQuartzSpade.name=Certusquarzschaufel +item.appliedenergistics2.ToolCertusQuartzSword.name=Certusquarzschwert +item.appliedenergistics2.ToolCertusQuartzWrench.name=Certusquarzschraubenschlüssel + +item.appliedenergistics2.ToolNetherQuartzAxe.name=Netherquarzaxt +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=Netherquarzmeißel +item.appliedenergistics2.ToolNetherQuartzHoe.name=Netherquarzhacke +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=Netherquarzspitzhacke +item.appliedenergistics2.ToolNetherQuartzSpade.name=Netherquarzschaufel +item.appliedenergistics2.ToolNetherQuartzSword.name=Netherquarzschwert +item.appliedenergistics2.ToolNetherQuartzWrench.name=Netherquarzschraubenschlüssel + +item.appliedenergistics2.ItemPaintBall.name=Farbball +item.appliedenergistics2.ToolPortableCell.name=Tragbare Zelle +item.appliedenergistics2.ToolNetworkTool.name=Netzwerksonde +item.appliedenergistics2.ToolChargedStaff.name=Geladener Stab +item.appliedenergistics2.ToolEntropyManipulator.name=Entropiemanipulator +item.appliedenergistics2.ToolMassCannon.name=Materiekanone +item.appliedenergistics2.ToolMemoryCard.name=Speicherkarte +item.appliedenergistics2.ToolColorApplicator.name=Farbapplikator +item.appliedenergistics2.ToolWirelessTerminal.name=Drahtlose Zugangskonsole +item.appliedenergistics2.ToolBiometricCard.name=Biometriekarte + +item.appliedenergistics2.ToolDebugCard.name=Dev.Debug-Karte +item.appliedenergistics2.ToolReplicatorCard.name=Dev.Replikator-Karte + +commands.ae2.usage=Befehle verfügbar in Applied Energistics 2 - Verwende '/ae2 list' für eine Liste und '/ae2 help _____' für Hilfe zu einem Befehl. +commands.ae2.permissions=Du hast nicht die erforderlichen Berechtigungen, um diesen Befehl auszuführen. +commands.ae2.ChunkLogger=Schalted das Berichten von Chunk-Loading und Chunk-Unloading im Server-log um. ( OP ) +commands.ae2.ChunkLoggerOn=Chunk Logging ist nun aktiviert +commands.ae2.ChunkLoggerOff=Chunk Logging is nun deaktiviert +commands.ae2.Supporters=Zeigt eine Liste aller AE2-Unterstützer diff --git a/src/main/resources/assets/appliedenergistics2/lang/en_US.lang b/src/main/resources/assets/appliedenergistics2/lang/en_US.lang new file mode 100644 index 00000000..a4e53ed0 --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/en_US.lang @@ -0,0 +1,516 @@ +tile.appliedenergistics2.BlockCableBus.name=AE2 Cable and/or Bus +tile.appliedenergistics2.BlockCellWorkbench.name=Cell Workbench +tile.appliedenergistics2.BlockCharger.name=Charger +tile.appliedenergistics2.BlockChest.name=ME Chest +tile.appliedenergistics2.BlockCondenser.name=Matter Condenser +tile.appliedenergistics2.BlockController.name=ME Controller +tile.appliedenergistics2.BlockCrank.name=Wooden Crank +tile.appliedenergistics2.BlockCreativeEnergyCell.name=Creative Energy Cell +tile.appliedenergistics2.BlockDenseEnergyCell.name=Dense Energy Cell +tile.appliedenergistics2.BlockEnergyCell.name=Energy Cell +tile.appliedenergistics2.BlockDrive.name=ME Drive +tile.appliedenergistics2.BlockEnergyAcceptor.name=Energy Acceptor +tile.appliedenergistics2.BlockGrinder.name=Quartz Grindstone +tile.appliedenergistics2.BlockMatrixFrame.name=Matrix Frame +tile.appliedenergistics2.BlockIOPort.name=ME IO Port +tile.appliedenergistics2.BlockInscriber.name=Inscriber +tile.appliedenergistics2.BlockInterface.name=ME Interface +tile.appliedenergistics2.BlockQuantumLinkChamber.name=ME Quantum Link Chamber +tile.appliedenergistics2.BlockQuantumRing.name=ME Quantum Ring +tile.appliedenergistics2.BlockFluix.name=Fluix Block +tile.appliedenergistics2.BlockQuartz.name=Certus Quartz Block +tile.appliedenergistics2.BlockQuartzChiseled.name=Chiseled Certus Quartz Block +tile.appliedenergistics2.BlockQuartzGlass.name=Quartz Glass +tile.appliedenergistics2.BlockQuartzLamp.name=Vibrant Quartz Glass +tile.appliedenergistics2.BlockQuartzPillar.name=Certus Quartz Pillar +tile.appliedenergistics2.BlockQuartzTorch.name=Charged Quartz Fixture +tile.appliedenergistics2.BlockLightDetector.name=Light Detecting Fixture +tile.appliedenergistics2.BlockSpatialIOPort.name=Spatial IO Port +tile.appliedenergistics2.BlockSpatialPylon.name=Spatial Pylon +tile.appliedenergistics2.BlockTinyTNT.name=Tiny TNT +tile.appliedenergistics2.BlockVibrationChamber.name=Vibration Chamber +tile.appliedenergistics2.BlockWireless.name=ME Wireless Access Point +tile.appliedenergistics2.OreQuartz.name=Certus Quartz Ore +tile.appliedenergistics2.OreQuartzCharged.name=Charged Certus Quartz Ore +tile.appliedenergistics2.BlockSecurity.name=ME Security Terminal +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=Crystal Growth Accelerator +tile.appliedenergistics2.BlockSkyStone.name=Sky Stone +tile.appliedenergistics2.BlockSkyStone.Block.name=Sky Stone Block +tile.appliedenergistics2.BlockSkyStone.Brick.name=Sky Stone Brick +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=Sky Stone Small Brick +tile.appliedenergistics2.BlockSkyChest.name=Sky Stone Chest +tile.appliedenergistics2.BlockSkyChest.Block.name=Sky Stone Block Chest +tile.appliedenergistics2.BlockSkyCompass.name=Meteorite Compass +tile.appliedenergistics2.BlockCraftingMonitor.name=Crafting Monitor +tile.appliedenergistics2.BlockCraftingStorage.name=1k Crafting Storage +tile.appliedenergistics2.BlockCraftingStorage4k.name=4k Crafting Storage +tile.appliedenergistics2.BlockCraftingStorage16k.name=16k Crafting Storage +tile.appliedenergistics2.BlockCraftingStorage64k.name=64k Crafting Storage +tile.appliedenergistics2.BlockCraftingAccelerator.name=Crafting Co-Processing Unit +tile.appliedenergistics2.BlockCraftingUnit.name=Crafting Unit +tile.appliedenergistics2.BlockMolecularAssembler.name=Molecular Assembler + +// Stairs +tile.appliedenergistics2.ChiseledQuartzStairBlock.name=Chiseled Certus Quartz Stairs +tile.appliedenergistics2.FluixStairBlock.name=Fluix Stairs +tile.appliedenergistics2.QuartzPillarStairBlock.name=Certus Quartz Pillar Stairs +tile.appliedenergistics2.QuartzStairBlock.name=Certus Quartz Stairs +tile.appliedenergistics2.SkyStoneBlockStairBlock.name=Sky Stone Block Stairs +tile.appliedenergistics2.SkyStoneBrickStairBlock.name=Sky Stone Brick Stairs +tile.appliedenergistics2.SkyStoneSmallBrickStairBlock.name=Sky Stone Small Brick Stairs +tile.appliedenergistics2.SkyStoneStairBlock.name=Sky Stone Stairs + +chat.appliedenergistics2.ChestCannotReadStorageCell=ME Chest cannot read storage cell. +chat.appliedenergistics2.SettingCleared=Setting Cleared. +chat.appliedenergistics2.OutOfRange=Wireless Out Of Range. +chat.appliedenergistics2.InvalidMachine=Invalid Machine. +chat.appliedenergistics2.LoadedSettings=Successfully loaded settings. +chat.appliedenergistics2.DeviceNotPowered=Device is low on power. +chat.appliedenergistics2.MachineNotPowered=Machine is not powered. +chat.appliedenergistics2.CommunicationError=Error Communicating with Network. +chat.appliedenergistics2.SavedSettings=Successfully saved settings. +chat.appliedenergistics2.AmmoDepleted=Ammo Depleted. +chat.appliedenergistics2.isNowLocked=Monitor is now Locked. +chat.appliedenergistics2.isNowUnlocked=Monitor is now Unlocked. + +itemGroup.appliedenergistics2=Applied Energistics 2 +itemGroup.appliedenergistics2.facades=Applied Energistics 2 - Facades + +gui.appliedenergistics2.CraftingTerminal=Crafting Terminal +gui.appliedenergistics2.METunnel=ME +gui.appliedenergistics2.ItemTunnel=Item +gui.appliedenergistics2.FluidTunnel=Fluid +gui.appliedenergistics2.RedstoneTunnel=Redstone +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU +gui.appliedenergistics2.RFTunnel=RF +gui.appliedenergistics2.LightTunnel=Light + +gui.appliedenergistics2.security.extract.name=Withdraw +gui.appliedenergistics2.security.inject.name=Deposit +gui.appliedenergistics2.security.craft.name=Craft +gui.appliedenergistics2.security.build.name=Build +gui.appliedenergistics2.security.security.name=Security + +gui.appliedenergistics2.security.extract.tip=User is allowed to remove items from storage. +gui.appliedenergistics2.security.inject.tip=User is allowed to store new items into storage. +gui.appliedenergistics2.security.craft.tip=User can initiate new crafting jobs. +gui.appliedenergistics2.security.build.tip=User can modify the physical structure of the network, and make configuration changes. +gui.appliedenergistics2.security.security.tip=User can access and modify the security terminal of the network. + +gui.appliedenergistics2.Efficiency=Efficiency +gui.appliedenergistics2.RequiredPower=Required Power +gui.appliedenergistics2.StoredPower=Stored Power +gui.appliedenergistics2.MaxPower=Max Power +gui.appliedenergistics2.QuartzCuttingKnife=Quartz Cutting Knife +gui.appliedenergistics2.Inscriber=Inscriber +gui.appliedenergistics2.Wireless=Wireless Access Point +gui.appliedenergistics2.WirelessTerminal=Wireless Term +gui.appliedenergistics2.NoPermissions=No Permissions Selected +gui.appliedenergistics2.SecurityCardEditor=Biometric Card Editor +gui.appliedenergistics2.Encoded=Encoded +gui.appliedenergistics2.Priority=Priority +gui.appliedenergistics2.StorageBus=Storage Bus +gui.appliedenergistics2.EnergyDrain=Passive Drain +gui.appliedenergistics2.Installed=Installed +gui.appliedenergistics2.NetworkTool=Network Tool +gui.appliedenergistics2.PowerUsageRate=Energy Usage +gui.appliedenergistics2.PowerInputRate=Energy Generation +gui.appliedenergistics2.PortableCell=Portable Cell +gui.appliedenergistics2.Security=Security Term +gui.appliedenergistics2.CellWorkbench=Cell Workbench +gui.appliedenergistics2.QuantumLinkChamber=Quantum Link Chamber +gui.appliedenergistics2.IOPort=ME IO Port +gui.appliedenergistics2.Chest=ME Chest +gui.appliedenergistics2.Condenser=Matter Condenser +gui.appliedenergistics2.Config=Config +gui.appliedenergistics2.Drive=ME Drive +gui.appliedenergistics2.ExportBus=ME Export Bus +gui.appliedenergistics2.GrindStone=Grindstone +gui.appliedenergistics2.ImportBus=ME Import Bus +gui.appliedenergistics2.Interface=ME Interface +gui.appliedenergistics2.LevelEmitter=ME Level Emitter +gui.appliedenergistics2.Of=Of +gui.appliedenergistics2.Patterns=Patterns +gui.appliedenergistics2.SpatialIOPort=Spatial IO Port +gui.appliedenergistics2.StoredEnergy=Stored Energy +gui.appliedenergistics2.StoredItems=Stored Items +gui.appliedenergistics2.Terminal=Terminal +gui.appliedenergistics2.InterfaceTerminal=Interface Terminal +gui.appliedenergistics2.InterfaceTerminalHint=Show Or Hide on Interface Terminal. +gui.appliedenergistics2.FormationPlane=Formation Plane +gui.appliedenergistics2.VibrationChamber=Vibration Chamber +gui.appliedenergistics2.NetworkDetails=Network Details +gui.appliedenergistics2.StorageCells=ME Storage Cells +gui.appliedenergistics2.IOBuses=ME Import/Export Bus +gui.appliedenergistics2.Stores=Stores +gui.appliedenergistics2.BytesUsed=Bytes Used +gui.appliedenergistics2.Types=Types +gui.appliedenergistics2.Blank=Blank +gui.appliedenergistics2.Unlinked=Unlinked +gui.appliedenergistics2.Linked=Linked +gui.appliedenergistics2.StoredSize=Stored Size +gui.appliedenergistics2.SkyChest=Sky Stone Chest +gui.appliedenergistics2.PatternTerminal=Pattern Terminal +gui.appliedenergistics2.CraftingPattern=Crafting Pattern +gui.appliedenergistics2.MolecularAssembler=Molecular Assembler +gui.appliedenergistics2.ProcessingPattern=Processing Pattern +gui.appliedenergistics2.Crafts=Crafts +gui.appliedenergistics2.And=and +gui.appliedenergistics2.Creates=Creates +gui.appliedenergistics2.With=with +gui.appliedenergistics2.InWorldCrafting=AE2 In World Crafting +gui.appliedenergistics2.inWorldFluix=Drop 1 Charged Certus Quartz + 1 Nether Quartz + Redstone Dust into a puddle next to one another and wait a moment to receive 2 Fluix Crystals. +gui.appliedenergistics2.inWorldPurificationCertus=Drop a Certus Quartz Seed made from Certus Quartz Dust and Sand into a puddle of water; to make the process faster add Crystal Growth Accelerators. +gui.appliedenergistics2.inWorldPurificationNether=Drop a Nether Quartz Seed made from Nether Quartz Dust and Sand into a puddle of water; to make the process faster add Crystal Growth Accelerators. +gui.appliedenergistics2.inWorldPurificationFluix=Drop a Fluix Seed made from Fluix Dust and Sand into a puddle of water; to make the process faster add Crystal Growth Accelerators. +gui.appliedenergistics2.inWorldSingularity=To create drop 1 Singularity and 1 Ender Dust and cause an explosion within range of the items. +gui.appliedenergistics2.ChargedQuartz=Charged Certus Quartz is crafted by inserting an uncharged Certus Quartz Crystal into the Charger, and powering it. +gui.appliedenergistics2.ChargedQuartzFind=Charged Certus Quartz can be found in world semi rarely, it appears similar to normal Certus Quartz, except it sparkles. +gui.appliedenergistics2.OfSecondOutput=% Chance for second output. +gui.appliedenergistics2.NoSecondOutput=No Secondary Output +gui.appliedenergistics2.SelectAmount=Select Amount +gui.appliedenergistics2.CopyMode=Copy Mode +gui.appliedenergistics2.CopyModeDesc=Controls if the contents of the configuration pane are cleared when you remove the cell. +gui.appliedenergistics2.Next=Next +gui.appliedenergistics2.Lumen=Lumen +gui.appliedenergistics2.Empty=Empty +gui.appliedenergistics2.Stored=Stored +gui.appliedenergistics2.Cancel=Cancel +gui.appliedenergistics2.Crafting=Crafting +gui.appliedenergistics2.Scheduled=Scheduled +gui.appliedenergistics2.CraftingStatus=Crafting Status +gui.appliedenergistics2.FromStorage=Available +gui.appliedenergistics2.ToCraft=To Craft +gui.appliedenergistics2.CraftingPlan=Crafting Plan +gui.appliedenergistics2.Automatic=Automatic +gui.appliedenergistics2.Start=Start +gui.appliedenergistics2.Missing=Missing +gui.appliedenergistics2.Bytes=Storage +gui.appliedenergistics2.Simulation=Simulation +gui.appliedenergistics2.CoProcessors=Co Processors +gui.appliedenergistics2.CraftingCPU=Crafting CPU +gui.appliedenergistics2.NoCraftingCPUs=No Crafting CPUs are Available +gui.appliedenergistics2.CalculatingWait=Calculating Please Wait... +gui.appliedenergistics2.Clean=Clean +gui.appliedenergistics2.InvalidPattern=Invalid Pattern +gui.appliedenergistics2.Range=Range +gui.appliedenergistics2.TransparentFacades=Transparent Facades +gui.appliedenergistics2.TransparentFacadesHint=Controls visibility of facades while the network tool is on your toolbar. +gui.appliedenergistics2.CPUs=CPU +gui.appliedenergistics2.NoCraftingJobs=No Crafting Job Active +gui.appliedenergistics2.FacadeCrafting=Facade Crafting +gui.appliedenergistics2.inWorldCraftingPresses=Crafting Presses are found in the center of meteorites which can be found in around the world, they can be located by using a meteorite compass. +gui.appliedenergistics2.Included=Included +gui.appliedenergistics2.Excluded=Excluded +gui.appliedenergistics2.Partitioned=Partitioned +gui.appliedenergistics2.Precise=Precise +gui.appliedenergistics2.Fuzzy=Fuzzy + +gui.tooltips.appliedenergistics2.Stash=Store Items +gui.tooltips.appliedenergistics2.StashDesc=Return items on the crafting grid to network storage. +gui.tooltips.appliedenergistics2.Substitutions=Ore-Dict Substitutions +gui.tooltips.appliedenergistics2.SubstitutionsDesc=Edit substitution options for input components. +gui.tooltips.appliedenergistics2.SubstitutionsOn=Substitutions Enabled +gui.tooltips.appliedenergistics2.SubstitutionsOff=Substitutions Disabled +gui.tooltips.appliedenergistics2.Encode=Encode Pattern +gui.tooltips.appliedenergistics2.EncodeDescription=Write the entered pattern to the current encoded pattern, or to available blank pattern. +gui.tooltips.appliedenergistics2.FuzzyMode=Fuzzy Comparison +gui.tooltips.appliedenergistics2.FZPercent_25=Split Damage at 25% +gui.tooltips.appliedenergistics2.FZPercent_50=Split Damage at 50% +gui.tooltips.appliedenergistics2.FZPercent_75=Split Damage at 75% +gui.tooltips.appliedenergistics2.FZPercent_99=Split Damage at 99% +gui.tooltips.appliedenergistics2.SortOrder=Sort Order +gui.tooltips.appliedenergistics2.SortBy=Sort By +gui.tooltips.appliedenergistics2.FZIgnoreAll=Match Any +gui.tooltips.appliedenergistics2.TransferDirection=Transfer Direction +gui.tooltips.appliedenergistics2.TransferToNetwork=Transfer data to Network +gui.tooltips.appliedenergistics2.TransferToStorageCell=Transfer data to Storage Cell +gui.tooltips.appliedenergistics2.ToggleSortDirection=Toggle sorting direction +gui.tooltips.appliedenergistics2.StoredItems=Stored Items +gui.tooltips.appliedenergistics2.StoredCraftable=Stored / Craftable +gui.tooltips.appliedenergistics2.View=View +gui.tooltips.appliedenergistics2.RedstoneMode=Redstone Mode +gui.tooltips.appliedenergistics2.OperationMode=Operation Mode +gui.tooltips.appliedenergistics2.NumberOfItems=Number of items +gui.tooltips.appliedenergistics2.ItemName=Item name +gui.tooltips.appliedenergistics2.PowerUnits=Power Units +gui.tooltips.appliedenergistics2.IOMode=Input/Output Mode +gui.tooltips.appliedenergistics2.CondenserOutput=ME Condenser - Output +gui.tooltips.appliedenergistics2.PartitionStorage=Partition Storage +gui.tooltips.appliedenergistics2.Clear=Clear +gui.tooltips.appliedenergistics2.TrashController=Deletion via Shift / Space Clicking. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=Blocking Mode +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=Crafting Mode +gui.tooltips.appliedenergistics2.Trash=Destroy Items +gui.tooltips.appliedenergistics2.MatterBalls=Condense Into Matter Balls\n%s per item +gui.tooltips.appliedenergistics2.Singularity=Condense Into Singularities\n%s per item +gui.tooltips.appliedenergistics2.Read=Extract Only +gui.tooltips.appliedenergistics2.Write=Insert Only +gui.tooltips.appliedenergistics2.ReadWrite=Bi-Directional +gui.tooltips.appliedenergistics2.AlwaysActive=Always active +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=Active without signal +gui.tooltips.appliedenergistics2.ActiveWithSignal=Active with signal +gui.tooltips.appliedenergistics2.ActiveOnPulse=Activate once per pulse +gui.tooltips.appliedenergistics2.EmitLevelsBelow=Emit when levels are below or equal to limit. +gui.tooltips.appliedenergistics2.EmitLevelAbove=Emit when levels are above or equal to limit. +gui.tooltips.appliedenergistics2.SearchMode_Auto=Auto Search +gui.tooltips.appliedenergistics2.SearchMode_Standard=Standard Search +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=NEI Synchronized Auto +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=NEI Synchronized Standard +gui.tooltips.appliedenergistics2.SearchMode=Search Box Mode +gui.tooltips.appliedenergistics2.PartitionStorageHint=Configures Partition based on currently stored items. +gui.tooltips.appliedenergistics2.ClearSettings=Clear Config/Settings +gui.tooltips.appliedenergistics2.Craftable=Craftable +gui.tooltips.appliedenergistics2.MoveWhenEmpty=Move to output when empty. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=Move to output when work is done. +gui.tooltips.appliedenergistics2.MoveWhenFull=Move to output when full. +gui.tooltips.appliedenergistics2.Disabled=Disabled +gui.tooltips.appliedenergistics2.Enable=Enabled +gui.tooltips.appliedenergistics2.Blocking=Do not push crafting items if inventory contains items. +gui.tooltips.appliedenergistics2.NonBlocking=Ignore the contents of the target inventory. +gui.tooltips.appliedenergistics2.Craft=Crafting Behavior +gui.tooltips.appliedenergistics2.CraftOnly=Do not use stocked items, only craft items while exporting. +gui.tooltips.appliedenergistics2.CraftEither=Use stocked items, or craft items while exporting. +gui.tooltips.appliedenergistics2.LevelType=Level Type +gui.tooltips.appliedenergistics2.LevelType_Energy=Energy +gui.tooltips.appliedenergistics2.LevelType_Item=Item +gui.tooltips.appliedenergistics2.InventoryTweaks=Inventory Tweaks +gui.tooltips.appliedenergistics2.Mod=Mod +gui.tooltips.appliedenergistics2.TerminalStyle=Terminal Style +gui.tooltips.appliedenergistics2.TerminalStyle_Full=Full Screen Terminal +gui.tooltips.appliedenergistics2.TerminalStyle_Tall=Tall Centered Terminal +gui.tooltips.appliedenergistics2.TerminalStyle_Small=Small Centered Terminal +gui.tooltips.appliedenergistics2.DoesntDespawn=This item won't de-spawn. +gui.tooltips.appliedenergistics2.EmitterMode=Crafting Emitter Mode +gui.tooltips.appliedenergistics2.CraftViaRedstone=Emit Redstone to craft item. +gui.tooltips.appliedenergistics2.EmitWhenCrafting=Emit Redstone while item is crafting. +gui.tooltips.appliedenergistics2.ReportInaccessibleItems=Report Inaccessible Items +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsYes=Yes: Items that cannot be extracted will be visible. +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsNo=No: Only extractable items will be visible. + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=Minecraft Joules +gui.appliedenergistics2.units.ic2=Energy Units +gui.appliedenergistics2.units.mekanism=Joules +gui.appliedenergistics2.units.rotarycraft=Watts +gui.appliedenergistics2.units.thermalexpansion=Redstone Flux + +gui.appliedenergistics2.White=White +gui.appliedenergistics2.Orange=Orange +gui.appliedenergistics2.Magenta=Magenta +gui.appliedenergistics2.LightBlue=Light Blue +gui.appliedenergistics2.Yellow=Yellow +gui.appliedenergistics2.Lime=Lime +gui.appliedenergistics2.Pink=Pink +gui.appliedenergistics2.Gray=Gray +gui.appliedenergistics2.LightGray=Light Gray +gui.appliedenergistics2.Cyan=Cyan +gui.appliedenergistics2.Purple=Purple +gui.appliedenergistics2.Blue=Blue +gui.appliedenergistics2.Brown=Brown +gui.appliedenergistics2.Green=Green +gui.appliedenergistics2.Red=Red +gui.appliedenergistics2.Black=Black +gui.appliedenergistics2.Fluix=Fluix + +waila.appliedenergistics2.DeviceOnline=Device Online +waila.appliedenergistics2.DeviceOffline=Device Offline +waila.appliedenergistics2.DeviceMissingChannel=Device Missing Channel +waila.appliedenergistics2.Locked=Locked +waila.appliedenergistics2.Unlocked=Unlocked +waila.appliedenergistics2.Showing=Showing +waila.appliedenergistics2.Contains=Contains +waila.appliedenergistics2.Channels=Channels + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=1k ME Storage Cell +item.appliedenergistics2.ItemBasicStorageCell.4k.name=4k ME Storage Cell +item.appliedenergistics2.ItemBasicStorageCell.16k.name=16k ME Storage Cell +item.appliedenergistics2.ItemBasicStorageCell.64k.name=64k ME Storage Cell +item.appliedenergistics2.ItemCreativeStorageCell.name=Creative ME Storage Cell +item.appliedenergistics2.ItemEncodedPattern.name=Encoded Pattern +item.appliedenergistics2.ItemViewCell.name=View Cell +item.appliedenergistics2.ItemFacade.name=Cable Facade + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=Certus Quartz Seed +item.appliedenergistics2.ItemCrystalSeed.Nether.name=Nether Quartz Seed +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=Fluix Seed +item.appliedenergistics2.ItemMaterial.InvalidType.name=This Item Is Disabled. +item.appliedenergistics2.ItemMaterial.AdvCard.name=Advanced Card +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=Annihilation Core +item.appliedenergistics2.ItemMaterial.BasicCard.name=Basic Card +item.appliedenergistics2.ItemMaterial.BlankPattern.name=Blank Pattern +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=Calculation Processor +item.appliedenergistics2.ItemMaterial.CardCapacity.name=Capacity Card +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=Fuzzy Card +item.appliedenergistics2.ItemMaterial.CardInverter.name=Inverter Card +item.appliedenergistics2.ItemMaterial.CardRedstone.name=Redstone Card +item.appliedenergistics2.ItemMaterial.CardSpeed.name=Acceleration Card +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=2³ Spatial Component +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=16³ Spatial Component +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=128³ Spatial Component +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=1k ME Storage Component +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=4k ME Storage Component +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=16k ME Storage Component +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=64k ME Storage Component +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=Certus Quartz Crystal +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=Charged Certus Quartz Crystal +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=Certus Quartz Dust +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=ME Storage Housing +item.appliedenergistics2.ItemMaterial.EnderDust.name=Ender Dust +item.appliedenergistics2.ItemMaterial.EngProcessor.name=Engineering Processor +item.appliedenergistics2.ItemMaterial.Flour.name=Flour +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=Fluix Crystal +item.appliedenergistics2.ItemMaterial.FluixDust.name=Fluix Dust +item.appliedenergistics2.ItemMaterial.FluixPearl.name=Fluix Pearl +item.appliedenergistics2.ItemMaterial.FormationCore.name=Formation Core +item.appliedenergistics2.ItemMaterial.GoldDust.name=Gold Dust +item.appliedenergistics2.ItemMaterial.IronDust.name=Iron Dust +item.appliedenergistics2.ItemMaterial.IronNugget.name=Iron Nugget +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=Logic Processor +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=Unfinished Logic Processor +item.appliedenergistics2.ItemMaterial.MatterBall.name=Matter Ball +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=Nether Quartz Dust +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=Pure Certus Quartz Crystal +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=Pure Fluix Crystal +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=Pure Nether Quartz Crystal +item.appliedenergistics2.ItemMaterial.QESingularity.name=Quantum Entangled Singularity +item.appliedenergistics2.ItemMaterial.Silicon.name=Silicon +item.appliedenergistics2.ItemMaterial.Singularity.name=Singularity +item.appliedenergistics2.ItemMaterial.Wireless.name=Wireless Receiver +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=Wireless Booster +item.appliedenergistics2.ItemMaterial.WoodenGear.name=Wooden Gear +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=Inscriber Engineering Press +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=Inscriber Calculation Press +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=Inscriber Logic Press +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=Printed Engineering Circuit +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=Printed Calculation Circuit +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=Printed Logic Circuit +item.appliedenergistics2.ItemMaterial.SiliconPress.name=Inscriber Silicon Press +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=Printed Silicon +item.appliedenergistics2.ItemMaterial.NamePress.name=Inscriber Name Press +item.appliedenergistics2.ItemMaterial.SkyDust.name=Sky Stone Dust +item.appliedenergistics2.ItemMaterial.CardCrafting.name=Crafting Card + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=ME Annihilation Plane +item.appliedenergistics2.ItemPart.CableAnchor.name=Cable Anchor +item.appliedenergistics2.ItemPart.CableCovered.name=ME Covered Cable +item.appliedenergistics2.ItemPart.CableGlass.name=ME Glass Cable +item.appliedenergistics2.ItemPart.CableSmart.name=ME Smart Cable +item.appliedenergistics2.ItemPart.CableDense.name=ME Dense Cable +item.appliedenergistics2.ItemPart.StorageMonitor.name=ME Storage Monitor +item.appliedenergistics2.ItemPart.ConversionMonitor.name=ME Conversion Monitor +item.appliedenergistics2.ItemPart.CraftingTerminal.name=ME Crafting Terminal +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=Illuminated Panel +item.appliedenergistics2.ItemPart.Monitor.name=Bright Illuminated Panel +item.appliedenergistics2.ItemPart.DarkMonitor.name=Dark Illuminated Panel +item.appliedenergistics2.ItemPart.ExportBus.name=ME Export Bus +item.appliedenergistics2.ItemPart.FormationPlane.name=ME Formation Plane +item.appliedenergistics2.ItemPart.ImportBus.name=ME Import Bus +item.appliedenergistics2.ItemPart.Interface.name=ME Interface +item.appliedenergistics2.ItemPart.LevelEmitter.name=ME Level Emitter +item.appliedenergistics2.ItemPart.P2PTunnel.name=P2P Tunnel +item.appliedenergistics2.ItemPart.PatternTerminal.name=ME Pattern Terminal +item.appliedenergistics2.ItemPart.QuartzFiber.name=Quartz Fiber +item.appliedenergistics2.ItemPart.StorageBus.name=ME Storage Bus +item.appliedenergistics2.ItemPart.Terminal.name=ME Terminal +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=ME Inverted Toggle Bus +item.appliedenergistics2.ItemPart.ToggleBus.name=ME Toggle Bus +item.appliedenergistics2.ItemPart.CraftingMonitor.name=ME Crafting Monitor +item.appliedenergistics2.ItemPart.InterfaceTerminal.name=ME Interface Terminal + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=128³ Spatial Storage Cell +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=16³ Spatial Storage Cell +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=2³ Spatial Storage Cell + +item.appliedenergistics2.ToolCertusQuartzAxe.name=Certus Quartz Axe +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=Certus Quartz Cutting Knife +item.appliedenergistics2.ToolCertusQuartzHoe.name=Certus Quartz Hoe +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=Certus Quartz Pickaxe +item.appliedenergistics2.ToolCertusQuartzSpade.name=Certus Quartz Shovel +item.appliedenergistics2.ToolCertusQuartzSword.name=Certus Quartz Sword +item.appliedenergistics2.ToolCertusQuartzWrench.name=Certus Quartz Wrench + +item.appliedenergistics2.ToolNetherQuartzAxe.name=Nether Quartz Axe +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=Nether Quartz Cutting Knife +item.appliedenergistics2.ToolNetherQuartzHoe.name=Nether Quartz Hoe +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=Nether Quartz Pickaxe +item.appliedenergistics2.ToolNetherQuartzSpade.name=Nether Quartz Shovel +item.appliedenergistics2.ToolNetherQuartzSword.name=Nether Quartz Sword +item.appliedenergistics2.ToolNetherQuartzWrench.name=Nether Quartz Wrench + +item.appliedenergistics2.ItemPaintBall.name=Paint Ball +item.appliedenergistics2.ToolPortableCell.name=Portable Cell +item.appliedenergistics2.ToolNetworkTool.name=Network Tool +item.appliedenergistics2.ToolChargedStaff.name=Charged Staff +item.appliedenergistics2.ToolEntropyManipulator.name=Entropy Manipulator +item.appliedenergistics2.ToolMassCannon.name=Matter Cannon +item.appliedenergistics2.ToolMemoryCard.name=Memory Card +item.appliedenergistics2.ToolColorApplicator.name=Color Applicator +item.appliedenergistics2.ToolWirelessTerminal.name=Wireless Terminal +item.appliedenergistics2.ToolBiometricCard.name=Biometric Card + +item.appliedenergistics2.ToolDebugCard.name=Dev.DebugCard +item.appliedenergistics2.ToolReplicatorCard.name=Dev.ReplicatorCard + +commands.ae2.usage=Commands provided by Applied Energistics 2 - use /ae2 list for a list, and /ae2 help _____ for help with a command. +commands.ae2.permissions=You do not have adequate permissions to run this command. +commands.ae2.ChunkLogger=Toggles Chunk Loading and unloading to the server log. ( OP ) +commands.ae2.ChunkLoggerOn=Chunk Logging is now on +commands.ae2.ChunkLoggerOff=Chunk Logging is now off +commands.ae2.Supporters=Displays a list of AE2 Supporters + +achievement.ae2.Compass=Meteorite Hunter +achievement.ae2.Compass.desc=Craft a Meteorite Compass +achievement.ae2.Presses=Unknown Technology +achievement.ae2.Presses.desc=Find a Processor Press +achievement.ae2.SpatialIO=Spatial Coordination +achievement.ae2.SpatialIO.desc=Craft a Spatial IO Port +achievement.ae2.SpatialIOExplorer=To boldly go +achievement.ae2.SpatialIOExplorer.desc=Get stored in a spatial storage cell +achievement.ae2.StorageCell=Better Then Chests +achievement.ae2.StorageCell.desc=Craft a Storage Cell +achievement.ae2.IOPort=Storage Cell Shuffle +achievement.ae2.IOPort.desc=Craft a IO Port +achievement.ae2.CraftingTerminal=A (Much) Bigger Table +achievement.ae2.CraftingTerminal.desc=Craft a Crafting Terminal +achievement.ae2.PatternTerminal=Crafting Maestro +achievement.ae2.PatternTerminal.desc=Craft a Pattern Terminal +achievement.ae2.ChargedQuartz=Shocking +achievement.ae2.ChargedQuartz.desc=Find Charged Quartz +achievement.ae2.Fluix=Unnatural +achievement.ae2.Fluix.desc=Create Fluix Crystals +achievement.ae2.Charger=Fluix Production +achievement.ae2.Charger.desc=Craft a Charger +achievement.ae2.CrystalGrowthAccelerator=Accelerator is an understatement +achievement.ae2.CrystalGrowthAccelerator.desc=Craft a Crystal Growth Accelerator +achievement.ae2.GlassCable=Fluix Energy Connection +achievement.ae2.GlassCable.desc=Craft ME Glass Cable +achievement.ae2.Networking1=Network Apprentice +achievement.ae2.Networking1.desc=Reach 8 channel using devices on a network. +achievement.ae2.Controller=Networking Switchboard +achievement.ae2.Controller.desc=Craft a Controller +achievement.ae2.Networking2=Network Engineer +achievement.ae2.Networking2.desc=Reach 128 channel using devices on a network. +achievement.ae2.Networking3=Network Administrator +achievement.ae2.Networking3.desc=Reach 2048 channel using devices on a network. +achievement.ae2.P2P=Point to Point Networking +achievement.ae2.P2P.desc=Craft a P2P Tunnel +achievement.ae2.Recursive=Recursive Networking +achievement.ae2.Recursive.desc=Place a Interface on a storage Bus. +achievement.ae2.CraftingCPU=Next Gen Crafting +achievement.ae2.CraftingCPU.desc=Craft a Crafting Unit +achievement.ae2.Facade=Network Aesthetics +achievement.ae2.Facade.desc=Craft a Cable Facade +achievement.ae2.NetworkTool=Network Diagnostics +achievement.ae2.NetworkTool.desc=Craft a Network Tool +achievement.ae2.PortableCell=Storage Nomad +achievement.ae2.PortableCell.desc=Craft a Portable Cell +achievement.ae2.StorageBus=Limitless Potential +achievement.ae2.StorageBus.desc=Craft a Storage Bus +achievement.ae2.QNB=Quantum Tunneling +achievement.ae2.QNB.desc=Craft a Quantum Link + +stat.ae2.ItemsInserted=Items added to ME Storage +stat.ae2.ItemsExtracted=Items extracted from ME Storage +stat.ae2.TurnedCranks=Turned Cranks \ No newline at end of file diff --git a/src/main/resources/assets/appliedenergistics2/lang/es_ES.lang b/src/main/resources/assets/appliedenergistics2/lang/es_ES.lang new file mode 100644 index 00000000..2d02fcc6 --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/es_ES.lang @@ -0,0 +1,427 @@ +tile.appliedenergistics2.BlockCableBus.name=AE2 Cable y/o Bus +tile.appliedenergistics2.BlockCellWorkbench.name=Mesa de Trabajo de Células +tile.appliedenergistics2.BlockCharger.name=Cargador +tile.appliedenergistics2.BlockChest.name=ME Cofre +tile.appliedenergistics2.BlockCondenser.name=Condensador de Materia +tile.appliedenergistics2.BlockController.name=ME Controlador +tile.appliedenergistics2.BlockCrank.name=Manivela de Madera +tile.appliedenergistics2.BlockCreativeEnergyCell.name=Celda de Energía Creativa +tile.appliedenergistics2.BlockDenseEnergyCell.name=Celda de Energía Densa +tile.appliedenergistics2.BlockEnergyCell.name=Celda de Energía +tile.appliedenergistics2.BlockDrive.name=ME Rack Discos +tile.appliedenergistics2.BlockEnergyAcceptor.name=Conector de Energía +tile.appliedenergistics2.BlockGrinder.name=Molino de Cuarzo +tile.appliedenergistics2.BlockMatrixFrame.name=Marco Matrix +tile.appliedenergistics2.BlockIOPort.name=ME Puerto de E/S +tile.appliedenergistics2.BlockInscriber.name=Prensa +tile.appliedenergistics2.BlockInterface.name=ME Interfaz +tile.appliedenergistics2.BlockQuantumLinkChamber.name=ME Cámara de Anillo Cuántico +tile.appliedenergistics2.BlockQuantumRing.name=ME Anillo Cuántico +tile.appliedenergistics2.BlockFluix.name=Bloque de Fluix +tile.appliedenergistics2.BlockQuartz.name=Bloque de Cuarzo Certus +tile.appliedenergistics2.BlockQuartzChiseled.name=Bloque de Cuarzo Certus Cincelado +tile.appliedenergistics2.BlockQuartzGlass.name=Cristal de Cuarzo +tile.appliedenergistics2.BlockQuartzLamp.name=Cristal Vibrante de Cuarzo +tile.appliedenergistics2.BlockQuartzPillar.name=Pilar de Cuarzo Certus +tile.appliedenergistics2.BlockQuartzTorch.name=Antorcha de Cuarzo Certus +tile.appliedenergistics2.BlockLightDetector.name=Detector de Luz +tile.appliedenergistics2.BlockSpatialIOPort.name=Puerto E/S Espacial +tile.appliedenergistics2.BlockSpatialPylon.name=Pílon Espacial +tile.appliedenergistics2.BlockTinyTNT.name=Dinamita Pequeña +tile.appliedenergistics2.BlockVibrationChamber.name=Cámara de Vibración +tile.appliedenergistics2.BlockWireless.name=ME Punto de Acceso Inalámbrico +tile.appliedenergistics2.OreQuartz.name=Mineral de Cuarzo Certus +tile.appliedenergistics2.OreQuartzCharged.name=Mineral de Cuarzo Certus Cargado +tile.appliedenergistics2.BlockSecurity.name=ME Terminal de Seguridad +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=Acelerador de Crecimiento de Cristales +tile.appliedenergistics2.BlockSkyStone.name=Piedra del Cielo +tile.appliedenergistics2.BlockSkyStone.Block.name=Bloque de Piedra del Cielo +tile.appliedenergistics2.BlockSkyStone.Brick.name=Ladrillo Piedra del Cielo +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=Ladrillo Pequeño Piedra del Cielo +tile.appliedenergistics2.BlockSkyChest.name=Cofre de Piedra del Cielo +tile.appliedenergistics2.BlockSkyChest.Block.name=Cofre de Bloque Piedra del Cielo +tile.appliedenergistics2.BlockSkyCompass.name=Brújula de Meteoritos +tile.appliedenergistics2.BlockCraftingMonitor.name=Monitor de Trabajo +tile.appliedenergistics2.BlockCraftingStorage.name=1k Almacén de Trabajo +tile.appliedenergistics2.BlockCraftingStorage4k.name=4k Almacén de Trabajo +tile.appliedenergistics2.BlockCraftingStorage16k.name=16k Almacén de Trabajo +tile.appliedenergistics2.BlockCraftingStorage64k.name=64k Almacén de Trabajo +tile.appliedenergistics2.BlockCraftingAccelerator.name=Unidad de Coprocesador +tile.appliedenergistics2.BlockCraftingUnit.name=Unidad de Creación +tile.appliedenergistics2.BlockMolecularAssembler.name=Ensambladora Molecular + +chat.appliedenergistics2.ChestCannotReadStorageCell=ME Cofre no puede leer la unidad de almacenamiento. +chat.appliedenergistics2.SettingCleared=Configuración Limpiada. +chat.appliedenergistics2.OutOfRange=Fuera de Rango. +chat.appliedenergistics2.InvalidMachine=Máquina Inválida. +chat.appliedenergistics2.LoadedSettings=Configuración cargada con éxito. +chat.appliedenergistics2.DeviceNotPowered=El dispositivo está bajo de energía. +chat.appliedenergistics2.MachineNotPowered=La máquina no está encendida. +chat.appliedenergistics2.CommunicationError=Error de comunicación con la red. +chat.appliedenergistics2.SavedSettings=Configuración cambiada con éxito. +chat.appliedenergistics2.AmmoDepleted=Sin munición. +chat.appliedenergistics2.isNowLocked=El Monitor esta bloqueado. +chat.appliedenergistics2.isNowUnlocked=El monitor esta desbloqueado. + +itemGroup.appliedenergistics2=Applied Energistics 2 +itemGroup.appliedenergistics2.facades=Applied Energistics 2 - Fachadas + +gui.appliedenergistics2.CraftingTerminal=Terminal de Trabajo +gui.appliedenergistics2.METunnel=ME +gui.appliedenergistics2.ItemTunnel=Objetos +gui.appliedenergistics2.FluidTunnel=Fluidos +gui.appliedenergistics2.RedstoneTunnel=Redstone +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU +gui.appliedenergistics2.RFTunnel=RF +gui.appliedenergistics2.LightTunnel=Luz + +gui.appliedenergistics2.security.extract.name=Retirar +gui.appliedenergistics2.security.inject.name=Depositar +gui.appliedenergistics2.security.craft.name=Crear +gui.appliedenergistics2.security.build.name=Construir +gui.appliedenergistics2.security.security.name=Seguridad + +gui.appliedenergistics2.security.extract.tip=El usuario puede sacar objetos de la red. +gui.appliedenergistics2.security.inject.tip=El usuario puede guardar objetos en la red. +gui.appliedenergistics2.security.craft.tip=El usuario puede iniciar nuevos trabajos de creación. +gui.appliedenergistics2.security.build.tip=El usuario puedo modificar la estructura física de la red y hacer cambios en la configuración. +gui.appliedenergistics2.security.security.tip=El usario puede acceder y modificar la configuración de seguridad de la red. + +gui.appliedenergistics2.Efficiency=Eficiencia +gui.appliedenergistics2.RequiredPower=Poder Requerido +gui.appliedenergistics2.StoredPower=Poder Almacenado +gui.appliedenergistics2.MaxPower=Poder Máximo +gui.appliedenergistics2.QuartzCuttingKnife=Cuchillo de Corte de Cuarzo +gui.appliedenergistics2.Inscriber=Prensa +gui.appliedenergistics2.Wireless=Punto de Acceso Inalámbrico +gui.appliedenergistics2.WirelessTerminal=Terminal Inalámbrica +gui.appliedenergistics2.NoPermissions=Sin Permisos Selecionados +gui.appliedenergistics2.SecurityCardEditor=Editor de Tarjetas Biometricas +gui.appliedenergistics2.Encoded=Codificado +gui.appliedenergistics2.Priority=Prioridad +gui.appliedenergistics2.StorageBus=Bus de Almacenamiento +gui.appliedenergistics2.EnergyDrain=Drenaje Pasivo +gui.appliedenergistics2.Installed=Instalado +gui.appliedenergistics2.NetworkTool=Herramienta de Red +gui.appliedenergistics2.PowerUsageRate=Energía Usada +gui.appliedenergistics2.PowerInputRate=Generación de Energía +gui.appliedenergistics2.PortableCell=Unidad Portatil +gui.appliedenergistics2.Security=Terminal de Seguridad +gui.appliedenergistics2.CellWorkbench=Mesa de Trabajo de Células +gui.appliedenergistics2.QuantumLinkChamber=Cámara de Enlace Cuántico +gui.appliedenergistics2.IOPort=ME Puerto E/S +gui.appliedenergistics2.Chest=ME Cofre +gui.appliedenergistics2.Condenser=Condensador de Materia +gui.appliedenergistics2.Config=Configuración +gui.appliedenergistics2.Drive=ME Rack Discos +gui.appliedenergistics2.ExportBus=ME Exportación Bus +gui.appliedenergistics2.GrindStone=Molino +gui.appliedenergistics2.ImportBus=ME Importación Bus +gui.appliedenergistics2.Interface=ME Interfaz +gui.appliedenergistics2.LevelEmitter=ME Emisor +gui.appliedenergistics2.Of=de +gui.appliedenergistics2.Patterns=Patrones +gui.appliedenergistics2.SpatialIOPort=Puerto Espacial E/S +gui.appliedenergistics2.StoredEnergy=Energía Almacenada +gui.appliedenergistics2.StoredItems=Objetos Almacenados +gui.appliedenergistics2.Terminal=Terminal +gui.appliedenergistics2.InterfaceTerminal=Terminal de Interfaces +gui.appliedenergistics2.InterfaceTerminalHint=Mostrar o Ocultar en la Terminal de Interfaces. +gui.appliedenergistics2.FormationPlane=Panel de Formación +gui.appliedenergistics2.VibrationChamber=Cámara de Vibración +gui.appliedenergistics2.NetworkDetails=Detalles de la Red +gui.appliedenergistics2.StorageCells=ME Célula de Almacenamiento +gui.appliedenergistics2.IOBuses=ME Importar/Exportar Bus +gui.appliedenergistics2.Stores=Guardados +gui.appliedenergistics2.BytesUsed=Bytes Usados +gui.appliedenergistics2.Types=Tipos +gui.appliedenergistics2.Blank=Blanco +gui.appliedenergistics2.Unlinked=Sin Vincular +gui.appliedenergistics2.Linked=Vinculado +gui.appliedenergistics2.StoredSize=Tamaño Almacenado +gui.appliedenergistics2.SkyChest=Cofre de Piedra del Cielo +gui.appliedenergistics2.PatternTerminal=Terminal de Patrones +gui.appliedenergistics2.CraftingPattern=Creando Patrón +gui.appliedenergistics2.MolecularAssembler=Ensambladora Molecular +gui.appliedenergistics2.ProcessingPattern=Procesando Patrón +gui.appliedenergistics2.Crafts=Construir +gui.appliedenergistics2.And=y +gui.appliedenergistics2.Creates=Crear +gui.appliedenergistics2.With=con +gui.appliedenergistics2.InWorldCrafting=AE2 Creando un Mundo +gui.appliedenergistics2.inWorldFluix=Suelta 1 Cuarzo Certus Cargado + 1 Cuarzo + 1 Restone dentro de un bloque con agua y espera un momento. +gui.appliedenergistics2.inWorldPurificationCertus=Suelta una semilla de Cuarzo Certus hecha con Polvo de Cuarzo Certus y Arena dentro de un bloque con agua; para hacer el proceso más rápido puedes poner un Acelerador de crecimiento de cristales. +gui.appliedenergistics2.inWorldPurificationNether=Suelta una semilla de Cuarzo hecha con Polvo de Cuarzo y Arena dentro de un bloque con agua; para hacer el proceso más rápido puedes poner un Acelerador de crecimiento de cristales. +gui.appliedenergistics2.inWorldPurificationFluix=Suelta una semilla de Fluix hecha con Polvo de Fluix y Arena dentro de un bloque con agua; para hacer el proceso más rápido puedes poner un Acelerador de crecimiento de cristales. +gui.appliedenergistics2.inWorldSingularity=Para crear suelta 1 Singularidad y 1 Polvo de Ender y causa una explosión dentro del rango de los objetos. +gui.appliedenergistics2.ChargedQuartz=Cuarzo Certus Cargado se hace insertenando un Cristal de Cuarzo Certus dentro del Cargador y dandole energía. +gui.appliedenergistics2.OfSecondOutput=% probabilidad de salida secundaria. +gui.appliedenergistics2.NoSecondOutput=Sin Salida Secundaria +gui.appliedenergistics2.SelectAmount=Selecionar Cantidad +gui.appliedenergistics2.CopyMode=Modo Copiar +gui.appliedenergistics2.CopyModeDesc=Controla si el contenido del panel de configuración se borra cuando se quita la célula. +gui.appliedenergistics2.Next=Sig. +gui.appliedenergistics2.Lumen=Lumen +gui.appliedenergistics2.Empty=Vacío +gui.appliedenergistics2.Stored=Almacenado +gui.appliedenergistics2.Cancel=Cancelar +gui.appliedenergistics2.Crafting=Creando +gui.appliedenergistics2.Scheduled=Programado +gui.appliedenergistics2.CraftingStatus=Estado de Creación +gui.appliedenergistics2.FromStorage=Disponible +gui.appliedenergistics2.ToCraft=Para Crear +gui.appliedenergistics2.CraftingPlan=Plan de Creación +gui.appliedenergistics2.Automatic=Automático +gui.appliedenergistics2.Start=Iniciar +gui.appliedenergistics2.Missing=Perdido +gui.appliedenergistics2.Bytes=Almacen +gui.appliedenergistics2.Simulation=Simulación +gui.appliedenergistics2.CoProcessors=Coprocesadores +gui.appliedenergistics2.CraftingCPU=CPU de Creación +gui.appliedenergistics2.NoCraftingCPUs=No hay CPU de creación disponbiles +gui.appliedenergistics2.CalculatingWait=Calculando, espere por favor... +gui.appliedenergistics2.Clean=Limpio +gui.appliedenergistics2.InvalidPattern=Patrón Invalido +gui.appliedenergistics2.Range=Alcance +gui.appliedenergistics2.TransparentFacades=Fachadas Transparentes +gui.appliedenergistics2.TransparentFacadesHint=Controla la visibilidad de las fachadas mientras este la herramienta de red en la barra de controles. +gui.appliedenergistics2.CPUs=CPU +gui.appliedenergistics2.NoCraftingJobs=No hay Trabajos Activos + +gui.tooltips.appliedenergistics2.Stash=Objetos Almacenados +gui.tooltips.appliedenergistics2.StashDesc=Devolver objetos al almacenamiento. +gui.tooltips.appliedenergistics2.Substitutions=Sustitución Diccionario-Ore +gui.tooltips.appliedenergistics2.SubstitutionsDesc=Editar las opciones de sustitución para los componentes de entrada. +gui.tooltips.appliedenergistics2.SubstitutionsOn=Sustitución Activada +gui.tooltips.appliedenergistics2.SubstitutionsOff=Sustitución Desactivada +gui.tooltips.appliedenergistics2.Encode=Patrón Codificado +gui.tooltips.appliedenergistics2.EncodeDescription=Codificar la receta en el patrón actual, o en un patrón en blanco disponible. +gui.tooltips.appliedenergistics2.FuzzyMode=Comporación Borrosa +gui.tooltips.appliedenergistics2.FZPercent_25=Separar daño al 25% +gui.tooltips.appliedenergistics2.FZPercent_50=Separar daño al 50% +gui.tooltips.appliedenergistics2.FZPercent_75=Separar daño al 75% +gui.tooltips.appliedenergistics2.FZPercent_99=Separar daño al 99% +gui.tooltips.appliedenergistics2.SortOrder=Orden de Ordenación +gui.tooltips.appliedenergistics2.SortBy=Ordenado por +gui.tooltips.appliedenergistics2.FZIgnoreAll=Todas las coincidencias +gui.tooltips.appliedenergistics2.TransferDirection=Dirección de transferncia +gui.tooltips.appliedenergistics2.TransferToNetwork=Transferir datos a la red +gui.tooltips.appliedenergistics2.TransferToStorageCell=Transferir datos a la unidad de almacenamiento +gui.tooltips.appliedenergistics2.ToggleSortDirection=Cambiar dirección del orden +gui.tooltips.appliedenergistics2.StoredItems=Objetos Almacenados +gui.tooltips.appliedenergistics2.StoredCraftable=Almacenado / Crear +gui.tooltips.appliedenergistics2.View=Vista +gui.tooltips.appliedenergistics2.RedstoneMode=Modo de Redstone +gui.tooltips.appliedenergistics2.OperationMode=Modo de Operación +gui.tooltips.appliedenergistics2.NumberOfItems=Número de Objetos +gui.tooltips.appliedenergistics2.ItemName=Nombre del Objeto +gui.tooltips.appliedenergistics2.PowerUnits=Unidad de Energía +gui.tooltips.appliedenergistics2.IOMode=Modo Entrada/Salida +gui.tooltips.appliedenergistics2.CondenserOutput=ME Condensador - Salida +gui.tooltips.appliedenergistics2.PartitionStorage=Partición de Almacenamiento +gui.tooltips.appliedenergistics2.Clear=Limpiar +gui.tooltips.appliedenergistics2.TrashController=Borrar via May / Espacio Click. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=Modo Bloquear +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=Modo Crear +gui.tooltips.appliedenergistics2.Trash=Destruir Objetos +gui.tooltips.appliedenergistics2.MatterBalls=Condensar en Bolas de Materia\n%s por Objeto +gui.tooltips.appliedenergistics2.Singularity=Condensar en Singularidades\n%s por objeto +gui.tooltips.appliedenergistics2.Read=Solo Extraer +gui.tooltips.appliedenergistics2.Write=Solo Insertar +gui.tooltips.appliedenergistics2.ReadWrite=Bi-Direccional +gui.tooltips.appliedenergistics2.AlwaysActive=Siempre activo +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=Active sin señal +gui.tooltips.appliedenergistics2.ActiveWithSignal=Activo con señal +gui.tooltips.appliedenergistics2.ActiveOnPulse=Activar una vez por pulso +gui.tooltips.appliedenergistics2.EmitLevelsBelow=Emitir cuando el nivel esté por debajo o igual al límite. +gui.tooltips.appliedenergistics2.EmitLevelAbove=Emitir cuando el nivel esté por encima o igual al límite. +gui.tooltips.appliedenergistics2.SearchMode_Auto=Auto Buscar +gui.tooltips.appliedenergistics2.SearchMode_Standard=Búsqueda Estandar +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=NEI Sincronización Automática +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=NEI Sincronización Estandar +gui.tooltips.appliedenergistics2.SearchMode=Modo de Búsqueda +gui.tooltips.appliedenergistics2.PartitionStorageHint=Configurar Partición basado en los objetos almacenados actualmente. +gui.tooltips.appliedenergistics2.ClearSettings=Limpiar Configuración +gui.tooltips.appliedenergistics2.Craftable=Construible +gui.tooltips.appliedenergistics2.MoveWhenEmpty=Mover a la salida cuando esté vacía. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=Mover a la salida cuando el trabajo esté terminado. +gui.tooltips.appliedenergistics2.MoveWhenFull=Mover a la salida cuendo esté llena. +gui.tooltips.appliedenergistics2.Disabled=Desactivado +gui.tooltips.appliedenergistics2.Enable=Activado +gui.tooltips.appliedenergistics2.Blocking=No poner objetos si el inventario contiene objetos. +gui.tooltips.appliedenergistics2.NonBlocking=Ignorar el contenido del inventario objetivo. +gui.tooltips.appliedenergistics2.Craft=Comportamiento de Creación +gui.tooltips.appliedenergistics2.CraftOnly=No usar objetos almacenados, solo crear objetos mientras exporta. +gui.tooltips.appliedenergistics2.CraftEither=Usar objetos almacenados, o crear objetos mientras exporta. +gui.tooltips.appliedenergistics2.LevelType=Tipo de Nivel +gui.tooltips.appliedenergistics2.LevelType_Energy=Energía +gui.tooltips.appliedenergistics2.LevelType_Item=Objetos +gui.tooltips.appliedenergistics2.InventoryTweaks=Ajustes de Inventario +gui.tooltips.appliedenergistics2.TerminalStyle=Estilo de Terminal +gui.tooltips.appliedenergistics2.TerminalStyle_Full=Terminal Pantalla Completa +gui.tooltips.appliedenergistics2.TerminalStyle_Tall=Terminal Centrada Alta +gui.tooltips.appliedenergistics2.TerminalStyle_Small=Terminal Centrada Pequeña + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=Minecraft Joules +gui.appliedenergistics2.units.ic2=Energy Units +gui.appliedenergistics2.units.mekanism=Joules +gui.appliedenergistics2.units.rotarycraft=Watts +gui.appliedenergistics2.units.thermalexpansion=Redstone Flux + +gui.appliedenergistics2.White=Blanco +gui.appliedenergistics2.Orange=Naranja +gui.appliedenergistics2.Magenta=Magenta +gui.appliedenergistics2.LightBlue=Azúl Claro +gui.appliedenergistics2.Yellow=Amarillo +gui.appliedenergistics2.Lime=Lima +gui.appliedenergistics2.Pink=Rosa +gui.appliedenergistics2.Gray=Gris +gui.appliedenergistics2.LightGray=Gris Claro +gui.appliedenergistics2.Cyan=Celeste +gui.appliedenergistics2.Purple=Purpura +gui.appliedenergistics2.Blue=Azúl +gui.appliedenergistics2.Brown=Marrón +gui.appliedenergistics2.Green=Verde +gui.appliedenergistics2.Red=Rojo +gui.appliedenergistics2.Black=Negro +gui.appliedenergistics2.Fluix=Fluix + +waila.appliedenergistics2.DeviceOnline=Dispositivo en Línea +waila.appliedenergistics2.DeviceOffline=Dispositivo Fuera de Línea +waila.appliedenergistics2.DeviceMissingChannel=Dispositivo sin Canal +waila.appliedenergistics2.Locked=Bloqueado +waila.appliedenergistics2.Unlocked=Desbloqueado +waila.appliedenergistics2.Showing=Mostrando +waila.appliedenergistics2.Contains=Contiene +waila.appliedenergistics2.Channels=Canales + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=1k ME Unidad de Almacenamiento +item.appliedenergistics2.ItemBasicStorageCell.4k.name=4k ME Unidad de Almacenamiento +item.appliedenergistics2.ItemBasicStorageCell.16k.name=16k ME Unidad de Almacenamiento +item.appliedenergistics2.ItemBasicStorageCell.64k.name=64k ME Unidad de Almacenamiento +item.appliedenergistics2.ItemCreativeStorageCell.name=Creativo ME Unidad de Almacenamiento +item.appliedenergistics2.ItemEncodedPattern.name=Patrón Codificado +item.appliedenergistics2.ItemViewCell.name=Celda de Visión +item.appliedenergistics2.ItemFacade.name=Fachada de Cable + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=Semilla de Cuarzo Certus +item.appliedenergistics2.ItemCrystalSeed.Nether.name=Semilla de Cuarzo +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=Semilla de Fluix +item.appliedenergistics2.ItemMaterial.AdvCard.name=Tarjeta Avanzada +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=Núcleo de Absorción +item.appliedenergistics2.ItemMaterial.BasicCard.name=Tarjeta Básica +item.appliedenergistics2.ItemMaterial.BlankPattern.name=Patrón en Blanco +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=Procesador de Calculo +item.appliedenergistics2.ItemMaterial.CardCapacity.name=Tarjeta de Capacidad +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=Tarjeta Difusa +item.appliedenergistics2.ItemMaterial.CardInverter.name=Tarjeta Inversora +item.appliedenergistics2.ItemMaterial.CardRedstone.name=Tarjeta de Redstone +item.appliedenergistics2.ItemMaterial.CardSpeed.name=Tarjeta de Aceleración +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=2³ Componente Espacial +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=16³ Componente Espacial +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=128³ Componente Espacial +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=1k ME Componente de Almacenamiento +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=4k ME Componente de Almacenamiento +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=16k ME Componente de Almacenamiento +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=64k ME Componente de Almacenamiento +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=Cristal de Cuarzo Certus +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=Cristal de Cuarzo Certus Cargado +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=Polvo de Cuarzo Certus +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=ME Carcasa de Almacenamiento +item.appliedenergistics2.ItemMaterial.EnderDust.name=Polvo de Ender +item.appliedenergistics2.ItemMaterial.EngProcessor.name=Procesador de Ingeniería +item.appliedenergistics2.ItemMaterial.Flour.name=Harina +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=Cristal de Fluix +item.appliedenergistics2.ItemMaterial.FluixDust.name=Polvo de Fluix +item.appliedenergistics2.ItemMaterial.FluixPearl.name=Perla de Fluix +item.appliedenergistics2.ItemMaterial.FormationCore.name=Núcleo de Formación +item.appliedenergistics2.ItemMaterial.GoldDust.name=Polvo de Oro +item.appliedenergistics2.ItemMaterial.IronDust.name=Polvo de Hierro +item.appliedenergistics2.ItemMaterial.IronNugget.name=Pepita de Hierro +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=Procesador Lógico +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=Procesador Lógico sin Acabar +item.appliedenergistics2.ItemMaterial.MatterBall.name=Bola de Materia +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=Polvo de Cuarzo +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=Cristal de Cuarzo Certus Puro +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=Cristal de Fluix Puro +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=Cristal de Cuarzo Puro +item.appliedenergistics2.ItemMaterial.QESingularity.name=Singularidad Cuantica Enlazada +item.appliedenergistics2.ItemMaterial.Silicon.name=Silicona +item.appliedenergistics2.ItemMaterial.Singularity.name=Singularidad +item.appliedenergistics2.ItemMaterial.Wireless.name=Receptor Inalámbrico +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=Potenciador Inalámbrico +item.appliedenergistics2.ItemMaterial.WoodenGear.name=Engranaje de Madera +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=Prensa de Circuito de Ingeniería +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=Prensa de Circuito de Cálculo +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=Prensa de Circuito Lógico +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=Circuito de Ingeniería Impreso +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=Circuito de Cálculo Impreso +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=Circuito Lógico Impreso +item.appliedenergistics2.ItemMaterial.SiliconPress.name=Prensa de Silicona +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=Silicona Impresa +item.appliedenergistics2.ItemMaterial.NamePress.name=Prensa de Nombres +item.appliedenergistics2.ItemMaterial.SkyDust.name=Polvo de Piedra del Cielo +item.appliedenergistics2.ItemMaterial.CardCrafting.name=Tarjeta de Trabajo + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=ME Panel de Absorción +item.appliedenergistics2.ItemPart.CableAnchor.name=Ancla de Cable +item.appliedenergistics2.ItemPart.CableCovered.name=ME Cable Cubierto +item.appliedenergistics2.ItemPart.CableGlass.name=ME Cable de Cristal +item.appliedenergistics2.ItemPart.CableSmart.name=ME Cable Avanzado +item.appliedenergistics2.ItemPart.CableDense.name=ME Cable Denso +item.appliedenergistics2.ItemPart.StorageMonitor.name=ME Monitor de Almacenamiento +item.appliedenergistics2.ItemPart.ConversionMonitor.name=ME Monitor de Conversión +item.appliedenergistics2.ItemPart.CraftingTerminal.name=ME Terminal de Trabajo +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=Panel Iluminado +item.appliedenergistics2.ItemPart.Monitor.name=Panel Iluminado Claro +item.appliedenergistics2.ItemPart.DarkMonitor.name=Panel Iluminado Oscuro +item.appliedenergistics2.ItemPart.ExportBus.name=ME Bus de Exportación +item.appliedenergistics2.ItemPart.FormationPlane.name=ME Panel de Formación +item.appliedenergistics2.ItemPart.ImportBus.name=ME Bus de Importación +item.appliedenergistics2.ItemPart.Interface.name=ME Interfaz +item.appliedenergistics2.ItemPart.LevelEmitter.name=ME Emisor +item.appliedenergistics2.ItemPart.P2PTunnel.name=Tunel P2P +item.appliedenergistics2.ItemPart.PatternTerminal.name=ME Terminal de Patrones +item.appliedenergistics2.ItemPart.QuartzFiber.name=Fibra de Cuarzo +item.appliedenergistics2.ItemPart.StorageBus.name=ME Bus de Almacenamiento +item.appliedenergistics2.ItemPart.Terminal.name=ME Terminal +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=ME Bus de Cambio Inverso +item.appliedenergistics2.ItemPart.ToggleBus.name=ME Bus de Cambio +item.appliedenergistics2.ItemPart.CraftingMonitor.name=ME Monitor de Trabajo +item.appliedenergistics2.ItemPart.InterfaceTerminal.name=ME Terminal de Interfaces + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=128³ Unidad de Almacenamiento Espacial +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=16³ Unidad de Almacenamiento Espacial +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=2³ Unidad de Almacenamiento Espacial + +item.appliedenergistics2.ToolCertusQuartzAxe.name=Hacha de Cuarzo Certus +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=Cuchillo de Corte de Cuarzo Certus +item.appliedenergistics2.ToolCertusQuartzHoe.name=Azada de Cuarzo Certus +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=Pico de Cuarzo Certus +item.appliedenergistics2.ToolCertusQuartzSpade.name=Pala de Cuarzo Certus +item.appliedenergistics2.ToolCertusQuartzSword.name=Espada de Cuarzo Certus +item.appliedenergistics2.ToolCertusQuartzWrench.name=Llave de Cuarzo Certus + +item.appliedenergistics2.ToolNetherQuartzAxe.name=Hacha de Cuarzo +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=Cuchillo de Corte de Cuarzo +item.appliedenergistics2.ToolNetherQuartzHoe.name=Azada de Cuarzo +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=Pico de Cuarzo +item.appliedenergistics2.ToolNetherQuartzSpade.name=Pala de Cuarzo +item.appliedenergistics2.ToolNetherQuartzSword.name=Espada de Cuarzo +item.appliedenergistics2.ToolNetherQuartzWrench.name=LLave de Cuarzo + +item.appliedenergistics2.ItemPaintBall.name=Bola de Pintura +item.appliedenergistics2.ToolPortableCell.name=Unidad Portatil +item.appliedenergistics2.ToolNetworkTool.name=Herramienta de Red +item.appliedenergistics2.ToolChargedStaff.name=Báculo Cargado +item.appliedenergistics2.ToolEntropyManipulator.name=Manipulador de Entropía +item.appliedenergistics2.ToolMassCannon.name=Cañon de Materia +item.appliedenergistics2.ToolMemoryCard.name=Tarjeta de Memoria +item.appliedenergistics2.ToolColorApplicator.name=Aplicador de Color +item.appliedenergistics2.ToolWirelessTerminal.name=Terminal Inalámbrica +item.appliedenergistics2.ToolBiometricCard.name=Tarjeta Biometrica + +item.appliedenergistics2.ToolDebugCard.name=Dev.DebugCard +item.appliedenergistics2.ToolReplicatorCard.name=Dev.ReplicatorCard diff --git a/src/main/resources/assets/appliedenergistics2/lang/fr_FR.lang b/src/main/resources/assets/appliedenergistics2/lang/fr_FR.lang new file mode 100644 index 00000000..42eb6f72 --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/fr_FR.lang @@ -0,0 +1,506 @@ +tile.appliedenergistics2.BlockCableBus.name=Câble et/ou bus AE2 +tile.appliedenergistics2.BlockCellWorkbench.name=Etabli de cellules +tile.appliedenergistics2.BlockCharger.name=Chargeur +tile.appliedenergistics2.BlockChest.name=Coffre ME +tile.appliedenergistics2.BlockCondenser.name=Condenseur de matière +tile.appliedenergistics2.BlockController.name=Contrôleur ME +tile.appliedenergistics2.BlockCrank.name=Manivelle en bois +tile.appliedenergistics2.BlockCreativeEnergyCell.name=Cellule énergétique en créatif +tile.appliedenergistics2.BlockDenseEnergyCell.name=Cellule énergétique dense +tile.appliedenergistics2.BlockEnergyCell.name=Cellule énergétique +tile.appliedenergistics2.BlockDrive.name=Range-disque ME +tile.appliedenergistics2.BlockEnergyAcceptor.name=Acceptateur énergétique +tile.appliedenergistics2.BlockGrinder.name=Meule en Quartz +tile.appliedenergistics2.BlockMatrixFrame.name=Cadre de la matrice +tile.appliedenergistics2.BlockIOPort.name=Port d'E/S ME +tile.appliedenergistics2.BlockInscriber.name=Presse +tile.appliedenergistics2.BlockInterface.name=Interface ME +tile.appliedenergistics2.BlockQuantumLinkChamber.name=Chambre de lien quantique ME +tile.appliedenergistics2.BlockQuantumRing.name=Anneau quantique ME +tile.appliedenergistics2.BlockFluix.name=Bloc de Fluix +tile.appliedenergistics2.BlockQuartz.name=Bloc de Quartz Certus +tile.appliedenergistics2.BlockQuartzChiseled.name=Bloc de Quartz Certus ciselé +tile.appliedenergistics2.BlockQuartzGlass.name=Verre de Quartz +tile.appliedenergistics2.BlockQuartzLamp.name=Verre de Quartz vibrant +tile.appliedenergistics2.BlockQuartzPillar.name=Pilier de Quartz Certus +tile.appliedenergistics2.BlockQuartzTorch.name=Quartz chargé à accrocher +tile.appliedenergistics2.BlockLightDetector.name=Détecteur de lumière à accrocher +tile.appliedenergistics2.BlockSpatialIOPort.name=Port d'E/S spatial +tile.appliedenergistics2.BlockSpatialPylon.name=Pilier spatial +tile.appliedenergistics2.BlockTinyTNT.name=Minuscule TNT +tile.appliedenergistics2.BlockVibrationChamber.name=Chambre de vibration +tile.appliedenergistics2.BlockWireless.name=Point d'accès sans-fil ME +tile.appliedenergistics2.OreQuartz.name=Minerai de Quartz Certus +tile.appliedenergistics2.OreQuartzCharged.name=Minerai de Quartz Certus chargé +tile.appliedenergistics2.BlockSecurity.name=Terminal de sécurité ME +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=Accélérateur de croissance de cristal +tile.appliedenergistics2.BlockSkyStone.name=Pierre de ciel +tile.appliedenergistics2.BlockSkyStone.Block.name=Bloc de pierre de ciel +tile.appliedenergistics2.BlockSkyStone.Brick.name=Brique de pierre de ciel +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=Briquettes de pierre de ciel +tile.appliedenergistics2.BlockSkyChest.name=Coffre de pierre de ciel +tile.appliedenergistics2.BlockSkyChest.Block.name=Coffre de bloc de pierre de ciel +tile.appliedenergistics2.BlockSkyCompass.name=Boussole à météorite +tile.appliedenergistics2.BlockCraftingMonitor.name=Moniteur de craft +tile.appliedenergistics2.BlockCraftingStorage.name=Disque 1k pour le craft +tile.appliedenergistics2.BlockCraftingStorage4k.name=Disque 4k pour le craft +tile.appliedenergistics2.BlockCraftingStorage16k.name=Disque 16k pour le craft +tile.appliedenergistics2.BlockCraftingStorage64k.name=Disque 64k pour le craft +tile.appliedenergistics2.BlockCraftingAccelerator.name=Unité de co-traitement +tile.appliedenergistics2.BlockCraftingUnit.name=Unité de craft +tile.appliedenergistics2.BlockMolecularAssembler.name=Assembleur moléculaire + +chat.appliedenergistics2.ChestCannotReadStorageCell=Le coffre ME Chest ne peut pas lire la cellule de stockage. +chat.appliedenergistics2.SettingCleared=Paramètres effacés. +chat.appliedenergistics2.OutOfRange=Réseau sans-fil hors de portée. +chat.appliedenergistics2.InvalidMachine=Machine invalide. +chat.appliedenergistics2.LoadedSettings=Paramètres chargés avec succès. +chat.appliedenergistics2.DeviceNotPowered=Le dispositif manque de puissance. +chat.appliedenergistics2.MachineNotPowered=La machine n'est pas alimentée. +chat.appliedenergistics2.CommunicationError=Erreur de communication avec le réseau. +chat.appliedenergistics2.SavedSettings=Paramètres sauvés avec succès. +chat.appliedenergistics2.AmmoDepleted=Munitions épuisées. +chat.appliedenergistics2.isNowLocked=Le moniteur est maintenant verrouillé. +chat.appliedenergistics2.isNowUnlocked=Le moniteur est maintenant déverrouillé. + +itemGroup.appliedenergistics2=Applied Energistics 2 +itemGroup.appliedenergistics2.facades=Façades Applied Energistics 2 + +gui.appliedenergistics2.CraftingTerminal=Terminal de craft +gui.appliedenergistics2.METunnel=ME +gui.appliedenergistics2.ItemTunnel=Objet +gui.appliedenergistics2.FluidTunnel=Fluide +gui.appliedenergistics2.RedstoneTunnel=Redstone +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU +gui.appliedenergistics2.RFTunnel=RF +gui.appliedenergistics2.LightTunnel=Lumière + +gui.appliedenergistics2.security.extract.name=Retrait +gui.appliedenergistics2.security.inject.name=Dépôt +gui.appliedenergistics2.security.craft.name=Craft +gui.appliedenergistics2.security.build.name=Construction +gui.appliedenergistics2.security.security.name=Sécurité + +gui.appliedenergistics2.security.extract.tip=L'utilisateur est autorisé à retirer un élément du stockage. +gui.appliedenergistics2.security.inject.tip=L'utilisateur est autorisé à déposer un élément dans le stockage. +gui.appliedenergistics2.security.craft.tip=L'utilisateur peut lancer de nouveaux crafts. +gui.appliedenergistics2.security.build.tip=L'utilisateur peut modifier la structure physique du réseau et faire des changement de configuration. +gui.appliedenergistics2.security.security.tip=L'utilisateur peut accéder et modifier le terminal de sécurité du réseau. + +gui.appliedenergistics2.Efficiency=Efficacité +gui.appliedenergistics2.RequiredPower=Puissance requise +gui.appliedenergistics2.StoredPower=Puissance stockée +gui.appliedenergistics2.MaxPower=Puissance maxi +gui.appliedenergistics2.QuartzCuttingKnife=Couteau en Quartz +gui.appliedenergistics2.Inscriber=Presse +gui.appliedenergistics2.Wireless=Point d'accès sans-fil +gui.appliedenergistics2.WirelessTerminal=Terminal sans-fil +gui.appliedenergistics2.NoPermissions=Aucune permission sélectionnée +gui.appliedenergistics2.SecurityCardEditor=Editeur de carte biométrique +gui.appliedenergistics2.Encoded=Encodé +gui.appliedenergistics2.Priority=Priorité +gui.appliedenergistics2.StorageBus=Bus de stockage +gui.appliedenergistics2.EnergyDrain=Drain passif +gui.appliedenergistics2.Installed=Installé +gui.appliedenergistics2.NetworkTool=Outil de réseau +gui.appliedenergistics2.PowerUsageRate=Utilisation de l'énergie +gui.appliedenergistics2.PowerInputRate=Production d'énergie +gui.appliedenergistics2.PortableCell=Cellule portable +gui.appliedenergistics2.Security=Terminal de sécurité +gui.appliedenergistics2.CellWorkbench=Etabli de cellules +gui.appliedenergistics2.QuantumLinkChamber=Chambre de lien quantique +gui.appliedenergistics2.IOPort=Port d'E/S ME +gui.appliedenergistics2.Chest=Coffre ME +gui.appliedenergistics2.Condenser=Condenseur de matière +gui.appliedenergistics2.Config=Configuration +gui.appliedenergistics2.Drive=Range-disque ME +gui.appliedenergistics2.ExportBus=Bus d'export ME +gui.appliedenergistics2.GrindStone=Meule +gui.appliedenergistics2.ImportBus=Bus d'import ME +gui.appliedenergistics2.Interface=Interface ME +gui.appliedenergistics2.LevelEmitter=Emetteur de niveau ME +gui.appliedenergistics2.Of=de +gui.appliedenergistics2.Patterns=Modèles +gui.appliedenergistics2.SpatialIOPort=Port d'E/S spatial +gui.appliedenergistics2.StoredEnergy=Energie stockée +gui.appliedenergistics2.StoredItems=Eléments stockés +gui.appliedenergistics2.Terminal=Terminal +gui.appliedenergistics2.InterfaceTerminal=Terminal d'interface +gui.appliedenergistics2.InterfaceTerminalHint=Montrer ou cacher sur le terminal d'interface. +gui.appliedenergistics2.FormationPlane=Plan de formation +gui.appliedenergistics2.VibrationChamber=Chambre de vibration +gui.appliedenergistics2.NetworkDetails=Détails du réseau +gui.appliedenergistics2.StorageCells=Cellules de stockage ME +gui.appliedenergistics2.IOBuses=Bus d'import/export ME +gui.appliedenergistics2.Stores=Stocke +gui.appliedenergistics2.BytesUsed=Octets utilisés +gui.appliedenergistics2.Types=Types +gui.appliedenergistics2.Blank=Vide +gui.appliedenergistics2.Unlinked=Non lié +gui.appliedenergistics2.Linked=Lié +gui.appliedenergistics2.StoredSize=Quantité stockée +gui.appliedenergistics2.SkyChest=Coffre de pierre du ciel +gui.appliedenergistics2.PatternTerminal=Terminal des modèles +gui.appliedenergistics2.CraftingPattern=Modèle de craft +gui.appliedenergistics2.MolecularAssembler=Assembleur moléculaire +gui.appliedenergistics2.ProcessingPattern=Modèle de traitement +gui.appliedenergistics2.Crafts=Crafts +gui.appliedenergistics2.And=et +gui.appliedenergistics2.Creates=Crée +gui.appliedenergistics2.With=avec +gui.appliedenergistics2.InWorldCrafting=AE2 dans le monde +gui.appliedenergistics2.inWorldFluix=Jetez 1 Quartz Certus chargé + 1 Quartz du Nether + poudre de Redstone dans une flaque tous ensemble et attendez un moment pour recevoir 2 Cristaux de Fluix. +gui.appliedenergistics2.inWorldPurificationCertus=Jetez une graine de Quartz Certus faite a partir de la poudre de Quartz Certus et de sable dans une flaque d'eau. Pour accélerer le processus, ajoutez des accélérateurs de croissance de cristal. +gui.appliedenergistics2.inWorldPurificationNether=Jetez une graine de Quartz du Nether faite a partir de la poudre de Quartz du Nether et de sable dans une flaque d'eau. Pour accélerer le processus, ajoutez des accélérateurs de croissance de cristal. +gui.appliedenergistics2.inWorldPurificationFluix=Jetez une graine de Fluix faite a partir de la poudre de Fluix et de sable dans une flaque d'eau. Pour accélerer le processus, ajoutez des accélérateurs de croissance de cristal. +gui.appliedenergistics2.inWorldSingularity=Pour la créer, jetez 1 Singularité et 1 poudre d'Ender puis provoquez une explosion à proximité des éléments. +gui.appliedenergistics2.ChargedQuartz=Un Quartz Certus chargé est obtenu en insérant un cristal de Quartz Certus dans le chargeur, puis en l'alimentant. +gui.appliedenergistics2.ChargedQuartzFind=Le Quartz Certus chargé peut-être trouvé dans le monde assez rarement. Il parait identique au Quartz Certus normal sauf qu'il clignote. +gui.appliedenergistics2.OfSecondOutput=% Chance pour une sortie secondaire. +gui.appliedenergistics2.NoSecondOutput=Pas de sortie secondaire +gui.appliedenergistics2.SelectAmount=Sélectionnez la quantité +gui.appliedenergistics2.CopyMode=Mode copie +gui.appliedenergistics2.CopyModeDesc=Contrôle si le contenu du panneau de configuration est vidé quand vous retirez la cellule. +gui.appliedenergistics2.Next=Suivant +gui.appliedenergistics2.Lumen=Lumen +gui.appliedenergistics2.Empty=Vide +gui.appliedenergistics2.Stored=Stocké +gui.appliedenergistics2.Cancel=Annuler +gui.appliedenergistics2.Crafting=Craft +gui.appliedenergistics2.Scheduled=Prévu +gui.appliedenergistics2.CraftingStatus=Etat du craft +gui.appliedenergistics2.FromStorage=Disponible +gui.appliedenergistics2.ToCraft=A crafter +gui.appliedenergistics2.CraftingPlan=Plan de craft +gui.appliedenergistics2.Automatic=Automatique +gui.appliedenergistics2.Start=Départ +gui.appliedenergistics2.Missing=Manquant +gui.appliedenergistics2.Bytes=Stockage +gui.appliedenergistics2.Simulation=Simulation +gui.appliedenergistics2.CoProcessors=Co-traitements +gui.appliedenergistics2.CraftingCPU=Unité de craft +gui.appliedenergistics2.NoCraftingCPUs=Aucune unité de craft n'est disponible +gui.appliedenergistics2.CalculatingWait=En cours de calcul, veuillez patienter... +gui.appliedenergistics2.Clean=Effacer +gui.appliedenergistics2.InvalidPattern=Modèle non valide +gui.appliedenergistics2.Range=Portée +gui.appliedenergistics2.TransparentFacades=Façades transparentes +gui.appliedenergistics2.TransparentFacadesHint=Contrôle la visibilité des façades avec l'outil réseau dans votre main. +gui.appliedenergistics2.CPUs=Unités +gui.appliedenergistics2.NoCraftingJobs=Aucun craft actif +gui.appliedenergistics2.FacadeCrafting=Craft de façade +gui.appliedenergistics2.inWorldCraftingPresses=Les plaques de gravure se trouvent au centre des météorites qui peuvent être trouvées dans le monde, elles peuvent être localisées en utilisant une boussole à météorite. +gui.appliedenergistics2.Included=Inclus +gui.appliedenergistics2.Excluded=Exclus +gui.appliedenergistics2.Partitioned=Partitionné +gui.appliedenergistics2.Precise=Précis +gui.appliedenergistics2.Fuzzy=Brouillon + +gui.tooltips.appliedenergistics2.Stash=Stocke des objets +gui.tooltips.appliedenergistics2.StashDesc=Renvoie les objets de la grille de craft dans le réseau. +gui.tooltips.appliedenergistics2.Substitutions=Remplacements du Ore-Dictionnary +gui.tooltips.appliedenergistics2.SubstitutionsDesc=Editez les options de remplacement pour les composants en entrée. +gui.tooltips.appliedenergistics2.SubstitutionsOn=Remplacements activés +gui.tooltips.appliedenergistics2.SubstitutionsOff=Remplacements désactivés +gui.tooltips.appliedenergistics2.Encode=Encoder un modèle +gui.tooltips.appliedenergistics2.EncodeDescription=Ecrit le modèle saisi à la place de l'actuel modèle ou dans un modèle vide disponible. +gui.tooltips.appliedenergistics2.FuzzyMode=Comparaison brouillon +gui.tooltips.appliedenergistics2.FZPercent_25=Comparaison à 25% +gui.tooltips.appliedenergistics2.FZPercent_50=Comparaison à 50% +gui.tooltips.appliedenergistics2.FZPercent_75=Comparaison à 75% +gui.tooltips.appliedenergistics2.FZPercent_99=Comparaison à 99% +gui.tooltips.appliedenergistics2.SortOrder=Ordre de tri +gui.tooltips.appliedenergistics2.SortBy=Trié par +gui.tooltips.appliedenergistics2.FZIgnoreAll=N'importe quoi +gui.tooltips.appliedenergistics2.TransferDirection=Direction du transfert +gui.tooltips.appliedenergistics2.TransferToNetwork=Transférer les données au réseau +gui.tooltips.appliedenergistics2.TransferToStorageCell=Transférer les données à la cellule de stockage +gui.tooltips.appliedenergistics2.ToggleSortDirection=Basculer la direction de tri +gui.tooltips.appliedenergistics2.StoredItems=Objets stockés +gui.tooltips.appliedenergistics2.StoredCraftable=Stock / Craft +gui.tooltips.appliedenergistics2.View=Vue +gui.tooltips.appliedenergistics2.RedstoneMode=Mode redstone +gui.tooltips.appliedenergistics2.OperationMode=Mode opération +gui.tooltips.appliedenergistics2.NumberOfItems=Nombre d'objets +gui.tooltips.appliedenergistics2.ItemName=Nom de l'objet +gui.tooltips.appliedenergistics2.PowerUnits=Unités d'énergie +gui.tooltips.appliedenergistics2.IOMode=Mode d'entrée/sortie +gui.tooltips.appliedenergistics2.CondenserOutput=Sortie du condenseur ME +gui.tooltips.appliedenergistics2.PartitionStorage=Partionner le stockage +gui.tooltips.appliedenergistics2.Clear=Effacer +gui.tooltips.appliedenergistics2.TrashController=Effacement par Maj. / Espace-Clic. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=Mode bloquant +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=Mode craft +gui.tooltips.appliedenergistics2.Trash=Détruire les éléments +gui.tooltips.appliedenergistics2.MatterBalls=Condenser en billes de matière\n%s par élément +gui.tooltips.appliedenergistics2.Singularity=Condenser en singularités\n%s par élément +gui.tooltips.appliedenergistics2.Read=Retrait seulement +gui.tooltips.appliedenergistics2.Write=Ajout seulement +gui.tooltips.appliedenergistics2.ReadWrite=Bidirectionnel +gui.tooltips.appliedenergistics2.AlwaysActive=Toujours actif +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=Actif sans signal +gui.tooltips.appliedenergistics2.ActiveWithSignal=Actif avec un signal +gui.tooltips.appliedenergistics2.ActiveOnPulse=Activer une fois par impulsion +gui.tooltips.appliedenergistics2.EmitLevelsBelow=Emettre quand les niveaux sont inférieurs ou égaux à la limite. +gui.tooltips.appliedenergistics2.EmitLevelAbove=Emettre quand les niveaux sont supérieurs ou égaux à la limite. +gui.tooltips.appliedenergistics2.SearchMode_Auto=Recherche auto +gui.tooltips.appliedenergistics2.SearchMode_Standard=Recharche standard +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=Synchronisation NEI auto +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=Synchronisation NEI standard +gui.tooltips.appliedenergistics2.SearchMode=Mode de la boite de recherche +gui.tooltips.appliedenergistics2.PartitionStorageHint=Configure la partition par rapport aux objets actuellement stockés. +gui.tooltips.appliedenergistics2.ClearSettings=Efface les paramètres +gui.tooltips.appliedenergistics2.Craftable=Craftable +gui.tooltips.appliedenergistics2.MoveWhenEmpty=Déplace vers la sortie dès que c'est vide. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=Déplace vers la sortie quand le travail est fini. +gui.tooltips.appliedenergistics2.MoveWhenFull=Déplace vers la sortie quand c'est plein. +gui.tooltips.appliedenergistics2.Disabled=Désactivé +gui.tooltips.appliedenergistics2.Enable=Activé +gui.tooltips.appliedenergistics2.Blocking=Ne pas insérer d'objets de craft si l'inventaire contient des objets. +gui.tooltips.appliedenergistics2.NonBlocking=Ignorer le contenu de l'inventaire cible. +gui.tooltips.appliedenergistics2.Craft=Comportement de craft +gui.tooltips.appliedenergistics2.CraftOnly=Ne pas utiliser les objets stockés; préférer le craft pour l'export. +gui.tooltips.appliedenergistics2.CraftEither=Utiliser les éléments stockés, ou les crafter lors de l'export. +gui.tooltips.appliedenergistics2.LevelType=Type de niveau +gui.tooltips.appliedenergistics2.LevelType_Energy=Energie +gui.tooltips.appliedenergistics2.LevelType_Item=Objet +gui.tooltips.appliedenergistics2.InventoryTweaks=Inventory Tweaks +gui.tooltips.appliedenergistics2.Mod=Mod +gui.tooltips.appliedenergistics2.TerminalStyle=Style du terminal +gui.tooltips.appliedenergistics2.TerminalStyle_Full=Terminal plein écran +gui.tooltips.appliedenergistics2.TerminalStyle_Tall=Grand terminal centré +gui.tooltips.appliedenergistics2.TerminalStyle_Small=Petit terminal centré +gui.tooltips.appliedenergistics2.DoesntDespawn=Cet élément ne disparaitra pas. +gui.tooltips.appliedenergistics2.EmitterMode=Mode d'émission du craft +gui.tooltips.appliedenergistics2.CraftViaRedstone=Emettre un signal Redstone pour crafter l'objet. +gui.tooltips.appliedenergistics2.EmitWhenCrafting=Emettre un signal Redstone quand l'objet est en cours de craft. +gui.tooltips.appliedenergistics2.ReportInaccessibleItems=Rapport d'éléments inaccessibles +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsYes=Oui: Les éléments ne pouvant pas être extraits seront visibles. +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsNo=Non: Seuls les éléments extractibles seront visibles. + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=Minecraft Joules +gui.appliedenergistics2.units.ic2=Energy Units +gui.appliedenergistics2.units.mekanism=Joules +gui.appliedenergistics2.units.rotarycraft=Watts +gui.appliedenergistics2.units.thermalexpansion=Redstone Flux + +gui.appliedenergistics2.White=Blanc +gui.appliedenergistics2.Orange=Orange +gui.appliedenergistics2.Magenta=Magenta +gui.appliedenergistics2.LightBlue=Bleu clair +gui.appliedenergistics2.Yellow=Jaune +gui.appliedenergistics2.Lime=Vert citron +gui.appliedenergistics2.Pink=Rose +gui.appliedenergistics2.Gray=Gris +gui.appliedenergistics2.LightGray=Gris clair +gui.appliedenergistics2.Cyan=Cyan +gui.appliedenergistics2.Purple=Violet +gui.appliedenergistics2.Blue=Bleu +gui.appliedenergistics2.Brown=Marron +gui.appliedenergistics2.Green=Vert +gui.appliedenergistics2.Red=Rouge +gui.appliedenergistics2.Black=Noir +gui.appliedenergistics2.Fluix=Fluix + +waila.appliedenergistics2.DeviceOnline=Dispositif en ligne +waila.appliedenergistics2.DeviceOffline=Dispositif hors ligne +waila.appliedenergistics2.DeviceMissingChannel=Appareil sans canal +waila.appliedenergistics2.Locked=Verrouillé +waila.appliedenergistics2.Unlocked=Déverrouillé +waila.appliedenergistics2.Showing=Affichant +waila.appliedenergistics2.Contains=Contient +waila.appliedenergistics2.Channels=Canaux + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=Disque de stockage 1k +item.appliedenergistics2.ItemBasicStorageCell.4k.name=Disque de stockage 4k +item.appliedenergistics2.ItemBasicStorageCell.16k.name=Disque de stockage 16k +item.appliedenergistics2.ItemBasicStorageCell.64k.name=Disque de stockage 64k +item.appliedenergistics2.ItemCreativeStorageCell.name=Disque de stockage créative +item.appliedenergistics2.ItemEncodedPattern.name=Modèle encodé +item.appliedenergistics2.ItemViewCell.name=Cellule de visualisation +item.appliedenergistics2.ItemFacade.name=Façade de câble + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=Graine de Quartz Certus +item.appliedenergistics2.ItemCrystalSeed.Nether.name=Graine de Quartz du Nether +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=Graine de Fluix +item.appliedenergistics2.ItemMaterial.InvalidType.name=Cet objet est désactivé. +item.appliedenergistics2.ItemMaterial.AdvCard.name=Carte avancée +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=Noyau d'annihilation +item.appliedenergistics2.ItemMaterial.BasicCard.name=Carte basique +item.appliedenergistics2.ItemMaterial.BlankPattern.name=Modèle vide +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=Processeur de calcul +item.appliedenergistics2.ItemMaterial.CardCapacity.name=Carte de capacité +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=Carte brouillonne +item.appliedenergistics2.ItemMaterial.CardInverter.name=Carte d'inversion +item.appliedenergistics2.ItemMaterial.CardRedstone.name=Carte de Redstone +item.appliedenergistics2.ItemMaterial.CardSpeed.name=Carte d'accélération +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=Composant spatial 2³ +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=Composant spatial 16³ +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=Composant spatial 128³ +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=Composant de stockage ME 1k +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=Composant de stockage ME 4k +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=Composant de stockage ME 16k +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=Composant de stockage ME 64k +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=Cristal de Quartz Certus +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=Cristal de Quartz Certus chargé +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=Poussière de Quartz Certus +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=Boîtier de stockage ME +item.appliedenergistics2.ItemMaterial.EnderDust.name=Poussière d'Ender +item.appliedenergistics2.ItemMaterial.EngProcessor.name=Processeur d'ingénierie +item.appliedenergistics2.ItemMaterial.Flour.name=Farine +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=Cristal de Fluix +item.appliedenergistics2.ItemMaterial.FluixDust.name=Poussière de Fluix +item.appliedenergistics2.ItemMaterial.FluixPearl.name=Perle de Fluix +item.appliedenergistics2.ItemMaterial.FormationCore.name=Noyau de formation +item.appliedenergistics2.ItemMaterial.GoldDust.name=Poussière d'or +item.appliedenergistics2.ItemMaterial.IronDust.name=Poussière de fer +item.appliedenergistics2.ItemMaterial.IronNugget.name=Pépite de fer +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=Processeur logique +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=Processeur logique inachevé +item.appliedenergistics2.ItemMaterial.MatterBall.name=Bille de matière +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=Poussière de Quartz du Nether +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=Cristal de Quartz Certus pur +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=Cristal de Fluix pur +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=Cristal de Quartz du Nether pur +item.appliedenergistics2.ItemMaterial.QESingularity.name=Singularité quantique intriquée +item.appliedenergistics2.ItemMaterial.Silicon.name=Silicone +item.appliedenergistics2.ItemMaterial.Singularity.name=Singularité +item.appliedenergistics2.ItemMaterial.Wireless.name=Récepteur sans-fil +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=Boosteur de signal +item.appliedenergistics2.ItemMaterial.WoodenGear.name=Engrenage en bois +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=Matrice de presse d'ingénierie +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=Matrice de presse de calcul +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=Matrice de presse de logique +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=Circuit imprimé d'ingénierie +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=Circuit imprimé de calcul +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=Circuit imprimé de logique +item.appliedenergistics2.ItemMaterial.SiliconPress.name=Matrice de presse de silicone +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=Silicone imprimé +item.appliedenergistics2.ItemMaterial.NamePress.name=Matrice de presse de nommage +item.appliedenergistics2.ItemMaterial.SkyDust.name=Poussière de pierre du ciel +item.appliedenergistics2.ItemMaterial.CardCrafting.name=Carte de craft + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=Plan de dématérialisation ME +item.appliedenergistics2.ItemPart.CableAnchor.name=Ancre de câble +item.appliedenergistics2.ItemPart.CableCovered.name=Câble couvert ME +item.appliedenergistics2.ItemPart.CableGlass.name=Câble de verre ME +item.appliedenergistics2.ItemPart.CableSmart.name=Câble intelligent ME +item.appliedenergistics2.ItemPart.CableDense.name=Câble dense ME +item.appliedenergistics2.ItemPart.StorageMonitor.name=Moniteur de stockage ME +item.appliedenergistics2.ItemPart.ConversionMonitor.name=Moniteur de conversion ME +item.appliedenergistics2.ItemPart.CraftingTerminal.name=Terminal de craft ME +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=Panneau illuminé +item.appliedenergistics2.ItemPart.Monitor.name=Panneau illuminé éclairé +item.appliedenergistics2.ItemPart.DarkMonitor.name=Panneau illuminé sombre +item.appliedenergistics2.ItemPart.ExportBus.name=Bus d'export ME +item.appliedenergistics2.ItemPart.FormationPlane.name=Plan de matérialisation ME +item.appliedenergistics2.ItemPart.ImportBus.name=Bus d'import ME +item.appliedenergistics2.ItemPart.Interface.name=Interface ME +item.appliedenergistics2.ItemPart.LevelEmitter.name=Emetteur de niveau ME +item.appliedenergistics2.ItemPart.P2PTunnel.name=Tunnel P2P +item.appliedenergistics2.ItemPart.PatternTerminal.name=Terminal de modèles ME +item.appliedenergistics2.ItemPart.QuartzFiber.name=Fibre de Quartz +item.appliedenergistics2.ItemPart.StorageBus.name=Bus de stockage ME +item.appliedenergistics2.ItemPart.Terminal.name=Terminal ME +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=Bus levier inversé ME +item.appliedenergistics2.ItemPart.ToggleBus.name=Bus levier ME +item.appliedenergistics2.ItemPart.CraftingMonitor.name=Moniteur des crafts ME +item.appliedenergistics2.ItemPart.InterfaceTerminal.name=Terminal d'interface ME + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=Disque spatiale de 128³ +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=Disque spatiale de 16³ +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=Disque spatiale de 2³ + +item.appliedenergistics2.ToolCertusQuartzAxe.name=Hache en Quartz Certus +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=Couteau en Quartz Certus +item.appliedenergistics2.ToolCertusQuartzHoe.name=Houe en Quartz Certus +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=Pioche en Quartz Certus +item.appliedenergistics2.ToolCertusQuartzSpade.name=Pelle en Quartz Certus +item.appliedenergistics2.ToolCertusQuartzSword.name=Epée en Quartz Certus +item.appliedenergistics2.ToolCertusQuartzWrench.name=Clef en Quartz Certus + +item.appliedenergistics2.ToolNetherQuartzAxe.name=Hache en Quartz du Nether +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=Couteau en Quartz du Nether +item.appliedenergistics2.ToolNetherQuartzHoe.name=Houe en Quartz du Nether +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=Pioche en Quartz du Nether +item.appliedenergistics2.ToolNetherQuartzSpade.name=Pelle en Quartz du Nether +item.appliedenergistics2.ToolNetherQuartzSword.name=Epée en Quartz du Nether +item.appliedenergistics2.ToolNetherQuartzWrench.name=Clef en Quartz du Nether + +item.appliedenergistics2.ItemPaintBall.name=Bille de peinture +item.appliedenergistics2.ToolPortableCell.name=Disque portable +item.appliedenergistics2.ToolNetworkTool.name=Outil de réseau +item.appliedenergistics2.ToolChargedStaff.name=Bâton chargé +item.appliedenergistics2.ToolEntropyManipulator.name=Manipulateur entropique +item.appliedenergistics2.ToolMassCannon.name=Cannon à matière +item.appliedenergistics2.ToolMemoryCard.name=Carte mémoire +item.appliedenergistics2.ToolColorApplicator.name=Applicateur de couleur +item.appliedenergistics2.ToolWirelessTerminal.name=Terminal sans-fil +item.appliedenergistics2.ToolBiometricCard.name=Carte Biométrique + +item.appliedenergistics2.ToolDebugCard.name=Dev.DebugCard +item.appliedenergistics2.ToolReplicatorCard.name=Dev.ReplicatorCard + +commands.ae2.usage=Commandes fournies par Applied Energistics 2 - utilisez /ae2 list pour lister et /ae2 help _____ pour l'aide sur une commande. +commands.ae2.permissions=Vous n'avez pas les permissions adéquates pour exécuter cette commande. +commands.ae2.ChunkLogger=Active le chargement et le déchargement des chunks dans le journal du serveur. ( OP ) +commands.ae2.ChunkLoggerOn=Le chargement de chunks est en actif +commands.ae2.ChunkLoggerOff=Le chargement de morceaux est inactif +commands.ae2.Supporters=Affiche une liste des supporters de AE2 + +achievement.ae2.Compass=Chasseur de météorites +achievement.ae2.Compass.desc=Crafter une boussole à météorite. +achievement.ae2.Presses=Technologie inconnue +achievement.ae2.Presses.desc=Trouver une matrice de presse à processeur. +achievement.ae2.SpatialIO=Coordination spatiale +achievement.ae2.SpatialIO.desc=Crafter un port d'E/S spatial. +achievement.ae2.SpatialIOExplorer=A coeur vaillant... +achievement.ae2.SpatialIOExplorer.desc=Etre stocké dans un disque spatial. +achievement.ae2.StorageCell=Mieux que des coffres +achievement.ae2.StorageCell.desc=Crafter une cellule de stockage. +achievement.ae2.IOPort=Mélange de disque +achievement.ae2.IOPort.desc=Crafter un port d'E/S. +achievement.ae2.CraftingTerminal=Une table (bien) plus grande +achievement.ae2.CraftingTerminal.desc=Crafter un terminal de craft. +achievement.ae2.PatternTerminal=Maitre crafteur +achievement.ae2.PatternTerminal.desc=Crafter un terminal de modèles. +achievement.ae2.ChargedQuartz=Electrifiant +achievement.ae2.ChargedQuartz.desc=Trouver du Quartz chargé. +achievement.ae2.Fluix=Artificiel +achievement.ae2.Fluix.desc=Créer des critaux de Fluix. +achievement.ae2.Charger=Production de Fluix +achievement.ae2.Charger.desc=Crafter un chargeur. +achievement.ae2.CrystalGrowthAccelerator=Accélérateur est un euphémisme +achievement.ae2.CrystalGrowthAccelerator.desc=Crafter un accélérateur de croissance de cristal. +achievement.ae2.GlassCable=Connexion d'énergie Fluix +achievement.ae2.GlassCable.desc=Crafter un câble de verre ME. +achievement.ae2.Networking1=Apprenti réseau +achievement.ae2.Networking1.desc=Atteindre 8 canaux en utilisant des dispositifs sur un réseau. +achievement.ae2.Controller=Tableau de distribution du réseau +achievement.ae2.Controller.desc=Crafter un contrôleur. +achievement.ae2.Networking2=Ingénieur réseau +achievement.ae2.Networking2.desc=Atteindre 128 canaux en utilisant des dispositifs sur un réseau. +achievement.ae2.Networking3=Administrateur réseau +achievement.ae2.Networking3.desc=Atteindre 2048 canaux en utilisant des dispositifs sur un réseau. +achievement.ae2.P2P=Réseau point à point +achievement.ae2.P2P.desc=Crafter un tunnel P2P. +achievement.ae2.Recursive=Réseau récursif +achievement.ae2.Recursive.desc=Placer une interface sur un bus de stockage. +achievement.ae2.CraftingCPU=Crafting nouvelle génération +achievement.ae2.CraftingCPU.desc=Crafter une unité de craft. +achievement.ae2.Facade=Esthétique du réseau +achievement.ae2.Facade.desc=Crafter des façades de câbles. +achievement.ae2.NetworkTool=Diagnostics réseau +achievement.ae2.NetworkTool.desc=Crafter un outil réseau. +achievement.ae2.PortableCell=Stockage nomade +achievement.ae2.PortableCell.desc=Crafter un disque portable. +achievement.ae2.StorageBus=Potentiel illimité +achievement.ae2.StorageBus.desc=Crafter un bus de stockage. +achievement.ae2.QNB=Ouvrir un tunnel quantique +achievement.ae2.QNB.desc=Crafter un lien quantique. + +stat.ae2.ItemsInserted=Eléments ajoutés aux disques ME +stat.ae2.ItemsExtracted=Eléments extraits des disques ME +stat.ae2.TurnedCranks=Tours de manivelle diff --git a/src/main/resources/assets/appliedenergistics2/lang/hu_HU.lang b/src/main/resources/assets/appliedenergistics2/lang/hu_HU.lang new file mode 100644 index 00000000..7acb349a --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/hu_HU.lang @@ -0,0 +1,423 @@ +tile.appliedenergistics2.BlockCableBus.name=AE2 Kábel és/vagy Busz +tile.appliedenergistics2.BlockCellWorkbench.name=Cella Munkaasztal +tile.appliedenergistics2.BlockCharger.name=Feltöltő +tile.appliedenergistics2.BlockChest.name=ME Láda +tile.appliedenergistics2.BlockCondenser.name=Matter Condenser +tile.appliedenergistics2.BlockController.name=ME Vezérlő +tile.appliedenergistics2.BlockCrank.name=Fa Kurbli +tile.appliedenergistics2.BlockCreativeEnergyCell.name=Kreatív Energia Cella +tile.appliedenergistics2.BlockDenseEnergyCell.name=Sűrű Energia Cella +tile.appliedenergistics2.BlockEnergyCell.name=Energia Cella +tile.appliedenergistics2.BlockDrive.name=ME Meghajtó +tile.appliedenergistics2.BlockEnergyAcceptor.name=Energia Befogadó +tile.appliedenergistics2.BlockGrinder.name=Kvarc Csiszoló +tile.appliedenergistics2.BlockMatrixFrame.name=Mátrix Keret +tile.appliedenergistics2.BlockIOPort.name=ME IO Port +tile.appliedenergistics2.BlockInscriber.name=Karcoló +tile.appliedenergistics2.BlockInterface.name=ME Csatlakozási Felület +tile.appliedenergistics2.BlockQuantumLinkChamber.name=ME Kvantum Összekötő Kamra +tile.appliedenergistics2.BlockQuantumRing.name=ME Kvantum Gyűrű +tile.appliedenergistics2.BlockFluix.name=Fluix Blokk +tile.appliedenergistics2.BlockQuartz.name=Certus Kvarc Blokk +tile.appliedenergistics2.BlockQuartzChiseled.name=Finom Certus Kvarc Blokk +tile.appliedenergistics2.BlockQuartzGlass.name=Kvarc Üveg +tile.appliedenergistics2.BlockQuartzLamp.name=Vibráló Kvarc Üveg +tile.appliedenergistics2.BlockQuartzPillar.name=Certus Kvarc Oszlop +tile.appliedenergistics2.BlockQuartzTorch.name=Feltöltött Kvarc Fáklya +tile.appliedenergistics2.BlockLightDetector.name=Fény Detector Fixture +tile.appliedenergistics2.BlockSpatialIOPort.name=Spatial IO Port +tile.appliedenergistics2.BlockSpatialPylon.name=Spatial Pylon +tile.appliedenergistics2.BlockTinyTNT.name=Pici TNT +tile.appliedenergistics2.BlockVibrationChamber.name=Vibrációs Kamra +tile.appliedenergistics2.BlockWireless.name=ME Wireless Hozzáférési Pont +tile.appliedenergistics2.OreQuartz.name=Certus Kvarc Érc +tile.appliedenergistics2.OreQuartzCharged.name=Feltöltött Certus Kvarc Érc +tile.appliedenergistics2.BlockSecurity.name=ME Bizonsági Terminál +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=Kristály Növekedés Gyorsító +tile.appliedenergistics2.BlockSkyStone.name=Égbolt Kő +tile.appliedenergistics2.BlockSkyStone.Block.name=Égboltkő Blokk +tile.appliedenergistics2.BlockSkyStone.Brick.name=Égboltkő Tégla +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=Kicsi Égboltkő Tégla +tile.appliedenergistics2.BlockSkyChest.name=Égboltkő Láda +tile.appliedenergistics2.BlockSkyChest.Block.name=Égboltkő Blokk Láda +tile.appliedenergistics2.BlockSkyCompass.name=Meteorite Iránytű +tile.appliedenergistics2.BlockCraftingMonitor.name=Barkácsoló Monitor +tile.appliedenergistics2.BlockCraftingStorage.name=1k Crafting Tároló +tile.appliedenergistics2.BlockCraftingStorage4k.name=4k Crafting Tároló +tile.appliedenergistics2.BlockCraftingStorage16k.name=16k Crafting Tároló +tile.appliedenergistics2.BlockCraftingStorage64k.name=64k Crafting Tároló +tile.appliedenergistics2.BlockCraftingAccelerator.name=Crafting Co-Processing Egység +tile.appliedenergistics2.BlockCraftingUnit.name=Crafting Egység +tile.appliedenergistics2.BlockMolecularAssembler.name=Molekuláris Összerakó + +chat.appliedenergistics2.ChestCannotReadStorageCell=Az ME Láda nem tudja olvasni a tároló cellát. +chat.appliedenergistics2.SettingCleared=Beállítások törölve. +chat.appliedenergistics2.OutOfRange=Wireless hatókörön kívül. +chat.appliedenergistics2.InvalidMachine=Érvénytelen gép. +chat.appliedenergistics2.LoadedSettings=Beállítások sikeresen beolvasva. +chat.appliedenergistics2.DeviceNotPowered=A készüléknek alacsony az energia szintje. +chat.appliedenergistics2.MachineNotPowered=A készülék nem kap energiát. +chat.appliedenergistics2.CommunicationError=Hiba lépet fel a hálózat kommunikációja közben. +chat.appliedenergistics2.SavedSettings=Beállítások sikeresen elmentve. +chat.appliedenergistics2.AmmoDepleted=A lőszer kiürült. +chat.appliedenergistics2.isNowLocked=Monitor zárolva. +chat.appliedenergistics2.isNowUnlocked=Monitor feloldva. + +itemGroup.appliedenergistics2=Applied Energistics 2 +itemGroup.appliedenergistics2.facades=Applied Energistics 2 - Homlokzatok + +gui.appliedenergistics2.CraftingTerminal=Barkácsoló Terminál +gui.appliedenergistics2.METunnel=ME +gui.appliedenergistics2.ItemTunnel=Item +gui.appliedenergistics2.FluidTunnel=Folyadék +gui.appliedenergistics2.RedstoneTunnel=Vöröskő +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU +gui.appliedenergistics2.RFTunnel=RF +gui.appliedenergistics2.LightTunnel=Fény + +gui.appliedenergistics2.security.extract.name=Kiszed +gui.appliedenergistics2.security.inject.name=Berak +gui.appliedenergistics2.security.craft.name=Craftolás +gui.appliedenergistics2.security.build.name=Építés +gui.appliedenergistics2.security.security.name=Biztonság + +gui.appliedenergistics2.security.extract.tip=A felhasználónak engedélyezett, hogy eltávolítson itemeket a tárolóból. +gui.appliedenergistics2.security.inject.tip=A felhasználónak engedélyezett, hogy tároljon új itemeket a tárolóban. +gui.appliedenergistics2.security.craft.tip=A felhasználó képes indítani új craftolást. +gui.appliedenergistics2.security.build.tip=A felhasználó képes módosítani a teljes struktúrát a hálózaton, illetve képes változtatni a beállításokon. +gui.appliedenergistics2.security.security.tip=A felhasználó képes hozzáférni és módosítani a biztonsági terminálon. + +gui.appliedenergistics2.Efficiency=Hatékonyság +gui.appliedenergistics2.RequiredPower=Szükséges Energia +gui.appliedenergistics2.StoredPower=Tárolt Energia +gui.appliedenergistics2.MaxPower=Maximum Energia +gui.appliedenergistics2.QuartzCuttingKnife=Kvarc Vágó Kés +gui.appliedenergistics2.Inscriber=Karcoló +gui.appliedenergistics2.Wireless=Wireless Hozzáférési Pont +gui.appliedenergistics2.WirelessTerminal=Wireless terminal +gui.appliedenergistics2.NoPermissions=Hozzáférési jog nincs kijelölve. +gui.appliedenergistics2.SecurityCardEditor=Biometrikus kártya szerkesztő +gui.appliedenergistics2.Encoded=Kódolva +gui.appliedenergistics2.Priority=Prioritás +gui.appliedenergistics2.StorageBus=Tároló Busz +gui.appliedenergistics2.EnergyDrain=Passzív Elszívás +gui.appliedenergistics2.Installed=Telepítve +gui.appliedenergistics2.NetworkTool=Hálózati Eszköz +gui.appliedenergistics2.PowerUsageRate=Energia Használat +gui.appliedenergistics2.PowerInputRate=Energia Generálás +gui.appliedenergistics2.PortableCell=Szállítható Cella +gui.appliedenergistics2.Security=Biztonsági Szabályzat +gui.appliedenergistics2.CellWorkbench=Cella Munkaasztal +gui.appliedenergistics2.QuantumLinkChamber=Kvantum összekötő kamra +gui.appliedenergistics2.IOPort=ME IO Port +gui.appliedenergistics2.Chest=ME Láda +gui.appliedenergistics2.Condenser=Matter Condenser +gui.appliedenergistics2.Config=Konfig +gui.appliedenergistics2.Drive=ME Meghajtó +gui.appliedenergistics2.ExportBus=ME Export Busz +gui.appliedenergistics2.GrindStone=Csiszoló +gui.appliedenergistics2.ImportBus=ME Import Busz +gui.appliedenergistics2.Interface=ME Csatlakozás Felület +gui.appliedenergistics2.LevelEmitter=ME Level Emitter +gui.appliedenergistics2.Of=-ból +gui.appliedenergistics2.Patterns=Minták +gui.appliedenergistics2.SpatialIOPort=Spatial IO Port +gui.appliedenergistics2.StoredEnergy=Tárolt Energia +gui.appliedenergistics2.StoredItems=Tárolt Itemek +gui.appliedenergistics2.Terminal=Terminal +gui.appliedenergistics2.InterfaceTerminal=Interface Terminal +gui.appliedenergistics2.InterfaceTerminalHint=Show Or Hide on Interface Terminal. +gui.appliedenergistics2.FormationPlane=Formation Plane +gui.appliedenergistics2.VibrationChamber=Vibrációs Kamra +gui.appliedenergistics2.NetworkDetails=Hálózati Részletek +gui.appliedenergistics2.StorageCells=ME Tároló Cellák +gui.appliedenergistics2.IOBuses=ME Import/Export Busz +gui.appliedenergistics2.Stores=Stores +gui.appliedenergistics2.BytesUsed=Bytes használva +gui.appliedenergistics2.Types=Típus +gui.appliedenergistics2.Blank=Üres +gui.appliedenergistics2.Unlinked=Nincs Összekötve +gui.appliedenergistics2.Linked=Összekötve +gui.appliedenergistics2.StoredSize=Tárolt Méret +gui.appliedenergistics2.SkyChest=Ékboltkő Láda +gui.appliedenergistics2.PatternTerminal=Minta Terminal +gui.appliedenergistics2.CraftingPattern=Minta Kraftolás +gui.appliedenergistics2.MolecularAssembler=Molekuláris Összerakó +gui.appliedenergistics2.ProcessingPattern=Minta Feldolgozó +gui.appliedenergistics2.Crafts=Crafts +gui.appliedenergistics2.And=és +gui.appliedenergistics2.Creates=Creates +gui.appliedenergistics2.With=-vel +gui.appliedenergistics2.InWorldCrafting=AE2 In World Crafting +gui.appliedenergistics2.inWorldFluix=Drop 1 Charged Certus Quartz + 1 Nether Quartz + Redstone Dust into a puddle next to one another and wait a moment. +gui.appliedenergistics2.inWorldPurificationCertus=Drop a Certus Quartz Seed made from Certus Quartz Dust and Sand into a puddle of water; to make the process faster add Crystal Growth Accelerators. +gui.appliedenergistics2.inWorldPurificationNether=Drop a Nether Quartz Seed made from Nether Quartz Dust and Sand into a puddle of water; to make the process faster add Crystal Growth Accelerators. +gui.appliedenergistics2.inWorldPurificationFluix=Drop a Fluix Seed made from Fluix Dust and Sand into a puddle of water; to make the process faster add Crystal Growth Accelerators. +gui.appliedenergistics2.inWorldSingularity=To create drop 1 Singularity and 1 Ender Dust and cause an explosion within range of the items. +gui.appliedenergistics2.ChargedQuartz=Charged Certus Quartz is crafted by inserting an uncharged Certus Quartz Crystal into the Charger, and powering it. +gui.appliedenergistics2.OfSecondOutput=% Chance for second output. +gui.appliedenergistics2.NoSecondOutput=No Secondary Output +gui.appliedenergistics2.SelectAmount=Select Amount +gui.appliedenergistics2.CopyMode=Copy Mode +gui.appliedenergistics2.CopyModeDesc=Controls if the contents of the configuration pane are cleared when you remove the cell. +gui.appliedenergistics2.Next=Következő +gui.appliedenergistics2.Lumen=Lumen +gui.appliedenergistics2.Empty=Üres +gui.appliedenergistics2.Stored=Tárolva +gui.appliedenergistics2.Cancel=Mégse +gui.appliedenergistics2.Crafting=Craftolás +gui.appliedenergistics2.Scheduled=Idözitve +gui.appliedenergistics2.CraftingStatus=Craftolási Státusz +gui.appliedenergistics2.FromStorage=Rendelkezésre áll +gui.appliedenergistics2.ToCraft=To Craft +gui.appliedenergistics2.CraftingPlan=Crafting Plan +gui.appliedenergistics2.Automatic=Autmatikus +gui.appliedenergistics2.Start=Indítás +gui.appliedenergistics2.Missing=Hiányzik +gui.appliedenergistics2.Bytes=Storage +gui.appliedenergistics2.Simulation=Simulation +gui.appliedenergistics2.CoProcessors=Co Processors +gui.appliedenergistics2.CraftingCPU=Crafting CPU +gui.appliedenergistics2.NoCraftingCPUs=No Crafting CPUs are Available +gui.appliedenergistics2.CalculatingWait=Calculating Please Wait... +gui.appliedenergistics2.Clean=Tiszta +gui.appliedenergistics2.InvalidPattern=Invalid Pattern +gui.appliedenergistics2.Range=Hatótáv + +gui.tooltips.appliedenergistics2.Stash=Store Items +gui.tooltips.appliedenergistics2.StashDesc=Return items on the crafting grid to network storage. +gui.tooltips.appliedenergistics2.Substitutions=Ore-Dict Substitutions +gui.tooltips.appliedenergistics2.SubstitutionsDesc=Edit substitution options for input components. +gui.tooltips.appliedenergistics2.SubstitutionsOn=Substitutions Enabled +gui.tooltips.appliedenergistics2.SubstitutionsOff=Substitutions Disabled +gui.tooltips.appliedenergistics2.Encode=Encode Pattern +gui.tooltips.appliedenergistics2.EncodeDescription=Write the entered pattern to the current encoded pattern, or to available blank pattern. +gui.tooltips.appliedenergistics2.FuzzyMode=Fuzzy Comparison +gui.tooltips.appliedenergistics2.FZPercent_25=Split Damage at 25% +gui.tooltips.appliedenergistics2.FZPercent_50=Split Damage at 50% +gui.tooltips.appliedenergistics2.FZPercent_75=Split Damage at 75% +gui.tooltips.appliedenergistics2.FZPercent_99=Split Damage at 99% +gui.tooltips.appliedenergistics2.SortOrder=Sort Order +gui.tooltips.appliedenergistics2.SortBy=Sort By +gui.tooltips.appliedenergistics2.FZIgnoreAll=Match Any +gui.tooltips.appliedenergistics2.TransferDirection=Transfer Direction +gui.tooltips.appliedenergistics2.TransferToNetwork=Transfer data to Network +gui.tooltips.appliedenergistics2.TransferToStorageCell=Transfer data to Storage Cell +gui.tooltips.appliedenergistics2.ToggleSortDirection=Toggle sorting direction +gui.tooltips.appliedenergistics2.StoredItems=Stored Items +gui.tooltips.appliedenergistics2.StoredCraftable=Stored / Craftable +gui.tooltips.appliedenergistics2.View=View +gui.tooltips.appliedenergistics2.RedstoneMode=Redstone Mode +gui.tooltips.appliedenergistics2.OperationMode=Operation Mode +gui.tooltips.appliedenergistics2.NumberOfItems=Number of items +gui.tooltips.appliedenergistics2.ItemName=Item name +gui.tooltips.appliedenergistics2.PowerUnits=Power Units +gui.tooltips.appliedenergistics2.IOMode=Input/Output Mode +gui.tooltips.appliedenergistics2.CondenserOutput=ME Condenser - Output +gui.tooltips.appliedenergistics2.PartitionStorage=Partition Storage +gui.tooltips.appliedenergistics2.Clear=Clear +gui.tooltips.appliedenergistics2.TrashController=Deletion via Shift / Space Clicking. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=Blocking Mode +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=Crafting Mode +gui.tooltips.appliedenergistics2.Trash=Destroy Items +gui.tooltips.appliedenergistics2.MatterBalls=Condense Into Matter Balls\n%s per item +gui.tooltips.appliedenergistics2.Singularity=Condense Into Singularities\n%s per item +gui.tooltips.appliedenergistics2.Read=Extract Only +gui.tooltips.appliedenergistics2.Write=Insert Only +gui.tooltips.appliedenergistics2.ReadWrite=Bi-Directional +gui.tooltips.appliedenergistics2.AlwaysActive=Always active +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=Active without signal +gui.tooltips.appliedenergistics2.ActiveWithSignal=Active with signal +gui.tooltips.appliedenergistics2.ActiveOnPulse=Activate once per pulse +gui.tooltips.appliedenergistics2.EmitLevelsBelow=Emit when levels are below or equal to limit. +gui.tooltips.appliedenergistics2.EmitLevelAbove=Emit when levels are above or equal to limit. +gui.tooltips.appliedenergistics2.SearchMode_Auto=Auto Search +gui.tooltips.appliedenergistics2.SearchMode_Standard=Standard Search +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=NEI Syncronized Auto +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=NEI Syncronized Standard +gui.tooltips.appliedenergistics2.SearchMode=Search Box Mode +gui.tooltips.appliedenergistics2.PartitionStorageHint=Configures Partition based on currently stored items. +gui.tooltips.appliedenergistics2.ClearSettings=Clear Config/Settings +gui.tooltips.appliedenergistics2.Craftable=Craftable +gui.tooltips.appliedenergistics2.MoveWhenEmpty=Move to output when empty. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=Move to output when work is done. +gui.tooltips.appliedenergistics2.MoveWhenFull=Move to output when full. +gui.tooltips.appliedenergistics2.Disabled=Disabled +gui.tooltips.appliedenergistics2.Enable=Enabled +gui.tooltips.appliedenergistics2.Blocking=Do not push crafing items if inventory contains items. +gui.tooltips.appliedenergistics2.NonBlocking=Ignore the contents of the target inventory. +gui.tooltips.appliedenergistics2.Craft=Crafting Behavior +gui.tooltips.appliedenergistics2.CraftOnly=Do not use stocked items, only craft items while exporting. +gui.tooltips.appliedenergistics2.CraftEither=Use stocked items, or craft items while exporting. +gui.tooltips.appliedenergistics2.LevelType=Level Type +gui.tooltips.appliedenergistics2.LevelType_Energy=Energy +gui.tooltips.appliedenergistics2.LevelType_Item=Item +gui.tooltips.appliedenergistics2.InventoryTweaks=Inventory Tweaks +gui.tooltips.appliedenergistics2.TerminalStyle=Terminal Style +gui.tooltips.appliedenergistics2.TerminalStyle_Full=Full Screen Terminal +gui.tooltips.appliedenergistics2.TerminalStyle_Tall=Tall Centered Terminal +gui.tooltips.appliedenergistics2.TerminalStyle_Small=Small Centered Terminal + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=Minecraft Joules +gui.appliedenergistics2.units.ic2=Energy Units +gui.appliedenergistics2.units.mekanism=Joules +gui.appliedenergistics2.units.rotarycraft=Watts +gui.appliedenergistics2.units.thermalexpansion=Redstone Flux + +gui.appliedenergistics2.White=Fehér +gui.appliedenergistics2.Orange=Narancssárga +gui.appliedenergistics2.Magenta=Bíborvörös +gui.appliedenergistics2.LightBlue=Világos kék +gui.appliedenergistics2.Yellow=Sárga +gui.appliedenergistics2.Lime=Limezöld +gui.appliedenergistics2.Pink=Rózsaszín +gui.appliedenergistics2.Gray=Szürke +gui.appliedenergistics2.LightGray=Világos szürke +gui.appliedenergistics2.Cyan=Cián +gui.appliedenergistics2.Purple=Lila +gui.appliedenergistics2.Blue=Kék +gui.appliedenergistics2.Brown=Barna +gui.appliedenergistics2.Green=Zöld +gui.appliedenergistics2.Red=Piros +gui.appliedenergistics2.Black=Fekete +gui.appliedenergistics2.Fluix=Fluix + +waila.appliedenergistics2.DeviceOnline=Eszköz Online +waila.appliedenergistics2.DeviceOffline=Eszköz Offline +waila.appliedenergistics2.DeviceMissingChannel=Eszköz Hiányszó Csatorna +waila.appliedenergistics2.Locked=Zárolva +waila.appliedenergistics2.Unlocked=Nincs zárolva +waila.appliedenergistics2.Showing=Mutatni +waila.appliedenergistics2.Contains=Tárolni +waila.appliedenergistics2.Channels=Csatornák + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=1k ME Tároló Cella +item.appliedenergistics2.ItemBasicStorageCell.4k.name=4k ME Tároló Cella +item.appliedenergistics2.ItemBasicStorageCell.16k.name=16k ME Tároló Cella +item.appliedenergistics2.ItemBasicStorageCell.64k.name=64k Tároló Cella +item.appliedenergistics2.ItemCreativeStorageCell.name=Kreatív ME Tároló Cella +item.appliedenergistics2.ItemEncodedPattern.name=Encoded Pattern +item.appliedenergistics2.ItemViewCell.name=View Cell +item.appliedenergistics2.ItemFacade.name=Cable Facade + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=Certus Kvarc Mag +item.appliedenergistics2.ItemCrystalSeed.Nether.name=Alvilági Kvarc Mag +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=Fluix Mag +item.appliedenergistics2.ItemMaterial.AdvCard.name=Fejlett Kártya +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=Megsemmisítő Mag +item.appliedenergistics2.ItemMaterial.BasicCard.name=Egyszerű Kártya +item.appliedenergistics2.ItemMaterial.BlankPattern.name=Üres Minta +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=Kalkulációs Processzor +item.appliedenergistics2.ItemMaterial.CardCapacity.name=Kapacitás Kártya +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=Fuzzy Kártya +item.appliedenergistics2.ItemMaterial.CardInverter.name=Inverter Kártya +item.appliedenergistics2.ItemMaterial.CardRedstone.name=Vöröskő Kártya +item.appliedenergistics2.ItemMaterial.CardSpeed.name=Gyorsító Kártya +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=2³ Térbeli Komponens +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=16³ Térbeli Komponens +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=128³ Térbeli Komponens +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=1k ME Taroló Komponens +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=4k ME Taroló Komponens +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=16k ME Taroló Komponens +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=64k ME Taroló Komponens +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=Certus Kvarc Kristály +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=Feltöltött Certus Kvarc Kristály +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=Certus Kvarc Por +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=ME Storage Housing +item.appliedenergistics2.ItemMaterial.EnderDust.name=Ender Por +item.appliedenergistics2.ItemMaterial.EngProcessor.name=Műszaki Processzor +item.appliedenergistics2.ItemMaterial.Flour.name=Flour +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=Fluix Kristály +item.appliedenergistics2.ItemMaterial.FluixDust.name=Fluix Por +item.appliedenergistics2.ItemMaterial.FluixPearl.name=Fluix Gyöngy +item.appliedenergistics2.ItemMaterial.FormationCore.name=Formációs Mag +item.appliedenergistics2.ItemMaterial.GoldDust.name=Arany Por +item.appliedenergistics2.ItemMaterial.IronDust.name=Vas Por +item.appliedenergistics2.ItemMaterial.IronNugget.name=Vasrög +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=Logikai Processzor +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=Befejezetlen Logikai Processzor +item.appliedenergistics2.ItemMaterial.MatterBall.name=Anyag Labda +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=Alvilági Kvarc Por +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=Tiszta Certus Kvarc Kristály +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=Tiszta Fluix Kristály +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=Tiszta Nether Kvarc Kristály +item.appliedenergistics2.ItemMaterial.QESingularity.name=Kvantum Átívelő Szingularitás +item.appliedenergistics2.ItemMaterial.Silicon.name=Szilikon +item.appliedenergistics2.ItemMaterial.Singularity.name=Szingularitás +item.appliedenergistics2.ItemMaterial.Wireless.name=Wireless Fogadó +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=Wireless Erősítő +item.appliedenergistics2.ItemMaterial.WoodenGear.name=Fa fogaskerék +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=Karcolt Műszaki Nyomat +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=Karcolt Kalkulációs Nyomat +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=Karcolt Logikai Nyomat +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=Nyomtatott Műszaki Áramkör +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=Nyomtatott Kalkulációs Áramkör +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=Nyomtatott Logikai Áramkör +item.appliedenergistics2.ItemMaterial.SiliconPress.name=Karcolt Szilikon Nyomat +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=Nyomtatott Szilikon +item.appliedenergistics2.ItemMaterial.NamePress.name=Karcolt Név Nyomat +item.appliedenergistics2.ItemMaterial.SkyDust.name=Égboltkő por +item.appliedenergistics2.ItemMaterial.CardCrafting.name=Craftoló Kártya + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=ME Megsemmisítő Lap +item.appliedenergistics2.ItemPart.CableAnchor.name=Kábel Távtartó +item.appliedenergistics2.ItemPart.CableCovered.name=ME Szigetelt Kábel +item.appliedenergistics2.ItemPart.CableGlass.name=ME Üveg Kábel +item.appliedenergistics2.ItemPart.CableSmart.name=ME Okos Kábel +item.appliedenergistics2.ItemPart.CableDense.name=ME Sűrű Kábel +item.appliedenergistics2.ItemPart.StorageMonitor.name=ME Tároló Monitor +item.appliedenergistics2.ItemPart.ConversionMonitor.name=ME Átváltó Monitor +item.appliedenergistics2.ItemPart.CraftingTerminal.name=ME Craftoló Terminal +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=Kivilágított Lap +item.appliedenergistics2.ItemPart.Monitor.name=Fényes Kivilágított Lap +item.appliedenergistics2.ItemPart.DarkMonitor.name=Sötét Kivilágított Lap +item.appliedenergistics2.ItemPart.ExportBus.name=ME Export Busz +item.appliedenergistics2.ItemPart.FormationPlane.name=ME Formation Lap +item.appliedenergistics2.ItemPart.ImportBus.name=ME Import Busz +item.appliedenergistics2.ItemPart.Interface.name=ME Interface +item.appliedenergistics2.ItemPart.LevelEmitter.name=ME Level Emitter +item.appliedenergistics2.ItemPart.P2PTunnel.name=P2P Alagut +item.appliedenergistics2.ItemPart.PatternTerminal.name=ME Minta Terminal +item.appliedenergistics2.ItemPart.QuartzFiber.name=Kvarc Szálas +item.appliedenergistics2.ItemPart.StorageBus.name=ME Tároló Busz +item.appliedenergistics2.ItemPart.Terminal.name=ME Terminal +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=ME Inverted Toggle Busz +item.appliedenergistics2.ItemPart.ToggleBus.name=ME Toggle Busz +item.appliedenergistics2.ItemPart.CraftingMonitor.name=ME Craftoló Monitor +item.appliedenergistics2.ItemPart.InterfaceTerminal.name=ME Interface Terminal + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=128³ Térbeli Tároló Cella +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=16³ Térbeli Tároló Cella +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=2³ Térbeli Tároló Cella + +item.appliedenergistics2.ToolCertusQuartzAxe.name=Certus Kvarc Fejsze +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=Certus Kvarc Vágó Kés +item.appliedenergistics2.ToolCertusQuartzHoe.name=Certus Kvarc Kapa +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=Certus Kvarc Csákány +item.appliedenergistics2.ToolCertusQuartzSpade.name=Certus Kvarc Ásó +item.appliedenergistics2.ToolCertusQuartzSword.name=Certus Kvarc Kard +item.appliedenergistics2.ToolCertusQuartzWrench.name=Certus Kvarc Franciakulcs + +item.appliedenergistics2.ToolNetherQuartzAxe.name=Alvilági Kvarc Fejsze +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=Alvilági Kvarc Vágó Kés +item.appliedenergistics2.ToolNetherQuartzHoe.name=Alvilági Kvarc Kapa +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=Alvilági Kvarc Csákány +item.appliedenergistics2.ToolNetherQuartzSpade.name=Alvilági Kvarc Ásó +item.appliedenergistics2.ToolNetherQuartzSword.name=Alvilági Kvarc Kard +item.appliedenergistics2.ToolNetherQuartzWrench.name=Alvilági Kvarc Franciakulcs + +item.appliedenergistics2.ItemPaintBall.name=Festék Labda +item.appliedenergistics2.ToolPortableCell.name=Portable Cell +item.appliedenergistics2.ToolNetworkTool.name=Hálózati Eszköz +item.appliedenergistics2.ToolChargedStaff.name=Feltöltött Bot +item.appliedenergistics2.ToolEntropyManipulator.name=Entropy Manipulator +item.appliedenergistics2.ToolMassCannon.name=Anyag Ágyú +item.appliedenergistics2.ToolMemoryCard.name=Memória Kártya +item.appliedenergistics2.ToolColorApplicator.name=Color Applicator +item.appliedenergistics2.ToolWirelessTerminal.name=Wireless Terminal +item.appliedenergistics2.ToolBiometricCard.name=Biometrikus Kártya + +item.appliedenergistics2.ToolDebugCard.name=Dev.DebugCard +item.appliedenergistics2.ToolReplicatorCard.name=Dev.ReplicatorCard \ No newline at end of file diff --git a/src/main/resources/assets/appliedenergistics2/lang/it_IT.lang b/src/main/resources/assets/appliedenergistics2/lang/it_IT.lang new file mode 100644 index 00000000..1281003e --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/it_IT.lang @@ -0,0 +1,506 @@ +tile.appliedenergistics2.BlockCableBus.name=Cavo ME +tile.appliedenergistics2.BlockCellWorkbench.name=Banco da lavoro per celle +tile.appliedenergistics2.BlockCharger.name=Caricatore +tile.appliedenergistics2.BlockChest.name=Baule ME +tile.appliedenergistics2.BlockCondenser.name=Condensatore di materia +tile.appliedenergistics2.BlockController.name=Controllore ME +tile.appliedenergistics2.BlockCrank.name=Manovella di legno +tile.appliedenergistics2.BlockCreativeEnergyCell.name=Cella creativa di energia +tile.appliedenergistics2.BlockDenseEnergyCell.name=Cella densa di energia +tile.appliedenergistics2.BlockEnergyCell.name=Cella di energia +tile.appliedenergistics2.BlockDrive.name=Drive ME +tile.appliedenergistics2.BlockEnergyAcceptor.name=Accettatore di energia +tile.appliedenergistics2.BlockGrinder.name=Macina di quarzo +tile.appliedenergistics2.BlockMatrixFrame.name=Struttura matrice +tile.appliedenergistics2.BlockIOPort.name=Porta IO ME +tile.appliedenergistics2.BlockInscriber.name=Incisore +tile.appliedenergistics2.BlockInterface.name=Interfaccia ME +tile.appliedenergistics2.BlockQuantumLinkChamber.name=Camera di collegamento quantistico ME +tile.appliedenergistics2.BlockQuantumRing.name=Anello quantistico ME +tile.appliedenergistics2.BlockFluix.name=Blocco di fluix +tile.appliedenergistics2.BlockQuartz.name=Blocco di quarzo certus +tile.appliedenergistics2.BlockQuartzChiseled.name=Blocco di quarzo certus intagliato +tile.appliedenergistics2.BlockQuartzGlass.name=Vetro di quarzo +tile.appliedenergistics2.BlockQuartzLamp.name=Vetro di quarzo vibrante +tile.appliedenergistics2.BlockQuartzPillar.name=Pilastro di quarzo certus +tile.appliedenergistics2.BlockQuartzTorch.name=Lanterna di quarzo carico +tile.appliedenergistics2.BlockLightDetector.name=Lanterna rilevatore di luce +tile.appliedenergistics2.BlockSpatialIOPort.name=Porta IO per spazio +tile.appliedenergistics2.BlockSpatialPylon.name=Pilone per spazio +tile.appliedenergistics2.BlockTinyTNT.name=Tritolo piccolo +tile.appliedenergistics2.BlockVibrationChamber.name=Camera vibrante +tile.appliedenergistics2.BlockWireless.name=Punto d'accesso wireless ME +tile.appliedenergistics2.OreQuartz.name=Quarzo certus grezzo +tile.appliedenergistics2.OreQuartzCharged.name=Quarzo certus carico grezzo +tile.appliedenergistics2.BlockSecurity.name=Terminale di sicurezza ME +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=Acceleratore della crescita di cristalli +tile.appliedenergistics2.BlockSkyStone.name=Roccia del cielo +tile.appliedenergistics2.BlockSkyStone.Block.name=Blocco di roccia del cielo +tile.appliedenergistics2.BlockSkyStone.Brick.name=Roccia del cielo concia +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=Mattoni di roccia del cielo +tile.appliedenergistics2.BlockSkyChest.name=Baule di roccia del cielo +tile.appliedenergistics2.BlockSkyChest.Block.name=Baule di blocchi del cielo +tile.appliedenergistics2.BlockSkyCompass.name=Bussola per Meteoriti +tile.appliedenergistics2.BlockCraftingMonitor.name=Monitor per fabbricazione +tile.appliedenergistics2.BlockCraftingStorage.name=Deposito per fabbricazione da 1k +tile.appliedenergistics2.BlockCraftingStorage4k.name=Deposito per fabbricazione da 4k +tile.appliedenergistics2.BlockCraftingStorage16k.name=Deposito per fabbricazione da 16k +tile.appliedenergistics2.BlockCraftingStorage64k.name=Deposito per fabbricazione da 64k +tile.appliedenergistics2.BlockCraftingAccelerator.name=Unità co-processore per fabbricazione +tile.appliedenergistics2.BlockCraftingUnit.name=Unità di fabbricazione +tile.appliedenergistics2.BlockMolecularAssembler.name=Assemblatore moleculare + +chat.appliedenergistics2.ChestCannotReadStorageCell=Baule ME non riesce a leggere cella di immagazzinaggio. +chat.appliedenergistics2.SettingCleared=Impostazioni cancellate. +chat.appliedenergistics2.OutOfRange=Wireless fuori portata. +chat.appliedenergistics2.InvalidMachine=Macchina invalida. +chat.appliedenergistics2.LoadedSettings=Impostazioni caricate con successo. +chat.appliedenergistics2.DeviceNotPowered=Dispositivo a corto di energia. +chat.appliedenergistics2.MachineNotPowered=Macchina non alimentata. +chat.appliedenergistics2.CommunicationError=Errore nel communicare col Sistema. +chat.appliedenergistics2.SavedSettings=Impostazioni salvate con successo. +chat.appliedenergistics2.AmmoDepleted=Arma scarica. +chat.appliedenergistics2.isNowLocked=Il monitor è ora bloccato. +chat.appliedenergistics2.isNowUnlocked=Il monitor è ora sbloccato. + +itemGroup.appliedenergistics2=Applied Energistics 2 +itemGroup.appliedenergistics2.facades=Applied Energistics 2 - Facciate + +gui.appliedenergistics2.CraftingTerminal=Terminale con banco da lavoro +gui.appliedenergistics2.METunnel=ME +gui.appliedenergistics2.ItemTunnel=Oggetto +gui.appliedenergistics2.FluidTunnel=Fluido +gui.appliedenergistics2.RedstoneTunnel=Pietrarossa +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU +gui.appliedenergistics2.RFTunnel=RF +gui.appliedenergistics2.LightTunnel=Luce + +gui.appliedenergistics2.security.extract.name=Estrai +gui.appliedenergistics2.security.inject.name=Deposita +gui.appliedenergistics2.security.craft.name=Fabbrica +gui.appliedenergistics2.security.build.name=Costruisci +gui.appliedenergistics2.security.security.name=Sicurezza + +gui.appliedenergistics2.security.extract.tip=Utente ha il permesso di rimuovere oggetti dal deposito. +gui.appliedenergistics2.security.inject.tip=Utente ha il permesso di aggiungere oggetti nuovi al deposito. +gui.appliedenergistics2.security.craft.tip=Utente ha il permesso di iniziare fabbricazioni. +gui.appliedenergistics2.security.build.tip=Utente ha il permesso di modificare la struttura fisica del sistema, e fare cambiamenti nelle impostazioni. +gui.appliedenergistics2.security.security.tip=Utente ha il permesso di accedere e modificare il terminale di sicurezza del sistema. + +gui.appliedenergistics2.Efficiency=Efficienza +gui.appliedenergistics2.RequiredPower=Energia richiesta +gui.appliedenergistics2.StoredPower=Energia immagazzinata +gui.appliedenergistics2.MaxPower=Energia massima +gui.appliedenergistics2.QuartzCuttingKnife=Coltello di quarzo +gui.appliedenergistics2.Inscriber=Incisore +gui.appliedenergistics2.Wireless=Punto d'accesso wireless +gui.appliedenergistics2.WirelessTerminal=Terminale wireless +gui.appliedenergistics2.NoPermissions=Nessun permesso selezionato +gui.appliedenergistics2.SecurityCardEditor=Modificatore di schede biometriche +gui.appliedenergistics2.Encoded=Codificato +gui.appliedenergistics2.Priority=Priorità +gui.appliedenergistics2.StorageBus=Bus di immagazzinaggio +gui.appliedenergistics2.EnergyDrain=Uso passivo di energia +gui.appliedenergistics2.Installed=Installato +gui.appliedenergistics2.NetworkTool=Attrezzo per sistema +gui.appliedenergistics2.PowerUsageRate=Uso di energia +gui.appliedenergistics2.PowerInputRate=Generazione di energia +gui.appliedenergistics2.PortableCell=Cella portabile +gui.appliedenergistics2.Security=Term sicurezza +gui.appliedenergistics2.CellWorkbench=Banco da lavoro per celle +gui.appliedenergistics2.QuantumLinkChamber=Camera di collegamento quantistico +gui.appliedenergistics2.IOPort=Porta IO ME +gui.appliedenergistics2.Chest=Baule ME +gui.appliedenergistics2.Condenser=Condesatore di materia +gui.appliedenergistics2.Config=Configurazioni +gui.appliedenergistics2.Drive=Drive ME +gui.appliedenergistics2.ExportBus=Bus esportatore ME +gui.appliedenergistics2.GrindStone=Macina di quarzo +gui.appliedenergistics2.ImportBus=Bus importatore ME +gui.appliedenergistics2.Interface=Interfacia ME +gui.appliedenergistics2.LevelEmitter=Emettitore di pietrarossa ME +gui.appliedenergistics2.Of=Di +gui.appliedenergistics2.Patterns=Modelli +gui.appliedenergistics2.SpatialIOPort=Porta IO per spazio +gui.appliedenergistics2.StoredEnergy=Energia conservata +gui.appliedenergistics2.StoredItems=Oggetti conservati +gui.appliedenergistics2.Terminal=Terminale +gui.appliedenergistics2.InterfaceTerminal=Terminale con interfaccia +gui.appliedenergistics2.InterfaceTerminalHint=Mostra o nascondi Terminale con interfaccia. +gui.appliedenergistics2.FormationPlane=Piano di formazione +gui.appliedenergistics2.VibrationChamber=Camera vibrante +gui.appliedenergistics2.NetworkDetails=Dettagli del sistema +gui.appliedenergistics2.StorageCells=Cella di immagazzinazione ME +gui.appliedenergistics2.IOBuses=ME Bus importatore/esportatore +gui.appliedenergistics2.Stores=Contiene +gui.appliedenergistics2.BytesUsed=Bytes usati +gui.appliedenergistics2.Types=Tipi +gui.appliedenergistics2.Blank=Vuoto +gui.appliedenergistics2.Unlinked=Non collegato +gui.appliedenergistics2.Linked=Collegato +gui.appliedenergistics2.StoredSize=Grandezza immagazzinata +gui.appliedenergistics2.SkyChest=Baule di roccia del cielo +gui.appliedenergistics2.PatternTerminal=Terminale per modelli +gui.appliedenergistics2.CraftingPattern=Modello per fabbricazione +gui.appliedenergistics2.MolecularAssembler=Assemblatore moleculare +gui.appliedenergistics2.ProcessingPattern=Modelli in lavoro +gui.appliedenergistics2.Crafts=Fabbrica +gui.appliedenergistics2.And=e +gui.appliedenergistics2.Creates=Crea +gui.appliedenergistics2.With=con +gui.appliedenergistics2.InWorldCrafting=AE2 Fabbricazione nel mondo +gui.appliedenergistics2.inWorldFluix=Butta insieme in una pozzanghera 1 Quarzo certus carico + 1 Quarzo degli Inferi + Pietrarossa e aspetta un momento per ottenere due Cristalli di Fluix. +gui.appliedenergistics2.inWorldPurificationCertus=Butta in una pozzanghera un Seme quarzo certus creato con Polvere di quarzo certus e Sabbia; per velocizzare il processo aggiungi dei Acceleratore della crescita di cristalli. +gui.appliedenergistics2.inWorldPurificationNether=Butta in una pozzanghera un Seme quarzo degli Inferi creato con Polvere di quarzo degli Inferi e Sabbia; per velocizzare il processo aggiungi dei Acceleratore della crescita di cristalli. +gui.appliedenergistics2.inWorldPurificationFluix=Butta in una pozzanghera un Seme di fluix creato con Polvere di fluix e Sabbia; per velocizzare il processo aggiungi dei Acceleratore della crescita di cristalli. +gui.appliedenergistics2.inWorldSingularity=Per creare butta 1 Singolarità e 1 Polvere d'omega e causa un esplosione presso gli oggetti. +gui.appliedenergistics2.ChargedQuartz=Quarzo certus carico si ottiene inserendo un Cristallo di quarzo certus normale in un Caricatore alimentato di elettricità. +gui.appliedenergistics2.ChargedQuartzFind=Quarzo certus carico si trova abbastanza raramente nel mondo, è simile al quarzo certus normale, solo che brilla. +gui.appliedenergistics2.OfSecondOutput=% Cambia per output secondario. +gui.appliedenergistics2.NoSecondOutput=Nessun output secondario +gui.appliedenergistics2.SelectAmount=Seleziona quantità +gui.appliedenergistics2.CopyMode=Modalità copia +gui.appliedenergistics2.CopyModeDesc=Controlla se il contenuto del pannello di configurazione è vuoto quando rimuovi la cella. +gui.appliedenergistics2.Next=Pros +gui.appliedenergistics2.Lumen=Lumen +gui.appliedenergistics2.Empty=Vuoto +gui.appliedenergistics2.Stored=Immagazinato +gui.appliedenergistics2.Cancel=Cancella +gui.appliedenergistics2.Crafting=Fabbricazione +gui.appliedenergistics2.Scheduled=Programmato +gui.appliedenergistics2.CraftingStatus=Stato della fabbricazione +gui.appliedenergistics2.FromStorage=Avviabile +gui.appliedenergistics2.ToCraft=a essere fabbricato +gui.appliedenergistics2.CraftingPlan=Piano di fabbricazione +gui.appliedenergistics2.Automatic=Automatico +gui.appliedenergistics2.Start=Inizia +gui.appliedenergistics2.Missing=Manca +gui.appliedenergistics2.Bytes=Deposito +gui.appliedenergistics2.Simulation=Simulazione +gui.appliedenergistics2.CoProcessors=Co Processore +gui.appliedenergistics2.CraftingCPU=CPU di fabbricazione +gui.appliedenergistics2.NoCraftingCPUs=Nessuna CPU di fabbricazione è disponibile +gui.appliedenergistics2.CalculatingWait=Calcolando, aspettare... +gui.appliedenergistics2.Clean=Clean +gui.appliedenergistics2.InvalidPattern=Modello invalido +gui.appliedenergistics2.Range=Raggio +gui.appliedenergistics2.TransparentFacades=Facciate trasparenti +gui.appliedenergistics2.TransparentFacadesHint=Controlla la visibilità della facciata con un Attrezzo per sistema a portata di mano. +gui.appliedenergistics2.CPUs=CPU +gui.appliedenergistics2.NoCraftingJobs=Nessuna fabbricazione attiva +gui.appliedenergistics2.FacadeCrafting=Fabbricazione di facciate +gui.appliedenergistics2.inWorldCraftingPresses=I stampi si trovano nel centro dei meteoriti, le quali si possono trovare nel mondo usando una bussola per meteoriti . +gui.appliedenergistics2.Included=Incluso +gui.appliedenergistics2.Excluded=Escluso +gui.appliedenergistics2.Partitioned=Suddiviso +gui.appliedenergistics2.Precise=Preciso +gui.appliedenergistics2.Fuzzy=Vago + +gui.tooltips.appliedenergistics2.Stash=Oggetti immagazinati +gui.tooltips.appliedenergistics2.StashDesc=Manda gli oggetti sulla griglia di fabbricazione nel deposito del sistema. +gui.tooltips.appliedenergistics2.Substitutions=Sostituzione Ore-Dict +gui.tooltips.appliedenergistics2.SubstitutionsDesc=Modifica le opzioni di sostituzioni per componenti in entrata. +gui.tooltips.appliedenergistics2.SubstitutionsOn=Sostituzione attivata +gui.tooltips.appliedenergistics2.SubstitutionsOff=Sostituzione disattivata +gui.tooltips.appliedenergistics2.Encode=Codifica modello +gui.tooltips.appliedenergistics2.EncodeDescription=Iscrivi il modello scritto nel modello codificato corrente, o in un modello vuoto avviabile. +gui.tooltips.appliedenergistics2.FuzzyMode=Confronto vago +gui.tooltips.appliedenergistics2.FZPercent_25=Dividi il danno al 25% +gui.tooltips.appliedenergistics2.FZPercent_50=Dividi il danno al 50% +gui.tooltips.appliedenergistics2.FZPercent_75=Dividi il danno al 75% +gui.tooltips.appliedenergistics2.FZPercent_99=Dividi il danno al 99% +gui.tooltips.appliedenergistics2.SortOrder=Modifica ordine +gui.tooltips.appliedenergistics2.SortBy=Ordina per +gui.tooltips.appliedenergistics2.FZIgnoreAll=Abbina qualunque +gui.tooltips.appliedenergistics2.TransferDirection=Trasferisci direzione +gui.tooltips.appliedenergistics2.TransferToNetwork=Trasferisci data al Sistema +gui.tooltips.appliedenergistics2.TransferToStorageCell=Trasferisci data alla Cella di immagazzinaggio +gui.tooltips.appliedenergistics2.ToggleSortDirection=Modifica la direzione dell'ordine +gui.tooltips.appliedenergistics2.StoredItems=Oggetti depositati +gui.tooltips.appliedenergistics2.StoredCraftable=Immagazinati / Fabbricabili +gui.tooltips.appliedenergistics2.View=Vedi +gui.tooltips.appliedenergistics2.RedstoneMode=Modalità pietrarossa +gui.tooltips.appliedenergistics2.OperationMode=Modalità operazione +gui.tooltips.appliedenergistics2.NumberOfItems=numero di oggetti +gui.tooltips.appliedenergistics2.ItemName=Nome dell'oggetto +gui.tooltips.appliedenergistics2.PowerUnits=Unità di elettricità +gui.tooltips.appliedenergistics2.IOMode=Modalità entrata/uscita +gui.tooltips.appliedenergistics2.CondenserOutput=Condensatore ME - Uscita +gui.tooltips.appliedenergistics2.PartitionStorage=Divisione del deposito +gui.tooltips.appliedenergistics2.Clear=Cancella +gui.tooltips.appliedenergistics2.TrashController=Cancella via Shift / cliccando SPAZIO. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=Modalità bloccando +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=Modalità fabbricazione +gui.tooltips.appliedenergistics2.Trash=Distruggi oggetti +gui.tooltips.appliedenergistics2.MatterBalls=Condensa in Sfere di materia\n%s per oggetto +gui.tooltips.appliedenergistics2.Singularity=Condensa in Singolarità\n%s per oggetto +gui.tooltips.appliedenergistics2.Read=Estrai solo +gui.tooltips.appliedenergistics2.Write=Inserisci solo +gui.tooltips.appliedenergistics2.ReadWrite=Bi-Direzionale +gui.tooltips.appliedenergistics2.AlwaysActive=Sempre attivo +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=Attivo senza segnale +gui.tooltips.appliedenergistics2.ActiveWithSignal=Attivo con segnale +gui.tooltips.appliedenergistics2.ActiveOnPulse=Attivo una volta per impulso +gui.tooltips.appliedenergistics2.EmitLevelsBelow=Emetti quando il livello è minore o uguale al limite. +gui.tooltips.appliedenergistics2.EmitLevelAbove=Emetti quando il livello è sopra al limite. +gui.tooltips.appliedenergistics2.SearchMode_Auto=Auto-cerca +gui.tooltips.appliedenergistics2.SearchMode_Standard=Ricerca normale +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=Sincronizazione NEI automatica +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=Sincronizazione NEI normale +gui.tooltips.appliedenergistics2.SearchMode=Modalità ricerca +gui.tooltips.appliedenergistics2.PartitionStorageHint=Configura divisione basato sugli oggetti depositati ora. +gui.tooltips.appliedenergistics2.ClearSettings=Cancella config/impostazioni +gui.tooltips.appliedenergistics2.Craftable=Fabbricabile +gui.tooltips.appliedenergistics2.MoveWhenEmpty=Muovi a uscita quando vuoto. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=Muovi a uscita quando il lavoro è finito. +gui.tooltips.appliedenergistics2.MoveWhenFull=Muovi a uscita quando pieno. +gui.tooltips.appliedenergistics2.Disabled=Disabilita +gui.tooltips.appliedenergistics2.Enable=Abilita +gui.tooltips.appliedenergistics2.Blocking=Non usare oggetti fabbricati se l'inventario contiene gli oggetti. +gui.tooltips.appliedenergistics2.NonBlocking=Ignora il contenuto dell'inventario. +gui.tooltips.appliedenergistics2.Craft=Funzionalità fabbricazione +gui.tooltips.appliedenergistics2.CraftOnly=Non usare oggetti immagazinati, fabbricali quando esporta oggetti. +gui.tooltips.appliedenergistics2.CraftEither=Usa oggetti immagazinati, o fabbrica gli oggetti quando esporta. +gui.tooltips.appliedenergistics2.LevelType=Tipo di livello +gui.tooltips.appliedenergistics2.LevelType_Energy=Energia +gui.tooltips.appliedenergistics2.LevelType_Item=Oggetti +gui.tooltips.appliedenergistics2.InventoryTweaks=Inventory Tweaks +gui.tooltips.appliedenergistics2.Mod=Mod +gui.tooltips.appliedenergistics2.TerminalStyle=Stile terminale +gui.tooltips.appliedenergistics2.TerminalStyle_Full=Terminale schermo intero +gui.tooltips.appliedenergistics2.TerminalStyle_Tall=Terminale centrato grande +gui.tooltips.appliedenergistics2.TerminalStyle_Small=Terminale centrato piccolo +gui.tooltips.appliedenergistics2.DoesntDespawn=Questo oggetto non scomparirà (de-spawn). +gui.tooltips.appliedenergistics2.EmitterMode=Modalità pietrarossa per fabbricazione +gui.tooltips.appliedenergistics2.CraftViaRedstone=Emette pietrarossa per fabbricare oggetto. +gui.tooltips.appliedenergistics2.EmitWhenCrafting=Emette pietrarossa mentre fabbrica oggetto. +gui.tooltips.appliedenergistics2.ReportInaccessibleItems=Riporta oggetti inaccessibili +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsYes=Si: gli oggetti che non possono essere estratti sono visibili. +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsNo=No: Solo oggetti estrabili sono visibili. + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=Minecraft Joules +gui.appliedenergistics2.units.ic2=Energy Units +gui.appliedenergistics2.units.mekanism=Joules +gui.appliedenergistics2.units.rotarycraft=Watts +gui.appliedenergistics2.units.thermalexpansion=Redstone Flux + +gui.appliedenergistics2.White=Bianco +gui.appliedenergistics2.Orange=Arancione +gui.appliedenergistics2.Magenta=Magenta +gui.appliedenergistics2.LightBlue=Azzurro +gui.appliedenergistics2.Yellow=Giallo +gui.appliedenergistics2.Lime=Lime +gui.appliedenergistics2.Pink=Rosa +gui.appliedenergistics2.Gray=Grigio +gui.appliedenergistics2.LightGray=Grigio Chiaro +gui.appliedenergistics2.Cyan=Ciano +gui.appliedenergistics2.Purple=Viola +gui.appliedenergistics2.Blue=Blu +gui.appliedenergistics2.Brown=Marrone +gui.appliedenergistics2.Green=Verde +gui.appliedenergistics2.Red=Rosso +gui.appliedenergistics2.Black=Nero +gui.appliedenergistics2.Fluix=Fluix + +waila.appliedenergistics2.DeviceOnline=Dispositivo online +waila.appliedenergistics2.DeviceOffline=Dispositivo offline +waila.appliedenergistics2.DeviceMissingChannel=Al dispositivo manca il canale +waila.appliedenergistics2.Locked=Bloccato +waila.appliedenergistics2.Unlocked=Sbloccato +waila.appliedenergistics2.Showing=Mostra +waila.appliedenergistics2.Contains=Contiene +waila.appliedenergistics2.Channels=Canali + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=Cella di immagazzinaggio da 1k ME +item.appliedenergistics2.ItemBasicStorageCell.4k.name=Cella di immagazzinaggio da 4k ME +item.appliedenergistics2.ItemBasicStorageCell.16k.name=Cella di immagazzinaggio da 16k ME +item.appliedenergistics2.ItemBasicStorageCell.64k.name=Cella di immagazzinaggio da 64k ME +item.appliedenergistics2.ItemCreativeStorageCell.name=Cella di immagazzinaggio ME creativa +item.appliedenergistics2.ItemEncodedPattern.name=Modello Codificato +item.appliedenergistics2.ItemViewCell.name=Cella olografica +item.appliedenergistics2.ItemFacade.name=Facciata per cavo + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=Seme di quarzo certus +item.appliedenergistics2.ItemCrystalSeed.Nether.name=Seme di quarzo degli Inferi +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=Seme di fluix +item.appliedenergistics2.ItemMaterial.InvalidType.name=Quest'oggetto è disabilitato. +item.appliedenergistics2.ItemMaterial.AdvCard.name=Scheda avanzata +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=Nucleo di annientamento +item.appliedenergistics2.ItemMaterial.BasicCard.name=Scheda base +item.appliedenergistics2.ItemMaterial.BlankPattern.name=Modello vuoto +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=Processore di calcolo +item.appliedenergistics2.ItemMaterial.CardCapacity.name=Sceda per capacità +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=Scheda vaga +item.appliedenergistics2.ItemMaterial.CardInverter.name=Scheda invertita +item.appliedenergistics2.ItemMaterial.CardRedstone.name=Sceda pietrarossa +item.appliedenergistics2.ItemMaterial.CardSpeed.name=Sceda acceleratore +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=Componente per spazio da 2³ +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=Componente per spazio da 16³ +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=Componente per spazio da 128³ +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=Componente per immagazzinaggio da 1k ME +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=Componente per immagazzinaggio da 4k ME +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=Componente per immagazzinaggio da 16k ME +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=Componente per immagazzinaggio da 64k ME +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=Cristallo di quarzo certus +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=Cristallo di quarzo certus carico +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=Polvere di quarzo certus +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=Custodia per cella ME +item.appliedenergistics2.ItemMaterial.EnderDust.name=Polvere d'omega +item.appliedenergistics2.ItemMaterial.EngProcessor.name=Processore di ingegneria +item.appliedenergistics2.ItemMaterial.Flour.name=Farina +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=Cristallo di Fluix +item.appliedenergistics2.ItemMaterial.FluixDust.name=Polvere di Fluix +item.appliedenergistics2.ItemMaterial.FluixPearl.name=Perla di Fluix +item.appliedenergistics2.ItemMaterial.FormationCore.name=Nucleo di formazione +item.appliedenergistics2.ItemMaterial.GoldDust.name=Polvere d'oro +item.appliedenergistics2.ItemMaterial.IronDust.name=Polvere di ferro +item.appliedenergistics2.ItemMaterial.IronNugget.name=Pepita di ferro +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=Processore logico +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=Processore logico incompleto +item.appliedenergistics2.ItemMaterial.MatterBall.name=Sfera di materia +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=Polvere di quarzo degli Inferi +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=Cristallo di quarzo certus puro +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=Cristallo di fluix puro +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=Cristallo di quarzo degli Inferi puro +item.appliedenergistics2.ItemMaterial.QESingularity.name=Singolarità quantistico incrociato +item.appliedenergistics2.ItemMaterial.Silicon.name=Silicone +item.appliedenergistics2.ItemMaterial.Singularity.name=Singolarità +item.appliedenergistics2.ItemMaterial.Wireless.name=Ricevitore wireless +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=Amplificatori wireless +item.appliedenergistics2.ItemMaterial.WoodenGear.name=Ingranaggio di legno +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=Stampo di ingegneria per incisore +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=Stampo di calcolo per incisore +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=Stampo di logica per incisore +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=Circuito di ingegneria stampato +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=Circuito di calcolo stampato +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=Circuito di logica stampato +item.appliedenergistics2.ItemMaterial.SiliconPress.name=Stampo di silicone per incisore +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=Silicone stampato +item.appliedenergistics2.ItemMaterial.NamePress.name=Stampo di nomi per incisore +item.appliedenergistics2.ItemMaterial.SkyDust.name=Polvere di roccia del cielo +item.appliedenergistics2.ItemMaterial.CardCrafting.name=Scheda di fabbricazione + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=Piano annientatore ME +item.appliedenergistics2.ItemPart.CableAnchor.name=Ancoraggio per cavi +item.appliedenergistics2.ItemPart.CableCovered.name=Cavo comperto ME +item.appliedenergistics2.ItemPart.CableGlass.name=Cavo di vetro ME +item.appliedenergistics2.ItemPart.CableSmart.name=Cavo intelligente ME +item.appliedenergistics2.ItemPart.CableDense.name=Cavo denso ME +item.appliedenergistics2.ItemPart.StorageMonitor.name=Monitor per deposito ME +item.appliedenergistics2.ItemPart.ConversionMonitor.name=Monitor convertitore ME +item.appliedenergistics2.ItemPart.CraftingTerminal.name=Terminale con banco da lavoro ME +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=Pannello illuminato +item.appliedenergistics2.ItemPart.Monitor.name=Pannello illuminato chiaro +item.appliedenergistics2.ItemPart.DarkMonitor.name=Pannello illuminato scuro +item.appliedenergistics2.ItemPart.ExportBus.name=Bus esportatore ME +item.appliedenergistics2.ItemPart.FormationPlane.name=Piano di formazione ME +item.appliedenergistics2.ItemPart.ImportBus.name=Bus importatore ME +item.appliedenergistics2.ItemPart.Interface.name=Interfaccia ME +item.appliedenergistics2.ItemPart.LevelEmitter.name=Emettitore di pietrarossa ME +item.appliedenergistics2.ItemPart.P2PTunnel.name=P2P Tunnel +item.appliedenergistics2.ItemPart.PatternTerminal.name=Terminale per modelli ME +item.appliedenergistics2.ItemPart.QuartzFiber.name=Fibra quarzo +item.appliedenergistics2.ItemPart.StorageBus.name=Bus di immagazzinaggio ME +item.appliedenergistics2.ItemPart.Terminal.name=Terminale ME +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=Bus alternatore inverso ME +item.appliedenergistics2.ItemPart.ToggleBus.name=Bus alternatore ME +item.appliedenergistics2.ItemPart.CraftingMonitor.name=Monitor per fabbricazione ME +item.appliedenergistics2.ItemPart.InterfaceTerminal.name=Terminale con interfaccia ME + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=Cella di immagazzinaggio per spazio da 128³ +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=Cella di immagazzinaggio per spazio da 16³ +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=Cella di immagazzinaggio per spazio da 2³ + +item.appliedenergistics2.ToolCertusQuartzAxe.name=Ascia di quarzo certus +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=Coltello di quarzo certus +item.appliedenergistics2.ToolCertusQuartzHoe.name=Zappa di quarzo certus +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=Piccone di quarzo certus +item.appliedenergistics2.ToolCertusQuartzSpade.name=Pala di quarzo certus +item.appliedenergistics2.ToolCertusQuartzSword.name=Spada di quarzo certus +item.appliedenergistics2.ToolCertusQuartzWrench.name=Chiave inglese di quarzo certus + +item.appliedenergistics2.ToolNetherQuartzAxe.name=Ascia di quarzo degli Inferi +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=Coltello di quarzo degli Inferi +item.appliedenergistics2.ToolNetherQuartzHoe.name=Zappa di quarzo degli Inferi +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=Piccone di quarzo degli Inferi +item.appliedenergistics2.ToolNetherQuartzSpade.name=Pala di quarzo degli Inferi +item.appliedenergistics2.ToolNetherQuartzSword.name=Spada di quarzo degli Inferi +item.appliedenergistics2.ToolNetherQuartzWrench.name=Chiave inglese di quarzo degli Inferi + +item.appliedenergistics2.ItemPaintBall.name=Sfera di vernice +item.appliedenergistics2.ToolPortableCell.name=Cella portabile +item.appliedenergistics2.ToolNetworkTool.name=Attrezzo per sistema +item.appliedenergistics2.ToolChargedStaff.name=Bastone carico +item.appliedenergistics2.ToolEntropyManipulator.name=Manipulatore di entropia +item.appliedenergistics2.ToolMassCannon.name=Cannone di materia +item.appliedenergistics2.ToolMemoryCard.name=Scheda per la memoria +item.appliedenergistics2.ToolColorApplicator.name=Applicatore di colore +item.appliedenergistics2.ToolWirelessTerminal.name=Terminale wireless +item.appliedenergistics2.ToolBiometricCard.name=Scheda biometrica + +item.appliedenergistics2.ToolDebugCard.name=Dev.DebugCard +item.appliedenergistics2.ToolReplicatorCard.name=Dev.ReplicatorCard + +commands.ae2.usage=Comandi forniti da Applied Energistics 2 - usa /ae2 list per una lista, e /ae2 help _____ per aiuto con i comandi. +commands.ae2.permissions=Non hai il permesso di usare questo comando. +commands.ae2.ChunkLogger=Altera tra Chunk Loading e Unloading nel server log. ( OP ) +commands.ae2.ChunkLoggerOn=Chunk Logging è ora attivato +commands.ae2.ChunkLoggerOff=Chunk Logging è ora disattivato +commands.ae2.Supporters=Mostra una lista dei Sostenitori di AE2 + +achievement.ae2.Compass=Cacciatore di meteoriti +achievement.ae2.Compass.desc=Fabbrica una Bussola per meteoriti +achievement.ae2.Presses=Tecnologia sconosciuta +achievement.ae2.Presses.desc=Trova un Stampo per processore +achievement.ae2.SpatialIO=Coordinazione nello spazio +achievement.ae2.SpatialIO.desc=Fabbrica una Porta IO per spazio +achievement.ae2.SpatialIOExplorer=Andando con audacia +achievement.ae2.SpatialIOExplorer.desc=Immagazinati in una cella di immagazzinaggio per spazio +achievement.ae2.StorageCell=Migliore dei bauli +achievement.ae2.StorageCell.desc=Fabbrica una cella di immagazzinaggio +achievement.ae2.IOPort=Mescolamento di celle di immagazzinaggio +achievement.ae2.IOPort.desc=Fabbrica una Porta IO +achievement.ae2.CraftingTerminal=Un tavolo (molto) più grande +achievement.ae2.CraftingTerminal.desc=Fabbrica un Terminale con banco da lavoro +achievement.ae2.PatternTerminal=Maestro della fabbricazione +achievement.ae2.PatternTerminal.desc=Fabbrica un Terminale per modelli +achievement.ae2.ChargedQuartz=Scioccante +achievement.ae2.ChargedQuartz.desc=Trova del Quarzo carico +achievement.ae2.Fluix=Innaturale +achievement.ae2.Fluix.desc=Crea un Cristallo di Fluix +achievement.ae2.Charger=Produzione di Fluix +achievement.ae2.Charger.desc=Fabbrica un Caricatore +achievement.ae2.CrystalGrowthAccelerator=Accellerazione è un eufemismo +achievement.ae2.CrystalGrowthAccelerator.desc=Fabbrica un Acceleratore della crescita di cristalli +achievement.ae2.GlassCable=Connessione di corrente Fluix +achievement.ae2.GlassCable.desc=Fabbrica Cavi di vetro ME +achievement.ae2.Networking1=Apprendista del sistema +achievement.ae2.Networking1.desc=Arriva a 8 canali che usano dispositivi in un sistema. +achievement.ae2.Controller=Centralino sistemante +achievement.ae2.Controller.desc=Fabbrica un Controllore +achievement.ae2.Networking2=Geniere del sistema +achievement.ae2.Networking2.desc=Arriva a 128 canali che usano dispositivi in un sistema. +achievement.ae2.Networking3=Amministratore del sistema +achievement.ae2.Networking3.desc=Arriva a 2048 canali che usano dispositivi in un sistema. +achievement.ae2.P2P=Posto a Posto sistemante +achievement.ae2.P2P.desc=Fabbrica un P2P Tunnel +achievement.ae2.Recursive=Networkzione ricorsivo +achievement.ae2.Recursive.desc=Piazza un'Interfaccia su un Bus di immagazzinaggio. +achievement.ae2.CraftingCPU=Fabbricazione Next Gen +achievement.ae2.CraftingCPU.desc=Fabbrica una Unità di fabbricazione +achievement.ae2.Facade=Estetica del sistema +achievement.ae2.Facade.desc=Fabbrica una Facciata per cavo +achievement.ae2.NetworkTool=Diagnostica del sistema +achievement.ae2.NetworkTool.desc=Fabbrica un Attrezzo per sistema +achievement.ae2.PortableCell=Nomade magazziniere +achievement.ae2.PortableCell.desc=Fabbrica una Cella portabile +achievement.ae2.StorageBus=Potenziale illimitato +achievement.ae2.StorageBus.desc=Fabbrica un Bus di immagazzinaggio +achievement.ae2.QNB=Tunnel quantistico +achievement.ae2.QNB.desc=Crea un Collegamento quantistico + +stat.ae2.ItemsInserted=Oggetti aggiunti al Deposito ME +stat.ae2.ItemsExtracted=Oggetti estratti dal Deposito ME +stat.ae2.TurnedCranks=Manovelle girate diff --git a/src/main/resources/assets/appliedenergistics2/lang/ko_KR.lang b/src/main/resources/assets/appliedenergistics2/lang/ko_KR.lang new file mode 100644 index 00000000..540adb86 --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/ko_KR.lang @@ -0,0 +1,516 @@ +tile.appliedenergistics2.BlockCableBus.name=AE2 케이블 and/or 버스 +tile.appliedenergistics2.BlockCellWorkbench.name=셀 작업대 +tile.appliedenergistics2.BlockCharger.name=충전기 +tile.appliedenergistics2.BlockChest.name=ME 상자 +tile.appliedenergistics2.BlockCondenser.name=물질 응축기 +tile.appliedenergistics2.BlockController.name=ME 제어기 +tile.appliedenergistics2.BlockCrank.name=나무 크랭크 +tile.appliedenergistics2.BlockCreativeEnergyCell.name=크리에이티브 에너지 셀 +tile.appliedenergistics2.BlockDenseEnergyCell.name=조밀한 에너지 셀 +tile.appliedenergistics2.BlockEnergyCell.name=에너지 셀 +tile.appliedenergistics2.BlockDrive.name=ME 드라이브 +tile.appliedenergistics2.BlockEnergyAcceptor.name=에너지 수용기 +tile.appliedenergistics2.BlockGrinder.name=석영 맷돌 +tile.appliedenergistics2.BlockMatrixFrame.name=행렬 프레임 +tile.appliedenergistics2.BlockIOPort.name=ME IO 포트 +tile.appliedenergistics2.BlockInscriber.name=회로 인쇄기 +tile.appliedenergistics2.BlockInterface.name=ME 인터페이스 +tile.appliedenergistics2.BlockQuantumLinkChamber.name=ME 양자 연결기 +tile.appliedenergistics2.BlockQuantumRing.name=ME 양자 고리 +tile.appliedenergistics2.BlockFluix.name=액정 블럭 +tile.appliedenergistics2.BlockQuartz.name=세투스 석영 블럭 +tile.appliedenergistics2.BlockQuartzChiseled.name=조각된 세투스 석영 블럭 +tile.appliedenergistics2.BlockQuartzGlass.name=석영 유리 +tile.appliedenergistics2.BlockQuartzLamp.name=공명상 석영 유리 +tile.appliedenergistics2.BlockQuartzPillar.name=세투스 석영 기둥 +tile.appliedenergistics2.BlockQuartzTorch.name=충전된 석영 설비 +tile.appliedenergistics2.BlockLightDetector.name=빛 감지 설비 +tile.appliedenergistics2.BlockSpatialIOPort.name=시공 IO 포트 +tile.appliedenergistics2.BlockSpatialPylon.name=시공 지시탑 +tile.appliedenergistics2.BlockTinyTNT.name=소형 TNT +tile.appliedenergistics2.BlockVibrationChamber.name=공명실 +tile.appliedenergistics2.BlockWireless.name=ME 무선 액세스 포인트 +tile.appliedenergistics2.OreQuartz.name=세투스 석영 광석 +tile.appliedenergistics2.OreQuartzCharged.name=충전된 세투스 석영 광석 +tile.appliedenergistics2.BlockSecurity.name=ME 보안 단말기 +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=결정 성장 촉진기 +tile.appliedenergistics2.BlockSkyStone.name=천령석 +tile.appliedenergistics2.BlockSkyStone.Block.name=천령석 블럭 +tile.appliedenergistics2.BlockSkyStone.Brick.name=천령석 벽돌 +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=천령석 작은 벽돌 +tile.appliedenergistics2.BlockSkyChest.name=천령석 창고 +tile.appliedenergistics2.BlockSkyChest.Block.name=천령석 블럭 창고 +tile.appliedenergistics2.BlockSkyCompass.name=운석 탐지기 +tile.appliedenergistics2.BlockCraftingMonitor.name=조합 모니터 +tile.appliedenergistics2.BlockCraftingStorage.name=1k 조합법 저장고 +tile.appliedenergistics2.BlockCraftingStorage4k.name=4k 조합법 저장고 +tile.appliedenergistics2.BlockCraftingStorage16k.name=16k 조합법 저장고 +tile.appliedenergistics2.BlockCraftingStorage64k.name=64k 조합법 저장고 +tile.appliedenergistics2.BlockCraftingAccelerator.name=조합 공처리 유닛 +tile.appliedenergistics2.BlockCraftingUnit.name=조합 유닛 +tile.appliedenergistics2.BlockMolecularAssembler.name=분자 조합기 + +// Stairs +tile.appliedenergistics2.ChiseledQuartzStairBlock.name=Chiseled Certus Quartz Stairs +tile.appliedenergistics2.FluixStairBlock.name=Fluix Stairs +tile.appliedenergistics2.QuartzPillarStairBlock.name=Certus Quartz Pillar Stairs +tile.appliedenergistics2.QuartzStairBlock.name=세투스 석영 계단 +tile.appliedenergistics2.SkyStoneBlockStairBlock.name=스카이 스톤 블록 계단 +tile.appliedenergistics2.SkyStoneBrickStairBlock.name=스카이 스톤 벽돌 계단 +tile.appliedenergistics2.SkyStoneSmallBrickStairBlock.name=Sky Stone Small Brick Stairs +tile.appliedenergistics2.SkyStoneStairBlock.name=스카이 스톤 계단 + +chat.appliedenergistics2.ChestCannotReadStorageCell=ME 창고가 셀을 읽을 수 없습니다. +chat.appliedenergistics2.SettingCleared=설정이 초기화 되었습니다. +chat.appliedenergistics2.OutOfRange=무선 신호 범위 밖입니다. +chat.appliedenergistics2.InvalidMachine=알 수 없는/잘못된 기계입니다. +chat.appliedenergistics2.LoadedSettings=설정을 성공적으로 복사했습니다. +chat.appliedenergistics2.DeviceNotPowered=기기의 전력이 부족합니다. +chat.appliedenergistics2.MachineNotPowered=기기가 전력을 받고 있지 않습니다. +chat.appliedenergistics2.CommunicationError=네트워크와 소통하는 데 문제가 발생했습니다. +chat.appliedenergistics2.SavedSettings=설정을 성공적으로 저장했습니다. +chat.appliedenergistics2.AmmoDepleted=Ammo Depleted. +chat.appliedenergistics2.isNowLocked=Monitor is now Locked. +chat.appliedenergistics2.isNowUnlocked=Monitor is now Unlocked. + +itemGroup.appliedenergistics2=응용 에너지학 2 +itemGroup.appliedenergistics2.facades=응용 에너지학 2 - 덮개 + +gui.appliedenergistics2.CraftingTerminal=조합 단말기 +gui.appliedenergistics2.METunnel=ME +gui.appliedenergistics2.ItemTunnel=아이템 +gui.appliedenergistics2.FluidTunnel=액체 +gui.appliedenergistics2.RedstoneTunnel=레드스톤 +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU +gui.appliedenergistics2.RFTunnel=RF +gui.appliedenergistics2.LightTunnel=빛 + +gui.appliedenergistics2.security.extract.name=Withdraw +gui.appliedenergistics2.security.inject.name=Deposit +gui.appliedenergistics2.security.craft.name=Craft +gui.appliedenergistics2.security.build.name=Build +gui.appliedenergistics2.security.security.name=Security + +gui.appliedenergistics2.security.extract.tip=유저는 저장소에서 아이템을 빼갈 수 있습니다. +gui.appliedenergistics2.security.inject.tip=유저는 저장소에 아이템을 집어 넣을 수 있습니다. +gui.appliedenergistics2.security.craft.tip=유저는 자동 조합을 명령할 수 있습니다. +gui.appliedenergistics2.security.build.tip=User can modify the physical structure of the network, and make configuration changes. +gui.appliedenergistics2.security.security.tip=User can access and modify the security terminal of the network. + +gui.appliedenergistics2.Efficiency=효율 +gui.appliedenergistics2.RequiredPower=전력 요구량 +gui.appliedenergistics2.StoredPower=전력 저장량 +gui.appliedenergistics2.MaxPower=최대 전력량 +gui.appliedenergistics2.QuartzCuttingKnife=석영 조각도 +gui.appliedenergistics2.Inscriber=회로 인쇄기 +gui.appliedenergistics2.Wireless=무선 엑세스 포인트 +gui.appliedenergistics2.WirelessTerminal=무선 터미널 +gui.appliedenergistics2.NoPermissions=아무 권한이 선택되지 않음 +gui.appliedenergistics2.SecurityCardEditor=바이오메트릭 카드 에디터 +gui.appliedenergistics2.Encoded=기록됨 +gui.appliedenergistics2.Priority=우선 순위 +gui.appliedenergistics2.StorageBus=스토리지 버스 +gui.appliedenergistics2.EnergyDrain=Passive Drain +gui.appliedenergistics2.Installed=설치됨 +gui.appliedenergistics2.NetworkTool=네트워크 도구 +gui.appliedenergistics2.PowerUsageRate=에너지 사용량 +gui.appliedenergistics2.PowerInputRate=에너지 생산량 +gui.appliedenergistics2.PortableCell=휴대용 셀 +gui.appliedenergistics2.Security=보안 터미널 +gui.appliedenergistics2.CellWorkbench=셀 작업대 +gui.appliedenergistics2.QuantumLinkChamber=ME 양자 연결기 +gui.appliedenergistics2.IOPort=ME IO 포트 +gui.appliedenergistics2.Chest=ME 상자 +gui.appliedenergistics2.Condenser=Matter Condenser +gui.appliedenergistics2.Config=설정 +gui.appliedenergistics2.Drive=ME 드라이브 +gui.appliedenergistics2.ExportBus=ME 반출 버스 +gui.appliedenergistics2.GrindStone=그라인더 +gui.appliedenergistics2.ImportBus=ME 반입 버스 +gui.appliedenergistics2.Interface=ME 인터페이스 +gui.appliedenergistics2.LevelEmitter=ME 레벨 측정기 +gui.appliedenergistics2.Of=Of +gui.appliedenergistics2.Patterns=패턴들 +gui.appliedenergistics2.SpatialIOPort=시공 IO 포트 +gui.appliedenergistics2.StoredEnergy=저장된 전력량 +gui.appliedenergistics2.StoredItems=저장된 아이템 +gui.appliedenergistics2.Terminal=터미널 +gui.appliedenergistics2.InterfaceTerminal=인터페이스 터미널 +gui.appliedenergistics2.InterfaceTerminalHint=인터페이스 터미널에서 보여주거나 숨깁니다 +gui.appliedenergistics2.FormationPlane=Formation Plane +gui.appliedenergistics2.VibrationChamber=진동 발전기 +gui.appliedenergistics2.NetworkDetails=네트워크 더 보기 +gui.appliedenergistics2.StorageCells=ME 스토리지 셀 +gui.appliedenergistics2.IOBuses=ME 반입/반출 버스 +gui.appliedenergistics2.Stores=Stores +gui.appliedenergistics2.BytesUsed=바이트 사용 중 +gui.appliedenergistics2.Types=종류들 +gui.appliedenergistics2.Blank=Blank +gui.appliedenergistics2.Unlinked=연결되지 않음 +gui.appliedenergistics2.Linked=연결됨 +gui.appliedenergistics2.StoredSize=저장된 사이즈 +gui.appliedenergistics2.SkyChest=천령석 창고 +gui.appliedenergistics2.PatternTerminal=패턴 터미널 +gui.appliedenergistics2.CraftingPattern=조합 터미널 +gui.appliedenergistics2.MolecularAssembler=분자 조합기 +gui.appliedenergistics2.ProcessingPattern=패턴 제작하기 +gui.appliedenergistics2.Crafts=다음을 조합: +gui.appliedenergistics2.And=와(과) +gui.appliedenergistics2.Creates=다음으로 조합: +gui.appliedenergistics2.With=와(과) +gui.appliedenergistics2.InWorldCrafting=AE2 월드 내 조합 +gui.appliedenergistics2.inWorldFluix=물 웅덩이에다 1개의 충전된 세투스 석영 아이템을 드롭하고 지옥 석영과 래드스톤 가루를 놓고 기다리세요. +gui.appliedenergistics2.inWorldPurificationCertus=물 웅덩이에다 1개의 세투스 석영 씨앗을 드롭하고 모래를 놓고 기다리세요.; 만들어지는 속도를 가속하시려면 결정 성장 촉진기를 넣으세요. +gui.appliedenergistics2.inWorldPurificationNether=Drop a Nether Quartz Seed made from Nether Quartz Dust and Sand into a puddle of water; to make the process faster add Crystal Growth Accelerators. +gui.appliedenergistics2.inWorldPurificationFluix=Drop a 액정 씨앗 made from 액정 가루 and Sand into a puddle of water; to make the process faster add Crystal Growth Accelerators. +gui.appliedenergistics2.inWorldSingularity=To create drop 1 Singularity and 1 Ender Dust and cause an explosion within range of the items. +gui.appliedenergistics2.ChargedQuartz=Charged Certus Quartz is crafted by inserting an uncharged Certus Quartz Crystal into the Charger, and powering it. +gui.appliedenergistics2.ChargedQuartzFind=Charged Certus Quartz can be found in world semi rarely, it appears similar to normal Certus Quartz, except it sparkles. +gui.appliedenergistics2.OfSecondOutput=% Chance for second output. +gui.appliedenergistics2.NoSecondOutput=No Secondary Output +gui.appliedenergistics2.SelectAmount=Select Amount +gui.appliedenergistics2.CopyMode=복사 모드 +gui.appliedenergistics2.CopyModeDesc=Controls if the contents of the configuration pane are cleared when you remove the cell. +gui.appliedenergistics2.Next=다음 +gui.appliedenergistics2.Lumen=Lumen +gui.appliedenergistics2.Empty=Empty +gui.appliedenergistics2.Stored=저장됨 +gui.appliedenergistics2.Cancel=취소 +gui.appliedenergistics2.Crafting=제작 +gui.appliedenergistics2.Scheduled=예정됨 +gui.appliedenergistics2.CraftingStatus=제작 상황 +gui.appliedenergistics2.FromStorage=활성화 +gui.appliedenergistics2.ToCraft=제작하기 +gui.appliedenergistics2.CraftingPlan=Crafting Plan +gui.appliedenergistics2.Automatic=자동 +gui.appliedenergistics2.Start=시작 +gui.appliedenergistics2.Missing=부족 +gui.appliedenergistics2.Bytes=저장소 +gui.appliedenergistics2.Simulation=시뮬레이션 +gui.appliedenergistics2.CoProcessors=Co Processors +gui.appliedenergistics2.CraftingCPU=제작용 CPU +gui.appliedenergistics2.NoCraftingCPUs=제작용 CPU를 사용할 수 없습니다. +gui.appliedenergistics2.CalculatingWait=계산중입니다... +gui.appliedenergistics2.Clean=Clean +gui.appliedenergistics2.InvalidPattern=알 수 없는 패턴 +gui.appliedenergistics2.Range=범위 +gui.appliedenergistics2.TransparentFacades=Transparent Facades +gui.appliedenergistics2.TransparentFacadesHint=Controls visibility of facades while the network tool is on your toolbar. +gui.appliedenergistics2.CPUs=CPU +gui.appliedenergistics2.NoCraftingJobs=No Crafting Job Active +gui.appliedenergistics2.FacadeCrafting=덮개 제작 +gui.appliedenergistics2.inWorldCraftingPresses=Crafting Presses are found in the center of meteorites which can be found in around the world, they can be located by using a meteorite compass. +gui.appliedenergistics2.Included=Included +gui.appliedenergistics2.Excluded=Excluded +gui.appliedenergistics2.Partitioned=Partitioned +gui.appliedenergistics2.Precise=Precise +gui.appliedenergistics2.Fuzzy=Fuzzy + +gui.tooltips.appliedenergistics2.Stash=Store Items +gui.tooltips.appliedenergistics2.StashDesc=Return items on the crafting grid to network storage. +gui.tooltips.appliedenergistics2.Substitutions=Ore-Dict Substitutions +gui.tooltips.appliedenergistics2.SubstitutionsDesc=Edit substitution options for input components. +gui.tooltips.appliedenergistics2.SubstitutionsOn=Substitutions Enabled +gui.tooltips.appliedenergistics2.SubstitutionsOff=Substitutions Disabled +gui.tooltips.appliedenergistics2.Encode=Encode Pattern +gui.tooltips.appliedenergistics2.EncodeDescription=Write the entered pattern to the current encoded pattern, or to available blank pattern. +gui.tooltips.appliedenergistics2.FuzzyMode=Fuzzy Comparison +gui.tooltips.appliedenergistics2.FZPercent_25=Split Damage at 25% +gui.tooltips.appliedenergistics2.FZPercent_50=Split Damage at 50% +gui.tooltips.appliedenergistics2.FZPercent_75=Split Damage at 75% +gui.tooltips.appliedenergistics2.FZPercent_99=Split Damage at 99% +gui.tooltips.appliedenergistics2.SortOrder=Sort Order +gui.tooltips.appliedenergistics2.SortBy=Sort By +gui.tooltips.appliedenergistics2.FZIgnoreAll=Match Any +gui.tooltips.appliedenergistics2.TransferDirection=Transfer Direction +gui.tooltips.appliedenergistics2.TransferToNetwork=Transfer data to Network +gui.tooltips.appliedenergistics2.TransferToStorageCell=Transfer data to Storage Cell +gui.tooltips.appliedenergistics2.ToggleSortDirection=Toggle sorting direction +gui.tooltips.appliedenergistics2.StoredItems=Stored Items +gui.tooltips.appliedenergistics2.StoredCraftable=Stored / Craftable +gui.tooltips.appliedenergistics2.View=View +gui.tooltips.appliedenergistics2.RedstoneMode=Redstone Mode +gui.tooltips.appliedenergistics2.OperationMode=Operation Mode +gui.tooltips.appliedenergistics2.NumberOfItems=Number of items +gui.tooltips.appliedenergistics2.ItemName=Item name +gui.tooltips.appliedenergistics2.PowerUnits=Power Units +gui.tooltips.appliedenergistics2.IOMode=Input/Output Mode +gui.tooltips.appliedenergistics2.CondenserOutput=ME Condenser - Output +gui.tooltips.appliedenergistics2.PartitionStorage=Partition Storage +gui.tooltips.appliedenergistics2.Clear=Clear +gui.tooltips.appliedenergistics2.TrashController=Deletion via Shift / Space Clicking. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=Blocking Mode +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=Crafting Mode +gui.tooltips.appliedenergistics2.Trash=Destroy Items +gui.tooltips.appliedenergistics2.MatterBalls=Condense Into Matter Balls\n%s per item +gui.tooltips.appliedenergistics2.Singularity=Condense Into Singularities\n%s per item +gui.tooltips.appliedenergistics2.Read=Extract Only +gui.tooltips.appliedenergistics2.Write=Insert Only +gui.tooltips.appliedenergistics2.ReadWrite=Bi-Directional +gui.tooltips.appliedenergistics2.AlwaysActive=Always active +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=Active without signal +gui.tooltips.appliedenergistics2.ActiveWithSignal=Active with signal +gui.tooltips.appliedenergistics2.ActiveOnPulse=Activate once per pulse +gui.tooltips.appliedenergistics2.EmitLevelsBelow=Emit when levels are below or equal to limit. +gui.tooltips.appliedenergistics2.EmitLevelAbove=Emit when levels are above or equal to limit. +gui.tooltips.appliedenergistics2.SearchMode_Auto=Auto Search +gui.tooltips.appliedenergistics2.SearchMode_Standard=Standard Search +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=NEI Syncronized Auto +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=NEI Syncronized Standard +gui.tooltips.appliedenergistics2.SearchMode=Search Box Mode +gui.tooltips.appliedenergistics2.PartitionStorageHint=Configures Partition based on currently stored items. +gui.tooltips.appliedenergistics2.ClearSettings=Clear Config/Settings +gui.tooltips.appliedenergistics2.Craftable=Craftable +gui.tooltips.appliedenergistics2.MoveWhenEmpty=Move to output when empty. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=Move to output when work is done. +gui.tooltips.appliedenergistics2.MoveWhenFull=Move to output when full. +gui.tooltips.appliedenergistics2.Disabled=Disabled +gui.tooltips.appliedenergistics2.Enable=Enabled +gui.tooltips.appliedenergistics2.Blocking=Do not push crafing items if inventory contains items. +gui.tooltips.appliedenergistics2.NonBlocking=Ignore the contents of the target inventory. +gui.tooltips.appliedenergistics2.Craft=Crafting Behavior +gui.tooltips.appliedenergistics2.CraftOnly=Do not use stocked items, only craft items while exporting. +gui.tooltips.appliedenergistics2.CraftEither=Use stocked items, or craft items while exporting. +gui.tooltips.appliedenergistics2.LevelType=Level Type +gui.tooltips.appliedenergistics2.LevelType_Energy=Energy +gui.tooltips.appliedenergistics2.LevelType_Item=Item +gui.tooltips.appliedenergistics2.InventoryTweaks=인벤토리 트윅 +gui.tooltips.appliedenergistics2.Mod=모드 +gui.tooltips.appliedenergistics2.TerminalStyle=Terminal Style +gui.tooltips.appliedenergistics2.TerminalStyle_Full=Full Screen Terminal +gui.tooltips.appliedenergistics2.TerminalStyle_Tall=Tall Centered Terminal +gui.tooltips.appliedenergistics2.TerminalStyle_Small=Small Centered Terminal +gui.tooltips.appliedenergistics2.DoesntDespawn=This item won't de-spawn. +gui.tooltips.appliedenergistics2.EmitterMode=Crafting Emitter Mode +gui.tooltips.appliedenergistics2.CraftViaRedstone=Emit Redstone to craft item. +gui.tooltips.appliedenergistics2.EmitWhenCrafting=Emit Redstone while item is crafting. +gui.tooltips.appliedenergistics2.ReportInaccessibleItems=Report Inaccessible Items +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsYes=Yes: Items that cannot be extracted will be visible. +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsNo=No: Only extractable items will be visible. + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=마인크래프트 줄(MJ) +gui.appliedenergistics2.units.ic2=에너지 단위(EU) +gui.appliedenergistics2.units.mekanism=줄(J) +gui.appliedenergistics2.units.rotarycraft=와트(W) +gui.appliedenergistics2.units.thermalexpansion=레드스톤 유율(RF) + +gui.appliedenergistics2.White=하양 +gui.appliedenergistics2.Orange=주황 +gui.appliedenergistics2.Magenta=자홍색 +gui.appliedenergistics2.LightBlue=밝은 파랑 +gui.appliedenergistics2.Yellow=노랑 +gui.appliedenergistics2.Lime=연두색 +gui.appliedenergistics2.Pink=분홍색 +gui.appliedenergistics2.Gray=회색 +gui.appliedenergistics2.LightGray=연회색 +gui.appliedenergistics2.Cyan=청록색 +gui.appliedenergistics2.Purple=보라 +gui.appliedenergistics2.Blue=파랑 +gui.appliedenergistics2.Brown=갈색 +gui.appliedenergistics2.Green=초록색 +gui.appliedenergistics2.Red=빨강 +gui.appliedenergistics2.Black=검정 +gui.appliedenergistics2.Fluix=액정 + +waila.appliedenergistics2.DeviceOnline=장치 켜짐 +waila.appliedenergistics2.DeviceOffline=장치 꺼짐 +waila.appliedenergistics2.DeviceMissingChannel=Device Missing Channel +waila.appliedenergistics2.Locked=잠겨있음 +waila.appliedenergistics2.Unlocked=잠겨있지 않음 +waila.appliedenergistics2.Showing=Showing +waila.appliedenergistics2.Contains=Contains +waila.appliedenergistics2.Channels=채널 + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=1k ME 저장용 셀 +item.appliedenergistics2.ItemBasicStorageCell.4k.name=4k ME 저장용 셀 +item.appliedenergistics2.ItemBasicStorageCell.16k.name=16k ME 저장용 셀 +item.appliedenergistics2.ItemBasicStorageCell.64k.name=64k ME 저장용 셀 +item.appliedenergistics2.ItemCreativeStorageCell.name=크리에이티브 ME 저장용 셀 +item.appliedenergistics2.ItemEncodedPattern.name=쓰여진 패턴 +item.appliedenergistics2.ItemViewCell.name=View Cell +item.appliedenergistics2.ItemFacade.name=케이블 덮개 + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=세투스 석영 씨앗 +item.appliedenergistics2.ItemCrystalSeed.Nether.name=지옥 석영 씨앗 +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=액정 씨앗 +item.appliedenergistics2.ItemMaterial.InvalidType.name=이 아이템은 비활성화됨 +item.appliedenergistics2.ItemMaterial.AdvCard.name=Advanced Card +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=Annihilation Core +item.appliedenergistics2.ItemMaterial.BasicCard.name=기본 카드 +item.appliedenergistics2.ItemMaterial.BlankPattern.name=빈 패턴 +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=Calculation Processor +item.appliedenergistics2.ItemMaterial.CardCapacity.name=Capacity Card +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=Fuzzy Card +item.appliedenergistics2.ItemMaterial.CardInverter.name=Inverter Card +item.appliedenergistics2.ItemMaterial.CardRedstone.name=레드스톤 카드 +item.appliedenergistics2.ItemMaterial.CardSpeed.name=Acceleration Card +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=2³ 시공 요소 +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=16³ 시공 요소 +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=128³ 시공 요소 +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=1k ME 저장 요소 +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=4k ME 저장 요소 +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=16k ME 저장 요소 +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=64k ME 저장 요소 +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=세투스 석영 결정체 +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=충전된 세투스 석영 결정체 +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=세투스 석영 가루 +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=빈 ME 저장 셀 +item.appliedenergistics2.ItemMaterial.EnderDust.name=엔더 가루 +item.appliedenergistics2.ItemMaterial.EngProcessor.name=공학 처리기 +item.appliedenergistics2.ItemMaterial.Flour.name=Flour +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=액정 결정체 +item.appliedenergistics2.ItemMaterial.FluixDust.name=액정 가루 +item.appliedenergistics2.ItemMaterial.FluixPearl.name=액정 진주 +item.appliedenergistics2.ItemMaterial.FormationCore.name=형성 코어 +item.appliedenergistics2.ItemMaterial.GoldDust.name=금 가루 +item.appliedenergistics2.ItemMaterial.IronDust.name=철 가루 +item.appliedenergistics2.ItemMaterial.IronNugget.name=철 조각 +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=논리 처리기 +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=미완성된 논리 처리기 +item.appliedenergistics2.ItemMaterial.MatterBall.name=물질 공 +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=지옥 석영 가루 +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=순수한 세투스 석영 결정체 +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=순수한 액정 결정체 +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=순수한 지옥 석영 결정체 +item.appliedenergistics2.ItemMaterial.QESingularity.name=양자얽힘 특이점 +item.appliedenergistics2.ItemMaterial.Silicon.name=실리콘 +item.appliedenergistics2.ItemMaterial.Singularity.name=특이점 +item.appliedenergistics2.ItemMaterial.Wireless.name=무선 수신기 +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=무선 기지국 +item.appliedenergistics2.ItemMaterial.WoodenGear.name=나무 톱니바퀴 +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=공학 회로 프레스 +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=계산 회로 프레스 +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=논리 회로 프레스 +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=인쇄된 공학 회로 +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=인쇄된 계산 회로 +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=인쇄된 논리 회로 +item.appliedenergistics2.ItemMaterial.SiliconPress.name=실리콘 프레스 +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=인쇄된 실리콘 +item.appliedenergistics2.ItemMaterial.NamePress.name=이름 프레스 +item.appliedenergistics2.ItemMaterial.SkyDust.name=천령석 가루 +item.appliedenergistics2.ItemMaterial.CardCrafting.name=조합 카드 + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=ME 소멸 평면 +item.appliedenergistics2.ItemPart.CableAnchor.name=케이블 앵커 +item.appliedenergistics2.ItemPart.CableCovered.name=ME 차폐 케이블 +item.appliedenergistics2.ItemPart.CableGlass.name=ME 유리 케이블 +item.appliedenergistics2.ItemPart.CableSmart.name=ME 스마트 케이블 +item.appliedenergistics2.ItemPart.CableDense.name=ME 조밀 케이블 +item.appliedenergistics2.ItemPart.StorageMonitor.name=ME 저장고 모니터 +item.appliedenergistics2.ItemPart.ConversionMonitor.name=ME 변환 모니터 +item.appliedenergistics2.ItemPart.CraftingTerminal.name=ME 조합 단말기 +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=조명판 +item.appliedenergistics2.ItemPart.Monitor.name=밝은 조명판 +item.appliedenergistics2.ItemPart.DarkMonitor.name=어두운 조명판 +item.appliedenergistics2.ItemPart.ExportBus.name=ME Export 버스 +item.appliedenergistics2.ItemPart.FormationPlane.name=ME 생성 평면 +item.appliedenergistics2.ItemPart.ImportBus.name=ME 입력 버스 +item.appliedenergistics2.ItemPart.Interface.name=ME 인터페이스 +item.appliedenergistics2.ItemPart.LevelEmitter.name=ME 레벨 측정기 +item.appliedenergistics2.ItemPart.P2PTunnel.name=P2P 터널 +item.appliedenergistics2.ItemPart.PatternTerminal.name=ME 패턴 터미널 +item.appliedenergistics2.ItemPart.QuartzFiber.name=Quartz Fiber +item.appliedenergistics2.ItemPart.StorageBus.name=ME 저장 요소 +item.appliedenergistics2.ItemPart.Terminal.name=ME 터미널 +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=ME 반전된 토글 버스 +item.appliedenergistics2.ItemPart.ToggleBus.name=ME 토글 버스 +item.appliedenergistics2.ItemPart.CraftingMonitor.name=ME 제작 과정 모니터 +item.appliedenergistics2.ItemPart.InterfaceTerminal.name=ME 인터페이스 터미널 + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=128³ 시공 셀 +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=16³ 시공 셀 +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=2³ 시공 셀 + +item.appliedenergistics2.ToolCertusQuartzAxe.name=세투스 석영 도끼 +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=세투스 석영 커터칼 +item.appliedenergistics2.ToolCertusQuartzHoe.name=세투스 석영 괭이 +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=세투스 석영 곡괭이 +item.appliedenergistics2.ToolCertusQuartzSpade.name=세투스 석영 삽 +item.appliedenergistics2.ToolCertusQuartzSword.name=세투스 석영 검 +item.appliedenergistics2.ToolCertusQuartzWrench.name=세투스 석영 렌치 + +item.appliedenergistics2.ToolNetherQuartzAxe.name=지옥 석영 도끼 +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=지옥 석영 커터칼 +item.appliedenergistics2.ToolNetherQuartzHoe.name=지옥 석영 괭이 +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=지옥 석영 곡괭이 +item.appliedenergistics2.ToolNetherQuartzSpade.name=지옥 석영 삽 +item.appliedenergistics2.ToolNetherQuartzSword.name=지옥 석영 검 +item.appliedenergistics2.ToolNetherQuartzWrench.name=지옥 석영 렌치 + +item.appliedenergistics2.ItemPaintBall.name=페인트 공 +item.appliedenergistics2.ToolPortableCell.name=휴대용 셀 +item.appliedenergistics2.ToolNetworkTool.name=네트워크 도구 +item.appliedenergistics2.ToolChargedStaff.name=충전된 스태프 +item.appliedenergistics2.ToolEntropyManipulator.name=Entropy Manipulator +item.appliedenergistics2.ToolMassCannon.name=메터 캐논 +item.appliedenergistics2.ToolMemoryCard.name=메모리 카드 +item.appliedenergistics2.ToolColorApplicator.name=Color Applicator +item.appliedenergistics2.ToolWirelessTerminal.name무선 터미널 +item.appliedenergistics2.ToolBiometricCard.name=바이오메트릭 카드 + +item.appliedenergistics2.ToolDebugCard.name=Dev.DebugCard +item.appliedenergistics2.ToolReplicatorCard.name=Dev.ReplicatorCard + +commands.ae2.usage=Commands provided by Applied Energistics 2 - use /ae2 list for a list, and /ae2 help _____ for help with a command. +commands.ae2.permissions=You do not have adequate permissions to run this command. +commands.ae2.ChunkLogger=Toggles Chunk Loading and unloading to the server log. ( OP ) +commands.ae2.ChunkLoggerOn=청크 로깅이 켜졌습니다 +commands.ae2.ChunkLoggerOff=청크 로깅이 꺼졌습니다 +commands.ae2.Supporters=Displays a list of AE2 Supporters + +achievement.ae2.Compass=Meteorite Hunter +achievement.ae2.Compass.desc=Craft a Meteorite Compass +achievement.ae2.Presses=Unknown Technology +achievement.ae2.Presses.desc=Find a Processor Press +achievement.ae2.SpatialIO=Spatial Coordination +achievement.ae2.SpatialIO.desc=Craft a Spatial IO Port +achievement.ae2.SpatialIOExplorer=To boldly go +achievement.ae2.SpatialIOExplorer.desc=Get stored in a spatial storage cell +achievement.ae2.StorageCell=Better Then Chests +achievement.ae2.StorageCell.desc=Craft a Storage Cell +achievement.ae2.IOPort=Storage Cell Shuffle +achievement.ae2.IOPort.desc=Craft a IO Port +achievement.ae2.CraftingTerminal=A (Much) Bigger Table +achievement.ae2.CraftingTerminal.desc=Craft a Crafting Terminal +achievement.ae2.PatternTerminal=Crafting Maestro +achievement.ae2.PatternTerminal.desc=Craft a Pattern Terminal +achievement.ae2.ChargedQuartz=Shocking +achievement.ae2.ChargedQuartz.desc=Find Charged Quartz +achievement.ae2.Fluix=Unnatural +achievement.ae2.Fluix.desc=Create Fluix Crystals +achievement.ae2.Charger=Fluix Production +achievement.ae2.Charger.desc=Craft a Charger +achievement.ae2.CrystalGrowthAccelerator=Accelerator is an understatement +achievement.ae2.CrystalGrowthAccelerator.desc=Craft a Crystal Growth Accelerator +achievement.ae2.GlassCable=유동 에너지 연결 +achievement.ae2.GlassCable.desc=ME 유리 케이블을 제작 +achievement.ae2.Networking1=Network Apprentice +achievement.ae2.Networking1.desc=Reach 8 channel using devices on a network. +achievement.ae2.Controller=Networking Switchboard +achievement.ae2.Controller.desc=제어기를 제작 +achievement.ae2.Networking2=네트워크 엔지니어 +achievement.ae2.Networking2.desc=Reach 128 channel using devices on a network. +achievement.ae2.Networking3=Network Administrator +achievement.ae2.Networking3.desc=Reach 2048 channel using devices on a network. +achievement.ae2.P2P=Point to Point Networking +achievement.ae2.P2P.desc=Craft a P2P Tunnel +achievement.ae2.Recursive=Recursive Networking +achievement.ae2.Recursive.desc=Place a Interface on a storage Bus. +achievement.ae2.CraftingCPU=Next Gen Crafting +achievement.ae2.CraftingCPU.desc=Craft a Crafting Unit +achievement.ae2.Facade=Network Aesthetics +achievement.ae2.Facade.desc=Craft a Cable Facade +achievement.ae2.NetworkTool=Network Diagnostics +achievement.ae2.NetworkTool.desc=Craft a Network Tool +achievement.ae2.PortableCell=Storage Nomad +achievement.ae2.PortableCell.desc=Craft a Portable Cell +achievement.ae2.StorageBus=Limitless Potential +achievement.ae2.StorageBus.desc=Craft a Storage Bus +achievement.ae2.QNB=Quantum Tunneling +achievement.ae2.QNB.desc=Craft a Quantum Link + +stat.ae2.ItemsInserted=Items added to ME Storage +stat.ae2.ItemsExtracted=Items extracted from ME Storage +stat.ae2.TurnedCranks=Turned Cranks diff --git a/src/main/resources/assets/appliedenergistics2/lang/pt_BR.lang b/src/main/resources/assets/appliedenergistics2/lang/pt_BR.lang new file mode 100644 index 00000000..ade83271 --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/pt_BR.lang @@ -0,0 +1,506 @@ +tile.appliedenergistics2.BlockCableBus.name=Cabos e/ou Barramentos do AE2 +tile.appliedenergistics2.BlockCellWorkbench.name=Bancada de Células +tile.appliedenergistics2.BlockCharger.name=Carregador +tile.appliedenergistics2.BlockChest.name=Báu ME +tile.appliedenergistics2.BlockCondenser.name=Condensador de Matéria +tile.appliedenergistics2.BlockController.name=Controlador ME +tile.appliedenergistics2.BlockCrank.name=Manivela de Madeira +tile.appliedenergistics2.BlockCreativeEnergyCell.name=Célula Criativa de Energia +tile.appliedenergistics2.BlockDenseEnergyCell.name=Célula Densa de Energia +tile.appliedenergistics2.BlockEnergyCell.name=Célula de Energia +tile.appliedenergistics2.BlockDrive.name=Acionador ME +tile.appliedenergistics2.BlockEnergyAcceptor.name=Aceitador de Energia +tile.appliedenergistics2.BlockGrinder.name=Rebolo de Quartzo +tile.appliedenergistics2.BlockMatrixFrame.name=Armação de Matriz +tile.appliedenergistics2.BlockIOPort.name=Porta de Entrada-Saída ME +tile.appliedenergistics2.BlockInscriber.name=Inscritor +tile.appliedenergistics2.BlockInterface.name=Interface ME +tile.appliedenergistics2.BlockQuantumLinkChamber.name=Câmara de Ligação Quântica ME +tile.appliedenergistics2.BlockQuantumRing.name=Anel Quântico ME +tile.appliedenergistics2.BlockFluix.name=Bloco de Fluix +tile.appliedenergistics2.BlockQuartz.name=Bloco de Quartzo Certus +tile.appliedenergistics2.BlockQuartzChiseled.name=Bloco de Quartzo Certus Cinzelado +tile.appliedenergistics2.BlockQuartzGlass.name=Vidro de Quartzo +tile.appliedenergistics2.BlockQuartzLamp.name=Vidro Vibrante de Quartzo +tile.appliedenergistics2.BlockQuartzPillar.name=Pilar de Quartzo Certus +tile.appliedenergistics2.BlockQuartzTorch.name=Instalação de Quartzo Carregado +tile.appliedenergistics2.BlockLightDetector.name=Instalação Detectora de Luz +tile.appliedenergistics2.BlockSpatialIOPort.name=Porta Entrada-Saída Espacial +tile.appliedenergistics2.BlockSpatialPylon.name=Pilão Espacial +tile.appliedenergistics2.BlockTinyTNT.name=TNT Minúscula +tile.appliedenergistics2.BlockVibrationChamber.name=Câmara de Vibração +tile.appliedenergistics2.BlockWireless.name=Ponto de Acesso Sem Fio ME +tile.appliedenergistics2.OreQuartz.name=Minério de Quartzo Certus +tile.appliedenergistics2.OreQuartzCharged.name=Minério de Quartzo Certus Carregado +tile.appliedenergistics2.BlockSecurity.name=Terminal de Segurança ME +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=Acelerador de Crescimento de Cristais +tile.appliedenergistics2.BlockSkyStone.name=Pedra do Céu +tile.appliedenergistics2.BlockSkyStone.Block.name=Bloco de Pedra do Céu +tile.appliedenergistics2.BlockSkyStone.Brick.name=Tijolos de Pedra do Céu +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=Tijolos Pequenos de Pedra do Céu +tile.appliedenergistics2.BlockSkyChest.name=Baú de Pedra do Céu +tile.appliedenergistics2.BlockSkyChest.Block.name=Baú de Bloco de Pedra do Céu +tile.appliedenergistics2.BlockSkyCompass.name=Bússola de Meteoritos +tile.appliedenergistics2.BlockCraftingMonitor.name=Monitor de Fabricação +tile.appliedenergistics2.BlockCraftingStorage.name=Armazenamento de Fabricação de 1k +tile.appliedenergistics2.BlockCraftingStorage4k.name=Armazenamento de Fabricação de 4k +tile.appliedenergistics2.BlockCraftingStorage16k.name=Armazenamento de Fabricação de 16k +tile.appliedenergistics2.BlockCraftingStorage64k.name=Armazenamento de Fabricação de 64k +tile.appliedenergistics2.BlockCraftingAccelerator.name=Unidade de Co-Processamento de Fabricação +tile.appliedenergistics2.BlockCraftingUnit.name=Unidade de Fabricação +tile.appliedenergistics2.BlockMolecularAssembler.name=Montador Molecular + +chat.appliedenergistics2.ChestCannotReadStorageCell=Baú ME não consegue ler a célula de armazenamento. +chat.appliedenergistics2.SettingCleared=Configuração limpa. +chat.appliedenergistics2.OutOfRange=Fora de área do sinal +chat.appliedenergistics2.InvalidMachine=Máquina inválida. +chat.appliedenergistics2.LoadedSettings=Configurações carregadas com sucesso. +chat.appliedenergistics2.DeviceNotPowered=Dispositivo está com baixa energia. +chat.appliedenergistics2.MachineNotPowered=Máquina não está sendo alimentada. +chat.appliedenergistics2.CommunicationError=Erro comunicando com a rede. +chat.appliedenergistics2.SavedSettings=Configurações salvas com sucesso. +chat.appliedenergistics2.AmmoDepleted=Munição depletada. +chat.appliedenergistics2.isNowLocked=O monitor agora está Bloqueado. +chat.appliedenergistics2.isNowUnlocked=O monitor agora está Desbloqueado. + +itemGroup.appliedenergistics2=Applied Energistics 2 +itemGroup.appliedenergistics2.facades=Applied Energistics 2 - Fachadas + +gui.appliedenergistics2.CraftingTerminal=Terminal de Fabricação +gui.appliedenergistics2.METunnel=ME +gui.appliedenergistics2.ItemTunnel=Item +gui.appliedenergistics2.FluidTunnel=Fluido +gui.appliedenergistics2.RedstoneTunnel=Redstone +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU +gui.appliedenergistics2.RFTunnel=RF +gui.appliedenergistics2.LightTunnel=Luz + +gui.appliedenergistics2.security.extract.name=Retirar +gui.appliedenergistics2.security.inject.name=Depositar +gui.appliedenergistics2.security.craft.name=Fabricar +gui.appliedenergistics2.security.build.name=Construir +gui.appliedenergistics2.security.security.name=Segurança + +gui.appliedenergistics2.security.extract.tip=O usuário tem permissão para remover itens do armazernamento. +gui.appliedenergistics2.security.inject.tip=O usuário tem permissão para guardar novos itens no armazenamento +gui.appliedenergistics2.security.craft.tip=O usuário pode iniciar novos processos de fabricação. +gui.appliedenergistics2.security.build.tip=O usuário pode modificar a estutura física da rede, e fazer mudanças nas configurações. +gui.appliedenergistics2.security.security.tip=O usuário pode acessar e modificar o terminal de segurança da rede. + +gui.appliedenergistics2.Efficiency=Eficiência +gui.appliedenergistics2.RequiredPower=Poder Requerido +gui.appliedenergistics2.StoredPower=Poder Armazenado +gui.appliedenergistics2.MaxPower=Poder Máximo +gui.appliedenergistics2.QuartzCuttingKnife=Faca de Corte de Quartzo +gui.appliedenergistics2.Inscriber=Inscritor +gui.appliedenergistics2.Wireless=Ponto de Acesso Sem Fio +gui.appliedenergistics2.WirelessTerminal=Term. Sem Fio +gui.appliedenergistics2.NoPermissions=Sem Permissões Selecionadas +gui.appliedenergistics2.SecurityCardEditor=Editor de Cartão Biométrico +gui.appliedenergistics2.Encoded=Codificado +gui.appliedenergistics2.Priority=Prioridade +gui.appliedenergistics2.StorageBus=Barramento de Armazenamento +gui.appliedenergistics2.EnergyDrain=Drenagem Passiva +gui.appliedenergistics2.Installed=Instalado +gui.appliedenergistics2.NetworkTool=Ferramenta de Rede +gui.appliedenergistics2.PowerUsageRate=Uso de Energia +gui.appliedenergistics2.PowerInputRate=Geração de Energia +gui.appliedenergistics2.PortableCell=Célula Portátil +gui.appliedenergistics2.Security=Term. de Segurança +gui.appliedenergistics2.CellWorkbench=Bancada de Células +gui.appliedenergistics2.QuantumLinkChamber=Câmara de Ligação Quântica +gui.appliedenergistics2.IOPort=Porta de ES ME +gui.appliedenergistics2.Chest=Baú ME +gui.appliedenergistics2.Condenser=Condensador de Matéria +gui.appliedenergistics2.Config=Config +gui.appliedenergistics2.Drive=Acionador ME +gui.appliedenergistics2.ExportBus=Barramento de Exportação ME +gui.appliedenergistics2.GrindStone=Rebolo +gui.appliedenergistics2.ImportBus=Barramento de Importação ME +gui.appliedenergistics2.Interface=Interface ME +gui.appliedenergistics2.LevelEmitter=Emissor de Nível ME +gui.appliedenergistics2.Of=De +gui.appliedenergistics2.Patterns=Padrões +gui.appliedenergistics2.SpatialIOPort=Porta de ES Espacial +gui.appliedenergistics2.StoredEnergy=Energia Armazenada +gui.appliedenergistics2.StoredItems=Itens Armazenados +gui.appliedenergistics2.Terminal=Terminal +gui.appliedenergistics2.InterfaceTerminal=Terminal de Interface +gui.appliedenergistics2.InterfaceTerminalHint=Mostrar ou Esconder no Terminal de Interface +gui.appliedenergistics2.FormationPlane=Plano de Formação +gui.appliedenergistics2.VibrationChamber=Câmara de Vibração +gui.appliedenergistics2.NetworkDetails=Detalhes de Rede +gui.appliedenergistics2.StorageCells=Células de Armazenamento ME +gui.appliedenergistics2.IOBuses=Barramento de Ex/Importação ME +gui.appliedenergistics2.Stores=Guarda +gui.appliedenergistics2.BytesUsed=Bytes Usados +gui.appliedenergistics2.Types=Tipos +gui.appliedenergistics2.Blank=Branco +gui.appliedenergistics2.Unlinked=Não Conectado +gui.appliedenergistics2.Linked=Conectado +gui.appliedenergistics2.StoredSize=Tamanho Armazenado +gui.appliedenergistics2.SkyChest=Baú de Pedra do Céu +gui.appliedenergistics2.PatternTerminal=Terminal de Padrões +gui.appliedenergistics2.CraftingPattern=Padrão de Fabricação +gui.appliedenergistics2.MolecularAssembler=Montador Molecular +gui.appliedenergistics2.ProcessingPattern=Processando Padrão +gui.appliedenergistics2.Crafts=Receitas +gui.appliedenergistics2.And=e +gui.appliedenergistics2.Creates=Cria +gui.appliedenergistics2.With=com +gui.appliedenergistics2.InWorldCrafting=Receita No Mundo AE2 +gui.appliedenergistics2.inWorldFluix=Jogue um Quartzo Certus Carregado + 1 Quartzo do Nether + Pó de Redstone em uma poça um perto do outro e espere um momento para receber 2 Cristais Fluix. +gui.appliedenergistics2.inWorldPurificationCertus=Jogue uma Semente de Quartzo Certus feita de Pó de Quartzo Certus e Areia em uma poça de água; para fazer o processo ir mais rápido adicione Aceleradores de Crescimento de Cristais. +gui.appliedenergistics2.inWorldPurificationNether=Jogue uma Semente de Quartzo do Nether feita de Pó de Quartzo do Nether + Areia em uma poça de água; para fazer o processo ir mais rápido adicione Aceleradores de Crescimento de Cristais. +gui.appliedenergistics2.inWorldPurificationFluix=Jogue uma Semente Fluix feita de Pó Fluix e Areia em uma poça de água; para fazer o processo ir mais rápido adicione Aceleradores de Crescimento de Cristais. +gui.appliedenergistics2.inWorldSingularity=Para criar jogue 1 Singularidade e 1 Pó do Fim e cause uma explosão no alcance dos itens. +gui.appliedenergistics2.ChargedQuartz=Quartzo Certus Carregado é fabricado inserindo um Cristal de Quartzo Certus descarregado no Carregador e o alimentando. +gui.appliedenergistics2.ChargedQuartzFind=Quartzo Certus Carregado pode ser achado no mundo semi-raramente, parece similiar ao Quartzo Certus normal, exceto que faisca. +gui.appliedenergistics2.OfSecondOutput=% de Chance de Saída Secundária +gui.appliedenergistics2.NoSecondOutput=Sem Saída Secundária +gui.appliedenergistics2.SelectAmount=Quantia Seleta +gui.appliedenergistics2.CopyMode=Modo de Cópia +gui.appliedenergistics2.CopyModeDesc=Controla se o conteúdo do painel de configuração são limpos quando você remove a célula. +gui.appliedenergistics2.Next=Próximo +gui.appliedenergistics2.Lumen=Lumen +gui.appliedenergistics2.Empty=Vazio +gui.appliedenergistics2.Stored=Armazenado +gui.appliedenergistics2.Cancel=Cancelar +gui.appliedenergistics2.Crafting=Fabricando +gui.appliedenergistics2.Scheduled=Na Fila +gui.appliedenergistics2.CraftingStatus=Estado da Fabricação +gui.appliedenergistics2.FromStorage=Disponível +gui.appliedenergistics2.ToCraft=Para Fazer +gui.appliedenergistics2.CraftingPlan=Plano de Fabricação +gui.appliedenergistics2.Automatic=Automático +gui.appliedenergistics2.Start=Começar +gui.appliedenergistics2.Missing=Faltante(s) +gui.appliedenergistics2.Bytes=Armazenamento +gui.appliedenergistics2.Simulation=Simulação +gui.appliedenergistics2.CoProcessors=Co Processadores +gui.appliedenergistics2.CraftingCPU=CPU de Fabricação +gui.appliedenergistics2.NoCraftingCPUs=Sem CPUs de Fabricação Disponíveis +gui.appliedenergistics2.CalculatingWait=Calculando, por favor aguarde... +gui.appliedenergistics2.Clean=Limpar +gui.appliedenergistics2.InvalidPattern=Padrão Inválido +gui.appliedenergistics2.Range=Área +gui.appliedenergistics2.TransparentFacades=Fachadas Transparentes +gui.appliedenergistics2.TransparentFacadesHint=Controla a visibilidade de fachadas quando a ferramenta de rede estivar na sua toolbar. +gui.appliedenergistics2.CPUs=CPU +gui.appliedenergistics2.NoCraftingJobs=Nenhum Processo de Fabricação Ativo +gui.appliedenergistics2.FacadeCrafting=Receita de Fachada +gui.appliedenergistics2.inWorldCraftingPresses=Compressas de Fabricação são achadas no centro de meteoritos que podem ser encontrador ao redor do mundo. Eles podem ser localizados utilizando uma bússola de meteoritos. +gui.appliedenergistics2.Included=Incluído +gui.appliedenergistics2.Excluded=Excluído +gui.appliedenergistics2.Partitioned=Particionado +gui.appliedenergistics2.Precise=Preciso +gui.appliedenergistics2.Fuzzy=Impreciso + +gui.tooltips.appliedenergistics2.Stash=Armazenar Itens +gui.tooltips.appliedenergistics2.StashDesc=Retorna itens na grade de fabricação à rede de armazenamento. +gui.tooltips.appliedenergistics2.Substitutions=Substituições do Ore-Dict +gui.tooltips.appliedenergistics2.SubstitutionsDesc=Edita opções de substituição para componentes de entrada. +gui.tooltips.appliedenergistics2.SubstitutionsOn=Substituições Ativadas +gui.tooltips.appliedenergistics2.SubstitutionsOff=Substituições Desativadas +gui.tooltips.appliedenergistics2.Encode=Codificar Padrão +gui.tooltips.appliedenergistics2.EncodeDescription=Escreve o padrão entrado ao padrão codificado atual, ou a um padrão em branco disponível. +gui.tooltips.appliedenergistics2.FuzzyMode=Comparação Imprecisa +gui.tooltips.appliedenergistics2.FZPercent_25=Separar com 25% de Dano +gui.tooltips.appliedenergistics2.FZPercent_50=Separar com 50% de Dano +gui.tooltips.appliedenergistics2.FZPercent_75=Separar com 75% de Dano +gui.tooltips.appliedenergistics2.FZPercent_99=Separar com 99% de Dano +gui.tooltips.appliedenergistics2.SortOrder=Ordem de Triagem +gui.tooltips.appliedenergistics2.SortBy=Ordenar Por +gui.tooltips.appliedenergistics2.FZIgnoreAll=Qualquer um +gui.tooltips.appliedenergistics2.TransferDirection=Direção de Transferência +gui.tooltips.appliedenergistics2.TransferToNetwork=Transferir dados à rede +gui.tooltips.appliedenergistics2.TransferToStorageCell=Transferir dados à Celula de Armazenamento +gui.tooltips.appliedenergistics2.ToggleSortDirection=Alternar Direção de Ordenação +gui.tooltips.appliedenergistics2.StoredItems=Itens Armazenados +gui.tooltips.appliedenergistics2.StoredCraftable=Armazenados / Fabricáveis +gui.tooltips.appliedenergistics2.View=Ver +gui.tooltips.appliedenergistics2.RedstoneMode=Modo de Redstone +gui.tooltips.appliedenergistics2.OperationMode=Modo de Operação +gui.tooltips.appliedenergistics2.NumberOfItems=Número de Itens +gui.tooltips.appliedenergistics2.ItemName=Nome do item +gui.tooltips.appliedenergistics2.PowerUnits=Unidades de Energia +gui.tooltips.appliedenergistics2.IOMode=Modo de Entrada/Saída +gui.tooltips.appliedenergistics2.CondenserOutput=Condensador ME - Saída +gui.tooltips.appliedenergistics2.PartitionStorage=Armazenamento de Partição +gui.tooltips.appliedenergistics2.Clear=Limpar +gui.tooltips.appliedenergistics2.TrashController=Deleção via Shift / Espaço + Clique. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=Modo de Bloqueio +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=Modo de Fabricação +gui.tooltips.appliedenergistics2.Trash=Destruir Itens +gui.tooltips.appliedenergistics2.MatterBalls=Condensar em Bolas de Matéria\n%s por item +gui.tooltips.appliedenergistics2.Singularity=Condensar em Singularidades\n%s por item +gui.tooltips.appliedenergistics2.Read=Extrair Apenas +gui.tooltips.appliedenergistics2.Write=Inserir Apenas +gui.tooltips.appliedenergistics2.ReadWrite=Bi-Direcional +gui.tooltips.appliedenergistics2.AlwaysActive=Sempre ativo +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=Ativo sem sinal +gui.tooltips.appliedenergistics2.ActiveWithSignal=Ativo com sinal +gui.tooltips.appliedenergistics2.ActiveOnPulse=Ativar uma vez por pulso +gui.tooltips.appliedenergistics2.EmitLevelsBelow=Emitir quando níveis são iguais ou estão abaixo do limite +gui.tooltips.appliedenergistics2.EmitLevelAbove=Emitir quando níveis são iguais ou estão acima do limite. +gui.tooltips.appliedenergistics2.SearchMode_Auto=Auto Procura +gui.tooltips.appliedenergistics2.SearchMode_Standard=Procura Normal +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=Auto Sincronizado ao NEI +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=Sincronizado ao NEI Normalmente +gui.tooltips.appliedenergistics2.SearchMode=Modo de Caixa de Procura +gui.tooltips.appliedenergistics2.PartitionStorageHint=Configura a Partição baseado em itens atualmente armazenados. +gui.tooltips.appliedenergistics2.ClearSettings=Limpar Configurações +gui.tooltips.appliedenergistics2.Craftable=Fabricável +gui.tooltips.appliedenergistics2.MoveWhenEmpty=Mover pra saída quando vazio. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=Mover pra saída quanto o trabalho está terminado. +gui.tooltips.appliedenergistics2.MoveWhenFull=Mover pra saída quando cheio. +gui.tooltips.appliedenergistics2.Disabled=Desativado +gui.tooltips.appliedenergistics2.Enable=Ativado +gui.tooltips.appliedenergistics2.Blocking=Não empurra itens de fabricação se o inventário contém itens. +gui.tooltips.appliedenergistics2.NonBlocking=Ignora o conteúdo do inventário alvo. +gui.tooltips.appliedenergistics2.Craft=Comportamento de Fabricação +gui.tooltips.appliedenergistics2.CraftOnly=Não usa itens estocados, apenas cria enquanto exporta. +gui.tooltips.appliedenergistics2.CraftEither=Usa itens estocados, ou cria itens quando exporta. +gui.tooltips.appliedenergistics2.LevelType=Tipo de Nível +gui.tooltips.appliedenergistics2.LevelType_Energy=Energia +gui.tooltips.appliedenergistics2.LevelType_Item=Item +gui.tooltips.appliedenergistics2.InventoryTweaks=Inventory Tweaks +gui.tooltips.appliedenergistics2.Mod=Mod +gui.tooltips.appliedenergistics2.TerminalStyle=Estilo do Terminal +gui.tooltips.appliedenergistics2.TerminalStyle_Full=Terminal em Tela Cheia +gui.tooltips.appliedenergistics2.TerminalStyle_Tall=Terminal Alto e Centrado +gui.tooltips.appliedenergistics2.TerminalStyle_Small=Terminal Pequeno e Centrado +gui.tooltips.appliedenergistics2.DoesntDespawn=Esse item não vai sumir. +gui.tooltips.appliedenergistics2.EmitterMode=Modo de Fabricação Emissor +gui.tooltips.appliedenergistics2.CraftViaRedstone=Emite sinal para fazer um item. +gui.tooltips.appliedenergistics2.EmitWhenCrafting=Emite sinal enquanto o item está sendo fabricado. +gui.tooltips.appliedenergistics2.ReportInaccessibleItems=Reportar Itens Inacessíveis +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsYes=Sim: Itens que não podem ser extraídos vão estar visíveis. +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsNo=Não: Apenas itens extraíveis vão estar visíveis. + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=Minecraft Joules +gui.appliedenergistics2.units.ic2=Energy Units +gui.appliedenergistics2.units.mekanism=Joules +gui.appliedenergistics2.units.rotarycraft=Watts +gui.appliedenergistics2.units.thermalexpansion=Redstone Flux + +gui.appliedenergistics2.White=Branco +gui.appliedenergistics2.Orange=Laranja +gui.appliedenergistics2.Magenta=Magenta +gui.appliedenergistics2.LightBlue=Azul Fraco +gui.appliedenergistics2.Yellow=Amarelo +gui.appliedenergistics2.Lime=Lima +gui.appliedenergistics2.Pink=Rosa +gui.appliedenergistics2.Gray=Cinza +gui.appliedenergistics2.LightGray=Cinza Fraco +gui.appliedenergistics2.Cyan=Ciano +gui.appliedenergistics2.Purple=Roxo +gui.appliedenergistics2.Blue=Azul +gui.appliedenergistics2.Brown=Marrom +gui.appliedenergistics2.Green=Verde +gui.appliedenergistics2.Red=Vermelho +gui.appliedenergistics2.Black=Preto +gui.appliedenergistics2.Fluix=Fluix + +waila.appliedenergistics2.DeviceOnline=Dispositivo Online +waila.appliedenergistics2.DeviceOffline=Dispositivo Offline +waila.appliedenergistics2.DeviceMissingChannel=Dispositivo Sem Canal +waila.appliedenergistics2.Locked=Trancado +waila.appliedenergistics2.Unlocked=Destrancado +waila.appliedenergistics2.Showing=Mostrando +waila.appliedenergistics2.Contains=Contém +waila.appliedenergistics2.Channels=Canais + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=Célula de Armazenamento ME de 1k +item.appliedenergistics2.ItemBasicStorageCell.4k.name=Célula de Armazenamento ME de 4k +item.appliedenergistics2.ItemBasicStorageCell.16k.name=Célula de Armazenamento ME de 16k +item.appliedenergistics2.ItemBasicStorageCell.64k.name=Célula de Armazenamento ME de 64k +item.appliedenergistics2.ItemCreativeStorageCell.name=Célula de Armazenamento ME Criativa +item.appliedenergistics2.ItemEncodedPattern.name=Padrão Codificado +item.appliedenergistics2.ItemViewCell.name=Ver Célula +item.appliedenergistics2.ItemFacade.name=Fachada de Cabos + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=Semente de Quartzo Certus +item.appliedenergistics2.ItemCrystalSeed.Nether.name=Semente de Quartzo do Nether +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=Semente de Fluix +item.appliedenergistics2.ItemMaterial.InvalidType.name=Esse item está Desativado. +item.appliedenergistics2.ItemMaterial.AdvCard.name=Cartão Avançado +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=Núcleo de Aniquilação +item.appliedenergistics2.ItemMaterial.BasicCard.name=Cartão Básico +item.appliedenergistics2.ItemMaterial.BlankPattern.name=Padrão Em Branco +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=Processador de Cálculo +item.appliedenergistics2.ItemMaterial.CardCapacity.name=Cartão de Capacidade +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=Cartão Impreciso +item.appliedenergistics2.ItemMaterial.CardInverter.name=Cartão Inversor +item.appliedenergistics2.ItemMaterial.CardRedstone.name=Cartão de Redstone +item.appliedenergistics2.ItemMaterial.CardSpeed.name=Cartão de Aceleração +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=Componente Espacial 2³ +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=Componente Espacial 16³ +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=Componente Espacial 128³ +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=Componente de Armazenamento ME de 1k +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=Componente de Armazenamento ME de 4k +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=Componente de Armazenamento ME de 16k +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=Componente de Armazenamento ME de 64k +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=Cristal de Quartzo Certus +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=Cristal Carregado de Quartzo Certus +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=Pó de Quartzo Certus +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=Encaixe de Armazenamento ME +item.appliedenergistics2.ItemMaterial.EnderDust.name=Pó do Fim +item.appliedenergistics2.ItemMaterial.EngProcessor.name=Processador de Engenharia +item.appliedenergistics2.ItemMaterial.Flour.name=Farinha +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=Cristal Fluix +item.appliedenergistics2.ItemMaterial.FluixDust.name=Pó Fluix +item.appliedenergistics2.ItemMaterial.FluixPearl.name=Pérola Fluix +item.appliedenergistics2.ItemMaterial.FormationCore.name=Núcleo de Formação +item.appliedenergistics2.ItemMaterial.GoldDust.name=Pó de Ouro +item.appliedenergistics2.ItemMaterial.IronDust.name=Pó de Ferro +item.appliedenergistics2.ItemMaterial.IronNugget.name=Pepita de Ferro +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=Processador Lógico +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=Processador Lógico Inacabado +item.appliedenergistics2.ItemMaterial.MatterBall.name=Bola de Matéria +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=Pó de Quartzo do Nether +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=Cristal Puro de Quartzo Certus +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=Cristal Fluix Puro +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=Cristal Puro de Quartzo do Nether +item.appliedenergistics2.ItemMaterial.QESingularity.name=Singularidade Quanticamente Entrelaçada +item.appliedenergistics2.ItemMaterial.Silicon.name=Silício +item.appliedenergistics2.ItemMaterial.Singularity.name=Singularidade +item.appliedenergistics2.ItemMaterial.Wireless.name=Receptor Sem Fio +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=Itensificador Sem Fio +item.appliedenergistics2.ItemMaterial.WoodenGear.name=Engrenagem de Madeira +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=Compressa Inscritora de Engenharia +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=Compressa Inscritora de Cálculo +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=Compressa Inscritora Lógica +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=Circuito Impresso de Engenharia +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=Circuito Impresso de Cálculo +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=Circuito Impresso Lógico +item.appliedenergistics2.ItemMaterial.SiliconPress.name=Compressa Inscitora de Silício +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=Silício Impresso +item.appliedenergistics2.ItemMaterial.NamePress.name=Compressa Inscritora de Nome +item.appliedenergistics2.ItemMaterial.SkyDust.name=Pó de Pedra do Céu +item.appliedenergistics2.ItemMaterial.CardCrafting.name=Cartão de Fabricação + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=Plano de Aniquilação ME +item.appliedenergistics2.ItemPart.CableAnchor.name=Cabo-Âncora +item.appliedenergistics2.ItemPart.CableCovered.name=Cabo Coberto ME +item.appliedenergistics2.ItemPart.CableGlass.name=Cabo de Vidro ME +item.appliedenergistics2.ItemPart.CableSmart.name=Cabo Inteligente ME +item.appliedenergistics2.ItemPart.CableDense.name=Cabo Denso ME +item.appliedenergistics2.ItemPart.StorageMonitor.name=Monitor de Armazenamento ME +item.appliedenergistics2.ItemPart.ConversionMonitor.name=Monitor de Conversão ME +item.appliedenergistics2.ItemPart.CraftingTerminal.name=Terminal de Fabricação ME +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=Painel Iluminado +item.appliedenergistics2.ItemPart.Monitor.name=Painel Brilhante Iluminado +item.appliedenergistics2.ItemPart.DarkMonitor.name=Painel Escuro Iluminado +item.appliedenergistics2.ItemPart.ExportBus.name=Barramento de Exportação ME +item.appliedenergistics2.ItemPart.FormationPlane.name=Plano de Formação ME +item.appliedenergistics2.ItemPart.ImportBus.name=Barramento de Importação ME +item.appliedenergistics2.ItemPart.Interface.name=Interface ME +item.appliedenergistics2.ItemPart.LevelEmitter.name=Emissor de Nível ME +item.appliedenergistics2.ItemPart.P2PTunnel.name=Tùnel P2P +item.appliedenergistics2.ItemPart.PatternTerminal.name=Terminal de Padrões ME +item.appliedenergistics2.ItemPart.QuartzFiber.name=Fibra de Quartzo +item.appliedenergistics2.ItemPart.StorageBus.name=Barramento de Armazenamento ME +item.appliedenergistics2.ItemPart.Terminal.name=Terminal ME +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=Barramento de Alternância Invertido ME +item.appliedenergistics2.ItemPart.ToggleBus.name=Barramento de Alternância ME +item.appliedenergistics2.ItemPart.CraftingMonitor.name=Monitor de Fabricação ME +item.appliedenergistics2.ItemPart.InterfaceTerminal.name=Terminal de Interface ME + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=Célula de Armazenamento Espacial 128³ +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=Célula de Armazenamento Espacial 16³ +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=Célula de Armazenamento Espacial 2³ + +item.appliedenergistics2.ToolCertusQuartzAxe.name=Machado de Quartzo Certus +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=Faca de Corte de Quartzo Certus +item.appliedenergistics2.ToolCertusQuartzHoe.name=Enxada de Quartzo Certus +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=Picareta de Quartzo Certus +item.appliedenergistics2.ToolCertusQuartzSpade.name=Pá de Quartzo Certus +item.appliedenergistics2.ToolCertusQuartzSword.name=Espada de Certus Quartz +item.appliedenergistics2.ToolCertusQuartzWrench.name=Chave de Certus Quartz + +item.appliedenergistics2.ToolNetherQuartzAxe.name=Machado de Quartzo do Nether +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=Faca de Corte de Quartzo do Nether +item.appliedenergistics2.ToolNetherQuartzHoe.name=Enxada de Quartzo do Nether +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=Picareta de Quartzo do Nether +item.appliedenergistics2.ToolNetherQuartzSpade.name=Pá de Quartzo do Nether +item.appliedenergistics2.ToolNetherQuartzSword.name=Espada de Quarzo do Nether +item.appliedenergistics2.ToolNetherQuartzWrench.name=Chave de Quartzo do Nether + +item.appliedenergistics2.ItemPaintBall.name=Bola de Tinta +item.appliedenergistics2.ToolPortableCell.name=Célula Portátil +item.appliedenergistics2.ToolNetworkTool.name=Ferramenta de Rede +item.appliedenergistics2.ToolChargedStaff.name=Cajado Carregado +item.appliedenergistics2.ToolEntropyManipulator.name=Manipulador de Entropia +item.appliedenergistics2.ToolMassCannon.name=Canhão de Matéria +item.appliedenergistics2.ToolMemoryCard.name=Cartão de Memória +item.appliedenergistics2.ToolColorApplicator.name=Aplicador de Cor +item.appliedenergistics2.ToolWirelessTerminal.name=Terminal Sem Fio +item.appliedenergistics2.ToolBiometricCard.name=Cartão Biométrico + +item.appliedenergistics2.ToolDebugCard.name=Dev.DebugCard +item.appliedenergistics2.ToolReplicatorCard.name=Dev.ReplicatorCard + +commands.ae2.usage=Comandos providenciados pelo Applied Energistics 2 - use /ae2 list para uma lista, e /ae2 help _____ para ajuda com certo comando. +commands.ae2.permissions=Você não tem a permissão adequada para executar esse comando. +commands.ae2.ChunkLogger=Alterna o carregamento ou descarregamento de chunks no log do servidor.Toggles Chunk Loading and unloading to the server log. ( OP ) +commands.ae2.ChunkLoggerOn=O registro de chunks agora está ligado. +commands.ae2.ChunkLoggerOff=O registro de agora está desligado. +commands.ae2.Supporters=Mostra uma lista de Apoiadores do AE2 + +achievement.ae2.Compass=Caça-Meteoritos +achievement.ae2.Compass.desc=Faça uma Bússola de Meteoritos +achievement.ae2.Presses=Tecnologia Desconhecida +achievement.ae2.Presses.desc=Ache uma Compressa de Processador +achievement.ae2.SpatialIO=Coordenação Espacial +achievement.ae2.SpatialIO.desc=Crie uma Porta de ES Espacial +achievement.ae2.SpatialIOExplorer=Ir audaciosamente +achievement.ae2.SpatialIOExplorer.desc=Fique armazenado em uma Célula de Armazenamento Espacial. +achievement.ae2.StorageCell=Better Than Baús +achievement.ae2.StorageCell.desc=Faça uma Célula de Armazenamento +achievement.ae2.IOPort=Embaralhamento de Células de Armazenamentos +achievement.ae2.IOPort.desc=Faça uma Porta de ES +achievement.ae2.CraftingTerminal=Uma Bancada (Muito) Maior +achievement.ae2.CraftingTerminal.desc=Faça um Terminal de Fabricação +achievement.ae2.PatternTerminal=Maestro de Fabricação +achievement.ae2.PatternTerminal.desc=Faça um Terminal de Padrões +achievement.ae2.ChargedQuartz=Chocante +achievement.ae2.ChargedQuartz.desc=Ache Quartzo Carregado +achievement.ae2.Fluix=Antinatural +achievement.ae2.Fluix.desc=Crie Cristais Fluix +achievement.ae2.Charger=Produção Fluix +achievement.ae2.Charger.desc=Faça um Carregador +achievement.ae2.CrystalGrowthAccelerator=Acelerador é um eufemismo +achievement.ae2.CrystalGrowthAccelerator.desc=Faça um Acelerador de Crescimento de Cristais +achievement.ae2.GlassCable=Conexão de Energia Fluix +achievement.ae2.GlassCable.desc=Faça um Cabo de Vidro ME +achievement.ae2.Networking1=Aprendiz de Networking +achievement.ae2.Networking1.desc=Alcance o 8° canal usando dispositivos em uma rede. +achievement.ae2.Controller=Quadro de Distruibuição de Rede +achievement.ae2.Controller.desc=Faça um Controlador +achievement.ae2.Networking2=Engenheiro de Networking +achievement.ae2.Networking2.desc=Alcance o 128° canal usando dispositivos em uma rede. +achievement.ae2.Networking3=Administrador de Networking +achievement.ae2.Networking3.desc=Alcance o 2048° canal usando dispositivos em uma rede. +achievement.ae2.P2P=Redes Point to Point +achievement.ae2.P2P.desc=Faça um Túnel P2P +achievement.ae2.Recursive=Networking Recursivo +achievement.ae2.Recursive.desc=Coloque uma Interface do lado de um Barramento de Armazenamento +achievement.ae2.CraftingCPU=Fabricação Next-Gen +achievement.ae2.CraftingCPU.desc=Faça uma Unidade de Fabricação +achievement.ae2.Facade=Estética de Rede +achievement.ae2.Facade.desc=Faça uma Fachada de Cabo +achievement.ae2.NetworkTool=Diagnóstico de Rede +achievement.ae2.NetworkTool.desc=Faça uma Ferramenta de Rede +achievement.ae2.PortableCell=Nômade de Armazenamento +achievement.ae2.PortableCell.desc=Faça uma Célula Portátil +achievement.ae2.StorageBus=Potencial Sem Limites +achievement.ae2.StorageBus.desc=Faça um Barramento de Armazenamento +achievement.ae2.QNB=Tunelamento Quântico +achievement.ae2.QNB.desc=Faça uma Ligação Quântica + +stat.ae2.ItemsInserted=Itens adicionados ao Armazenamento ME +stat.ae2.ItemsExtracted=Itens extraídos do Armazenamento ME +stat.ae2.TurnedCranks=Manivelas Giradas diff --git a/src/main/resources/assets/appliedenergistics2/lang/ro_RO.lang b/src/main/resources/assets/appliedenergistics2/lang/ro_RO.lang new file mode 100644 index 00000000..f7548c28 --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/ro_RO.lang @@ -0,0 +1,350 @@ +tile.appliedenergistics2.BlockCableBus.name=Cabluri AE2 şi/sau Punct +tile.appliedenergistics2.BlockCellWorkbench.name=Masă de Lucru de Celulă +tile.appliedenergistics2.BlockCharger.name=Încărcător +tile.appliedenergistics2.BlockChest.name= Cufăr ME +tile.appliedenergistics2.BlockCondenser.name=Condensator de Materie +tile.appliedenergistics2.BlockController.name=Controlator ME +tile.appliedenergistics2.BlockCrank.name=Manivelă de Lemn +tile.appliedenergistics2.BlockCreativeEnergyCell.name=Celulă de Energie Infinită +tile.appliedenergistics2.BlockDenseEnergyCell.name=Celulă de Energie Densă +tile.appliedenergistics2.BlockEnergyCell.name=Celulă de Energie +tile.appliedenergistics2.BlockDrive.name=Consolă ME +tile.appliedenergistics2.BlockEnergyAcceptor.name=Acceptor de Energie +tile.appliedenergistics2.BlockGrinder.name=Moară de Quartz +tile.appliedenergistics2.BlockMatrixFrame.name=Ramă de Matrix +tile.appliedenergistics2.BlockIOPort.name=Port ME IO +tile.appliedenergistics2.BlockInscriber.name=Inscripţioner +tile.appliedenergistics2.BlockInterface.name=Interfaţă ME +tile.appliedenergistics2.BlockNetworkEmitter.name=Emitter Emiţător de Reţea ME +tile.appliedenergistics2.BlockQuantumLinkChamber.name=Cameră de Legătură Quantică ME +tile.appliedenergistics2.BlockQuantumRing.name=Inel Quantic ME +tile.appliedenergistics2.BlockFluix.name=Bloc de Fluix +tile.appliedenergistics2.BlockQuartz.name=Bloc de Cuarţ Certus +tile.appliedenergistics2.BlockQuartzChiseled.name=Bloc de Cuarţ Certus Sculptat +tile.appliedenergistics2.BlockQuartzGlass.name=Sticlă de Cuarţ +tile.appliedenergistics2.BlockQuartzLamp.name=Sticlă de Cuarţ Vibrantă +tile.appliedenergistics2.BlockQuartzPillar.name=Coloană de Cuartz Certus +tile.appliedenergistics2.BlockQuartzTorch.name=Fixtură de Cuartz Încărcat +tile.appliedenergistics2.BlockSpatialIOPort.name=Port Spaţial IO +tile.appliedenergistics2.BlockSpatialPylon.name=Pilon Spaţial +tile.appliedenergistics2.BlockTinyTNT.name=TNT Micuţ +tile.appliedenergistics2.BlockVibrationChamber.name=Cameră de Vibraţie +tile.appliedenergistics2.BlockWireless.name=Punct de Acces Wireless ME +tile.appliedenergistics2.OreQuartz.name=Minereu de Cuarţ Certus +tile.appliedenergistics2.OreQuartzCharged.name=Minereu de Cuarţ Certus Încărcat +tile.appliedenergistics2.BlockSecurity.name=Terminal de Securitate ME +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=Accelerator de Creștere a Cristalelor +tile.appliedenergistics2.BlockSkyStone.name=Piatră de Cer +tile.appliedenergistics2.BlockSkyStone.Block.name=Bloc de Piatră de Cer +tile.appliedenergistics2.BlockSkyStone.Brick.name=Cărămizi de Piatră de Cer +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=Cărămizi mici de Piatră de Cer +tile.appliedenergistics2.BlockSkyChest.name=Cufăr de Piatră de Cer +tile.appliedenergistics2.BlockSkyChest.Block.name=Cufăr de Bloc de Piatră de Cer +tile.appliedenergistics2.BlockSkyCompass.name=Busolă de Meteorit + +chat.appliedenergistics2.ChestCannotReadStorageCell=Cufăr ME nu poate citi celulă de stocare. +chat.appliedenergistics2.OutOfRange=Wireless Afară din Zonă +chat.appliedenergistics2.InvalidMachine=Mașinărie Invalidă +chat.appliedenergistics2.LoadedSettings=Setări încărcate cu succes. +chat.appliedenergistics2.DeviceNotPowered=Mașinăria are energie puţină. +chat.appliedenergistics2.MachineNotPowered=Mașinăria nu are energie. +chat.appliedenergistics2.CommunicationError=Eroare Comunicând cu Reţeaua. +chat.appliedenergistics2.SavedSettings=Setări salvate cu succes. +chat.appliedenergistics2.AmmoDepleted=Muniţie epuizată. +chat.appliedenergistics2.isNowLocked=Monitorul este acum încuiat. +chat.appliedenergistics2.isNowUnlocked=Monitorul este acum descuiat. + +itemGroup.appliedenergistics2=Energistici Aplicate 2 +itemGroup.appliedenergistics2.facades=Energistici Aplicate 2 - Faţade + +gui.appliedenergistics2.CraftingTerminal=Terminal de Craftare +gui.appliedenergistics2.METunnel=ME +gui.appliedenergistics2.ItemTunnel=de Iteme +gui.appliedenergistics2.FluidTunnel=de Fluide +gui.appliedenergistics2.RedstoneTunnel=de Piatră-roşie +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU + +gui.appliedenergistics2.security.extract.name=Retrage +gui.appliedenergistics2.security.inject.name=Depositează +gui.appliedenergistics2.security.craft.name=Craftează +gui.appliedenergistics2.security.build.name=Construieşte +gui.appliedenergistics2.security.security.name=Securitate + +gui.appliedenergistics2.security.extract.tip=Utilizator este autorizat să scoată iteme din stocare. +gui.appliedenergistics2.security.inject.tip=Utilizator este autorizat să stocheze iteme noi. +gui.appliedenergistics2.security.craft.tip=Utilizator poate iniţia noi operaţii de craftare. +gui.appliedenergistics2.security.build.tip=Utilizator poate modifica structura fizica a reţelei, şi să schimbe configuraţiile. +gui.appliedenergistics2.security.security.tip=Utilizator poate accesa şi modifica terminalul de securitate a reţelei. + +gui.appliedenergistics2.Efficiency=Eficienţă +gui.appliedenergistics2.RequiredPower=Energie de care este nevoie +gui.appliedenergistics2.StoredPower=Energie Stocată +gui.appliedenergistics2.MaxPower=Energie Maximă +gui.appliedenergistics2.QuartzCuttingKnife=Cuţit de Tăiat de Cuarţ +gui.appliedenergistics2.Inscriber=Inscripţioner +gui.appliedenergistics2.Wireless=Punct de Acces Wireless +gui.appliedenergistics2.WirelessTerminal=Termen Wireless +gui.appliedenergistics2.NoPermissions=Nu sunt Permisiuni selectate +gui.appliedenergistics2.SecurityCardEditor=Editor de Cartelă Biometrică +gui.appliedenergistics2.Encoded=Codat +gui.appliedenergistics2.Priority=Prioritate + +gui.appliedenergistics2.StorageBus=Punct de Stocare +gui.appliedenergistics2.EnergyDrain=Scurgere Pasivă +gui.appliedenergistics2.Installed=Instalat +gui.appliedenergistics2.NetworkTool=Unealtă de Reţea +gui.appliedenergistics2.PowerUsageRate=Folosire de Energie +gui.appliedenergistics2.PowerInputRate=Generare de Energie +gui.appliedenergistics2.PortableCell=Celulă Portabilă +gui.appliedenergistics2.Security=Termen de Securitate +gui.appliedenergistics2.CellWorkbench=Masă de Lucru de Celulă +gui.appliedenergistics2.QuantumLinkChamber=Cameră de Legătură Quantică +gui.appliedenergistics2.IOPort=Port IO ME +gui.appliedenergistics2.Chest=Cufăr ME +gui.appliedenergistics2.Condenser=Condensator de Materie +gui.appliedenergistics2.Config=Configuraţie +gui.appliedenergistics2.Drive=Consolă ME +gui.appliedenergistics2.ExportBus=Punct de Export ME +gui.appliedenergistics2.GrindStone=Moară +gui.appliedenergistics2.ImportBus=Punct de Import ME +gui.appliedenergistics2.Interface=Interfaţă ME +gui.appliedenergistics2.LevelEmitter=Emiţător de Nivel ME +gui.appliedenergistics2.Of=de +gui.appliedenergistics2.Patterns=Modele +gui.appliedenergistics2.SpatialIOPort=Port Spaţial IO +gui.appliedenergistics2.StoredEnergy=Energie Stocată +gui.appliedenergistics2.StoredItems=Iteme Stocate +gui.appliedenergistics2.Terminal=Terminal +gui.appliedenergistics2.FormationPlane=Lan de Formaţie +gui.appliedenergistics2.VibrationChamber=Cameră de Vibraţie +gui.appliedenergistics2.NetworkDetails=Detalii de Reţea +gui.appliedenergistics2.StorageCells=Celule de Stocare ME +gui.appliedenergistics2.IOBuses=Punct de Import/Export ME +gui.appliedenergistics2.BytesUsed=Biţi Folosiţi +gui.appliedenergistics2.Types=Tipuri +gui.appliedenergistics2.Blank=Gol +gui.appliedenergistics2.Unlinked=Nelegat +gui.appliedenergistics2.Linked=Legat +gui.appliedenergistics2.StoredSize=Mărime Stocată +gui.appliedenergistics2.SkyChest=Cufăr de Piatră de Cer + +gui.tooltips.appliedenergistics2.FuzzyMode=Comparaţie Fuzzy +gui.tooltips.appliedenergistics2.FZPercent_25=Împarte Lovitura la 25% +gui.tooltips.appliedenergistics2.FZPercent_50=Împarte Lovitura la 50% +gui.tooltips.appliedenergistics2.FZPercent_75=Împarte Lovitura la 75% +gui.tooltips.appliedenergistics2.FZPercent_99=Împarte Lovitura la 99% +gui.tooltips.appliedenergistics2.SortOrder=Sortează Ordinea +gui.tooltips.appliedenergistics2.SortBy=Sorteaza cu +gui.tooltips.appliedenergistics2.FZIgnoreAll=Potriveşte Oricare +gui.tooltips.appliedenergistics2.TransferDirection=Transfereaza Direcţie +gui.tooltips.appliedenergistics2.TransferToNetwork=Transfereaza informaţii la Reţea +gui.tooltips.appliedenergistics2.TransferToStorageCell=Transfereaza informaţii la Celula de Stocare +gui.tooltips.appliedenergistics2.ToggleSortDirection=Porneşte direcţie de sortare +gui.tooltips.appliedenergistics2.StoredItems=Iteme de Stocare +gui.tooltips.appliedenergistics2.StoredCraftable=Stocare / Craftabile +gui.tooltips.appliedenergistics2.View=Vizualizare +gui.tooltips.appliedenergistics2.RedstoneMode=Modul de Piatră-Roşie +gui.tooltips.appliedenergistics2.OperationMode=Modul de Operare +gui.tooltips.appliedenergistics2.NumberOfItems=Numărul Itemelor +gui.tooltips.appliedenergistics2.ItemName=Nume de Item +gui.tooltips.appliedenergistics2.PowerUnits=Unitate de Energie +gui.tooltips.appliedenergistics2.IOMode=Modul de Input/Output +gui.tooltips.appliedenergistics2.CondenserOutput=Condensator ME - Output +gui.tooltips.appliedenergistics2.PartitionStorage=Stocare prin Partiţie +gui.tooltips.appliedenergistics2.Clear=Şterge +gui.tooltips.appliedenergistics2.TrashController=Ştergere via Shift / Clickarea Spaţiului. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=Mod de Blocare +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=Mod de Craftare +gui.tooltips.appliedenergistics2.Trash=Distruge Iteme +gui.tooltips.appliedenergistics2.MatterBalls=Condensează în Mingi de Materie\n%s per item +gui.tooltips.appliedenergistics2.Singularity=Condensează în Singularităţi\n%s per item +gui.tooltips.appliedenergistics2.Read=Doar Extrage +gui.tooltips.appliedenergistics2.Write=Doar Insertează +gui.tooltips.appliedenergistics2.ReadWrite=Bi-Direcţional +gui.tooltips.appliedenergistics2.AlwaysActive=Mereu activ +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=Activ fără semnal +gui.tooltips.appliedenergistics2.ActiveWithSignal=Activ cu semnal +gui.tooltips.appliedenergistics2.ActiveOnPulse=Activeaza odată per puls +gui.tooltips.appliedenergistics2.EmitLevelsBelow=Emite numai când nivelele sunt sub sau egale cu limita. +gui.tooltips.appliedenergistics2.EmitLevelAbove=Emite când nivelele sunt peste sau egale cu limita. +gui.tooltips.appliedenergistics2.SearchMode_Auto=Auto Cercetare +gui.tooltips.appliedenergistics2.SearchMode_Standard=Cercetare Standard +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=Auto Sincronizat cu NEI +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=Sincronizat cu NEI Standard +gui.tooltips.appliedenergistics2.SearchMode=Modul de Cutie de Cercetare +gui.tooltips.appliedenergistics2.PartitionStorageHint=Configurează Partiţie bazat pe iteme stocate în momentul de faţă. +gui.tooltips.appliedenergistics2.ClearSettings=Şterge Configurație/Setări +gui.tooltips.appliedenergistics2.Craftable=Craftabil +gui.tooltips.appliedenergistics2.MoveWhenEmpty=Trece la output când gol. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=Trece la output când treaba este terminată. +gui.tooltips.appliedenergistics2.MoveWhenFull=Trece la output când plin. +gui.tooltips.appliedenergistics2.Disabled=Oprit +gui.tooltips.appliedenergistics2.Enable=Pornit +gui.tooltips.appliedenergistics2.Blocking=Nu împinge iteme de craftare dacă inventar conține iteme. +gui.tooltips.appliedenergistics2.NonBlocking=Ignoră conținutul inventarului selectat. +gui.tooltips.appliedenergistics2.Craft=Craftează iteme când necesare când se exportează. +gui.tooltips.appliedenergistics2.DontCraft=Folosește numai iteme stocate când se exportează. +gui.tooltips.appliedenergistics2.LevelType=Tip de Nivel +gui.tooltips.appliedenergistics2.LevelType_Energy=Energy +gui.tooltips.appliedenergistics2.LevelType_Item=Item +gui.tooltips.appliedenergistics2.InventoryTweaks=Reordonare Inventar +gui.tooltips.appliedenergistics2.TerminalStyle=Stil de Terminalgui.tooltips.appliedenergistics2.TerminalStyle_Full=Terminal de Ecran Maregui.tooltips.appliedenergistics2.TerminalStyle_Tall=Terminal Centrat Maregui.tooltips.appliedenergistics2.TerminalStyle_Small=Terminal Centrat Mic + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=Jouli de Minecraft +gui.appliedenergistics2.units.ic2=Unități de Energie +gui.appliedenergistics2.units.universalelectricity=Kilo Jouli +gui.appliedenergistics2.units.rotarycraft=Wați +gui.appliedenergistics2.units.thermalexpansion=Flux de Piatră-Roşie + +gui.appliedenergistics2.White=Alb +gui.appliedenergistics2.Orange=Portocaliu +gui.appliedenergistics2.Magenta=Magenta +gui.appliedenergistics2.LightBlue=Albastru-Deschis +gui.appliedenergistics2.Yellow=Galben +gui.appliedenergistics2.Lime=Verde-Deschis +gui.appliedenergistics2.Pink=Roz +gui.appliedenergistics2.Gray=Gri +gui.appliedenergistics2.LightGray=Gri-Deschis +gui.appliedenergistics2.Cyan=Turcoaz +gui.appliedenergistics2.Purple=Violet +gui.appliedenergistics2.Blue=Albastru +gui.appliedenergistics2.Brown=Maro +gui.appliedenergistics2.Green=Verde +gui.appliedenergistics2.Red=Roşu +gui.appliedenergistics2.Black=Negru +gui.appliedenergistics2.Fluix=Fluix + +waila.appliedenergistics2.DeviceOnline=Maşinărie Pornită +waila.appliedenergistics2.DeviceOffline=Maşinărie Oprită +waila.appliedenergistics2.DeviceMissingChannel=Maşinărie îi Lipseşte Canal +waila.appliedenergistics2.Locked=Încuiat +waila.appliedenergistics2.Unlocked=Deschis +waila.appliedenergistics2.Showing=Arătând +waila.appliedenergistics2.Contains=Conţine + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=Celulă de Stocare ME 1k +item.appliedenergistics2.ItemBasicStorageCell.4k.name=Celulă de Stocare ME 4k +item.appliedenergistics2.ItemBasicStorageCell.16k.name=Celulă de Stocare ME 16k +item.appliedenergistics2.ItemBasicStorageCell.64k.name=Celulă de Stocare ME 64k +item.appliedenergistics2.ItemCreativeStorageCell.name=Celulă de Stocare ME Infinită +item.appliedenergistics2.ItemEncodedPattern.name=Model Codat +item.appliedenergistics2.ItemViewCell.name=Vizionează Celulă +item.appliedenergistics2.ItemFacade.name=Faţadă de Cablu + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=Sămânţă de Cuarţ Certus +item.appliedenergistics2.ItemCrystalSeed.Nether.name=Sămânţă de Cuarţ de Iad +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=Sămânţă de Fluix +item.appliedenergistics2.ItemMaterial.AdvCard.name=Cartelă Avansată +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=Centru de Anihilaţie +item.appliedenergistics2.ItemMaterial.BasicCard.name=Cartelă de Bază +item.appliedenergistics2.ItemMaterial.BlankPattern.name=Model Gol +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=Procesor de Calculare +item.appliedenergistics2.ItemMaterial.CardCapacity.name=Cartelă de Capacitate +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=Cartelă Fuzzy +item.appliedenergistics2.ItemMaterial.CardInverter.name=Cartelă Invertoare +item.appliedenergistics2.ItemMaterial.CardRedstone.name=Cartelă de Piatră-Roşie +item.appliedenergistics2.ItemMaterial.CardSpeed.name=Cartelă de Accelerare +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=Component Spaţial 2³ +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=Component Spaţial 16³ +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=Component Spaţial 128³ +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=Component de Stocare ME 1k +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=Component de Stocare ME 4k +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=Component de Stocare ME 16k +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=Component de Stocare ME 64k +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=Cristal de Cuarţ Certus +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=Cristal de Cuarţ Certus Încărcat +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=Praf de Cuarţ Certus +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=Carcasă de Stocare ME +item.appliedenergistics2.ItemMaterial.EnderDust.name=Praf de Sfârșit +item.appliedenergistics2.ItemMaterial.EngProcessor.name=Processor de Inginerie +item.appliedenergistics2.ItemMaterial.Flour.name=Făina +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=Cristal Fluix +item.appliedenergistics2.ItemMaterial.FluixDust.name=Praf Fluix +item.appliedenergistics2.ItemMaterial.FluixPearl.name=Perlă Fluix +item.appliedenergistics2.ItemMaterial.FormationCore.name=Centru de Formaţie +item.appliedenergistics2.ItemMaterial.GoldDust.name=Praf de Aur +item.appliedenergistics2.ItemMaterial.IronDust.name=Praf de Fier +item.appliedenergistics2.ItemMaterial.IronNugget.name=Pepită de Fier +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=Procesor de Logică +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=Procesor de Logică Neterminat +item.appliedenergistics2.ItemMaterial.MatterBall.name=Minge de Materie +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=Praf de Cuarţ de Iad +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=Cristal de Cuarţ Certus Pur +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=Cristal de Cuarţ Fluix Pur +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=Cristal de Cuarţ de Iad Pur +item.appliedenergistics2.ItemMaterial.QESingularity.name=Singularitate de Quantum Legată +item.appliedenergistics2.ItemMaterial.Silicon.name=Silicon +item.appliedenergistics2.ItemMaterial.Singularity.name=Singularitate +item.appliedenergistics2.ItemMaterial.Wireless.name=Receptor de Wireless +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=Amplificator Wireless +item.appliedenergistics2.ItemMaterial.WoodenGear.name=Roată de Lemn +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=Presă de Inginerie de Inscripţioner +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=Presă de Calculare de Inscripţioner +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=Presă de Logică de Inscripţioner +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=Circuit Imprimat de Inginerie +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=Circuit Imprimat de Calculare +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=Circuit Imprimat de Logică +item.appliedenergistics2.ItemMaterial.SiliconPress.name=Presă de Silicon de Inscripţioner +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=Silicon Imprimat +item.appliedenergistics2.ItemMaterial.NamePress.name=Presă de Nume de Inscripţioner +item.appliedenergistics2.ItemMaterial.SkyDust.name=Praf de Piatra-Cerului + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=Lan de Anihilaţie +item.appliedenergistics2.ItemPart.CableAnchor.name=Ancoră de Cablu +item.appliedenergistics2.ItemPart.CableCovered.name=Cablu Acoperit ME +item.appliedenergistics2.ItemPart.CableGlass.name=Cablu de Sticlă ME +item.appliedenergistics2.ItemPart.CableSmart.name=Cablu Deştept ME +item.appliedenergistics2.ItemPart.CableDense.name=Cablu Dens ME +item.appliedenergistics2.ItemPart.StorageMonitor.name=Monitor de Stocare ME +item.appliedenergistics2.ItemPart.ConversionMonitor.name=Monitor de Conversie ME +item.appliedenergistics2.ItemPart.CraftingTerminal.name=Terminal de Craftare ME +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=Panou Iluminat +item.appliedenergistics2.ItemPart.Monitor.name=Panou Iluminat Deschis +item.appliedenergistics2.ItemPart.DarkMonitor.name=Panou Iluminat Închis +item.appliedenergistics2.ItemPart.ExportBus.name=Punct de Export ME +item.appliedenergistics2.ItemPart.FormationPlane.name=Lan de Formaţie ME +item.appliedenergistics2.ItemPart.ImportBus.name=Punct de Import ME +item.appliedenergistics2.ItemPart.Interface.name=Interfaţă ME +item.appliedenergistics2.ItemPart.LevelEmitter.name=Emiţător Nivel ME +item.appliedenergistics2.ItemPart.P2PTunnel.name=Tunel P2P +item.appliedenergistics2.ItemPart.PatternTerminal.name=Terminal de Model ME +item.appliedenergistics2.ItemPart.QuartzFiber.name=Fibră de Cuarţ +item.appliedenergistics2.ItemPart.StorageBus.name=Punct de Stocare ME +item.appliedenergistics2.ItemPart.Terminal.name=Terminal ME +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=Punct Invertat de Activare ME +item.appliedenergistics2.ItemPart.ToggleBus.name=Punct de Activare ME +item.appliedenergistics2.ItemPart.CraftingMonitor.name=Monitor de Craftare ME + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=128³ Celulă Spaţială de Stocare +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=Celulă Spaţială de Stocare 16³ +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=Celulă Spaţială de Stocare 2³ + +item.appliedenergistics2.ToolCertusQuartzAxe.name=Topor de Cuarţ Certus +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=Cuţit de Cuarţ Certus +item.appliedenergistics2.ToolCertusQuartzHoe.name=Sapă de Cuarţ Certus +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=Târnăcop de Cuarţ Certus +item.appliedenergistics2.ToolCertusQuartzSpade.name=Lopată de Cuarţ Certus +item.appliedenergistics2.ToolCertusQuartzSword.name=Sabie de Cuarţ Certus +item.appliedenergistics2.ToolCertusQuartzWrench.name=Cheie de Cuarţ Certus + +item.appliedenergistics2.ToolNetherQuartzAxe.name=Topor de Cuarţ +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=Cuţit de Cuarţ +item.appliedenergistics2.ToolNetherQuartzHoe.name=Sapă de Cuarţ +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=Târnăcop de Cuarţ +item.appliedenergistics2.ToolNetherQuartzSpade.name=Lopată de Cuarţ +item.appliedenergistics2.ToolNetherQuartzSword.name=Sabie de Cuarţ +item.appliedenergistics2.ToolNetherQuartzWrench.name=Cheie de Cuarţ + +item.appliedenergistics2.ToolPortableCell.name=Celulă Portabilă +item.appliedenergistics2.ToolNetworkTool.name=Unealtă de Reţea +item.appliedenergistics2.ToolChargedStaff.name=Baston Încărcat +item.appliedenergistics2.ToolEntropyManipulator.name=Manipulator de Entropie +item.appliedenergistics2.ToolMassCannon.name=Tun de Materie +item.appliedenergistics2.ToolMemoryCard.name=Cartelă de Memorie +item.appliedenergistics2.ToolWirelessTerminal.name=Terminal Wireless +item.appliedenergistics2.ToolBiometricCard.name=Cartelă Biometrică + +item.appliedenergistics2.ToolDebugCard.name=Dev.CartelăDebug +item.appliedenergistics2.ToolReplicatorCard.name=Dev.CartelăReplicatoare diff --git a/src/main/resources/assets/appliedenergistics2/lang/ru_RU.lang b/src/main/resources/assets/appliedenergistics2/lang/ru_RU.lang new file mode 100644 index 00000000..3115ef61 --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/ru_RU.lang @@ -0,0 +1,506 @@ +tile.appliedenergistics2.BlockCableBus.name=AE2 кабель и/или шина +tile.appliedenergistics2.BlockCellWorkbench.name=Верстак для ячеек +tile.appliedenergistics2.BlockCharger.name=Зарядник +tile.appliedenergistics2.BlockChest.name=МЭ сундук +tile.appliedenergistics2.BlockCondenser.name=Конденсатор материи +tile.appliedenergistics2.BlockController.name=МЭ контроллер +tile.appliedenergistics2.BlockCrank.name=Деревянная рукоятка +tile.appliedenergistics2.BlockCreativeEnergyCell.name=Творческая энергетическая ячейка +tile.appliedenergistics2.BlockDenseEnergyCell.name=Плотная энергетическая ячейка +tile.appliedenergistics2.BlockEnergyCell.name=Энергетическая ячейка +tile.appliedenergistics2.BlockDrive.name=МЭ накопитель +tile.appliedenergistics2.BlockEnergyAcceptor.name=Приёмщик энергии +tile.appliedenergistics2.BlockGrinder.name=Кварцевый дробитель +tile.appliedenergistics2.BlockMatrixFrame.name=Каркас матрицы +tile.appliedenergistics2.BlockIOPort.name=МЭ порт ввода\вывода +tile.appliedenergistics2.BlockInscriber.name=Высекатель +tile.appliedenergistics2.BlockInterface.name=МЭ интерфейс +tile.appliedenergistics2.BlockQuantumLinkChamber.name=МЭ камера квантовой связи +tile.appliedenergistics2.BlockQuantumRing.name=МЭ квантовое кольцо +tile.appliedenergistics2.BlockFluix.name=Изменчивый блок +tile.appliedenergistics2.BlockQuartz.name=Блок истинного кварца +tile.appliedenergistics2.BlockQuartzChiseled.name=Резной блок истинного кварца +tile.appliedenergistics2.BlockQuartzGlass.name=Кварцевое стекло +tile.appliedenergistics2.BlockQuartzLamp.name=Энергичное кварцевое стекло +tile.appliedenergistics2.BlockQuartzPillar.name=Колонна истинного кварца +tile.appliedenergistics2.BlockQuartzTorch.name=Крепление заряженного кварца +tile.appliedenergistics2.BlockLightDetector.name=Крепление обнаружения света +tile.appliedenergistics2.BlockSpatialIOPort.name=Пространственный порт ввода\вывода +tile.appliedenergistics2.BlockSpatialPylon.name=Пространственный пилон +tile.appliedenergistics2.BlockTinyTNT.name=Маленький динамит +tile.appliedenergistics2.BlockVibrationChamber.name=Вибрационная камера +tile.appliedenergistics2.BlockWireless.name=МЭ беспроводная точка доступа +tile.appliedenergistics2.OreQuartz.name=Руда истинного кварца +tile.appliedenergistics2.OreQuartzCharged.name=Заряженная руда истинного кварца +tile.appliedenergistics2.BlockSecurity.name=МЭ терминал безопасности +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=Ускоритель роста кристаллов +tile.appliedenergistics2.BlockSkyStone.name=Небесный камень +tile.appliedenergistics2.BlockSkyStone.Block.name=Блок небесного камня +tile.appliedenergistics2.BlockSkyStone.Brick.name=Кирпич небесного камня +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=Малый кирпич небесного камня +tile.appliedenergistics2.BlockSkyChest.name=Сундук из небесного камня +tile.appliedenergistics2.BlockSkyChest.Block.name=Сундук из блока небесного камня +tile.appliedenergistics2.BlockSkyCompass.name=Метеоритный компас +tile.appliedenergistics2.BlockCraftingMonitor.name=Монитор создания +tile.appliedenergistics2.BlockCraftingStorage.name=1К хранилище создания +tile.appliedenergistics2.BlockCraftingStorage4k.name=4К хранилище создания +tile.appliedenergistics2.BlockCraftingStorage16k.name=16К хранилище создания +tile.appliedenergistics2.BlockCraftingStorage64k.name=64К хранилище создания +tile.appliedenergistics2.BlockCraftingAccelerator.name=Блок обработки создания +tile.appliedenergistics2.BlockCraftingUnit.name=Блок создания +tile.appliedenergistics2.BlockMolecularAssembler.name=Молекулярный сборщик + +chat.appliedenergistics2.ChestCannotReadStorageCell=МЭ сундук не может прочитать ячейку хранения. +chat.appliedenergistics2.SettingCleared=Настройки сброшены. +chat.appliedenergistics2.OutOfRange=Беспроводная сеть вне зоны действия. +chat.appliedenergistics2.InvalidMachine=Неподходящий механизм. +chat.appliedenergistics2.LoadedSettings=Настройки успешно загружены. +chat.appliedenergistics2.DeviceNotPowered=Устройству недостаточно энергии. +chat.appliedenergistics2.MachineNotPowered=Устройство без питания. +chat.appliedenergistics2.CommunicationError=Ошибка связи с сетью. +chat.appliedenergistics2.SavedSettings=Настройки успешно сохранены. +chat.appliedenergistics2.AmmoDepleted=Боеприпасы исчерпаны. +chat.appliedenergistics2.isNowLocked=Монитор заблокирован. +chat.appliedenergistics2.isNowUnlocked=Монитор разблокирован. + +itemGroup.appliedenergistics2=Applied Energistics 2 +itemGroup.appliedenergistics2.facades=Applied Energistics 2: Фасады + +gui.appliedenergistics2.CraftingTerminal=Терминал создания +gui.appliedenergistics2.METunnel=МЭ +gui.appliedenergistics2.ItemTunnel=Предмет +gui.appliedenergistics2.FluidTunnel=Жидкость +gui.appliedenergistics2.RedstoneTunnel=Красный камень +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU +gui.appliedenergistics2.RFTunnel=RF +gui.appliedenergistics2.LightTunnel=Свет + +gui.appliedenergistics2.security.extract.name=Забирать +gui.appliedenergistics2.security.inject.name=Класть +gui.appliedenergistics2.security.craft.name=Создавать +gui.appliedenergistics2.security.build.name=Строить +gui.appliedenergistics2.security.security.name=Безопасность + +gui.appliedenergistics2.security.extract.tip=Пользователю разрешено забирать предметы из хранилища. +gui.appliedenergistics2.security.inject.tip=Пользователю разрешено класть предметы в хранилище. +gui.appliedenergistics2.security.craft.tip=Пользователь может инициировать новое создание. +gui.appliedenergistics2.security.build.tip=Пользователь может изменять физическую конфигурацию сети и менять настройки. +gui.appliedenergistics2.security.security.tip=Пользователь может получить доступ и настраивать терминал безопасности в сети. + +gui.appliedenergistics2.Efficiency=Эффективность +gui.appliedenergistics2.RequiredPower=Требуемая энергия +gui.appliedenergistics2.StoredPower=Хранится энергии +gui.appliedenergistics2.MaxPower=Макс. энергия +gui.appliedenergistics2.QuartzCuttingKnife=Кварцевый нож +gui.appliedenergistics2.Inscriber=Высекатель +gui.appliedenergistics2.Wireless=Беспроводная точка доступа +gui.appliedenergistics2.WirelessTerminal=Беспроводной терминал +gui.appliedenergistics2.NoPermissions=Нет выбранных разрешений +gui.appliedenergistics2.SecurityCardEditor=Редактор биометрических карт +gui.appliedenergistics2.Encoded=Зашифрованный +gui.appliedenergistics2.Priority=Приоритет +gui.appliedenergistics2.StorageBus=Шина хранения +gui.appliedenergistics2.EnergyDrain=Пассивное потребление +gui.appliedenergistics2.Installed=Установлено +gui.appliedenergistics2.NetworkTool=Сетевой инструмент +gui.appliedenergistics2.PowerUsageRate=Потребление энергии +gui.appliedenergistics2.PowerInputRate=Выработка энергии +gui.appliedenergistics2.PortableCell=Переносная ячейка +gui.appliedenergistics2.Security=Терминал безопасности +gui.appliedenergistics2.CellWorkbench=Верстак для ячеек +gui.appliedenergistics2.QuantumLinkChamber=Камера квантовой связи +gui.appliedenergistics2.IOPort=МЭ порт ввода\вывода +gui.appliedenergistics2.Chest=МЭ сундук +gui.appliedenergistics2.Condenser=Конденсатор материи +gui.appliedenergistics2.Config=Настройки +gui.appliedenergistics2.Drive=МЭ накопитель +gui.appliedenergistics2.ExportBus=МЭ шина экспорта +gui.appliedenergistics2.GrindStone=Кварцевый дробитель +gui.appliedenergistics2.ImportBus=МЭ шина импорта +gui.appliedenergistics2.Interface=МЭ интерфейс +gui.appliedenergistics2.LevelEmitter=МЭ излучатель уровня +gui.appliedenergistics2.Of=из +gui.appliedenergistics2.Patterns=Шаблоны +gui.appliedenergistics2.SpatialIOPort=Пространственный порт ввода\вывода +gui.appliedenergistics2.StoredEnergy=Накопленная энергия +gui.appliedenergistics2.StoredItems=Хранящиеся предметы +gui.appliedenergistics2.Terminal=Терминал +gui.appliedenergistics2.InterfaceTerminal=Терминал интерфейсов +gui.appliedenergistics2.InterfaceTerminalHint=Показать или спрятать в терминале интерфейсов. +gui.appliedenergistics2.FormationPlane=Плоскость формирования +gui.appliedenergistics2.VibrationChamber=Вибрационная камера +gui.appliedenergistics2.NetworkDetails=Подробности сети +gui.appliedenergistics2.StorageCells=МЭ ячейки хранения +gui.appliedenergistics2.IOBuses=МЭ шина импорта\экспорта +gui.appliedenergistics2.Stores=Хранит +gui.appliedenergistics2.BytesUsed=байт использовано +gui.appliedenergistics2.Types=типов +gui.appliedenergistics2.Blank=Чистый +gui.appliedenergistics2.Unlinked=Не связанный +gui.appliedenergistics2.Linked=Связанный +gui.appliedenergistics2.StoredSize=Запасённое количество +gui.appliedenergistics2.SkyChest=Сундук из небесного камня +gui.appliedenergistics2.PatternTerminal=Терминал шаблонов +gui.appliedenergistics2.CraftingPattern=Создание шаблонов +gui.appliedenergistics2.MolecularAssembler=Молекулярный сборщик +gui.appliedenergistics2.ProcessingPattern=Обработка шаблона +gui.appliedenergistics2.Crafts=Создаёт +gui.appliedenergistics2.And=и +gui.appliedenergistics2.Creates=Делает +gui.appliedenergistics2.With=с +gui.appliedenergistics2.InWorldCrafting=AE2 в мировом создании +gui.appliedenergistics2.inWorldFluix=Бросьте 1 заряженный истинный кварц + 1 кварц Нижнего мира + пыль красного камня в воду рядом друг с другом и немного подождите, чтобы получить 2 изменчивых кристалла. +gui.appliedenergistics2.inWorldPurification=Бросьте любое семя кристалла, сделанное из пыли кристалла и песок в лужу воды,; чтобы ускорить процесс добавьте ускорители роста кристаллов. +gui.appliedenergistics2.inWorldPurificationNether=Бросьте семя кварца Нижнего мира, которое делается из пыли кварца Нижнего мира, вместе с песком в лужу; чтобы ускорить процесс добавьте ускорители роста кристаллов. +gui.appliedenergistics2.inWorldPurificationFluix=Бросьте изменчивое семя, сделанное из изменчивой пыли, и песок в лужу; чтобы ускорить процесс добавьте ускорители роста кристаллов. +gui.appliedenergistics2.inWorldSingularity=Чтобы сделать, бросьте 1 сингулярность и 1 пыль Края и сделайте взрыв рядом с предметами. +gui.appliedenergistics2.ChargedQuartz=Заряженный истинный кварц создаётся с помощью установки не заряженного истинного кварца в зарядник, который подключен к питанию. +gui.appliedenergistics2.ChargedQuartzFind=Заряженный истинный кварц может быть найден в мире реже, чем истинный кварц, он выглядит как обычный истинный кварц, за исключением того, что он сверкает. +gui.appliedenergistics2.OfSecondOutput=% шанс вторичного вывода. +gui.appliedenergistics2.NoSecondOutput=Нет вторичного вывода +gui.appliedenergistics2.SelectAmount=Выбрать количество +gui.appliedenergistics2.CopyMode=Режим копирования +gui.appliedenergistics2.CopyModeDesc=Контролирует очищено ли содержимое панели конфигурации, когда ячейка была убрана. +gui.appliedenergistics2.Next=Следующий +gui.appliedenergistics2.Lumen=Люмен +gui.appliedenergistics2.Empty=Пустой +gui.appliedenergistics2.Stored=Хранится +gui.appliedenergistics2.Cancel=Отмена +gui.appliedenergistics2.Crafting=Создание +gui.appliedenergistics2.Scheduled=Scheduled +gui.appliedenergistics2.CraftingStatus=Статус создания +gui.appliedenergistics2.FromStorage=Доступно +gui.appliedenergistics2.ToCraft=чтобы создать +gui.appliedenergistics2.CraftingPlan=План создания +gui.appliedenergistics2.Automatic=Automatic +gui.appliedenergistics2.Start=Старт +gui.appliedenergistics2.Missing=Отсутствует +gui.appliedenergistics2.Bytes=Хранилище +gui.appliedenergistics2.Simulation=Моделирование +gui.appliedenergistics2.CoProcessors=Сопроцессоры +gui.appliedenergistics2.CraftingCPU=ЦП создания +gui.appliedenergistics2.NoCraftingCPUs=Нет доступных ЦП создания +gui.appliedenergistics2.CalculatingWait=Вычисление, пожалуйста подождите... +gui.appliedenergistics2.Clean=Очистка +gui.appliedenergistics2.InvalidPattern=Неверный шаблон +gui.appliedenergistics2.Range=Дальность +gui.appliedenergistics2.TransparentFacades=Прозрачные фасады +gui.appliedenergistics2.TransparentFacadesHint=Контролирует видимость фасадов, когда сетевой инструмент находится на панели инструментов. +gui.appliedenergistics2.CPUs=ЦП +gui.appliedenergistics2.NoCraftingJobs=Нет активных заданий создания +gui.appliedenergistics2.FacadeCrafting=Создание фасадов +gui.appliedenergistics2.inWorldCraftingPresses=С помощью метеоритного компаса можно отыскать метеориты, внутри которых можно найти прессы для высекателя +gui.appliedenergistics2.Included=Included +gui.appliedenergistics2.Excluded=Excluded +gui.appliedenergistics2.Partitioned=Partitioned +gui.appliedenergistics2.Precise=Precise +gui.appliedenergistics2.Fuzzy=Fuzzy + +gui.tooltips.appliedenergistics2.Stash=Хранить предметы +gui.tooltips.appliedenergistics2.StashDesc=Возвращает предметы на сетку создания, в сетевое хранилище. +gui.tooltips.appliedenergistics2.Substitutions=Ore-Dict замещения +gui.tooltips.appliedenergistics2.SubstitutionsDesc=Измените замещения для вводимых компонентов. +gui.tooltips.appliedenergistics2.SubstitutionsOn=Замещения включены +gui.tooltips.appliedenergistics2.SubstitutionsOff=Замещения выключены +gui.tooltips.appliedenergistics2.Encode=Закодировать шаблон +gui.tooltips.appliedenergistics2.EncodeDescription=Напишите введённый шаблон к текущему закодированному шаблону, или к доступному чистому шаблону. +gui.tooltips.appliedenergistics2.FuzzyMode=Нечёткое сравнение +gui.tooltips.appliedenergistics2.FZPercent_25=Разделять урон с 25% +gui.tooltips.appliedenergistics2.FZPercent_50=Разделять урон с 50% +gui.tooltips.appliedenergistics2.FZPercent_75=Разделять урон с 75% +gui.tooltips.appliedenergistics2.FZPercent_99=Разделять урон с 99% +gui.tooltips.appliedenergistics2.SortOrder=Порядок сортировки +gui.tooltips.appliedenergistics2.SortBy=Сортировать по +gui.tooltips.appliedenergistics2.FZIgnoreAll=Любое соответствие +gui.tooltips.appliedenergistics2.TransferDirection=Направление передачи +gui.tooltips.appliedenergistics2.TransferToNetwork=Передавать данные в сеть +gui.tooltips.appliedenergistics2.TransferToStorageCell=Передавать данные в ячейку хранения +gui.tooltips.appliedenergistics2.ToggleSortDirection=Переключить направление сортировки +gui.tooltips.appliedenergistics2.StoredItems=Хранящиеся предметы +gui.tooltips.appliedenergistics2.StoredCraftable=Запасено/можно создать +gui.tooltips.appliedenergistics2.View=Вид +gui.tooltips.appliedenergistics2.RedstoneMode=Режим красного камня +gui.tooltips.appliedenergistics2.OperationMode=Режим работы +gui.tooltips.appliedenergistics2.NumberOfItems=Количество предметов +gui.tooltips.appliedenergistics2.ItemName=Имя предмета +gui.tooltips.appliedenergistics2.PowerUnits=Энергетические единицы +gui.tooltips.appliedenergistics2.IOMode=Режим ввода\вывода +gui.tooltips.appliedenergistics2.CondenserOutput=МЭ конденсатор - Выход +gui.tooltips.appliedenergistics2.PartitionStorage=Раздел хранения +gui.tooltips.appliedenergistics2.Clear=Очистить +gui.tooltips.appliedenergistics2.TrashController=Удаление по нажатию Shift/Пробел. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=Блокирующий режим +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=Режим создания +gui.tooltips.appliedenergistics2.Trash=Уничтожить предметы +gui.tooltips.appliedenergistics2.MatterBalls=Конденсировать в шары материи\n%s за предмет +gui.tooltips.appliedenergistics2.Singularity=Конденсировать в сингулярности\n%s за предмет +gui.tooltips.appliedenergistics2.Read=Только извлекать +gui.tooltips.appliedenergistics2.Write=Только вкладывать +gui.tooltips.appliedenergistics2.ReadWrite=Двухсторонний +gui.tooltips.appliedenergistics2.AlwaysActive=Всегда активен +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=Активен без сигнала +gui.tooltips.appliedenergistics2.ActiveWithSignal=Активен с сигналом +gui.tooltips.appliedenergistics2.ActiveOnPulse=Активируется раз за импульс +gui.tooltips.appliedenergistics2.EmitLevelsBelow=Излучать, когда уровни ниже или равны пределу. +gui.tooltips.appliedenergistics2.EmitLevelAbove=Излучать, когда уровни выше или равны пределу. +gui.tooltips.appliedenergistics2.SearchMode_Auto=Автоматический поиск +gui.tooltips.appliedenergistics2.SearchMode_Standard=Обычный поиск +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=Автоматический NEI-синхронизированный поиск +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=Стандартный NEI-синхронизированный поиск +gui.tooltips.appliedenergistics2.SearchMode=Режим поля поиска +gui.tooltips.appliedenergistics2.PartitionStorageHint=Настраивает раздел на основе текущих хранящихся предметах. +gui.tooltips.appliedenergistics2.ClearSettings=Очистить настройки +gui.tooltips.appliedenergistics2.Craftable=Можно создать +gui.tooltips.appliedenergistics2.MoveWhenEmpty=Сдвигать к выходу, когда пустой. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=Сдвигать к выходу, когда работа сделана. +gui.tooltips.appliedenergistics2.MoveWhenFull=Сдвигать к выходу, когда полный. +gui.tooltips.appliedenergistics2.Disabled=Отключено +gui.tooltips.appliedenergistics2.Enable=Включено +gui.tooltips.appliedenergistics2.Blocking=Не проталкивать предметы создания, если инвентарь содержит предметы. +gui.tooltips.appliedenergistics2.NonBlocking=Игнорировать содержимое целевого инвентаря. +gui.tooltips.appliedenergistics2.Craft=Режим создания +gui.tooltips.appliedenergistics2.CraftOnly=Не использовать хранящиеся предметы, только создавать предметы во время экспорта. +gui.tooltips.appliedenergistics2.CraftEither=Использовать хранящиеся предметы или создавать предметы во время экспорта. +gui.tooltips.appliedenergistics2.LevelType=Тип уровня +gui.tooltips.appliedenergistics2.LevelType_Energy=Энергия +gui.tooltips.appliedenergistics2.LevelType_Item=Предмет +gui.tooltips.appliedenergistics2.InventoryTweaks=Inventory Tweaks +gui.tooltips.appliedenergistics2.Mod=Мод +gui.tooltips.appliedenergistics2.TerminalStyle=Стиль терминала +gui.tooltips.appliedenergistics2.TerminalStyle_Full=Полноэкранный терминал +gui.tooltips.appliedenergistics2.TerminalStyle_Tall=Высокий отцентрированный терминал +gui.tooltips.appliedenergistics2.TerminalStyle_Small=Маленький отцентрированный терминал +gui.tooltips.appliedenergistics2.DoesntDespawn=Этот предмет не будет исчезать. +gui.tooltips.appliedenergistics2.EmitterMode=Режим излучатель создания +gui.tooltips.appliedenergistics2.CraftViaRedstone=Излучать сигнал красного камня для создания вещи. +gui.tooltips.appliedenergistics2.EmitWhenCrafting=Излучать сигнал красного камня при создании вещи. +gui.tooltips.appliedenergistics2.ReportInaccessibleItems=Сообщать о недоступных вещах +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsYes=Да: Предметы, которые не могут быть извлечены, будут видны. +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsNo=Нет: Только извлекаемые предметы будут видны. + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=Minecraft Joules +gui.appliedenergistics2.units.ic2=Energy Units +gui.appliedenergistics2.units.mekanism=Joules +gui.appliedenergistics2.units.rotarycraft=Watts +gui.appliedenergistics2.units.thermalexpansion=Redstone Flux + +gui.appliedenergistics2.White=Белый +gui.appliedenergistics2.Orange=Оранжевый +gui.appliedenergistics2.Magenta=Сиреневый +gui.appliedenergistics2.LightBlue=Светло-синий +gui.appliedenergistics2.Yellow=Жёлтый +gui.appliedenergistics2.Lime=Лаймовый +gui.appliedenergistics2.Pink=Розовый +gui.appliedenergistics2.Gray=Серый +gui.appliedenergistics2.LightGray=Светло-серый +gui.appliedenergistics2.Cyan=Бирюзовый +gui.appliedenergistics2.Purple=Фиолетовый +gui.appliedenergistics2.Blue=Синий +gui.appliedenergistics2.Brown=Коричневый +gui.appliedenergistics2.Green=Зелёный +gui.appliedenergistics2.Red=Красный +gui.appliedenergistics2.Black=Чёрный +gui.appliedenergistics2.Fluix=Изменчивый + +waila.appliedenergistics2.DeviceOnline=Устройство включено +waila.appliedenergistics2.DeviceOffline=Устройство выключено +waila.appliedenergistics2.DeviceMissingChannel=У устройства отсутствует канал +waila.appliedenergistics2.Locked=Заблокировано +waila.appliedenergistics2.Unlocked=Разблокировано +waila.appliedenergistics2.Showing=Показывает +waila.appliedenergistics2.Contains=Содержит +waila.appliedenergistics2.Channels=Каналы + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=1К МЭ ячейка хранения +item.appliedenergistics2.ItemBasicStorageCell.4k.name=4К МЭ ячейка хранения +item.appliedenergistics2.ItemBasicStorageCell.16k.name=16К МЭ ячейка хранения +item.appliedenergistics2.ItemBasicStorageCell.64k.name=64К МЭ ячейка хранения +item.appliedenergistics2.ItemCreativeStorageCell.name=Творческая МЭ ячейка хранения +item.appliedenergistics2.ItemEncodedPattern.name=Кодированный шаблон +item.appliedenergistics2.ItemViewCell.name=Ячейка представления +item.appliedenergistics2.ItemFacade.name=Кабельный фасад + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=Семя истинного кварца +item.appliedenergistics2.ItemCrystalSeed.Nether.name=Семя кварца Нижнего мира +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=Изменчивое семя +item.appliedenergistics2.ItemMaterial.InvalidType.name=Этот предмет отключен. +item.appliedenergistics2.ItemMaterial.AdvCard.name=Продвинутая карта +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=Ядро истребления +item.appliedenergistics2.ItemMaterial.BasicCard.name=Базовая карта +item.appliedenergistics2.ItemMaterial.BlankPattern.name=Пустой шаблон +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=Вычислительный процессор +item.appliedenergistics2.ItemMaterial.CardCapacity.name=Карта ёмкости +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=Карта нечёткости +item.appliedenergistics2.ItemMaterial.CardInverter.name=Карта инвертирования +item.appliedenergistics2.ItemMaterial.CardRedstone.name=Карта красного камня +item.appliedenergistics2.ItemMaterial.CardSpeed.name=Карта ускорения +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=2³ пространственный компонент +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=16³ пространственный компонент +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=128³ пространственный компонент +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=1К МЭ компонент хранения +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=4К МЭ компонент хранения +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=16К МЭ компонент хранения +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=64К МЭ компонент хранения +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=Кристалл истинного кварца +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=Заряженный кристалл истинного кварца +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=Пыль истинного кварца +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=МЭ корпус ячейки хранения +item.appliedenergistics2.ItemMaterial.EnderDust.name=Пыль Края +item.appliedenergistics2.ItemMaterial.EngProcessor.name=Инженерный процессор +item.appliedenergistics2.ItemMaterial.Flour.name=Мука +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=Изменчивый кристалл +item.appliedenergistics2.ItemMaterial.FluixDust.name=Изменчивая пыль +item.appliedenergistics2.ItemMaterial.FluixPearl.name=Изменчивая жемчужина +item.appliedenergistics2.ItemMaterial.FormationCore.name=Ядро формирования +item.appliedenergistics2.ItemMaterial.GoldDust.name=Золотая пыль +item.appliedenergistics2.ItemMaterial.IronDust.name=Железная пыль +item.appliedenergistics2.ItemMaterial.IronNugget.name=Железный самородок +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=Логический процессор +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=Незаконченный логический процессор +item.appliedenergistics2.ItemMaterial.MatterBall.name=Шарик материи +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=Пыль кварца Нижнего мира +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=Чистый кристалл истинного кварца +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=Чистый изменчивый кристалл +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=Чистый кристалл кварца Нижнего мира +item.appliedenergistics2.ItemMaterial.QESingularity.name=Квантовая запутанная сингулярность +item.appliedenergistics2.ItemMaterial.Silicon.name=Кремний +item.appliedenergistics2.ItemMaterial.Singularity.name=Сингулярность +item.appliedenergistics2.ItemMaterial.Wireless.name=Беспроводной приёмник +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=Беспроводной усилитель +item.appliedenergistics2.ItemMaterial.WoodenGear.name=Деревянная шестерня +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=Инженерный пресс для высекателя +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=Вычислительный пресс для высекателя +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=Логический пресс для высекателя +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=Отпечатанный инженерный контур +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=Отпечатанный вычислительный контур +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=Отпечатанный логический контур +item.appliedenergistics2.ItemMaterial.SiliconPress.name=Кремниевый пресс для высекателя +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=Отпечатанный кремний +item.appliedenergistics2.ItemMaterial.NamePress.name=Именующий пресс для высекателя +item.appliedenergistics2.ItemMaterial.SkyDust.name=Пыль небесного камня +item.appliedenergistics2.ItemMaterial.CardCrafting.name=Карта создания + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=Плоскость истребления +item.appliedenergistics2.ItemPart.CableAnchor.name=Кабельный якорь +item.appliedenergistics2.ItemPart.CableCovered.name=МЭ закрытый кабель +item.appliedenergistics2.ItemPart.CableGlass.name=МЭ стеклянный кабель +item.appliedenergistics2.ItemPart.CableSmart.name=МЭ умный кабель +item.appliedenergistics2.ItemPart.CableDense.name=МЭ плотный кабель +item.appliedenergistics2.ItemPart.StorageMonitor.name=МЭ монитор хранения +item.appliedenergistics2.ItemPart.ConversionMonitor.name=МЭ монитор преобразования +item.appliedenergistics2.ItemPart.CraftingTerminal.name=МЭ терминал создания +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=Освещённая панель +item.appliedenergistics2.ItemPart.Monitor.name=Яркая освещённая панель +item.appliedenergistics2.ItemPart.DarkMonitor.name=Тёмная освещённая панель +item.appliedenergistics2.ItemPart.ExportBus.name=МЭ шина экспорта +item.appliedenergistics2.ItemPart.FormationPlane.name=МЭ плоскость формирования +item.appliedenergistics2.ItemPart.ImportBus.name=МЭ шина импорта +item.appliedenergistics2.ItemPart.Interface.name=МЭ интерфейс +item.appliedenergistics2.ItemPart.LevelEmitter.name=МЭ излучатель уровня +item.appliedenergistics2.ItemPart.P2PTunnel.name=Туннель точка-точка +item.appliedenergistics2.ItemPart.PatternTerminal.name=МЭ терминал шаблонов +item.appliedenergistics2.ItemPart.QuartzFiber.name=Кварцевое оптическое волокно +item.appliedenergistics2.ItemPart.StorageBus.name=МЭ шина хранения +item.appliedenergistics2.ItemPart.Terminal.name=МЭ терминал +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=МЭ инвертированная шина переключения +item.appliedenergistics2.ItemPart.ToggleBus.name=МЭ шина переключения +item.appliedenergistics2.ItemPart.CraftingMonitor.name=МЭ монитор создания +item.appliedenergistics2.ItemPart.InterfaceTerminal.name=МЭ терминал интерфейсов + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=128³ пространственная ячейка хранения +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=16³ пространственная ячейка хранения +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=2³ пространственная ячейка хранения + +item.appliedenergistics2.ToolCertusQuartzAxe.name=Топор из истинного кварца +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=Нож из истинного кварца +item.appliedenergistics2.ToolCertusQuartzHoe.name=Мотыга из истинного кварца +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=Кирка из истинного кварца +item.appliedenergistics2.ToolCertusQuartzSpade.name=Лопата из истинного кварца +item.appliedenergistics2.ToolCertusQuartzSword.name=Меч из истинного кварца +item.appliedenergistics2.ToolCertusQuartzWrench.name=Гаечный ключ из истинного кварца + +item.appliedenergistics2.ToolNetherQuartzAxe.name=Топор из кварца Нижнего мира +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=Нож из кварца Нижнего мира +item.appliedenergistics2.ToolNetherQuartzHoe.name=Мотыга из кварца Нижнего мира +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=Кирка из кварца Нижнего мира +item.appliedenergistics2.ToolNetherQuartzSpade.name=Лопата из кварца Нижнего мира +item.appliedenergistics2.ToolNetherQuartzSword.name=Меч из кварца Нижнего мира +item.appliedenergistics2.ToolNetherQuartzWrench.name=Гаечный ключ из кварца Нижнего мира + +item.appliedenergistics2.ItemPaintBall.name=Шар с краской +item.appliedenergistics2.ToolPortableCell.name=Портативная ячейка +item.appliedenergistics2.ToolNetworkTool.name=Сетевой инструмент +item.appliedenergistics2.ToolChargedStaff.name=Заряженный посох +item.appliedenergistics2.ToolEntropyManipulator.name=Манипулятор энтропии +item.appliedenergistics2.ToolMassCannon.name=Материальная пушка +item.appliedenergistics2.ToolMemoryCard.name=Карта памяти +item.appliedenergistics2.ToolColorApplicator.name=Аппликатор цвета +item.appliedenergistics2.ToolWirelessTerminal.name=Беспроводной терминал +item.appliedenergistics2.ToolBiometricCard.name=Биометрическая карта + +item.appliedenergistics2.ToolDebugCard.name=Разраб.отладочная карта +item.appliedenergistics2.ToolReplicatorCard.name=Разраб.карта-репликатор + +commands.ae2.usage=Команды предоставляемые Applied Energistics 2 - используйте /ae2 list для списка и /ae2 help _____ для помощи с командой. +commands.ae2.permissions=Вы не имеете соответствующих прав для запуска этой команды. +commands.ae2.ChunkLogger=Переключает загрузку и разгрузку чанков в журнал сервера. ( Оператор ) +commands.ae2.ChunkLoggerOn=Chunk Logging теперь включён +commands.ae2.ChunkLoggerOff=Chunk Logging теперь выключен +commands.ae2.Supporters=Отображает список жертвователей AE2 + +achievement.ae2.Compass=Охотник на метеориты +achievement.ae2.Compass.desc=Сделайте метеоритный компас +achievement.ae2.Presses=Неизвестная технология +achievement.ae2.Presses.desc=Найдите вычислительный пресс +achievement.ae2.SpatialIO=Пространственное координирование +achievement.ae2.SpatialIO.desc=Сделайте пространственный порт ввода\вывода +achievement.ae2.SpatialIOExplorer=Чтобы смело идти +achievement.ae2.SpatialIOExplorer.desc=Храните вещи в пространственной ячейки хранения +achievement.ae2.StorageCell=Лучше, чем сундуки +achievement.ae2.StorageCell.desc=Сделайте ячейку хранения +achievement.ae2.IOPort=Перемешка ячеек хранения +achievement.ae2.IOPort.desc=Сделайте порт ввода\вывода +achievement.ae2.CraftingTerminal=Большой верстак +achievement.ae2.CraftingTerminal.desc=Сделайте терминал создания +achievement.ae2.PatternTerminal=Маэстро создания +achievement.ae2.PatternTerminal.desc=Сделайте терминал шаблонов +achievement.ae2.ChargedQuartz=Шок +achievement.ae2.ChargedQuartz.desc=Найдите заряженный кварц +achievement.ae2.Fluix=Неестественные +achievement.ae2.Fluix.desc=Сделайте изменчивые кристаллы +achievement.ae2.Charger=Изменчивое производство +achievement.ae2.Charger.desc=Сделайте зарядник +achievement.ae2.CrystalGrowthAccelerator=Ускоритель - ещё мягко сказано +achievement.ae2.CrystalGrowthAccelerator.desc=Сделайте ускоритель роста кристаллов +achievement.ae2.GlassCable=Изменчивое энергетическое соединение +achievement.ae2.GlassCable.desc=Сделайте МЭ стеклянный кабель +achievement.ae2.Networking1=Сетевое подмастерье +achievement.ae2.Networking1.desc=Достигните 8 каналов, подключая устройства к сети. +achievement.ae2.Controller=Коммутатор сети +achievement.ae2.Controller.desc=Сделайте контроллер +achievement.ae2.Networking2=Сетевой инженер +achievement.ae2.Networking2.desc=Достигните 128 каналов, подключая устройства к сети. +achievement.ae2.Networking3=Сетевой администратор +achievement.ae2.Networking3.desc=Достигните 2048 каналов, подключая устройства к сети. +achievement.ae2.P2P=Сеть точка-точка +achievement.ae2.P2P.desc=Сделайте туннель точка-точка +achievement.ae2.Recursive=Рекурсивная сеть +achievement.ae2.Recursive.desc=Поставьте интерфейс на шину хранения. +achievement.ae2.CraftingCPU=Создание следующего поколения +achievement.ae2.CraftingCPU.desc=Сделайте блок создания +achievement.ae2.Facade=Сетевая эстетика +achievement.ae2.Facade.desc=Сделайте кабельный фасад +achievement.ae2.NetworkTool=Диагностика сети +achievement.ae2.NetworkTool.desc=Сделайте сетевой инструмент +achievement.ae2.PortableCell=Кочевник с хранилищем +achievement.ae2.PortableCell.desc=Сделайте переносную ячейку +achievement.ae2.StorageBus=Безграничный потенциал +achievement.ae2.StorageBus.desc=Сделайте шину хранения +achievement.ae2.QNB=Квантовое туннелирование +achievement.ae2.QNB.desc=Сделайте квантовое соединение + +stat.ae2.ItemsInserted=Предметов добавлено в МЭ хранилище +stat.ae2.ItemsExtracted=Предметов извлечено из МЭ хранилища +stat.ae2.TurnedCranks=Сломано рукояток diff --git a/src/main/resources/assets/appliedenergistics2/lang/zh_CN.lang b/src/main/resources/assets/appliedenergistics2/lang/zh_CN.lang new file mode 100644 index 00000000..6ec3cf88 --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/zh_CN.lang @@ -0,0 +1,516 @@ +tile.appliedenergistics2.BlockCableBus.name=AE2线缆和(或)总线 +tile.appliedenergistics2.BlockCellWorkbench.name=元件工作台 +tile.appliedenergistics2.BlockCharger.name=充能器 +tile.appliedenergistics2.BlockChest.name=ME箱子 +tile.appliedenergistics2.BlockCondenser.name=物质聚合器 +tile.appliedenergistics2.BlockController.name=ME控制器 +tile.appliedenergistics2.BlockCrank.name=木质曲柄 +tile.appliedenergistics2.BlockCreativeEnergyCell.name=创造能源元件 +tile.appliedenergistics2.BlockDenseEnergyCell.name=致密能源元件 +tile.appliedenergistics2.BlockEnergyCell.name=能源元件 +tile.appliedenergistics2.BlockDrive.name=ME驱动器 +tile.appliedenergistics2.BlockEnergyAcceptor.name=能源接收器 +tile.appliedenergistics2.BlockGrinder.name=石英磨具 +tile.appliedenergistics2.BlockMatrixFrame.name=矩阵框架 +tile.appliedenergistics2.BlockIOPort.name=ME-IO端口 +tile.appliedenergistics2.BlockInscriber.name=压印器 +tile.appliedenergistics2.BlockInterface.name=ME接口 +tile.appliedenergistics2.BlockQuantumLinkChamber.name=ME量子链接仓 +tile.appliedenergistics2.BlockQuantumRing.name=ME量子环 +tile.appliedenergistics2.BlockFluix.name=福鲁伊克斯块 +tile.appliedenergistics2.BlockQuartz.name=赛特斯石英块 +tile.appliedenergistics2.BlockQuartzChiseled.name=錾制赛特斯石英块 +tile.appliedenergistics2.BlockQuartzGlass.name=石英玻璃 +tile.appliedenergistics2.BlockQuartzLamp.name=聚能石英玻璃 +tile.appliedenergistics2.BlockQuartzPillar.name=赛特斯竖纹石英块 +tile.appliedenergistics2.BlockQuartzTorch.name=充能石英火把 +tile.appliedenergistics2.BlockLightDetector.name=光亮探测器 +tile.appliedenergistics2.BlockSpatialIOPort.name=空间IO端口 +tile.appliedenergistics2.BlockSpatialPylon.name=空间塔 +tile.appliedenergistics2.BlockTinyTNT.name=迷你TNT +tile.appliedenergistics2.BlockVibrationChamber.name=谐振仓 +tile.appliedenergistics2.BlockWireless.name=ME无线访问点 +tile.appliedenergistics2.OreQuartz.name=赛特斯石英矿石 +tile.appliedenergistics2.OreQuartzCharged.name=充能赛特斯石英矿石 +tile.appliedenergistics2.BlockSecurity.name=ME安全终端 +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=晶体催生器 +tile.appliedenergistics2.BlockSkyStone.name=陨石 +tile.appliedenergistics2.BlockSkyStone.Block.name=陨石块 +tile.appliedenergistics2.BlockSkyStone.Brick.name=陨石石砖 +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=陨石砖块 +tile.appliedenergistics2.BlockSkyChest.name=陨石箱子 +tile.appliedenergistics2.BlockSkyChest.Block.name=陨石块箱子 +tile.appliedenergistics2.BlockSkyCompass.name=陨石罗盘 +tile.appliedenergistics2.BlockCraftingMonitor.name=合成监控器 +tile.appliedenergistics2.BlockCraftingStorage.name=1k合成存储器 +tile.appliedenergistics2.BlockCraftingStorage4k.name=4k合成存储器 +tile.appliedenergistics2.BlockCraftingStorage16k.name=16k合成存储器 +tile.appliedenergistics2.BlockCraftingStorage64k.name=64k合成存储器 +tile.appliedenergistics2.BlockCraftingAccelerator.name=并行处理单元 +tile.appliedenergistics2.BlockCraftingUnit.name=合成单元 +tile.appliedenergistics2.BlockMolecularAssembler.name=分子装配室 + +// 楼梯 +tile.appliedenergistics2.ChiseledQuartzStairBlock.name=錾制赛特斯石英楼梯 +tile.appliedenergistics2.FluixStairBlock.name=福鲁伊克斯楼梯 +tile.appliedenergistics2.QuartzPillarStairBlock.name=竖纹赛特斯石英楼梯 +tile.appliedenergistics2.QuartzStairBlock.name=赛特斯石英楼梯 +tile.appliedenergistics2.SkyStoneBlockStairBlock.name=陨石块楼梯 +tile.appliedenergistics2.SkyStoneBrickStairBlock.name=陨石石砖楼梯 +tile.appliedenergistics2.SkyStoneSmallBrickStairBlock.name=陨石砖块楼梯 +tile.appliedenergistics2.SkyStoneStairBlock.name=陨石楼梯 + +chat.appliedenergistics2.ChestCannotReadStorageCell=ME箱子无法读取存储元件. +chat.appliedenergistics2.SettingCleared=设置已清除. +chat.appliedenergistics2.OutOfRange=超出无线信号范围. +chat.appliedenergistics2.InvalidMachine=无效机器. +chat.appliedenergistics2.LoadedSettings=成功载入设定. +chat.appliedenergistics2.DeviceNotPowered=设备供能不足. +chat.appliedenergistics2.MachineNotPowered=机器未供能. +chat.appliedenergistics2.CommunicationError=网络交互错误. +chat.appliedenergistics2.SavedSettings=成功保存设定. +chat.appliedenergistics2.AmmoDepleted=弹药告罄. +chat.appliedenergistics2.isNowLocked=监控器已锁定. +chat.appliedenergistics2.isNowUnlocked=监控器已解锁. + +itemGroup.appliedenergistics2=应用能源2 +itemGroup.appliedenergistics2.facades=应用能源2-伪装板 + +gui.appliedenergistics2.CraftingTerminal=合成终端 +gui.appliedenergistics2.METunnel=ME +gui.appliedenergistics2.ItemTunnel=物品 +gui.appliedenergistics2.FluidTunnel=液体 +gui.appliedenergistics2.RedstoneTunnel=红石 +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU +gui.appliedenergistics2.RFTunnel=RF +gui.appliedenergistics2.LightTunnel=光 + +gui.appliedenergistics2.security.extract.name=取出 +gui.appliedenergistics2.security.inject.name=存入 +gui.appliedenergistics2.security.craft.name=合成 +gui.appliedenergistics2.security.build.name=建造 +gui.appliedenergistics2.security.security.name=安全 + +gui.appliedenergistics2.security.extract.tip=允许用户从存储空间中移除物品. +gui.appliedenergistics2.security.inject.tip=允许用户向存储空间中存入新物品. +gui.appliedenergistics2.security.craft.tip=用户可以启动新的合成. +gui.appliedenergistics2.security.build.tip=用户可以修改网络的物理结构,并调整配置. +gui.appliedenergistics2.security.security.tip=用户可以访问修改网络的安全终端. + +gui.appliedenergistics2.Efficiency=效率 +gui.appliedenergistics2.RequiredPower=所需能源 +gui.appliedenergistics2.StoredPower=现存能源 +gui.appliedenergistics2.MaxPower=最大能源 +gui.appliedenergistics2.QuartzCuttingKnife=石英切割刀 +gui.appliedenergistics2.Inscriber=压印器 +gui.appliedenergistics2.Wireless=无线访问点 +gui.appliedenergistics2.WirelessTerminal=无线终端 +gui.appliedenergistics2.NoPermissions=无选定权限 +gui.appliedenergistics2.SecurityCardEditor=身份卡编辑 +gui.appliedenergistics2.Encoded=已编码 +gui.appliedenergistics2.Priority=优先级 +gui.appliedenergistics2.StorageBus=存储总线 +gui.appliedenergistics2.EnergyDrain=被动流失 +gui.appliedenergistics2.Installed=已安装 +gui.appliedenergistics2.NetworkTool=网络工具 +gui.appliedenergistics2.PowerUsageRate=耗能 +gui.appliedenergistics2.PowerInputRate=产能 +gui.appliedenergistics2.PortableCell=便携元件 +gui.appliedenergistics2.Security=安全终端 +gui.appliedenergistics2.CellWorkbench=元件工作台 +gui.appliedenergistics2.QuantumLinkChamber=量子链接仓 +gui.appliedenergistics2.IOPort=ME-IO端口 +gui.appliedenergistics2.Chest=ME箱子 +gui.appliedenergistics2.Condenser=物质聚合器 +gui.appliedenergistics2.Config=配置 +gui.appliedenergistics2.Drive=ME驱动器 +gui.appliedenergistics2.ExportBus=ME输出总线 +gui.appliedenergistics2.GrindStone=磨具 +gui.appliedenergistics2.ImportBus=ME输入总线 +gui.appliedenergistics2.Interface=ME接口 +gui.appliedenergistics2.LevelEmitter=ME标准发信器 +gui.appliedenergistics2.Of=/ +gui.appliedenergistics2.Patterns=样板 +gui.appliedenergistics2.SpatialIOPort=空间IO端口 +gui.appliedenergistics2.StoredEnergy=已存储能源 +gui.appliedenergistics2.StoredItems=已存储物品 +gui.appliedenergistics2.Terminal=终端 +gui.appliedenergistics2.InterfaceTerminal=接口终端 +gui.appliedenergistics2.InterfaceTerminalHint=在接口终端显示或隐藏. +gui.appliedenergistics2.FormationPlane=成型面板 +gui.appliedenergistics2.VibrationChamber=谐振仓 +gui.appliedenergistics2.NetworkDetails=网络信息 +gui.appliedenergistics2.StorageCells=ME存储元件 +gui.appliedenergistics2.IOBuses=ME输入/输出总线 +gui.appliedenergistics2.Stores=Stores +gui.appliedenergistics2.BytesUsed=字节已使用 +gui.appliedenergistics2.Types=类型 +gui.appliedenergistics2.Blank=空白 +gui.appliedenergistics2.Unlinked=未链接 +gui.appliedenergistics2.Linked=已链接 +gui.appliedenergistics2.StoredSize=存储空间大小 +gui.appliedenergistics2.SkyChest=陨石箱子 +gui.appliedenergistics2.PatternTerminal=样板终端 +gui.appliedenergistics2.CraftingPattern=合成样板 +gui.appliedenergistics2.MolecularAssembler=分子装配室 +gui.appliedenergistics2.ProcessingPattern=处理样板 +gui.appliedenergistics2.Crafts=合成 +gui.appliedenergistics2.And=与 +gui.appliedenergistics2.Creates=制作 +gui.appliedenergistics2.With=使用 +gui.appliedenergistics2.InWorldCrafting=AE2在世界中的合成 +gui.appliedenergistics2.inWorldFluix=将1个充能赛特斯石英水晶,1个下界石英和1个红石,相继扔进同一格水里,并等待一会儿. +gui.appliedenergistics2.inWorldPurificationCertus=用赛特斯石英粉和沙子制作赛特斯石英种子,并扔进水里;使用晶体催生器可以让这个过程变得更快. +gui.appliedenergistics2.inWorldPurificationNether=用下界石英粉和沙子制作下界石英种子,并扔进水里;使用晶体催生器可以让这个过程变得更快. +gui.appliedenergistics2.inWorldPurificationFluix=用福鲁伊克斯粉和沙子制作福鲁伊克斯种子,并扔进水里;使用晶体催生器可以让这个过程变得更快. +gui.appliedenergistics2.inWorldSingularity=将1个奇点和一个末影珍珠粉仍在地上,并用爆炸性物品引爆. +gui.appliedenergistics2.ChargedQuartz=将未充能赛特斯石英插入充能器充能后,可以得到充能赛特斯石英. +gui.appliedenergistics2.ChargedQuartzFind=充能赛特斯石英也可以在世界中以普通赛特斯石英一半的几率找到,它的外观类似普通赛特斯石英,除了它会冒出闪电. +gui.appliedenergistics2.OfSecondOutput=% 的几率得到双倍产物. +gui.appliedenergistics2.NoSecondOutput=无双倍产物. +gui.appliedenergistics2.SelectAmount=选择数量 +gui.appliedenergistics2.CopyMode=复制模式 +gui.appliedenergistics2.CopyModeDesc=控制当取出存储元件时,是否清空配置格. +gui.appliedenergistics2.Next=下一页 +gui.appliedenergistics2.Lumen=光通 +gui.appliedenergistics2.Empty=空 +gui.appliedenergistics2.Stored=现存 +gui.appliedenergistics2.Cancel=取消 +gui.appliedenergistics2.Crafting=正在合成 +gui.appliedenergistics2.Scheduled=计划合成 +gui.appliedenergistics2.CraftingStatus=合成情况 +gui.appliedenergistics2.FromStorage=可用数量 +gui.appliedenergistics2.ToCraft=合成数量 +gui.appliedenergistics2.CraftingPlan=合成计划 +gui.appliedenergistics2.Automatic=自动分配 +gui.appliedenergistics2.Start=开始 +gui.appliedenergistics2.Missing=缺失 +gui.appliedenergistics2.Bytes=可存储 +gui.appliedenergistics2.Simulation=合成模拟 +gui.appliedenergistics2.CoProcessors=并行处理单元 +gui.appliedenergistics2.CraftingCPU=合成CPU +gui.appliedenergistics2.NoCraftingCPUs=没有可用的合成CPU... +gui.appliedenergistics2.CalculatingWait=正在计算,请等待... +gui.appliedenergistics2.Clean=清空 +gui.appliedenergistics2.InvalidPattern=无效样板 +gui.appliedenergistics2.Range=Range +gui.appliedenergistics2.TransparentFacades=透明的伪装板 +gui.appliedenergistics2.TransparentFacadesHint=控制当网络工具放在快捷栏时,伪装板显示的透明度. +gui.appliedenergistics2.CPUs=CPU +gui.appliedenergistics2.NoCraftingJobs=没有正在进行的合成任务 +gui.appliedenergistics2.FacadeCrafting=伪装板合成 +gui.appliedenergistics2.inWorldCraftingPresses=压印模板可以在陨石块的中心找到,陨石块会散落在世界中.可以用陨石罗盘来定位它们. +gui.appliedenergistics2.Included=包含匹配 +gui.appliedenergistics2.Excluded=排除匹配 +gui.appliedenergistics2.Partitioned=分区 +gui.appliedenergistics2.Precise=精确匹配 +gui.appliedenergistics2.Fuzzy=模糊匹配 + +gui.tooltips.appliedenergistics2.Stash=存储物品 +gui.tooltips.appliedenergistics2.StashDesc=将合成槽的物品返回网络 +gui.tooltips.appliedenergistics2.Substitutions=矿物词典替换 +gui.tooltips.appliedenergistics2.SubstitutionsDesc=为输入组件编辑替换选项 +gui.tooltips.appliedenergistics2.SubstitutionsOn=启用替换 +gui.tooltips.appliedenergistics2.SubstitutionsOff=禁用替换 +gui.tooltips.appliedenergistics2.Encode=编码样板 +gui.tooltips.appliedenergistics2.EncodeDescription=将输入的样板写入当前编码样板,或可用的空样板。 +gui.tooltips.appliedenergistics2.FuzzyMode=模糊对比 +gui.tooltips.appliedenergistics2.FZPercent_25=25%时分离损耗 +gui.tooltips.appliedenergistics2.FZPercent_50=50%时分离损耗 +gui.tooltips.appliedenergistics2.FZPercent_75=75%时分离损耗 +gui.tooltips.appliedenergistics2.FZPercent_99=99%时分离损耗 +gui.tooltips.appliedenergistics2.SortOrder=排序 +gui.tooltips.appliedenergistics2.SortBy=排序按 +gui.tooltips.appliedenergistics2.FZIgnoreAll=匹配所有 +gui.tooltips.appliedenergistics2.TransferDirection=传输方向 +gui.tooltips.appliedenergistics2.TransferToNetwork=传输数据到网络中 +gui.tooltips.appliedenergistics2.TransferToStorageCell=传出数据到存储元件中 +gui.tooltips.appliedenergistics2.ToggleSortDirection=切换排序方向 +gui.tooltips.appliedenergistics2.StoredItems=已存储 +gui.tooltips.appliedenergistics2.StoredCraftable=已存储/可合成 +gui.tooltips.appliedenergistics2.View=浏览 +gui.tooltips.appliedenergistics2.RedstoneMode=红石模式 +gui.tooltips.appliedenergistics2.OperationMode=操作模式 +gui.tooltips.appliedenergistics2.NumberOfItems=物品数量 +gui.tooltips.appliedenergistics2.ItemName=物品名称 +gui.tooltips.appliedenergistics2.PowerUnits=能源单位 +gui.tooltips.appliedenergistics2.IOMode=输入/输出模式 +gui.tooltips.appliedenergistics2.CondenserOutput=ME聚合器-输出 +gui.tooltips.appliedenergistics2.PartitionStorage=分区存储 +gui.tooltips.appliedenergistics2.Clear=清除 +gui.tooltips.appliedenergistics2.TrashController=通过按下shift或空格点击删除. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=阻挡模式 +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=合成模式 +gui.tooltips.appliedenergistics2.Trash=销毁物品 +gui.tooltips.appliedenergistics2.MatterBalls=每%s个物品\n聚合为一个物质球 +gui.tooltips.appliedenergistics2.Singularity=每%s个物品\n聚合为一个奇点 +gui.tooltips.appliedenergistics2.Read=只读 +gui.tooltips.appliedenergistics2.Write=只写 +gui.tooltips.appliedenergistics2.ReadWrite=双向 +gui.tooltips.appliedenergistics2.AlwaysActive=总是激活 +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=无信号时激活 +gui.tooltips.appliedenergistics2.ActiveWithSignal=有信号时激活 +gui.tooltips.appliedenergistics2.ActiveOnPulse=有脉冲信号时激活 +gui.tooltips.appliedenergistics2.EmitLevelsBelow=当容量标准小于等于设定限制时发出信号. +gui.tooltips.appliedenergistics2.EmitLevelAbove=当容量标准大于等于设定限制时发出信号. +gui.tooltips.appliedenergistics2.SearchMode_Auto=自动搜索 +gui.tooltips.appliedenergistics2.SearchMode_Standard=标准搜索 +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=NEI自动同步 +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=NEI标准同步 +gui.tooltips.appliedenergistics2.SearchMode=搜索框模式 +gui.tooltips.appliedenergistics2.PartitionStorageHint=基于当前已存储物品进行分区编辑. +gui.tooltips.appliedenergistics2.ClearSettings=清除配置 +gui.tooltips.appliedenergistics2.Craftable=可合成 +gui.tooltips.appliedenergistics2.MoveWhenEmpty=当元件为空时移动至输出口. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=当工序完成移动至输出口. +gui.tooltips.appliedenergistics2.MoveWhenFull=当元件装满时移动至输出口. +gui.tooltips.appliedenergistics2.Disabled=禁用 +gui.tooltips.appliedenergistics2.Enable=启用 +gui.tooltips.appliedenergistics2.Blocking=当容器内有物品时不传送物品. +gui.tooltips.appliedenergistics2.NonBlocking=忽略目标容器的内容. +gui.tooltips.appliedenergistics2.Craft=输出时若有需要则合成物品. +gui.tooltips.appliedenergistics2.CraftOnly=不使用已存储物品,只使用合成物品. +gui.tooltips.appliedenergistics2.CraftEither=输出时使用已存储物品或合成物品. +gui.tooltips.appliedenergistics2.LevelType=检测类型 +gui.tooltips.appliedenergistics2.LevelType_Energy=能源(ae) +gui.tooltips.appliedenergistics2.LevelType_Item=物品 +gui.tooltips.appliedenergistics2.InventoryTweaks=InventoryTweak(R键整理) +gui.tooltips.appliedenergistics2.Mod=Mod +gui.tooltips.appliedenergistics2.TerminalStyle=终端风格 +gui.tooltips.appliedenergistics2.TerminalStyle_Full=全屏 +gui.tooltips.appliedenergistics2.TerminalStyle_Tall=长 +gui.tooltips.appliedenergistics2.TerminalStyle_Small=短 +gui.tooltips.appliedenergistics2.DoesntDespawn=该物品不会消失. +gui.tooltips.appliedenergistics2.EmitterMode=合成发信模式 +gui.tooltips.appliedenergistics2.CraftViaRedstone=发射红石信号来合成物品. +gui.tooltips.appliedenergistics2.EmitWhenCrafting=在物品合成时发射红石信号. +gui.tooltips.appliedenergistics2.ReportInaccessibleItems=报告不可交互的物品 +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsYes=是: 显示无法取出的物品. +gui.tooltips.appliedenergistics2.ReportInaccessibleItemsNo=否: 只显示可以取出的物品. + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=MJ +gui.appliedenergistics2.units.ic2=EU +gui.appliedenergistics2.units.mekanism=Joules +gui.appliedenergistics2.units.rotarycraft=Watts +gui.appliedenergistics2.units.thermalexpansion=RF + +gui.appliedenergistics2.White=白色 +gui.appliedenergistics2.Orange=橙色 +gui.appliedenergistics2.Magenta=品红色 +gui.appliedenergistics2.LightBlue=浅蓝色 +gui.appliedenergistics2.Yellow=黄色 +gui.appliedenergistics2.Lime=柠檬色 +gui.appliedenergistics2.Pink=粉色 +gui.appliedenergistics2.Gray=灰色 +gui.appliedenergistics2.LightGray=浅灰色 +gui.appliedenergistics2.Cyan=青色 +gui.appliedenergistics2.Purple=紫色 +gui.appliedenergistics2.Blue=蓝色 +gui.appliedenergistics2.Brown=棕色 +gui.appliedenergistics2.Green=绿色 +gui.appliedenergistics2.Red=红色 +gui.appliedenergistics2.Black=黑色 +gui.appliedenergistics2.Fluix=Fluix默认色 + +waila.appliedenergistics2.DeviceOnline=设备开启 +waila.appliedenergistics2.DeviceOffline=设备关闭 +waila.appliedenergistics2.DeviceMissingChannel=设备缺少频道 +waila.appliedenergistics2.Locked=锁定 +waila.appliedenergistics2.Unlocked=未锁定 +waila.appliedenergistics2.Showing=显示 +waila.appliedenergistics2.Contains=容纳 +waila.appliedenergistics2.Channels=频道 + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=1k-ME存储元件 +item.appliedenergistics2.ItemBasicStorageCell.4k.name=4k-ME存储元件 +item.appliedenergistics2.ItemBasicStorageCell.16k.name=16k-ME存储元件 +item.appliedenergistics2.ItemBasicStorageCell.64k.name=64k-ME存储元件 +item.appliedenergistics2.ItemCreativeStorageCell.name=创造型ME存储元件 +item.appliedenergistics2.ItemEncodedPattern.name=编码样板 +item.appliedenergistics2.ItemViewCell.name=显示元件 +item.appliedenergistics2.ItemFacade.name=线缆伪装板 + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=赛特斯石英种子 +item.appliedenergistics2.ItemCrystalSeed.Nether.name=下界石英钟子 +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=福鲁伊克斯种子 +item.appliedenergistics2.ItemMaterial.InvalidType.name=该物品被禁用. +item.appliedenergistics2.ItemMaterial.AdvCard.name=高级卡 +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=破坏核心 +item.appliedenergistics2.ItemMaterial.BasicCard.name=基础卡 +item.appliedenergistics2.ItemMaterial.BlankPattern.name=空白样板 +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=运算处理器 +item.appliedenergistics2.ItemMaterial.CardCapacity.name=容量卡 +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=模糊卡 +item.appliedenergistics2.ItemMaterial.CardInverter.name=反相卡 +item.appliedenergistics2.ItemMaterial.CardRedstone.name=红石卡 +item.appliedenergistics2.ItemMaterial.CardSpeed.name=加速卡 +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=2³-空间组件 +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=16³-空间组件 +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=128³-空间组件 +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=1k-ME存储组件 +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=4k-ME存储组件 +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=16k-ME存储组件 +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=64k-ME存储组件 +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=赛特斯石英水晶 +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=充能赛特斯石英水晶 +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=赛特斯石英粉 +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=ME存储外壳 +item.appliedenergistics2.ItemMaterial.EnderDust.name=末影粉 +item.appliedenergistics2.ItemMaterial.EngProcessor.name=工程处理器 +item.appliedenergistics2.ItemMaterial.Flour.name=面粉 +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=福鲁伊克斯水晶 +item.appliedenergistics2.ItemMaterial.FluixDust.name=福鲁伊克斯粉 +item.appliedenergistics2.ItemMaterial.FluixPearl.name=福鲁伊克斯珍珠 +item.appliedenergistics2.ItemMaterial.FormationCore.name=成型核心 +item.appliedenergistics2.ItemMaterial.GoldDust.name=金粉 +item.appliedenergistics2.ItemMaterial.IronDust.name=铁粉 +item.appliedenergistics2.ItemMaterial.IronNugget.name=铁粒 +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=逻辑处理器 +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=半成品-逻辑处理器 +item.appliedenergistics2.ItemMaterial.MatterBall.name=物质球 +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=下界石英粉 +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=高纯赛特斯石英水晶 +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=高纯福鲁伊克斯水晶 +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=高纯下界石英水晶 +item.appliedenergistics2.ItemMaterial.QESingularity.name=量子缠绕态奇点 +item.appliedenergistics2.ItemMaterial.Silicon.name=硅 +item.appliedenergistics2.ItemMaterial.Singularity.name=奇点 +item.appliedenergistics2.ItemMaterial.Wireless.name=无线接收器 +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=无线信号增幅器 +item.appliedenergistics2.ItemMaterial.WoodenGear.name=木齿轮 +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=工程压印模板 +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=运算压印模板 +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=逻辑压印模板 +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=工程电路板 +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=运算电路板 +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=逻辑电路板 +item.appliedenergistics2.ItemMaterial.SiliconPress.name=硅压印模板 +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=硅板 +item.appliedenergistics2.ItemMaterial.NamePress.name=名称压印模板 +item.appliedenergistics2.ItemMaterial.SkyDust.name=陨石粉 +item.appliedenergistics2.ItemMaterial.CardCrafting.name=合成卡 + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=ME破坏面板 +item.appliedenergistics2.ItemPart.CableAnchor.name=线缆锚 +item.appliedenergistics2.ItemPart.CableCovered.name=ME包层线缆 +item.appliedenergistics2.ItemPart.CableGlass.name=ME玻璃线缆 +item.appliedenergistics2.ItemPart.CableSmart.name=ME智能线缆 +item.appliedenergistics2.ItemPart.CableDense.name=ME致密线缆 +item.appliedenergistics2.ItemPart.StorageMonitor.name=ME存储监控器 +item.appliedenergistics2.ItemPart.ConversionMonitor.name=ME交换监控器 +item.appliedenergistics2.ItemPart.CraftingTerminal.name=ME合成终端 +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=照明面板 +item.appliedenergistics2.ItemPart.Monitor.name=亮色照明面板 +item.appliedenergistics2.ItemPart.DarkMonitor.name=暗色照明面板 +item.appliedenergistics2.ItemPart.ExportBus.name=ME输出总线 +item.appliedenergistics2.ItemPart.FormationPlane.name=ME成型面板 +item.appliedenergistics2.ItemPart.ImportBus.name=ME输入总线 +item.appliedenergistics2.ItemPart.Interface.name=ME接口 +item.appliedenergistics2.ItemPart.LevelEmitter.name=ME标准发信器 +item.appliedenergistics2.ItemPart.P2PTunnel.name=P2P通道 +item.appliedenergistics2.ItemPart.PatternTerminal.name=ME样板终端 +item.appliedenergistics2.ItemPart.QuartzFiber.name=石英纤维 +item.appliedenergistics2.ItemPart.StorageBus.name=ME存储总线 +item.appliedenergistics2.ItemPart.Terminal.name=ME终端 +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=ME反相触发总线 +item.appliedenergistics2.ItemPart.ToggleBus.name=ME触发总线 +item.appliedenergistics2.ItemPart.CraftingMonitor.name=ME合成监控器 +item.appliedenergistics2.ItemPart.InterfaceTerminal.name=ME接口终端 + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=128³-空间存储元件 +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=16³-空间存储元件 +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=2³-空间存储元件 + +item.appliedenergistics2.ToolCertusQuartzAxe.name=赛特斯石英斧 +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=赛特斯石英切割刀 +item.appliedenergistics2.ToolCertusQuartzHoe.name=赛特斯石英锄 +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=赛特斯石英镐 +item.appliedenergistics2.ToolCertusQuartzSpade.name=赛特斯石英锹 +item.appliedenergistics2.ToolCertusQuartzSword.name=赛特斯石英剑 +item.appliedenergistics2.ToolCertusQuartzWrench.name=赛特斯石英扳手 + +item.appliedenergistics2.ToolNetherQuartzAxe.name=下界石英斧 +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=下界石英切割刀 +item.appliedenergistics2.ToolNetherQuartzHoe.name=下界石英锄 +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=下界石英镐 +item.appliedenergistics2.ToolNetherQuartzSpade.name=下界石英锹 +item.appliedenergistics2.ToolNetherQuartzSword.name=下界石英剑 +item.appliedenergistics2.ToolNetherQuartzWrench.name=下界石英扳手 + +item.appliedenergistics2.ItemPaintBall.name=染色球 +item.appliedenergistics2.ToolPortableCell.name=便携元件 +item.appliedenergistics2.ToolNetworkTool.name=网络工具 +item.appliedenergistics2.ToolChargedStaff.name=充能手杖 +item.appliedenergistics2.ToolEntropyManipulator.name=熵变机械臂 +item.appliedenergistics2.ToolMassCannon.name=物质炮 +item.appliedenergistics2.ToolMemoryCard.name=内存卡 +item.appliedenergistics2.ToolColorApplicator.name=染色器 +item.appliedenergistics2.ToolWirelessTerminal.name=无线终端 +item.appliedenergistics2.ToolBiometricCard.name=身份卡 + +item.appliedenergistics2.ToolDebugCard.name=Dev.调试卡 +item.appliedenergistics2.ToolReplicatorCard.name=Dev.复制卡 + +commands.ae2.usage=ae2提供的指令 - 输入/ae2 list查看指令列表,/ae2 help _____查看指令帮助. +commands.ae2.permissions=你没有足够的权限来执行该指令. +commands.ae2.ChunkLogger=是否向服务器日志打开区块载入与载出信息.(OP) +commands.ae2.ChunkLoggerOn=区块日志已打开 +commands.ae2.ChunkLoggerOff=区块日志已关闭 +commands.ae2.Supporters=显示ae2支持者列表 + +achievement.ae2.Compass=陨石猎手 +achievement.ae2.Compass.desc=制作一个陨石罗盘 +achievement.ae2.Presses=未知科技 +achievement.ae2.Presses.desc=发现一个处理器模板 +achievement.ae2.SpatialIO=空间协调 +achievement.ae2.SpatialIO.desc=制作一个空间IO端口 +achievement.ae2.SpatialIOExplorerer=大胆去做 +achievement.ae2.SpatialIOExplorerer.desc=已被存入空间存储元件 +achievement.ae2.StorageCell=比箱子更好 +achievement.ae2.StorageCell.desc=制作一个存储元件 +achievement.ae2.IOPort=元件互通 +achievement.ae2.IOPort.desc=制作一个IO端口 +achievement.ae2.CraftingTerminal=更大的工作台 +achievement.ae2.CraftingTerminal.desc=制作一个合成终端 +achievement.ae2.PatternTerminal=合成艺术家 +achievement.ae2.PatternTerminal.desc=制作一个样板终端 +achievement.ae2.ChargedQuartz=震动 +achievement.ae2.ChargedQuartz.desc=发现充能石英 +achievement.ae2.Fluix=非自然 +achievement.ae2.Fluix.desc=创造福鲁伊克斯水晶 +achievement.ae2.Charger=Fluix生产 +achievement.ae2.Charger.desc=制作一个充能器 +achievement.ae2.CrystalGrowthAccelerator=加速轻而易举 +achievement.ae2.CrystalGrowthAccelerator.desc=制作一个晶体催生器 +achievement.ae2.GlassCable=Fluix能量连接 +achievement.ae2.GlassCable.desc=制作一段ME玻璃线缆 +achievement.ae2.Networking1=网络学徒 +achievement.ae2.Networking1.desc=在一个网络里使用8个频道 +achievement.ae2.Controller=建网配电 +achievement.ae2.Controller.desc=制作一个控制器 +achievement.ae2.Networking2=网络工程师 +achievement.ae2.Networking2.desc=在一个网络里使用128个频道 +achievement.ae2.Networking3=网络管理者 +achievement.ae2.Networking3.desc=在一个网络里使用2048个频道 +achievement.ae2.P2P=点对点建网 +achievement.ae2.P2P.desc=制作一个p2p通道 +achievement.ae2.Recursive=递归建网 +achievement.ae2.Recursive.desc=在存储总线上放置接口 +achievement.ae2.CraftingCPU=新一代合成技术 +achievement.ae2.CraftingCPU.desc=制作一个合成单元 +achievement.ae2.Facade=网络美学 +achievement.ae2.Facade.desc=制作一个线缆伪装板 +achievement.ae2.NetworkTool=网络诊断 +achievement.ae2.NetworkTool.desc=制作一个网络工具 +achievement.ae2.PortableCell=存储漫步 +achievement.ae2.PortableCell.desc=制作一个便携元件 +achievement.ae2.StorageBus=无限潜能 +achievement.ae2.StorageBus.desc=制作一个存储总线 +achievement.ae2.QNB=量子隧道 +achievement.ae2.QNB.desc=制作一个链接室 + +stat.ae2.ItemsInserted=物品已加入ME存储 +stat.ae2.ItemsExtracted=物品已取出ME存储 +stat.ae2.TurnedCranks=转动曲柄 diff --git a/src/main/resources/assets/appliedenergistics2/lang/zh_TW.lang b/src/main/resources/assets/appliedenergistics2/lang/zh_TW.lang new file mode 100644 index 00000000..b719e0fb --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/lang/zh_TW.lang @@ -0,0 +1,421 @@ +tile.appliedenergistics2.BlockCableBus.name=AE2線纜和(或)總線 +tile.appliedenergistics2.BlockCellWorkbench.name=元件工作臺 +tile.appliedenergistics2.BlockCharger.name=充能器 +tile.appliedenergistics2.BlockChest.name=ME箱子 +tile.appliedenergistics2.BlockCondenser.name=物質聚合器 +tile.appliedenergistics2.BlockController.name=ME控制器 +tile.appliedenergistics2.BlockCrank.name=木質曲柄 +tile.appliedenergistics2.BlockCreativeEnergyCell.name=創造型能源元件 +tile.appliedenergistics2.BlockDenseEnergyCell.name=致密型能源元件 +tile.appliedenergistics2.BlockEnergyCell.name=能源元件 +tile.appliedenergistics2.BlockDrive.name=ME驅動器 +tile.appliedenergistics2.BlockEnergyAcceptor.name=能源接收器 +tile.appliedenergistics2.BlockGrinder.name=石英磨具 +tile.appliedenergistics2.BlockMatrixFrame.name=矩陣框架 +tile.appliedenergistics2.BlockIOPort.name=ME-IO端口 +tile.appliedenergistics2.BlockInscriber.name=壓印器 +tile.appliedenergistics2.BlockInterface.name=ME接口 +tile.appliedenergistics2.BlockQuantumLinkChamber.name=ME量子鏈接倉 +tile.appliedenergistics2.BlockQuantumRing.name=ME量子環 +tile.appliedenergistics2.BlockFluix.name=福魯伊克斯塊 +tile.appliedenergistics2.BlockQuartz.name=賽特斯石英塊 +tile.appliedenergistics2.BlockQuartzChiseled.name=鏨制賽特斯石英塊 +tile.appliedenergistics2.BlockQuartzGlass.name=石英玻璃 +tile.appliedenergistics2.BlockQuartzLamp.name=聚能石英玻璃 +tile.appliedenergistics2.BlockQuartzPillar.name=賽特斯豎紋石英塊 +tile.appliedenergistics2.BlockQuartzTorch.name=充能石英火把 +tile.appliedenergistics2.BlockLightDetector.name=光亮感應器 +tile.appliedenergistics2.BlockSpatialIOPort.name=空間IO端口 +tile.appliedenergistics2.BlockSpatialPylon.name=空間塔 +tile.appliedenergistics2.BlockTinyTNT.name=迷你TNT +tile.appliedenergistics2.BlockVibrationChamber.name=諧振倉 +tile.appliedenergistics2.BlockWireless.name=ME無線訪問點 +tile.appliedenergistics2.OreQuartz.name=賽特斯石英礦石 +tile.appliedenergistics2.OreQuartzCharged.name=充能賽特斯石英礦石 +tile.appliedenergistics2.BlockSecurity.name=ME安全終端 +tile.appliedenergistics2.BlockQuartzGrowthAccelerator.name=晶體催生器 +tile.appliedenergistics2.BlockSkyStone.name=隕石 +tile.appliedenergistics2.BlockSkyStone.Block.name=隕石塊 +tile.appliedenergistics2.BlockSkyStone.Brick.name=隕石石磚 +tile.appliedenergistics2.BlockSkyStone.SmallBrick.name=隕石磚塊 +tile.appliedenergistics2.BlockSkyChest.name=隕石箱子 +tile.appliedenergistics2.BlockSkyChest.Block.name=隕石塊箱子 +tile.appliedenergistics2.BlockSkyCompass.name=隕石羅盤 +tile.appliedenergistics2.BlockCraftingMonitor.name=合成監控器 +tile.appliedenergistics2.BlockCraftingStorage.name=1k合成存儲器 +tile.appliedenergistics2.BlockCraftingStorage4k.name=4k合成存儲器 +tile.appliedenergistics2.BlockCraftingStorage16k.name=16k合成存儲器 +tile.appliedenergistics2.BlockCraftingStorage64k.name=64k合成存儲器 +tile.appliedenergistics2.BlockCraftingAccelerator.name=合成并行處理器 +tile.appliedenergistics2.BlockCraftingUnit.name=合成處理器 +tile.appliedenergistics2.BlockMolecularAssembler.name=分子集成室 + +chat.appliedenergistics2.ChestCannotReadStorageCell=ME箱子無法讀取存儲元件. +chat.appliedenergistics2.SettingCleared=設置已清除. +chat.appliedenergistics2.OutOfRange=超出無線信號范圍. +chat.appliedenergistics2.InvalidMachine=無效機器. +chat.appliedenergistics2.LoadedSettings=成功載入設定. +chat.appliedenergistics2.DeviceNotPowered=設備供能不足. +chat.appliedenergistics2.MachineNotPowered=機器未供能. +chat.appliedenergistics2.CommunicationError=網絡交互錯誤. +chat.appliedenergistics2.SavedSettings=成功保存設定. +chat.appliedenergistics2.AmmoDepleted=彈藥告罄. +chat.appliedenergistics2.isNowLocked=監控器已鎖定. +chat.appliedenergistics2.isNowUnlocked=監控器已解鎖. + +itemGroup.appliedenergistics2=應用能源2 +itemGroup.appliedenergistics2.facades=應用能源2-偽裝板 + +gui.appliedenergistics2.CraftingTerminal=合成終端 +gui.appliedenergistics2.METunnel=ME +gui.appliedenergistics2.ItemTunnel=物品 +gui.appliedenergistics2.FluidTunnel=液體 +gui.appliedenergistics2.RedstoneTunnel=紅石 +gui.appliedenergistics2.MJTunnel=MJ +gui.appliedenergistics2.EUTunnel=EU +gui.appliedenergistics2.RFTunnel=RF +gui.appliedenergistics2.LightTunnel=光 + +gui.appliedenergistics2.security.extract.name=取出 +gui.appliedenergistics2.security.inject.name=存入 +gui.appliedenergistics2.security.craft.name=合成 +gui.appliedenergistics2.security.build.name=構建 +gui.appliedenergistics2.security.security.name=安全 + +gui.appliedenergistics2.security.extract.tip=允許用戶從存儲空間中移除物品. +gui.appliedenergistics2.security.inject.tip=允許用戶向存儲空間中存入新物品. +gui.appliedenergistics2.security.craft.tip=用戶可以初始化新的合成. +gui.appliedenergistics2.security.build.tip=用戶可以修改網絡的物理結構,并調整配置. +gui.appliedenergistics2.security.security.tip=用戶可以訪問修改網絡的安全終端. + +gui.appliedenergistics2.Efficiency=效率 +gui.appliedenergistics2.RequiredPower=所需能源 +gui.appliedenergistics2.StoredPower=現存能源 +gui.appliedenergistics2.MaxPower=最大能源 +gui.appliedenergistics2.QuartzCuttingKnife=石英切割刀 +gui.appliedenergistics2.Inscriber=壓印器 +gui.appliedenergistics2.Wireless=無線訪問點 +gui.appliedenergistics2.WirelessTerminal=無線終端 +gui.appliedenergistics2.NoPermissions=無選定權限 +gui.appliedenergistics2.SecurityCardEditor=身份卡編輯 +gui.appliedenergistics2.Encoded=已編碼 +gui.appliedenergistics2.Priority=優先級 +gui.appliedenergistics2.StorageBus=存儲總線 +gui.appliedenergistics2.EnergyDrain=被動流失 +gui.appliedenergistics2.Installed=已安裝 +gui.appliedenergistics2.NetworkTool=網絡工具 +gui.appliedenergistics2.PowerUsageRate=耗能 +gui.appliedenergistics2.PowerInputRate=產能 +gui.appliedenergistics2.PortableCell=便攜元件 +gui.appliedenergistics2.Security=安全終端 +gui.appliedenergistics2.CellWorkbench=元件工作臺 +gui.appliedenergistics2.QuantumLinkChamber=量子鏈接倉 +gui.appliedenergistics2.IOPort=ME-IO端口 +gui.appliedenergistics2.Chest=ME箱子 +gui.appliedenergistics2.Condenser=物質聚合器 +gui.appliedenergistics2.Config=配置 +gui.appliedenergistics2.Drive=ME驅動器 +gui.appliedenergistics2.ExportBus=ME輸出總線 +gui.appliedenergistics2.GrindStone=磨具 +gui.appliedenergistics2.ImportBus=ME輸入總線 +gui.appliedenergistics2.Interface=ME接口 +gui.appliedenergistics2.LevelEmitter=ME標準發信器 +gui.appliedenergistics2.Of=/ +gui.appliedenergistics2.Patterns=樣板 +gui.appliedenergistics2.SpatialIOPort=空間IO端口 +gui.appliedenergistics2.StoredEnergy=已存儲能源 +gui.appliedenergistics2.StoredItems=已存儲物品 +gui.appliedenergistics2.Terminal=終端 +gui.appliedenergistics2.InterfaceTerminal=接口終端 +gui.appliedenergistics2.FormationPlane=輸出面板 +gui.appliedenergistics2.VibrationChamber=諧振倉 +gui.appliedenergistics2.NetworkDetails=網絡信息 +gui.appliedenergistics2.StorageCells=ME存儲元件 +gui.appliedenergistics2.IOBuses=ME輸入/輸出總線 +gui.appliedenergistics2.Stores=Stores +gui.appliedenergistics2.BytesUsed=字節已使用 +gui.appliedenergistics2.Types=類型 +gui.appliedenergistics2.Blank=空白 +gui.appliedenergistics2.Unlinked=未鏈接 +gui.appliedenergistics2.Linked=已鏈接 +gui.appliedenergistics2.StoredSize=存儲空間大小 +gui.appliedenergistics2.SkyChest=隕石箱子 +gui.appliedenergistics2.PatternTerminal=樣板終端 +gui.appliedenergistics2.CraftingPattern=合成樣板 +gui.appliedenergistics2.MolecularAssembler=分子裝配室 +gui.appliedenergistics2.ProcessingPattern=處理樣板 +gui.appliedenergistics2.Crafts=合成 +gui.appliedenergistics2.And=與 +gui.appliedenergistics2.Creates=創造 +gui.appliedenergistics2.With=使用 +gui.appliedenergistics2.InWorldCrafting=AE2在世界中的合成 +gui.appliedenergistics2.inWorldFluix=將1個充能賽特斯石英水晶,1個下界石英和1個紅石,相繼扔進同一格水里,并等待一會兒. +gui.appliedenergistics2.inWorldPurificationCertus=用賽特斯石英粉和沙子制作賽特斯石英種子,并扔進水里;使用晶體催生器可以讓這個過程變得更快. +gui.appliedenergistics2.inWorldPurificationNether=用下界石英粉和沙子制作下界石英種子,并扔進水里;使用晶體催生器可以讓這個過程變得更快. +gui.appliedenergistics2.inWorldPurificationFluix=用福魯伊克斯粉和沙子制作福魯伊克斯種子,并扔進水里;使用晶體催生器可以讓這個過程變得更快. +gui.appliedenergistics2.inWorldSingularity=將1個奇點和一個末影珍珠粉仍在地上,并用爆炸性物品引爆. +gui.appliedenergistics2.ChargedQuartz=將未充能賽特斯石英插入充能器充能后,可以得到充能賽特斯石英. +gui.appliedenergistics2.OfSecondOutput=% 的幾率得到副產物. +gui.appliedenergistics2.NoSecondOutput=無副產物. +gui.appliedenergistics2.SelectAmount=選擇數量 +gui.appliedenergistics2.CopyMode=復制模式 +gui.appliedenergistics2.CopyModeDesc=控制當取出存儲元件時,是否清空配置格. +gui.appliedenergistics2.Next=下一頁 +gui.appliedenergistics2.Lumen=光通 +gui.appliedenergistics2.Empty=空 +gui.appliedenergistics2.Stored=現存 +gui.appliedenergistics2.Cancel=取消 +gui.appliedenergistics2.Crafting=正在合成 +gui.appliedenergistics2.Scheduled=計劃合成 +gui.appliedenergistics2.CraftingStatus=合成狀態 +gui.appliedenergistics2.FromStorage=可用數量 +gui.appliedenergistics2.ToCraft=合成數量 +gui.appliedenergistics2.CraftingPlan=合成計劃 +gui.appliedenergistics2.Automatic=自動分配 +gui.appliedenergistics2.Start=開始 +gui.appliedenergistics2.Missing=缺失 +gui.appliedenergistics2.Bytes=可存儲 +gui.appliedenergistics2.Simulation=Simulation +gui.appliedenergistics2.CoProcessors=并行處理器 +gui.appliedenergistics2.CraftingCPU=合成CPU +gui.appliedenergistics2.NoCraftingCPUs=沒有可用的合成CPU... +gui.appliedenergistics2.CalculatingWait=正在計算,請等待... +gui.appliedenergistics2.Clean=清空 +gui.appliedenergistics2.InvalidPattern=無效樣板 + +gui.tooltips.appliedenergistics2.Stash=存儲物品 +gui.tooltips.appliedenergistics2.StashDesc=將合成槽的物品返回網絡 +gui.tooltips.appliedenergistics2.Substitutions=礦物詞典替換 +gui.tooltips.appliedenergistics2.SubstitutionsDesc=為輸入組件編輯替換選項 +gui.tooltips.appliedenergistics2.SubstitutionsOn=啟用替換 +gui.tooltips.appliedenergistics2.SubstitutionsOff=禁用替換 +gui.tooltips.appliedenergistics2.Encode=編碼樣板 +gui.tooltips.appliedenergistics2.EncodeDescription=將輸入的樣板寫入當前編碼樣板,或可用的空樣板。 +gui.tooltips.appliedenergistics2.FuzzyMode=模糊對比 +gui.tooltips.appliedenergistics2.FZPercent_25=25%時分離損耗 +gui.tooltips.appliedenergistics2.FZPercent_50=50%時分離損耗 +gui.tooltips.appliedenergistics2.FZPercent_75=75%時分離損耗 +gui.tooltips.appliedenergistics2.FZPercent_99=99%時分離損耗 +gui.tooltips.appliedenergistics2.SortOrder=排序 +gui.tooltips.appliedenergistics2.SortBy=排序按 +gui.tooltips.appliedenergistics2.FZIgnoreAll=匹配所有 +gui.tooltips.appliedenergistics2.TransferDirection=傳輸方向 +gui.tooltips.appliedenergistics2.TransferToNetwork=傳輸數據到網絡中 +gui.tooltips.appliedenergistics2.TransferToStorageCell=傳出數據到存儲元件中 +gui.tooltips.appliedenergistics2.ToggleSortDirection=切換排序方向 +gui.tooltips.appliedenergistics2.StoredItems=排序物品 +gui.tooltips.appliedenergistics2.StoredCraftable=已存儲/可合成 +gui.tooltips.appliedenergistics2.View=瀏覽 +gui.tooltips.appliedenergistics2.RedstoneMode=紅石模式 +gui.tooltips.appliedenergistics2.OperationMode=操作模式 +gui.tooltips.appliedenergistics2.NumberOfItems=物品數量 +gui.tooltips.appliedenergistics2.ItemName=物品名稱 +gui.tooltips.appliedenergistics2.PowerUnits=能源單位 +gui.tooltips.appliedenergistics2.IOMode=輸入/輸出模式 +gui.tooltips.appliedenergistics2.CondenserOutput=ME聚合器-輸出 +gui.tooltips.appliedenergistics2.PartitionStorage=分區存儲 +gui.tooltips.appliedenergistics2.Clear=清除 +gui.tooltips.appliedenergistics2.TrashController=通過按下shift或空格點擊刪除. +gui.tooltips.appliedenergistics2.InterfaceBlockingMode=阻擋模式 +gui.tooltips.appliedenergistics2.InterfaceCraftingMode=合成模式 +gui.tooltips.appliedenergistics2.Trash=銷毀物品 +gui.tooltips.appliedenergistics2.MatterBalls=每%s個物品\n聚合為一個物質球 +gui.tooltips.appliedenergistics2.Singularity=每%s個物品\n聚合為一個奇點 +gui.tooltips.appliedenergistics2.Read=只讀 +gui.tooltips.appliedenergistics2.Write=只寫 +gui.tooltips.appliedenergistics2.ReadWrite=雙向 +gui.tooltips.appliedenergistics2.AlwaysActive=總是激活 +gui.tooltips.appliedenergistics2.ActiveWithoutSignal=無信號時激活 +gui.tooltips.appliedenergistics2.ActiveWithSignal=有信號時激活 +gui.tooltips.appliedenergistics2.ActiveOnPulse=有脈沖信號時激活 +gui.tooltips.appliedenergistics2.EmitLevelsBelow=當容量標準小于等于設定限制時發出信號. +gui.tooltips.appliedenergistics2.EmitLevelAbove=當容量標準大于等于設定限制時發出信號. +gui.tooltips.appliedenergistics2.SearchMode_Auto=自動搜索 +gui.tooltips.appliedenergistics2.SearchMode_Standard=標準搜索 +gui.tooltips.appliedenergistics2.SearchMode_NEIAuto=NEI自動同步 +gui.tooltips.appliedenergistics2.SearchMode_NEIStandard=NEI標準同步 +gui.tooltips.appliedenergistics2.SearchMode=搜索框模式 +gui.tooltips.appliedenergistics2.PartitionStorageHint=基于當前已存儲物品進行分區編輯. +gui.tooltips.appliedenergistics2.ClearSettings=清除配置 +gui.tooltips.appliedenergistics2.Craftable=可合成 +gui.tooltips.appliedenergistics2.MoveWhenEmpty=當元件為空時移動至輸出口. +gui.tooltips.appliedenergistics2.MoveWhenWorkIsDone=當工序完成移動至輸出口. +gui.tooltips.appliedenergistics2.MoveWhenFull=當元件裝滿時移動至輸出口. +gui.tooltips.appliedenergistics2.Disabled=禁用 +gui.tooltips.appliedenergistics2.Enable=啟用 +gui.tooltips.appliedenergistics2.Blocking=當物品欄內有物品時不推送合成物品. +gui.tooltips.appliedenergistics2.NonBlocking=忽略目標物品欄的內容. +gui.tooltips.appliedenergistics2.Craft=輸出時若有需要則合成物品. +gui.tooltips.appliedenergistics2.CraftOnly=不使用已存儲物品,只輸出合成物品. +gui.tooltips.appliedenergistics2.CraftEither=輸出時使用已存儲物品或合成物品. +gui.tooltips.appliedenergistics2.LevelType=檢測類型 +gui.tooltips.appliedenergistics2.LevelType_Energy=能源(ae) +gui.tooltips.appliedenergistics2.LevelType_Item=物品 +gui.tooltips.appliedenergistics2.InventoryTweaks=容器整理 +gui.tooltips.appliedenergistics2.TerminalStyle=終端風格 +gui.tooltips.appliedenergistics2.TerminalStyle_Full=全屏 +gui.tooltips.appliedenergistics2.TerminalStyle_Tall=長 +gui.tooltips.appliedenergistics2.TerminalStyle_Small=短 + +gui.appliedenergistics2.units.appliedenergstics=AE +gui.appliedenergistics2.units.buildcraft=MJ +gui.appliedenergistics2.units.ic2=EU +gui.appliedenergistics2.units.universalelectricity=KJ +gui.appliedenergistics2.units.rotarycraft=Watts +gui.appliedenergistics2.units.thermalexpansion=RF + +gui.appliedenergistics2.White=白色 +gui.appliedenergistics2.Orange=橙色 +gui.appliedenergistics2.Magenta=品紅色 +gui.appliedenergistics2.LightBlue=淺藍色 +gui.appliedenergistics2.Yellow=黃色 +gui.appliedenergistics2.Lime=檸檬色 +gui.appliedenergistics2.Pink=粉色 +gui.appliedenergistics2.Gray=灰色 +gui.appliedenergistics2.LightGray=淺灰色 +gui.appliedenergistics2.Cyan=青色 +gui.appliedenergistics2.Purple=紫色 +gui.appliedenergistics2.Blue=藍色 +gui.appliedenergistics2.Brown=棕色 +gui.appliedenergistics2.Green=綠色 +gui.appliedenergistics2.Red=紅色 +gui.appliedenergistics2.Black=黑色 +gui.appliedenergistics2.Fluix=Fluix默認色 + +waila.appliedenergistics2.DeviceOnline=設備開啟 +waila.appliedenergistics2.DeviceOffline=設備關閉 +waila.appliedenergistics2.DeviceMissingChannel=設備缺少頻道 +waila.appliedenergistics2.Locked=鎖定 +waila.appliedenergistics2.Unlocked=未鎖定 +waila.appliedenergistics2.Showing=顯示 +waila.appliedenergistics2.Contains=容納 +waila.appliedenergistics2.Channels=頻道 + +item.appliedenergistics2.ItemBasicStorageCell.1k.name=1k-ME存儲元件 +item.appliedenergistics2.ItemBasicStorageCell.4k.name=4k-ME存儲元件 +item.appliedenergistics2.ItemBasicStorageCell.16k.name=16k-ME存儲元件 +item.appliedenergistics2.ItemBasicStorageCell.64k.name=64k-ME存儲元件 +item.appliedenergistics2.ItemCreativeStorageCell.name=創造型ME存儲元件 +item.appliedenergistics2.ItemEncodedPattern.name=已編碼樣板 +item.appliedenergistics2.ItemViewCell.name=顯示元件 +item.appliedenergistics2.ItemFacade.name=線纜偽裝板 + +item.appliedenergistics2.ItemCrystalSeed.Certus.name=賽特斯石英種子 +item.appliedenergistics2.ItemCrystalSeed.Nether.name=下界石英鐘子 +item.appliedenergistics2.ItemCrystalSeed.Fluix.name=福魯伊克斯種子 +item.appliedenergistics2.ItemMaterial.AdvCard.name=高級卡 +item.appliedenergistics2.ItemMaterial.AnnihilationCore.name=破壞核心 +item.appliedenergistics2.ItemMaterial.BasicCard.name=基礎卡 +item.appliedenergistics2.ItemMaterial.BlankPattern.name=空白樣板 +item.appliedenergistics2.ItemMaterial.CalcProcessor.name=運算處理器 +item.appliedenergistics2.ItemMaterial.CardCapacity.name=容量卡 +item.appliedenergistics2.ItemMaterial.CardFuzzy.name=模糊卡 +item.appliedenergistics2.ItemMaterial.CardInverter.name=反相卡 +item.appliedenergistics2.ItemMaterial.CardRedstone.name=紅石卡 +item.appliedenergistics2.ItemMaterial.CardSpeed.name=加速卡 +item.appliedenergistics2.ItemMaterial.Cell2SpatialPart.name=2³-空間組件 +item.appliedenergistics2.ItemMaterial.Cell16SpatialPart.name=16³-空間組件 +item.appliedenergistics2.ItemMaterial.Cell128SpatialPart.name=128³-空間組件 +item.appliedenergistics2.ItemMaterial.Cell1kPart.name=1k-ME存儲組件 +item.appliedenergistics2.ItemMaterial.Cell4kPart.name=4k-ME存儲組件 +item.appliedenergistics2.ItemMaterial.Cell16kPart.name=16k-ME存儲組件 +item.appliedenergistics2.ItemMaterial.Cell64kPart.name=64k-ME存儲組件 +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystal.name=賽特斯石英水晶 +item.appliedenergistics2.ItemMaterial.CertusQuartzCrystalCharged.name=充能賽特斯石英水晶 +item.appliedenergistics2.ItemMaterial.CertusQuartzDust.name=賽特斯石英粉 +item.appliedenergistics2.ItemMaterial.EmptyStorageCell.name=ME存儲外殼 +item.appliedenergistics2.ItemMaterial.EnderDust.name=末影粉 +item.appliedenergistics2.ItemMaterial.EngProcessor.name=工程處理器 +item.appliedenergistics2.ItemMaterial.Flour.name=面粉 +item.appliedenergistics2.ItemMaterial.FluixCrystal.name=福魯伊克斯水晶 +item.appliedenergistics2.ItemMaterial.FluixDust.name=福魯伊克斯粉 +item.appliedenergistics2.ItemMaterial.FluixPearl.name=福魯伊克斯珍珠 +item.appliedenergistics2.ItemMaterial.FormationCore.name=成型核心 +item.appliedenergistics2.ItemMaterial.GoldDust.name=金粉 +item.appliedenergistics2.ItemMaterial.IronDust.name=鐵粉 +item.appliedenergistics2.ItemMaterial.IronNugget.name=鐵粒 +item.appliedenergistics2.ItemMaterial.LogicProcessor.name=邏輯處理器 +item.appliedenergistics2.ItemMaterial.LogicProcessorAsm.name=半成品-邏輯處理器 +item.appliedenergistics2.ItemMaterial.MatterBall.name=物質球 +item.appliedenergistics2.ItemMaterial.NetherQuartzDust.name=下界石英粉 +item.appliedenergistics2.ItemMaterial.PurifiedCertusQuartzCrystal.name=高純賽特斯石英水晶 +item.appliedenergistics2.ItemMaterial.PurifiedFluixCrystal.name=高純福魯伊克斯水晶 +item.appliedenergistics2.ItemMaterial.PurifiedNetherQuartzCrystal.name=高純下界石英水晶 +item.appliedenergistics2.ItemMaterial.QESingularity.name=量子糾纏態奇點 +item.appliedenergistics2.ItemMaterial.Silicon.name=硅 +item.appliedenergistics2.ItemMaterial.Singularity.name=奇點 +item.appliedenergistics2.ItemMaterial.Wireless.name=無線接收器 +item.appliedenergistics2.ItemMaterial.WirelessBooster.name=無線信號增幅器 +item.appliedenergistics2.ItemMaterial.WoodenGear.name=木齒輪 +item.appliedenergistics2.ItemMaterial.EngProcessorPress.name=工程壓印模板 +item.appliedenergistics2.ItemMaterial.CalcProcessorPress.name=運算壓印模板 +item.appliedenergistics2.ItemMaterial.LogicProcessorPress.name=邏輯壓印模板 +item.appliedenergistics2.ItemMaterial.EngProcessorPrint.name=工程電路板 +item.appliedenergistics2.ItemMaterial.CalcProcessorPrint.name=運算電路板 +item.appliedenergistics2.ItemMaterial.LogicProcessorPrint.name=邏輯電路板 +item.appliedenergistics2.ItemMaterial.SiliconPress.name=硅壓印模板 +item.appliedenergistics2.ItemMaterial.SiliconPrint.name=硅板 +item.appliedenergistics2.ItemMaterial.NamePress.name=名稱壓印模板 +item.appliedenergistics2.ItemMaterial.SkyDust.name=隕石粉 +item.appliedenergistics2.ItemMaterial.CardCrafting.name=合成卡 + +item.appliedenergistics2.ItemPart.AnnihilationPlane.name=破壞面板 +item.appliedenergistics2.ItemPart.CableAnchor.name=線纜錨 +item.appliedenergistics2.ItemPart.CableCovered.name=ME包層線纜 +item.appliedenergistics2.ItemPart.CableGlass.name=ME玻璃線纜 +item.appliedenergistics2.ItemPart.CableSmart.name=ME智能線纜 +item.appliedenergistics2.ItemPart.CableDense.name=ME致密線纜 +item.appliedenergistics2.ItemPart.StorageMonitor.name=ME儲存監控器 +item.appliedenergistics2.ItemPart.ConversionMonitor.name=ME交換監控器 +item.appliedenergistics2.ItemPart.CraftingTerminal.name=ME合成終端 +item.appliedenergistics2.ItemPart.SemiDarkMonitor.name=照明面板 +item.appliedenergistics2.ItemPart.Monitor.name=亮色照明面板 +item.appliedenergistics2.ItemPart.DarkMonitor.name=暗色照明面板 +item.appliedenergistics2.ItemPart.ExportBus.name=ME輸出總線 +item.appliedenergistics2.ItemPart.FormationPlane.name=ME成型面板 +item.appliedenergistics2.ItemPart.ImportBus.name=ME輸入總線 +item.appliedenergistics2.ItemPart.Interface.name=ME接口 +item.appliedenergistics2.ItemPart.LevelEmitter.name=ME標準發信器 +item.appliedenergistics2.ItemPart.P2PTunnel.name=P2P通道 +item.appliedenergistics2.ItemPart.PatternTerminal.name=ME樣板終端 +item.appliedenergistics2.ItemPart.QuartzFiber.name=石英纖維 +item.appliedenergistics2.ItemPart.StorageBus.name=ME存儲總線 +item.appliedenergistics2.ItemPart.Terminal.name=ME終端 +item.appliedenergistics2.ItemPart.InvertedToggleBus.name=ME反相觸發總線 +item.appliedenergistics2.ItemPart.ToggleBus.name=ME觸發總線 +item.appliedenergistics2.ItemPart.CraftingMonitor.name=ME合成監控器 +item.appliedenergistics2.ItemPart.InterfaceTerminal.name=ME接口終端 + +item.appliedenergistics2.ItemSpatialStorageCell.128Cubed.name=128³-空間存儲元件 +item.appliedenergistics2.ItemSpatialStorageCell.16Cubed.name=16³-空間存儲元件 +item.appliedenergistics2.ItemSpatialStorageCell.2Cubed.name=2³-空間存儲元件 + +item.appliedenergistics2.ToolCertusQuartzAxe.name=賽特斯石英斧 +item.appliedenergistics2.ToolCertusQuartzCuttingKnife.name=賽特斯石英切割刀 +item.appliedenergistics2.ToolCertusQuartzHoe.name=賽特斯石英鋤 +item.appliedenergistics2.ToolCertusQuartzPickaxe.name=賽特斯石英鎬 +item.appliedenergistics2.ToolCertusQuartzSpade.name=賽特斯石英鍬 +item.appliedenergistics2.ToolCertusQuartzSword.name=賽特斯石英劍 +item.appliedenergistics2.ToolCertusQuartzWrench.name=賽特斯石英扳手 + +item.appliedenergistics2.ToolNetherQuartzAxe.name=下界石英斧 +item.appliedenergistics2.ToolNetherQuartzCuttingKnife.name=下界石英切割刀 +item.appliedenergistics2.ToolNetherQuartzHoe.name=下界石英鋤 +item.appliedenergistics2.ToolNetherQuartzPickaxe.name=下界石英鎬 +item.appliedenergistics2.ToolNetherQuartzSpade.name=下界石英鍬 +item.appliedenergistics2.ToolNetherQuartzSword.name=下界石英劍 +item.appliedenergistics2.ToolNetherQuartzWrench.name=下界石英扳手 + +item.appliedenergistics2.ItemPaintBall.name=染色球 +item.appliedenergistics2.ToolPortableCell.name=便攜元件 +item.appliedenergistics2.ToolNetworkTool.name=網絡工具 +item.appliedenergistics2.ToolChargedStaff.name=充能手杖 +item.appliedenergistics2.ToolEntropyManipulator.name=熵變機械臂 +item.appliedenergistics2.ToolMassCannon.name=物質炮 +item.appliedenergistics2.ToolMemoryCard.name=內存卡 +item.appliedenergistics2.ToolColorApplicator.name=染色器 +item.appliedenergistics2.ToolWirelessTerminal.name=無線終端 +item.appliedenergistics2.ToolBiometricCard.name=身份卡 + +item.appliedenergistics2.ToolDebugCard.name=Dev.調試卡 +item.appliedenergistics2.ToolReplicatorCard.name=Dev.復制卡