Rewrite LP network data saving system

Instead of creating a new file for each player with their UUID as the name, we create a single file and store it all in a List. That List gets converted to a UUID -> SoulNetwork map when read from the file.

MigrateNetworkDataHandler is used to migrate players from the old system to the new one. It reads both data files and sets the LP of the new network to the LP of the old network (if the old network is larger). Once conversion is done, we delete the old file so that it doesn't happen again and overwrite player progress.

This is an API breaking change due to an import change.
This commit is contained in:
Nicholas Ignoffo 2016-06-12 13:41:02 -07:00
parent f8859dbf56
commit f99b21cffc
40 changed files with 423 additions and 283 deletions

View file

@ -5,7 +5,7 @@ import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.altar.AltarComponent;
import WayofTime.bloodmagic.api.altar.EnumAltarComponent;
import WayofTime.bloodmagic.api.altar.EnumAltarTier;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.EnumRuneType;
import WayofTime.bloodmagic.api.ritual.IMasterRitualStone;
import WayofTime.bloodmagic.api.ritual.Ritual;
@ -55,7 +55,7 @@ public class RitualAltarBuilder extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,8 +1,8 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import net.minecraft.entity.EntityAgeable;
import net.minecraft.util.math.AxisAlignedBB;
@ -32,7 +32,7 @@ public class RitualAnimalGrowth extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,7 +1,7 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import WayofTime.bloodmagic.item.ItemComponent;
@ -36,7 +36,7 @@ public class RitualCobblestone extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,7 +1,7 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import WayofTime.bloodmagic.api.util.helper.PlayerHelper;
@ -32,7 +32,7 @@ public class RitualContainment extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -5,14 +5,13 @@ import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.AreaDescriptor;
import WayofTime.bloodmagic.api.ritual.EnumRuneType;
import WayofTime.bloodmagic.api.ritual.IMasterRitualStone;
@ -46,7 +45,7 @@ public class RitualCrushing extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -7,7 +7,7 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.AreaDescriptor;
import WayofTime.bloodmagic.api.ritual.EnumRuneType;
import WayofTime.bloodmagic.api.ritual.IMasterRitualStone;
@ -38,7 +38,7 @@ public class RitualCrystalHarvest extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -18,7 +18,7 @@ import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.living.EnderTeleportEvent;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.iface.IBindable;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.AreaDescriptor;
import WayofTime.bloodmagic.api.ritual.EnumRuneType;
import WayofTime.bloodmagic.api.ritual.IMasterRitualStone;
@ -49,7 +49,7 @@ public class RitualExpulsion extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,7 +1,7 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import WayofTime.bloodmagic.tile.TileAltar;
@ -43,7 +43,7 @@ public class RitualFeatheredKnife extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,7 +1,7 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import WayofTime.bloodmagic.util.Utils;
@ -53,7 +53,7 @@ public class RitualFelling extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -13,7 +13,7 @@ import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import WayofTime.bloodmagic.ConfigHandler;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.AreaDescriptor;
import WayofTime.bloodmagic.api.ritual.EnumRuneType;
import WayofTime.bloodmagic.api.ritual.IMasterRitualStone;
@ -89,7 +89,7 @@ public class RitualForsakenSoul extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,7 +1,7 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import net.minecraft.entity.player.EntityPlayer;
@ -91,7 +91,7 @@ public class RitualFullStomach extends Ritual
if (totalEffects >= maxEffects)
{
network.causeNauseaToPlayer();
network.causeNausea();
break;
}

View file

@ -2,7 +2,7 @@ package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.BloodMagicAPI;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import net.minecraft.block.Block;
@ -35,7 +35,7 @@ public class RitualGreenGrove extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -3,7 +3,7 @@ package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.BlockStack;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.iface.IHarvestHandler;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.registry.HarvestRegistry;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
@ -43,7 +43,7 @@ public class RitualHarvest extends Ritual
if (network.getCurrentEssence() < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,7 +1,7 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import WayofTime.bloodmagic.api.util.helper.PlayerHelper;
@ -32,7 +32,7 @@ public class RitualInterdiction extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,13 +1,12 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import WayofTime.bloodmagic.util.Utils;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
@ -34,7 +33,7 @@ public class RitualJumping extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,7 +1,7 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import net.minecraft.init.Blocks;
@ -30,7 +30,7 @@ public class RitualLava extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -2,8 +2,8 @@ package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.BlockStack;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import WayofTime.bloodmagic.util.Utils;
import net.minecraft.block.Block;
@ -79,7 +79,7 @@ public class RitualMagnetic extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,7 +1,7 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import net.minecraft.block.Block;
@ -44,7 +44,7 @@ public class RitualPlacer extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,7 +1,7 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import net.minecraft.block.BlockLiquid;
@ -45,7 +45,7 @@ public class RitualPump extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -11,7 +11,7 @@ import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.AreaDescriptor;
import WayofTime.bloodmagic.api.ritual.EnumRuneType;
import WayofTime.bloodmagic.api.ritual.IMasterRitualStone;
@ -41,7 +41,7 @@ public class RitualRegeneration extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -8,7 +8,7 @@ import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.AreaDescriptor;
import WayofTime.bloodmagic.api.ritual.EnumRuneType;
import WayofTime.bloodmagic.api.ritual.IMasterRitualStone;
@ -37,7 +37,7 @@ public class RitualSpeed extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -7,7 +7,7 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.AreaDescriptor;
import WayofTime.bloodmagic.api.ritual.EnumRuneType;
import WayofTime.bloodmagic.api.ritual.IMasterRitualStone;
@ -36,7 +36,7 @@ public class RitualSuppression extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,7 +1,7 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import net.minecraft.init.Blocks;
@ -30,7 +30,7 @@ public class RitualWater extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -2,7 +2,7 @@ package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.ConfigHandler;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import WayofTime.bloodmagic.tile.TileAltar;
@ -45,7 +45,7 @@ public class RitualWellOfSuffering extends Ritual
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,7 +1,7 @@
package WayofTime.bloodmagic.ritual;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.ritual.*;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import WayofTime.bloodmagic.util.Utils;
@ -45,7 +45,7 @@ public class RitualZephyr extends Ritual
{
if (currentEssence < getRefreshCost())
{
network.causeNauseaToPlayer();
network.causeNausea();
return;
}

View file

@ -1,9 +1,8 @@
package WayofTime.bloodmagic.ritual.portal;
import WayofTime.bloodmagic.api.event.TeleposeEvent;
import WayofTime.bloodmagic.api.network.SoulNetwork;
import WayofTime.bloodmagic.api.saving.SoulNetwork;
import WayofTime.bloodmagic.api.teleport.Teleport;
import WayofTime.bloodmagic.api.teleport.TeleporterBloodMagic;
import WayofTime.bloodmagic.api.util.helper.NetworkHelper;
import lombok.Getter;
import net.minecraft.entity.Entity;