From 7224ac4299098c70efae9dbd04c50a97e3f5f583 Mon Sep 17 00:00:00 2001 From: Blood Asp Date: Thu, 23 Apr 2015 18:14:22 +0200 Subject: Initial Commit --- .../java/gregtech/common/blocks/GT_Block_Ores.java | 287 +++++++++++++++++++++ 1 file changed, 287 insertions(+) create mode 100644 main/java/gregtech/common/blocks/GT_Block_Ores.java (limited to 'main/java/gregtech/common/blocks/GT_Block_Ores.java') diff --git a/main/java/gregtech/common/blocks/GT_Block_Ores.java b/main/java/gregtech/common/blocks/GT_Block_Ores.java new file mode 100644 index 0000000000..5186456e40 --- /dev/null +++ b/main/java/gregtech/common/blocks/GT_Block_Ores.java @@ -0,0 +1,287 @@ +/* 1: */ package gregtech.common.blocks; +/* 2: */ +/* 3: */ import cpw.mods.fml.relauncher.Side; +/* 4: */ import cpw.mods.fml.relauncher.SideOnly; +/* 5: */ import gregtech.api.GregTech_API; +/* 6: */ import gregtech.api.enums.Materials; +/* 7: */ import gregtech.api.enums.OrePrefixes; +/* 8: */ import gregtech.api.items.GT_Generic_Block; +/* 9: */ import gregtech.api.util.GT_LanguageManager; +/* 10: */ import gregtech.api.util.GT_ModHandler; +/* 11: */ import gregtech.api.util.GT_OreDictUnificator; +/* 12: */ import gregtech.common.render.GT_Renderer_Block; +/* 13: */ import java.util.ArrayList; +/* 14: */ import java.util.List; +/* 15: */ import net.minecraft.block.Block; +/* 16: */ import net.minecraft.block.ITileEntityProvider; +/* 17: */ import net.minecraft.block.material.Material; +/* 18: */ import net.minecraft.client.renderer.texture.IIconRegister; +/* 19: */ import net.minecraft.creativetab.CreativeTabs; +/* 20: */ import net.minecraft.entity.Entity; +/* 21: */ import net.minecraft.entity.boss.EntityDragon; +/* 22: */ import net.minecraft.init.Blocks; +/* 23: */ import net.minecraft.item.Item; +/* 24: */ import net.minecraft.item.ItemStack; +/* 25: */ import net.minecraft.tileentity.TileEntity; +/* 26: */ import net.minecraft.util.IIcon; +/* 27: */ import net.minecraft.util.StatCollector; +/* 28: */ import net.minecraft.world.IBlockAccess; +/* 29: */ import net.minecraft.world.World; +/* 30: */ +/* 31: */ public class GT_Block_Ores +/* 32: */ extends GT_Generic_Block +/* 33: */ implements ITileEntityProvider +/* 34: */ { +/* 35: 35 */ public static ThreadLocal mTemporaryTileEntity = new ThreadLocal(); +/* 36: */ +/* 37: */ public GT_Block_Ores() +/* 38: */ { +/* 39: 38 */ super(GT_Item_Ores.class, "gt.blockores", Material.rock); +/* 40: 39 */ this.isBlockContainer = true; +/* 41: 40 */ setStepSound(soundTypeStone); +/* 42: 41 */ setCreativeTab(GregTech_API.TAB_GREGTECH_ORES); +/* 43: 42 */ for (int i = 0; i < 16; i++) { +/* 44: 42 */ GT_ModHandler.addValuableOre(this, i, 1); +/* 45: */ } +/* 46: 43 */ for (int i = 1; i < GregTech_API.sGeneratedMaterials.length; i++) { +/* 47: 43 */ if (GregTech_API.sGeneratedMaterials[i] != null) +/* 48: */ { +/* 49: 44 */ GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + i + ".name", getLocalizedName(GregTech_API.sGeneratedMaterials[i])); +/* 50: 45 */ GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (i + 1000) + ".name", getLocalizedName(GregTech_API.sGeneratedMaterials[i])); +/* 51: 46 */ GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (i + 2000) + ".name", getLocalizedName(GregTech_API.sGeneratedMaterials[i])); +/* 52: 47 */ GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (i + 3000) + ".name", getLocalizedName(GregTech_API.sGeneratedMaterials[i])); +/* 53: 48 */ GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (i + 4000) + ".name", getLocalizedName(GregTech_API.sGeneratedMaterials[i])); +/* 54: 49 */ GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (i + 16000) + ".name", "Small " + getLocalizedName(GregTech_API.sGeneratedMaterials[i])); +/* 55: 50 */ GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (i + 17000) + ".name", "Small " + getLocalizedName(GregTech_API.sGeneratedMaterials[i])); +/* 56: 51 */ GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (i + 18000) + ".name", "Small " + getLocalizedName(GregTech_API.sGeneratedMaterials[i])); +/* 57: 52 */ GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (i + 19000) + ".name", "Small " + getLocalizedName(GregTech_API.sGeneratedMaterials[i])); +/* 58: 53 */ GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (i + 20000) + ".name", "Small " + getLocalizedName(GregTech_API.sGeneratedMaterials[i])); +/* 59: 54 */ if ((GregTech_API.sGeneratedMaterials[i].mTypes & 0x8) != 0) +/* 60: */ { +/* 61: 55 */ GT_OreDictUnificator.registerOre(OrePrefixes.ore.get(GregTech_API.sGeneratedMaterials[i]), new ItemStack(this, 1, i)); +/* 62: 56 */ GT_OreDictUnificator.registerOre(OrePrefixes.oreNetherrack.get(GregTech_API.sGeneratedMaterials[i]), new ItemStack(this, 1, i + 1000)); +/* 63: 57 */ GT_OreDictUnificator.registerOre(OrePrefixes.oreEndstone.get(GregTech_API.sGeneratedMaterials[i]), new ItemStack(this, 1, i + 2000)); +/* 64: 58 */ GT_OreDictUnificator.registerOre(OrePrefixes.oreBlackgranite.get(GregTech_API.sGeneratedMaterials[i]), new ItemStack(this, 1, i + 3000)); +/* 65: 59 */ GT_OreDictUnificator.registerOre(OrePrefixes.oreRedgranite.get(GregTech_API.sGeneratedMaterials[i]), new ItemStack(this, 1, i + 4000)); +/* 66: */ } +/* 67: */ } +/* 68: */ } +/* 69: */ } +/* 70: */ +/* 71: 64 */ public static boolean FUCKING_LOCK = false; +/* 72: */ +/* 73: */ public void onNeighborChange(IBlockAccess aWorld, int aX, int aY, int aZ, int aTileX, int aTileY, int aTileZ) +/* 74: */ { +/* 75: 68 */ if (!FUCKING_LOCK) +/* 76: */ { +/* 77: 69 */ FUCKING_LOCK = true; +/* 78: 70 */ TileEntity tTileEntity = aWorld.getTileEntity(aX, aY, aZ); +/* 79: 71 */ if ((tTileEntity instanceof GT_TileEntity_Ores)) { +/* 80: 71 */ ((GT_TileEntity_Ores)tTileEntity).onUpdated(); +/* 81: */ } +/* 82: */ } +/* 83: 73 */ FUCKING_LOCK = false; +/* 84: */ } +/* 85: */ +/* 86: */ public void onNeighborBlockChange(World aWorld, int aX, int aY, int aZ, Block aBlock) +/* 87: */ { +/* 88: 78 */ if (!FUCKING_LOCK) +/* 89: */ { +/* 90: 79 */ FUCKING_LOCK = true; +/* 91: 80 */ TileEntity tTileEntity = aWorld.getTileEntity(aX, aY, aZ); +/* 92: 81 */ if ((tTileEntity instanceof GT_TileEntity_Ores)) { +/* 93: 81 */ ((GT_TileEntity_Ores)tTileEntity).onUpdated(); +/* 94: */ } +/* 95: */ } +/* 96: 83 */ FUCKING_LOCK = false; +/* 97: */ } +/* 98: */ +/* 99: */ public String getLocalizedName(Materials aMaterial) +/* 100: */ { +/* 101: 87 */ switch (aMaterial.ordinal()) +/* 102: */ { +/* 103: */ case 1: +/* 104: */ case 2: +/* 105: */ case 3: +/* 106: */ case 4: +/* 107: */ case 5: +/* 108: */ case 6: +/* 109: */ case 7: +/* 110: */ case 8: +/* 111: 89 */ return aMaterial.mDefaultLocalName + " Infused Stone"; +/* 112: */ case 9: +/* 113: */ case 10: +/* 114: */ case 11: +/* 115: */ case 12: +/* 116: */ case 13: +/* 117: */ case 14: +/* 118: */ case 15: +/* 119: */ case 16: +/* 120: */ case 17: +/* 121: */ case 18: +/* 122: */ case 19: +/* 123: */ case 20: +/* 124: 91 */ return aMaterial.mDefaultLocalName; +/* 125: */ } +/* 126: 93 */ return aMaterial.mDefaultLocalName + OrePrefixes.ore.mLocalizedMaterialPost; +/* 127: */ } +/* 128: */ +/* 129: */ public boolean onBlockEventReceived(World p_149696_1_, int p_149696_2_, int p_149696_3_, int p_149696_4_, int p_149696_5_, int p_149696_6_) +/* 130: */ { +/* 131: 99 */ super.onBlockEventReceived(p_149696_1_, p_149696_2_, p_149696_3_, p_149696_4_, p_149696_5_, p_149696_6_); +/* 132:100 */ TileEntity tileentity = p_149696_1_.getTileEntity(p_149696_2_, p_149696_3_, p_149696_4_); +/* 133:101 */ return tileentity != null ? tileentity.receiveClientEvent(p_149696_5_, p_149696_6_) : false; +/* 134: */ } +/* 135: */ +/* 136: */ public boolean canEntityDestroy(IBlockAccess world, int x, int y, int z, Entity entity) +/* 137: */ { +/* 138:106 */ return (!(entity instanceof EntityDragon)) && (super.canEntityDestroy(world, x, y, z, entity)); +/* 139: */ } +/* 140: */ +/* 141: */ public String getHarvestTool(int aMeta) +/* 142: */ { +/* 143:111 */ return aMeta < 8 ? "pickaxe" : "shovel"; +/* 144: */ } +/* 145: */ +/* 146: */ public int getHarvestLevel(int aMeta) +/* 147: */ { +/* 148:116 */ return aMeta % 8; +/* 149: */ } +/* 150: */ +/* 151: */ public float getBlockHardness(World aWorld, int aX, int aY, int aZ) +/* 152: */ { +/* 153:121 */ return 1.0F + getHarvestLevel(aWorld.getBlockMetadata(aX, aY, aZ)) * 1.0F; +/* 154: */ } +/* 155: */ +/* 156: */ public float getExplosionResistance(Entity par1Entity, World aWorld, int aX, int aY, int aZ, double explosionX, double explosionY, double explosionZ) +/* 157: */ { +/* 158:126 */ return 1.0F + getHarvestLevel(aWorld.getBlockMetadata(aX, aY, aZ)) * 1.0F; +/* 159: */ } +/* 160: */ +/* 161: */ protected boolean canSilkHarvest() +/* 162: */ { +/* 163:131 */ return false; +/* 164: */ } +/* 165: */ +/* 166: */ public String getUnlocalizedName() +/* 167: */ { +/* 168:134 */ return "gt.blockores"; +/* 169: */ } +/* 170: */ +/* 171: */ public String getLocalizedName() +/* 172: */ { +/* 173:135 */ return StatCollector.translateToLocal(getUnlocalizedName() + ".name"); +/* 174: */ } +/* 175: */ +/* 176: */ public int getRenderType() +/* 177: */ { +/* 178:136 */ if (GT_Renderer_Block.INSTANCE == null) { +/* 179:136 */ return super.getRenderType(); +/* 180: */ } +/* 181:136 */ return GT_Renderer_Block.INSTANCE.mRenderID; +/* 182: */ } +/* 183: */ +/* 184: */ public boolean canBeReplacedByLeaves(IBlockAccess aWorld, int aX, int aY, int aZ) +/* 185: */ { +/* 186:137 */ return false; +/* 187: */ } +/* 188: */ +/* 189: */ public boolean isNormalCube(IBlockAccess aWorld, int aX, int aY, int aZ) +/* 190: */ { +/* 191:138 */ return true; +/* 192: */ } +/* 193: */ +/* 194: */ public boolean hasTileEntity(int aMeta) +/* 195: */ { +/* 196:139 */ return true; +/* 197: */ } +/* 198: */ +/* 199: */ public boolean renderAsNormalBlock() +/* 200: */ { +/* 201:140 */ return true; +/* 202: */ } +/* 203: */ +/* 204: */ public boolean isOpaqueCube() +/* 205: */ { +/* 206:141 */ return true; +/* 207: */ } +/* 208: */ +/* 209: */ public TileEntity createNewTileEntity(World aWorld, int aMeta) +/* 210: */ { +/* 211:142 */ return createTileEntity(aWorld, aMeta); +/* 212: */ } +/* 213: */ +/* 214: */ public IIcon getIcon(IBlockAccess aIBlockAccess, int aX, int aY, int aZ, int aSide) +/* 215: */ { +/* 216:143 */ return Blocks.stone.getIcon(0, 0); +/* 217: */ } +/* 218: */ +/* 219: */ public IIcon getIcon(int aSide, int aMeta) +/* 220: */ { +/* 221:144 */ return Blocks.stone.getIcon(0, 0); +/* 222: */ } +/* 223: */ +/* 224: */ @SideOnly(Side.CLIENT) +/* 225: */ public void registerBlockIcons(IIconRegister aIconRegister) {} +/* 226: */ +/* 227: */ public int getDamageValue(World aWorld, int aX, int aY, int aZ) +/* 228: */ { +/* 229:154 */ TileEntity tTileEntity = aWorld.getTileEntity(aX, aY, aZ); +/* 230:155 */ if ((tTileEntity != null) && ((tTileEntity instanceof GT_TileEntity_Ores))) { +/* 231:155 */ return ((GT_TileEntity_Ores)tTileEntity).getMetaData(); +/* 232: */ } +/* 233:156 */ return 0; +/* 234: */ } +/* 235: */ +/* 236: */ public void breakBlock(World aWorld, int aX, int aY, int aZ, Block par5, int par6) +/* 237: */ { +/* 238:161 */ TileEntity tTileEntity = aWorld.getTileEntity(aX, aY, aZ); +/* 239:162 */ if ((tTileEntity instanceof GT_TileEntity_Ores)) { +/* 240:162 */ mTemporaryTileEntity.set((GT_TileEntity_Ores)tTileEntity); +/* 241: */ } +/* 242:163 */ super.breakBlock(aWorld, aX, aY, aZ, par5, par6); +/* 243:164 */ aWorld.removeTileEntity(aX, aY, aZ); +/* 244: */ } +/* 245: */ +/* 246: */ public ArrayList getDrops(World aWorld, int aX, int aY, int aZ, int aMeta, int aFortune) +/* 247: */ { +/* 248:169 */ TileEntity tTileEntity = aWorld.getTileEntity(aX, aY, aZ); +/* 249:170 */ if ((tTileEntity instanceof GT_TileEntity_Ores)) { +/* 250:170 */ return ((GT_TileEntity_Ores)tTileEntity).getDrops(aFortune); +/* 251: */ } +/* 252:171 */ return mTemporaryTileEntity.get() == null ? new ArrayList() : ((GT_TileEntity_Ores)mTemporaryTileEntity.get()).getDrops(aFortune); +/* 253: */ } +/* 254: */ +/* 255: */ public TileEntity createTileEntity(World aWorld, int aMeta) +/* 256: */ { +/* 257:176 */ return new GT_TileEntity_Ores(); +/* 258: */ } +/* 259: */ +/* 260: */ @SideOnly(Side.CLIENT) +/* 261: */ public void getSubBlocks(Item aItem, CreativeTabs aTab, List aList) +/* 262: */ { +/* 263:182 */ for (int i = 0; i < GregTech_API.sGeneratedMaterials.length; i++) +/* 264: */ { +/* 265:183 */ Materials tMaterial = GregTech_API.sGeneratedMaterials[i]; +/* 266:184 */ if ((tMaterial != null) && ((tMaterial.mTypes & 0x8) != 0)) +/* 267: */ { +/* 268:185 */ aList.add(new ItemStack(aItem, 1, i)); +/* 269:186 */ aList.add(new ItemStack(aItem, 1, i + 1000)); +/* 270:187 */ aList.add(new ItemStack(aItem, 1, i + 2000)); +/* 271:188 */ aList.add(new ItemStack(aItem, 1, i + 3000)); +/* 272:189 */ aList.add(new ItemStack(aItem, 1, i + 4000)); +/* 273:190 */ aList.add(new ItemStack(aItem, 1, i + 16000)); +/* 274:191 */ aList.add(new ItemStack(aItem, 1, i + 17000)); +/* 275:192 */ aList.add(new ItemStack(aItem, 1, i + 18000)); +/* 276:193 */ aList.add(new ItemStack(aItem, 1, i + 19000)); +/* 277:194 */ aList.add(new ItemStack(aItem, 1, i + 20000)); +/* 278: */ } +/* 279: */ } +/* 280: */ } +/* 281: */ } + + +/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar + * Qualified Name: gregtech.common.blocks.GT_Block_Ores + * JD-Core Version: 0.7.0.1 + */ \ No newline at end of file -- cgit