Pass net handler during reverse cloning due to some mods could transmit some packets in cloning
This commit is contained in:
parent
d09dc71f62
commit
db3a8c3045
@ -1,7 +1,6 @@
|
|||||||
package kcauldron;
|
package kcauldron;
|
||||||
|
|
||||||
import net.minecraft.entity.player.EntityPlayerMP;
|
import net.minecraft.entity.player.EntityPlayerMP;
|
||||||
import net.minecraft.entity.player.InventoryPlayer;
|
|
||||||
import net.minecraft.inventory.ContainerPlayer;
|
import net.minecraft.inventory.ContainerPlayer;
|
||||||
import net.minecraft.server.management.ItemInWorldManager;
|
import net.minecraft.server.management.ItemInWorldManager;
|
||||||
import net.minecraft.world.WorldServer;
|
import net.minecraft.world.WorldServer;
|
||||||
@ -10,11 +9,13 @@ import net.minecraftforge.event.entity.player.PlayerEvent;
|
|||||||
|
|
||||||
public enum ReverseClonner {
|
public enum ReverseClonner {
|
||||||
;
|
;
|
||||||
|
|
||||||
public static EntityPlayerMP clone(EntityPlayerMP player, boolean wasDeath) {
|
public static EntityPlayerMP clone(EntityPlayerMP player, boolean wasDeath) {
|
||||||
EntityPlayerMP shadowCopy = new EntityPlayerMP(player.mcServer, (WorldServer) player.worldObj,
|
EntityPlayerMP shadowCopy = new EntityPlayerMP(player.mcServer, (WorldServer) player.worldObj,
|
||||||
player.getGameProfile(), new ItemInWorldManager(player.worldObj));
|
player.getGameProfile(), new ItemInWorldManager(player.worldObj));
|
||||||
|
shadowCopy.playerNetServerHandler = player.playerNetServerHandler;
|
||||||
shadowCopy.clonePlayer(player, true);
|
shadowCopy.clonePlayer(player, true);
|
||||||
if (wasDeath && !player.worldObj.getGameRules().getGameRuleBooleanValue("keepInventory")) {
|
if (wasDeath && !player.worldObj.getGameRules().getGameRuleBooleanValue("keepInventory")) {
|
||||||
player.inventory.clearInventory(null, -1);
|
player.inventory.clearInventory(null, -1);
|
||||||
player.inventoryContainer = new ContainerPlayer(player.inventory, !player.worldObj.isRemote, player);
|
player.inventoryContainer = new ContainerPlayer(player.inventory, !player.worldObj.isRemote, player);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user