If there aren't enough resources to start building something, the BuildManager's worker(s) sit in build state without anything to do. If they aren't currently building, they should automatically be put in gather state so that they aren't wasting time.
Once resources become available to resume building, any worker can be immediately pulled out of gather state and put back into build state to get started constructing.
If there aren't enough resources to start building something, the BuildManager's worker(s) sit in build state without anything to do. If they aren't currently building, they should automatically be put in gather state so that they aren't wasting time.
Once resources become available to resume building, any worker can be immediately pulled out of gather state and put back into build state to get started constructing.