Removed Special Drops and added Solidified Experience as own item

This commit is contained in:
Ellpeck 2015-12-28 15:05:56 +01:00
parent d49d3ad7a9
commit a64991b75f
21 changed files with 89 additions and 198 deletions

View file

@ -16,7 +16,6 @@ import ellpeck.actuallyadditions.ActuallyAdditions;
import ellpeck.actuallyadditions.blocks.base.BlockContainerBase; import ellpeck.actuallyadditions.blocks.base.BlockContainerBase;
import ellpeck.actuallyadditions.inventory.GuiHandler; import ellpeck.actuallyadditions.inventory.GuiHandler;
import ellpeck.actuallyadditions.items.InitItems; import ellpeck.actuallyadditions.items.InitItems;
import ellpeck.actuallyadditions.items.metalists.TheSpecialDrops;
import ellpeck.actuallyadditions.tile.TileEntityXPSolidifier; import ellpeck.actuallyadditions.tile.TileEntityXPSolidifier;
import ellpeck.actuallyadditions.util.ModUtil; import ellpeck.actuallyadditions.util.ModUtil;
import ellpeck.actuallyadditions.util.Util; import ellpeck.actuallyadditions.util.Util;
@ -134,9 +133,9 @@ public class BlockXPSolidifier extends BlockContainerBase{
int stacks = solidifier.amount/64; int stacks = solidifier.amount/64;
int rest = solidifier.amount%64; int rest = solidifier.amount%64;
for(int i = 0; i < stacks; i++){ for(int i = 0; i < stacks; i++){
this.spawnItem(world, x, y, z, new ItemStack(InitItems.itemSpecialDrop, 64, TheSpecialDrops.SOLIDIFIED_EXPERIENCE.ordinal())); this.spawnItem(world, x, y, z, new ItemStack(InitItems.itemSolidifiedExperience, 64));
} }
this.spawnItem(world, x, y, z, new ItemStack(InitItems.itemSpecialDrop, rest, TheSpecialDrops.SOLIDIFIED_EXPERIENCE.ordinal())); this.spawnItem(world, x, y, z, new ItemStack(InitItems.itemSolidifiedExperience, rest));
solidifier.amount = 0; solidifier.amount = 0;
} }
} }

View file

@ -26,7 +26,6 @@ import ellpeck.actuallyadditions.items.InitItems;
import ellpeck.actuallyadditions.items.lens.LensNoneRecipeHandler; import ellpeck.actuallyadditions.items.lens.LensNoneRecipeHandler;
import ellpeck.actuallyadditions.items.metalists.TheFoods; import ellpeck.actuallyadditions.items.metalists.TheFoods;
import ellpeck.actuallyadditions.items.metalists.TheMiscItems; import ellpeck.actuallyadditions.items.metalists.TheMiscItems;
import ellpeck.actuallyadditions.items.metalists.TheSpecialDrops;
import ellpeck.actuallyadditions.tile.*; import ellpeck.actuallyadditions.tile.*;
import ellpeck.actuallyadditions.util.Util; import ellpeck.actuallyadditions.util.Util;
import net.minecraft.init.Items; import net.minecraft.init.Items;
@ -93,7 +92,7 @@ public class InitBooklet{
new BookletChapter("phantomfaces", entryFunctionalNonRF, new ItemStack(InitBlocks.blockPhantomLiquiface), new PageTextOnly(1).addTextReplacement("<range>", TileEntityPhantomface.RANGE), new PageTextOnly(2), new PageCrafting(3, BlockCrafting.recipePhantomface), new PageCrafting(4, BlockCrafting.recipeLiquiface), new PageCrafting(5, BlockCrafting.recipeEnergyface), new PageCrafting(6, ItemCrafting.recipePhantomConnector).setNoText(), new PageCrafting(7, BlockCrafting.recipePhantomBooster)).setImportant(); new BookletChapter("phantomfaces", entryFunctionalNonRF, new ItemStack(InitBlocks.blockPhantomLiquiface), new PageTextOnly(1).addTextReplacement("<range>", TileEntityPhantomface.RANGE), new PageTextOnly(2), new PageCrafting(3, BlockCrafting.recipePhantomface), new PageCrafting(4, BlockCrafting.recipeLiquiface), new PageCrafting(5, BlockCrafting.recipeEnergyface), new PageCrafting(6, ItemCrafting.recipePhantomConnector).setNoText(), new PageCrafting(7, BlockCrafting.recipePhantomBooster)).setImportant();
new BookletChapter("phantomBreaker", entryFunctionalNonRF, new ItemStack(InitBlocks.blockPhantomBreaker), new PageTextOnly(1).addTextReplacement("<range>", TileEntityPhantomPlacer.RANGE), new PageCrafting(2, BlockCrafting.recipePhantomPlacer).setNoText(), new PageCrafting(3, BlockCrafting.recipePhantomBreaker).setNoText()); new BookletChapter("phantomBreaker", entryFunctionalNonRF, new ItemStack(InitBlocks.blockPhantomBreaker), new PageTextOnly(1).addTextReplacement("<range>", TileEntityPhantomPlacer.RANGE), new PageCrafting(2, BlockCrafting.recipePhantomPlacer).setNoText(), new PageCrafting(3, BlockCrafting.recipePhantomBreaker).setNoText());
new BookletChapter("esd", entryFunctionalNonRF, new ItemStack(InitBlocks.blockInputterAdvanced), new PageTextOnly(1), new PageCrafting(2, BlockCrafting.recipeESD).setNoText(), new PageCrafting(3, BlockCrafting.recipeAdvancedESD).setNoText()).setSpecial(); new BookletChapter("esd", entryFunctionalNonRF, new ItemStack(InitBlocks.blockInputterAdvanced), new PageTextOnly(1), new PageCrafting(2, BlockCrafting.recipeESD).setNoText(), new PageCrafting(3, BlockCrafting.recipeAdvancedESD).setNoText()).setSpecial();
new BookletChapter("xpSolidifier", entryFunctionalNonRF, new ItemStack(InitBlocks.blockXPSolidifier), new PageTextOnly(1).setStack(new ItemStack(InitItems.itemSpecialDrop, 1, TheSpecialDrops.SOLIDIFIED_EXPERIENCE.ordinal())), new PageCrafting(2, BlockCrafting.recipeSolidifier).setNoText()).setSpecial(); new BookletChapter("xpSolidifier", entryFunctionalNonRF, new ItemStack(InitBlocks.blockXPSolidifier), new PageTextOnly(1).setStack(new ItemStack(InitItems.itemSolidifiedExperience)), new PageCrafting(2, BlockCrafting.recipeSolidifier).setNoText()).setSpecial();
new BookletChapter("greenhouseGlass", entryFunctionalNonRF, new ItemStack(InitBlocks.blockGreenhouseGlass), new PageTextOnly(1), new PageCrafting(2, BlockCrafting.recipeGlass)); new BookletChapter("greenhouseGlass", entryFunctionalNonRF, new ItemStack(InitBlocks.blockGreenhouseGlass), new PageTextOnly(1), new PageCrafting(2, BlockCrafting.recipeGlass));
new BookletChapter("fishingNet", entryFunctionalNonRF, new ItemStack(InitBlocks.blockFishingNet), new PageTextOnly(1), new PageCrafting(2, BlockCrafting.recipeFisher).setNoText()); new BookletChapter("fishingNet", entryFunctionalNonRF, new ItemStack(InitBlocks.blockFishingNet), new PageTextOnly(1), new PageCrafting(2, BlockCrafting.recipeFisher).setNoText());
new BookletChapter("feeder", entryFunctionalNonRF, new ItemStack(InitBlocks.blockFeeder), new PageTextOnly(1), new PageCrafting(2, BlockCrafting.recipeFeeder).setNoText()); new BookletChapter("feeder", entryFunctionalNonRF, new ItemStack(InitBlocks.blockFeeder), new PageTextOnly(1), new PageCrafting(2, BlockCrafting.recipeFeeder).setNoText());

View file

@ -18,7 +18,6 @@ import ellpeck.actuallyadditions.config.values.ConfigCrafting;
import ellpeck.actuallyadditions.items.InitItems; import ellpeck.actuallyadditions.items.InitItems;
import ellpeck.actuallyadditions.items.metalists.TheCrystals; import ellpeck.actuallyadditions.items.metalists.TheCrystals;
import ellpeck.actuallyadditions.items.metalists.TheMiscItems; import ellpeck.actuallyadditions.items.metalists.TheMiscItems;
import ellpeck.actuallyadditions.items.metalists.TheSpecialDrops;
import ellpeck.actuallyadditions.util.Util; import ellpeck.actuallyadditions.util.Util;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.init.Items; import net.minecraft.init.Items;
@ -211,7 +210,7 @@ public class BlockCrafting{
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(InitBlocks.blockSmileyCloud), GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(InitBlocks.blockSmileyCloud),
" W ", "WXW", " W ", " W ", "WXW", " W ",
'W', new ItemStack(Blocks.wool, 1, Util.WILDCARD), 'W', new ItemStack(Blocks.wool, 1, Util.WILDCARD),
'X', new ItemStack(InitItems.itemSpecialDrop, 1, TheSpecialDrops.SOLIDIFIED_EXPERIENCE.ordinal()))); 'X', new ItemStack(InitItems.itemSolidifiedExperience)));
recipeSmileyCloud = Util.GetRecipes.lastIRecipe(); recipeSmileyCloud = Util.GetRecipes.lastIRecipe();
} }
@ -228,7 +227,7 @@ public class BlockCrafting{
if(ConfigCrafting.XP_SOLIDIFIER.isEnabled()){ if(ConfigCrafting.XP_SOLIDIFIER.isEnabled()){
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(InitBlocks.blockXPSolidifier), GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(InitBlocks.blockXPSolidifier),
"XXX", "DCD", "XXX", "XXX", "DCD", "XXX",
'X', new ItemStack(InitItems.itemSpecialDrop, 1, TheSpecialDrops.SOLIDIFIED_EXPERIENCE.ordinal()), 'X', new ItemStack(InitItems.itemSolidifiedExperience),
'D', new ItemStack(InitBlocks.blockCrystal, 1, TheCrystals.DIAMOND.ordinal()), 'D', new ItemStack(InitBlocks.blockCrystal, 1, TheCrystals.DIAMOND.ordinal()),
'C', new ItemStack(InitItems.itemMisc, 1, TheMiscItems.COIL_ADVANCED.ordinal()))); 'C', new ItemStack(InitItems.itemMisc, 1, TheMiscItems.COIL_ADVANCED.ordinal())));
recipeSolidifier = Util.GetRecipes.lastIRecipe(); recipeSolidifier = Util.GetRecipes.lastIRecipe();

View file

@ -405,16 +405,6 @@ public class ItemCrafting{
recipeCoilAdvanced = Util.GetRecipes.lastIRecipe(); recipeCoilAdvanced = Util.GetRecipes.lastIRecipe();
} }
//Ender Pearl
GameRegistry.addRecipe(new ItemStack(Items.ender_pearl),
"XXX", "XXX", "XXX",
'X', new ItemStack(InitItems.itemSpecialDrop, 1, TheSpecialDrops.PEARL_SHARD.ordinal()));
//Emerald
GameRegistry.addRecipe(new ItemStack(Items.emerald),
"XXX", "XXX", "XXX",
'X', new ItemStack(InitItems.itemSpecialDrop, 1, TheSpecialDrops.EMERALD_SHARD.ordinal()));
//Advanced Leaf Blower //Advanced Leaf Blower
if(ConfigCrafting.LEAF_BLOWER_ADVANCED.isEnabled()){ if(ConfigCrafting.LEAF_BLOWER_ADVANCED.isEnabled()){
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(InitItems.itemLeafBlowerAdvanced), GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(InitItems.itemLeafBlowerAdvanced),

View file

@ -172,7 +172,7 @@ public class CreativeTab extends CreativeTabs{
add(InitItems.itemKnife); add(InitItems.itemKnife);
add(InitItems.itemCrafterOnAStick); add(InitItems.itemCrafterOnAStick);
add(InitItems.itemDust); add(InitItems.itemDust);
add(InitItems.itemSpecialDrop); add(InitItems.itemSolidifiedExperience);
add(InitItems.itemLeafBlower); add(InitItems.itemLeafBlower);
add(InitItems.itemLeafBlowerAdvanced); add(InitItems.itemLeafBlowerAdvanced);

View file

@ -14,8 +14,8 @@ import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import ellpeck.actuallyadditions.config.values.ConfigBoolValues; import ellpeck.actuallyadditions.config.values.ConfigBoolValues;
import ellpeck.actuallyadditions.items.InitItems; import ellpeck.actuallyadditions.items.InitItems;
import ellpeck.actuallyadditions.items.metalists.TheMiscItems; import ellpeck.actuallyadditions.items.metalists.TheMiscItems;
import ellpeck.actuallyadditions.items.metalists.TheSpecialDrops;
import ellpeck.actuallyadditions.util.Util; import ellpeck.actuallyadditions.util.Util;
import net.minecraft.entity.EntityCreature;
import net.minecraft.entity.monster.EntitySpider; import net.minecraft.entity.monster.EntitySpider;
import net.minecraft.entity.passive.EntityBat; import net.minecraft.entity.passive.EntityBat;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
@ -28,13 +28,10 @@ public class LivingDropEvent{
@SubscribeEvent @SubscribeEvent
public void onEntityDropEvent(LivingDropsEvent event){ public void onEntityDropEvent(LivingDropsEvent event){
if(event.source.getEntity() instanceof EntityPlayer){ if(event.source.getEntity() instanceof EntityPlayer){
//Drop Special Items (Solidified Experience, Pearl Shards etc.) //Drop Solidified XP
for(int i = 0; i < TheSpecialDrops.values().length; i++){ if(event.entityLiving instanceof EntityCreature){
TheSpecialDrops theDrop = TheSpecialDrops.values()[i]; if(Util.RANDOM.nextInt(15) <= 0){
if(theDrop.canDrop && theDrop.dropFrom.isAssignableFrom(event.entityLiving.getClass())){ event.entityLiving.entityDropItem(new ItemStack(InitItems.itemSolidifiedExperience, Util.RANDOM.nextInt(2)+1), 0);
if(Util.RANDOM.nextInt(100)+1 <= theDrop.chance){
event.entityLiving.entityDropItem(new ItemStack(InitItems.itemSpecialDrop, Util.RANDOM.nextInt(theDrop.maxAmount)+1, theDrop.ordinal()), 0);
}
} }
} }

View file

@ -37,7 +37,7 @@ public class InitItems{
public static Item itemKnife; public static Item itemKnife;
public static Item itemCrafterOnAStick; public static Item itemCrafterOnAStick;
public static Item itemDust; public static Item itemDust;
public static Item itemSpecialDrop; public static Item itemSolidifiedExperience;
public static Item itemLeafBlower; public static Item itemLeafBlower;
public static Item itemLeafBlowerAdvanced; public static Item itemLeafBlowerAdvanced;
@ -192,7 +192,7 @@ public class InitItems{
itemKnife = new ItemKnife("itemKnife"); itemKnife = new ItemKnife("itemKnife");
itemCrafterOnAStick = new ItemCrafterOnAStick("itemCrafterOnAStick"); itemCrafterOnAStick = new ItemCrafterOnAStick("itemCrafterOnAStick");
itemDust = new ItemDust("itemDust"); itemDust = new ItemDust("itemDust");
itemSpecialDrop = new ItemSpecialDrop("itemSpecial"); itemSolidifiedExperience = new ItemSolidifiedExperience("itemSolidifiedExperience");
itemLeafBlower = new ItemLeafBlower(false, "itemLeafBlower"); itemLeafBlower = new ItemLeafBlower(false, "itemLeafBlower");
itemLeafBlowerAdvanced = new ItemLeafBlower(true, "itemLeafBlowerAdvanced"); itemLeafBlowerAdvanced = new ItemLeafBlower(true, "itemLeafBlowerAdvanced");
itemPotionRing = new ItemPotionRing(false, "itemPotionRing"); itemPotionRing = new ItemPotionRing(false, "itemPotionRing");

View file

@ -0,0 +1,68 @@
/*
* This file ("ItemSolidifiedExperience.java") is part of the Actually Additions Mod for Minecraft.
* It is created and owned by Ellpeck and distributed
* under the Actually Additions License to be found at
* http://github.com/Ellpeck/ActuallyAdditions/blob/master/README.md
* View the source code at https://github.com/Ellpeck/ActuallyAdditions
*
* © 2015 Ellpeck
*/
package ellpeck.actuallyadditions.items;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ellpeck.actuallyadditions.items.base.ItemBase;
import ellpeck.actuallyadditions.util.ModUtil;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.item.EntityXPOrb;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.EnumRarity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
public class ItemSolidifiedExperience extends ItemBase{
public static final int SOLID_XP_AMOUNT = 8;
public ItemSolidifiedExperience(String name){
super(name);
}
@Override
public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player){
if(!world.isRemote){
if(!player.isSneaking()){
world.spawnEntityInWorld(new EntityXPOrb(world, player.posX+0.5, player.posY+0.5, player.posZ+0.5, SOLID_XP_AMOUNT));
if(!player.capabilities.isCreativeMode){
stack.stackSize--;
}
}
else{
world.spawnEntityInWorld(new EntityXPOrb(world, player.posX+0.5, player.posY+0.5, player.posZ+0.5, SOLID_XP_AMOUNT*stack.stackSize));
if(!player.capabilities.isCreativeMode){
stack.stackSize = 0;
}
}
}
return stack;
}
@Override
public EnumRarity getRarity(ItemStack stack){
return EnumRarity.uncommon;
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister iconReg){
this.itemIcon = iconReg.registerIcon(ModUtil.MOD_ID_LOWER+":"+this.getBaseName());
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIcon(ItemStack stack, int pass){
return this.itemIcon;
}
}

View file

@ -1,102 +0,0 @@
/*
* This file ("ItemSpecialDrop.java") is part of the Actually Additions Mod for Minecraft.
* It is created and owned by Ellpeck and distributed
* under the Actually Additions License to be found at
* http://github.com/Ellpeck/ActuallyAdditions/blob/master/README.md
* View the source code at https://github.com/Ellpeck/ActuallyAdditions
*
* © 2015 Ellpeck
*/
package ellpeck.actuallyadditions.items;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ellpeck.actuallyadditions.items.base.ItemBase;
import ellpeck.actuallyadditions.items.metalists.TheSpecialDrops;
import ellpeck.actuallyadditions.util.ModUtil;
import ellpeck.actuallyadditions.util.StringUtil;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.item.EntityXPOrb;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.EnumRarity;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
import java.util.List;
public class ItemSpecialDrop extends ItemBase{
public static final int SOLID_XP_AMOUNT = 8;
public static final TheSpecialDrops[] allDrops = TheSpecialDrops.values();
@SideOnly(Side.CLIENT)
public IIcon[] textures;
public ItemSpecialDrop(String name){
super(name);
this.setHasSubtypes(true);
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIconFromDamage(int par1){
return par1 >= textures.length ? null : textures[par1];
}
@Override
public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player){
if(!world.isRemote){
if(stack.getItemDamage() == TheSpecialDrops.SOLIDIFIED_EXPERIENCE.ordinal()){
if(!player.isSneaking()){
world.spawnEntityInWorld(new EntityXPOrb(world, player.posX+0.5, player.posY+0.5, player.posZ+0.5, SOLID_XP_AMOUNT));
if(!player.capabilities.isCreativeMode){
stack.stackSize--;
}
}
else{
world.spawnEntityInWorld(new EntityXPOrb(world, player.posX+0.5, player.posY+0.5, player.posZ+0.5, SOLID_XP_AMOUNT*stack.stackSize));
if(!player.capabilities.isCreativeMode){
stack.stackSize = 0;
}
}
}
}
return stack;
}
@Override
public int getMetadata(int damage){
return damage;
}
@Override
public String getUnlocalizedName(ItemStack stack){
return stack.getItemDamage() >= allDrops.length ? StringUtil.BUGGED_ITEM_NAME : this.getUnlocalizedName()+allDrops[stack.getItemDamage()].name;
}
@Override
public EnumRarity getRarity(ItemStack stack){
return stack.getItemDamage() >= allDrops.length ? EnumRarity.common : allDrops[stack.getItemDamage()].rarity;
}
@SuppressWarnings("all")
@SideOnly(Side.CLIENT)
public void getSubItems(Item item, CreativeTabs tab, List list){
for(int j = 0; j < allDrops.length; j++){
list.add(new ItemStack(this, 1, j));
}
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister iconReg){
this.textures = new IIcon[allDrops.length];
for(int i = 0; i < textures.length; i++){
textures[i] = iconReg.registerIcon(ModUtil.MOD_ID_LOWER+":"+this.getBaseName()+allDrops[i].name);
}
}
}

View file

@ -1,44 +0,0 @@
/*
* This file ("TheSpecialDrops.java") is part of the Actually Additions Mod for Minecraft.
* It is created and owned by Ellpeck and distributed
* under the Actually Additions License to be found at
* http://github.com/Ellpeck/ActuallyAdditions/blob/master/README.md
* View the source code at https://github.com/Ellpeck/ActuallyAdditions
*
* © 2015 Ellpeck
*/
package ellpeck.actuallyadditions.items.metalists;
import ellpeck.actuallyadditions.config.values.ConfigBoolValues;
import net.minecraft.entity.EntityCreature;
import net.minecraft.entity.monster.EntityCreeper;
import net.minecraft.entity.monster.EntityEnderman;
import net.minecraft.entity.monster.EntitySkeleton;
import net.minecraft.item.EnumRarity;
public enum TheSpecialDrops{
SOLIDIFIED_EXPERIENCE("SolidifiedExperience", 40, 3, EntityCreature.class, EnumRarity.uncommon, ConfigBoolValues.EXPERIENCE_DROP.isEnabled()),
BLOOD_FRAGMENT("BloodFragment", 15, 1, EntityCreature.class, EnumRarity.uncommon, ConfigBoolValues.BLOOD_DROP.isEnabled()),
HEART_PART("HeartPart", 5, 1, EntityCreature.class, EnumRarity.rare, ConfigBoolValues.HEART_DROP.isEnabled()),
UNKNOWN_SUBSTANCE("UnknownSubstance", 3, 1, EntitySkeleton.class, EnumRarity.epic, ConfigBoolValues.SUBSTANCE_DROP.isEnabled()),
PEARL_SHARD("PearlShard", 30, 3, EntityEnderman.class, EnumRarity.epic, ConfigBoolValues.PEARL_SHARD_DROP.isEnabled()),
EMERALD_SHARD("EmeraldShard", 30, 3, EntityCreeper.class, EnumRarity.rare, ConfigBoolValues.EMERALD_SHARD_CROP.isEnabled());
public final String name;
public final int chance;
public final int maxAmount;
public final Class<? extends EntityCreature> dropFrom;
public final boolean canDrop;
public final EnumRarity rarity;
TheSpecialDrops(String name, int chance, int maxAmount, Class<? extends EntityCreature> dropFrom, EnumRarity rarity, boolean canDrop){
this.name = name;
this.chance = chance;
this.rarity = rarity;
this.maxAmount = maxAmount;
this.dropFrom = dropFrom;
this.canDrop = canDrop;
}
}

View file

@ -16,7 +16,6 @@ import ellpeck.actuallyadditions.items.InitItems;
import ellpeck.actuallyadditions.items.metalists.TheDusts; import ellpeck.actuallyadditions.items.metalists.TheDusts;
import ellpeck.actuallyadditions.items.metalists.TheFoods; import ellpeck.actuallyadditions.items.metalists.TheFoods;
import ellpeck.actuallyadditions.items.metalists.TheMiscItems; import ellpeck.actuallyadditions.items.metalists.TheMiscItems;
import ellpeck.actuallyadditions.items.metalists.TheSpecialDrops;
import ellpeck.actuallyadditions.util.ModUtil; import ellpeck.actuallyadditions.util.ModUtil;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
@ -59,10 +58,6 @@ public class InitOreDict{
//For Crafting //For Crafting
addOre(InitItems.itemMisc, TheMiscItems.RICE_SLIME.ordinal(), "slimeball"); addOre(InitItems.itemMisc, TheMiscItems.RICE_SLIME.ordinal(), "slimeball");
//For Compat
addOre(InitItems.itemSpecialDrop, TheSpecialDrops.EMERALD_SHARD.ordinal(), "nuggetEmerald");
addOre(InitItems.itemSpecialDrop, TheSpecialDrops.PEARL_SHARD.ordinal(), "nuggetEnderpearl");
//For Crafting //For Crafting
addOre(InitItems.itemMisc, TheMiscItems.BLACK_DYE.ordinal(), "dyeBlack"); addOre(InitItems.itemMisc, TheMiscItems.BLACK_DYE.ordinal(), "dyeBlack");
} }

View file

@ -11,7 +11,6 @@
package ellpeck.actuallyadditions.recipe; package ellpeck.actuallyadditions.recipe;
import ellpeck.actuallyadditions.items.InitItems; import ellpeck.actuallyadditions.items.InitItems;
import ellpeck.actuallyadditions.items.metalists.TheSpecialDrops;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
@ -47,9 +46,7 @@ public class HairyBallHandler{
addReturn(new ItemStack(Blocks.sand), 50); addReturn(new ItemStack(Blocks.sand), 50);
addReturn(new ItemStack(Blocks.vine), 30); addReturn(new ItemStack(Blocks.vine), 30);
addReturn(new ItemStack(Blocks.web), 4); addReturn(new ItemStack(Blocks.web), 4);
addReturn(new ItemStack(InitItems.itemSpecialDrop, 1, TheSpecialDrops.SOLIDIFIED_EXPERIENCE.ordinal()), 20); addReturn(new ItemStack(InitItems.itemSolidifiedExperience), 20);
addReturn(new ItemStack(InitItems.itemSpecialDrop, 1, TheSpecialDrops.EMERALD_SHARD.ordinal()), 10);
addReturn(new ItemStack(InitItems.itemSpecialDrop, 1, TheSpecialDrops.PEARL_SHARD.ordinal()), 10);
} }
public static void addReturn(ItemStack stack, int chance){ public static void addReturn(ItemStack stack, int chance){

View file

@ -13,7 +13,6 @@ package ellpeck.actuallyadditions.recipe;
import ellpeck.actuallyadditions.blocks.InitBlocks; import ellpeck.actuallyadditions.blocks.InitBlocks;
import ellpeck.actuallyadditions.items.InitItems; import ellpeck.actuallyadditions.items.InitItems;
import ellpeck.actuallyadditions.items.metalists.TheJams; import ellpeck.actuallyadditions.items.metalists.TheJams;
import ellpeck.actuallyadditions.items.metalists.TheSpecialDrops;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.WeightedRandom; import net.minecraft.util.WeightedRandom;
@ -32,7 +31,7 @@ public class TreasureChestHandler{
addReturn(new ItemStack(Items.ender_pearl), 10, 1, 2); addReturn(new ItemStack(Items.ender_pearl), 10, 1, 2);
addReturn(new ItemStack(Items.emerald), 3, 1, 1); addReturn(new ItemStack(Items.emerald), 3, 1, 1);
addReturn(new ItemStack(Items.experience_bottle), 5, 3, 6); addReturn(new ItemStack(Items.experience_bottle), 5, 3, 6);
addReturn(new ItemStack(InitItems.itemSpecialDrop, 1, TheSpecialDrops.SOLIDIFIED_EXPERIENCE.ordinal()), 15, 3, 6); addReturn(new ItemStack(InitItems.itemSolidifiedExperience), 15, 3, 6);
addReturn(new ItemStack(Items.record_11), 1, 1, 1); addReturn(new ItemStack(Items.record_11), 1, 1, 1);
addReturn(new ItemStack(Items.record_13), 1, 1, 1); addReturn(new ItemStack(Items.record_13), 1, 1, 1);
addReturn(new ItemStack(Items.record_blocks), 1, 1, 1); addReturn(new ItemStack(Items.record_blocks), 1, 1, 1);

View file

@ -12,8 +12,7 @@ package ellpeck.actuallyadditions.tile;
import ellpeck.actuallyadditions.items.InitItems; import ellpeck.actuallyadditions.items.InitItems;
import ellpeck.actuallyadditions.items.ItemSpecialDrop; import ellpeck.actuallyadditions.items.ItemSolidifiedExperience;
import ellpeck.actuallyadditions.items.metalists.TheSpecialDrops;
import ellpeck.actuallyadditions.network.gui.IButtonReactor; import ellpeck.actuallyadditions.network.gui.IButtonReactor;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
@ -36,7 +35,7 @@ public class TileEntityXPSolidifier extends TileEntityInventoryBase implements I
if(this.amount > 0){ if(this.amount > 0){
if(this.slots[0] == null){ if(this.slots[0] == null){
int toSet = this.amount > 64 ? 64 : this.amount; int toSet = this.amount > 64 ? 64 : this.amount;
this.slots[0] = new ItemStack(InitItems.itemSpecialDrop, toSet, TheSpecialDrops.SOLIDIFIED_EXPERIENCE.ordinal()); this.slots[0] = new ItemStack(InitItems.itemSolidifiedExperience, toSet);
this.amount -= toSet; this.amount -= toSet;
} }
else if(this.slots[0].stackSize < 64){ else if(this.slots[0].stackSize < 64){
@ -84,9 +83,9 @@ public class TileEntityXPSolidifier extends TileEntityInventoryBase implements I
public void onButtonPressed(int buttonID, EntityPlayer player){ public void onButtonPressed(int buttonID, EntityPlayer player){
if(buttonID < this.buttonAmounts.length){ if(buttonID < this.buttonAmounts.length){
if(this.getPlayerXP(player) > 0){ if(this.getPlayerXP(player) > 0){
int xp = this.buttonAmounts[buttonID] == -999 ? this.getPlayerXP(player)/ItemSpecialDrop.SOLID_XP_AMOUNT : this.buttonAmounts[buttonID]; int xp = this.buttonAmounts[buttonID] == -999 ? this.getPlayerXP(player)/ItemSolidifiedExperience.SOLID_XP_AMOUNT : this.buttonAmounts[buttonID];
if(this.amount < Short.MAX_VALUE-xp && this.getPlayerXP(player) >= ItemSpecialDrop.SOLID_XP_AMOUNT*xp){ if(this.amount < Short.MAX_VALUE-xp && this.getPlayerXP(player) >= ItemSolidifiedExperience.SOLID_XP_AMOUNT*xp){
this.addPlayerXP(player, -(ItemSpecialDrop.SOLID_XP_AMOUNT*xp)); this.addPlayerXP(player, -(ItemSolidifiedExperience.SOLID_XP_AMOUNT*xp));
if(!worldObj.isRemote){ if(!worldObj.isRemote){
this.amount += xp; this.amount += xp;
} }

View file

@ -280,12 +280,7 @@ item.actuallyadditions.itemMiscCoil.name=Basic Coil
item.actuallyadditions.itemMiscCoilAdvanced.name=Advanced Coil item.actuallyadditions.itemMiscCoilAdvanced.name=Advanced Coil
item.actuallyadditions.itemPotionRing.name=Ring of item.actuallyadditions.itemPotionRing.name=Ring of
item.actuallyadditions.itemPotionRingAdvanced.name=Advanced Ring of item.actuallyadditions.itemPotionRingAdvanced.name=Advanced Ring of
item.actuallyadditions.itemSpecialUnknownSubstance.name=Unknown Substance item.actuallyadditions.itemSolidifiedExperience.name=Solidified Experience
item.actuallyadditions.itemSpecialSolidifiedExperience.name=Solidified Experience
item.actuallyadditions.itemSpecialBloodFragment.name=Blood Fragment
item.actuallyadditions.itemSpecialHeartPart.name=Part of a Heart
item.actuallyadditions.itemSpecialPearlShard.name=Ender Pearl Shard
item.actuallyadditions.itemSpecialEmeraldShard.name=Emerald Shard
item.actuallyadditions.itemDustIron.name=Crushed Iron item.actuallyadditions.itemDustIron.name=Crushed Iron
item.actuallyadditions.itemDustGold.name=Crushed Gold item.actuallyadditions.itemDustGold.name=Crushed Gold
item.actuallyadditions.itemDustDiamond.name=Crushed Diamond item.actuallyadditions.itemDustDiamond.name=Crushed Diamond

Binary file not shown.

Before

Width:  |  Height:  |  Size: 377 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 395 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 557 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 566 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 531 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 631 B