Getting multiple values instead of one. I have no clue why

Hard to tell without seeing how the data flows but you do run it 4 times. Put a print string right after Then 4 → how many times does it fire? If more than once, you need to go further back and see why build floors fires more often than it should.