@Override
    public boolean blockActivated(EntityPlayer player) {
        if (this instanceof ITrackReversable) {
            ItemStack current = player.getCurrentEquippedItem();
            if (current != null && current.getItem() instanceof IToolCrowbar) {
                IToolCrowbar crowbar = (IToolCrowbar) current.getItem();
                if (crowbar.canWhack(player, current, getX(), getY(), getZ())) {
                    ITrackReversable track = (ITrackReversable) this;
                    track.setReversed(!track.isReversed());
                    markBlockNeedsUpdate();
                    crowbar.onWhack(player, current, getX(), getY(), getZ());
                    return true;
                }
            }
        }
        return false;
    }