final HashSet<Vector3i> blocksIntersecting = new HashSet<Vector3i>();
blocksIntersecting.addAll(blocks);
Set<Thing> things = this.engine.thingSimulator.things;
synchronized (things){
for (Thing thing : things){
final Thing thing0 = thing;
if (thing instanceof Cuboid){
final Cuboid c = (Cuboid)thing;
ArrayList<Vector3i> blocksIntersectingThing = thingTools.getBlocksIntersectingThing(c, fixOffsetTmps);
for (Vector3i v : blocksIntersectingThing){
if (blocksIntersecting.contains(v)){