package com.amadornes.framez.compat.cc; import net.minecraft.block.Block; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; import com.amadornes.framez.api.Priority; import com.amadornes.framez.api.Priority.PriorityEnum; import com.amadornes.framez.api.movement.BlockMovementType; import com.amadornes.framez.api.movement.IMovement; import com.amadornes.framez.api.movement.IMovementHandler; import com.amadornes.framez.api.movement.IMovingBlock; import com.amadornes.framez.ref.Dependencies; import cpw.mods.fml.common.registry.GameRegistry; @Priority(PriorityEnum.VERY_HIGH) public class MovementHandlerCC implements IMovementHandler { private Block b = null; private void initBlock() { if (b == null) b = GameRegistry.findBlock(Dependencies.CC, "CC-Computer"); } @Override public BlockMovementType getMovementType(World world, int x, int y, int z, ForgeDirection side, IMovement movement) { return null; } @Override public boolean startMoving(IMovingBlock block) { initBlock(); block.startMoving(false, false); return true; } @Override public boolean finishMoving(IMovingBlock block) { initBlock(); block.finishMoving(false, false); return true; } @Override public boolean canHandle(World world, int x, int y, int z) { initBlock(); return world.getBlock(x, y, z) == b; } }