Compare commits

..
2 Commits
Author SHA1 Message Date
Martin Robertz 26ff69921f update 2024-12-29 00:18:41 +01:00
Pascal aa1ac50bd4 ensure TileLightNode instance at breakBlock (#181)
(cherry picked from commit 4558f194be)
2024-12-29 00:15:10 +01:00
51 changed files with 120 additions and 678 deletions

No files matched your search

-1
View File
@@ -27,4 +27,3 @@ whitelist.json
*.iws
src/main/resources/mixins.*.json
*.bat
layout.json
+12 -13
View File
@@ -2,22 +2,21 @@
dependencies {
api('com.github.GTNewHorizons:EnderCore:0.4.6:dev') {transitive = false}
compileOnly('com.github.GTNewHorizons:ForestryMC:4.10.5:dev')
compileOnly('com.github.GTNewHorizons:NotEnoughItems:2.7.31-GTNH:dev')
api("com.github.GTNewHorizons:GTNHLib:0.6.16:dev")
compileOnly('com.github.GTNewHorizons:BuildCraft:7.1.42:dev')
compileOnly('com.github.GTNewHorizons:ForestryMC:4.9.20:dev')
compileOnly('com.github.GTNewHorizons:NotEnoughItems:2.6.53-GTNH:dev')
api("com.github.GTNewHorizons:GTNHLib:0.5.23:dev")
compileOnly('com.github.GTNewHorizons:BuildCraft:7.1.39:dev')
api('curse.maven:cofh-lib-220333:2388748') // https://www.curseforge.com/minecraft/mc-mods/cofh-lib/files/2388748
shadowImplementation('cglib:cglib-nodep:3.3.0')
compileOnly('com.github.GTNewHorizons:waila:1.8.4:api') {transitive = false}
compileOnly('com.github.GTNewHorizons:Applied-Energistics-2-Unofficial:rv3-beta-554-GTNH:api') {transitive = false}
compileOnly('com.github.GTNewHorizons:waila:1.8.2:api') {transitive = false}
compileOnly('com.github.GTNewHorizons:Applied-Energistics-2-Unofficial:rv3-beta-483-GTNH:api') {transitive = false}
compileOnly('com.github.GTNewHorizons:Baubles:1.0.4:dev') {transitive = false}
compileOnly('com.github.GTNewHorizons:GT5-Unofficial:5.09.51.189:dev') {transitive = false}
compileOnly("com.github.GTNewHorizons:ModularUI2:2.2.6-1.7.10:dev") {transitive = false}
compileOnly('com.github.GTNewHorizons:Railcraft:9.16.7:dev') {transitive = false}
compileOnly('com.github.GTNewHorizons:StorageDrawers:2.1.0-GTNH:api') {transitive = false}
compileOnly('com.github.GTNewHorizons:Chisel:2.16.2-GTNH:dev') {transitive = false}
compileOnly('com.github.GTNewHorizons:OpenComputers:1.11.10-GTNH:api') {transitive = false}
compileOnly('com.github.GTNewHorizons:GT5-Unofficial:5.09.50.112:dev') {transitive = false}
compileOnly('com.github.GTNewHorizons:Railcraft:9.15.16:api') {transitive = false}
compileOnly('com.github.GTNewHorizons:StorageDrawers:2.0.5-GTNH:api') {transitive = false}
compileOnly('com.github.GTNewHorizons:Chisel:2.15.4-GTNH:dev') {transitive = false}
compileOnly('com.github.GTNewHorizons:OpenComputers:1.10.28-GTNH:api') {transitive = false}
compileOnly('curse.maven:minefactory-reloaded-66672:2366150') // https://www.curseforge.com/minecraft/mc-mods/minefactory-reloaded/files/2366150
compileOnly('thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev')
compileOnly('curse.maven:ee3-65509:2305023') // https://www.curseforge.com/minecraft/mc-mods/ee3/files/2305023
@@ -25,5 +24,5 @@ dependencies {
compileOnly(rfg.deobf('curse.maven:mekanism-268560:2475797')) // https://www.curseforge.com/minecraft/mc-mods/mekanism/files/2475797
compileOnly(rfg.deobf('maven.modrinth:immibis-microblocks:59.1.2')) // https://modrinth.com/mod/immibis-microblocks/version/59.1.2
compileOnlyApi('com.github.GTNewHorizons:Angelica:1.0.0-beta40:api') {transitive = false}
compileOnlyApi('com.github.GTNewHorizons:Angelica:1.0.0-beta28:api') {transitive = false}
}
Binary file not shown.
+1 -1
View File
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Vendored
+3 -2
View File
@@ -86,7 +86,8 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -205,7 +206,7 @@ fi
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
+1 -1
View File
@@ -17,7 +17,7 @@ pluginManagement {
}
plugins {
id 'com.gtnewhorizons.gtnhsettingsconvention' version '1.0.37'
id 'com.gtnewhorizons.gtnhsettingsconvention' version '1.0.30'
}
@@ -107,7 +107,7 @@ import crazypants.enderio.machine.power.BlockCapacitorBank;
import crazypants.enderio.machine.power.CapBankRenderer2;
import crazypants.enderio.machine.power.CapacitorBankRenderer;
import crazypants.enderio.machine.ranged.RangeEntity;
import crazypants.enderio.machine.ranged.RangeRenderer;
import crazypants.enderio.machine.ranged.RangeRenerer;
import crazypants.enderio.machine.reservoir.ReservoirRenderer;
import crazypants.enderio.machine.reservoir.TileReservoir;
import crazypants.enderio.machine.solar.BlockSolarPanel;
@@ -419,7 +419,7 @@ public class ClientProxy extends CommonProxy {
FMLCommonHandler.instance().bus().register(KeyTracker.instance);
RenderingRegistry.registerEntityRenderingHandler(SoundEntity.class, new SoundRenderer());
RenderingRegistry.registerEntityRenderingHandler(RangeEntity.class, new RangeRenderer());
RenderingRegistry.registerEntityRenderingHandler(RangeEntity.class, new RangeRenerer());
MinecraftForge.EVENT_BUS.register(SoundDetector.instance);
FMLCommonHandler.instance().bus().register(SoundDetector.instance);
@@ -186,7 +186,7 @@ import crazypants.util.EE3Util;
modid = MODID,
name = MOD_NAME,
version = VERSION,
dependencies = "required-after:CoFHLib@(1.0.3B3,);required-after:endercore;after:MineFactoryReloaded;after:Forestry;after:Waila@[1.5.8,);after:Thaumcraft;after:appliedenergistics2@[rv2-beta-8,);after:chisel;required-after:gtnhlib@[0.2.10,)",
dependencies = "required-after:CoFHLib@(1.0.3B3,);after:endercore;after:MineFactoryReloaded;after:Forestry;after:Waila@[1.5.8,);after:Thaumcraft;after:appliedenergistics2@[rv2-beta-8,);after:chisel;required-after:gtnhlib@[0.2.10,)",
guiFactory = "crazypants.enderio.config.ConfigFactoryEIO")
public class EnderIO {
@@ -697,6 +697,10 @@ public class ConduitRecipes {
res.stackSize = 1;
ItemStack resDense = new ItemStack(EnderIO.itemMEConduit, 1, 1);
ItemStack resUltra = new ItemStack(EnderIO.itemMEConduit, 1, 2);
addShaped(resDense, "bCb", "CbC", "bCb", 'b', conduitBinder, 'C', res);
if (Config.enableMEUltraDenseConduits) {
addShaped(resUltra, "bCb", "CbC", "bCb", 'b', conduitBinder, 'C', resDense);
}
}
}
@@ -14,5 +14,7 @@ public interface IMEConduit extends IConduit {
boolean isDense();
boolean isDenseUltra();
int getChannelsInUse();
}
@@ -16,6 +16,7 @@ import com.enderio.core.client.render.IconUtil;
import com.enderio.core.common.util.BlockCoord;
import appeng.api.AEApi;
import appeng.api.networking.GridFlags;
import appeng.api.networking.IGridConnection;
import appeng.api.networking.IGridHost;
import appeng.api.networking.IGridNode;
@@ -50,6 +51,7 @@ public class MEConduit extends AbstractConduit implements IMEConduit {
public static IIcon[] longTextures;
private boolean isDense;
private boolean isDenseUltra;
private int playerID = -1;
public MEConduit() {
@@ -57,6 +59,7 @@ public class MEConduit extends AbstractConduit implements IMEConduit {
}
public MEConduit(int itemDamage) {
isDenseUltra = itemDamage == 2;
isDense = itemDamage == 1;
}
@@ -65,14 +68,16 @@ public class MEConduit extends AbstractConduit implements IMEConduit {
@Override
public void registerIcons(IIconRegister register) {
coreTextures = new IIcon[2];
longTextures = new IIcon[2];
coreTextures = new IIcon[3];
longTextures = new IIcon[3];
coreTextures[0] = register.registerIcon(EnderIO.DOMAIN + ":meConduitCore");
coreTextures[1] = register.registerIcon(EnderIO.DOMAIN + ":meConduitCoreDense");
coreTextures[2] = register.registerIcon(EnderIO.DOMAIN + ":meConduitCoreDenseUltra");
longTextures[0] = register.registerIcon(EnderIO.DOMAIN + ":meConduit");
longTextures[1] = register.registerIcon(EnderIO.DOMAIN + ":meConduitDense");
longTextures[2] = register.registerIcon(EnderIO.DOMAIN + ":meConduitDenseUltra");
}
@Override
@@ -82,7 +87,10 @@ public class MEConduit extends AbstractConduit implements IMEConduit {
});
}
public static int getDamageForState(boolean isDense) {
public static int getDamageForState(boolean isDense, boolean isDenseUltra) {
if (isDenseUltra) {
return 2;
}
if (isDense) {
return 1;
}
@@ -96,7 +104,7 @@ public class MEConduit extends AbstractConduit implements IMEConduit {
@Override
public ItemStack createItem() {
return new ItemStack(EnderIO.itemMEConduit, 1, getDamageForState(isDense));
return new ItemStack(EnderIO.itemMEConduit, 1, getDamageForState(isDense, isDenseUltra));
}
@Override
@@ -114,6 +122,7 @@ public class MEConduit extends AbstractConduit implements IMEConduit {
public void writeToNBT(NBTTagCompound nbtRoot) {
super.writeToNBT(nbtRoot);
nbtRoot.setBoolean("isDense", isDense);
nbtRoot.setBoolean("isDenseUltra", isDenseUltra);
nbtRoot.setInteger("playerID", playerID);
}
@@ -126,6 +135,9 @@ public class MEConduit extends AbstractConduit implements IMEConduit {
} else {
playerID = -1;
}
if (nbtRoot.hasKey("isDenseUltra")) {
isDenseUltra = nbtRoot.getBoolean("isDenseUltra");
}
}
public void setPlayerID(int playerID) {
@@ -196,12 +208,22 @@ public class MEConduit extends AbstractConduit implements IMEConduit {
@Method(modid = "appliedenergistics2")
private Boolean canConnectToGridNode(IGridNode node, ForgeDirection dir) {
return node.getGridBlock().getConnectableSides().contains(dir.getOpposite());
if (node.getGridBlock().getConnectableSides().contains(dir.getOpposite())) {
if (isDenseUltra()) {
return node.hasFlag(GridFlags.ULTRA_DENSE_CAPACITY)
|| ((node.hasFlag(GridFlags.DENSE_CAPACITY)) && !node.hasFlag(GridFlags.CANNOT_CARRY));
} else if (isDense()) {
return true;
} else {
return !node.hasFlag(GridFlags.ULTRA_DENSE_CAPACITY);
}
}
return false;
}
@Override
public IIcon getTextureForState(CollidableComponent component) {
int state = getDamageForState(isDense);
int state = getDamageForState(isDense, isDenseUltra);
if (component.dir == ForgeDirection.UNKNOWN) {
return coreTextures[state];
} else {
@@ -378,4 +400,9 @@ public class MEConduit extends AbstractConduit implements IMEConduit {
public boolean isDense() {
return isDense;
}
@Override
public boolean isDenseUltra() {
return isDenseUltra;
}
}
@@ -43,6 +43,9 @@ public class MEConduitGrid implements IGridBlock {
@Override
public EnumSet<GridFlags> getFlags() {
if (conduit.isDenseUltra()) {
return EnumSet.of(GridFlags.ULTRA_DENSE_CAPACITY);
}
if (conduit.isDense()) {
return EnumSet.of(GridFlags.DENSE_CAPACITY);
}
@@ -285,8 +285,6 @@ public final class Config {
public static int darkSteelApiaristArmorCost = 10;
public static int darkSteelTrackmanGogglesCost = 10;
public static int darkSteelSwimCost = 10;
public static int darkSteelNightVisionCost = 10;
@@ -477,6 +475,7 @@ public final class Config {
public static boolean isGasConduitEnabled = true;
public static boolean enableMEConduits = true;
public static boolean enableMEUltraDenseConduits = false;
public static boolean enableOCConduits = true;
public static boolean enableOCConduitsAnimatedTexture = true;
@@ -1611,14 +1610,6 @@ public final class Config {
darkSteelApiaristArmorCost,
"Number of levels required for the Apiarist Armor upgrade.").getInt(darkSteelApiaristArmorCost);
darkSteelTrackmanGogglesCost = config
.get(
sectionDarkSteel.name,
"darkSteelTrackmanGogglesCost",
darkSteelTrackmanGogglesCost,
"Number of levels required for the Trackman's Goggles upgrade.")
.getInt(darkSteelTrackmanGogglesCost);
darkSteelTravelCost = config.get(
sectionDarkSteel.name,
"darkSteelTravelCost",
@@ -2424,6 +2415,11 @@ public final class Config {
sectionItems.name,
enableMEConduits,
"Allows ME conduits. Only has an effect with AE2 installed.");
enableMEUltraDenseConduits = config.getBoolean(
"enableMEUltraDenseConduits",
sectionItems.name,
enableMEUltraDenseConduits,
"Allows ME Ultra Dense conduits. Only has an effect with AE2 installed.");
enableOCConduits = config.getBoolean(
"enableOCConduits",
sectionItems.name,
@@ -25,19 +25,16 @@ import crazypants.enderio.config.Config;
import crazypants.enderio.item.PacketMagnetState.SlotType;
import crazypants.enderio.item.darksteel.DarkSteelController;
import crazypants.enderio.item.darksteel.DarkSteelItems;
import crazypants.enderio.item.darksteel.ItemDarkSteelArmor;
import crazypants.enderio.item.darksteel.PacketUpgradeState;
import crazypants.enderio.item.darksteel.PacketUpgradeState.Type;
import crazypants.enderio.item.darksteel.SoundDetector;
import crazypants.enderio.item.darksteel.upgrade.JumpUpgrade;
import crazypants.enderio.item.darksteel.upgrade.SoundDetectorUpgrade;
import crazypants.enderio.item.darksteel.upgrade.SpeedUpgrade;
import crazypants.enderio.item.darksteel.upgrade.TrackmanGogglesUpgrade;
import crazypants.enderio.network.PacketHandler;
import crazypants.enderio.teleport.TravelController;
import crazypants.enderio.thaumcraft.GogglesOfRevealingUpgrade;
import crazypants.util.BaublesUtil;
import mods.railcraft.api.core.items.IToolGoggles;
public class KeyTracker {
@@ -57,8 +54,6 @@ public class KeyTracker {
private final KeyBinding gogglesKey;
private final KeyBinding trackmansGogglesKey;
private final KeyBinding yetaWrenchMode;
private final KeyBinding magnetKey;
@@ -89,12 +84,6 @@ public class KeyTracker {
EnderIO.lang.localize("category.darksteelarmor"));
ClientRegistry.registerKeyBinding(gogglesKey);
trackmansGogglesKey = new KeyBinding(
EnderIO.lang.localize("keybind.trackmansgoggles"),
Keyboard.KEY_NONE,
EnderIO.lang.localize("category.darksteelarmor"));
ClientRegistry.registerKeyBinding(trackmansGogglesKey);
stepAssistKey = new KeyBinding(
EnderIO.lang.localize("keybind.stepassist"),
Keyboard.KEY_NONE,
@@ -139,7 +128,6 @@ public class KeyTracker {
handleNightVision();
handleYetaWrench();
handleGoggles();
handleTrackmanGoggles();
handleStepAssist();
handleSpeed();
handleJump();
@@ -244,22 +232,6 @@ public class KeyTracker {
}
}
private void handleTrackmanGoggles() {
if (trackmansGogglesKey.isPressed()) {
EntityPlayer player = Minecraft.getMinecraft().thePlayer;
if (!TrackmanGogglesUpgrade.isUpgradeEquipped(player)) {
return;
}
ItemStack helmet = player.getEquipmentInSlot(4);
((ItemDarkSteelArmor) helmet.getItem()).incrementAura(helmet);
IToolGoggles.displaySwitchMessage(
Minecraft.getMinecraft().theWorld,
Minecraft.getMinecraft().thePlayer,
((ItemDarkSteelArmor) helmet.getItem()).getCurrentAura(helmet));
return;
}
}
private void handleGoggles() {
if (gogglesKey.isPressed()) {
EntityPlayer player = Minecraft.getMinecraft().thePlayer;
@@ -33,7 +33,6 @@ import crazypants.enderio.item.darksteel.upgrade.SoundDetectorUpgrade;
import crazypants.enderio.item.darksteel.upgrade.SpeedUpgrade;
import crazypants.enderio.item.darksteel.upgrade.SpoonUpgrade;
import crazypants.enderio.item.darksteel.upgrade.SwimUpgrade;
import crazypants.enderio.item.darksteel.upgrade.TrackmanGogglesUpgrade;
import crazypants.enderio.item.darksteel.upgrade.TravelUpgrade;
import crazypants.enderio.material.Alloy;
import crazypants.enderio.material.endergy.AlloyEndergy;
@@ -76,9 +75,6 @@ public class DarkSteelRecipeManager {
upgrades.add(ApiaristArmorUpgrade.LEGS);
upgrades.add(ApiaristArmorUpgrade.BOOTS);
}
if (Loader.isModLoaded("Railcraft")) {
upgrades.add(TrackmanGogglesUpgrade.INSTANCE);
}
}
@SubscribeEvent
@@ -10,7 +10,6 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemArmor;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.DamageSource;
import net.minecraft.util.EnumChatFormatting;
import net.minecraftforge.common.ISpecialArmor;
@@ -35,13 +34,9 @@ import crazypants.enderio.item.darksteel.upgrade.ApiaristArmorUpgrade;
import crazypants.enderio.item.darksteel.upgrade.EnergyUpgrade;
import crazypants.enderio.item.darksteel.upgrade.IDarkSteelUpgrade;
import crazypants.enderio.item.darksteel.upgrade.NaturalistEyeUpgrade;
import crazypants.enderio.item.darksteel.upgrade.TrackmanGogglesUpgrade;
import crazypants.enderio.thaumcraft.GogglesOfRevealingUpgrade;
import forestry.api.apiculture.IArmorApiarist;
import forestry.api.core.IArmorNaturalist;
import mods.railcraft.api.core.items.IToolGoggles;
import mods.railcraft.common.core.RailcraftConfig;
import mods.railcraft.common.items.ItemGoggles.GoggleAura;
import thaumcraft.api.IGoggles;
import thaumcraft.api.IVisDiscountGear;
import thaumcraft.api.aspects.Aspect;
@@ -50,12 +45,11 @@ import thaumcraft.api.nodes.IRevealer;
@InterfaceList({ @Interface(iface = "thaumcraft.api.IGoggles", modid = "Thaumcraft"),
@Interface(iface = "thaumcraft.api.IVisDiscountGear", modid = "Thaumcraft"),
@Interface(iface = "thaumcraft.api.nodes.IRevealer", modid = "Thaumcraft"),
@Interface(iface = "mods.railcraft.api.core.items.IToolGoggles", modid = "Railcraft"),
@Interface(iface = "forestry.api.apiculture.IArmorApiarist", modid = "Forestry"),
@Interface(iface = "forestry.api.core.IArmorNaturalist", modid = "Forestry") })
public class ItemDarkSteelArmor extends ItemArmor
implements IEnergyContainerItem, ISpecialArmor, IAdvancedTooltipProvider, IDarkSteelItem, IGoggles, IRevealer,
IVisDiscountGear, IArmorApiarist, IArmorNaturalist, IToolGoggles {
IVisDiscountGear, IArmorApiarist, IArmorNaturalist {
public static final ArmorMaterial MATERIAL = EnumHelper
.addArmorMaterial("darkSteel", 35, new int[] { 2, 6, 5, 2 }, 15);
@@ -328,45 +322,9 @@ public class ItemDarkSteelArmor extends ItemArmor
@Override
@Method(modid = "Forestry")
public boolean canSeePollination(EntityPlayer player, ItemStack armor, boolean doSee) {
if (armor == null || !DarkSteelItems.isArmorPart(armor.getItem(), 0)) {
if (armor == null || DarkSteelItems.isArmorPart(armor.getItem(), 0)) {
return false;
}
return NaturalistEyeUpgrade.isUpgradeEquipped(player);
}
// Railcraft
public void incrementAura(ItemStack goggles) {
if (goggles != null && goggles.getItem() instanceof ItemDarkSteelArmor
&& DarkSteelItems.isArmorPart(goggles.getItem(), 0)) {
NBTTagCompound data = goggles.getTagCompound();
if (data == null) {
data = new NBTTagCompound();
goggles.setTagCompound(data);
}
byte aura = data.getByte("aura");
aura++;
if (aura >= GoggleAura.VALUES.length) aura = 0;
data.setByte("aura", aura);
if (this.getCurrentAura(goggles) == GoggleAura.TRACKING && !RailcraftConfig.isTrackingAuraEnabled()) {
incrementAura(goggles);
}
}
}
@Override
@Method(modid = "Railcraft")
public GoggleAura getCurrentAura(ItemStack goggles) {
if (TrackmanGogglesUpgrade.loadFromItem(goggles) != null) {
NBTTagCompound data = goggles.getTagCompound();
if (data != null) {
return GoggleAura.VALUES[data.getByte("aura")];
} else {
return GoggleAura.NONE;
}
} else {
return GoggleAura.NONE;
}
}
}
@@ -1,85 +0,0 @@
package crazypants.enderio.item.darksteel.upgrade;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import cpw.mods.fml.common.registry.GameRegistry;
import crazypants.enderio.config.Config;
import crazypants.enderio.item.darksteel.DarkSteelItems;
public class TrackmanGogglesUpgrade extends AbstractUpgrade {
private static String UPGRADE_NAME = "trackmansGoggles";
public static final TrackmanGogglesUpgrade INSTANCE = new TrackmanGogglesUpgrade();
public static ItemStack getGoggles() {
Item i = GameRegistry.findItem("Railcraft", "armor.goggles");
if (i != null) {
return new ItemStack(i);
}
return null;
}
public static TrackmanGogglesUpgrade loadFromItem(ItemStack stack) {
if (stack == null) {
return null;
}
if (stack.stackTagCompound == null) {
return null;
}
if (!stack.stackTagCompound.hasKey(KEY_UPGRADE_PREFIX + UPGRADE_NAME)) {
return null;
}
return new TrackmanGogglesUpgrade(
(NBTTagCompound) stack.stackTagCompound.getTag(KEY_UPGRADE_PREFIX + UPGRADE_NAME));
}
public static boolean isUpgradeEquipped(EntityPlayer player) {
ItemStack helmet = player.getEquipmentInSlot(4);
return TrackmanGogglesUpgrade.loadFromItem(helmet) != null;
}
public TrackmanGogglesUpgrade(NBTTagCompound tag) {
super(UPGRADE_NAME, tag);
}
public TrackmanGogglesUpgrade() {
super(
UPGRADE_NAME,
"enderio.darksteel.upgrade.trackmansGoggles",
getGoggles(),
Config.darkSteelApiaristArmorCost);
}
@Override
public boolean canAddToItem(ItemStack stack) {
if (stack == null || !DarkSteelItems.isArmorPart(stack.getItem(), 0) || getUpgradeItem() == null) {
return false;
}
TrackmanGogglesUpgrade up = loadFromItem(stack);
return up == null;
}
@Override
public void writeUpgradeToNBT(NBTTagCompound upgradeRoot) {}
@Override
public ItemStack getUpgradeItem() {
if (upgradeItem != null) {
return upgradeItem;
}
upgradeItem = getGoggles();
return upgradeItem;
}
@Override
public String getUpgradeItemName() {
if (getUpgradeItem() == null) {
return "Trackman's Helmet";
}
return super.getUpgradeItemName();
}
}
@@ -1,7 +1,5 @@
package crazypants.enderio.machine.farm;
import java.util.List;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.FontRenderer;
import net.minecraft.client.gui.GuiButton;
@@ -12,11 +10,9 @@ import org.lwjgl.opengl.GL11;
import com.enderio.core.client.gui.button.IconButton;
import com.enderio.core.client.gui.button.ToggleButton;
import com.enderio.core.client.gui.widget.GuiToolTip;
import com.enderio.core.client.render.ColorUtil;
import com.enderio.core.client.render.RenderUtil;
import com.enderio.core.common.vecmath.Vector4f;
import com.google.common.collect.Lists;
import crazypants.enderio.EnderIO;
import crazypants.enderio.gui.IconEIO;
@@ -24,42 +20,11 @@ import crazypants.enderio.machine.gui.GuiPoweredMachineBase;
public class GuiFarmStation extends GuiPoweredMachineBase<TileFarmStation> {
private static final int RANGE_ID = 8738924;
private static final int LOCK_ID = 1234;
private final ToggleButton showRangeB;
public GuiFarmStation(InventoryPlayer par1InventoryPlayer, TileFarmStation machine) {
super(machine, new FarmStationContainer(par1InventoryPlayer, machine), "farmStation");
int x = getXSize() - 5 - BUTTON_SIZE / 2;
int y = getGuiTop() + 5;
getRedstoneBtn().setPosition(x, y);
y += BUTTON_SIZE + 2;
getConfigBtn().setPosition(x, y);
y += BUTTON_SIZE + 2;
showRangeB = new ToggleButton(this, RANGE_ID, x, y, IconEIO.PLUS, IconEIO.MINUS);
showRangeB.setSize(BUTTON_SIZE, BUTTON_SIZE);
addToolTip(new GuiToolTip(showRangeB.getBounds(), "null") {
@Override
public List<String> getToolTipText() {
return Lists.newArrayList(
EnderIO.lang.localize(
showRangeB.isSelected() ? "gui.spawnGurad.hideRange" : "gui.spawnGurad.showRange"));
}
});
setYSize(ySize + 3);
setXSize(xSize + 8);
}
@Override
protected int getPowerU() {
return 184;
}
@SuppressWarnings("unchecked")
@@ -67,9 +32,6 @@ public class GuiFarmStation extends GuiPoweredMachineBase<TileFarmStation> {
public void initGui() {
super.initGui();
showRangeB.onGuiInit();
showRangeB.setSelected(getTileEntity().isShowingRange());
int x = getGuiLeft() + 36;
int y = getGuiTop() + 43;
@@ -132,10 +94,7 @@ public class GuiFarmStation extends GuiPoweredMachineBase<TileFarmStation> {
protected void actionPerformed(GuiButton b) {
if (b.id >= LOCK_ID + TileFarmStation.minSupSlot && b.id <= LOCK_ID + TileFarmStation.maxSupSlot) {
getTileEntity().toggleLockedState(b.id - LOCK_ID);
} else if (b.id == RANGE_ID) {
getTileEntity().setShowRange(showRangeB.isSelected());
}
super.actionPerformed(b);
}
@@ -15,17 +15,12 @@ import net.minecraft.item.ItemShears;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.server.MinecraftServer;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.EnumSkyBlock;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
import com.enderio.core.common.util.BlockCoord;
import com.enderio.core.common.vecmath.Vector3d;
import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import crazypants.enderio.EnderIO;
import crazypants.enderio.ModObject;
import crazypants.enderio.config.Config;
@@ -37,52 +32,13 @@ import crazypants.enderio.machine.SlotDefinition;
import crazypants.enderio.machine.farm.farmers.FarmersCommune;
import crazypants.enderio.machine.farm.farmers.IHarvestResult;
import crazypants.enderio.machine.farm.farmers.RubberTreeFarmerIC2;
import crazypants.enderio.machine.ranged.IRanged;
import crazypants.enderio.machine.ranged.RangeEntity;
import crazypants.enderio.network.PacketHandler;
import crazypants.enderio.power.BasicCapacitor;
import crazypants.enderio.tool.ArrayMappingTool;
public class TileFarmStation extends AbstractPoweredTaskEntity implements IRanged {
public class TileFarmStation extends AbstractPoweredTaskEntity {
private static final int TICKS_PER_WORK = 20;
private boolean showingRange;
@Override
public World getWorld() {
return worldObj;
}
@Override
public AxisAlignedBB getBounds() {
return null;
}
@Override
public Vector3d getRange() {
return new Vector3d(getFarmSize(), 0, getFarmSize());
}
@Override
public boolean isShowingRange() {
return showingRange;
}
@SideOnly(Side.CLIENT)
public void setShowRange(boolean showRange) {
if (showingRange == showRange) {
return;
}
showingRange = showRange;
if (showingRange) {
worldObj.spawnEntityInWorld(new RangeEntity(this));
}
}
@Override
public int getColor() {
return 0x66FFAA00;
}
public enum ToolType {
@@ -13,7 +13,6 @@ import org.lwjgl.opengl.GL11;
import com.enderio.core.api.common.util.IProgressTile;
import com.enderio.core.client.gui.button.IconButton;
import com.enderio.core.client.gui.button.ToggleButton;
import com.enderio.core.client.gui.widget.GuiToolTip;
import com.enderio.core.client.render.RenderUtil;
import com.enderio.core.common.util.BlockCoord;
@@ -212,12 +211,4 @@ public abstract class GuiMachineBase<T extends AbstractMachineEntity> extends Gu
}
return 0;
}
protected RedstoneModeButton getRedstoneBtn() {
return redstoneButton;
}
protected ToggleButton getConfigBtn() {
return configB;
}
}
@@ -1,7 +1,6 @@
package crazypants.enderio.machine.killera;
import java.awt.Rectangle;
import java.util.List;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.entity.player.InventoryPlayer;
@@ -9,11 +8,9 @@ import net.minecraft.entity.player.InventoryPlayer;
import org.lwjgl.opengl.GL11;
import com.enderio.core.client.gui.button.IconButton;
import com.enderio.core.client.gui.button.ToggleButton;
import com.enderio.core.client.gui.widget.GuiToolTip;
import com.enderio.core.client.render.RenderUtil;
import com.enderio.core.common.util.SoundUtil;
import com.google.common.collect.Lists;
import crazypants.enderio.EnderIO;
import crazypants.enderio.fluid.Fluids;
@@ -26,9 +23,6 @@ import crazypants.enderio.xp.PacketGivePlayerXP;
public class GuiKillerJoe extends GuiMachineBase<TileKillerJoe> {
private static final int RANGE_ID = 8738924;
private final ToggleButton showRangeB;
private static final int XP_ID = 3489;
private static final int XP10_ID = 34892;
@@ -38,18 +32,6 @@ public class GuiKillerJoe extends GuiMachineBase<TileKillerJoe> {
public GuiKillerJoe(InventoryPlayer inventory, final TileKillerJoe tileEntity) {
super(tileEntity, new ContainerKillerJoe(inventory, tileEntity), "killerJoe");
showRangeB = new ToggleButton(this, RANGE_ID, 155, 24 + 18, IconEIO.PLUS, IconEIO.MINUS);
showRangeB.setSize(BUTTON_SIZE, BUTTON_SIZE);
addToolTip(new GuiToolTip(showRangeB.getBounds(), "null") {
@Override
public List<String> getToolTipText() {
return Lists.newArrayList(
EnderIO.lang.localize(
showRangeB.isSelected() ? "gui.spawnGurad.hideRange" : "gui.spawnGurad.showRange"));
}
});
addToolTip(new GuiToolTip(new Rectangle(18, 11, 15, 47), "") {
@Override
@@ -64,17 +46,11 @@ public class GuiKillerJoe extends GuiMachineBase<TileKillerJoe> {
}
});
int size = 14;
int x = guiLeft + 56 + (65 / 2);
int y = guiTop + 62 + 6;
xpB = new IconButton(this, XP_ID, x - 16, y, IconEIO.XP);
xpB = new IconButton(this, XP_ID, 128, 56, IconEIO.XP);
xpB.setToolTip(EnderIO.lang.localize("killerJoe.giveXp.tooltip"));
xpB.setSize(size, size);
xp10B = new IconButton(this, XP10_ID, x + 2, y, IconEIO.XP_PLUS);
xp10B = new IconButton(this, XP10_ID, 148, 56, IconEIO.XP_PLUS);
xp10B.setToolTip(EnderIO.lang.localize("killerJoe.giveXp10.tooltip"));
xp10B.setSize(size, size);
}
@Override
@@ -82,9 +58,6 @@ public class GuiKillerJoe extends GuiMachineBase<TileKillerJoe> {
super.initGui();
xpB.onGuiInit();
xp10B.onGuiInit();
showRangeB.onGuiInit();
showRangeB.setSelected(getTileEntity().isShowingRange());
((ContainerKillerJoe) inventorySlots).createGhostSlots(getGhostSlots());
}
@@ -97,8 +70,6 @@ public class GuiKillerJoe extends GuiMachineBase<TileKillerJoe> {
} else if (b.id == XP10_ID) {
PacketHandler.INSTANCE.sendToServer(new PacketGivePlayerXP(getTileEntity(), 10));
SoundUtil.playClientSoundFX("random.orb", getTileEntity());
} else if (b.id == RANGE_ID) {
getTileEntity().setShowRange(showRangeB.isSelected());
}
}
@@ -16,7 +16,6 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.server.MinecraftServer;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.Vec3;
import net.minecraft.world.World;
import net.minecraft.world.WorldServer;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.common.util.FakePlayer;
@@ -40,8 +39,6 @@ import com.mojang.authlib.GameProfile;
import cpw.mods.fml.common.eventhandler.Event.Result;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import crazypants.enderio.EnderIO;
import crazypants.enderio.ModObject;
import crazypants.enderio.config.Config;
@@ -50,8 +47,6 @@ import crazypants.enderio.machine.FakePlayerEIO;
import crazypants.enderio.machine.SlotDefinition;
import crazypants.enderio.machine.generator.zombie.IHasNutrientTank;
import crazypants.enderio.machine.generator.zombie.PacketNutrientTank;
import crazypants.enderio.machine.ranged.IRanged;
import crazypants.enderio.machine.ranged.RangeEntity;
import crazypants.enderio.machine.wireless.WirelessChargedLocation;
import crazypants.enderio.network.PacketHandler;
import crazypants.enderio.tool.SmartTank;
@@ -61,46 +56,7 @@ import crazypants.enderio.xp.PacketExperianceContainer;
import crazypants.enderio.xp.XpUtil;
public class TileKillerJoe extends AbstractMachineEntity
implements IFluidHandler, IEntitySelector, IHaveExperience, ITankAccess, IHasNutrientTank, IRanged {
private boolean showingRange;
@Override
public World getWorld() {
return worldObj;
}
@Override
public AxisAlignedBB getBounds() {
return getKillBounds();
}
@Override
public Vector3d getRange() {
return null;
}
@Override
@SideOnly(Side.CLIENT)
public boolean isShowingRange() {
return showingRange;
}
@SideOnly(Side.CLIENT)
public void setShowRange(boolean showRange) {
if (showingRange == showRange) {
return;
}
showingRange = showRange;
if (showingRange) {
worldObj.spawnEntityInWorld(new RangeEntity(this));
}
}
@Override
public int getColor() {
return 0x66FF0000;
}
implements IFluidHandler, IEntitySelector, IHaveExperience, ITankAccess, IHasNutrientTank {
public static class ZombieCache {
@@ -67,7 +67,7 @@ public class GuiAttractor extends GuiPoweredMachineBase<TileAttractor> {
super.drawGuiContainerBackgroundLayer(par1, par2, par3);
int range = (int) getTileEntity().getRange().x;
int range = (int) getTileEntity().getRange();
drawCenteredString(
fontRendererObj,
EnderIO.lang.localize("gui.spawnGurad.range") + " " + range,
@@ -61,13 +61,8 @@ public class TileAttractor extends AbstractPowerConsumerEntity implements IRange
}
@Override
public AxisAlignedBB getBounds() {
return null;
}
@Override
public Vector3d getRange() {
return new Vector3d(range, range, range);
public float getRange() {
return range;
}
@Override
@@ -76,11 +71,6 @@ public class TileAttractor extends AbstractPowerConsumerEntity implements IRange
return showingRange;
}
@Override
public int getColor() {
return 0x66FFFFFF;
}
@SideOnly(Side.CLIENT)
public void setShowRange(boolean showRange) {
if (showingRange == showRange) {
@@ -327,7 +317,8 @@ public class TileAttractor extends AbstractPowerConsumerEntity implements IRange
ent.faceEntity(getTarget(), 10.0F, 20.0F);
return true;
} else if (ent instanceof EntitySilverfish) {
PathEntity pathentity = worldObj.getPathEntityToEntity(ent, getTarget(), range, true, false, false, true);
PathEntity pathentity = worldObj
.getPathEntityToEntity(ent, getTarget(), getRange(), true, false, false, true);
((EntityCreature) ent).setPathToEntity(pathentity);
return true;
} else if (ent instanceof EntityBlaze) {
@@ -348,7 +339,8 @@ public class TileAttractor extends AbstractPowerConsumerEntity implements IRange
return;
}
EntitySilverfish sf = (EntitySilverfish) ent;
PathEntity pathentity = worldObj.getPathEntityToEntity(ent, getTarget(), range, true, false, false, true);
PathEntity pathentity = worldObj
.getPathEntityToEntity(ent, getTarget(), getRange(), true, false, false, true);
sf.setPathToEntity(pathentity);
} else if (ent instanceof EntityBlaze) {
EntityBlaze mob = (EntityBlaze) ent;
@@ -58,7 +58,7 @@ public class GuiAversionObelisk extends GuiPoweredMachineBase<TileAversionObelis
super.drawGuiContainerBackgroundLayer(par1, par2, par3);
int range = (int) getTileEntity().getRange().x;
int range = (int) getTileEntity().getRange();
drawCenteredString(
fontRendererObj,
EnderIO.lang.localize("gui.spawnGurad.range") + " " + range,
@@ -9,7 +9,6 @@ import net.minecraft.util.Vec3;
import net.minecraft.world.World;
import com.enderio.core.client.render.BoundingBox;
import com.enderio.core.common.vecmath.Vector3d;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -41,11 +40,6 @@ public class TileAversionObelisk extends AbstractPowerConsumerEntity implements
return showingRange;
}
@Override
public int getColor() {
return 0x66FFFFFF;
}
@SideOnly(Side.CLIENT)
public void setShowRange(boolean showRange) {
if (showingRange == showRange) {
@@ -70,13 +64,8 @@ public class TileAversionObelisk extends AbstractPowerConsumerEntity implements
}
@Override
public AxisAlignedBB getBounds() {
return null;
}
@Override
public Vector3d getRange() {
return new Vector3d(range, range, range);
public float getRange() {
return range;
}
@Override
@@ -28,7 +28,7 @@ public class GuiInhibitorObelisk extends GuiPoweredMachineBase<TileInhibitorObel
super.drawGuiContainerBackgroundLayer(par1, par2, par3);
int range = (int) getTileEntity().getRange().x;
int range = (int) getTileEntity().getRange();
drawCenteredString(
fontRendererObj,
EnderIO.lang.localize("gui.spawnGurad.range") + " " + range,
@@ -1,11 +1,8 @@
package crazypants.enderio.machine.obelisk.inhibitor;
import net.minecraft.item.ItemStack;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import com.enderio.core.common.vecmath.Vector3d;
import crazypants.enderio.ModObject;
import crazypants.enderio.machine.AbstractPowerConsumerEntity;
import crazypants.enderio.machine.SlotDefinition;
@@ -45,13 +42,8 @@ public class TileInhibitorObelisk extends AbstractPowerConsumerEntity implements
}
@Override
public AxisAlignedBB getBounds() {
return null;
}
@Override
public Vector3d getRange() {
return new Vector3d(range, range, range);
public float getRange() {
return range;
}
public void setRange(float range) {
@@ -64,11 +56,6 @@ public class TileInhibitorObelisk extends AbstractPowerConsumerEntity implements
return false;
}
@Override
public int getColor() {
return 0x66FFFFFF;
}
@Override
public void validate() {
super.validate();
@@ -1,10 +1,8 @@
package crazypants.enderio.machine.ranged;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import com.enderio.core.common.util.BlockCoord;
import com.enderio.core.common.vecmath.Vector3d;
public interface IRanged {
@@ -12,11 +10,7 @@ public interface IRanged {
BlockCoord getLocation();
AxisAlignedBB getBounds();
Vector3d getRange();
float getRange();
boolean isShowingRange();
int getColor();
}
@@ -5,7 +5,6 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.AxisAlignedBB;
import com.enderio.core.common.util.BlockCoord;
import com.enderio.core.common.vecmath.Vector3d;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -14,22 +13,16 @@ public class RangeEntity extends Entity {
int totalLife = 20;
int lifeSpan = totalLife;
private Vector3d lastRange;
private AxisAlignedBB lastBounds;
private final IRanged spawnGuard;
private int color;
private AxisAlignedBB rangeBounds;
private Vector3d range;
float range;
private IRanged spawnGuard;
public RangeEntity(IRanged sg) {
super(sg.getWorld());
spawnGuard = sg;
BlockCoord bc = spawnGuard.getLocation();
setPosition(bc.x - 0.01, bc.y - 0.01, bc.z - 0.01);
setPosition(bc.x + 0.5, bc.y + 0.5, bc.z + 0.5);
ignoreFrustumCheck = true;
color = sg.getColor();
lastRange = spawnGuard.getRange();
lastBounds = spawnGuard.getBounds();
range = sg.getRange() + 0.5f;
}
@Override
@@ -48,14 +41,7 @@ public class RangeEntity extends Entity {
@Override
public AxisAlignedBB getBoundingBox() {
return spawnGuard.getBounds() != null ? spawnGuard.getBounds()
: AxisAlignedBB.getBoundingBox(
posX - lastRange.x,
posY - lastRange.y,
posZ - lastRange.z,
posX + lastRange.x + 1,
posY + lastRange.y + 1,
posZ + lastRange.z + 1);
return null;
}
@Override
@@ -63,8 +49,6 @@ public class RangeEntity extends Entity {
super.onUpdate();
lifeSpan--;
BlockCoord bc = spawnGuard.getLocation();
updateRange();
if (!(worldObj.getTileEntity(bc.x, bc.y, bc.z) instanceof IRanged)) {
setDead();
}
@@ -78,17 +62,4 @@ public class RangeEntity extends Entity {
@Override
protected void writeEntityToNBT(NBTTagCompound p_70014_1_) {}
private void updateRange() {
if (lastRange != null && !lastRange.equals(spawnGuard.getRange())) {
lastRange = spawnGuard.getRange();
} else if (lastBounds != null && !lastBounds.equals(spawnGuard.getBounds())) {
lastBounds = spawnGuard.getBounds();
}
}
public float[] getColor() {
return new float[] { (float) (this.color >> 16 & 255) / 255.0F, (float) (this.color >> 8 & 255) / 255.0F,
(float) (this.color & 255) / 255.0F, (float) (this.color >> 24 & 255) / 255.0F };
}
}
@@ -3,7 +3,6 @@ package crazypants.enderio.machine.ranged;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.entity.RenderEntity;
import net.minecraft.entity.Entity;
import net.minecraft.util.AxisAlignedBB;
import org.lwjgl.opengl.GL11;
@@ -11,19 +10,17 @@ import com.enderio.core.client.render.BoundingBox;
import com.enderio.core.client.render.CubeRenderer;
import com.enderio.core.client.render.IconUtil;
import com.enderio.core.client.render.RenderUtil;
import com.enderio.core.common.vecmath.Vector3d;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@SideOnly(Side.CLIENT)
public class RangeRenderer extends RenderEntity {
public class RangeRenerer extends RenderEntity {
@Override
public void doRender(Entity entity, double x, double y, double z, float p_76986_8_, float p_76986_9_) {
RangeEntity se = ((RangeEntity) entity);
AxisAlignedBB rangeBB = se.getBoundingBox();
final Tessellator tessellator = Tessellator.instance;
GL11.glPushAttrib(GL11.GL_ENABLE_BIT);
@@ -33,29 +30,21 @@ public class RangeRenderer extends RenderEntity {
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
GL11.glDepthMask(false);
Vector3d translate = new Vector3d(
-(se.posX - rangeBB.minX + 0.01),
-(se.posY - rangeBB.minY + 0.01),
-(se.posZ - rangeBB.minZ + 0.01));
Vector3d scale = new Vector3d(
1 - (se.lifeSpan / (float) se.totalLife),
1 - (se.lifeSpan / (float) se.totalLife),
rangeBB.maxZ - rangeBB.minZ);
scale.x = Math.min(scale.x, 1);
scale.y = Math.min(scale.y, 1);
scale.x *= (rangeBB.maxX - rangeBB.minX);
scale.y *= (rangeBB.maxY - rangeBB.minY);
float scale = 1 - (se.lifeSpan / (float) se.totalLife);
scale = Math.min(scale, 1);
scale *= se.range;
GL11.glPushMatrix();
GL11.glColor4f(se.getColor()[0], se.getColor()[1], se.getColor()[2], se.getColor()[3]);
GL11.glTranslatef((float) x, (float) y, (float) z);
GL11.glTranslatef(0.5f, 0.5f, 0.5f);
GL11.glScalef(scale, scale, scale);
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
GL11.glColor4f(1, 1, 1, 0.4f);
RenderUtil.bindBlockTexture();
tessellator.startDrawingQuads();
GL11.glTranslated(x, y, z);
GL11.glTranslated(translate.x, translate.y, translate.z);
GL11.glScaled(scale.x, scale.y, scale.z);
tessellator.setBrightness(15 << 20 | 15 << 4);
CubeRenderer.get().render(BoundingBox.UNIT_CUBE, IconUtil.whiteTexture);
tessellator.draw();
@@ -2,7 +2,6 @@ package crazypants.enderio.machine.spawner;
import java.awt.Color;
import java.awt.Rectangle;
import java.util.List;
import net.minecraft.client.gui.FontRenderer;
import net.minecraft.client.gui.GuiButton;
@@ -11,40 +10,22 @@ import net.minecraft.entity.player.InventoryPlayer;
import org.lwjgl.opengl.GL11;
import com.enderio.core.client.gui.button.MultiIconButton;
import com.enderio.core.client.gui.button.ToggleButton;
import com.enderio.core.client.gui.widget.GuiToolTip;
import com.enderio.core.client.render.ColorUtil;
import com.google.common.collect.Lists;
import crazypants.enderio.EnderIO;
import crazypants.enderio.gui.IconEIO;
import crazypants.enderio.machine.gui.GuiPoweredMachineBase;
import crazypants.enderio.network.PacketHandler;
public class GuiPoweredSpawner extends GuiPoweredMachineBase<TilePoweredSpawner> {
private static final int RANGE_ID = 8738924;
private final MultiIconButton modeB;
private final Rectangle progressTooltipRect;
private final ToggleButton showRangeB;
private boolean wasSpawnMode;
private String header;
public GuiPoweredSpawner(InventoryPlayer par1InventoryPlayer, TilePoweredSpawner te) {
super(te, new ContainerPoweredSpawner(par1InventoryPlayer, te), "poweredSpawner");
showRangeB = new ToggleButton(this, RANGE_ID, 155, 24 + 18, IconEIO.PLUS, IconEIO.MINUS);
showRangeB.setSize(BUTTON_SIZE, BUTTON_SIZE);
addToolTip(new GuiToolTip(showRangeB.getBounds(), "null") {
@Override
public List<String> getToolTipText() {
return Lists.newArrayList(
EnderIO.lang.localize(
showRangeB.isSelected() ? "gui.spawnGurad.hideRange" : "gui.spawnGurad.showRange"));
}
});
modeB = MultiIconButton.createRightArrowButton(this, 8888, 115, 10);
modeB.setSize(10, 16);
@@ -57,8 +38,6 @@ public class GuiPoweredSpawner extends GuiPoweredMachineBase<TilePoweredSpawner>
@Override
public void initGui() {
super.initGui();
showRangeB.onGuiInit();
showRangeB.setSelected(getTileEntity().isShowingRange());
modeB.onGuiInit();
((ContainerPoweredSpawner) inventorySlots).createGhostSlots(getGhostSlots());
}
@@ -68,9 +47,9 @@ public class GuiPoweredSpawner extends GuiPoweredMachineBase<TilePoweredSpawner>
if (par1GuiButton == modeB) {
getTileEntity().setSpawnMode(!getTileEntity().isSpawnMode());
PacketHandler.INSTANCE.sendToServer(new PacketMode(getTileEntity()));
} else if (par1GuiButton.id == RANGE_ID) {
getTileEntity().setShowRange(showRangeB.isSelected());
} else super.actionPerformed(par1GuiButton);
} else {
super.actionPerformed(par1GuiButton);
}
}
private void updateSpawnMode(boolean spawnMode) {
@@ -7,12 +7,7 @@ import net.minecraft.entity.EnumCreatureType;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import com.enderio.core.common.vecmath.Vector3d;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import crazypants.enderio.EnderIO;
import crazypants.enderio.ModObject;
import crazypants.enderio.config.Config;
@@ -21,13 +16,11 @@ import crazypants.enderio.machine.IMachineRecipe;
import crazypants.enderio.machine.IPoweredTask;
import crazypants.enderio.machine.PoweredTask;
import crazypants.enderio.machine.SlotDefinition;
import crazypants.enderio.machine.ranged.IRanged;
import crazypants.enderio.machine.ranged.RangeEntity;
import crazypants.enderio.power.BasicCapacitor;
import crazypants.enderio.power.Capacitors;
import crazypants.enderio.power.ICapacitor;
public class TilePoweredSpawner extends AbstractPoweredTaskEntity implements IRanged {
public class TilePoweredSpawner extends AbstractPoweredTaskEntity {
public static final int MIN_SPAWN_DELAY_BASE = Config.poweredSpawnerMinDelayTicks;
public static final int MAX_SPAWN_DELAY_BASE = Config.poweredSpawnerMaxDelayTicks;
@@ -101,7 +94,6 @@ public class TilePoweredSpawner extends AbstractPoweredTaskEntity implements IRa
private boolean isSpawnMode = true;
private int powerUsePerTick;
private int remainingSpawnTries;
private boolean showingRange;
public TilePoweredSpawner() {
super(new SlotDefinition(1, 1, 1));
@@ -186,7 +178,6 @@ public class TilePoweredSpawner extends AbstractPoweredTaskEntity implements IRa
basePowerUse = POWER_PER_TICK_TEN;
break;
}
double multiplier = PoweredSpawnerConfig.getInstance().getCostMultiplierFor(getEntityName());
setCapacitor(
new BasicCapacitor(
@@ -384,41 +375,4 @@ public class TilePoweredSpawner extends AbstractPoweredTaskEntity implements IRa
public boolean hasEntityName() {
return !NULL_ENTITY_NAME.equals(entityTypeName);
}
@Override
public World getWorld() {
return worldObj;
}
@Override
public AxisAlignedBB getBounds() {
return null;
}
@Override
public Vector3d getRange() {
int range = Config.poweredSpawnerSpawnRange - 1;
return new Vector3d(range, 1, range);
}
@Override
public boolean isShowingRange() {
return showingRange;
}
@SideOnly(Side.CLIENT)
public void setShowRange(boolean showRange) {
if (showingRange == showRange) {
return;
}
showingRange = showRange;
if (showingRange) {
worldObj.spawnEntityInWorld(new RangeEntity(this));
}
}
@Override
public int getColor() {
return 0x66FF0000;
}
}
@@ -2,7 +2,6 @@ package crazypants.enderio.machine.vacuum;
import java.awt.Color;
import java.awt.Rectangle;
import java.util.List;
import net.minecraft.client.gui.FontRenderer;
import net.minecraft.client.gui.GuiButton;
@@ -19,7 +18,6 @@ import com.enderio.core.client.gui.widget.GuiToolTip;
import com.enderio.core.client.render.ColorUtil;
import com.enderio.core.client.render.EnderWidget;
import com.enderio.core.common.util.BlockCoord;
import com.google.common.collect.Lists;
import crazypants.enderio.EnderIO;
import crazypants.enderio.conduit.item.filter.ItemFilter;
@@ -30,7 +28,6 @@ import crazypants.enderio.network.PacketHandler;
public class GuiVacuumChest extends GuiContainerBaseEIO {
private static final int RANGE_ID = 8738924;
private static final int RANGE_LEFT = 145;
private static final int RANGE_TOP = 86;
private static final int RANGE_WIDTH = 16;
@@ -46,7 +43,6 @@ public class GuiVacuumChest extends GuiContainerBaseEIO {
private final TileVacuumChest te;
private final ToggleButton showRangeB;
private final GuiToolTip rangeTooltip;
private final MultiIconButton rangeUpB;
private final MultiIconButton rangeDownB;
@@ -79,18 +75,6 @@ public class GuiVacuumChest extends GuiContainerBaseEIO {
y = 104;
rsB = new RedstoneModeButton(this, ID_REDSTONE, x, y, te, new BlockCoord(te));
showRangeB = new ToggleButton(this, RANGE_ID, x - 18, y, IconEIO.PLUS, IconEIO.MINUS);
showRangeB.setSize(16, 16);
addToolTip(new GuiToolTip(showRangeB.getBounds(), "null") {
@Override
public List<String> getToolTipText() {
return Lists.newArrayList(
EnderIO.lang.localize(
showRangeB.isSelected() ? "gui.spawnGurad.hideRange" : "gui.spawnGurad.showRange"));
}
});
x = FILTER_LEFT + TileVacuumChest.FILTER_SLOTS * 18 + 2;
y = 86;
whiteListB = new ToggleButton(this, ID_WHITELIST, x, y, IconEIO.FILTER_WHITELIST, IconEIO.FILTER_BLACKLIST);
@@ -126,8 +110,6 @@ public class GuiVacuumChest extends GuiContainerBaseEIO {
public void initGui() {
super.initGui();
showRangeB.onGuiInit();
showRangeB.setSelected(te.isShowingRange());
rangeUpB.onGuiInit();
rangeDownB.onGuiInit();
rsB.onGuiInit();
@@ -142,13 +124,11 @@ public class GuiVacuumChest extends GuiContainerBaseEIO {
ItemFilter itemFilter;
switch (guiButton.id) {
case ID_RANGE_UP:
setRange((int) te.getRange().x + 1);
setRange(te.getRange() + 1);
break;
case ID_RANGE_DOWN:
setRange((int) te.getRange().x - 1);
setRange(te.getRange() - 1);
break;
case RANGE_ID:
te.setShowRange(showRangeB.isSelected());
case ID_WHITELIST:
itemFilter = te.getItemFilter();
if (itemFilter != null) {
@@ -213,7 +193,7 @@ public class GuiVacuumChest extends GuiContainerBaseEIO {
fr.drawString(headerInventory, sx + 7, sy + 111, headerColor);
IconEIO.map.render(EnderWidget.BUTTON_DOWN, sx + RANGE_LEFT, sy + RANGE_TOP, RANGE_WIDTH, 16, 0, true);
String str = Integer.toString((int) te.getRange().x);
String str = Integer.toString(te.getRange());
int sw = fr.getStringWidth(str);
fr.drawString(str, sx + RANGE_LEFT + RANGE_WIDTH - sw - 5, sy + RANGE_TOP + 5, ColorUtil.getRGB(Color.black));
@@ -13,14 +13,10 @@ import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import com.enderio.core.client.render.BoundingBox;
import com.enderio.core.common.util.ItemUtil;
import com.enderio.core.common.vecmath.Vector3d;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import crazypants.enderio.EnderIO;
import crazypants.enderio.ModObject;
import crazypants.enderio.TileEntityEio;
@@ -30,11 +26,8 @@ import crazypants.enderio.conduit.item.filter.ItemFilter;
import crazypants.enderio.config.Config;
import crazypants.enderio.machine.IRedstoneModeControlable;
import crazypants.enderio.machine.RedstoneControlMode;
import crazypants.enderio.machine.ranged.IRanged;
import crazypants.enderio.machine.ranged.RangeEntity;
public class TileVacuumChest extends TileEntityEio
implements IEntitySelector, IInventory, IRedstoneModeControlable, IRanged {
public class TileVacuumChest extends TileEntityEio implements IEntitySelector, IInventory, IRedstoneModeControlable {
public static final int ITEM_ROWS = 3;
public static final int ITEM_SLOTS = 9 * ITEM_ROWS;
@@ -49,8 +42,6 @@ public class TileVacuumChest extends TileEntityEio
protected boolean redstoneCheckPassed;
private boolean redstoneStateDirty = true;
private boolean showingRange;
@Override
public void doUpdate() {
if (redstoneStateDirty) {
@@ -235,41 +226,8 @@ public class TileVacuumChest extends TileEntityEio
&& itemstack.getItemDamage() == 0;
}
@Override
public World getWorld() {
return worldObj;
}
@Override
public AxisAlignedBB getBounds() {
return null;
}
@Override
public Vector3d getRange() {
return new Vector3d(range, range, range);
}
@Override
@SideOnly(Side.CLIENT)
public boolean isShowingRange() {
return showingRange;
}
@Override
public int getColor() {
return 0x660000FF;
}
@SideOnly(Side.CLIENT)
public void setShowRange(boolean showRange) {
if (showingRange == showRange) {
return;
}
showingRange = showRange;
if (showingRange) {
worldObj.spawnEntityInWorld(new RangeEntity(this));
}
public int getRange() {
return range;
}
private int limitRange(int range) {
@@ -344,13 +344,14 @@ public class WailaCompat implements IWailaDataProvider {
} else if (itemStack.getItem() == EnderIO.itemMEConduit) {
NBTTagCompound nbtRoot = accessor.getNBTData();
if (nbtRoot.hasKey("isDense")) {
boolean isDenseUltra = nbtRoot.getBoolean("isDenseUltra");
boolean isDense = nbtRoot.getBoolean("isDense");
int channelsInUse = nbtRoot.getInteger("channelsInUse");
currenttip.add(
MessageFormat.format(
EnderIO.lang.localize("itemMEConduit.channelsUsed"),
channelsInUse,
isDense ? 32 : 8));
isDenseUltra ? 128 : (isDense ? 32 : 8)));
}
}
}
@@ -386,6 +387,7 @@ public class WailaCompat implements IWailaDataProvider {
if (mec != null) {
tag.setInteger("channelsInUse", mec.getChannelsInUse());
tag.setBoolean("isDense", mec.isDense());
tag.setBoolean("isDenseUltra", mec.isDenseUltra());
}
} else if (te instanceof IInternalPoweredTile) {
IInternalPoweredTile ipte = (IInternalPoweredTile) te;
@@ -1130,7 +1130,6 @@ enderio.darksteel.upgrade.apiaristArmor.leggings.name=Apiarist's Pants
enderio.darksteel.upgrade.apiaristArmor.leggings.tooltip.detailed.line1=Protection against bees
enderio.darksteel.upgrade.apiaristArmor.boots.name=Apiarist's Shoes
enderio.darksteel.upgrade.apiaristArmor.boots.tooltip.detailed.line1=Protection against bees
enderio.darksteel.upgrade.trackmansGoggles.name=Brýle strojvůdce
enderio.darksteel.upgrade.jump.enabled=Jump Enabled
enderio.darksteel.upgrade.jump.disabled=Jump Disabled
enderio.darksteel.upgrade.solar_one.name=Solar I
@@ -1220,7 +1219,6 @@ enderio.category.darksteelarmor=Dark Steel Armor
enderio.category.tools=EnderIO - Tools
enderio.keybind.glidertoggle=Glider Toggle
enderio.keybind.gogglesofrevealing=Goggles of Revealing
enderio.keybind.trackmansgoggles=Brýle strojvůdce
enderio.keybind.nightvision=Night Vision
enderio.keybind.soundlocator=Sound Locator
enderio.keybind.speed=Speed
@@ -130,6 +130,7 @@ enderio.itemGasConduit.tooltip.detailed.line1=Transportiert Mekanism-kompatible
enderio.itemMEConduit.name=ME-Leitung
enderio.itemMEConduitDense.name=Dichte ME-Leitung
enderio.itemMEConduitDenseUltra.name=Extrem Dichte ME-Leitungen
enderio.itemMEConduit.channelsUsed={0,number} von {1,number} Kanälen
enderio.itemOCConduit.name=Netzwerkleitung (OC)
@@ -906,8 +907,6 @@ enderio.darksteel.upgrade.apiaristArmor.leggings.tooltip.detailed.line1=Schutz g
enderio.darksteel.upgrade.apiaristArmor.boots.name=Imkerschuhe
enderio.darksteel.upgrade.apiaristArmor.boots.tooltip.detailed.line1=Schutz gegen Beinen
enderio.darksteel.upgrade.trackmansGoggles.name=Schienenwartbrille
item.itemGliderWing.name=Gleiterflügel
item.itemGliderWings.name=Gleiterflügelpaar
item.itemGliderWings.tooltip.detailed.line1=Upgrade für den
@@ -1243,7 +1242,6 @@ enderio.category.darksteelarmor=Dunkelstahlrüstung
enderio.category.tools=EnderIO - Werkzeuge
enderio.keybind.glidertoggle=Gleiterschaltung
enderio.keybind.gogglesofrevealing=Brille der Enthüllung
enderio.keybind.trackmansgoggles=Schienenwartbrille
enderio.keybind.nightvision=Nachtsicht
enderio.keybind.soundlocator=Schalldetektor
enderio.keybind.speed=Schnelligkeit
@@ -19,7 +19,6 @@ item.enderio.itemEnderface.name=Enderface
#Conduits
enderio.blockConduitBundle=Conduit Bundle
tile.blockConduitFacade.name=Conduit Facade
enderio.blockConduitFacade=Conduit Facade
item.enderio.itemConduitFacade.name=Conduit Facade
item.enderio.itemConduitFacade.hardened.name=Hardened Conduit Facade
@@ -30,12 +29,10 @@ item.enderio.itemConduitFacade.tooltip.detailed.line3=Hidden when a wrench or co
item.enderio.itemConduitFacade.tooltip.detailed.line4=is equipped
item.enderio.itemConduitFacade.hardened.tooltip=Hardened: Resists breaking and explosions
item.itemPowerConduit.name=Energy Conduit
enderio.itemPowerConduit.name=Energy Conduit
enderio.itemPowerConduitEnhanced.name=Enhanced Energy Conduit
enderio.itemPowerConduitEnder.name=Ender Energy Conduit
item.itemPowerConduitEndergy.name=Energy Conduit
enderio.itemPowerConduitEndergyCrude.name=Clay Compound Energy Conduit
enderio.itemPowerConduitEndergyIron.name=Iron Energy Conduit
enderio.itemPowerConduitEndergyAluminum.name=Aluminum Energy Conduit
@@ -49,12 +46,10 @@ enderio.itemPowerConduitEndergyCrystallinePinkSlime.name=Crystalline Pink Slime
enderio.itemPowerConduitEndergyMelodic.name=Melodic Energy Conduit
enderio.itemPowerConduitEndergyStellar.name=Stellar Energy Conduit
item.itemRedstoneConduit.name=Redstone Conduit
enderio.itemRedstoneConduit.name=Redstone Conduit
enderio.itemRedstoneConduitSwitch.name=Conduit Switch
enderio.itemRedstoneConduitInsulated.name=Insulated Redstone Conduit
item.itemLiquidConduit.name=Fluid Conduit
enderio.itemLiquidConduit.name=Fluid Conduit
enderio.itemLiquidConduitAdvanced.name=Pressurized Fluid Conduit
enderio.itemLiquidConduitEnder.name=Ender Fluid Conduit
@@ -76,13 +71,10 @@ enderio.itemLiquidConduitEnder.tooltip.detailed.line1=Instant fluid teleportatio
enderio.itemLiquidConduitEnder.tooltip.detailed.line2=allows multiple fluids to be
enderio.itemLiquidConduitEnder.tooltip.detailed.line3=transported on the same line
item.itemItemConduit.name=Item Conduit
enderio.itemItemConduit.name=Item Conduit
item.itemBasicFilterUpgrade.name=Item Filter
enderio.filterUpgradeBasic.name=Basic Item Filter
enderio.filterUpgradeAdvanced.name=Advanced Item Filter
item.itemBigFilterUpgrade.name=Big Item Filter
enderio.filterUpgradeBig.name=Big Item Filter
enderio.filterUpgradeBigAdvanced.name=Big Advanced Item Filter
enderio.itemConduitFilterUpgrade=Upgrade for item conduits
@@ -127,7 +119,6 @@ item.itemExtractSpeedDowngrade.tooltip.basic.line1=Downgrade for item conduits
item.itemExtractSpeedDowngrade.tooltip.detailed.line1=Reduces speed to 1
item.itemExtractSpeedDowngrade.tooltip.detailed.line2=item per extraction
item.itemFunctionUpgrade.name=Remote Awareness Upgrade
item.itemInventoryPanelUpgrade.name=Remote Awareness Upgrade
item.itemInventoryPanelUpgrade.tooltip.basic.line1=Inventory Panel Remote Awareness
item.itemInventoryPanelUpgrade.tooltip.detailed.line1=Function upgrade for item conduits
@@ -143,12 +134,11 @@ enderio.itemGasConduit.tooltip.maxExtract=Max Extract:
enderio.itemGasConduit.tooltip.maxIo=Max IO:
enderio.itemGasConduit.tooltip.detailed.line1=Transfers Mekanism-compatible gases
item.itemMEConduit.name=ME Conduit
enderio.itemMEConduit.name=ME Conduit
enderio.itemMEConduitDense.name=Dense ME Conduit
enderio.itemMEConduitDenseUltra.name=Ultra Dense ME Conduit
enderio.itemMEConduit.channelsUsed={0,number} of {1,number} Channels
item.itemOCConduit.name=Network Conduit (OC)
enderio.itemOCConduit.name=Network Conduit (OC)
#Entity
@@ -156,7 +146,6 @@ entity.witherSkeleton.name=Wither Skeleton
#Materials
enderio.itemMaterial.name=Materials
item.itemMaterial.name=Materials
enderio.silicon.name=Silicon
enderio.conduitBinder.name=Conduit Binder
enderio.binderComposite.name=Binder Composite
@@ -233,7 +222,6 @@ enderio.gas.gasTick=Gas/t
#Materials
enderio.itemMachinePart.name=Machine Parts
item.itemMachinePart.name=Machine Parts
enderio.machineChassi.name=Machine Chassis
enderio.basicGear.name=Basic Gear
enderio.soulMachineChassi.name=Soul Machine Chassis
@@ -244,7 +232,6 @@ enderio.enderCrystal.name=Ender Crystal
enderio.attractorCrystal.name=Enticing Crystal
enderio.weatherCrystal.name=Weather Crystal
item.itemGrindingBall.name=Grinding Ball
enderio.darkGrindingBall.name=Dark Steel Ball
enderio.electricalGrindingBall.name=Electrical Steel Ball
enderio.energeticGrindingBall.name=Energetic Alloy Ball
@@ -278,7 +265,6 @@ enderio.itemPowderIngot=Powders & Ingots
#Alloys
enderio.itemAlloy.name=Alloy
item.itemAlloy.name=Alloy
enderio.electricalSteel.name=Electrical Steel
enderio.energeticAlloy.name=Energetic Alloy
enderio.phasedGold.name=Vibrant Alloy
@@ -291,7 +277,6 @@ enderio.soularium.name=Soularium
enderio.endSteel.name=End Steel
enderio.endSteelNugget.name=End Steel Nugget
item.itemAlloyEndergy.name=Alloy
enderio.crudeSteel.name=Clay Compound
enderio.crystallineAlloy.name=Crystalline Alloy
enderio.melodicAlloy.name=Melodic Alloy
@@ -300,7 +285,6 @@ enderio.crystallinePinkSlime.name=Crystalline Pink Slime
enderio.energeticSilver.name=Energetic Silver
enderio.vividAlloy.name=Vivid Alloy
item.itemGrindingBallEndergy.name=Grinding Ball
enderio.crudeSteelGrindingBall.name=Clay Compound Grinding Ball
enderio.crystallineAlloyGrindingBall.name=Crystalline Alloy Grinding Ball
enderio.melodicAlloyGrindingBall.name=Melodic Alloy Grinding Ball
@@ -339,7 +323,6 @@ tile.enderio.darkSteel.name=Dark Steel Block
tile.enderio.soularium.name=Soularium Block
tile.enderio.endSteel.name=End Steel Block
tile.blockIngotStorageEndergy.name=Alloy Block
tile.enderio.crudeSteel.name=Clay Compound Block
tile.enderio.crystallineAlloy.name=Crystalline Alloy Block
tile.enderio.melodicAlloy.name=Melodic Alloy Block
@@ -349,7 +332,6 @@ tile.enderio.energeticSilver.name=Energetic Silver Block
tile.enderio.vividAlloy.name=Vivid Alloy Block
#Powder / Ingot
item.itemPowderIngot.name=Powder
enderio.powderCoal.name=Coal Powder
enderio.powderIron.name=Iron Powder
enderio.powderGold.name=Gold Powder
@@ -361,7 +343,6 @@ enderio.ingotEnderiumBase.name=Enderium Base
#Capacitors
enderio.itemBasicCapacitor.name=Capacitor
item.itemBasicCapacitor.name=Capacitor
enderio.basicCapacitor.name=Basic Capacitor
enderio.activatedCapacitor.name=Double-Layer Capacitor
enderio.enderCapacitor.name=Octadic Capacitor
@@ -410,7 +391,6 @@ enderio.maxSolorProduction=Max Output
enderio.tooltip.efficiency=Efficiency
enderio.tooltip.sunlightBlocked=Sky Blocked!
tile.blockElectricLight.name=Powered Light
item.itemElectricLight.name=Powered Light
item.itemElectricLight.tooltip.detailed.line1=Lights a large area when supplied with
item.itemElectricLight.tooltip.detailed.line2=power and a redstone signal.
@@ -428,8 +408,6 @@ item.itemLightInverted.name=Light (Inverted)
item.itemLightInverted.tooltip.detailed.line1=Emits light, disable with
item.itemLightInverted.tooltip.detailed.line2=a redstone signal.
tile.blockLightNode.name=Light Node
item.itemWirelessLight.name=Wireless Powered Light
item.itemWirelessLight.tooltip.detailed.line1=Lights a large area when supplied with
item.itemWirelessLight.tooltip.detailed.line2=power and a redstone signal.
@@ -447,7 +425,6 @@ tile.blockCapacitorBank.tooltip.detailed.line1=Convert to new block by placing
tile.blockCapacitorBank.tooltip.detailed.line2=in a crafting grid
tile.blockCapacitorBank.tooltipPrefix=Contains
tile.blockCapBank.name=Capacitor Bank
tile.blockCapBank.creative.name=Creative Capacitor Bank
tile.blockCapBank.simple.name=Basic Capacitor Bank
tile.blockCapBank.activated.name=Capacitor Bank
@@ -645,7 +622,6 @@ tile.blockWeatherObelisk.tooltip.detailed.line1=Changes the current weather
tile.blockWeatherObelisk.tooltip.detailed.line2=Requires a lot of power and
tile.blockWeatherObelisk.tooltip.detailed.line3=a catalyst item
tile.blockBuffer.name=Buffer
tile.blockBuffer.item.name=Item Buffer
tile.blockBuffer.power.name=Power Buffer
tile.blockBuffer.omni.name=Omni Buffer
@@ -720,7 +696,6 @@ tile.blockDarkSteelPressurePlate.silent.tooltip.detailed.line2=Can be painted in
tile.blockDarkSteelPressurePlate.silent.tooltip.detailed.line3=invisible when painted with Quite
tile.blockDarkSteelPressurePlate.silent.tooltip.detailed.line4=Clear Glass
tile.blockDarkSteelAnvil.name=Dark Steel Anvil
tile.blockDarkSteelAnvil.intact.name=Dark Steel Anvil
tile.blockDarkSteelAnvil.slightlyDamaged.name=Slightly Damaged Dark Steel Anvil
tile.blockDarkSteelAnvil.veryDamaged.name=Very Damaged Dark Steel Anvil
@@ -784,7 +759,6 @@ tile.blockPaintedFenceGate.name=Painted Gate
tile.blockPaintedWall.name=Painted Wall
tile.blockPaintedStair.name=Painted Stairs
tile.blockPaintedSlab.name=Painted Slab
tile.blockPaintedSlabDouble.name=Painted Slab
tile.blockPaintedDoubleSlab.name=Painted Slab
tile.blockPaintedGlowstone.name=Painted Glowstone
tile.blockPaintedCarpet.name=Painted Carpet
@@ -836,7 +810,6 @@ item.itemXpTransfer.tooltip.detailed.line2=liquid XP to gain levels
item.itemXpTransfer.tooltip.detailed.line3=Shift-R-Click to transfer levels to
item.itemXpTransfer.tooltip.detailed.line4=the tank
item.itemFrankenSkull.name=Zombie Electrode
skullZombieElectrode.name=Zombie Electrode
skullZombieController.name=Z-Logic Controller
skullZombieFrankenstien.name=Frank'N'Zombie
@@ -974,9 +947,6 @@ enderio.darksteel.upgrade.gogglesOfRevealing.tooltip.detailed.line1=Vis Discount
enderio.darksteel.upgrade.gogglesOfRevealing.enabled=Magic is being revealed
enderio.darksteel.upgrade.gogglesOfRevealing.disabled=Magic is hidden from plain sight
enderio.darksteel.upgrade.trackmansGoggles.name=Trackman's Goggles
enderio.darksteel.upgrade.trackmansGoggles.tooltip.detailed.line1=Show infrastructure and anchor auras
enderio.darksteel.upgrade.naturalistEye.name=Naturalist's Eye
enderio.darksteel.upgrade.naturalistEye.tooltip.detailed.line1=Shows pollinated tree leaves
@@ -1415,7 +1385,6 @@ enderio.category.darksteelarmor=Dark Steel Armor
enderio.category.tools=EnderIO - Tools
enderio.keybind.glidertoggle=Glider Toggle
enderio.keybind.gogglesofrevealing=Goggles of Revealing
enderio.keybind.trackmansgoggles=Trackman's Goggles
enderio.keybind.nightvision=Night Vision
enderio.keybind.soundlocator=Sound Locator
enderio.keybind.speed=Speed
@@ -660,8 +660,6 @@ enderio.darksteel.upgrade.apiaristArmor.leggings.tooltip.detailed.line1=Protecci
enderio.darksteel.upgrade.apiaristArmor.boots.name=Zapatos del Apicultor
enderio.darksteel.upgrade.apiaristArmor.boots.tooltip.detailed.line1=Protección contra abejas.
enderio.darksteel.upgrade.trackmansGoggles.name=Gafas de Ferroviario
item.itemGliderWing.name=Ala de Planeador
item.itemGliderWings.name=Alas de Planeador
item.itemGliderWings.tooltip.detailed.line1=Mejora para la pechera de Acero Oscuro.
@@ -981,7 +979,6 @@ enderio.category.darksteelarmor=Armadura de Acero Oscuro
enderio.category.tools=EnderIO - Herramientas
enderio.keybind.glidertoggle=Activar/Desactivar Planeador
enderio.keybind.gogglesofrevealing=Gafas de Revelación
enderio.keybind.trackmansgoggles=Gafas de Ferroviario
enderio.keybind.nightvision=Visión Nocturna
enderio.keybind.soundlocator=Localizador de Sonidos
enderio.keybind.speed=Velocidad
@@ -662,8 +662,6 @@ enderio.darksteel.upgrade.apiaristArmor.leggings.tooltip.detailed.line1=Protecci
enderio.darksteel.upgrade.apiaristArmor.boots.name=Zapatos del Apicultor
enderio.darksteel.upgrade.apiaristArmor.boots.tooltip.detailed.line1=Protección contra abejas.
enderio.darksteel.upgrade.trackmansGoggles.name=Gafas de Ferroviario
item.itemGliderWing.name=Ala de Planeador
item.itemGliderWings.name=Alas de Planeador
item.itemGliderWings.tooltip.detailed.line1=Mejora para la pechera de Acero Oscuro.
@@ -983,7 +981,6 @@ enderio.category.darksteelarmor=Armadura de Acero Oscuro
enderio.category.tools=EnderIO - Herramientas
enderio.keybind.glidertoggle=Activar/Desactivar Planeador
enderio.keybind.gogglesofrevealing=Gafas de Revelación
enderio.keybind.trackmansgoggles=Gafas de Ferroviario
enderio.keybind.nightvision=Visión Nocturna
enderio.keybind.soundlocator=Localizador de Sonidos
enderio.keybind.speed=Velocidad
@@ -660,8 +660,6 @@ enderio.darksteel.upgrade.apiaristArmor.leggings.tooltip.detailed.line1=Protecci
enderio.darksteel.upgrade.apiaristArmor.boots.name=Zapatos del Apicultor
enderio.darksteel.upgrade.apiaristArmor.boots.tooltip.detailed.line1=Protección contra abejas.
enderio.darksteel.upgrade.trackmansGoggles.name=Gafas de Ferroviario
item.itemGliderWing.name=Ala de Planeador
item.itemGliderWings.name=Alas de Planeador
item.itemGliderWings.tooltip.detailed.line1=Mejora para la pechera de Acero Oscuro.
@@ -981,7 +979,6 @@ enderio.category.darksteelarmor=Armadura de Acero Oscuro
enderio.category.tools=EnderIO - Herramientas
enderio.keybind.glidertoggle=Activar/Desactivar Planeador
enderio.keybind.gogglesofrevealing=Gafas de Revelación
enderio.keybind.trackmansgoggles=Gafas de Ferroviario
enderio.keybind.nightvision=Visión Nocturna
enderio.keybind.soundlocator=Localizador de Sonidos
enderio.keybind.speed=Velocidad
@@ -660,8 +660,6 @@ enderio.darksteel.upgrade.apiaristArmor.leggings.tooltip.detailed.line1=Protecci
enderio.darksteel.upgrade.apiaristArmor.boots.name=Zapatos del Apicultor
enderio.darksteel.upgrade.apiaristArmor.boots.tooltip.detailed.line1=Protección contra abejas.
enderio.darksteel.upgrade.trackmansGoggles.name=Gafas de Ferroviario
item.itemGliderWing.name=Ala de Planeador
item.itemGliderWings.name=Alas de Planeador
item.itemGliderWings.tooltip.detailed.line1=Mejora para la pechera de Acero Oscuro.
@@ -981,7 +979,6 @@ enderio.category.darksteelarmor=Armadura de Acero Oscuro
enderio.category.tools=EnderIO - Herramientas
enderio.keybind.glidertoggle=Activar/Desactivar Planeador
enderio.keybind.gogglesofrevealing=Gafas de Revelación
enderio.keybind.trackmansgoggles=Gafas de Ferroviario
enderio.keybind.nightvision=Visión Nocturna
enderio.keybind.soundlocator=Localizador de Sonidos
enderio.keybind.speed=Velocidad
@@ -979,8 +979,6 @@ enderio.category.darksteelarmor=Armadura de Acero Oscuro
enderio.category.tools=EnderIO - Herramientas
enderio.keybind.glidertoggle=Activar/Desactivar Planeador
enderio.keybind.gogglesofrevealing=Gafas de Revelación
enderio.keybind.trackmansgoggles=Gafas de Ferroviario
enderio.darksteel.upgrade.trackmansGoggles.name=Gafas de Ferroviario
enderio.keybind.nightvision=Visión Nocturna
enderio.keybind.soundlocator=Localizador de Sonidos
enderio.keybind.speed=Velocidad
@@ -683,8 +683,6 @@ enderio.darksteel.upgrade.apiaristArmor.leggings.tooltip.detailed.line1=Protecti
enderio.darksteel.upgrade.apiaristArmor.boots.name=Chaussures d'Apiculteur
enderio.darksteel.upgrade.apiaristArmor.boots.tooltip.detailed.line1=Protection contre les abeilles
enderio.darksteel.upgrade.trackmansGoggles.name=Lunettes de l'agent de voie
item.itemGliderWing.name=Aile de Planeur
item.itemGliderWings.name=Ailes de Planeur
item.itemGliderWings.tooltip.detailed.line1=Amélioration pour
@@ -998,7 +996,6 @@ enderio.category.darksteelarmor=Armure d'Acier Sombre
enderio.category.tools=EnderIO - Outils
enderio.keybind.glidertoggle=Mode Planeur
enderio.keybind.gogglesofrevealing=Lunettes de Révélation
enderio.keybind.trackmansgoggles=Lunettes de l'agent de voie
enderio.keybind.nightvision=Vision Nocturne
enderio.keybind.soundlocator=Détecteur de Sons
enderio.keybind.speed=Vitesse
@@ -949,8 +949,6 @@ enderio.darksteel.upgrade.apiaristArmor.leggings.tooltip.detailed.line1=Защи
enderio.darksteel.upgrade.apiaristArmor.boots.name=Обувь пчеловода
enderio.darksteel.upgrade.apiaristArmor.boots.tooltip.detailed.line1=Защита от пчёл
enderio.darksteel.upgrade.trackmansGoggles.name=Очки обходчика путей
item.itemGliderWing.name=Крыло планёра
item.itemGliderWings.name=Крылья планёра
item.itemGliderWings.tooltip.detailed.line1=Улучшается кирасой
@@ -1294,7 +1292,6 @@ enderio.category.darksteelarmor=Броня из тёмной стали
enderio.category.tools=EnderIO - Инструменты
enderio.keybind.glidertoggle=Переключить планер
enderio.keybind.gogglesofrevealing=Очки откровения
enderio.keybind.trackmansgoggles=Очки обходчика путей
enderio.keybind.nightvision=Ночное зрение
enderio.keybind.soundlocator=Звуколокатор
enderio.keybind.speed=Скорость
@@ -949,8 +949,6 @@ enderio.darksteel.upgrade.apiaristArmor.leggings.tooltip.detailed.line1=提供
enderio.darksteel.upgrade.apiaristArmor.boots.name=养蜂员之鞋
enderio.darksteel.upgrade.apiaristArmor.boots.tooltip.detailed.line1=提供保护以减少蜜蜂的伤害
enderio.darksteel.upgrade.trackmansGoggles.name=铁路工护目镜
item.itemGliderWing.name=滑翔翼
item.itemGliderWings.name=滑翔翼
item.itemGliderWings.tooltip.detailed.line1=用于升级
@@ -1374,7 +1372,6 @@ enderio.category.darksteelarmor=玄铁护甲
enderio.category.tools=EnderIO - 工具
enderio.keybind.glidertoggle=滑翔开关
enderio.keybind.gogglesofrevealing=揭示护目镜
enderio.keybind.trackmansgoggles=铁路工护目镜
enderio.keybind.nightvision=夜视
enderio.keybind.soundlocator=声波定位
enderio.keybind.speed=速度
Binary file not shown.

After

Width:  |  Height:  |  Size: 731 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 298 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB