Lots of fixes.
Prepared for 0.1.3
3
README.md
Normal file
|
@ -0,0 +1,3 @@
|
|||
It's a Minecraft Mod!
|
||||
|
||||
For more information, visit the main Minecraft Forum Thread at http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/wip-mods/2374910-actually-additions-a-bunch-of-awesome-gadgets
|
|
@ -17,7 +17,7 @@ buildscript {
|
|||
|
||||
apply plugin: 'forge'
|
||||
|
||||
version = "1.7.10-0.0.1.1"
|
||||
version = "1.7.10-0.0.1.3"
|
||||
group = "ellpeck.actuallyadditions"
|
||||
archivesBaseName = "ActuallyAdditions"
|
||||
|
||||
|
|
|
@ -4,7 +4,6 @@ import cpw.mods.fml.client.registry.RenderingRegistry;
|
|||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.achievement.InitAchievements;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.items.ItemFertilizer;
|
||||
import ellpeck.actuallyadditions.items.ItemMisc;
|
||||
import ellpeck.actuallyadditions.items.metalists.TheMiscItems;
|
||||
|
@ -32,8 +31,6 @@ public class BlockCompost extends BlockContainerBase implements IName{
|
|||
|
||||
public BlockCompost(){
|
||||
super(Material.wood);
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
this.setBlockName(Util.setUnlocalizedName(this));
|
||||
this.setHarvestLevel("axe", 0);
|
||||
this.setHardness(1.0F);
|
||||
this.setStepSound(soundTypeWood);
|
||||
|
|
|
@ -3,7 +3,6 @@ package ellpeck.actuallyadditions.blocks;
|
|||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.ActuallyAdditions;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.inventory.GuiHandler;
|
||||
import ellpeck.actuallyadditions.tile.TileEntityFeeder;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
|
@ -28,8 +27,6 @@ public class BlockFeeder extends BlockContainerBase implements IName{
|
|||
|
||||
public BlockFeeder(){
|
||||
super(Material.wood);
|
||||
this.setBlockName(Util.setUnlocalizedName(this));
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
this.setHarvestLevel("axe", 0);
|
||||
this.setHardness(1.0F);
|
||||
this.setStepSound(soundTypeWood);
|
||||
|
|
|
@ -3,7 +3,6 @@ package ellpeck.actuallyadditions.blocks;
|
|||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.ActuallyAdditions;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.inventory.GuiHandler;
|
||||
import ellpeck.actuallyadditions.tile.TileEntityFurnaceDouble;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
|
@ -33,9 +32,7 @@ public class BlockFurnaceDouble extends BlockContainerBase implements IName{
|
|||
private IIcon frontIcon;
|
||||
|
||||
public BlockFurnaceDouble(){
|
||||
super(Material.wood);
|
||||
this.setBlockName(Util.setUnlocalizedName(this));
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
super(Material.rock);
|
||||
this.setHarvestLevel("pickaxe", 0);
|
||||
this.setHardness(1.0F);
|
||||
this.setStepSound(soundTypeStone);
|
||||
|
|
|
@ -3,7 +3,6 @@ package ellpeck.actuallyadditions.blocks;
|
|||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.ActuallyAdditions;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.inventory.GuiHandler;
|
||||
import ellpeck.actuallyadditions.tile.TileEntityGiantChest;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
|
@ -28,8 +27,6 @@ public class BlockGiantChest extends BlockContainerBase implements IName{
|
|||
|
||||
public BlockGiantChest(){
|
||||
super(Material.wood);
|
||||
this.setBlockName(Util.setUnlocalizedName(this));
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
this.setHarvestLevel("axe", 0);
|
||||
this.setHardness(1.0F);
|
||||
this.setStepSound(soundTypeWood);
|
||||
|
|
|
@ -3,7 +3,6 @@ package ellpeck.actuallyadditions.blocks;
|
|||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.ActuallyAdditions;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.inventory.GuiHandler;
|
||||
import ellpeck.actuallyadditions.tile.TileEntityGrinder;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
|
@ -33,10 +32,8 @@ public class BlockGrinder extends BlockContainerBase implements IName{
|
|||
private boolean isDouble;
|
||||
|
||||
public BlockGrinder(boolean isDouble){
|
||||
super(Material.wood);
|
||||
super(Material.rock);
|
||||
this.isDouble = isDouble;
|
||||
this.setBlockName(Util.setUnlocalizedName(this));
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
this.setHarvestLevel("pickaxe", 0);
|
||||
this.setHardness(1.0F);
|
||||
this.setStepSound(soundTypeStone);
|
||||
|
|
|
@ -3,7 +3,6 @@ package ellpeck.actuallyadditions.blocks;
|
|||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.blocks.metalists.TheMiscBlocks;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
import net.minecraft.block.Block;
|
||||
|
@ -27,8 +26,6 @@ public class BlockMisc extends Block implements IName{
|
|||
|
||||
public BlockMisc(){
|
||||
super(Material.rock);
|
||||
this.setBlockName(Util.setUnlocalizedName(this));
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
}
|
||||
|
||||
@SuppressWarnings("all")
|
||||
|
|
|
@ -51,17 +51,29 @@ public class ConfigValues{
|
|||
public static boolean enablePearlShardDrop;
|
||||
public static boolean enableEmeraldShardDrop;
|
||||
|
||||
public static boolean generateBlackQuartz;
|
||||
public static int blackQuartzBaseAmount;
|
||||
public static int blackQuartzAdditionalChance;
|
||||
public static int blackQuartzChance;
|
||||
public static int blackQuartzMinHeight;
|
||||
public static int blackQuartzMaxHeight;
|
||||
|
||||
public static void defineConfigValues(Configuration config){
|
||||
|
||||
for(int i = 0; i < enabledFoodRecipes.length; i++){
|
||||
enabledFoodRecipes[i] = config.getBoolean(TheFoods.values()[i].name, ConfigurationHandler.CATEGORY_FOOD_CRAFTING, true, "If the Crafting Recipe for " + TheFoods.values()[i].name + " is Enabled");
|
||||
}
|
||||
for(int i = 0; i < enabledMiscRecipes.length; i++){
|
||||
if(i != TheMiscItems.QUARTZ.ordinal()){
|
||||
enabledMiscRecipes[i] = config.getBoolean(TheMiscItems.values()[i].name, ConfigurationHandler.CATEGORY_MISC_CRAFTING, true, "If the Crafting Recipe for " + TheMiscItems.values()[i].name + " is Enabled");
|
||||
}
|
||||
enabledMiscRecipes[i] = config.getBoolean(TheMiscItems.values()[i].name, ConfigurationHandler.CATEGORY_MISC_CRAFTING, true, "If the Crafting Recipe for " + TheMiscItems.values()[i].name + " is Enabled");
|
||||
}
|
||||
|
||||
generateBlackQuartz = config.getBoolean("Black Quartz", ConfigurationHandler.CATEGORY_WORLD_GEN, true, "If the Black Quartz generates in the world");
|
||||
blackQuartzBaseAmount = config.getInt("Black Quartz Amount", ConfigurationHandler.CATEGORY_WORLD_GEN, 3, 1, 50, "How big a Black Quartz Vein is at least");
|
||||
blackQuartzAdditionalChance = config.getInt("Black Quartz Additional Chance", ConfigurationHandler.CATEGORY_WORLD_GEN, 3, 0, 50, "How much bigger than the Base Amount a Black Quartz Vein can get");
|
||||
blackQuartzChance = config.getInt("Black Quartz Chance", ConfigurationHandler.CATEGORY_WORLD_GEN, 25, 1, 150, "How often the Black Quartz tries to generate");
|
||||
blackQuartzMinHeight = config.getInt("Black Quartz Min Height", ConfigurationHandler.CATEGORY_WORLD_GEN, 0, 0, 256, "How high the Black Quartz starts to generate");
|
||||
blackQuartzMaxHeight = config.getInt("Black Quartz Max Height", ConfigurationHandler.CATEGORY_WORLD_GEN, 25, 0, 256, "How high the Black Quartz stops to generate at");
|
||||
|
||||
//TODO CHANGE TO BE TRUE BY DEFAULT
|
||||
enableExperienceDrop = config.getBoolean("Solidified Experience", ConfigurationHandler.CATEGORY_MOB_DROPS, false, "If the Solidified Experience drops from Mobs");
|
||||
enableBloodDrop = config.getBoolean("Blood Fragments", ConfigurationHandler.CATEGORY_MOB_DROPS, false, "If the Blood Fragments drop from Mobs");
|
||||
|
|
|
@ -14,6 +14,7 @@ public class ConfigurationHandler{
|
|||
public static final String CATEGORY_TOOL_VALUES = "tool values";
|
||||
public static final String CATEGORY_MACHINE_VALUES = "machine values";
|
||||
public static final String CATEGORY_MOB_DROPS = "mob drops";
|
||||
public static final String CATEGORY_WORLD_GEN = "world gen";
|
||||
|
||||
|
||||
public static void init(File configFile){
|
||||
|
|
|
@ -28,25 +28,31 @@ public class GrinderCrafting{
|
|||
for(String name : names){
|
||||
if(name.contains("ore")){
|
||||
String nameOfOre = name.substring(3);
|
||||
ArrayList<ItemStack> allDusts = OreDictionary.getOres("dust" + nameOfOre);
|
||||
ArrayList<ItemStack> allDusts;
|
||||
|
||||
if(nameOfOre.contains("Nether")) allDusts = OreDictionary.getOres("dust" + nameOfOre.substring(6));
|
||||
else allDusts = OreDictionary.getOres("dust" + nameOfOre);
|
||||
|
||||
if(allDusts != null && allDusts.size() > 0){
|
||||
ItemStack output = allDusts.get(0);
|
||||
output.stackSize = 2;
|
||||
ArrayList<ItemStack> allOresOfName = OreDictionary.getOres(name);
|
||||
if(allOresOfName != null && allOresOfName.size() > 0){
|
||||
for(ItemStack input : allOresOfName){
|
||||
if(GrinderRecipes.instance().getOutput(input, false) == null){
|
||||
for(ItemStack output : allDusts){
|
||||
output.stackSize = 2;
|
||||
for(ItemStack input : allOresOfName){
|
||||
if(GrinderRecipes.instance().getOutput(input, false) == null){
|
||||
|
||||
//Special Second Outputs
|
||||
if(name.equals("oreNickel")) GrinderRecipes.instance().registerRecipe(input, output, OreDictionary.getOres("dustPlatinum").get(0), 10);
|
||||
//Special Second Outputs
|
||||
if(name.equals("oreNickel"))
|
||||
GrinderRecipes.instance().registerRecipe(input, output, OreDictionary.getOres("dustPlatinum").get(0), 10);
|
||||
|
||||
else GrinderRecipes.instance().registerRecipe(input, output, null, 0);
|
||||
else GrinderRecipes.instance().registerRecipe(input, output, null, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else Util.SPRS_LOGGER.log(Level.ERROR, "Couldn't register Crusher Recipe! Didn't find Items registered as '" + name + "'! This shouldn't happen as there is something registered as '" + name + "' that doesn't exist!");
|
||||
else Util.AA_LOGGER.log(Level.ERROR, "Couldn't register Crusher Recipe! Didn't find Items registered as '" + name + "'! This shouldn't happen as there is something registered as '" + name + "' that doesn't exist!");
|
||||
}
|
||||
else Util.SPRS_LOGGER.log(Level.WARN, "Couldn't register Crusher Recipe! An Item with OreDictionary Registry 'dust" + nameOfOre + "' doesn't exist! This is not an Error, just a bit sad :(");
|
||||
else Util.AA_LOGGER.log(Level.WARN, "Couldn't register Crusher Recipe! An Item with OreDictionary Registry 'dust" + nameOfOre + "' doesn't exist! It should correspond to '" + name + "'! This is not an Error, just a bit sad :(");
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
package ellpeck.actuallyadditions.crafting;
|
||||
|
||||
import cpw.mods.fml.common.registry.GameRegistry;
|
||||
import ellpeck.actuallyadditions.blocks.InitBlocks;
|
||||
import ellpeck.actuallyadditions.blocks.metalists.TheMiscBlocks;
|
||||
import ellpeck.actuallyadditions.config.ConfigValues;
|
||||
import ellpeck.actuallyadditions.items.InitItems;
|
||||
import ellpeck.actuallyadditions.items.metalists.TheDusts;
|
||||
|
@ -16,6 +18,11 @@ public class ItemCrafting{
|
|||
|
||||
public static void init(){
|
||||
|
||||
//Quartz
|
||||
if(ConfigValues.enabledMiscRecipes[TheMiscItems.QUARTZ.ordinal()])
|
||||
GameRegistry.addSmelting(new ItemStack(InitBlocks.blockMisc, 1, TheMiscBlocks.ORE_QUARTZ.ordinal()),
|
||||
new ItemStack(InitItems.itemMisc, 1, TheMiscItems.QUARTZ.ordinal()), 1F);
|
||||
|
||||
//Knife
|
||||
if(ConfigValues.enableKnifeRecipe)
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(InitItems.itemKnife),
|
||||
|
@ -34,16 +41,23 @@ public class ItemCrafting{
|
|||
initMashedFoodRecipes();
|
||||
|
||||
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemMisc, 1, TheDusts.IRON.ordinal()),
|
||||
//Ingots from Dusts
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemDust, 1, TheDusts.IRON.ordinal()),
|
||||
new ItemStack(Items.iron_ingot), 1F);
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemMisc, 1, TheDusts.GOLD.ordinal()),
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemDust, 1, TheDusts.GOLD.ordinal()),
|
||||
new ItemStack(Items.gold_ingot), 1F);
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemMisc, 1, TheDusts.DIAMOND.ordinal()),
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemDust, 1, TheDusts.DIAMOND.ordinal()),
|
||||
new ItemStack(Items.diamond), 1F);
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemMisc, 1, TheDusts.EMERALD.ordinal()),
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemDust, 1, TheDusts.EMERALD.ordinal()),
|
||||
new ItemStack(Items.emerald), 1F);
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemMisc, 1, TheDusts.LAPIS.ordinal()),
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemDust, 1, TheDusts.LAPIS.ordinal()),
|
||||
new ItemStack(Items.dye, 1, 4), 1F);
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemDust, 1, TheDusts.QUARTZ_BLACK.ordinal()),
|
||||
new ItemStack(InitItems.itemMisc, 1, TheMiscItems.QUARTZ.ordinal()), 1F);
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemDust, 1, TheDusts.QUARTZ.ordinal()),
|
||||
new ItemStack(Items.quartz), 1F);
|
||||
GameRegistry.addSmelting(new ItemStack(InitItems.itemDust, 1, TheDusts.COAL.ordinal()),
|
||||
new ItemStack(Items.coal), 1F);
|
||||
|
||||
}
|
||||
|
||||
|
@ -51,7 +65,7 @@ public class ItemCrafting{
|
|||
for(Object nextIterator : Item.itemRegistry){
|
||||
if(nextIterator instanceof ItemFood){
|
||||
ItemStack ingredient = new ItemStack((Item)nextIterator, 1, Util.WILDCARD);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(InitItems.itemMisc, 4, TheMiscItems.MASHED_FOOD.ordinal()), ingredient, ingredient, ingredient, ingredient, new ItemStack(InitItems.itemKnife, 1, Util.WILDCARD));
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(InitItems.itemMisc, 8, TheMiscItems.MASHED_FOOD.ordinal()), ingredient, ingredient, ingredient, ingredient, new ItemStack(InitItems.itemKnife, 1, Util.WILDCARD));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,27 +1,76 @@
|
|||
package ellpeck.actuallyadditions.creative;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.blocks.InitBlocks;
|
||||
import ellpeck.actuallyadditions.items.InitItems;
|
||||
import ellpeck.actuallyadditions.items.metalists.TheFoods;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class CreativeTab extends CreativeTabs{
|
||||
|
||||
public static CreativeTab instance = new CreativeTab();
|
||||
private List list;
|
||||
|
||||
public CreativeTab(){
|
||||
super(Util.MOD_ID_LOWER);
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void displayAllReleventItems(List list){
|
||||
this.list = list;
|
||||
|
||||
this.addBlock(InitBlocks.blockGrinder);
|
||||
this.addBlock(InitBlocks.blockGrinderDouble);
|
||||
this.addBlock(InitBlocks.blockFurnaceDouble);
|
||||
|
||||
this.addBlock(InitBlocks.blockMisc);
|
||||
this.addBlock(InitBlocks.blockFeeder);
|
||||
this.addBlock(InitBlocks.blockCompost);
|
||||
this.addBlock(InitBlocks.blockGiantChest);
|
||||
|
||||
this.addItem(InitItems.itemMisc);
|
||||
this.addItem(InitItems.itemFertilizer);
|
||||
this.addItem(InitItems.itemFoods);
|
||||
this.addItem(InitItems.itemKnife);
|
||||
this.addItem(InitItems.itemCrafterOnAStick);
|
||||
this.addItem(InitItems.itemDust);
|
||||
this.addItem(InitItems.itemSpecialDrop);
|
||||
|
||||
this.addItem(InitItems.itemPickaxeEmerald);
|
||||
this.addItem(InitItems.itemSwordEmerald);
|
||||
this.addItem(InitItems.itemAxeEmerald);
|
||||
this.addItem(InitItems.itemShovelEmerald);
|
||||
this.addItem(InitItems.itemHoeEmerald);
|
||||
|
||||
this.addItem(InitItems.itemPickaxeObsidian);
|
||||
this.addItem(InitItems.itemSwordObsidian);
|
||||
this.addItem(InitItems.itemAxeObsidian);
|
||||
this.addItem(InitItems.itemShovelObsidian);
|
||||
this.addItem(InitItems.itemHoeObsidian);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Item getTabIconItem(){
|
||||
return InitItems.itemFoods;
|
||||
return Item.getItemFromBlock(InitBlocks.blockGrinderDouble);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemStack getIconItemStack(){
|
||||
return new ItemStack(this.getTabIconItem(), 1, TheFoods.SUBMARINE_SANDWICH.ordinal());
|
||||
return new ItemStack(this.getTabIconItem());
|
||||
}
|
||||
|
||||
private void addItem(Item item){
|
||||
item.getSubItems(item, this, list);
|
||||
}
|
||||
|
||||
private void addBlock(Block block){
|
||||
block.getSubBlocks(new ItemStack(block).getItem(), this, list);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,7 +18,7 @@ public class KilledEvent{
|
|||
if(event.source.getEntity() instanceof EntityPlayer){
|
||||
for(int i = 0; i < TheSpecialDrops.values().length; i++){
|
||||
TheSpecialDrops theDrop = TheSpecialDrops.values()[i];
|
||||
if(theDrop.canDrop && event.entityLiving.getClass() == theDrop.dropFrom || (event.entityLiving instanceof EntityCreature && theDrop.dropFrom == EntityCreature.class) || (event.entityLiving instanceof EntityMob && theDrop.dropFrom == EntityMob.class) || (event.entityLiving instanceof EntityAnimal && theDrop.dropFrom == EntityAnimal.class)){
|
||||
if(theDrop.canDrop && (event.entityLiving.getClass() == theDrop.dropFrom || (event.entityLiving instanceof EntityCreature && theDrop.dropFrom == EntityCreature.class) || (event.entityLiving instanceof EntityMob && theDrop.dropFrom == EntityMob.class) || (event.entityLiving instanceof EntityAnimal && theDrop.dropFrom == EntityAnimal.class))){
|
||||
if(new Random().nextInt(100) + 1 <= theDrop.chance){
|
||||
event.entityLiving.entityDropItem(new ItemStack(InitItems.itemSpecialDrop, new Random().nextInt(theDrop.maxAmount) + 1, theDrop.ordinal()), 0);
|
||||
}
|
||||
|
|
|
@ -2,15 +2,19 @@ package ellpeck.actuallyadditions.gen;
|
|||
|
||||
import cpw.mods.fml.common.IWorldGenerator;
|
||||
import cpw.mods.fml.common.registry.GameRegistry;
|
||||
import ellpeck.actuallyadditions.blocks.InitBlocks;
|
||||
import ellpeck.actuallyadditions.blocks.metalists.TheMiscBlocks;
|
||||
import ellpeck.actuallyadditions.config.ConfigValues;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.chunk.IChunkProvider;
|
||||
import net.minecraft.world.gen.feature.WorldGenMinable;
|
||||
import org.apache.logging.log4j.Level;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
public class OreGen implements IWorldGenerator{
|
||||
|
||||
@Override
|
||||
|
@ -31,7 +35,7 @@ public class OreGen implements IWorldGenerator{
|
|||
}
|
||||
|
||||
private void generateSurface(World world, Random random, int x, int z){
|
||||
|
||||
if(ConfigValues.generateBlackQuartz) this.addOreSpawn(InitBlocks.blockMisc, TheMiscBlocks.ORE_QUARTZ.ordinal(), Blocks.stone, world, random, x, z, this.getRandom(ConfigValues.blackQuartzBaseAmount, ConfigValues.blackQuartzAdditionalChance, random), ConfigValues.blackQuartzChance, ConfigValues.blackQuartzMinHeight, ConfigValues.blackQuartzMaxHeight);
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
|
@ -39,14 +43,21 @@ public class OreGen implements IWorldGenerator{
|
|||
|
||||
}
|
||||
|
||||
public void addOreSpawn(Block block, int meta, int x, int y, int z, Block blockIn, World world, Random random, int blockXPos, int blockZPos, int maxVeinSize, int chancesToSpawn, int minY, int maxY){
|
||||
int yDiff = maxY - minY;
|
||||
for(int i = 0; i < chancesToSpawn; i++){
|
||||
int posX = blockXPos + random.nextInt(16);
|
||||
int posY = minY + random.nextInt(yDiff);
|
||||
int posZ = blockZPos + random.nextInt(16);
|
||||
(new WorldGenMinable(block, meta, maxVeinSize, blockIn)).generate(world, random, posX, posY, posZ);
|
||||
public void addOreSpawn(Block block, int meta, Block blockIn, World world, Random random, int blockXPos, int blockZPos, int maxVeinSize, int chancesToSpawn, int minY, int maxY){
|
||||
if(maxY > minY){
|
||||
int yDiff = maxY - minY;
|
||||
for(int i = 0; i < chancesToSpawn; i++){
|
||||
int posX = blockXPos + random.nextInt(16);
|
||||
int posY = minY + random.nextInt(yDiff);
|
||||
int posZ = blockZPos + random.nextInt(16);
|
||||
new WorldGenMinable(block, meta, maxVeinSize, blockIn).generate(world, random, posX, posY, posZ);
|
||||
}
|
||||
}
|
||||
else Util.AA_LOGGER.log(Level.FATAL, "Couldn't generate '" + block.getUnlocalizedName() + "' into the world because the Min Y coordinate is bigger than the Max! This is definitely a Config Error! Check the Files!");
|
||||
}
|
||||
|
||||
public int getRandom(int base, int extra, Random rand){
|
||||
return extra > 0 ? base+rand.nextInt(extra+1) : base;
|
||||
}
|
||||
|
||||
public static void init(){
|
||||
|
|
|
@ -45,7 +45,7 @@ public class ContainerCrafter extends Container{
|
|||
}
|
||||
|
||||
@Override
|
||||
public void onCraftMatrixChanged(IInventory p_75130_1_){
|
||||
public void onCraftMatrixChanged(IInventory inv){
|
||||
this.craftResult.setInventorySlotContents(0, CraftingManager.getInstance().findMatchingRecipe(this.craftMatrix, this.world));
|
||||
}
|
||||
|
||||
|
|
|
@ -3,7 +3,6 @@ package ellpeck.actuallyadditions.items;
|
|||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.ActuallyAdditions;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.inventory.GuiHandler;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
|
@ -20,8 +19,6 @@ import java.util.List;
|
|||
public class ItemCrafterOnAStick extends Item implements IName{
|
||||
|
||||
public ItemCrafterOnAStick(){
|
||||
this.setUnlocalizedName(Util.setUnlocalizedName(this));
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
this.setMaxStackSize(1);
|
||||
}
|
||||
|
||||
|
|
|
@ -2,7 +2,6 @@ package ellpeck.actuallyadditions.items;
|
|||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.items.metalists.TheDusts;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
|
@ -22,9 +21,7 @@ public class ItemDust extends Item implements IName{
|
|||
public static final TheDusts[] allDusts = TheDusts.values();
|
||||
|
||||
public ItemDust(){
|
||||
this.setUnlocalizedName(Util.setUnlocalizedName(this));
|
||||
this.setHasSubtypes(true);
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -2,7 +2,6 @@ package ellpeck.actuallyadditions.items;
|
|||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
|
@ -18,11 +17,6 @@ import java.util.List;
|
|||
|
||||
public class ItemFertilizer extends Item implements IName{
|
||||
|
||||
public ItemFertilizer(){
|
||||
this.setUnlocalizedName(Util.setUnlocalizedName(this));
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int par7, float par8, float par9, float par10){
|
||||
if(ItemDye.applyBonemeal(stack, world, x, y, z, player)){
|
||||
|
|
|
@ -2,7 +2,6 @@ package ellpeck.actuallyadditions.items;
|
|||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.items.metalists.TheFoods;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
|
@ -24,10 +23,8 @@ public class ItemFoods extends ItemFood implements IName{
|
|||
|
||||
public ItemFoods(){
|
||||
super(0, 0.0F, false);
|
||||
this.setUnlocalizedName(Util.setUnlocalizedName(this));
|
||||
this.setHasSubtypes(true);
|
||||
this.setMaxDamage(0);
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
this.setAlwaysEdible();
|
||||
TheFoods.setReturnItems();
|
||||
}
|
||||
|
|
|
@ -3,7 +3,6 @@ package ellpeck.actuallyadditions.items;
|
|||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.config.ConfigValues;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
|
@ -18,9 +17,7 @@ import java.util.List;
|
|||
public class ItemKnife extends Item implements IName{
|
||||
|
||||
public ItemKnife(){
|
||||
this.setUnlocalizedName(Util.setUnlocalizedName(this));
|
||||
this.setMaxDamage(ConfigValues.itemKnifeMaxDamage);
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
this.setMaxStackSize(1);
|
||||
this.setContainerItem(this);
|
||||
}
|
||||
|
|
|
@ -2,7 +2,6 @@ package ellpeck.actuallyadditions.items;
|
|||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.items.metalists.TheMiscItems;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
|
@ -23,9 +22,7 @@ public class ItemMisc extends Item implements IName{
|
|||
public IIcon[] textures = new IIcon[allMiscItems.length];
|
||||
|
||||
public ItemMisc(){
|
||||
this.setUnlocalizedName(Util.setUnlocalizedName(this));
|
||||
this.setHasSubtypes(true);
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -2,7 +2,6 @@ package ellpeck.actuallyadditions.items;
|
|||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.items.metalists.TheSpecialDrops;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
|
@ -23,9 +22,7 @@ public class ItemSpecialDrop extends Item implements IName{
|
|||
public IIcon[] textures = new IIcon[allDrops.length];
|
||||
|
||||
public ItemSpecialDrop(){
|
||||
this.setUnlocalizedName(Util.setUnlocalizedName(this));
|
||||
this.setHasSubtypes(true);
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package ellpeck.actuallyadditions.items.metalists;
|
||||
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
import net.minecraft.item.EnumRarity;
|
||||
|
||||
public enum TheDusts implements IName{
|
||||
|
@ -9,7 +10,10 @@ public enum TheDusts implements IName{
|
|||
GOLD("Gold", 14335744, EnumRarity.uncommon),
|
||||
DIAMOND("Diamond", 292003, EnumRarity.rare),
|
||||
EMERALD("Emerald", 4319527, EnumRarity.epic),
|
||||
LAPIS("Lapis", 1849791, EnumRarity.uncommon);
|
||||
LAPIS("Lapis", 1849791, EnumRarity.uncommon),
|
||||
QUARTZ("Quartz", Util.DECIMAL_COLOR_WHITE, EnumRarity.uncommon),
|
||||
COAL("Coal", 0, EnumRarity.uncommon),
|
||||
QUARTZ_BLACK("QuartzBlack", 18, EnumRarity.rare);
|
||||
|
||||
public final String name;
|
||||
public final int color;
|
||||
|
|
|
@ -2,7 +2,6 @@ package ellpeck.actuallyadditions.items.tools;
|
|||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
|
@ -25,7 +24,6 @@ public class ItemAxeAA extends ItemAxe implements IName{
|
|||
this.name = unlocalizedName;
|
||||
this.rarity = rarity;
|
||||
this.setUnlocalizedName(Util.setUnlocalizedName(this));
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -2,7 +2,6 @@ package ellpeck.actuallyadditions.items.tools;
|
|||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
|
@ -25,7 +24,6 @@ public class ItemHoeAA extends ItemHoe implements IName{
|
|||
this.name = unlocalizedName;
|
||||
this.rarity = rarity;
|
||||
this.setUnlocalizedName(Util.setUnlocalizedName(this));
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -2,7 +2,6 @@ package ellpeck.actuallyadditions.items.tools;
|
|||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
|
@ -25,7 +24,6 @@ public class ItemPickaxeAA extends ItemPickaxe implements IName{
|
|||
this.name = unlocalizedName;
|
||||
this.rarity = rarity;
|
||||
this.setUnlocalizedName(Util.setUnlocalizedName(this));
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -2,7 +2,6 @@ package ellpeck.actuallyadditions.items.tools;
|
|||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
|
@ -25,7 +24,6 @@ public class ItemShovelAA extends ItemSpade implements IName{
|
|||
this.name = unlocalizedName;
|
||||
this.rarity = rarity;
|
||||
this.setUnlocalizedName(Util.setUnlocalizedName(this));
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -2,7 +2,6 @@ package ellpeck.actuallyadditions.items.tools;
|
|||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import ellpeck.actuallyadditions.util.IName;
|
||||
import ellpeck.actuallyadditions.util.Util;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
|
@ -25,7 +24,6 @@ public class ItemSwordAA extends ItemSword implements IName{
|
|||
this.name = unlocalizedName;
|
||||
this.rarity = rarity;
|
||||
this.setUnlocalizedName(Util.setUnlocalizedName(this));
|
||||
this.setCreativeTab(CreativeTab.instance);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -1,7 +1,10 @@
|
|||
package ellpeck.actuallyadditions.oredict;
|
||||
|
||||
import ellpeck.actuallyadditions.blocks.InitBlocks;
|
||||
import ellpeck.actuallyadditions.blocks.metalists.TheMiscBlocks;
|
||||
import ellpeck.actuallyadditions.items.InitItems;
|
||||
import ellpeck.actuallyadditions.items.metalists.TheDusts;
|
||||
import ellpeck.actuallyadditions.items.metalists.TheMiscItems;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.oredict.OreDictionary;
|
||||
|
||||
|
@ -13,5 +16,10 @@ public class OreDictRegistry{
|
|||
OreDictionary.registerOre("dustGold", new ItemStack(InitItems.itemDust, 1, TheDusts.GOLD.ordinal()));
|
||||
OreDictionary.registerOre("dustEmerald", new ItemStack(InitItems.itemDust, 1, TheDusts.EMERALD.ordinal()));
|
||||
OreDictionary.registerOre("dustLapis", new ItemStack(InitItems.itemDust, 1, TheDusts.LAPIS.ordinal()));
|
||||
OreDictionary.registerOre("dustCoal", new ItemStack(InitItems.itemDust, 1, TheDusts.COAL.ordinal()));
|
||||
OreDictionary.registerOre("dustQuartz", new ItemStack(InitItems.itemDust, 1, TheDusts.QUARTZ.ordinal()));
|
||||
OreDictionary.registerOre("dustQuartzBlack", new ItemStack(InitItems.itemDust, 1, TheDusts.QUARTZ_BLACK.ordinal()));
|
||||
OreDictionary.registerOre("oreQuartzBlack", new ItemStack(InitBlocks.blockMisc, 1, TheMiscBlocks.ORE_QUARTZ.ordinal()));
|
||||
OreDictionary.registerOre("itemQuartzBlack", new ItemStack(InitItems.itemMisc, 1, TheMiscItems.QUARTZ.ordinal()));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -33,6 +33,7 @@ public class TileEntityBase extends TileEntity{
|
|||
GameRegistry.registerTileEntity(TileEntityGiantChest.class, Util.MOD_ID_LOWER + ":tileEntityGiantChest");
|
||||
GameRegistry.registerTileEntity(TileEntityGrinder.class, Util.MOD_ID_LOWER + ":tileEntityGrinder");
|
||||
GameRegistry.registerTileEntity(TileEntityFurnaceDouble.class, Util.MOD_ID_LOWER + ":tileEntityFurnaceDouble");
|
||||
GameRegistry.registerTileEntity(TileEntityPackager.class, Util.MOD_ID_LOWER + ":tileEntityPackager");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -34,9 +34,9 @@ public class TileEntityFeeder extends TileEntityInventoryBase{
|
|||
List<EntityAnimal> animals = worldObj.getEntitiesWithinAABB(EntityAnimal.class, AxisAlignedBB.getBoundingBox(this.xCoord - reach, this.yCoord - reach, this.zCoord - reach, this.xCoord + reach, this.yCoord + reach, this.zCoord + reach));
|
||||
if(animals != null){
|
||||
this.currentAnimalAmount = animals.size();
|
||||
if(this.currentAnimalAmount >= 2 && this.slots[0] != null){
|
||||
if(this.currentAnimalAmount >= 2){
|
||||
if(this.currentAnimalAmount < this.animalThreshold){
|
||||
if(this.currentTimer >= this.timerGoal){
|
||||
if(this.currentTimer >= this.timerGoal && this.slots[0] != null){
|
||||
this.currentTimer = 0;
|
||||
EntityAnimal randomAnimal = animals.get(new Random().nextInt(this.currentAnimalAmount));
|
||||
if(!randomAnimal.isInLove() && randomAnimal.getGrowingAge() == 0 && randomAnimal.isBreedingItem(this.slots[0])){
|
||||
|
|
|
@ -19,14 +19,13 @@ public class TileEntityFurnaceDouble extends TileEntityInventoryBase{
|
|||
public int coalTime;
|
||||
public int coalTimeLeft;
|
||||
|
||||
public final int maxBurnTime;
|
||||
public final int maxBurnTime = ConfigValues.furnaceDoubleSmeltTime;
|
||||
|
||||
public int firstSmeltTime;
|
||||
public int secondSmeltTime;
|
||||
|
||||
public TileEntityFurnaceDouble(){
|
||||
super(5, "tileEntityFurnaceDouble");
|
||||
this.maxBurnTime = ConfigValues.furnaceDoubleSmeltTime;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -0,0 +1,115 @@
|
|||
package ellpeck.actuallyadditions.tile;
|
||||
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.inventory.InventoryCrafting;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.item.crafting.CraftingManager;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
|
||||
public class TileEntityPackager extends TileEntityInventoryBase{
|
||||
|
||||
public static final int SLOT_INPUT = 0;
|
||||
public static final int SLOT_OUTPUT = 1;
|
||||
|
||||
public int currentWaitTime;
|
||||
public final int waitTime = 30;
|
||||
|
||||
public boolean isTwoByTwo = false;
|
||||
|
||||
public TileEntityPackager(){
|
||||
super(2, "tileEntityPackager");
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("unchecked")
|
||||
public void updateEntity(){
|
||||
if(!worldObj.isRemote){
|
||||
if(this.canBeConverted(this.slots[SLOT_INPUT])){
|
||||
|
||||
ItemStack output = findMatchingRecipe(this.slots[SLOT_INPUT]);
|
||||
if(this.slots[SLOT_OUTPUT] == null || (this.slots[SLOT_OUTPUT].isItemEqual(output) && this.slots[SLOT_OUTPUT].stackSize <= this.slots[SLOT_OUTPUT].getMaxStackSize()-output.stackSize)){
|
||||
|
||||
if(this.currentWaitTime >= this.waitTime){
|
||||
this.currentWaitTime = 0;
|
||||
|
||||
if (this.slots[SLOT_OUTPUT] == null) this.slots[SLOT_OUTPUT] = output.copy();
|
||||
else if(this.slots[SLOT_OUTPUT].getItem() == output.getItem()) this.slots[SLOT_OUTPUT].stackSize += output.stackSize;
|
||||
|
||||
this.slots[SLOT_INPUT].stackSize--;
|
||||
if (this.slots[SLOT_INPUT].stackSize <= 0) this.slots[SLOT_INPUT] = null;
|
||||
}
|
||||
else this.currentWaitTime++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public boolean canBeConverted(ItemStack stack){
|
||||
return findMatchingRecipe(stack) != null;
|
||||
}
|
||||
|
||||
public ItemStack findMatchingRecipe(ItemStack stack){
|
||||
int k = this.isTwoByTwo ? 2 : 3;
|
||||
|
||||
TheInventoryCrafting craftMatrix = new TheInventoryCrafting(null, k, k);
|
||||
for(int i = 0; i < craftMatrix.getSizeInventory(); i++){
|
||||
craftMatrix.setInventorySlotContents(i, stack.copy());
|
||||
}
|
||||
return CraftingManager.getInstance().findMatchingRecipe(craftMatrix, this.worldObj);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeToNBT(NBTTagCompound compound){
|
||||
super.writeToNBT(compound);
|
||||
compound.setInteger("CurrentWaitTime", this.currentWaitTime);
|
||||
compound.setBoolean("EnabledSlots", this.isTwoByTwo);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void readFromNBT(NBTTagCompound compound){
|
||||
super.readFromNBT(compound);
|
||||
this.currentWaitTime = compound.getInteger("CurrentWaitTime");
|
||||
this.isTwoByTwo = compound.getBoolean("EnabledSlots");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isItemValidForSlot(int i, ItemStack stack){
|
||||
return i == SLOT_INPUT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canInsertItem(int slot, ItemStack stack, int side){
|
||||
return this.isItemValidForSlot(slot, stack);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canExtractItem(int slot, ItemStack stack, int side){
|
||||
return slot == SLOT_OUTPUT;
|
||||
}
|
||||
|
||||
public static class TheInventoryCrafting extends InventoryCrafting{
|
||||
|
||||
private ItemStack[] stackList;
|
||||
|
||||
public TheInventoryCrafting(Container container, int x, int y){
|
||||
super(container, x, y);
|
||||
this.stackList = new ItemStack[x*y];
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setInventorySlotContents(int index, ItemStack stack){
|
||||
this.stackList[index] = stack;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemStack getStackInSlot(int position){
|
||||
return this.stackList[position];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSizeInventory(){
|
||||
return this.stackList.length;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -2,6 +2,7 @@ package ellpeck.actuallyadditions.util;
|
|||
|
||||
import cpw.mods.fml.common.FMLCommonHandler;
|
||||
import cpw.mods.fml.common.registry.GameRegistry;
|
||||
import ellpeck.actuallyadditions.creative.CreativeTab;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemBlock;
|
||||
|
@ -17,13 +18,13 @@ import org.lwjgl.input.Keyboard;
|
|||
@SuppressWarnings("unused")
|
||||
public class Util{
|
||||
|
||||
public static final String VERSION = "1.7.10-0.0.1.1";
|
||||
public static final String VERSION = "1.7.10-0.0.1.3";
|
||||
|
||||
public static final String MOD_ID = "ActuallyAdditions";
|
||||
public static final String NAME = "Actually Additions";
|
||||
public static final String MOD_ID_LOWER = MOD_ID.toLowerCase();
|
||||
|
||||
public static final Logger SPRS_LOGGER = LogManager.getLogger(MOD_ID);
|
||||
public static final Logger AA_LOGGER = LogManager.getLogger(MOD_ID);
|
||||
|
||||
public static final int WILDCARD = OreDictionary.WILDCARD_VALUE;
|
||||
public static final ResourceLocation GUI_INVENTORY_LOCATION = getGuiLocation("guiInventory");
|
||||
|
@ -70,7 +71,7 @@ public class Util{
|
|||
}
|
||||
|
||||
public static void logInfo(String text){
|
||||
SPRS_LOGGER.log(Level.INFO, text);
|
||||
AA_LOGGER.log(Level.INFO, text);
|
||||
}
|
||||
|
||||
public static void registerItems(Item[] items){
|
||||
|
@ -92,10 +93,14 @@ public class Util{
|
|||
}
|
||||
|
||||
public static void register(Item item){
|
||||
item.setCreativeTab(CreativeTab.instance);
|
||||
item.setUnlocalizedName(setUnlocalizedName(item));
|
||||
GameRegistry.registerItem(item, ((IName)item).getName());
|
||||
}
|
||||
|
||||
public static void register(Block block, Class<? extends ItemBlock> itemBlock){
|
||||
block.setCreativeTab(CreativeTab.instance);
|
||||
block.setBlockName(setUnlocalizedName(block));
|
||||
GameRegistry.registerBlock(block, itemBlock, ((IName)block).getName());
|
||||
}
|
||||
|
||||
|
|
|
@ -62,6 +62,9 @@ item.actuallyadditions.itemDustGold.name=Crushed Gold
|
|||
item.actuallyadditions.itemDustDiamond.name=Crushed Diamond
|
||||
item.actuallyadditions.itemDustLapis.name=Crushed Lapis
|
||||
item.actuallyadditions.itemDustEmerald.name=Crushed Emerald
|
||||
item.actuallyadditions.itemDustQuartz.name=Crushed Quartz
|
||||
item.actuallyadditions.itemDustCoal.name=Crushed Coal
|
||||
item.actuallyadditions.itemDustQuartzBlack.name=Crushed Black Quartz
|
||||
|
||||
tooltip.actuallyadditions.shiftForInfo.desc=Press Shift for Info
|
||||
tooltip.actuallyadditions.hunger.desc=Fills
|
||||
|
@ -70,7 +73,7 @@ tooltip.actuallyadditions.durability.desc=Durability
|
|||
|
||||
tooltip.actuallyadditions.blockCompost.desc.1=Used to make Fertilizer with Mashed Food
|
||||
tooltip.actuallyadditions.blockCompost.desc.2=BETA INFO: Will visually contain Compost in the Future!
|
||||
tooltip.actuallyadditions.blockMiscOreBlackQuartz.desc=The darkest form of Quartz. Also: You had Silk Touch!
|
||||
tooltip.actuallyadditions.blockMiscOreBlackQuartz.desc=The darkest form of Quartz.
|
||||
tooltip.actuallyadditions.blockMiscBlackQuartz.desc=Black, eerie Quartz! Nice for decorating.
|
||||
tooltip.actuallyadditions.blockMiscBlackQuartzChiseled.desc=Black, eerie chiseled Quartz! Nice for decorating.
|
||||
tooltip.actuallyadditions.blockMiscBlackQuartzPillar.desc=Kind of a pillar. Not really, though. It's fake! Fake I say!
|
||||
|
@ -86,7 +89,7 @@ tooltip.actuallyadditions.blockGrinderDouble.desc.3=Can crush two Ores simultane
|
|||
tooltip.actuallyadditions.blockFurnaceDouble.desc=Smelts two Things simultaneously!
|
||||
|
||||
tooltip.actuallyadditions.itemMiscMashedFood.desc=Used to make Fertilizer
|
||||
tooltip.actuallyadditions.itemFertilizer.desc=Om nom nom. Don't eat it.
|
||||
tooltip.actuallyadditions.itemFertilizer.desc=Om nom nom. Don't eat it. Made in a Compost.
|
||||
tooltip.actuallyadditions.itemMiscDough.desc=Used to make things that involve dough.
|
||||
tooltip.actuallyadditions.itemMiscPaperCone.desc=Used to store foodstuffs!
|
||||
tooltip.actuallyadditions.itemMiscKnifeBlade.desc=Sharp like a tooth! A whale's tooth!
|
||||
|
@ -135,6 +138,9 @@ tooltip.actuallyadditions.itemDustGold.desc=Gold! Crushed in the Crusher!
|
|||
tooltip.actuallyadditions.itemDustDiamond.desc=Diamond! Crushed in the Crusher!
|
||||
tooltip.actuallyadditions.itemDustLapis.desc=Lapis! Crushed in the Crusher!
|
||||
tooltip.actuallyadditions.itemDustEmerald.desc=Emerald! Crushed in the Crusher!
|
||||
tooltip.actuallyadditions.itemDustQuartz.desc=Quartz! Crushed in the Crusher!
|
||||
tooltip.actuallyadditions.itemDustCoal.desc=Coal! Crushed in the Crusher!
|
||||
tooltip.actuallyadditions.itemDustQuartzBlack.desc=Black Quartz! Crushed in the Crusher!
|
||||
|
||||
achievement.actuallyadditions.smeltBaguette=Better than Bread!
|
||||
achievement.actuallyadditions.smeltBaguette.desc=Bake a Baguette
|
||||
|
|
|
@ -1,73 +0,0 @@
|
|||
---- Minecraft Crash Report ----
|
||||
// Don't do that.
|
||||
|
||||
Time: 07.03.15 03:56
|
||||
Description: There was a severe problem during mod loading that has caused the game to fail
|
||||
|
||||
cpw.mods.fml.common.LoaderException: java.lang.NoSuchMethodError: net.minecraft.item.Item$ToolMaterial.setRepairItem(Lnet/minecraft/item/ItemStack;)Lnet/minecraft/item/Item$ToolMaterial;
|
||||
at cpw.mods.fml.common.LoadController.transition(LoadController.java:162)
|
||||
at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:515)
|
||||
at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:239)
|
||||
at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:480)
|
||||
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:867)
|
||||
at net.minecraft.client.main.Main.main(SourceFile:148)
|
||||
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
|
||||
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
|
||||
at java.lang.reflect.Method.invoke(Unknown Source)
|
||||
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
|
||||
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
|
||||
Caused by: java.lang.NoSuchMethodError: net.minecraft.item.Item$ToolMaterial.setRepairItem(Lnet/minecraft/item/ItemStack;)Lnet/minecraft/item/Item$ToolMaterial;
|
||||
at ellpeck.actuallyadditions.material.InitItemMaterials.init(InitItemMaterials.java:19)
|
||||
at ellpeck.actuallyadditions.SomePrettyRandomStuff.preInit(SomePrettyRandomStuff.java:40)
|
||||
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
|
||||
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
|
||||
at java.lang.reflect.Method.invoke(Unknown Source)
|
||||
at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:513)
|
||||
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
|
||||
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
|
||||
at java.lang.reflect.Method.invoke(Unknown Source)
|
||||
at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
|
||||
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
|
||||
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
|
||||
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
|
||||
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
|
||||
at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:208)
|
||||
at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:187)
|
||||
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
|
||||
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
|
||||
at java.lang.reflect.Method.invoke(Unknown Source)
|
||||
at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
|
||||
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
|
||||
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
|
||||
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
|
||||
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
|
||||
at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:118)
|
||||
at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:513)
|
||||
... 10 more
|
||||
|
||||
|
||||
A detailed walkthrough of the error, its code path and all known details is as follows:
|
||||
---------------------------------------------------------------------------------------
|
||||
|
||||
-- System Details --
|
||||
Details:
|
||||
Minecraft Version: 1.7.10
|
||||
Operating System: Windows 7 (amd64) version 6.1
|
||||
Java Version: 1.8.0_25, Oracle Corporation
|
||||
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
|
||||
Memory: 122065264 bytes (116 MB) / 289173504 bytes (275 MB) up to 3207856128 bytes (3059 MB)
|
||||
JVM Flags: 6 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx3G -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -Xmn128M
|
||||
AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
|
||||
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
|
||||
FML: MCP v9.05 FML v7.10.85.1232 Minecraft Forge 10.13.2.1232 Optifine OptiFine_1.7.10_HD_A4 7 mods loaded, 7 mods active
|
||||
mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized
|
||||
FML{7.10.85.1232} [Forge Mod Loader] (forge-1.7.10-10.13.2.1232.jar) Unloaded->Constructed->Pre-initialized
|
||||
Forge{10.13.2.1232} [Minecraft Forge] (forge-1.7.10-10.13.2.1232.jar) Unloaded->Constructed->Pre-initialized
|
||||
AIRI{3.0.0-1.7.10} [AIRI] ([1.7.10-10.13.0.1158][3.0.0-1.7.10] AIRI.jar) Unloaded->Constructed->Pre-initialized
|
||||
AliensVsPredator{3.9.14-1.7.10} [AliensVsPredator] ([Current] AliensVsPredator.jar) Unloaded->Constructed->Pre-initialized
|
||||
SGCraft{1.8.4} [Greg's SG Craft] (SGCraft-1.8.4-mc1.7.10.jar) Unloaded->Constructed->Pre-initialized
|
||||
SomePrettyRandomStuff{1.7.10-0.0.1} [Some Pretty Random Stuff] (SomePrettyRandomStuff-1.7.10-0.0.1.jar) Unloaded->Constructed->Errored
|
Before Width: | Height: | Size: 486 B After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 274 B After Width: | Height: | Size: 381 B |
Before Width: | Height: | Size: 282 B After Width: | Height: | Size: 443 B |
Before Width: | Height: | Size: 304 B After Width: | Height: | Size: 374 B |
Before Width: | Height: | Size: 267 B After Width: | Height: | Size: 332 B |
Before Width: | Height: | Size: 324 B After Width: | Height: | Size: 490 B |
Before Width: | Height: | Size: 237 B After Width: | Height: | Size: 374 B |
Before Width: | Height: | Size: 249 B After Width: | Height: | Size: 371 B |
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 186 KiB After Width: | Height: | Size: 155 KiB |
After Width: | Height: | Size: 28 KiB |
|
@ -1,17 +1,17 @@
|
|||
[
|
||||
{
|
||||
"modid": "SomePrettyRandomStuff",
|
||||
"name": "Some Pretty Random Stuff",
|
||||
"modid": "ActuallyAdditions",
|
||||
"name": "Actually Additions",
|
||||
"description": "A bunch of random stuff added to your Game to make it even more fun, exciting and add some more variety!",
|
||||
"version": "0.0.1.1",
|
||||
"version": "0.0.1.3",
|
||||
"mcversion": "1.7.10",
|
||||
"url": "https://github.com/Ellpeck/SomePrettyRandomStuff",
|
||||
"url": "https://github.com/Ellpeck/ActuallyAdditions",
|
||||
"updateUrl": "",
|
||||
"authorList": [
|
||||
"Ellpeck"
|
||||
],
|
||||
"credits": "GlenthorLP for all of the awesome Graphics",
|
||||
"logoFile": "assets/someprettyrandomstuff/textures/logo.png",
|
||||
"logoFile": "assets/actuallyadditions/textures/logo.png",
|
||||
"screenshots": [
|
||||
],
|
||||
"parent":"",
|
||||
|
|