BloodMagic/src/main/java/WayofTime/alchemicalWizardry/api/event/TeleposeEvent.java

51 lines
1.4 KiB
Java
Raw Normal View History

package WayofTime.alchemicalWizardry.api.event;
import net.minecraft.block.Block;
2015-07-29 12:23:01 +00:00
import net.minecraft.block.state.IBlockState;
import net.minecraft.tileentity.TileEntity;
2015-07-29 12:23:01 +00:00
import net.minecraft.util.BlockPos;
2015-01-30 14:29:22 +00:00
import net.minecraft.world.World;
2015-07-29 12:23:01 +00:00
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
2015-07-29 12:23:01 +00:00
public class TeleposeEvent extends Event
{
2015-07-30 18:52:39 +00:00
public final World initialWorld;
public final BlockPos initialPos;
2015-07-30 18:52:39 +00:00
public final Block initialBlock;
public final IBlockState initialState;
2015-07-30 18:52:39 +00:00
public final World finalWorld;
public final BlockPos finalPos;
2015-07-30 18:52:39 +00:00
public final Block finalBlock;
public final IBlockState finalState;
2015-07-30 18:52:39 +00:00
public TeleposeEvent(World wi, BlockPos posi, IBlockState statei, World wf, BlockPos posf, IBlockState statef)
{
initialWorld = wi;
initialPos = posi;
2015-07-30 18:52:39 +00:00
initialState = statei;
initialBlock = initialState.getBlock();
2015-07-29 12:23:01 +00:00
2015-07-30 18:52:39 +00:00
finalWorld = wf;
finalPos = posf;
2015-07-30 18:52:39 +00:00
finalState = statef;
finalBlock = finalState.getBlock();
}
2015-07-30 18:52:39 +00:00
public TileEntity getInitialTile() {
2015-07-29 12:23:01 +00:00
return initialWorld.getTileEntity(initialPos);
}
2015-07-30 18:52:39 +00:00
public TileEntity getFinalTile() {
2015-07-29 12:23:01 +00:00
return finalWorld.getTileEntity(finalPos);
}
}