From 6f3d03b660acecfae6a0383ec2623a85ca01d0c8 Mon Sep 17 00:00:00 2001 From: SenseiKiwi Date: Fri, 7 Mar 2014 02:21:33 -0400 Subject: [PATCH 1/9] Changed Monolith Config Changed the Monolith teleportation setting so that it's always written to the config file instead of being secret. Steven agreed to this. o_o --- .../StevenDimDoors/mod_pocketDim/DDProperties.java | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/DDProperties.java b/src/main/java/StevenDimDoors/mod_pocketDim/DDProperties.java index a7aed13..0c61faf 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/DDProperties.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/DDProperties.java @@ -119,7 +119,6 @@ public class DDProperties //Names of categories private final String CATEGORY_CRAFTING = "crafting"; private final String CATEGORY_ENTITY = "entity"; - private final String CATEGORY_SPECIAL = "special"; private final String CATEGORY_DIMENSION = "dimension"; private final String CATEGORY_PROVIDER = "provider"; private final String CATEGORY_BIOME = "biome"; @@ -209,6 +208,9 @@ public class DDProperties WorldRiftGenerationEnabled = config.get(Configuration.CATEGORY_GENERAL, "Enable Rift World Generation", true, "Sets whether dungeon rifts generate in dimensions other than Limbo").getBoolean(true); + MonolithTeleportationEnabled = config.get(Configuration.CATEGORY_GENERAL, "Enable Monolith Teleportation", true, + "Sets whether Monoliths can teleport players").getBoolean(true); + MonolithSpawningChance = config.get(Configuration.CATEGORY_GENERAL, "Monolith Spawning Chance", 28, "Sets the chance (out of " + CustomLimboPopulator.MAX_MONOLITH_SPAWNING_CHANCE + ") that Monoliths will " + "spawn in a given Limbo chunk. The default chance is 28.").getInt(); @@ -237,13 +239,6 @@ public class DDProperties { throw new IllegalStateException("World generation blocks MUST have block IDs less than 256. Fix your configuration!"); } - - // SPECIAL CONFIG SETTINGS - // I'm adding this category because one of our users convinced me, personally, to please allow this. - // These settings are checked _after_ we save the config file, so Forge won't generate them automatically. - // Whoever wants to use them must intentionally write them into the config file. - - MonolithTeleportationEnabled = config.get(CATEGORY_SPECIAL, "Enable Monolith Teleportation", true).getBoolean(true); } public static DDProperties initialize(File configFile) -- 2.39.5 From 60c2cc4710823ed0e0bab0c78d4379d7931026c4 Mon Sep 17 00:00:00 2001 From: SenseiKiwi Date: Fri, 7 Mar 2014 15:15:22 -0400 Subject: [PATCH 2/9] Dropped Support for Structure Gen Flag Dropped support for Minecraft's structure generation flag because several other mods ignore it and supporting it can give the appearance that DD isn't working properly. We already have settings for disabling gateways in our config file. --- .../world/gateways/GatewayGenerator.java | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/world/gateways/GatewayGenerator.java b/src/main/java/StevenDimDoors/mod_pocketDim/world/gateways/GatewayGenerator.java index 0257be3..a95ee24 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/world/gateways/GatewayGenerator.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/world/gateways/GatewayGenerator.java @@ -113,10 +113,9 @@ public class GatewayGenerator implements IWorldGenerator while (random.nextInt(MAX_CLUSTER_GROWTH_CHANCE) < CLUSTER_GROWTH_CHANCE); } - //Check if generating structures is enabled and randomly decide whether to place a Rift Gateway here. - //This only happens if a rift cluster was NOT generated. - else if (random.nextInt(MAX_GATEWAY_GENERATION_CHANCE) < properties.GatewayGenerationChance && - isStructureGenerationAllowed()) + // Randomly decide whether to place a Rift Gateway here. + // This only happens if a rift cluster was NOT generated. + else if (random.nextInt(MAX_GATEWAY_GENERATION_CHANCE) < properties.GatewayGenerationChance) { valid = false; x = y = z = 0; //Stop the compiler from freaking out @@ -177,9 +176,4 @@ public class GatewayGenerator implements IWorldGenerator return (material != Material.leaves && material != Material.wood && material != Material.pumpkin && world.isBlockOpaqueCube(x, y, z) && world.getBlockId(x, y, z) != Block.bedrock.blockID); } - - private static boolean isStructureGenerationAllowed() - { - return DimensionManager.getWorld(OVERWORLD_DIMENSION_ID).getWorldInfo().isMapFeaturesEnabled(); - } } -- 2.39.5 From baa55555476a3c1692f91c3bbc86853fea47fca8 Mon Sep 17 00:00:00 2001 From: SenseiKiwi Date: Fri, 7 Mar 2014 17:41:12 -0400 Subject: [PATCH 3/9] Fixing Build Issue with DDCommandBase I copied two functions from CommandBase into DDCommandBase because their absence is breaking our builds on Technic and Dryware Jenkins. I have no idea why that's happening. My copy of MC's source code has those functions in CommandBase and my code compiles without a problem. --- .../mod_pocketDim/commands/DDCommandBase.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/commands/DDCommandBase.java b/src/main/java/StevenDimDoors/mod_pocketDim/commands/DDCommandBase.java index ea8061f..b62cc86 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/commands/DDCommandBase.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/commands/DDCommandBase.java @@ -1,6 +1,7 @@ package StevenDimDoors.mod_pocketDim.commands; import net.minecraft.command.CommandBase; +import net.minecraft.command.ICommand; import net.minecraft.command.ICommandSender; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.ChatMessageComponent; @@ -89,4 +90,19 @@ public abstract class DDCommandBase extends CommandBase cmp.addText(message); player.sendChatToPlayer(cmp); } + + /* + * The following two compareTo() methods are copied from CommandBase because it seems + * that Dryware and Technic Jenkins don't have those functions defined. How in the world? + * I have no idea. But it's breaking our builds. -_- ~SenseiKiwi + */ + public int compareTo(ICommand par1ICommand) + { + return this.getCommandName().compareTo(par1ICommand.getCommandName()); + } + + public int compareTo(Object par1Obj) + { + return this.compareTo((ICommand)par1Obj); + } } -- 2.39.5 From 89baf624ebcc2242491c0cf50cdeb19b7a033fca Mon Sep 17 00:00:00 2001 From: SenseiKiwi Date: Fri, 7 Mar 2014 18:35:20 -0400 Subject: [PATCH 4/9] Minor Improvements to Biomes Shifted the duplicate code from our biome classes into a single parent class. Also added checks so that Minecraft crashes if a biome ID conflict occurs. This is to put an end to the recent streak of posts on our MCF thread about people experiencing issues because DD and BoP have conflicts out of the box. --- .../mod_pocketDim/mod_pocketDim.java | 11 +++++- .../mod_pocketDim/world/BiomeGenLimbo.java | 34 ++----------------- .../mod_pocketDim/world/BiomeGenPocket.java | 22 ++---------- .../mod_pocketDim/world/DDBiomeGenBase.java | 34 +++++++++++++++++++ 4 files changed, 50 insertions(+), 51 deletions(-) create mode 100644 src/main/java/StevenDimDoors/mod_pocketDim/world/DDBiomeGenBase.java diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/mod_pocketDim.java b/src/main/java/StevenDimDoors/mod_pocketDim/mod_pocketDim.java index c44eaee..a4e6844 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/mod_pocketDim.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/mod_pocketDim.java @@ -61,6 +61,7 @@ import StevenDimDoors.mod_pocketDim.tileentities.TileEntityRift; import StevenDimDoors.mod_pocketDim.tileentities.TileEntityTransTrapdoor; import StevenDimDoors.mod_pocketDim.world.BiomeGenLimbo; import StevenDimDoors.mod_pocketDim.world.BiomeGenPocket; +import StevenDimDoors.mod_pocketDim.world.DDBiomeGenBase; import StevenDimDoors.mod_pocketDim.world.LimboProvider; import StevenDimDoors.mod_pocketDim.world.PocketProvider; import StevenDimDoors.mod_pocketDim.world.gateways.GatewayGenerator; @@ -207,6 +208,11 @@ public class mod_pocketDim itemStabilizedLinkSignature = (new ItemStabilizedRiftSignature(properties.StabilizedRiftSignatureItemID)).setUnlocalizedName("itemStabilizedRiftSig"); itemWorldThread = (new ItemWorldThread(properties.WorldThreadItemID)).setUnlocalizedName("itemWorldThread"); + // Check if other biomes have been registered with the same IDs we want. If so, crash Minecraft + // to notify the user instead of letting it pass and conflicting with Biomes o' Plenty. + DDBiomeGenBase.checkBiomes( new int[] { properties.LimboBiomeID, properties.PocketBiomeID } ); + + // Initialize our biomes mod_pocketDim.limboBiome = (new BiomeGenLimbo(properties.LimboBiomeID)); mod_pocketDim.pocketBiome = (new BiomeGenPocket(properties.PocketBiomeID)); @@ -282,7 +288,10 @@ public class mod_pocketDim @EventHandler public void onPostInitialization(FMLPostInitializationEvent event) - { + { + // Check in case other mods have registered over our biome IDs + DDBiomeGenBase.checkBiomes( new int[] { properties.LimboBiomeID, properties.PocketBiomeID } ); + ForgeChunkManager.setForcedChunkLoadingCallback(instance, new ChunkLoaderHelper()); } diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/world/BiomeGenLimbo.java b/src/main/java/StevenDimDoors/mod_pocketDim/world/BiomeGenLimbo.java index 243baf1..77eef46 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/world/BiomeGenLimbo.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/world/BiomeGenLimbo.java @@ -2,38 +2,10 @@ package StevenDimDoors.mod_pocketDim.world; import net.minecraft.world.biome.BiomeGenBase; -public class BiomeGenLimbo extends BiomeGenBase +public class BiomeGenLimbo extends DDBiomeGenBase { - public BiomeGenLimbo(int par1) + public BiomeGenLimbo(int biomeID) { - super(par1); - this.theBiomeDecorator.treesPerChunk = 0; - this.theBiomeDecorator.flowersPerChunk = 0; - this.theBiomeDecorator.grassPerChunk = 0; - this.setBiomeName("Limbo"); - this.setDisableRain(); - - this.spawnableMonsterList.clear(); - this.spawnableCreatureList.clear(); - this.spawnableWaterCreatureList.clear(); - this.spawnableCaveCreatureList.clear(); - // this.spawnableMonsterList.add(new SpawnListEntry(MobObelisk.class, 1, 1, 1)); - // this.spawnableMonsterList.add(new SpawnListEntry(MobObelisk.class, 300, 0, 0)); - - // this.spawnableCreatureList.add(new SpawnListEntry(MobObelisk.class, 1, 1, 1)); - // this.spawnableCreatureList.add(new SpawnListEntry(MobObelisk.class, 300, 0, 0)); - - // this.spawnableCaveCreatureList.add(new SpawnListEntry(MobObelisk.class, 1, 1, 1)); - // this.spawnableCaveCreatureList.add(new SpawnListEntry(MobObelisk.class, 300, 0, 0)); - - - - - } - - @Override - public float getSpawningChance() - { - return 0.00001F; + super(biomeID, "Limbo"); } } diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/world/BiomeGenPocket.java b/src/main/java/StevenDimDoors/mod_pocketDim/world/BiomeGenPocket.java index e9dbdb7..8d09b7b 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/world/BiomeGenPocket.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/world/BiomeGenPocket.java @@ -2,26 +2,10 @@ package StevenDimDoors.mod_pocketDim.world; import net.minecraft.world.biome.BiomeGenBase; -public class BiomeGenPocket extends BiomeGenBase +public class BiomeGenPocket extends DDBiomeGenBase { - public BiomeGenPocket(int par1) + public BiomeGenPocket(int biomeID) { - super(par1); - this.theBiomeDecorator.treesPerChunk = 0; - this.theBiomeDecorator.flowersPerChunk = 0; - this.theBiomeDecorator.grassPerChunk = 0; - this.setBiomeName("Pocket Dimension"); - this.setDisableRain(); - - this.spawnableMonsterList.clear(); - this.spawnableCreatureList.clear(); - this.spawnableWaterCreatureList.clear(); - this.spawnableCaveCreatureList.clear(); - // this.spawnableMonsterList.add(new SpawnListEntry(MobObelisk.class, 1, 1, 1)); - // this.spawnableCreatureList.add(new SpawnListEntry(MobObelisk.class, 1, 1, 1)); -// - // this.spawnableCaveCreatureList.add(new SpawnListEntry(MobObelisk.class, 1, 1, 1)); - - + super(biomeID, "Pocket Dimension"); } } diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/world/DDBiomeGenBase.java b/src/main/java/StevenDimDoors/mod_pocketDim/world/DDBiomeGenBase.java new file mode 100644 index 0000000..f6e3428 --- /dev/null +++ b/src/main/java/StevenDimDoors/mod_pocketDim/world/DDBiomeGenBase.java @@ -0,0 +1,34 @@ +package StevenDimDoors.mod_pocketDim.world; + +import net.minecraft.world.biome.BiomeGenBase; + +public class DDBiomeGenBase extends BiomeGenBase +{ + public DDBiomeGenBase(int biomeID, String name) + { + super(biomeID); + this.setBiomeName(name); + this.theBiomeDecorator.treesPerChunk = 0; + this.theBiomeDecorator.flowersPerChunk = 0; + this.theBiomeDecorator.grassPerChunk = 0; + this.setDisableRain(); + + this.spawnableMonsterList.clear(); + this.spawnableCreatureList.clear(); + this.spawnableWaterCreatureList.clear(); + this.spawnableCaveCreatureList.clear(); + } + + public static void checkBiomes(int[] biomes) + { + for (int k = 0; k < biomes.length; k++) + { + if (biomeList[biomes[k]] != null && !(biomeList[biomes[k]] instanceof DDBiomeGenBase)) + { + // Crash Minecraft to avoid having people complain to us about strange things + // that are really the result of silent biome ID conflicts. + throw new IllegalStateException("There is a biome ID conflict between a biome from Dimensional Doors and another biome type. Fix your configuration!"); + } + } + } +} -- 2.39.5 From b68de9eabd9c1fa021505168a62cf459f567640a Mon Sep 17 00:00:00 2001 From: SenseiKiwi Date: Fri, 7 Mar 2014 20:16:28 -0400 Subject: [PATCH 5/9] Improved Door Code and Removed Hack Improved some of our door code by giving some of our variables real names. Also found a hack in BaseDimDoor.isDropped() and a strange comment that said "I have no idea, but sometimes this is returned as the blockID instead of metadata." I finally figured out that due to some random mistake introduced in another function, idDropped() sometimes received a block ID instead of metadata, which is what that comment referred to. I fixed the cause and removed the hack. --- .../mod_pocketDim/blocks/BaseDimDoor.java | 86 +++++++------------ .../mod_pocketDim/blocks/BlockDoorGold.java | 2 +- .../blocks/BlockGoldDimDoor.java | 2 +- .../mod_pocketDim/blocks/TransientDoor.java | 14 ++- 4 files changed, 40 insertions(+), 64 deletions(-) diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java index 3233c6e..824e2c6 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java @@ -10,6 +10,7 @@ import net.minecraft.client.renderer.texture.IconRegister; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.Icon; import net.minecraft.util.MathHelper; @@ -27,13 +28,13 @@ import cpw.mods.fml.relauncher.SideOnly; public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEntityProvider { - protected final DDProperties properties; private Icon blockIconBottom; + protected final DDProperties properties; public BaseDimDoor(int blockID, Material material, DDProperties properties) { super(blockID, material); - + this.properties = properties; } @@ -229,60 +230,38 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn * their own) Args: x, y, z, neighbor blockID */ @Override - public void onNeighborBlockChange(World par1World, int par2, int par3, int par4, int par5) + public void onNeighborBlockChange(World world, int x, int y, int z, int neighborID) { - int var6 = par1World.getBlockMetadata(par2, par3, par4); - - if ((var6 & 8) == 0) + int metadata = world.getBlockMetadata(x, y, z); + if (!isUpperDoorBlock(metadata)) { - boolean var7 = false; - - if (par1World.getBlockId(par2, par3 + 1, par4) != this.blockID) + if (world.getBlockId(x, y - 1, z) != this.blockID) { - par1World.setBlock(par2, par3, par4, 0); - var7 = true; + world.setBlock(x, y, z, 0); } - - /** - if (!par1World.doesBlockHaveSolidTopSurface(par2, par3 - 1, par4)) - { - par1World.setBlockWithNotify(par2, par3, par4, 0); - var7 = true; - - if (par1World.getBlockId(par2, par3 + 1, par4) == this.blockID) - { - par1World.setBlockWithNotify(par2, par3 + 1, par4, 0); - } - } - **/ - - if (var7) + + if (neighborID > 0 && neighborID != this.blockID) { - if (!par1World.isRemote) - { - this.dropBlockAsItem(par1World, par2, par3, par4, properties.DimensionalDoorID, 0); - } - } - else - { - boolean var8 = par1World.isBlockIndirectlyGettingPowered(par2, par3, par4) || par1World.isBlockIndirectlyGettingPowered(par2, par3 + 1, par4); - - if ((var8 || par5 > 0 && Block.blocksList[par5].canProvidePower()) && par5 != this.blockID) - { - this.onPoweredBlockChange(par1World, par2, par3, par4, var8); - } + this.onNeighborBlockChange(world, x, y - 1, z, neighborID); } } else { - if (par1World.getBlockId(par2, par3 - 1, par4) != this.blockID) + if (world.getBlockId(x, y + 1, z) != this.blockID) { - par1World.setBlock(par2, par3, par4, 0); + world.setBlock(x, y, z, 0); + if (!world.isRemote) + { + this.dropBlockAsItem(world, x, y, z, metadata, 0); + } } - - if (par5 > 0 && par5 != this.blockID) + else { - this.onNeighborBlockChange(par1World, par2, par3 - 1, par4, par5); + boolean powered = world.isBlockIndirectlyGettingPowered(x, y, z) || world.isBlockIndirectlyGettingPowered(x, y + 1, z); + if ((powered || neighborID > 0 && Block.blocksList[neighborID].canProvidePower()) && neighborID != this.blockID) + { + this.onPoweredBlockChange(world, x, y, z, powered); + } } } } @@ -297,15 +276,12 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn return this.getDrops(); } - @Override - public int idDropped(int par1, Random par2Random, int par3) + /** + * Returns the ID of the items to drop on destruction. + */ + public int idDropped(int metadata, Random random, int fortune) { - //I have no idea, but sometimes this is returned as the blockID instead of metadata. - if(par1>100) - { - return this.getDrops(); - } - return (par1 & 8) != 0 ? 0 :getDrops(); + return isUpperDoorBlock(metadata) ? 0 : this.getDrops(); } /** @@ -375,9 +351,11 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn } @Override - public int getDrops() + public abstract int getDrops(); + + protected static boolean isUpperDoorBlock(int metadata) { - return this.blockID; + return (metadata & 8) != 0; } protected static boolean isDoorOpen(int metadata) diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockDoorGold.java b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockDoorGold.java index 5b20779..41b45c0 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockDoorGold.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockDoorGold.java @@ -45,7 +45,7 @@ public class BlockDoorGold extends BlockDoor @SideOnly(Side.CLIENT) public Icon getBlockTexture(IBlockAccess par1IBlockAccess, int par2, int par3, int par4, int par5) { - if (par1IBlockAccess.getBlockId(par2, par3-1, par4) == this.blockID) + if (par1IBlockAccess.getBlockId(par2, par3 - 1, par4) == this.blockID) { return this.blockIcon; } diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockGoldDimDoor.java b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockGoldDimDoor.java index 7cd4e0c..b4ffd21 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockGoldDimDoor.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockGoldDimDoor.java @@ -32,8 +32,8 @@ public class BlockGoldDimDoor extends BaseDimDoor dimension.createLink(x, y, z, LinkTypes.POCKET,world.getBlockMetadata(x, y - 1, z)); } } - } + @Override public int getDrops() { diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/TransientDoor.java b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/TransientDoor.java index 0c00501..bac5c5d 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/TransientDoor.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/TransientDoor.java @@ -1,5 +1,11 @@ package StevenDimDoors.mod_pocketDim.blocks; +import net.minecraft.block.material.Material; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.util.AxisAlignedBB; +import net.minecraft.world.World; import StevenDimDoors.mod_pocketDim.DDProperties; import StevenDimDoors.mod_pocketDim.core.DDTeleporter; import StevenDimDoors.mod_pocketDim.core.DimLink; @@ -7,14 +13,6 @@ import StevenDimDoors.mod_pocketDim.core.LinkTypes; import StevenDimDoors.mod_pocketDim.core.NewDimData; import StevenDimDoors.mod_pocketDim.core.PocketManager; -import net.minecraft.block.material.Material; -import net.minecraft.client.particle.EntityFX; -import net.minecraft.entity.Entity; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.world.World; - public class TransientDoor extends BaseDimDoor { public TransientDoor(int blockID, Material material, DDProperties properties) -- 2.39.5 From db91dfce5ab0c8c642eb12bfa94791e016da81e3 Mon Sep 17 00:00:00 2001 From: SenseiKiwi Date: Fri, 7 Mar 2014 20:17:30 -0400 Subject: [PATCH 6/9] Minor Change Minor spacing change @.@ --- .../java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java index 824e2c6..6fe1d08 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java @@ -45,7 +45,7 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn this.blockIconBottom = par1IconRegister.registerIcon(mod_pocketDim.modid + ":" + this.getUnlocalizedName()+"_bottom"); } - /** + /** * From the specified side and block metadata retrieves the blocks texture. Args: side, metadata */ @Override -- 2.39.5 From ee72f3248ec132acda0b9f8d30b0f796c545778a Mon Sep 17 00:00:00 2001 From: SenseiKiwi Date: Fri, 7 Mar 2014 21:38:15 -0400 Subject: [PATCH 7/9] Removed Corium Assets Removed leftover assets for Corium --- .../textures/blocks/tile.Corium_flowing.png | Bin 9931 -> 0 bytes .../blocks/tile.Corium_flowing.png.mcmeta | 27 ---------- .../textures/blocks/tile.Corium_still.png | Bin 10420 -> 0 bytes .../blocks/tile.Corium_still.png.mcmeta | 51 ------------------ 4 files changed, 78 deletions(-) delete mode 100644 src/main/resources/assets/dimdoors/textures/blocks/tile.Corium_flowing.png delete mode 100644 src/main/resources/assets/dimdoors/textures/blocks/tile.Corium_flowing.png.mcmeta delete mode 100644 src/main/resources/assets/dimdoors/textures/blocks/tile.Corium_still.png delete mode 100644 src/main/resources/assets/dimdoors/textures/blocks/tile.Corium_still.png.mcmeta diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.Corium_flowing.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.Corium_flowing.png deleted file mode 100644 index af07f91d2c25b15584f13e9173988cc5d3017a4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9931 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 VzBT7zh!cl^j)virFR&LO{|D{T2crN0 diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.Corium_still.png.mcmeta b/src/main/resources/assets/dimdoors/textures/blocks/tile.Corium_still.png.mcmeta deleted file mode 100644 index 2b28937..0000000 --- a/src/main/resources/assets/dimdoors/textures/blocks/tile.Corium_still.png.mcmeta +++ /dev/null @@ -1,51 +0,0 @@ -{ - "animation": - { - "frametime": 3, - "frames": - [ - -0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14, -15, -16, -17, -18, -19, -18, -17, -16, -15, -14, -13, -12, -11, -10, -9, -8, -7, -6, -5, -4, -3, -2, -1 - - ] - } -} - - -- 2.39.5 From 576ac0aae2899a11f0a77388819c25b5194122e9 Mon Sep 17 00:00:00 2001 From: SenseiKiwi Date: Fri, 7 Mar 2014 22:03:20 -0400 Subject: [PATCH 8/9] Fixed Double Door Textures Fixed the way textures are applied so that doors from our mod can appear as double doors. Renamed door textures to be consistent with Minecraft door textures. Got rid of a few obsolete textures. Unfortunately, something broke with door blocks updating. I need to fix that in the next commit. --- .../mod_pocketDim/blocks/BaseDimDoor.java | 128 +++++++++++++----- .../mod_pocketDim/blocks/BlockDimWall.java | 2 +- .../mod_pocketDim/blocks/BlockDoorGold.java | 113 ++++++++++++---- ...or_bottom.png => tile.chaosDoor_lower.png} | Bin ...sDoor_top.png => tile.chaosDoor_upper.png} | Bin ..._bottom.png => tile.dimDoorGold_lower.png} | Bin ...old_top.png => tile.dimDoorGold_upper.png} | Bin ..._bottom.png => tile.dimDoorWarp_lower.png} | Bin ...arp_top.png => tile.dimDoorWarp_upper.png} | Bin .../textures/blocks/tile.dimDoor_bottom.png | Bin 625 -> 0 bytes ...Link_bottom.png => tile.dimDoor_lower.png} | Bin .../textures/blocks/tile.dimDoor_top.png | Bin 540 -> 0 bytes ...oorLink_top.png => tile.dimDoor_upper.png} | Bin .../blocks/tile.dimDoorexitlink_bottom.png | Bin 778 -> 0 bytes .../blocks/tile.dimDoorexitlink_top.png | Bin 698 -> 0 bytes ...old_bottom.png => tile.doorGold_lower.png} | Bin ...orGold_top.png => tile.doorGold_upper.png} | Bin ... Copy.png => tile.transientDoor_lower.png} | Bin .../blocks/tile.transientDoor_top.png | Bin 2805 -> 0 bytes ...ottom.png => tile.transientDoor_upper.png} | Bin 20 files changed, 186 insertions(+), 57 deletions(-) rename src/main/resources/assets/dimdoors/textures/blocks/{tile.chaosDoor_bottom.png => tile.chaosDoor_lower.png} (100%) rename src/main/resources/assets/dimdoors/textures/blocks/{tile.chaosDoor_top.png => tile.chaosDoor_upper.png} (100%) rename src/main/resources/assets/dimdoors/textures/blocks/{tile.dimDoorGold_bottom.png => tile.dimDoorGold_lower.png} (100%) rename src/main/resources/assets/dimdoors/textures/blocks/{tile.dimDoorGold_top.png => tile.dimDoorGold_upper.png} (100%) rename src/main/resources/assets/dimdoors/textures/blocks/{tile.dimDoorWarp_bottom.png => tile.dimDoorWarp_lower.png} (100%) rename src/main/resources/assets/dimdoors/textures/blocks/{tile.dimDoorWarp_top.png => tile.dimDoorWarp_upper.png} (100%) delete mode 100644 src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoor_bottom.png rename src/main/resources/assets/dimdoors/textures/blocks/{tile.dimDoorLink_bottom.png => tile.dimDoor_lower.png} (100%) delete mode 100644 src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoor_top.png rename src/main/resources/assets/dimdoors/textures/blocks/{tile.dimDoorLink_top.png => tile.dimDoor_upper.png} (100%) delete mode 100644 src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorexitlink_bottom.png delete mode 100644 src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorexitlink_top.png rename src/main/resources/assets/dimdoors/textures/blocks/{tile.doorGold_bottom.png => tile.doorGold_lower.png} (100%) rename src/main/resources/assets/dimdoors/textures/blocks/{tile.doorGold_top.png => tile.doorGold_upper.png} (100%) rename src/main/resources/assets/dimdoors/textures/blocks/{tile.transientDoor - Copy.png => tile.transientDoor_lower.png} (100%) delete mode 100644 src/main/resources/assets/dimdoors/textures/blocks/tile.transientDoor_top.png rename src/main/resources/assets/dimdoors/textures/blocks/{tile.transientDoor_bottom.png => tile.transientDoor_upper.png} (100%) diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java index 6fe1d08..22e7649 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java @@ -6,6 +6,7 @@ import net.minecraft.block.Block; import net.minecraft.block.BlockDoor; import net.minecraft.block.ITileEntityProvider; import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.IconFlipped; import net.minecraft.client.renderer.texture.IconRegister; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; @@ -28,8 +29,12 @@ import cpw.mods.fml.relauncher.SideOnly; public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEntityProvider { - private Icon blockIconBottom; - protected final DDProperties properties; + protected final DDProperties properties; + + @SideOnly(Side.CLIENT) + private Icon[] upperTextures; + @SideOnly(Side.CLIENT) + private Icon[] lowerTextures; public BaseDimDoor(int blockID, Material material, DDProperties properties) { @@ -39,10 +44,15 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn } @Override - public void registerIcons(IconRegister par1IconRegister) + @SideOnly(Side.CLIENT) + public void registerIcons(IconRegister iconRegister) { - this.blockIcon = par1IconRegister.registerIcon(mod_pocketDim.modid + ":" + this.getUnlocalizedName()+"_top"); - this.blockIconBottom = par1IconRegister.registerIcon(mod_pocketDim.modid + ":" + this.getUnlocalizedName()+"_bottom"); + upperTextures = new Icon[2]; + lowerTextures = new Icon[2]; + upperTextures[0] = iconRegister.registerIcon(mod_pocketDim.modid + ":" + this.getUnlocalizedName() + "_upper"); + lowerTextures[0] = iconRegister.registerIcon(mod_pocketDim.modid + ":" + this.getUnlocalizedName() + "_lower"); + upperTextures[1] = new IconFlipped(upperTextures[0], true, false); + lowerTextures[1] = new IconFlipped(lowerTextures[0], true, false); } /** @@ -50,9 +60,9 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn */ @Override @SideOnly(Side.CLIENT) - public Icon getIcon(int par1, int par2) + public Icon getIcon(int side, int metadata) { - return this.blockIcon; + return this.upperTextures[0]; } @Override @@ -64,22 +74,24 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn @Override public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) { - int var10 = this.getFullMetadata(world, x, y, z); - int var11 = var10 & 7; - var11 ^= 4; + final int MAGIC_CONSTANT = 1003; + + int metadata = this.getFullMetadata(world, x, y, z); + int lowMeta = metadata & 7; + lowMeta ^= 4; - if ((var10 & 8) == 0) + if (isUpperDoorBlock(metadata)) { - world.setBlockMetadataWithNotify(x, y, z, var11,2); - world.markBlockRangeForRenderUpdate(x, y, z, x, y, z); + world.setBlockMetadataWithNotify(x, y - 1, z, lowMeta,2); + world.markBlockRangeForRenderUpdate(x, y - 1, z, x, y, z); } else { - world.setBlockMetadataWithNotify(x, y - 1, z, var11,2); - world.markBlockRangeForRenderUpdate(x, y - 1, z, x, y, z); + world.setBlockMetadataWithNotify(x, y, z, lowMeta, 2); + world.markBlockRangeForRenderUpdate(x, y, z, x, y, z); } - world.playAuxSFXAtEntity(player, 1003, x, y, z, 0); + world.playAuxSFXAtEntity(player, MAGIC_CONSTANT, x, y, z, 0); return true; } @@ -91,23 +103,73 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn this.updateAttachedTile(world, x, y, z); } - /** - * Retrieves the block texture to use based on the display side. Args: iBlockAccess, x, y, z, side - */ + * Retrieves the block texture to use based on the display side. Args: iBlockAccess, x, y, z, side + */ @Override - @SideOnly(Side.CLIENT) - public Icon getBlockTexture(IBlockAccess par1IBlockAccess, int par2, int par3, int par4, int par5) - { - if(par1IBlockAccess.getBlockId(par2, par3-1, par4) == this.blockID) - { - return this.blockIcon; - } - else - { - return blockIconBottom; - } - } + @SideOnly(Side.CLIENT) + public Icon getBlockTexture(IBlockAccess blockAccess, int x, int y, int z, int side) + { + if (side != 1 && side != 0) + { + int fullMetadata = this.getFullMetadata(blockAccess, x, y, z); + int orientation = fullMetadata & 3; + boolean reversed = false; + + if (isDoorOpen(fullMetadata)) + { + if (orientation == 0 && side == 2) + { + reversed = !reversed; + } + else if (orientation == 1 && side == 5) + { + reversed = !reversed; + } + else if (orientation == 2 && side == 3) + { + reversed = !reversed; + } + else if (orientation == 3 && side == 4) + { + reversed = !reversed; + } + } + else + { + if (orientation == 0 && side == 5) + { + reversed = !reversed; + } + else if (orientation == 1 && side == 3) + { + reversed = !reversed; + } + else if (orientation == 2 && side == 4) + { + reversed = !reversed; + } + else if (orientation == 3 && side == 2) + { + reversed = !reversed; + } + + if ((fullMetadata & 16) != 0) + { + reversed = !reversed; + } + } + + if (isUpperDoorBlock(fullMetadata)) + return this.upperTextures[reversed ? 1 : 0]; + else + return this.lowerTextures[reversed ? 1 : 0]; + } + else + { + return this.lowerTextures[0]; + } + } //Called to update the render information on the tile entity. Could probably implement a data watcher, //but this works fine and is more versatile I think. @@ -353,12 +415,12 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn @Override public abstract int getDrops(); - protected static boolean isUpperDoorBlock(int metadata) + public static boolean isUpperDoorBlock(int metadata) { return (metadata & 8) != 0; } - protected static boolean isDoorOpen(int metadata) + public static boolean isDoorOpen(int metadata) { return (metadata & 4) != 0; } diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockDimWall.java b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockDimWall.java index 8d90548..82e451a 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockDimWall.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockDimWall.java @@ -27,7 +27,7 @@ public class BlockDimWall extends Block public BlockDimWall(int blockID, int j, Material par2Material) { - super(blockID, Material.ground); + super(blockID, par2Material); this.setCreativeTab(mod_pocketDim.dimDoorsCreativeTab); } diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockDoorGold.java b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockDoorGold.java index 41b45c0..54972e4 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockDoorGold.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BlockDoorGold.java @@ -8,6 +8,7 @@ import StevenDimDoors.mod_pocketDim.DDProperties; import StevenDimDoors.mod_pocketDim.mod_pocketDim; import net.minecraft.block.BlockDoor; import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.IconFlipped; import net.minecraft.client.renderer.texture.IconRegister; import net.minecraft.item.Item; import net.minecraft.util.Icon; @@ -15,19 +16,27 @@ import net.minecraft.world.IBlockAccess; public class BlockDoorGold extends BlockDoor { - private Icon blockIconBottom; + @SideOnly(Side.CLIENT) + private Icon[] upperTextures; + @SideOnly(Side.CLIENT) + private Icon[] lowerTextures; public BlockDoorGold(int par1, Material par2Material) { super(par1, par2Material); } - + @Override - public void registerIcons(IconRegister par1IconRegister) + @SideOnly(Side.CLIENT) + public void registerIcons(IconRegister iconRegister) { - this.blockIcon = par1IconRegister.registerIcon(mod_pocketDim.modid + ":" + this.getUnlocalizedName()+"_top"); - this.blockIconBottom = par1IconRegister.registerIcon(mod_pocketDim.modid + ":" + this.getUnlocalizedName()+"_bottom"); - } + upperTextures = new Icon[2]; + lowerTextures = new Icon[2]; + upperTextures[0] = iconRegister.registerIcon(mod_pocketDim.modid + ":" + this.getUnlocalizedName() + "_upper"); + lowerTextures[0] = iconRegister.registerIcon(mod_pocketDim.modid + ":" + this.getUnlocalizedName() + "_lower"); + upperTextures[1] = new IconFlipped(upperTextures[0], true, false); + lowerTextures[1] = new IconFlipped(lowerTextures[0], true, false); + } @Override public int idDropped(int par1, Random par2Random, int par3) @@ -35,23 +44,81 @@ public class BlockDoorGold extends BlockDoor return (par1 & 8) != 0 ? 0 : mod_pocketDim.itemGoldenDoor.itemID; } - @Override - public Icon getIcon(int par1, int par2) - { - return this.blockIcon; - } - + /** + * From the specified side and block metadata retrieves the blocks texture. Args: side, metadata + */ @Override @SideOnly(Side.CLIENT) - public Icon getBlockTexture(IBlockAccess par1IBlockAccess, int par2, int par3, int par4, int par5) - { - if (par1IBlockAccess.getBlockId(par2, par3 - 1, par4) == this.blockID) - { - return this.blockIcon; - } - else - { - return blockIconBottom; - } - } + public Icon getIcon(int side, int metadata) + { + return this.upperTextures[0]; + } + + /** + * Retrieves the block texture to use based on the display side. Args: iBlockAccess, x, y, z, side + */ + @Override + @SideOnly(Side.CLIENT) + public Icon getBlockTexture(IBlockAccess blockAccess, int x, int y, int z, int side) + { + if (side != 1 && side != 0) + { + int fullMetadata = this.getFullMetadata(blockAccess, x, y, z); + int orientation = fullMetadata & 3; + boolean reversed = false; + + if (BaseDimDoor.isDoorOpen(fullMetadata)) + { + if (orientation == 0 && side == 2) + { + reversed = !reversed; + } + else if (orientation == 1 && side == 5) + { + reversed = !reversed; + } + else if (orientation == 2 && side == 3) + { + reversed = !reversed; + } + else if (orientation == 3 && side == 4) + { + reversed = !reversed; + } + } + else + { + if (orientation == 0 && side == 5) + { + reversed = !reversed; + } + else if (orientation == 1 && side == 3) + { + reversed = !reversed; + } + else if (orientation == 2 && side == 4) + { + reversed = !reversed; + } + else if (orientation == 3 && side == 2) + { + reversed = !reversed; + } + + if ((fullMetadata & 16) != 0) + { + reversed = !reversed; + } + } + + if (BaseDimDoor.isUpperDoorBlock(fullMetadata)) + return this.upperTextures[reversed ? 1 : 0]; + else + return this.lowerTextures[reversed ? 1 : 0]; + } + else + { + return this.lowerTextures[0]; + } + } } diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.chaosDoor_bottom.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.chaosDoor_lower.png similarity index 100% rename from src/main/resources/assets/dimdoors/textures/blocks/tile.chaosDoor_bottom.png rename to src/main/resources/assets/dimdoors/textures/blocks/tile.chaosDoor_lower.png diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.chaosDoor_top.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.chaosDoor_upper.png similarity index 100% rename from src/main/resources/assets/dimdoors/textures/blocks/tile.chaosDoor_top.png rename to src/main/resources/assets/dimdoors/textures/blocks/tile.chaosDoor_upper.png diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorGold_bottom.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorGold_lower.png similarity index 100% rename from src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorGold_bottom.png rename to src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorGold_lower.png diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorGold_top.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorGold_upper.png similarity index 100% rename from src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorGold_top.png rename to src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorGold_upper.png diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorWarp_bottom.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorWarp_lower.png similarity index 100% rename from src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorWarp_bottom.png rename to src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorWarp_lower.png diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorWarp_top.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorWarp_upper.png similarity index 100% rename from src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorWarp_top.png rename to src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorWarp_upper.png diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoor_bottom.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoor_bottom.png deleted file mode 100644 index 825356d73f76b5ecd54adeddfb122a1d07f69f71..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 625 zcmV-%0*?KOP)+cY>BBb#}qLvmdN-VJ!tuB;WLn|7JlxU-iXj1;vk!R%Xhts)t?wm7c z=B*nY9aS!u)7jaX%H^`&-rn^2`Kflht>52YeSCb_{r&x2kB^VKySp>MSzB9^J3l`+ zGRc>h7kzzwsoU-9=jX=+xOX}o6RB3Ky1&2I)zy`bj*hglvLbhJabW_tx3{WPD%P>l zXc+PP``aS9=jUe?i$&%0c^w}gE166x9*@gmC7aFa^z_tRVDt6$)wuM0(3hJZ67@8NLRx=&0@C=dw9O-)S+kl=xF!1D64 zHa0fQE@yJMM1;DTnHdca56ewYPit~=(gf&ECjbc-o&eyTJ3=`2`~Cj{s1dOTm@g8E z7`(Ih2B<|~aBxs=Y-~(JLqnzpND|30qnG#20|Ntw{{DXT_4VlwKb)v~HJ7e_00000 LNkvXXu0mjfJ8LHB diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorLink_bottom.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoor_lower.png similarity index 100% rename from src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoorLink_bottom.png rename to src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoor_lower.png diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoor_top.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.dimDoor_top.png deleted file mode 100644 index 4ec98689a80f9d286c486edbceef39cb960a66ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 540 zcmV+%0^|LOP)`76rkabIv(p#()9zPjy!<9KYfyrc20#d1z9KPQV0bVh7 zyB&(j3}i*#U(Reci*mUvm3Yr&GU8)Z-kIZYIH3G~zZiLbf9m}V1_P8zr4M_dP!KT6 zR(ieuuevsHv)N!c9Ddl_?KTMF@pzyN27}OHleB@y;}O&8^j`qC+x=`JH5ZFTv|25! zRx2D12i$HqoX=lMr8Qb0J$dc7_nKA%svP$cMdI{6OROzr?RvKkXenKlCRpW4}M e?hU_0GWY?mCFU(i_V%>^0000AI+mzZMX^1AF_W1*=gD_3n#qqd zcW3uPpr8+FeF?)DtG$=cCR+t5jvaa(hu z8qmUHc>!6k;zY@>MSW91XUBy5#s~cFF5sc*!mpMKy_AVR-#482*_^{&Z5mhQ8B~M+ z5tNCb=vO}~(4#9EahzQ<;TE zP{0`}Y9|aRdM9xb)pHAFzXqax1hP)v&Ix?8uldKbqzV0$g%dFECq6ZWXF*RgqrGLs zewYaJHhlN0u)!?!s)G=-E8{qh5P@Vtf7ixSe`r$L>q>NzMwEOiw71PTjTuS7EDuq1 zkbOH6|*}BVJ*+WZFtO}|>qUtAU7LQzvxqIp5nmc)a!7tzJ3Fi6NPT&aG$BdeYqYgdQp@+CTbd;W z8rlN|3SI$4%7fL)nrTp&aUy4x6{!WbtyS8KI&EypFCfhJpj((h`l}KmS!nD!(9BGs zl^x)i{u?ad_MRP`oP)kwIO!>YsWz@17OTwgPA>o_qRMlek){4@avWv^FGsUHAVLo3nkDq!j|2 zCjRZ{#VC8$k1Fdgi~ThCL_BmApIz8`6+ zU9+ypR(u#YBGjvcV6j;KoZhJkJXeRHM$DS^gB3Twa>msLL6&6{DJbSOXaX-cy{JXC z3HFzroJn->F@)o_5h$_^YTAMAnLb?9e7M>f#dRZytLk^p3)D#(zb)i}DVugAt`<|it&WtTG z$Y(0Ak+Sj4yEN9xc}#2XU!e5H1a<1}Ur947H;E{#fcbxO#*V$YKAbMOa8`8llUagu zdS_RYBnhG@LZ{Oq>oMHLx=dh6$q1Wp%>C}_q g90)ibAxI2<1IWB9LE=;As{jB107*qoM6N<$g8N!WrvLx| diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.doorGold_bottom.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.doorGold_lower.png similarity index 100% rename from src/main/resources/assets/dimdoors/textures/blocks/tile.doorGold_bottom.png rename to src/main/resources/assets/dimdoors/textures/blocks/tile.doorGold_lower.png diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.doorGold_top.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.doorGold_upper.png similarity index 100% rename from src/main/resources/assets/dimdoors/textures/blocks/tile.doorGold_top.png rename to src/main/resources/assets/dimdoors/textures/blocks/tile.doorGold_upper.png diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.transientDoor - Copy.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.transientDoor_lower.png similarity index 100% rename from src/main/resources/assets/dimdoors/textures/blocks/tile.transientDoor - Copy.png rename to src/main/resources/assets/dimdoors/textures/blocks/tile.transientDoor_lower.png diff --git a/src/main/resources/assets/dimdoors/textures/blocks/tile.transientDoor_top.png b/src/main/resources/assets/dimdoors/textures/blocks/tile.transientDoor_top.png deleted file mode 100644 index 8ceb7c901facccf03b31f193eeb89a08ce80af09..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2805 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 Date: Fri, 7 Mar 2014 22:21:34 -0400 Subject: [PATCH 9/9] Fixed Door Bug Fixed the bug referenced in the previous commit that caused doors to break instantly. --- .../StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java index 22e7649..ee37ab0 100644 --- a/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java +++ b/src/main/java/StevenDimDoors/mod_pocketDim/blocks/BaseDimDoor.java @@ -82,7 +82,7 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn if (isUpperDoorBlock(metadata)) { - world.setBlockMetadataWithNotify(x, y - 1, z, lowMeta,2); + world.setBlockMetadataWithNotify(x, y - 1, z, lowMeta, 2); world.markBlockRangeForRenderUpdate(x, y - 1, z, x, y, z); } else @@ -295,7 +295,7 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn public void onNeighborBlockChange(World world, int x, int y, int z, int neighborID) { int metadata = world.getBlockMetadata(x, y, z); - if (!isUpperDoorBlock(metadata)) + if (isUpperDoorBlock(metadata)) { if (world.getBlockId(x, y - 1, z) != this.blockID) { @@ -403,7 +403,6 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn // Close the door only after the entity goes through // so players don't have it slam in their faces. this.onPoweredBlockChange(world, x, y, z, false); - } } else if (world.getBlockId(x, y + 1, z) == this.blockID) @@ -412,9 +411,6 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn } } - @Override - public abstract int getDrops(); - public static boolean isUpperDoorBlock(int metadata) { return (metadata & 8) != 0; -- 2.39.5