Teleposers and refractoring

This commit is contained in:
Arcaratus 2016-01-01 12:08:17 -05:00
parent 1b9f72b494
commit a8a0ae6e8b
145 changed files with 594 additions and 162 deletions

View file

@ -0,0 +1,49 @@
package WayofTime.bloodmagic.api.event;
import net.minecraft.block.Block;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.fml.common.eventhandler.Cancelable;
import net.minecraftforge.fml.common.eventhandler.Event;
/** Fired when a teleposer attempts to transpose two blocks. Use this to perform special cleanup or compensation,
or cancel it entirely to prevent the transposition. */
@Cancelable
public class TeleposeEvent extends Event
{
public final World initalWorld;
public final BlockPos initialBlockPos;
public final Block initialBlock;
public final int initialMetadata;
public final World finalWorld;
public final BlockPos finalBlockPos;
public final Block finalBlock;
public final int finalMetadata;
public TeleposeEvent(World initialWorld, BlockPos initialBlockPos, Block initialBlock, int initialMetadata, World finalWorld, BlockPos finalBlockPos, Block finalBlock, int finalMetadata)
{
this.initalWorld = initialWorld;
this.initialBlockPos = initialBlockPos;
this.initialBlock = initialBlock;
this.initialMetadata = initialMetadata;
this.finalWorld = finalWorld;
this.finalBlockPos = finalBlockPos;
this.finalBlock = finalBlock;
this.finalMetadata = finalMetadata;
}
public TileEntity getInitialTile()
{
return initalWorld.getTileEntity(initialBlockPos);
}
public TileEntity getFinalTile()
{
return finalWorld.getTileEntity(finalBlockPos);
}
}