So a TD... yeah, I know, but bear with me. The towers can all get individual speed damage range and splash upgrades which affect which towers that tower can upgrade to. Each tower at the next tier has a different combination of speed damage splash and range that it can research. Also, when a tower upgrades to a new one at the next tier, it retains whatever speed, damage range splash bonuses it had. This means the strength of the next tier is relative to the power of the current tier, so setting a constant unit cost for the upgrade won't work numbers-wise. I catch the order from a multiply leveled Charge Gold and Lumber (TowerAbilUsed[x]) and then actually build the towers using these:
This works as long as you don't issue multiple upgrade commands simulataneously, as in, select multiple units and click the upgrade button once. If you do them serially it's fine. So I either need to find a way to properly queue those simulataneous commands OR find a new way to charge varying amounts of money for the same upgrade. Lemme know if I wasn't clear enough. Thanks.