If you are quite clever, you could define the states to get around this problem, but that will mean filling out all the extra ObjectLookup data. Another alternative is to write conditions for the state, depending on which object picked it. The downside of this is losing the generic functionality of the two main scripts.