bauxite, achievement stuff, fixes
@ -1,6 +1,6 @@
|
||||
mod_version=1.0.27
|
||||
# Empty build number makes a release type
|
||||
mod_build_number=4607
|
||||
mod_build_number=4613
|
||||
|
||||
credits=HbMinecraft, rodolphito (explosion algorithms), grangerave (explosion algorithms),\
|
||||
\ Hoboy (textures, models), Doctor17 (russian localization), Drillgon200 (effects, models, porting),\
|
||||
|
||||
@ -7,7 +7,8 @@ public class BlockEnums {
|
||||
ASBESTOS,
|
||||
HEMATITE,
|
||||
MALACHITE,
|
||||
LIMESTONE
|
||||
LIMESTONE,
|
||||
BAUXITE
|
||||
}
|
||||
|
||||
public static enum EnumBiomeType {
|
||||
|
||||
@ -33,14 +33,20 @@ public class WorldConfig {
|
||||
public static int bedrockOilSpawn = 200;
|
||||
public static int meteoriteSpawn = 500;
|
||||
|
||||
public static int bedrockIronSpawn = 200;
|
||||
public static int bedrockIronSpawn = 100;
|
||||
public static int bedrockCopperSpawn = 200;
|
||||
public static int bedrockBoraxSpawn = 300;
|
||||
public static int bedrockAsbestosSpawn = 300;
|
||||
public static int bedrockNiobiumSpawn = 300;
|
||||
public static int bedrockTitaniumSpawn = 400;
|
||||
public static int bedrockTungstenSpawn = 300;
|
||||
public static int bedrockGoldSpawn = 500;
|
||||
public static int bedrockBoraxSpawn = 50;
|
||||
public static int bedrockAsbestosSpawn = 50;
|
||||
public static int bedrockNiobiumSpawn = 50;
|
||||
public static int bedrockTitaniumSpawn = 100;
|
||||
public static int bedrockTungstenSpawn = 100;
|
||||
public static int bedrockGoldSpawn = 50;
|
||||
public static int bedrockUraniumSpawn = 35;
|
||||
public static int bedrockThoriumSpawn = 50;
|
||||
public static int bedrockCoalSpawn = 200;
|
||||
public static int bedrockNiterSpawn = 50;
|
||||
public static int bedrockFluoriteSpawn = 50;
|
||||
public static int bedrockRedstoneSpawn = 50;
|
||||
|
||||
public static int ironClusterSpawn = 4;
|
||||
public static int titaniumClusterSpawn = 2;
|
||||
@ -133,14 +139,20 @@ public class WorldConfig {
|
||||
bedrockOilSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.22_bedrockOilSpawnRate", "Spawns a bedrock oil node every nTH chunk", 200);
|
||||
meteoriteSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.23_meteoriteSpawnRate", "Spawns a fallen meteorite every nTH chunk", 200);
|
||||
|
||||
bedrockIronSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B00_bedrockIronSpawn", "Spawns a bedrock iron deposit every nTH chunk", 200);
|
||||
bedrockCopperSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B01_bedrockCopperSpawn", "Spawns a bedrock copper deposit every nTH chunk", 200);
|
||||
bedrockBoraxSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B02_bedrockBoraxSpawn", "Spawns a bedrock borax deposit every nTH chunk", 300);
|
||||
bedrockAsbestosSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B03_bedrockAsbestosSpawn", "Spawns a bedrock asbestos deposit every nTH chunk", 300);
|
||||
bedrockNiobiumSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B04_bedrockNiobiumSpawn", "Spawns a bedrock niobium deposit every nTH chunk", 300);
|
||||
bedrockTitaniumSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B05_bedrockTitaniumSpawn", "Spawns a bedrock titanium deposit every nTH chunk", 500);
|
||||
bedrockTungstenSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B06_bedrockTungstenSpawn", "Spawns a bedrock tungsten deposit every nTH chunk", 300);
|
||||
bedrockGoldSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B07_bedrockGoldSpawn", "Spawns a bedrock gold deposit every nTH chunk", 500);
|
||||
bedrockIronSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B00_bedrockIronWeight", "Spawn weight for iron bedrock ore", 100);
|
||||
bedrockCopperSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B01_bedrockCopperWeight", "Spawn weight for copper bedrock ore", 200);
|
||||
bedrockBoraxSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B02_bedrockBoraxWeight", "Spawn weight for borax bedrock ore", 50);
|
||||
bedrockAsbestosSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B03_bedrockAsbestosWeight", "Spawn weight for asbestos bedrock ore", 50);
|
||||
bedrockNiobiumSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B04_bedrockNiobiumWeight", "Spawn weight for niobium bedrock ore", 50);
|
||||
bedrockTitaniumSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B05_bedrockTitaniumWeight", "Spawn weight for titanium bedrock ore", 100);
|
||||
bedrockTungstenSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B06_bedrockTungstenWeight", "Spawn weight for tungsten bedrock ore", 100);
|
||||
bedrockGoldSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B07_bedrockGoldWeight", "Spawn weight for gold bedrock ore", 50);
|
||||
bedrockUraniumSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B08_bedrockUraniumWeight", "Spawn weight for uranium bedrock ore", 35);
|
||||
bedrockThoriumSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B09_bedrockThoriumWeight", "Spawn weight for thorium bedrock ore", 50);
|
||||
bedrockCoalSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B10_bedrockCoalWeight", "Spawn weight for coal bedrock ore", 200);
|
||||
bedrockNiterSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B11_bedrockNiterWeight", "Spawn weight for niter bedrock ore", 50);
|
||||
bedrockFluoriteSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B12_bedrockFluoriteWeight", "Spawn weight for fluorite bedrock ore", 50);
|
||||
bedrockRedstoneSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.B13_bedrockRedstoneWeight", "Spawn weight for redstone bedrock ore", 50);
|
||||
|
||||
ironClusterSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.C00_ironClusterSpawn", "Amount of iron cluster veins per chunk", 4);
|
||||
titaniumClusterSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.C01_titaniumClusterSpawn", "Amount of titanium cluster veins per chunk", 2);
|
||||
|
||||
@ -454,6 +454,10 @@ public class MineralRecipes {
|
||||
add9To1(DictFrame.fromOne(ModItems.ore_byproduct, EnumByproduct.B_SULFUR), new ItemStack(ModItems.sulfur));
|
||||
add9To1(DictFrame.fromOne(ModItems.ore_byproduct, EnumByproduct.B_CALCIUM), new ItemStack(ModItems.powder_calcium));
|
||||
add9To1(DictFrame.fromOne(ModItems.ore_byproduct, EnumByproduct.B_BISMUTH), new ItemStack(ModItems.powder_bismuth));
|
||||
add9To1(DictFrame.fromOne(ModItems.ore_byproduct, EnumByproduct.B_RADIUM), new ItemStack(ModItems.powder_ra226));
|
||||
add9To1(DictFrame.fromOne(ModItems.ore_byproduct, EnumByproduct.B_TECHNETIUM), new ItemStack(ModItems.billet_technetium));
|
||||
add9To1(DictFrame.fromOne(ModItems.ore_byproduct, EnumByproduct.B_POLONIUM), new ItemStack(ModItems.billet_polonium));
|
||||
add9To1(DictFrame.fromOne(ModItems.ore_byproduct, EnumByproduct.B_URANIUM), new ItemStack(ModItems.powder_uranium));
|
||||
}
|
||||
|
||||
//Bundled 1/9 recipes
|
||||
|
||||
@ -78,6 +78,8 @@ public class Gun20GaugeFactory {
|
||||
config.reloadSound = GunConfiguration.RSOUND_SHOTGUN;
|
||||
config.firingSound = "hbm:weapon.revolverShootAlt";
|
||||
config.firingPitch = 0.75F;
|
||||
config.hasSights = true;
|
||||
config.zoomFOV = 0.75F;
|
||||
|
||||
config.name = "win1887";
|
||||
config.manufacturer = EnumGunManufacturer.WINCHESTER;
|
||||
@ -95,6 +97,8 @@ public class Gun20GaugeFactory {
|
||||
config.reloadSound = GunConfiguration.RSOUND_SHOTGUN;
|
||||
config.firingSound = "hbm:weapon.revolverShootAlt";
|
||||
config.firingPitch = 0.75F;
|
||||
config.hasSights = true;
|
||||
config.zoomFOV = 0.75F;
|
||||
|
||||
config.name = "win1887Inox";
|
||||
config.manufacturer = EnumGunManufacturer.WINCHESTER;
|
||||
|
||||
@ -3,6 +3,7 @@ package com.hbm.inventory;
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.util.AchievementHandler;
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.inventory.IInventory;
|
||||
@ -27,40 +28,7 @@ public class SlotCraftingOutput extends Slot {
|
||||
|
||||
//ugly but nothing to be done
|
||||
public static void checkAchievements(EntityPlayer player, ItemStack stack) {
|
||||
Item item = stack.getItem();
|
||||
|
||||
if(item == Item.getItemFromBlock(ModBlocks.machine_chemplant))
|
||||
player.triggerAchievement(MainRegistry.achChemplant);
|
||||
if(item == Item.getItemFromBlock(ModBlocks.concrete_smooth) || item == Item.getItemFromBlock(ModBlocks.concrete_asbestos))
|
||||
player.triggerAchievement(MainRegistry.achConcrete);
|
||||
if(item == ModItems.ingot_polymer)
|
||||
player.triggerAchievement(MainRegistry.achPolymer);
|
||||
if(item == ModItems.ingot_desh)
|
||||
player.triggerAchievement(MainRegistry.achDesh);
|
||||
if(item == ModItems.gem_tantalium)
|
||||
player.triggerAchievement(MainRegistry.achTantalum);
|
||||
if(item == Item.getItemFromBlock(ModBlocks.machine_gascent))
|
||||
player.triggerAchievement(MainRegistry.achGasCent);
|
||||
if(item == Item.getItemFromBlock(ModBlocks.machine_centrifuge))
|
||||
player.triggerAchievement(MainRegistry.achCentrifuge);
|
||||
if(item == ModItems.ingot_schrabidium || item == ModItems.nugget_schrabidium)
|
||||
player.triggerAchievement(MainRegistry.achSchrab);
|
||||
if(item == Item.getItemFromBlock(ModBlocks.machine_crystallizer))
|
||||
player.triggerAchievement(MainRegistry.achAcidizer);
|
||||
if(item == Item.getItemFromBlock(ModBlocks.machine_silex))
|
||||
player.triggerAchievement(MainRegistry.achSILEX);
|
||||
if(item == ModItems.nugget_technetium)
|
||||
player.triggerAchievement(MainRegistry.achTechnetium);
|
||||
if(item == Item.getItemFromBlock(ModBlocks.watz_core))
|
||||
player.triggerAchievement(MainRegistry.achWatz);
|
||||
if(item == ModItems.nugget_bismuth)
|
||||
player.triggerAchievement(MainRegistry.achBismuth);
|
||||
if(item == ModItems.nugget_am241 || item == ModItems.nugget_am242)
|
||||
player.triggerAchievement(MainRegistry.achBreeding);
|
||||
if(item == ModItems.missile_nuclear || item == ModItems.missile_nuclear_cluster || item == ModItems.missile_doomsday || item == ModItems.mp_warhead_10_nuclear || item == ModItems.mp_warhead_10_nuclear_large || item == ModItems.mp_warhead_15_nuclear || item == ModItems.mp_warhead_15_nuclear_shark || item == ModItems.mp_warhead_15_boxcar)
|
||||
player.triggerAchievement(MainRegistry.achRedBalloons);
|
||||
if(item == Item.getItemFromBlock(ModBlocks.struct_iter_core))
|
||||
player.triggerAchievement(MainRegistry.achFusion);
|
||||
AchievementHandler.fire(player, stack);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -133,6 +133,7 @@ public class Fluids {
|
||||
public static FluidType FISHOIL;
|
||||
public static FluidType SUNFLOWEROIL;
|
||||
public static FluidType NITROGLYCERIN;
|
||||
public static FluidType REDMUD;
|
||||
|
||||
private static final HashMap<Integer, FluidType> idMapping = new HashMap();
|
||||
private static final HashMap<String, FluidType> nameMapping = new HashMap();
|
||||
@ -276,7 +277,8 @@ public class Fluids {
|
||||
ESTRADIOL = new FluidType("ESTRADIOL", 0xCDD5D8, 0, 0, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
FISHOIL = new FluidType("FISHOIL", 0x4B4A45, 0, 1, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
SUNFLOWEROIL = new FluidType("SUNFLOWEROIL", 0xCBAD45, 0, 1, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
NITROGLYCERIN = new FluidType(112, "NITROGLYCERIN", 0x92ACA6, 0, 4, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
NITROGLYCERIN = new FluidType("NITROGLYCERIN", 0x92ACA6, 0, 4, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
REDMUD = new FluidType(113, "REDMUD", 0xD85638, 3, 0, 4, EnumSymbol.NONE).addTraits(LIQUID, VISCOUS, LEADCON, new FT_Corrosive(60), new FT_Flammable(1_000));
|
||||
|
||||
// ^ ^ ^ ^ ^ ^ ^ ^
|
||||
//ADD NEW FLUIDS HERE
|
||||
@ -384,6 +386,7 @@ public class Fluids {
|
||||
metaOrder.add(PAIN);
|
||||
metaOrder.add(DEATH);
|
||||
metaOrder.add(WATZ);
|
||||
metaOrder.add(REDMUD);
|
||||
metaOrder.add(EGG);
|
||||
metaOrder.add(CHOLESTEROL);
|
||||
//solutions and working fluids
|
||||
@ -415,6 +418,7 @@ public class Fluids {
|
||||
MUSTARDGAS.addTraits(new FT_Toxin().addEntry(new ToxinDirectDamage(ModDamageSource.cloud, 4F, 10, HazardClass.GAS_CORROSIVE, false))
|
||||
.addEntry(new ToxinEffects(HazardClass.GAS_CORROSIVE, true).add(new PotionEffect(Potion.wither.id, 100, 1), new PotionEffect(Potion.confusion.id, 100, 0))));
|
||||
ESTRADIOL.addTraits(new FT_Toxin().addEntry(new ToxinEffects(HazardClass.PARTICLE_FINE, false).add(new PotionEffect(HbmPotion.death.id, 60 * 60 * 20, 0))));
|
||||
REDMUD.addTraits(new FT_Toxin().addEntry(new ToxinEffects(HazardClass.GAS_CORROSIVE, false).add(new PotionEffect(Potion.wither.id, 30 * 20, 2))));
|
||||
|
||||
double eff_steam_boil = 1.0D;
|
||||
double eff_steam_heatex = 0.25D;
|
||||
|
||||
@ -56,6 +56,7 @@ public class CokerRecipes extends SerializableRecipe {
|
||||
registerSFAuto(WOODOIL, 340_000L, new ItemStack(Items.coal, 1, 1), GAS_COKER);
|
||||
|
||||
registerRecipe(WATZ, 4_000, new ItemStack(ModItems.ingot_mud, 4), null);
|
||||
registerRecipe(REDMUD, 1_000, new ItemStack(Items.iron_ingot, 2), new FluidStack(MERCURY, 50));
|
||||
registerRecipe(BITUMEN, 16_000, DictFrame.fromOne(ModItems.coke, EnumCokeType.PETROLEUM), new FluidStack(OIL_COKER, 1_600));
|
||||
registerRecipe(LUBRICANT, 12_000, DictFrame.fromOne(ModItems.coke, EnumCokeType.PETROLEUM), new FluidStack(OIL_COKER, 1_200));
|
||||
}
|
||||
|
||||
@ -9,6 +9,8 @@ import static com.hbm.inventory.OreDictManager.*;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.google.gson.JsonObject;
|
||||
import com.google.gson.stream.JsonWriter;
|
||||
import com.hbm.blocks.BlockEnums.EnumStoneType;
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.inventory.FluidStack;
|
||||
import com.hbm.inventory.OreDictManager.DictFrame;
|
||||
import com.hbm.inventory.RecipesCommon.AStack;
|
||||
@ -43,6 +45,7 @@ public class CombinationRecipes extends SerializableRecipe {
|
||||
|
||||
recipes.put(CINNABAR.crystal(), new Pair(new ItemStack(ModItems.sulfur), new FluidStack(Fluids.MERCURY, 100)));
|
||||
recipes.put(new ComparableStack(Items.glowstone_dust), new Pair(new ItemStack(ModItems.sulfur), new FluidStack(Fluids.CHLORINE, 50)));
|
||||
recipes.put(new ComparableStack(DictFrame.fromOne(ModBlocks.stone_resource, EnumStoneType.BAUXITE)), new Pair(new ItemStack(ModItems.ingot_aluminium, 2), new FluidStack(Fluids.REDMUD, 250)));
|
||||
|
||||
recipes.put(KEY_LOG, new Pair(new ItemStack(Items.coal, 1 ,1), new FluidStack(Fluids.WOODOIL, 250)));
|
||||
recipes.put(KEY_SAPLING, new Pair(null, new FluidStack(Fluids.WOODOIL, 50)));
|
||||
|
||||
@ -67,6 +67,7 @@ public class SolidificationRecipes extends SerializableRecipe {
|
||||
registerRecipe(SALIENT, 1280, new ItemStack(ModItems.bio_wafer, 8)); //4 (food val) * 2 (sat mod) * 2 (constant) * 10 (quanta) * 8 (batch size)
|
||||
registerRecipe(ENDERJUICE, 100, Items.ender_pearl);
|
||||
registerRecipe(WATZ, 1000, ModItems.ingot_mud);
|
||||
registerRecipe(REDMUD, 1000, Items.iron_ingot);
|
||||
|
||||
registerRecipe(OIL, SF_OIL, DictFrame.fromOne(ModItems.oil_tar, EnumTarType.CRUDE));
|
||||
registerRecipe(CRACKOIL, SF_CRACK, DictFrame.fromOne(ModItems.oil_tar, EnumTarType.CRACK));
|
||||
|
||||
@ -40,4 +40,16 @@ public class ItemEnums {
|
||||
ROPE,
|
||||
MUSTARDWILLOW
|
||||
}
|
||||
|
||||
public static enum EnumAchievementType {
|
||||
GOFISH,
|
||||
ACID,
|
||||
BALLS,
|
||||
DIGAMMASEE,
|
||||
DIGAMMAFEEL,
|
||||
DIGAMMAKNOW,
|
||||
DIGAMMAKAUAIMOHO,
|
||||
DIGAMMAUPONTOP,
|
||||
DIGAMMAFOROURRIGHT
|
||||
}
|
||||
}
|
||||
|
||||
@ -2436,18 +2436,13 @@ public class ModItems {
|
||||
public static Item nothing;
|
||||
public static Item void_anim;
|
||||
|
||||
public static Item achievement_icon;
|
||||
public static Item bob_metalworks;
|
||||
public static Item bob_assembly;
|
||||
public static Item bob_chemistry;
|
||||
public static Item bob_oil;
|
||||
public static Item bob_nuclear;
|
||||
|
||||
public static Item digamma_see;
|
||||
public static Item digamma_feel;
|
||||
public static Item digamma_know;
|
||||
public static Item digamma_kauai_moho;
|
||||
public static Item digamma_up_on_top;
|
||||
|
||||
public static Item mysteryshovel;
|
||||
public static Item memory;
|
||||
|
||||
@ -5452,16 +5447,12 @@ public class ModItems {
|
||||
void_anim = new Item().setUnlocalizedName("void_anim").setTextureName(RefStrings.MODID + ":void_anim");
|
||||
|
||||
|
||||
achievement_icon = new ItemEnumMulti(ItemEnums.EnumAchievementType.class, true, true).setUnlocalizedName("achievement_icon");
|
||||
bob_metalworks = new Item().setUnlocalizedName("bob_metalworks").setTextureName(RefStrings.MODID + ":bob_metalworks");
|
||||
bob_assembly = new Item().setUnlocalizedName("bob_assembly").setTextureName(RefStrings.MODID + ":bob_assembly");
|
||||
bob_chemistry = new Item().setUnlocalizedName("bob_chemistry").setTextureName(RefStrings.MODID + ":bob_chemistry");
|
||||
bob_oil = new Item().setUnlocalizedName("bob_oil").setTextureName(RefStrings.MODID + ":bob_oil");
|
||||
bob_nuclear = new Item().setUnlocalizedName("bob_nuclear").setTextureName(RefStrings.MODID + ":bob_nuclear");
|
||||
digamma_see = new Item().setUnlocalizedName("digamma_see").setTextureName(RefStrings.MODID + ":digamma_see");
|
||||
digamma_feel = new Item().setUnlocalizedName("digamma_feel").setTextureName(RefStrings.MODID + ":digamma_feel");
|
||||
digamma_know = new Item().setUnlocalizedName("digamma_know").setTextureName(RefStrings.MODID + ":digamma_know");
|
||||
digamma_kauai_moho = new Item().setUnlocalizedName("digamma_kauai_moho").setTextureName(RefStrings.MODID + ":digamma_kauai_moho");
|
||||
digamma_up_on_top = new Item().setUnlocalizedName("digamma_up_on_top").setTextureName(RefStrings.MODID + ":digamma_up_on_top");
|
||||
|
||||
mysteryshovel = new ItemMS().setUnlocalizedName("mysteryshovel").setFull3D().setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cursed_shovel");
|
||||
memory = new ItemBattery(Long.MAX_VALUE / 100L, 100000000000000L, 100000000000000L).setUnlocalizedName("memory").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":mo8_anim");
|
||||
@ -8055,16 +8046,12 @@ public class ModItems {
|
||||
GameRegistry.registerItem(ln2_10, ln2_10.getUnlocalizedName());
|
||||
GameRegistry.registerItem(nothing, nothing.getUnlocalizedName());
|
||||
GameRegistry.registerItem(void_anim, void_anim.getUnlocalizedName());
|
||||
GameRegistry.registerItem(achievement_icon, achievement_icon.getUnlocalizedName());
|
||||
GameRegistry.registerItem(bob_metalworks, bob_metalworks.getUnlocalizedName());
|
||||
GameRegistry.registerItem(bob_assembly, bob_assembly.getUnlocalizedName());
|
||||
GameRegistry.registerItem(bob_chemistry, bob_chemistry.getUnlocalizedName());
|
||||
GameRegistry.registerItem(bob_oil, bob_oil.getUnlocalizedName());
|
||||
GameRegistry.registerItem(bob_nuclear, bob_nuclear.getUnlocalizedName());
|
||||
GameRegistry.registerItem(digamma_see, digamma_see.getUnlocalizedName());
|
||||
GameRegistry.registerItem(digamma_feel, digamma_feel.getUnlocalizedName());
|
||||
GameRegistry.registerItem(digamma_know, digamma_know.getUnlocalizedName());
|
||||
GameRegistry.registerItem(digamma_kauai_moho, digamma_kauai_moho.getUnlocalizedName());
|
||||
GameRegistry.registerItem(digamma_up_on_top, digamma_up_on_top.getUnlocalizedName());
|
||||
GameRegistry.registerItem(mysteryshovel, mysteryshovel.getUnlocalizedName());
|
||||
GameRegistry.registerItem(memory, memory.getUnlocalizedName());
|
||||
|
||||
|
||||
@ -92,7 +92,9 @@ public class ItemBedrockOre extends ItemEnumMulti {
|
||||
NIOBIUM("Niobium", 0xAF58D8, B_IRON, B_IRON, B_IRON), //iron in columbite, often found along tantalite
|
||||
TITANIUM("Titanium", 0xF2EFE2, B_SILICON, B_CALCIUM, B_ALUMINIUM), //titanite is titanium + calcium + silicon with traces of iron and aluminium
|
||||
TUNGSTEN("Tungsten", 0x2C293C, B_LEAD, B_IRON, B_BISMUTH), //ferberite has iron, raspite has lead, russelite is bismuth tungsten
|
||||
GOLD("Gold", 0xF9D738, B_LEAD, B_COPPER, B_BISMUTH); //occurs with copper, lead and rare bismuthide
|
||||
GOLD("Gold", 0xF9D738, B_LEAD, B_COPPER, B_BISMUTH), //occurs with copper, lead and rare bismuthide
|
||||
URANIUM("Uranium", 0x868D82, B_LEAD, B_RADIUM, B_POLONIUM), //uranium and its decay products
|
||||
THORIUM("Thorium", 0x7D401D, B_SILICON, B_URANIUM, B_TECHNETIUM); //thorium occours with uraninite and decay products
|
||||
|
||||
public String oreName;
|
||||
public int color;
|
||||
|
||||
@ -31,7 +31,11 @@ public class ItemByproduct extends ItemEnumMulti {
|
||||
B_ALUMINIUM(0xE8F2F9),
|
||||
B_SULFUR(0xEAD377),
|
||||
B_CALCIUM(0xCFCFA6),
|
||||
B_BISMUTH(0x8D8577);
|
||||
B_BISMUTH(0x8D8577),
|
||||
B_RADIUM(0xE9FAF6),
|
||||
B_TECHNETIUM(0xCADFDF),
|
||||
B_POLONIUM(0xCADFDF),
|
||||
B_URANIUM(0x868D82);
|
||||
|
||||
public int color;
|
||||
|
||||
|
||||
@ -63,6 +63,10 @@ public class ItemBoltgun extends Item implements IAnimatedItem {
|
||||
player.inventory.decrStackSize(i, 1);
|
||||
player.inventoryContainer.detectAndSendChanges();
|
||||
EntityDamageUtil.attackEntityFromIgnoreIFrame(entity, DamageSource.causePlayerDamage(player).setDamageBypassesArmor(), 10F);
|
||||
|
||||
if(!entity.isEntityAlive() && entity instanceof EntityPlayer) {
|
||||
((EntityPlayer) entity).triggerAchievement(MainRegistry.achGoFish);
|
||||
}
|
||||
|
||||
NBTTagCompound data = new NBTTagCompound();
|
||||
data.setString("type", "vanillaExt");
|
||||
|
||||
@ -11,6 +11,10 @@ import com.google.common.collect.Multimap;
|
||||
import com.google.common.collect.Sets;
|
||||
import com.hbm.handler.ToolAbility;
|
||||
import com.hbm.handler.ToolAbility.*;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.packet.PacketDispatcher;
|
||||
import com.hbm.packet.PlayerInformPacket;
|
||||
import com.hbm.util.ChatBuilder;
|
||||
import com.hbm.handler.WeaponAbility;
|
||||
|
||||
import api.hbm.item.IDepthRockTool;
|
||||
@ -22,14 +26,12 @@ import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.SharedMonsterAttributes;
|
||||
import net.minecraft.entity.ai.attributes.AttributeModifier;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.entity.player.EntityPlayerMP;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.item.EnumRarity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.item.ItemTool;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.util.ChatComponentText;
|
||||
import net.minecraft.util.ChatComponentTranslation;
|
||||
import net.minecraft.util.ChatStyle;
|
||||
import net.minecraft.util.EnumChatFormatting;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
@ -239,18 +241,17 @@ public class ItemToolAbility extends ItemTool implements IItemAbility, IDepthRoc
|
||||
|
||||
while(getCurrentAbility(stack) != null && !getCurrentAbility(stack).isAllowed()) {
|
||||
|
||||
player.addChatComponentMessage(new ChatComponentText("[Ability ").appendSibling(new ChatComponentTranslation(getCurrentAbility(stack).getName(), new Object[0]))
|
||||
.appendSibling(new ChatComponentText(getCurrentAbility(stack).getExtension() + " is blacklisted!]")).setChatStyle(new ChatStyle().setColor(EnumChatFormatting.RED)));
|
||||
PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(ChatBuilder.start("[Ability ").nextTranslation(getCurrentAbility(stack).getName()).next(getCurrentAbility(stack).getExtension() + " is blacklisted!]").colorAll(EnumChatFormatting.RED).flush(), MainRegistry.proxy.ID_TOOLABILITY), (EntityPlayerMP) player);
|
||||
|
||||
|
||||
i++;
|
||||
setAbility(stack, i % this.breakAbility.size());
|
||||
}
|
||||
|
||||
if(getCurrentAbility(stack) != null) {
|
||||
player.addChatComponentMessage(new ChatComponentText("[Enabled ").appendSibling(new ChatComponentTranslation(getCurrentAbility(stack).getName(), new Object[0]))
|
||||
.appendSibling(new ChatComponentText(getCurrentAbility(stack).getExtension() + "]")).setChatStyle(new ChatStyle().setColor(EnumChatFormatting.YELLOW)));
|
||||
PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(ChatBuilder.start("[Enabled ").nextTranslation(getCurrentAbility(stack).getName()).next(getCurrentAbility(stack).getExtension() + "]").colorAll(EnumChatFormatting.YELLOW).flush(), MainRegistry.proxy.ID_TOOLABILITY), (EntityPlayerMP) player);
|
||||
} else {
|
||||
player.addChatComponentMessage(new ChatComponentText(EnumChatFormatting.GOLD + "[Tool ability deactivated]"));
|
||||
PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(ChatBuilder.start("[Tool ability deactivated]").color(EnumChatFormatting.GOLD).flush(), MainRegistry.proxy.ID_TOOLABILITY), (EntityPlayerMP) player);
|
||||
}
|
||||
|
||||
world.playSoundAtEntity(player, "random.orb", 0.25F, getCurrentAbility(stack) == null ? 0.75F : 1.25F);
|
||||
|
||||
@ -8,14 +8,12 @@ import com.hbm.blocks.generic.BlockMotherOfAllOres;
|
||||
import com.hbm.blocks.generic.BlockNTMFlower.EnumFlowerType;
|
||||
import com.hbm.config.GeneralConfig;
|
||||
import com.hbm.config.WorldConfig;
|
||||
import com.hbm.inventory.FluidStack;
|
||||
import com.hbm.inventory.fluid.Fluids;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.items.special.ItemBedrockOre.EnumBedrockOre;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.saveddata.TomSaveData;
|
||||
import com.hbm.tileentity.machine.storage.TileEntitySafe;
|
||||
import com.hbm.tileentity.machine.storage.TileEntitySoyuzCapsule;
|
||||
import com.hbm.util.WeightedRandomGeneric;
|
||||
import com.hbm.world.dungeon.AncientTomb;
|
||||
import com.hbm.world.dungeon.Antenna;
|
||||
import com.hbm.world.dungeon.ArcticVault;
|
||||
@ -32,6 +30,7 @@ import com.hbm.world.dungeon.Silo;
|
||||
import com.hbm.world.dungeon.Spaceship;
|
||||
import com.hbm.world.dungeon.Vertibird;
|
||||
import com.hbm.world.feature.BedrockOre;
|
||||
import com.hbm.world.feature.BedrockOre.BedrockOreDefinition;
|
||||
import com.hbm.world.feature.DepthDeposit;
|
||||
import com.hbm.world.feature.Dud;
|
||||
import com.hbm.world.feature.Geyser;
|
||||
@ -49,6 +48,7 @@ import net.minecraft.init.Blocks;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.tileentity.TileEntityChest;
|
||||
import net.minecraft.tileentity.TileEntitySkull;
|
||||
import net.minecraft.util.WeightedRandom;
|
||||
import net.minecraft.util.WeightedRandomChestContent;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
@ -154,18 +154,16 @@ public class HbmWorldGen implements IWorldGenerator {
|
||||
DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.aluminiumClusterSpawn, 6, 15, 35, ModBlocks.cluster_aluminium);
|
||||
DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.copperClusterSpawn, 6, 15, 20, ModBlocks.cluster_copper);
|
||||
|
||||
//DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.hematiteSpawn, 10, 4, 80, ModBlocks.stone_resource, EnumStoneType.HEMATITE.ordinal());
|
||||
DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.malachiteSpawn, 10, 6, 40, ModBlocks.stone_resource, EnumStoneType.MALACHITE.ordinal());
|
||||
DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.limestoneSpawn, 12, 25, 30, ModBlocks.stone_resource, EnumStoneType.LIMESTONE.ordinal());
|
||||
|
||||
DungeonToolbox.generateBedrockOreWithChance(world, rand, i, j, EnumBedrockOre.IRON, 1, WorldConfig.bedrockIronSpawn);
|
||||
DungeonToolbox.generateBedrockOreWithChance(world, rand, i, j, EnumBedrockOre.COPPER, 1, WorldConfig.bedrockCopperSpawn);
|
||||
DungeonToolbox.generateBedrockOreWithChance(world, rand, i, j, EnumBedrockOre.BORAX, new FluidStack(Fluids.SULFURIC_ACID, 500), 3, WorldConfig.bedrockBoraxSpawn);
|
||||
DungeonToolbox.generateBedrockOreWithChance(world, rand, i, j, EnumBedrockOre.ASBESTOS, 2, WorldConfig.bedrockAsbestosSpawn);
|
||||
DungeonToolbox.generateBedrockOreWithChance(world, rand, i, j, EnumBedrockOre.NIOBIUM, new FluidStack(Fluids.ACID, 1_000), 2, WorldConfig.bedrockNiobiumSpawn);
|
||||
DungeonToolbox.generateBedrockOreWithChance(world, rand, i, j, EnumBedrockOre.TITANIUM, new FluidStack(Fluids.SULFURIC_ACID, 500), 2, WorldConfig.bedrockTitaniumSpawn);
|
||||
DungeonToolbox.generateBedrockOreWithChance(world, rand, i, j, EnumBedrockOre.TUNGSTEN, new FluidStack(Fluids.ACID, 1_000), 2, WorldConfig.bedrockTungstenSpawn);
|
||||
DungeonToolbox.generateBedrockOreWithChance(world, rand, i, j, EnumBedrockOre.GOLD, 1, WorldConfig.bedrockGoldSpawn);
|
||||
if(rand.nextInt(3) == 0) {
|
||||
WeightedRandomGeneric<BedrockOreDefinition> item = (WeightedRandomGeneric<BedrockOreDefinition>) WeightedRandom.getRandomItem(rand, BedrockOre.weightedOres);
|
||||
BedrockOreDefinition def = item.get();
|
||||
int randPosX = i + rand.nextInt(2) + 8;
|
||||
int randPosZ = j + rand.nextInt(2) + 8;
|
||||
BedrockOre.generate(world, randPosX, randPosZ, def.stack, def.acid, def.color, def.tier);
|
||||
}
|
||||
|
||||
for(int k = 0; k < WorldConfig.randomSpawn; k++) {
|
||||
BlockMotherOfAllOres.shuffleOverride(rand);
|
||||
|
||||
@ -3,7 +3,7 @@ package com.hbm.lib;
|
||||
public class RefStrings {
|
||||
public static final String MODID = "hbm";
|
||||
public static final String NAME = "Hbm's Nuclear Tech Mod";
|
||||
public static final String VERSION = "1.0.27 BETA (4607)";
|
||||
public static final String VERSION = "1.0.27 BETA (4613)";
|
||||
//HBM's Beta Naming Convention:
|
||||
//V T (X)
|
||||
//V -> next release version
|
||||
|
||||
@ -61,6 +61,7 @@ import com.hbm.handler.imc.*;
|
||||
import com.hbm.handler.radiation.ChunkRadiationManager;
|
||||
import com.hbm.hazard.HazardRegistry;
|
||||
import com.hbm.inventory.*;
|
||||
import com.hbm.inventory.OreDictManager.DictFrame;
|
||||
import com.hbm.inventory.fluid.Fluids;
|
||||
import com.hbm.inventory.recipes.*;
|
||||
import com.hbm.inventory.recipes.anvil.AnvilRecipes;
|
||||
@ -69,6 +70,7 @@ import com.hbm.items.ModItems;
|
||||
import com.hbm.items.tool.ItemFertilizer;
|
||||
import com.hbm.items.weapon.ItemGenericGrenade;
|
||||
import com.hbm.items.ItemAmmoEnums.Ammo4Gauge;
|
||||
import com.hbm.items.ItemEnums.EnumAchievementType;
|
||||
import com.hbm.lib.HbmWorld;
|
||||
import com.hbm.lib.Library;
|
||||
import com.hbm.lib.RefStrings;
|
||||
@ -79,6 +81,7 @@ import com.hbm.tileentity.TileMappings;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukeCustom;
|
||||
import com.hbm.tileentity.machine.*;
|
||||
import com.hbm.tileentity.machine.rbmk.RBMKDials;
|
||||
import com.hbm.util.AchievementHandler;
|
||||
import com.hbm.util.ArmorUtil;
|
||||
import com.hbm.util.Compat;
|
||||
import com.hbm.util.StatHelper;
|
||||
@ -187,6 +190,7 @@ public class MainRegistry {
|
||||
public static Achievement achSlimeball;
|
||||
public static Achievement achSulfuric;
|
||||
public static Achievement achWitchtaunter;
|
||||
public static Achievement achGoFish;
|
||||
public static Achievement achNo9;
|
||||
public static Achievement achInferno;
|
||||
public static Achievement bobHidden;
|
||||
@ -657,6 +661,7 @@ public class MainRegistry {
|
||||
achSacrifice = new Achievement("achievement.sacrifice", "sacrifice", -3, 1, ModItems.burnt_bark, null).initIndependentStat().setSpecial().registerStat();
|
||||
achImpossible = new Achievement("achievement.impossible", "impossible", 18, 10, ModItems.nothing, null).initIndependentStat().setSpecial().registerStat();
|
||||
achTOB = new Achievement("achievement.tasteofblood", "tasteofblood", 3, 10, new ItemStack(ModItems.fluid_icon, 1, Fluids.ASCHRAB.getID()), null).initIndependentStat().setSpecial().registerStat();
|
||||
achGoFish = new Achievement("achievement.goFish", "goFish", 5, 10, DictFrame.fromOne(ModItems.achievement_icon, EnumAchievementType.GOFISH), null).initIndependentStat().setSpecial().registerStat();
|
||||
achFreytag = new Achievement("achievement.freytag", "freytag", 0, -4, ModItems.gun_mp40, null).initIndependentStat().setSpecial().registerStat();
|
||||
achPotato = new Achievement("achievement.potato", "potato", -2, -2, ModItems.battery_potatos, null).initIndependentStat().setSpecial().registerStat();
|
||||
achC44 = new Achievement("achievement.c44", "c44", 2, -4, ModItems.gun_revolver_pip, null).initIndependentStat().setSpecial().registerStat();
|
||||
@ -668,8 +673,8 @@ public class MainRegistry {
|
||||
|
||||
achWitchtaunter = new Achievement("achievement.witchtaunter", "witchtaunter", -8, 7, ModItems.ammo_4gauge.stackFromEnum(Ammo4Gauge.VAMPIRE), null).initIndependentStat().setSpecial().registerStat();
|
||||
achNo9 = new Achievement("achievement.no9", "no9", -8, 12, ModItems.no9, null).initIndependentStat().registerStat();
|
||||
achSlimeball = new Achievement("achievement.slimeball", "slimeball", -10, 6, Items.slime_ball, null).initIndependentStat().registerStat();
|
||||
achSulfuric = new Achievement("achievement.sulfuric", "sulfuric", -10, 8, ModItems.bucket_sulfuric_acid, achSlimeball).initIndependentStat().setSpecial().registerStat();
|
||||
achSlimeball = new Achievement("achievement.slimeball", "slimeball", -10, 6, DictFrame.fromOne(ModItems.achievement_icon, EnumAchievementType.ACID), null).initIndependentStat().registerStat();
|
||||
achSulfuric = new Achievement("achievement.sulfuric", "sulfuric", -10, 8, DictFrame.fromOne(ModItems.achievement_icon, EnumAchievementType.BALLS), achSlimeball).initIndependentStat().setSpecial().registerStat();
|
||||
achInferno = new Achievement("achievement.inferno", "inferno", -8, 10, ModItems.canister_napalm, null).initIndependentStat().setSpecial().registerStat();
|
||||
|
||||
bobHidden = new Achievement("achievement.hidden", "hidden", 15, -4, ModItems.gun_dampfmaschine, null).initIndependentStat().registerStat();
|
||||
@ -689,11 +694,11 @@ public class MainRegistry {
|
||||
|
||||
achSomeWounds = new Achievement("achievement.someWounds", "someWounds", -2, 10, ModItems.injector_knife, null).initIndependentStat().registerStat();
|
||||
|
||||
digammaSee = new Achievement("achievement.digammaSee", "digammaSee", -1, 8, ModItems.digamma_see, null).initIndependentStat().registerStat();
|
||||
digammaFeel = new Achievement("achievement.digammaFeel", "digammaFeel", 1, 8, ModItems.digamma_feel, digammaSee).initIndependentStat().registerStat();
|
||||
digammaKnow = new Achievement("achievement.digammaKnow", "digammaKnow", 3, 8, ModItems.digamma_know, digammaFeel).initIndependentStat().registerStat().setSpecial();
|
||||
digammaKauaiMoho = new Achievement("achievement.digammaKauaiMoho", "digammaKauaiMoho", 5, 8, ModItems.digamma_kauai_moho, digammaKnow).initIndependentStat().registerStat().setSpecial();
|
||||
digammaUpOnTop = new Achievement("achievement.digammaUpOnTop", "digammaUpOnTop", 7, 8, ModItems.digamma_up_on_top, digammaKauaiMoho).initIndependentStat().registerStat().setSpecial();
|
||||
digammaSee = new Achievement("achievement.digammaSee", "digammaSee", -1, 8, DictFrame.fromOne(ModItems.achievement_icon, EnumAchievementType.DIGAMMASEE), null).initIndependentStat().registerStat();
|
||||
digammaFeel = new Achievement("achievement.digammaFeel", "digammaFeel", 1, 8, DictFrame.fromOne(ModItems.achievement_icon, EnumAchievementType.DIGAMMAFEEL), digammaSee).initIndependentStat().registerStat();
|
||||
digammaKnow = new Achievement("achievement.digammaKnow", "digammaKnow", 3, 8, DictFrame.fromOne(ModItems.achievement_icon, EnumAchievementType.DIGAMMAKNOW), digammaFeel).initIndependentStat().registerStat().setSpecial();
|
||||
digammaKauaiMoho = new Achievement("achievement.digammaKauaiMoho", "digammaKauaiMoho", 5, 8, DictFrame.fromOne(ModItems.achievement_icon, EnumAchievementType.DIGAMMAKAUAIMOHO), digammaKnow).initIndependentStat().registerStat().setSpecial();
|
||||
digammaUpOnTop = new Achievement("achievement.digammaUpOnTop", "digammaUpOnTop", 7, 8, DictFrame.fromOne(ModItems.achievement_icon, EnumAchievementType.DIGAMMAUPONTOP), digammaKauaiMoho).initIndependentStat().registerStat().setSpecial();
|
||||
|
||||
//progression achieves
|
||||
achBurnerPress = new Achievement("achievement.burnerPress", "burnerPress", 0, 0, new ItemStack(ModBlocks.machine_press), null).initIndependentStat().registerStat();
|
||||
@ -732,6 +737,7 @@ public class MainRegistry {
|
||||
achSacrifice,
|
||||
achImpossible,
|
||||
achTOB,
|
||||
achGoFish,
|
||||
achFreytag,
|
||||
achPotato,
|
||||
achC44,
|
||||
@ -847,6 +853,7 @@ public class MainRegistry {
|
||||
FluidContainerRegistry.register();
|
||||
TileEntityMachineReactorLarge.registerAll();
|
||||
BlockToolConversion.registerRecipes();
|
||||
AchievementHandler.register();
|
||||
|
||||
proxy.registerMissileItems();
|
||||
|
||||
@ -860,9 +867,11 @@ public class MainRegistry {
|
||||
|
||||
new OreCave(ModBlocks.stone_resource, 0).setThreshold(1.5D).setRangeMult(20).setYLevel(30).setMaxRange(20).withFluid(ModBlocks.sulfuric_acid_block); //sulfur
|
||||
new OreCave(ModBlocks.stone_resource, 1).setThreshold(1.75D).setRangeMult(20).setYLevel(25).setMaxRange(20); //asbestos
|
||||
new OreLayer3D(ModBlocks.stone_resource, EnumStoneType.HEMATITE.ordinal());
|
||||
new OreLayer3D(ModBlocks.stone_resource, EnumStoneType.HEMATITE.ordinal()).setScaleH(0.04D).setScaleV(0.25D).setThreshold(230);
|
||||
new OreLayer3D(ModBlocks.stone_resource, EnumStoneType.BAUXITE.ordinal()).setScaleH(0.03D).setScaleV(0.15D).setThreshold(300);
|
||||
//new BiomeCave().setThreshold(1.5D).setRangeMult(20).setYLevel(40).setMaxRange(20);
|
||||
//new OreLayer(Blocks.coal_ore, 0.2F).setThreshold(4).setRangeMult(3).setYLevel(70);
|
||||
BedrockOre.init();
|
||||
|
||||
Compat.handleRailcraftNonsense();
|
||||
SuicideThreadDump.register();
|
||||
@ -1104,6 +1113,11 @@ public class MainRegistry {
|
||||
ignoreMappings.add("hbm:item.gun_revolver_lead_ammo");
|
||||
ignoreMappings.add("hbm:item.gun_revolver_schrabidium_ammo");
|
||||
ignoreMappings.add("hbm:item.tank_waste");
|
||||
ignoreMappings.add("hbm:item.digamma_see");
|
||||
ignoreMappings.add("hbm:item.digamma_feel");
|
||||
ignoreMappings.add("hbm:item.digamma_know");
|
||||
ignoreMappings.add("hbm:item.digamma_kauai_moho");
|
||||
ignoreMappings.add("hbm:item.digamma_up_on_top");
|
||||
|
||||
/// REMAP ///
|
||||
remapItems.put("hbm:item.gadget_explosive8", ModItems.early_explosive_lenses);
|
||||
|
||||
@ -63,6 +63,7 @@ import com.hbm.packet.PlayerInformPacket;
|
||||
import com.hbm.potion.HbmPotion;
|
||||
import com.hbm.saveddata.AuxSavedData;
|
||||
import com.hbm.tileentity.network.RTTYSystem;
|
||||
import com.hbm.util.AchievementHandler;
|
||||
import com.hbm.util.ArmorUtil;
|
||||
import com.hbm.util.ContaminationUtil;
|
||||
import com.hbm.util.EnchantmentUtil;
|
||||
@ -1111,31 +1112,12 @@ public class ModEventHandler {
|
||||
|
||||
@SubscribeEvent
|
||||
public void itemCrafted(PlayerEvent.ItemCraftedEvent e) {
|
||||
|
||||
Item item = e.crafting.getItem();
|
||||
|
||||
if(item == ModItems.gun_mp40) {
|
||||
e.player.addStat(MainRegistry.achFreytag, 1);
|
||||
}
|
||||
if(item == ModItems.piston_selenium || item == ModItems.gun_b92) {
|
||||
e.player.addStat(MainRegistry.achSelenium, 1);
|
||||
}
|
||||
if(item == ModItems.battery_potatos) {
|
||||
e.player.addStat(MainRegistry.achPotato, 1);
|
||||
}
|
||||
if(item == ModItems.gun_revolver_pip) {
|
||||
e.player.addStat(MainRegistry.achC44, 1);
|
||||
}
|
||||
if(item == Item.getItemFromBlock(ModBlocks.machine_press)) {
|
||||
e.player.triggerAchievement(MainRegistry.achBurnerPress);
|
||||
}
|
||||
if(item == ModItems.rbmk_fuel_empty) {
|
||||
e.player.triggerAchievement(MainRegistry.achRBMK);
|
||||
}
|
||||
AchievementHandler.fire(e.player, e.crafting);
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public void itemSmelted(PlayerEvent.ItemSmeltedEvent e) {
|
||||
AchievementHandler.fire(e.player, e.smelting);
|
||||
|
||||
if(!e.player.worldObj.isRemote && e.smelting.getItem() == Items.iron_ingot && e.player.getRNG().nextInt(64) == 0) {
|
||||
|
||||
|
||||
@ -24,8 +24,9 @@ public class ServerProxy {
|
||||
public static final int ID_HUD = 5;
|
||||
public static final int ID_DETONATOR = 6;
|
||||
public static final int ID_FLUID_ID = 7;
|
||||
public static final int ID_GUN_MODE = 8;
|
||||
public static final int ID_GAS_HAZARD = 9;
|
||||
public static final int ID_TOOLABILITY = 8;
|
||||
public static final int ID_GUN_MODE = 9;
|
||||
public static final int ID_GAS_HAZARD = 10;
|
||||
|
||||
public void registerRenderInfo() { }
|
||||
public void registerTileEntitySpecialRenderer() { }
|
||||
|
||||
@ -1,12 +1,9 @@
|
||||
package com.hbm.packet;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.inventory.container.ContainerAnvil;
|
||||
import com.hbm.inventory.recipes.anvil.AnvilRecipes;
|
||||
import com.hbm.inventory.recipes.anvil.AnvilRecipes.AnvilConstructionRecipe;
|
||||
import com.hbm.items.ItemAmmoEnums;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.util.AchievementHandler;
|
||||
import com.hbm.util.InventoryUtil;
|
||||
|
||||
import cpw.mods.fml.common.network.simpleimpl.IMessage;
|
||||
@ -14,7 +11,6 @@ import cpw.mods.fml.common.network.simpleimpl.IMessageHandler;
|
||||
import cpw.mods.fml.common.network.simpleimpl.MessageContext;
|
||||
import io.netty.buffer.ByteBuf;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
|
||||
public class AnvilCraftPacket implements IMessage {
|
||||
|
||||
@ -65,15 +61,7 @@ public class AnvilCraftPacket implements IMessage {
|
||||
|
||||
if(InventoryUtil.doesPlayerHaveAStacks(p, recipe.input, true)) {
|
||||
InventoryUtil.giveChanceStacksToPlayer(p, recipe.output);
|
||||
|
||||
if(recipe.output.get(0).stack.getItem() == Item.getItemFromBlock(ModBlocks.machine_difurnace_off))
|
||||
p.triggerAchievement(MainRegistry.achBlastFurnace);
|
||||
if(recipe.output.get(0).stack.getItem() == Item.getItemFromBlock(ModBlocks.machine_assembler))
|
||||
p.triggerAchievement(MainRegistry.achAssembly);
|
||||
if(recipe.output.get(0).stack.getItem() == ModItems.billet_pu_mix)
|
||||
p.triggerAchievement(MainRegistry.achChicagoPile);
|
||||
if(recipe.output.get(0).stack.getItem() == ModItems.ammo_4gauge && recipe.output.get(0).stack.getItemDamage() == ItemAmmoEnums.Ammo4Gauge.VAMPIRE.ordinal())
|
||||
p.triggerAchievement(MainRegistry.achWitchtaunter);
|
||||
AchievementHandler.fire(p, recipe.output.get(0).stack);
|
||||
|
||||
} else {
|
||||
break;
|
||||
|
||||
@ -67,6 +67,9 @@ public class ItemRenderWeaponFFMaresLeg implements IItemRenderer {
|
||||
GL11.glTranslated(-0.71, 0.375, 0);
|
||||
GL11.glRotated(25, 1, 0, 0);
|
||||
GL11.glRotated(1, 0, 1, 0);
|
||||
GL11.glRotated(-3, 0, 0, 1);
|
||||
GL11.glRotated(0.2, 0, 1, 0);
|
||||
GL11.glTranslated(-0.006, -0.005, 0.4);
|
||||
}
|
||||
|
||||
double[] recoil = HbmAnimations.getRelevantTransformation("LEVER_RECOIL");
|
||||
|
||||
@ -60,6 +60,7 @@ public class TileEntityMachineTurbineGas extends TileEntityMachineBase implement
|
||||
fuelMaxCons.put(Fluids.GAS, 50D); // natgas doesn't burn well so it burns faster to compensate
|
||||
fuelMaxCons.put(Fluids.SYNGAS, 10D); // syngas just fucks
|
||||
fuelMaxCons.put(Fluids.OXYHYDROGEN, 100D); // oxyhydrogen is terrible so it needs to burn a ton for the bare minimum
|
||||
fuelMaxCons.put(Fluids.REFORMGAS, 2.5D); // halved because it's too powerful
|
||||
// default to 5 if not in list
|
||||
}
|
||||
|
||||
@ -121,7 +122,7 @@ public class TileEntityMachineTurbineGas extends TileEntityMachineBase implement
|
||||
ForgeDirection rot = dir.getRotation(ForgeDirection.UP);
|
||||
|
||||
NBTTagCompound data = new NBTTagCompound();
|
||||
data.setLong("power", this.power); //set first to get an unmodified view of how much power was generated before deductions from the net
|
||||
data.setLong("power", Math.min(this.power, this.maxPower)); //set first to get an unmodified view of how much power was generated before deductions from the net
|
||||
|
||||
//do net/battery deductions first...
|
||||
power = Library.chargeItemsFromTE(slots, 0, power, maxPower);
|
||||
@ -141,9 +142,6 @@ public class TileEntityMachineTurbineGas extends TileEntityMachineBase implement
|
||||
//steam
|
||||
this.sendFluid(tanks[3], worldObj, xCoord + dir.offsetZ * 6, yCoord + 1, zCoord - dir.offsetX * 6, rot.getOpposite());
|
||||
|
||||
//if(audio != null) // audio shouldn't even exist serverside
|
||||
// audio.updatePitch((float) (0.45 + 0.05 * rpm / 10));
|
||||
|
||||
data.setInteger("rpm", this.rpm);
|
||||
data.setInteger("temp", this.temp);
|
||||
data.setInteger("state", this.state);
|
||||
|
||||
@ -1,9 +1,12 @@
|
||||
package com.hbm.tileentity.machine.storage;
|
||||
|
||||
import com.hbm.lib.Library;
|
||||
|
||||
import api.hbm.energy.IEnergyConductor;
|
||||
import api.hbm.energy.IEnergyConnector;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
@ -17,7 +20,41 @@ public class TileEntityMachineFENSU extends TileEntityMachineBattery {
|
||||
|
||||
@Override
|
||||
public void updateEntity() {
|
||||
super.updateEntity();
|
||||
|
||||
if(!worldObj.isRemote) {
|
||||
|
||||
long prevPower = this.power;
|
||||
|
||||
power = Library.chargeItemsFromTE(slots, 1, power, getMaxPower());
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
this.transmitPowerFairly();
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
byte comp = this.getComparatorPower();
|
||||
if(comp != this.lastRedstone)
|
||||
this.markDirty();
|
||||
this.lastRedstone = comp;
|
||||
|
||||
power = Library.chargeTEFromItems(slots, 0, power, getMaxPower());
|
||||
|
||||
long avg = (power / 2 + prevPower / 2);
|
||||
this.delta = avg - this.log[0];
|
||||
|
||||
for(int i = 1; i < this.log.length; i++) {
|
||||
this.log[i - 1] = this.log[i];
|
||||
}
|
||||
|
||||
this.log[19] = avg;
|
||||
|
||||
NBTTagCompound nbt = new NBTTagCompound();
|
||||
nbt.setLong("power", avg);
|
||||
nbt.setLong("delta", delta);
|
||||
nbt.setShort("redLow", redLow);
|
||||
nbt.setShort("redHigh", redHigh);
|
||||
nbt.setByte("priority", (byte) this.priority.ordinal());
|
||||
this.networkPack(nbt, 20);
|
||||
}
|
||||
|
||||
if(worldObj.isRemote) {
|
||||
this.prevRotation = this.rotation;
|
||||
|
||||
67
src/main/java/com/hbm/util/AchievementHandler.java
Normal file
@ -0,0 +1,67 @@
|
||||
package com.hbm.util;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.inventory.RecipesCommon.ComparableStack;
|
||||
import com.hbm.items.ItemAmmoEnums;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.main.MainRegistry;
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.stats.Achievement;
|
||||
|
||||
public class AchievementHandler {
|
||||
|
||||
public static HashMap<ComparableStack, Achievement> craftingAchievements = new HashMap();
|
||||
|
||||
public static void register() {
|
||||
craftingAchievements.put(new ComparableStack(ModItems.gun_mp40), MainRegistry.achFreytag);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.piston_selenium), MainRegistry.achSelenium);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.gun_b92), MainRegistry.achSelenium);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.battery_potatos), MainRegistry.achPotato);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.gun_revolver_pip), MainRegistry.achC44);
|
||||
craftingAchievements.put(new ComparableStack(ModBlocks.machine_press), MainRegistry.achBurnerPress);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.rbmk_fuel_empty), MainRegistry.achRBMK);
|
||||
craftingAchievements.put(new ComparableStack(ModBlocks.machine_chemplant), MainRegistry.achChemplant);
|
||||
craftingAchievements.put(new ComparableStack(ModBlocks.concrete_smooth), MainRegistry.achConcrete);
|
||||
craftingAchievements.put(new ComparableStack(ModBlocks.concrete_asbestos), MainRegistry.achConcrete);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.ingot_polymer), MainRegistry.achPolymer);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.ingot_desh), MainRegistry.achDesh);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.gem_tantalium), MainRegistry.achTantalum);
|
||||
craftingAchievements.put(new ComparableStack(ModBlocks.machine_gascent), MainRegistry.achGasCent);
|
||||
craftingAchievements.put(new ComparableStack(ModBlocks.machine_centrifuge), MainRegistry.achCentrifuge);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.ingot_schrabidium), MainRegistry.achSchrab);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.nugget_schrabidium), MainRegistry.achSchrab);
|
||||
craftingAchievements.put(new ComparableStack(ModBlocks.machine_crystallizer), MainRegistry.achAcidizer);
|
||||
craftingAchievements.put(new ComparableStack(ModBlocks.machine_silex), MainRegistry.achSILEX);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.nugget_technetium), MainRegistry.achTechnetium);
|
||||
craftingAchievements.put(new ComparableStack(ModBlocks.struct_watz_core), MainRegistry.achWatz);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.nugget_bismuth), MainRegistry.achBismuth);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.nugget_am241), MainRegistry.achBreeding);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.nugget_am242), MainRegistry.achBreeding);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.missile_nuclear), MainRegistry.achRedBalloons);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.missile_nuclear_cluster), MainRegistry.achRedBalloons);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.missile_doomsday), MainRegistry.achRedBalloons);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.mp_warhead_10_nuclear), MainRegistry.achRedBalloons);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.mp_warhead_10_nuclear_large), MainRegistry.achRedBalloons);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.mp_warhead_15_nuclear), MainRegistry.achRedBalloons);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.mp_warhead_15_nuclear_shark), MainRegistry.achRedBalloons);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.mp_warhead_15_boxcar), MainRegistry.achRedBalloons);
|
||||
craftingAchievements.put(new ComparableStack(ModBlocks.struct_iter_core), MainRegistry.achFusion);
|
||||
craftingAchievements.put(new ComparableStack(ModBlocks.machine_difurnace_off), MainRegistry.achBlastFurnace);
|
||||
craftingAchievements.put(new ComparableStack(ModBlocks.machine_assembler), MainRegistry.achAssembly);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.billet_pu_mix), MainRegistry.achChicagoPile);
|
||||
craftingAchievements.put(new ComparableStack(ModItems.ammo_4gauge, 1, ItemAmmoEnums.Ammo4Gauge.VAMPIRE.ordinal()), MainRegistry.achWitchtaunter);
|
||||
}
|
||||
|
||||
public static void fire(EntityPlayer player, ItemStack stack) {
|
||||
if(player.worldObj.isRemote) return;
|
||||
ComparableStack comp = new ComparableStack(stack).makeSingular();
|
||||
Achievement achievement = craftingAchievements.get(comp);
|
||||
if(achievement != null) {
|
||||
player.triggerAchievement(achievement);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,10 +1,15 @@
|
||||
package com.hbm.util;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.ListIterator;
|
||||
|
||||
import net.minecraft.util.ChatComponentStyle;
|
||||
import net.minecraft.util.ChatComponentText;
|
||||
import net.minecraft.util.ChatComponentTranslation;
|
||||
import net.minecraft.util.ChatStyle;
|
||||
import net.minecraft.util.EnumChatFormatting;
|
||||
import net.minecraft.util.IChatComponent;
|
||||
|
||||
public class ChatBuilder {
|
||||
|
||||
@ -46,6 +51,24 @@ public class ChatBuilder {
|
||||
return this;
|
||||
}
|
||||
|
||||
/** Will recursively go over all IChatComponents added to the root and then set the style */
|
||||
public ChatBuilder colorAll(EnumChatFormatting format) {
|
||||
|
||||
List list = new ArrayList();
|
||||
list.add(text);
|
||||
|
||||
ListIterator it = list.listIterator();
|
||||
|
||||
while(it.hasNext()) {
|
||||
Object o = it.next();
|
||||
IChatComponent component = (IChatComponent) o;
|
||||
component.getChatStyle().setColor(format);
|
||||
for(Object s : component.getSiblings()) it.add(s);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
public ChatComponentText flush() {
|
||||
return this.text;
|
||||
}
|
||||
|
||||
17
src/main/java/com/hbm/util/WeightedRandomGeneric.java
Normal file
@ -0,0 +1,17 @@
|
||||
package com.hbm.util;
|
||||
|
||||
import net.minecraft.util.WeightedRandom;
|
||||
|
||||
public class WeightedRandomGeneric<T> extends WeightedRandom.Item {
|
||||
|
||||
T item;
|
||||
|
||||
public WeightedRandomGeneric(T o, int weight) {
|
||||
super(weight);
|
||||
item = o;
|
||||
}
|
||||
|
||||
public T get() {
|
||||
return item;
|
||||
}
|
||||
}
|
||||
@ -1,15 +1,49 @@
|
||||
package com.hbm.world.feature;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.generic.BlockBedrockOreTE.TileEntityBedrockOre;
|
||||
import com.hbm.config.WorldConfig;
|
||||
import com.hbm.inventory.FluidStack;
|
||||
import com.hbm.inventory.OreDictManager.DictFrame;
|
||||
import com.hbm.inventory.fluid.Fluids;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.items.special.ItemBedrockOre.EnumBedrockOre;
|
||||
import com.hbm.util.WeightedRandomGeneric;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class BedrockOre {
|
||||
|
||||
public static List<WeightedRandomGeneric<BedrockOreDefinition>> weightedOres = new ArrayList();
|
||||
|
||||
public static void init() {
|
||||
registerBedrockOre(new BedrockOreDefinition(EnumBedrockOre.IRON, 1), WorldConfig.bedrockIronSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(EnumBedrockOre.COPPER, 1), WorldConfig.bedrockCopperSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(EnumBedrockOre.BORAX, 3, new FluidStack(Fluids.SULFURIC_ACID, 500)), WorldConfig.bedrockBoraxSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(EnumBedrockOre.ASBESTOS, 2), WorldConfig.bedrockAsbestosSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(EnumBedrockOre.NIOBIUM, 2, new FluidStack(Fluids.ACID, 500)), WorldConfig.bedrockNiobiumSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(EnumBedrockOre.TITANIUM, 2, new FluidStack(Fluids.SULFURIC_ACID, 500)), WorldConfig.bedrockTitaniumSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(EnumBedrockOre.TUNGSTEN, 2, new FluidStack(Fluids.ACID, 500)), WorldConfig.bedrockTungstenSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(EnumBedrockOre.GOLD, 1), WorldConfig.bedrockGoldSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(EnumBedrockOre.URANIUM, 4, new FluidStack(Fluids.SULFURIC_ACID, 500)), WorldConfig.bedrockUraniumSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(EnumBedrockOre.THORIUM, 4, new FluidStack(Fluids.SULFURIC_ACID, 500)), WorldConfig.bedrockThoriumSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(new ItemStack(Items.coal, 4), 1, 0x202020), WorldConfig.bedrockCoalSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(new ItemStack(ModItems.niter, 4), 2, 0x808080, new FluidStack(Fluids.ACID, 500)), WorldConfig.bedrockNiterSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(new ItemStack(ModItems.fluorite, 4), 1, 0xd0d0d0), WorldConfig.bedrockFluoriteSpawn);
|
||||
registerBedrockOre(new BedrockOreDefinition(new ItemStack(Items.redstone, 4), 1, 0xd01010), WorldConfig.bedrockRedstoneSpawn);
|
||||
}
|
||||
|
||||
public static void registerBedrockOre(BedrockOreDefinition def, int weight) {
|
||||
WeightedRandomGeneric<BedrockOreDefinition> weighted = new WeightedRandomGeneric<BedrockOreDefinition>(def, weight);
|
||||
weightedOres.add(weighted);
|
||||
}
|
||||
|
||||
public static void generate(World world, int x, int z, ItemStack stack, FluidStack acid, int color, int tier) {
|
||||
|
||||
@ -49,4 +83,33 @@ public class BedrockOre {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static class BedrockOreDefinition {
|
||||
public ItemStack stack;
|
||||
public FluidStack acid;
|
||||
public int tier;
|
||||
public int color;
|
||||
|
||||
public BedrockOreDefinition(ItemStack stack, int tier, int color) {
|
||||
this(stack, tier, color, null);
|
||||
}
|
||||
|
||||
public BedrockOreDefinition(ItemStack stack, int tier, int color, FluidStack acid) {
|
||||
this.stack = stack;
|
||||
this.tier = tier;
|
||||
this.color = color;
|
||||
this.acid = acid;
|
||||
}
|
||||
|
||||
public BedrockOreDefinition(EnumBedrockOre type, int tier) {
|
||||
this(type, tier, null);
|
||||
}
|
||||
|
||||
public BedrockOreDefinition(EnumBedrockOre type, int tier, FluidStack acid) {
|
||||
this.stack = DictFrame.fromOne(ModItems.ore_bedrock, type);
|
||||
this.color = type.color;
|
||||
this.tier = tier;
|
||||
this.acid = acid;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -80,7 +80,7 @@ public class OilSpot {
|
||||
world.setBlock(rX, y, rZ, ModBlocks.stone_cracked);
|
||||
break;
|
||||
|
||||
} else if(ground.getMaterial() == Material.leaves) {
|
||||
} else if(ground.getMaterial() == Material.leaves && (meta & 8) != 0 && (meta & 4) == 0) {
|
||||
world.setBlockToAir(rX, y, rZ);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -16,6 +16,10 @@ public class OreLayer3D {
|
||||
NoiseGeneratorPerlin noiseY;
|
||||
NoiseGeneratorPerlin noiseZ;
|
||||
|
||||
double scaleH;
|
||||
double scaleV;
|
||||
double threshold;
|
||||
|
||||
Block block;
|
||||
int meta;
|
||||
int dim = 0;
|
||||
@ -30,6 +34,21 @@ public class OreLayer3D {
|
||||
this.dim = dim;
|
||||
return this;
|
||||
}
|
||||
|
||||
public OreLayer3D setScaleH(double scale) {
|
||||
this.scaleH = scale;
|
||||
return this;
|
||||
}
|
||||
|
||||
public OreLayer3D setScaleV(double scale) {
|
||||
this.scaleV = scale;
|
||||
return this;
|
||||
}
|
||||
|
||||
public OreLayer3D setThreshold(double threshold) {
|
||||
this.threshold = threshold;
|
||||
return this;
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public void onDecorate(DecorateBiomeEvent.Pre event) {
|
||||
@ -44,9 +63,6 @@ public class OreLayer3D {
|
||||
|
||||
int cX = event.chunkX;
|
||||
int cZ = event.chunkZ;
|
||||
|
||||
double scaleH = 0.04D;
|
||||
double scaleV = 0.25D;
|
||||
|
||||
for(int x = cX + 8; x < cX + 24; x++) {
|
||||
for(int z = cZ + 8; z < cZ + 24; z++) {
|
||||
@ -55,7 +71,7 @@ public class OreLayer3D {
|
||||
double nY = this.noiseY.func_151601_a(x * scaleH, z * scaleH);
|
||||
double nZ = this.noiseZ.func_151601_a(x * scaleH, y * scaleV);
|
||||
|
||||
if(nX * nY * nZ > 220) {
|
||||
if(nX * nY * nZ > threshold) {
|
||||
Block target = world.getBlock(x, y, z);
|
||||
|
||||
if(target.isNormalCube() && target.getMaterial() == Material.rock) {
|
||||
|
||||
@ -3,15 +3,10 @@ package com.hbm.world.generator;
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
|
||||
import com.hbm.inventory.FluidStack;
|
||||
import com.hbm.inventory.RecipesCommon.MetaBlock;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.items.special.ItemBedrockOre.EnumBedrockOre;
|
||||
import com.hbm.world.feature.BedrockOre;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.Vec3;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.gen.feature.WorldGenFlowers;
|
||||
@ -25,11 +20,8 @@ public class DungeonToolbox {
|
||||
return;
|
||||
|
||||
for(int i = x; i < x + sx; i++) {
|
||||
|
||||
for(int j = y; j < y + sy; j++) {
|
||||
|
||||
for(int k = z; k < z + sz; k++) {
|
||||
|
||||
MetaBlock b = getRandom(blocks, world.rand);
|
||||
world.setBlock(i, j, k, b.block, b.meta, 2);
|
||||
}
|
||||
@ -93,24 +85,6 @@ public class DungeonToolbox {
|
||||
(new WorldGenMinable(ore, meta, amount, target)).generate(world, rand, x, y, z);
|
||||
}
|
||||
}
|
||||
|
||||
public static void generateBedrockOreWithChance(World world, Random rand, int chunkX, int chunkZ, EnumBedrockOre ore, int tier, int chance) {
|
||||
if(chance > 0 && rand.nextInt(chance) == 0) generateBedrockOre(world, rand, chunkX, chunkZ, ore, null, tier);
|
||||
}
|
||||
|
||||
public static void generateBedrockOreWithChance(World world, Random rand, int chunkX, int chunkZ, EnumBedrockOre ore, FluidStack stack, int tier, int chance) {
|
||||
if(chance > 0 && rand.nextInt(chance) == 0) generateBedrockOre(world, rand, chunkX, chunkZ, ore, stack, tier);
|
||||
}
|
||||
|
||||
public static void generateBedrockOre(World world, Random rand, int chunkX, int chunkZ, EnumBedrockOre ore, int tier) {
|
||||
generateBedrockOre(world, rand, chunkX, chunkZ, ore, null, tier);
|
||||
}
|
||||
|
||||
public static void generateBedrockOre(World world, Random rand, int chunkX, int chunkZ, EnumBedrockOre ore, FluidStack stack, int tier) {
|
||||
int randPosX = chunkX + rand.nextInt(16) + 8;
|
||||
int randPosZ = chunkZ + rand.nextInt(16) + 8;
|
||||
BedrockOre.generate(world, randPosX, randPosZ, new ItemStack(ModItems.ore_bedrock, 1, ore.ordinal()), stack, ore.color, tier);
|
||||
}
|
||||
|
||||
private static WorldGenFlowers genFlowers = new WorldGenFlowers(null);
|
||||
public static void generateFlowers(World world, Random rand, int chunkX, int chunkZ, Block flower, int meta) {
|
||||
|
||||
@ -18,22 +18,24 @@ achievement.c44.desc=Galvanisch verzinkt! ...das macht in der Übersetzung sowas
|
||||
achievement.c44=Kapitel 44
|
||||
achievement.chemistry.desc=Bobmazon Level 3 (Betonziegel)
|
||||
achievement.chemistry=Chemie
|
||||
achievement.digammaFeel.desc=the hollow within.
|
||||
achievement.digammaFeel=The Terror of Feeling
|
||||
achievement.digammaFeel.desc=Meine Augen bluten
|
||||
achievement.digammaFeel=SEWAGE-INFUSED GARBAGE WORLD
|
||||
achievement.digammaKauaiMoho.desc=Alles ist schrecklich, hier ist etwas heiße Schoki.
|
||||
achievement.digammaKauaiMoho=Sing, sing mir das Lied der Kauai Moho
|
||||
achievement.digammaKauaiMoho=SING, SING ME THE SONG OF THE KAUAI MOHO
|
||||
achievement.digammaKnow.desc=what this world is about.
|
||||
achievement.digammaKnow=The Terror of Knowing
|
||||
achievement.digammaSee.desc=into the abyss.
|
||||
achievement.digammaSee=The Terror of Seeing
|
||||
achievement.digammaUpOnTop.desc=Bewundere meinen Sohn, er ist mein Klon.
|
||||
achievement.digammaUpOnTop=Bewundere mich, bewundere mein Heim
|
||||
achievement.digammaKnow=THE TERROR OF KNOWING
|
||||
achievement.digammaSee.desc=Es ist Dunkel, bring eine Taschenlampe.
|
||||
achievement.digammaSee=ENTER THE ABYSS
|
||||
achievement.digammaUpOnTop.desc=Admire my son, he's my clone.
|
||||
achievement.digammaUpOnTop=ADMIRE ME, ADMIRE MY HOME
|
||||
achievement.fiend.desc=Sei gemein.
|
||||
achievement.fiend2.desc=Sei gemeiner.
|
||||
achievement.fiend2=Unhold 2: Noch unholdiger
|
||||
achievement.fiend=Unhold
|
||||
achievement.freytag.desc=Leibgarde Herold
|
||||
achievement.freytag=Freytag
|
||||
achievement.goFish.desc=Kreuzigung auf See
|
||||
achievement.goFish=Go Fish
|
||||
achievement.hidden.desc=Töte einen Enderman mit einem fallenden Güterwagon wärend du brennst und mehr als 250 RADs hast.
|
||||
achievement.hidden=Versteckter Katalog
|
||||
achievement.horizonsBonus.desc=junge was ist denn mit dir verkehrt
|
||||
@ -679,6 +681,7 @@ hbmfluid.plasma_xm=Xenon-Quecksilber-Plasma
|
||||
hbmfluid.puf6=Plutoniumhexafluorid
|
||||
hbmfluid.radiosolvent=Hochleistungs-Lösungsmittel
|
||||
hbmfluid.reclaimed=Wiederaufbetreitetes Industrieöl
|
||||
hbmfluid.redmud=Rotschlamm
|
||||
hbmfluid.reformate=Reformat
|
||||
hbmfluid.reformgas=Reformatgas
|
||||
hbmfluid.salient=Saftiges Grün
|
||||
@ -2473,6 +2476,8 @@ item.ore.iron=Eisen
|
||||
item.ore.niobium=Niob
|
||||
item.ore.titanium=Titan
|
||||
item.ore.tungsten=Wolfram
|
||||
item.ore.thorium=Thorium
|
||||
item.ore.uranium=Uran
|
||||
item.ore_bedrock.name=Bedrock-%serz
|
||||
item.ore_byproduct.b_aluminium.name=Kristallines Aluminiumfragment
|
||||
item.ore_byproduct.b_bismuth.name=Kristallines Bismutfragment
|
||||
@ -2481,9 +2486,13 @@ item.ore_byproduct.b_copper.name=Kristallines Kupferfragment
|
||||
item.ore_byproduct.b_iron.name=Kristallines Eisenfragment
|
||||
item.ore_byproduct.b_lead.name=Kristallines Bleifragment
|
||||
item.ore_byproduct.b_lithium.name=Kristallines Lithiumfragment
|
||||
item.ore_byproduct.b_polonium.name=Kristallines Poloniumfragment
|
||||
item.ore_byproduct.b_radium.name=Kristallines Radiumfragment
|
||||
item.ore_byproduct.b_silicon.name=Kristallines Siliziumfragment
|
||||
item.ore_byproduct.b_sulfur.name=Kristallines Schwefelfragment
|
||||
item.ore_byproduct.b_technetium.name=Kristallines Technetiumfragment
|
||||
item.ore_byproduct.b_titanium.name=Kristallines Titanfragment
|
||||
item.ore_byproduct.b_uranium.name=Kristallines Uranfragment
|
||||
item.ore_centrifuged.name=Zentrifugiertes %serz
|
||||
item.ore_cleaned.name=Gereinigtes %serz
|
||||
item.ore_deepcleaned.name=Tiefengereinigtes %serz
|
||||
@ -2491,7 +2500,7 @@ item.ore_enriched.name=Reiches %serz
|
||||
item.ore_nitrated.name=Nitriertes %serz
|
||||
item.ore_nitrocrystalline.name=Nitrokristallines %serz
|
||||
item.ore_purified.name=Pures %serz
|
||||
item.ore_radcleaaned.name=Strahlengereinigtes %serz
|
||||
item.ore_radcleaned.name=Strahlengereinigtes %serz
|
||||
item.ore_seared.name=Geätztes %serz
|
||||
item.ore_separated.name=Separiertes %serz
|
||||
item.overfuse.name=Singularitätsschraubenzieher
|
||||
@ -4242,6 +4251,7 @@ tile.stone_depth_nether.name=Nether-Tiefenfels
|
||||
tile.stone_gneiss.name=Graphitschiefer
|
||||
tile.stone_porous.name=Poröser Stein
|
||||
tile.stone_resource.asbestos.name=Chrysotil
|
||||
tile.stone_resource.bauxite.name=Bauxit
|
||||
tile.stone_resource.hematite.name=Hämatit
|
||||
tile.stone_resource.limestone.name=Kalkstein
|
||||
tile.stone_resource.malachite.name=Malachit
|
||||
|
||||
@ -36,16 +36,16 @@ achievement.concrete.desc=A Bolshevik's favorite.
|
||||
achievement.concrete=Old Reliable
|
||||
achievement.desh.desc="Come on then, you lot. Places to go!"
|
||||
achievement.desh=Le Verrier
|
||||
achievement.digammaFeel.desc=the hollow within.
|
||||
achievement.digammaFeel=The Terror of Feeling
|
||||
achievement.digammaFeel.desc=My eyes are bleeding
|
||||
achievement.digammaFeel=SEWAGE-INFUSED GARBAGE WORLD
|
||||
achievement.digammaKauaiMoho.desc=Everything is awful, here's some hot choccy.
|
||||
achievement.digammaKauaiMoho=Sing, sing me the song of the Kauai Moho
|
||||
achievement.digammaKauaiMoho=SING, SING ME THE SONG OF THE KAUAI MOHO
|
||||
achievement.digammaKnow.desc=what this world is about.
|
||||
achievement.digammaKnow=The Terror of Knowing
|
||||
achievement.digammaSee.desc=into the abyss.
|
||||
achievement.digammaSee=The Terror of Seeing
|
||||
achievement.digammaKnow=THE TERROR OF KNOWING
|
||||
achievement.digammaSee.desc=It's a bit dark, bring a flashlight.
|
||||
achievement.digammaSee=ENTER THE ABYSS
|
||||
achievement.digammaUpOnTop.desc=Admire my son, he's my clone.
|
||||
achievement.digammaUpOnTop=Admire Me, Admire my Home
|
||||
achievement.digammaUpOnTop=ADMIRE ME, ADMIRE MY HOME
|
||||
achievement.fiend.desc=Be mean.
|
||||
achievement.fiend2.desc=Be meaner.
|
||||
achievement.fiend2=Delinquent 2: Delinquent Harder
|
||||
@ -56,6 +56,8 @@ achievement.fusion.desc=A dance of deuterons, tritons, and energy.
|
||||
achievement.fusion=Fusion
|
||||
achievement.gasCent.desc=Unenriched Uranium hates him!
|
||||
achievement.gasCent=The Zippe Style
|
||||
achievement.goFish.desc=Nautical Crucifixion
|
||||
achievement.goFish=Go Fish
|
||||
achievement.hidden.desc=Kill a tainted creeper with a falling boxcar.
|
||||
achievement.hidden=Hidden Catalog
|
||||
achievement.horizonsBonus.desc=honest to god what the hell is wrong with you
|
||||
@ -1251,6 +1253,7 @@ hbmfluid.plasma_xm=Xenon-Mercury Plasma
|
||||
hbmfluid.puf6=Plutonium Hexafluoride
|
||||
hbmfluid.radiosolvent=High-Performance Solvent
|
||||
hbmfluid.reclaimed=Reclaimed Industrial Oil
|
||||
hbmfluid.redmud=Red Mud
|
||||
hbmfluid.reformate=Reformate
|
||||
hbmfluid.reformgas=Reformate Gas
|
||||
hbmfluid.salient=Salient Green
|
||||
@ -3152,6 +3155,8 @@ item.ore.iron=Iron
|
||||
item.ore.niobium=Niobium
|
||||
item.ore.titanium=Titanium
|
||||
item.ore.tungsten=Tungsten
|
||||
item.ore.thorium=Thorium
|
||||
item.ore.uranium=Uranium
|
||||
item.ore_bedrock.name=%s Bedrock Ore
|
||||
item.ore_byproduct.b_aluminium.name=Crystalline Aluminium Fragment
|
||||
item.ore_byproduct.b_bismuth.name=Crystalline Bismuth Fragment
|
||||
@ -3160,9 +3165,13 @@ item.ore_byproduct.b_copper.name=Crystalline Copper Fragment
|
||||
item.ore_byproduct.b_iron.name=Crystalline Iron Fragment
|
||||
item.ore_byproduct.b_lead.name=Crystalline Lead Fragment
|
||||
item.ore_byproduct.b_lithium.name=Crystalline Lithium Fragment
|
||||
item.ore_byproduct.b_polonium.name=Crystalline Polonium Fragment
|
||||
item.ore_byproduct.b_radium.name=Crystalline Radium Fragment
|
||||
item.ore_byproduct.b_silicon.name=Crystalline Silicon Fragment
|
||||
item.ore_byproduct.b_sulfur.name=Crystalline Sulfur Fragment
|
||||
item.ore_byproduct.b_technetium.name=Crystalline Technetium Fragment
|
||||
item.ore_byproduct.b_titanium.name=Crystalline Titanium Fragment
|
||||
item.ore_byproduct.b_uranium.name=Crystalline Uranium Fragment
|
||||
item.ore_centrifuged.name=Centrifuged %s Ore
|
||||
item.ore_cleaned.name=Cleaned %s Ore
|
||||
item.ore_deepcleaned.name=Deep Cleaned %s Ore
|
||||
@ -3170,7 +3179,7 @@ item.ore_enriched.name=Enriched %s Ore
|
||||
item.ore_nitrated.name=Nitrated %s Ore
|
||||
item.ore_nitrocrystalline.name=Nitrocrystalline %s Ore
|
||||
item.ore_purified.name=Purified %s Ore
|
||||
item.ore_raadcleaned.name=Radiation-Cleaned %s Ore
|
||||
item.ore_radcleaned.name=Radiation-Cleaned %s Ore
|
||||
item.ore_seared.name=Seared %s Ore
|
||||
item.ore_separated.name=Separated %s Ore
|
||||
item.overfuse.name=Singularity Screwdriver
|
||||
@ -5062,6 +5071,7 @@ tile.stone_depth_nether.name=Nether Depth Rock
|
||||
tile.stone_gneiss.name=Graphitic Schist
|
||||
tile.stone_porous.name=Porous Stone
|
||||
tile.stone_resource.asbestos.name=Chrysotile
|
||||
tile.stone_resource.bauxite.name=Bauxite
|
||||
tile.stone_resource.hematite.name=Hematite
|
||||
tile.stone_resource.limestone.name=Limestone
|
||||
tile.stone_resource.malachite.name=Malachite
|
||||
|
||||
|
After Width: | Height: | Size: 811 B |
BIN
src/main/resources/assets/hbm/textures/gui/fluids/redmud.png
Normal file
|
After Width: | Height: | Size: 624 B |
|
After Width: | Height: | Size: 29 KiB |
|
After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 222 B After Width: | Height: | Size: 222 B |
|
After Width: | Height: | Size: 208 B |
|
Before Width: | Height: | Size: 203 B After Width: | Height: | Size: 203 B |
|
Before Width: | Height: | Size: 233 B After Width: | Height: | Size: 233 B |
|
Before Width: | Height: | Size: 184 B After Width: | Height: | Size: 184 B |
|
Before Width: | Height: | Size: 182 B After Width: | Height: | Size: 182 B |
|
Before Width: | Height: | Size: 186 B After Width: | Height: | Size: 186 B |
|
After Width: | Height: | Size: 174 B |
|
Before Width: | Height: | Size: 200 B |
|
Before Width: | Height: | Size: 169 B |