Commit Graph

4 Commits

Author SHA1 Message Date
atlimit8
bbd54cb32f Added IDisabledTrait & rewrote upgrade code using a level-based approach.
Upgradeable traits are notified whenever an upgrade of their declared types are granted or revoked.  The traits maintain their own internal level counter, which is then used to enable or disable the trait functionality.  A trait can register for multiple upgrade types which then all affect the internal level counter.

	IDisabledTrait for identifying (and filtering) disabled traits
	UpgradableTrait provides an abstract base for traits to support upgrade levels
	Added IDisabledTrait support to GlobalButtonOrderGenerator

	Includes rework by pchote with alterations.
2014-11-26 05:45:26 -06:00
Paul Chote
c697a1e7b4 Add a UnitUpgradeManager trait.
This introduces support for timed upgrades, starting with crate buffs.
2014-10-01 21:28:45 +13:00
Curtis Shmyr
02a6c6ab77 Add missing INotifyRemovedFromWorld impl to GlobalUpgradable 2014-08-24 13:18:30 -06:00
Paul Chote
bf5da145b0 Introduce IUpgradable and purchasable unit upgrades. 2014-08-07 20:40:47 +12:00