Files
TAIGA-OV/src/main/java/com/sosnitzka/ztic_addon/Blocks.java

111 lines
8.3 KiB
Java

package com.sosnitzka.ztic_addon;
import com.google.common.base.Joiner;
import com.sosnitzka.ztic_addon.blocks.BlockLignite;
import com.sosnitzka.ztic_addon.blocks.BlockTiberium;
import com.sosnitzka.ztic_addon.generic.BasicBlockGround;
import com.sosnitzka.ztic_addon.generic.BasicBlock;
import com.sosnitzka.ztic_addon.util.Utils;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraftforge.oredict.OreDictionary;
import org.apache.commons.lang3.StringUtils;
import java.lang.reflect.Field;
import java.util.Arrays;
import static com.sosnitzka.ztic_addon.util.Utils.PREFIX_BLOCK;
import static com.sosnitzka.ztic_addon.util.Utils.PREFIX_ORE;
public class Blocks {
public static Block basalt = new BasicBlock("basalt", Material.ROCK, 45.0f, 35.0f, 3);
public static Block rottenGround = new BasicBlockGround("rotten_ground", Material.GROUND, 2.0f, 2.0f, 0);
public static Block ligniteOre = new BlockLignite();
public static Block aardiumOre = new BasicBlock("aardium_ore", Material.ROCK, 55.0f, 400.0f, 3, PREFIX_ORE);
public static Block adamantiteOre = new BasicBlock("adamantite_ore", Material.ROCK, 80.0f, 1000.0f, 4, PREFIX_ORE);
public static Block arcaniteOre = new BasicBlock("arcanite_ore", Material.ROCK, 23.0f, 25.0f, 2, PREFIX_ORE);
public static Block axiidianOre = new BasicBlock("axiidian_ore", Material.ROCK, 13.0f, 13.0f, 3, PREFIX_ORE);
public static Block bismuthOre = new BasicBlock("bismuth_ore", Material.ROCK, 8.0f, 8.0f, 1, PREFIX_ORE);
public static Block eterniteOre = new BasicBlock("eternite_ore", Material.ROCK, 24.0f, 25.0f, 3, PREFIX_ORE);
public static Block ignititeOre = new BasicBlock("ignitite_ore", Material.ROCK, 23.0f, 25.0f, 3, PREFIX_ORE);
public static Block karmesineOre = new BasicBlock("karmesine_ore", Material.ROCK, 13.0f, 15.0f, 1, PREFIX_ORE);
public static Block meteoriteOre = new BasicBlock("meteorite_ore", Material.ROCK, 60.0f, 500.0f, 4, PREFIX_ORE);
public static Block mindoriteOre = new BasicBlock("mindorite_ore", Material.ROCK, 12.0f, 12.0f, 2, PREFIX_ORE);
public static Block mythrilOre = new BasicBlock("mythril_ore", Material.ROCK, 25.0f, 25.0f, 4, PREFIX_ORE);
public static Block palladiumOre = new BasicBlock("palladium_ore", Material.ROCK, 25.0f, 25.0f, 3, PREFIX_ORE);
public static Block prometheumOre = new BasicBlock("prometheum_ore", Material.ROCK, 35.0f, 35.0f, 4, 0.25f, PREFIX_ORE);
public static Block slagironOre = new BasicBlock("slagiron_ore", Material.ROCK, 3.0f, 5.0f, 1);
public static Block slaggoldOre = new BasicBlock("slaggold_ore", Material.ROCK, 3.0f, 5.0f, 1);
public static Block tiberiumOre = new BlockTiberium();
public static Block vibraniumOre = new BasicBlock("vibranium_ore", Material.ROCK, 70.0f, 800.0f, 4, PREFIX_ORE);
public static Block yrdeanOre = new BasicBlock("yrdean_ore", Material.ROCK, 13.0f, 15.0f, 3, PREFIX_ORE);
public static Block aardiumBlock = new BasicBlock("aardium_block", Material.ROCK, 55.0f, 400.0f, 3, PREFIX_BLOCK);
public static Block adamantiteBlock = new BasicBlock("adamantite_block", Material.ROCK, 80.0f, 1000.0f, 4, PREFIX_BLOCK);
public static Block arcaniteBlock = new BasicBlock("arcanite_block", Material.ROCK, 23.0f, 25.0f, 2, PREFIX_BLOCK);
public static Block axiidianBlock = new BasicBlock("axiidian_block", Material.ROCK, 13.0f, 13.0f, 3, PREFIX_BLOCK);
public static Block bismuthBlock = new BasicBlock("bismuth_block", Material.ROCK, 8.0f, 8.0f, 1, PREFIX_BLOCK);
public static Block eterniteBlock = new BasicBlock("eternite_block", Material.ROCK, 24.0f, 25.0f, 3, PREFIX_BLOCK);
public static Block ignititeBlock = new BasicBlock("ignitite_block", Material.ROCK, 23.0f, 25.0f, 3, PREFIX_BLOCK);
public static Block karmesineBlock = new BasicBlock("karmesine_block", Material.ROCK, 13.0f, 15.0f, 1, PREFIX_BLOCK);
public static Block meteoriteBlock = new BasicBlock("meteorite_block", Material.ROCK, 60.0f, 500.0f, 4, PREFIX_BLOCK);
public static Block mindoriteBlock = new BasicBlock("mindorite_block", Material.ROCK, 12.0f, 12.0f, 2, PREFIX_BLOCK);
public static Block mythrilBlock = new BasicBlock("mythril_block", Material.ROCK, 25.0f, 25.0f, 4, PREFIX_BLOCK);
public static Block palladiumBlock = new BasicBlock("palladium_block", Material.ROCK, 25.0f, 25.0f, 3, PREFIX_BLOCK);
public static Block prometheumBlock = new BasicBlock("prometheum_block", Material.ROCK, 35.0f, 35.0f, 4, 0.25f, PREFIX_BLOCK);
public static Block tiberiumBlock = new BasicBlock("tiberium_block", Material.ROCK, 30.0f, 30.0f, 3, 1f, PREFIX_BLOCK);
public static Block vibraniumBlock = new BasicBlock("vibranium_block", Material.ROCK, 70.0f, 800.0f, 4, PREFIX_BLOCK);
public static Block yrdeanBlock = new BasicBlock("yrdean_block", Material.ROCK, 13.0f, 15.0f, 3, PREFIX_BLOCK);
public static Block astriumBlock = new BasicBlock("astrium_block", Material.ROCK, 55.0f, 400.0f, 3, PREFIX_BLOCK);
public static Block blazingXylititeBlock = new BasicBlock("blazing_xylitite_block", Material.ROCK, 80.0f, 1000.0f, 4, PREFIX_BLOCK);
public static Block cryptogenBlock = new BasicBlock("cryptogen_block", Material.ROCK, 23.0f, 25.0f, 2, PREFIX_BLOCK);
public static Block dysprosaniumBlock = new BasicBlock("dysprosanium_block", Material.ROCK, 13.0f, 13.0f, 3, PREFIX_BLOCK);
public static Block fractoryteBlock = new BasicBlock("fractoryte_block", Material.ROCK, 8.0f, 8.0f, 1, PREFIX_BLOCK);
public static Block imperomiteBlock = new BasicBlock("imperomite_block", Material.ROCK, 24.0f, 25.0f, 3, PREFIX_BLOCK);
public static Block instableDyoniteBlock = new BasicBlock("instable_dyonite_block", Material.ROCK, 23.0f, 25.0f, 3, PREFIX_BLOCK);
public static Block instableNitroniteBlock = new BasicBlock("instable_nitronite_block", Material.ROCK, 13.0f, 15.0f, 1, PREFIX_BLOCK);
public static Block instablePolyniumBlock = new BasicBlock("instable_polynium_block", Material.ROCK, 60.0f, 500.0f, 4, PREFIX_BLOCK);
public static Block instablePrysociteBlock = new BasicBlock("instable_prysocite_block", Material.ROCK, 12.0f, 12.0f, 2, PREFIX_BLOCK);
public static Block proxideumBlock = new BasicBlock("proxideum_block", Material.ROCK, 25.0f, 25.0f, 4, PREFIX_BLOCK);
public static Block radiantPliniumBlock = new BasicBlock("radiant_plinium_block", Material.ROCK, 25.0f, 25.0f, 3, PREFIX_BLOCK);
public static Block refractiveBysmuidBlock = new BasicBlock("refractive_bysmuid_block", Material.ROCK, 35.0f, 35.0f, 4, 0.25f, PREFIX_BLOCK);
public static Block seismodiumBlock = new BasicBlock("seismodium_block", Material.ROCK, 30.0f, 30.0f, 3, 1f, PREFIX_BLOCK);
public static Block terramiteBlock = new BasicBlock("terramite_block", Material.ROCK, 70.0f, 800.0f, 4, PREFIX_BLOCK);
public static Block ultraniteBlock = new BasicBlock("ultranite_block", Material.ROCK, 13.0f, 15.0f, 3, PREFIX_BLOCK);
public static void register() {
Field[] declaredFields = Blocks.class.getDeclaredFields();
for (Field field : declaredFields) {
if (java.lang.reflect.Modifier.isStatic(field.getModifiers())) {
Class<?> targetType = field.getType();
try {
Block block = (Block) field.get(targetType);
Utils.registerBlockWithItem(block);
if (block instanceof BasicBlock) {
if (((BasicBlock) block).isOreDict()) {
String oreDictName;
String[] nameParts = block.getUnlocalizedName().replace("tile.", "").split("_");
System.out.println();
if (nameParts.length > 2) {
oreDictName = Joiner.on("_").join(Arrays.copyOfRange(nameParts, 0, nameParts.length - 1));
} else {
oreDictName = nameParts[0];
}
OreDictionary.registerOre(((BasicBlock) block).getOreDictPrefix() + StringUtils.capitalize(oreDictName), block);
System.out.println(String.format("Registered OreDict: %s", "ore" + StringUtils.capitalize(oreDictName)));
}
}
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
}
}