After messing with it some more, I realized I was using this to make sure only one e-bay or armory got built.

Something like (if-not (building-built? :engineering-bay) ... etc)

But when I put the logic for upgrading and building ebays together it ended up looking like I was checking if it was built so I could upgrade, which doseq would handle, and the else branch was for building, if that makes sense. Of course I can see now why this was wrong.

Would there be a better way to check to ensure to only build one building, besides using an (if-not (building built? :building))?