Move SoulNetwork to UUID system

*Should* work correctly. As for all major changes, needs to be
thoroughly tested.
This commit is contained in:
Nick 2015-12-28 20:13:11 -08:00
parent 8edb8a45e6
commit 24058d7350
14 changed files with 112 additions and 49 deletions

View file

@ -7,6 +7,7 @@ import WayofTime.bloodmagic.api.iface.IBindable;
import WayofTime.bloodmagic.api.util.helper.BindableHelper;
import WayofTime.bloodmagic.api.util.helper.NBTHelper;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import WayofTime.bloodmagic.api.util.helper.PlayerHelper;
import WayofTime.bloodmagic.util.helper.TextHelper;
import com.google.common.base.Strings;
import net.minecraft.entity.player.EntityPlayer;
@ -35,7 +36,7 @@ public class ItemBindable extends Item implements IBindable {
public static boolean syphonBatteries(ItemStack stack, EntityPlayer player, int damageToBeDone) {
if (!player.worldObj.isRemote) {
return NetworkHelper.syphonAndDamage(NetworkHelper.getSoulNetwork(BindableHelper.getOwnerName(stack), player.worldObj), damageToBeDone);
return NetworkHelper.syphonAndDamage(NetworkHelper.getSoulNetwork(player, player.worldObj), damageToBeDone);
} else {
double posX = player.posX;
double posY = player.posY;
@ -76,8 +77,8 @@ public class ItemBindable extends Item implements IBindable {
public void addInformation(ItemStack stack, EntityPlayer player, List<String> tooltip, boolean advanced) {
NBTHelper.checkNBT(stack);
if (!Strings.isNullOrEmpty(stack.getTagCompound().getString(Constants.NBT.OWNER_NAME)))
tooltip.add(TextHelper.getFormattedText(String.format(StatCollector.translateToLocal("tooltip.BloodMagic.currentOwner"), stack.getTagCompound().getString(Constants.NBT.OWNER_NAME))));
if (!Strings.isNullOrEmpty(stack.getTagCompound().getString(Constants.NBT.OWNER_UUID)))
tooltip.add(TextHelper.getFormattedText(String.format(StatCollector.translateToLocal("tooltip.BloodMagic.currentOwner"), PlayerHelper.getUsernameFromStack(stack))));
}
@Override
@ -129,7 +130,7 @@ public class ItemBindable extends Item implements IBindable {
public String getBindableOwner(ItemStack stack) {
stack = NBTHelper.checkNBT(stack);
return stack.getTagCompound().getString(Constants.NBT.OWNER_NAME);
return stack.getTagCompound().getString(Constants.NBT.OWNER_UUID);
}
// IBindable

View file

@ -54,16 +54,16 @@ public class ItemBloodOrb extends ItemBindable implements IBloodOrb, IBindable {
if (PlayerHelper.isFakePlayer(player))
return stack;
if (Strings.isNullOrEmpty(stack.getTagCompound().getString(Constants.NBT.OWNER_NAME)))
if (Strings.isNullOrEmpty(stack.getTagCompound().getString(Constants.NBT.OWNER_UUID)))
return stack;
if (world.isRemote)
return stack;
if (stack.getTagCompound().getString(Constants.NBT.OWNER_NAME).equals(PlayerHelper.getUsernameFromPlayer(player)))
NetworkHelper.setMaxOrb(NetworkHelper.getSoulNetwork(stack.getTagCompound().getString(Constants.NBT.OWNER_NAME), world), getOrbLevel(stack.getItemDamage()));
if (stack.getTagCompound().getString(Constants.NBT.OWNER_UUID).equals(PlayerHelper.getUsernameFromPlayer(player)))
NetworkHelper.setMaxOrb(NetworkHelper.getSoulNetwork(stack.getTagCompound().getString(Constants.NBT.OWNER_UUID), world), getOrbLevel(stack.getItemDamage()));
NetworkHelper.getSoulNetwork(stack.getTagCompound().getString(Constants.NBT.OWNER_NAME), world).addLifeEssence(200, getMaxEssence(stack.getItemDamage()));
NetworkHelper.getSoulNetwork(stack.getTagCompound().getString(Constants.NBT.OWNER_UUID), world).addLifeEssence(200, getMaxEssence(stack.getItemDamage()));
hurtPlayer(player, 200);
return stack;
}

View file

@ -73,7 +73,7 @@ public class ItemPackSelfSacrifice extends ItemArmor implements IAltarManipulato
boolean shouldSyphon = player.getHealth() / player.getMaxHealth() > HEALTHREQ && getStoredLP(stack) < CAPACITY;
if (shouldSyphon & world.getTotalWorldTime() % INTERVAL == 0) {
NetworkHelper.getSoulNetwork(player.getName(), world).hurtPlayer(1.0F);
NetworkHelper.getSoulNetwork(player, world).hurtPlayer(1.0F);
addLP(stack, CONVERSION);
}
}

View file

@ -32,7 +32,7 @@ public class ItemSigilDivination extends ItemSigilBase implements IAltarReader {
if (!world.isRemote) {
MovingObjectPosition position = getMovingObjectPositionFromPlayer(world, player, false);
int currentEssence = NetworkHelper.getSoulNetwork(BindableHelper.getOwnerName(stack), world).getCurrentEssence();
int currentEssence = NetworkHelper.getSoulNetwork(BindableHelper.getOwnerUUID(stack), world).getCurrentEssence();
if (position == null) {
ChatUtil.sendNoSpam(player, new ChatComponentText(TextHelper.localize(tooltipBase + "currentEssence", currentEssence)));

View file

@ -32,7 +32,7 @@ public class ItemSigilSeer extends ItemSigilBase implements IAltarReader {
if (!world.isRemote) {
MovingObjectPosition position = getMovingObjectPositionFromPlayer(world, player, false);
int currentEssence = NetworkHelper.getSoulNetwork(BindableHelper.getOwnerName(stack), world).getCurrentEssence();
int currentEssence = NetworkHelper.getSoulNetwork(BindableHelper.getOwnerUUID(stack), world).getCurrentEssence();
if (position == null) {
ChatUtil.sendNoSpam(player, new ChatComponentText(TextHelper.localize(tooltipBase + "currentEssence", currentEssence)));