diff options
Diffstat (limited to 'src')
21 files changed, 123 insertions, 89 deletions
diff --git a/src/Java/gtPlusPlus/core/config/ConfigHandler.java b/src/Java/gtPlusPlus/core/config/ConfigHandler.java index 641a4c0956..3d6a60dc79 100644 --- a/src/Java/gtPlusPlus/core/config/ConfigHandler.java +++ b/src/Java/gtPlusPlus/core/config/ConfigHandler.java @@ -25,6 +25,8 @@ public class ConfigHandler { "Enables all sorts of debug logging. (Don't use unless told to, breaks other things.)"); disableEnderIOIntegration = config.getBoolean("disableEnderIO", "debug", false, "Disables EnderIO Integration."); + disableEnderIOIngotTooltips = config.getBoolean("disableEnderIOIngotTooltips", "debug", false, + "Disables EnderIO Ingot Tooltips. These apparently may cause issues for a very small number of users."); MACHINE_INFO = config.getBoolean("enableMachineInfoLogging", "debug", false, "Makes many machines display lots of debug logging."); showHiddenNEIItems = config.getBoolean("showHiddenNEIItems", "debug", false, diff --git a/src/Java/gtPlusPlus/core/lib/CORE.java b/src/Java/gtPlusPlus/core/lib/CORE.java index 1b5a63a475..70feec195c 100644 --- a/src/Java/gtPlusPlus/core/lib/CORE.java +++ b/src/Java/gtPlusPlus/core/lib/CORE.java @@ -145,6 +145,7 @@ public class CORE { //Debug public static boolean disableEnderIOIntegration = false; + public static boolean disableEnderIOIngotTooltips = false; public static boolean MACHINE_INFO = true; public static boolean showHiddenNEIItems = false; diff --git a/src/Java/gtPlusPlus/core/world/darkworld/gen/gt/WorldGen_GT_Base.java b/src/Java/gtPlusPlus/core/world/darkworld/gen/gt/WorldGen_GT_Base.java index 36efed40ef..6be899e5de 100644 --- a/src/Java/gtPlusPlus/core/world/darkworld/gen/gt/WorldGen_GT_Base.java +++ b/src/Java/gtPlusPlus/core/world/darkworld/gen/gt/WorldGen_GT_Base.java @@ -54,10 +54,10 @@ public class WorldGen_GT_Base implements IWorldGenerator { // put into hashtable when there will be no ores in a vein. public static WorldGen_GT_Ore_Layer noOresInVein = new WorldGen_GT_Ore_Layer("vein0", 0, 255, 0, 0, 0, ELEMENT.getInstance().ALUMINIUM, ELEMENT.getInstance().ALUMINIUM, ELEMENT.getInstance().ALUMINIUM, ELEMENT.getInstance().ALUMINIUM); - + public static Hashtable<Long, WorldGen_GT_Ore_Layer> validOreveins = new Hashtable<Long, WorldGen_GT_Ore_Layer>( 1024); - + public boolean mIsGenerating = false; public static final Object listLock = new Object(); // private static boolean gcAsteroids = true; @@ -125,8 +125,8 @@ public class WorldGen_GT_Base implements IWorldGenerator { Logger.WORLD("Setting Generation to true."); int mList_sS = WorldGen_GT_Base.mList.size(); mList_sS = Math.min(mList_sS, 3); // Run a maximum of 3 chunks at a - // time through worldgen. Extra - // chunks get done later. + // time through worldgen. Extra + // chunks get done later. for (int i = 0; i < mList_sS; i++) { WorldGenContainer toRun = (WorldGenContainer) WorldGen_GT_Base.mList.get(0); if (debugWorldGen) @@ -210,27 +210,27 @@ public class WorldGen_GT_Base implements IWorldGenerator { // for dimension. long oreveinSeed = (this.mWorld.getSeed() << 16) ^ ((this.mWorld.provider.dimensionId & 0xffL) << 56 | ((oreseedX & 0x000000000fffffffL) << 28) | (oreseedZ & 0x000000000fffffffL)); // Use - // an - // RNG - // that - // is - // identical - // every - // time - // it - // is - // called - // for - // this - // oreseed. + // an + // RNG + // that + // is + // identical + // every + // time + // it + // is + // called + // for + // this + // oreseed. XSTR oreveinRNG = new XSTR(oreveinSeed); int oreveinPercentageRoll = oreveinRNG.nextInt(100); // Roll the - // dice, see - // if we get - // an - // orevein - // here at - // all + // dice, see + // if we get + // an + // orevein + // here at + // all int noOrePlacedCount = 0; String tDimensionName = ""; if (debugWorldGen) { @@ -246,8 +246,8 @@ public class WorldGen_GT_Base implements IWorldGenerator { Logger.INFO("[World Generation Debug] !validOreveins.containsKey(oreveinSeed) | oreveinSeed: "+oreveinSeed); // Search for a valid orevein for this dimension if (!validOreveins.containsKey(oreveinSeed)) { - - + + Logger.INFO("[World Generation Debug] oreveinPercentageRoll < oreveinPercentage? "+((oreveinPercentageRoll < oreveinPercentage))); Logger.INFO("[World Generation Debug] WorldGen_GT_Ore_Layer.sWeight > 0? "+(WorldGen_GT_Ore_Layer.sWeight > 0)); Logger.INFO("[World Generation Debug] WorldGen_GT_Ore_Layer.sList.size() > 0? "+(WorldGen_GT_Ore_Layer.sList.size() > 0)); @@ -302,6 +302,27 @@ public class WorldGen_GT_Base implements IWorldGenerator { // Orevein didn't reach this chunk, // can't add it yet to the hash Logger.INFO("[World Generation Debug] NO_OVERLAP"); + if (debugWorldGen) GT_Log.out.println( + " Added far oreveinSeed=" + oreveinSeed + " " + + ( tWorldGen).mWorldGenName + + " tries at oremix=" + i + + " placementAttempts=" + placementAttempts + + " dimensionName=" + tDimensionName + ); + validOreveins.put(oreveinSeed, tWorldGen); + oreveinFound = true; + break; + case WorldGen_GT_Ore_Layer.NO_OVERLAP_AIR_BLOCK: + if (debugWorldGen) GT_Log.out.println( + " No overlap and air block in test spot=" + oreveinSeed + " " + + ( tWorldGen).mWorldGenName + + " tries at oremix=" + i + + " placementAttempts=" + placementAttempts + + " dimensionName=" + tDimensionName + ); + // SHould do retry in this case until out of chances + Logger.INFO("[World Generation Debug] NO_OVERLAP_AIR_BLOCK"); + placementAttempts++; break; } break; // Try the next orevein @@ -341,18 +362,18 @@ public class WorldGen_GT_Base implements IWorldGenerator { + validOreveins.size() + " "); WorldGen_GT_Ore_Layer tWorldGen = validOreveins.get(oreveinSeed); oreveinRNG.setSeed(oreveinSeed ^ (Block.getIdFromBlock(tWorldGen.mPrimaryMeta))); // Reset - // RNG - // to - // only - // be - // based - // on - // oreseed - // X/Z - // and - // type - // of - // vein + // RNG + // to + // only + // be + // based + // on + // oreseed + // X/Z + // and + // type + // of + // vein int placementResult = tWorldGen.executeWorldgenChunkified(this.mWorld, oreveinRNG, this.mBiome, this.mDimensionType, this.mX * 16, this.mZ * 16, oreseedX * 16, oreseedZ * 16, this.mChunkGenerator, this.mChunkProvider); @@ -380,7 +401,7 @@ public class WorldGen_GT_Base implements IWorldGenerator { // Underdark for performance if (this.mWorld.provider.getDimensionName().equals("Underdark")) { oreveinMaxSize = 24; // Leave Deep Dark/Underdark max oregen at - // 32, instead of 64 + // 32, instead of 64 } else { oreveinMaxSize = 48; @@ -388,9 +409,9 @@ public class WorldGen_GT_Base implements IWorldGenerator { int wXbox = this.mX - (oreveinMaxSize / 16); int eXbox = this.mX + (oreveinMaxSize / 16 + 1); // Need to add 1 - // since it is - // compared - // using a < + // since it is + // compared + // using a < int nZbox = this.mZ - (oreveinMaxSize / 16); int sZbox = this.mZ + (oreveinMaxSize / 16 + 1); diff --git a/src/Java/gtPlusPlus/core/world/darkworld/gen/gt/WorldGen_GT_Ore_Layer.java b/src/Java/gtPlusPlus/core/world/darkworld/gen/gt/WorldGen_GT_Ore_Layer.java index 1252d4bc89..3cf0657e35 100644 --- a/src/Java/gtPlusPlus/core/world/darkworld/gen/gt/WorldGen_GT_Ore_Layer.java +++ b/src/Java/gtPlusPlus/core/world/darkworld/gen/gt/WorldGen_GT_Ore_Layer.java @@ -9,6 +9,7 @@ import java.util.HashMap; import java.util.Map; import java.util.Random; +import gregtech.api.GregTech_API; import gregtech.api.enums.Materials; import gregtech.api.util.GT_Log; import gregtech.common.blocks.GT_Block_Ores; @@ -54,7 +55,7 @@ extends WorldGen_GT { public static final int NO_ORE_IN_BOTTOM_LAYER=2; public static final int NO_OVERLAP=3; public static final int ORE_PLACED=4; - + public static final int NO_OVERLAP_AIR_BLOCK=5; //public final boolean mMoon; //public final boolean mMars; @@ -160,14 +161,21 @@ extends WorldGen_GT { int wX = Math.max( wXVein, aChunkX + 2); // Bias placement by 2 blocks to prevent worldgen cascade. int eX = Math.min( eXVein, aChunkX + 2 + 16); if (wX >= eX) { //No overlap between orevein and this chunk exists in X - /* - if (debugWorldGen) { - GT_Log.out.println( - "No X overlap" - ); - } - */ - return NO_OVERLAP; + Block tBlock = aWorld.getBlock(aChunkX + 8, tMinY, aChunkZ + 8); + if (tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, Blocks.stone) || + tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, Dimension_DarkWorld.blockSecondLayer) || + tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, Dimension_DarkWorld.blockMainFiller) || + tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, Dimension_DarkWorld.blockSecondaryFiller) || + tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, Blocks.netherrack) || + tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, Blocks.end_stone) || + tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, GregTech_API.sBlockGranites) || + tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, GregTech_API.sBlockStones) ) { + // Didn't reach, but could have placed. Save orevein for future use. + return NO_OVERLAP; + } else { + // Didn't reach, but couldn't place in test spot anywys, try for another orevein + return NO_OVERLAP_AIR_BLOCK; + } } // Determine North/Sound ends of orevein int nZVein = aSeedZ - aRandom.nextInt(mSize); @@ -176,17 +184,35 @@ extends WorldGen_GT { int nZ = Math.max(nZVein, aChunkZ + 2); // Bias placement by 2 blocks to prevent worldgen cascade. int sZ = Math.min(sZVein, aChunkZ + 2 + 16); if (nZ >= sZ) { //No overlap between orevein and this chunk exists in Z - /* - if (debugWorldGen) { - GT_Log.out.println( - "No Z overlap" - ); - } - */ - return NO_OVERLAP; + Block tBlock = aWorld.getBlock(aChunkX + 8, tMinY, aChunkZ + 8); + if (tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, Blocks.stone) || + tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, Blocks.netherrack) || + tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, Blocks.end_stone) || + tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, GregTech_API.sBlockGranites) || + tBlock.isReplaceableOreGen(aWorld, aChunkX+8, tMinY, aChunkZ + 8, GregTech_API.sBlockStones) ) { + // Didn't reach, but could have placed. Save orevein for future use. + return NO_OVERLAP; + } else { + // Didn't reach, but couldn't place in test spot anywys, try for another orevein + return NO_OVERLAP_AIR_BLOCK; + } + + } + + if (debugWorldGen) { + String tDimensionName = aWorld.provider.getDimensionName(); + GT_Log.out.print( + "Trying Orevein:" + this.mWorldGenName + + " Dimension=" + tDimensionName + + " mX="+aChunkX/16+ + " mZ="+aChunkZ/16+ + " oreseedX="+ aSeedX/16 + + " oreseedZ="+ aSeedZ/16 + + " cY="+tMinY + ); } // Adjust the density down the more chunks we are away from the oreseed. The 5 chunks surrounding the seed should always be max density due to truncation of Math.sqrt(). - int localDensity = (Math.max(1, this.mDensity / ((int)Math.sqrt(2 + Math.pow(aChunkX/16 - aSeedX/16, 2) + Math.pow(aChunkZ/16 - aSeedZ/16, 2))))/2); + int localDensity = (Math.max(1, this.mDensity / ((int)Math.sqrt(2 + Math.pow(aChunkX/16 - aSeedX/16, 2) + Math.pow(aChunkZ/16 - aSeedZ/16, 2))))); // To allow for early exit due to no ore placed in the bottom layer (probably because we are in the sky), unroll 1 pass through the loop // Now we do bottom-level-first oregen, and work our way upwards. @@ -313,17 +339,17 @@ extends WorldGen_GT { // Something (at least the bottom layer must have 1 block) must have been placed, return true return ORE_PLACED; } - + private String fString = "unset", ore1String = "unset", ore2String = "unset", ore3String = "unset", ore4String = "unset"; Map<Materials, String> gtOreMap = new HashMap<Materials, String>(); - + @SuppressWarnings("deprecation") public boolean setOreBlock(World aWorld, int aX, int aY, int aZ, Block aMetaData, boolean isSmallOre, boolean air) { if (!air) { aY = Math.min(aWorld.getActualHeight(), Math.max(aY, 1)); } - + //Set GT ORE if (aMetaData instanceof GT_Block_Ores){ if (ore1String.equals("unset")) { @@ -410,10 +436,13 @@ extends WorldGen_GT { tBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, Blocks.stone) || tBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, Blocks.sand) || tBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, Blocks.dirt) || + tBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, GregTech_API.sBlockGranites) || + tBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, GregTech_API.sBlockStones) || tBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, Dimension_DarkWorld.blockSecondLayer) || tBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, Dimension_DarkWorld.blockMainFiller) || tBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, Dimension_DarkWorld.blockSecondaryFiller) || tBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, Blocks.sandstone)) { + if (aWorld.setBlock(aX, aY, aZ, tOreBlock, 0, 3)){ Logger.WORLD("[World Generation Debug] Set "+tOreBlock.getLocalizedName()+" at X: "+aX+" | Y: "+aY+" | Z: "+aZ); return true; diff --git a/src/Java/gtPlusPlus/xmod/eio/handler/HandlerTooltip_EIO.java b/src/Java/gtPlusPlus/xmod/eio/handler/HandlerTooltip_EIO.java index 820592a300..915140df2c 100644 --- a/src/Java/gtPlusPlus/xmod/eio/handler/HandlerTooltip_EIO.java +++ b/src/Java/gtPlusPlus/xmod/eio/handler/HandlerTooltip_EIO.java @@ -1,13 +1,13 @@ package gtPlusPlus.xmod.eio.handler; +import static gtPlusPlus.core.lib.CORE.ConfigSwitches.disableEnderIOIngotTooltips; + import java.lang.reflect.Field; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import gregtech.api.enums.Materials; import gtPlusPlus.core.lib.LoadedMods; -import gtPlusPlus.core.util.Utils; import gtPlusPlus.core.util.item.ItemUtils; -import gtPlusPlus.core.util.reflect.ReflectionUtils; import gtPlusPlus.xmod.eio.material.MaterialEIO; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; @@ -28,7 +28,7 @@ public class HandlerTooltip_EIO { @SubscribeEvent public void onItemTooltip(ItemTooltipEvent event){ //Is EIO loaded? - if (LoadedMods.EnderIO){ + if (disableEnderIOIngotTooltips && LoadedMods.EnderIO){ //Is the EIO Ingot Item null? //If it is, reflect in. diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_PowerSubStationController.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_PowerSubStationController.java index e9638d29ed..b26201299b 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_PowerSubStationController.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_PowerSubStationController.java @@ -4,6 +4,7 @@ import java.util.ArrayList; import java.util.concurrent.TimeUnit; import gregtech.api.GregTech_API; +import gregtech.api.enums.GT_Values; import gregtech.api.enums.TAE; import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; @@ -448,16 +449,7 @@ public class GregtechMetaTileEntity_PowerSubStationController extends GregtechMe //Output Power if (this.mActualStoredEU > 0){ - addEnergyOutput(1); - addEnergyOutput(1); - addEnergyOutput(1); - addEnergyOutput(1); - addEnergyOutput(1); - addEnergyOutput(1); - addEnergyOutput(1); - addEnergyOutput(1); - addEnergyOutput(1); - addEnergyOutput(1); + addEnergyOutput(1); } } super.onPostTick(aBaseMetaTileEntity, aTick); @@ -503,24 +495,17 @@ public class GregtechMetaTileEntity_PowerSubStationController extends GregtechMe return true; long nStoredPower = this.getEUVar(); int hatchCount = 0; - //Utils.LOG_INFO("Charge Hatches: "+this.mChargeHatches.size()); for (GT_MetaTileEntity_Hatch_InputBattery tHatch : this.mChargeHatches) { - //Utils.LOG_INFO("Storing Power in a Charge Hatch"); if ((isValidMetaTileEntity(tHatch)) && (tHatch.getBaseMetaTileEntity().increaseStoredEnergyUnits(tHatch.maxEUInput(), false))) { this.setEUVar(this.getEUVar()-(tHatch.maxEUInput())); this.mTotalEnergyConsumed+=(tHatch.maxEUInput()); - //this.getBaseMetaTileEntity().decreaseStoredEnergyUnits(tHatch.getOutputTier()*2, false); - //Utils.LOG_INFO("Hatch "+hatchCount+" has "+tHatch.getEUVar()+"eu stored. Avg used is "+(this.mAverageEuUsage)); } hatchCount++; } for (GT_MetaTileEntity_Hatch tHatch : this.mAllDynamoHatches) { - //Utils.LOG_INFO("Storing Power in a Dynamo Hatch"); - if ((isValidMetaTileEntity(tHatch)) && (tHatch.getBaseMetaTileEntity().increaseStoredEnergyUnits(tHatch.getOutputTier()*2, false))) { - this.setEUVar(this.getEUVar()-(tHatch.getOutputTier()*2)); - this.mTotalEnergyConsumed+=(tHatch.getOutputTier()*2); - //this.getBaseMetaTileEntity().decreaseStoredEnergyUnits(tHatch.getOutputTier()*2, false); - //Utils.LOG_INFO("Hatch "+hatchCount+" has "+tHatch.getEUVar()+"eu stored. Avg used is "+(this.mAverageEuUsage)); + if ((isValidMetaTileEntity(tHatch)) && (tHatch.getBaseMetaTileEntity().increaseStoredEnergyUnits(GT_Values.V[(int) tHatch.getOutputTier()], false))) { + this.setEUVar(this.getEUVar()-(GT_Values.V[(int) tHatch.getOutputTier()])); + this.mTotalEnergyConsumed+=(GT_Values.V[(int) tHatch.getOutputTier()]); } hatchCount++; } @@ -542,8 +527,6 @@ public class GregtechMetaTileEntity_PowerSubStationController extends GregtechMe return 0; } - //mAverageEuUsage - @Override public String[] getInfoData() { @@ -555,8 +538,6 @@ public class GregtechMetaTileEntity_PowerSubStationController extends GregtechMe long minutes = TimeUnit.SECONDS.toMinutes(seconds) - (TimeUnit.SECONDS.toHours(seconds) * 60); long second = TimeUnit.SECONDS.toSeconds(seconds) - (TimeUnit.SECONDS.toMinutes(seconds) *60); - - return new String[]{ "Ergon Energy - District Sub-Station", "EU Required: "+this.mAverageEuUsage+"EU/t", diff --git a/src/resources/assets/miscutils/textures/blocks/metro/OVERLAY_GRATE_A.png b/src/resources/assets/miscutils/textures/blocks/metro/OVERLAY_GRATE_A.png Binary files differnew file mode 100644 index 0000000000..950a44d2b7 --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/OVERLAY_GRATE_A.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_METAL_PANEL_A.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_METAL_PANEL_A.png Binary files differnew file mode 100644 index 0000000000..8eeb0179d7 --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_METAL_PANEL_A.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_METAL_PANEL_B.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_METAL_PANEL_B.png Binary files differnew file mode 100644 index 0000000000..ffac706bbd --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_METAL_PANEL_B.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_ORGANIC_PANEL_A.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_ORGANIC_PANEL_A.png Binary files differnew file mode 100644 index 0000000000..c3de578f6f --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_ORGANIC_PANEL_A.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_BIRD_A.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_BIRD_A.png Binary files differnew file mode 100644 index 0000000000..48315c82cd --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_BIRD_A.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_BIRD_A_LEFT.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_BIRD_A_LEFT.png Binary files differnew file mode 100644 index 0000000000..f060f2ebd1 --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_BIRD_A_LEFT.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_BIRD_A_RIGHT.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_BIRD_A_RIGHT.png Binary files differnew file mode 100644 index 0000000000..dca52865e6 --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_BIRD_A_RIGHT.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_BLUE_A.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_BLUE_A.png Binary files differnew file mode 100644 index 0000000000..eb6c62491e --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_BLUE_A.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_GREEN_A.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_GREEN_A.png Binary files differnew file mode 100644 index 0000000000..f8d0b84c10 --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_GREEN_A.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_TABLET_A.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_TABLET_A.png Binary files differnew file mode 100644 index 0000000000..80436ba52e --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_TABLET_A.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_TABLET_B.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_TABLET_B.png Binary files differnew file mode 100644 index 0000000000..53df62051b --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_STONE_TABLET_B.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_TECH_A.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_TECH_A.png Binary files differnew file mode 100644 index 0000000000..5bc352238f --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_TECH_A.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_TECH_B.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_TECH_B.png Binary files differnew file mode 100644 index 0000000000..32b6735a0d --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_TECH_B.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_TECH_C.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_TECH_C.png Binary files differnew file mode 100644 index 0000000000..946559cf4e --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_TECH_C.png diff --git a/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_TECH_PANEL_A.png b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_TECH_PANEL_A.png Binary files differnew file mode 100644 index 0000000000..196600afdb --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/metro/TEXTURE_TECH_PANEL_A.png |