Before your current system condition that picks a random Moneyspawner, you need an additional condition that first picks all Moneyspawners that do not have money on them. Use the condition from the Moneyspawner object rather than the system compare two values to check the instance variable. This way, the system pick random Moneyspawner will only pick from the already picked empty Moneyspawners.
Actually I'm not sure if it will work in the same event, you might need another subevent between the every 2 seconds and pick random events.
Edit: You dont need another subevent. From the manual - [quote:3fxyz5wv]Pick random instance
Pick a random instance from the currently picked objects. In other words, if Pick random instance follows another condition, it will pick a random instance from the instances meeting the prior condition. Otherwise it picks a random instance from all the instances.
So order matters here. Make sure you put the Moneyspawners Is Empty condition before the system pick condition.