Improve energy bars on items

This commit is contained in:
ProfessorProspector 2016-12-08 18:39:49 -08:00
parent 467544ebfe
commit 226c0bc619
30 changed files with 431 additions and 152 deletions

View file

@ -1,24 +1,22 @@
package techreborn.items.battery;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.item.IItemPropertyGetter;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItem;
import techreborn.items.ItemTRNoDestroy;
import javax.annotation.Nullable;
import java.util.List;
public class ItemBattery extends ItemTRNoDestroy implements IEnergyItemInfo {
String name = "null";
String name;
int maxEnergy = 0;
int maxTransfer = 0;
int tier = 0;
@ -47,17 +45,6 @@ public class ItemBattery extends ItemTRNoDestroy implements IEnergyItemInfo {
});
}
@SuppressWarnings({ "rawtypes", "unchecked" })
@SideOnly(Side.CLIENT)
public void getSubItems(Item item, CreativeTabs par2CreativeTabs, List itemList) {
ItemStack itemStack = new ItemStack(this, 1);
itemList.add(itemStack);
ItemStack charged = new ItemStack(this, 1);
PoweredItem.setEnergy(getMaxPower(charged), charged);
itemList.add(charged);
}
@Override
public double getDurabilityForDisplay(ItemStack stack) {
double charge = (PoweredItem.getEnergy(stack) / getMaxPower(stack));
@ -70,6 +57,11 @@ public class ItemBattery extends ItemTRNoDestroy implements IEnergyItemInfo {
return true;
}
@Override
public int getRGBDurabilityForDisplay(ItemStack stack) {
return PowerSystem.getDisplayPower().colour;
}
@Override
public double getMaxPower(ItemStack stack) {
return maxEnergy;

View file

@ -1,8 +1,30 @@
package techreborn.items.battery;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.PoweredItem;
import techreborn.init.ModItems;
public class ItemEnergyCrystal extends ItemBattery {
public ItemEnergyCrystal() {
super("energyCrystal", 100000, 512, 1);
}
@SuppressWarnings({ "rawtypes", "unchecked" })
@SideOnly(Side.CLIENT)
public void getSubItems(Item item,
CreativeTabs par2CreativeTabs, NonNullList itemList) {
ItemStack stack = new ItemStack(ModItems.energyCrystal);
ItemStack uncharged = stack.copy();
ItemStack charged = stack.copy();
PoweredItem.setEnergy(getMaxPower(charged), charged);
itemList.add(uncharged);
itemList.add(charged);
}
}

View file

@ -1,8 +1,30 @@
package techreborn.items.battery;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.PoweredItem;
import techreborn.init.ModItems;
public class ItemLapotronCrystal extends ItemBattery {
public ItemLapotronCrystal() {
super("lapotronCrystal", 1000000, 512, 2);
}
@SuppressWarnings({ "rawtypes", "unchecked" })
@SideOnly(Side.CLIENT)
public void getSubItems(Item item,
CreativeTabs par2CreativeTabs, NonNullList itemList) {
ItemStack stack = new ItemStack(ModItems.lapotronCrystal);
ItemStack uncharged = stack.copy();
ItemStack charged = stack.copy();
PoweredItem.setEnergy(getMaxPower(charged), charged);
itemList.add(uncharged);
itemList.add(charged);
}
}

View file

@ -0,0 +1,31 @@
package techreborn.items.battery;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.PoweredItem;
import techreborn.config.ConfigTechReborn;
import techreborn.init.ModItems;
public class ItemLapotronicOrb extends ItemBattery {
public ItemLapotronicOrb() {
super("lapotronicorb", ConfigTechReborn.LapotronicOrbMaxCharge, 10000, ConfigTechReborn.LapotronicOrbTier);
}
@SuppressWarnings({ "rawtypes", "unchecked" })
@SideOnly(Side.CLIENT)
public void getSubItems(Item item,
CreativeTabs par2CreativeTabs, NonNullList itemList) {
ItemStack stack = new ItemStack(ModItems.lapotronicOrb);
ItemStack uncharged = stack.copy();
ItemStack charged = stack.copy();
PoweredItem.setEnergy(getMaxPower(charged), charged);
itemList.add(uncharged);
itemList.add(charged);
}
}

View file

@ -1,9 +1,31 @@
package techreborn.items.battery;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.PoweredItem;
import techreborn.init.ModItems;
public class ItemLithiumBattery extends ItemBattery {
public ItemLithiumBattery() {
super("lithiumBattery", 100000, 512, 1);
}
@SuppressWarnings({ "rawtypes", "unchecked" })
@SideOnly(Side.CLIENT)
public void getSubItems(Item item,
CreativeTabs par2CreativeTabs, NonNullList itemList) {
ItemStack stack = new ItemStack(ModItems.lithiumBattery);
ItemStack uncharged = stack.copy();
ItemStack charged = stack.copy();
PoweredItem.setEnergy(getMaxPower(charged), charged);
itemList.add(uncharged);
itemList.add(charged);
}
}

View file

@ -1,8 +1,30 @@
package techreborn.items.battery;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.PoweredItem;
import techreborn.init.ModItems;
public class ItemReBattery extends ItemBattery {
public ItemReBattery() {
super("rebattery", 10000, 64, 1);
}
@SuppressWarnings({ "rawtypes", "unchecked" })
@SideOnly(Side.CLIENT)
public void getSubItems(Item item,
CreativeTabs par2CreativeTabs, NonNullList itemList) {
ItemStack stack = new ItemStack(ModItems.reBattery);
ItemStack uncharged = stack.copy();
ItemStack charged = stack.copy();
PoweredItem.setEnergy(getMaxPower(charged), charged);
itemList.add(uncharged);
itemList.add(charged);
}
}