// <summary> // This method is the first method to be invoked when the scene first loads. Anything registered here with 'Container' will effectively // be injected on controllers, and instances defined on a subsystem.And example of this would be Container.RegisterInstance<IDataRepository>(new CodeRepository()). Then any property with // the 'Inject' attribute on any controller or view-model will automatically be set by uFrame. // </summary> public override void Setup() { base.Setup(); Container.RegisterViewModel <LevelManagerViewModel>(LevelManager, "LevelManager"); Container.RegisterController <PlayerShipController>(PlayerShipController); Container.RegisterController <AsteroidController>(AsteroidController); Container.RegisterController <LevelManagerController>(LevelManagerController); Container.RegisterController <BaseWeaponController>(BaseWeaponController); Container.RegisterController <BasicLaserController>(BasicLaserController); Container.RegisterController <BaseProjectileController>(BaseProjectileController); Container.RegisterController <LaserBoltController>(LaserBoltController); Container.RegisterController <PowerUpBaseController>(PowerUpBaseController); Container.RegisterController <SpeedPowerUpController>(SpeedPowerUpController); Container.RegisterController <FireRatePowerUpController>(FireRatePowerUpController); this.Container.InjectAll(); LevelManagerController.Initialize(LevelManager); }