package us.myles.ViaVersion.protocols.protocol1_9to1_8.listeners;

import lombok.RequiredArgsConstructor;
import org.bukkit.block.Block;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockPlaceEvent;
import us.myles.ViaVersion.ViaVersionPlugin;
import us.myles.ViaVersion.api.minecraft.Position;
import us.myles.ViaVersion.protocols.protocol1_9to1_8.storage.EntityTracker;

@RequiredArgsConstructor
public class BlockListener implements Listener{

    private final ViaVersionPlugin plugin;

    @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
    public void placeBlock(BlockPlaceEvent e) {
        if(plugin.isPorted(e.getPlayer())) {
            Block b = e.getBlockPlaced();
            plugin.getConnection(e.getPlayer()).get(EntityTracker.class).addBlockInteraction(new Position((long)b.getX(), (long)b.getY(), (long)b.getZ()));
        }
    }
}

@@ -368,26 +368,206 @@
 api.
-minecraft.Position
+data.UserConnection;%0Aimport us.myles.ViaVersion.api.minecraft.Position;%0Aimport us.myles.ViaVersion.protocols.base.ProtocolInfo;%0Aimport us.myles.ViaVersion.protocols.protocol1_9to1_8.Protocol1_9TO1_8
 ;%0Aim
@@ -713,16 +713,17 @@
 Listener
+ 
 %7B%0A%0A    p
@@ -926,24 +926,191 @@
 layer())) %7B%0A
+            UserConnection c = plugin.getConnection(e.getPlayer());%0A            if (!c.get(ProtocolInfo.class).getPipeline().contains(Protocol1_9TO1_8.class)) return;%0A
             
@@ -1247,24 +1247,25 @@
 ition((long)
+ 
 b.getX(), (l
@@ -1264,24 +1264,25 @@
 tX(), (long)
+ 
 b.getY(), (l
@@ -1285,16 +1285,17 @@
 , (long)
+ 
 b.getZ()

Check if user is indeed using 1.9 to 1.8 protocol conversion