Skip to content

Commit

Permalink
Change MCMP to use world wrapper version, but strip the wrapper as it…
Browse files Browse the repository at this point in the history
…s passed in ( this seems to be a possible work around for issues with MCMP. )
  • Loading branch information
AlgorithmX2 committed Dec 1, 2017
1 parent f588caa commit 0fb1330
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 9 deletions.
2 changes: 1 addition & 1 deletion src/main/java/mod/chiselsandbits/client/UndoTracker.java
Expand Up @@ -59,7 +59,7 @@ public void add(
final VoxelBlobStateReference after )
{
// servers don't track undo's
if ( world.isRemote && recording )
if ( pos != null && world != null && world.isRemote && recording )
{
if ( undoLevels.size() > level && !undoLevels.isEmpty() )
{
Expand Down
Expand Up @@ -7,7 +7,6 @@
import mcmultipart.api.multipart.IMultipart;
import mcmultipart.api.multipart.IMultipartTile;
import mcmultipart.api.slot.IPartSlot;
import mcmultipart.api.world.IWorldView;
import mod.chiselsandbits.chiseledblock.BlockChiseled;
import mod.chiselsandbits.chiseledblock.BoxType;
import mod.chiselsandbits.chiseledblock.TileEntityBlockChiseled;
Expand All @@ -32,13 +31,6 @@ public ChiseledBlockMultiPart(
blk = myBlock;
}

@Override
public IWorldView getWorldView(
final IPartInfo part )
{
return null;
}

@Override
public List<AxisAlignedBB> getOcclusionBoxes(
final IPartInfo part )
Expand Down
Expand Up @@ -4,11 +4,13 @@

import mcmultipart.api.multipart.IMultipartTile;
import mcmultipart.api.multipart.MultipartOcclusionHelper;
import mcmultipart.api.world.IMultipartWorld;
import mod.chiselsandbits.chiseledblock.BoxType;
import mod.chiselsandbits.chiseledblock.TileEntityBlockChiseled;
import mod.chiselsandbits.chiseledblock.data.VoxelBlob;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.world.World;

public class ChiseledBlockPart extends TileEntityBlockChiseled implements IMultipartTile
{
Expand All @@ -18,6 +20,19 @@ public ChiseledBlockPart()
// required for loading.
}

@Override
public void setPartWorld(
World world )
{
if ( world instanceof IMultipartWorld )
{
getTileEntity().setWorldObj( ( (IMultipartWorld) world ).getActualWorld() );
return;
}

getTileEntity().setWorldObj( world );
}

@Override
public boolean isBlobOccluded(
final VoxelBlob blob )
Expand All @@ -43,6 +58,10 @@ public ChiseledBlockPart(
if ( tileEntity != null )
{
copyFrom( (TileEntityBlockChiseled) tileEntity );

// copy pos and world data.
setWorldObj( tileEntity.getWorld() );
setPos( tileEntity.getPos() );
}
}

Expand Down
Expand Up @@ -9,6 +9,7 @@
import mod.chiselsandbits.chiseledblock.TileEntityBlockChiseled;
import mod.chiselsandbits.chiseledblock.data.VoxelBlob;
import mod.chiselsandbits.core.ChiselsAndBits;
import mod.chiselsandbits.helpers.ModUtil;
import mod.chiselsandbits.interfaces.IChiseledTileContainer;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
Expand Down Expand Up @@ -37,6 +38,7 @@ public MultipartContainerBuilder(
@Override
public void sendUpdate()
{
ModUtil.sendUpdate( world, pos );
}

@Override
Expand Down

0 comments on commit 0fb1330

Please sign in to comment.