Exemple #1
0
    public void Add1Minute()
    {
        var timeManipulator = MainInstaller.Resolve <IGameServices>().TimeService as ITimeManipulator;
        var timeNow         = timeManipulator.DateTimeUtcNow;

        timeManipulator.AddTime((float)(timeNow.AddHours(1) - timeNow).TotalSeconds);
    }
        private void Awake()
        {
            _dataProvider = MainInstaller.Resolve <IGameDataProvider>();
            _services     = MainInstaller.Resolve <IGameServices>();

            _timer.Init(_services);
        }
Exemple #3
0
    public static void LoadInitSceneNow()
    {
        MainInstaller.ReleaseAll();
        PersistentSingleton <IAPService> .Instance.UnpublishPurchases();

        SceneManager.LoadScene("Initialize");
    }
Exemple #4
0
    private static IEnumerator SimpleEditorSceneRoutine()
    {
        SceneManager.LoadScene("Empty");
        yield return(null);

        MainInstaller.ReleaseAll();
        ARInstaller.ReleaseAll();
        SceneManager.LoadScene("LevelEditor");
    }
        public void Bind_Resolve_Successfully()
        {
            MainInstaller.Bind <IInterface>(new Implementation());

            var instance = MainInstaller.Resolve <IInterface>();

            Assert.IsNotNull(instance);
            Assert.AreSame(typeof(Implementation), instance.GetType());
        }
Exemple #6
0
    private static IEnumerator ARSceneRoutine()
    {
        SceneManager.LoadScene("Empty");
        yield return(null);

        MainInstaller.ReleaseAll();
        ARInstaller.ReleaseAll();
        SceneManager.LoadScene("AR");
    }
Exemple #7
0
    private static IEnumerator GamblingSceneRoutine()
    {
        SceneManager.LoadScene("Empty");
        yield return(null);

        PersistentSingleton <IAPService> .Instance.UnpublishPurchases();

        MainInstaller.ReleaseAll();
        GamblingInstaller.ReleaseAll();
        SceneManager.LoadScene("TimeMachine");
    }
Exemple #8
0
    public override void InstallBindings()
    {
        MainInstaller.InstallFromResource("MainInstaller", Container);

        Container.Bind <IItem>().FromMock();
        Container.Bind <IWeapon>().FromMock();
        Container.Bind <IArmor>().FromMock();

        Container.Bind <ICharacter>()
        .FromInstance(new Character("Test Dummy", dummyStats))
        .AsTransient();

        Container.Bind <Stats>()
        .FromInstance(dummyStats)
        .AsTransient();
    }
Exemple #9
0
        private void Awake()
        {
            var messageBroker        = new MessageBrokerService();
            var timeService          = new TimeService();
            var dataService          = new DataService();
            var configsProvider      = new ConfigsProvider();
            var uiService            = new GameUiService(new UiAssetLoader());
            var worldObjectReference = new WorldObjectReferenceService(_inputSystem, _mainCamera);
            var gameLogic            = new GameLogic(messageBroker, timeService, dataService, configsProvider);
            var gameServices         = new GameServices(messageBroker, timeService, dataService, gameLogic, worldObjectReference);

            MainInstaller.Bind <IGameDataProvider>(gameLogic);
            MainInstaller.Bind <IGameServices>(gameServices);

            _stateMachine = new GameStateMachine(gameLogic, gameServices, uiService, configsProvider, dataService);
        }
Exemple #10
0
 protected void Start()
 {
     if (SceneManager.GetActiveScene().name == "Main")
     {
         MainInstaller.DoStart();
         Observable.NextFrame().Take(1).Subscribe(delegate
         {
             MainInstaller.DoSceneStarted();
         })
         .AddTo(this);
     }
     if (SceneManager.GetActiveScene().name == "TimeMachine")
     {
         GamblingInstaller.DoStart();
     }
 }
Exemple #11
0
    private static IEnumerator ResetGameRoutine()
    {
        SceneManager.LoadScene("Empty");
        yield return(null);

        PersistentSingleton <SaveLoad> .Instance.DebugResetData(PlayerData.Instance);

        ServerTimeService.ResetDebug();
        MainInstaller.ReleaseAll();
        PersistentSingleton <StringCache> .Instance.Clear();

        yield return(null);

        Resources.UnloadUnusedAssets();
        GC.Collect();
        GC.WaitForPendingFinalizers();
        yield return(null);

        LoadInitSceneNow();
    }
Exemple #12
0
 protected void Awake()
 {
     Instance = this;
     m_loaded = (m_loaded || SceneManager.GetActiveScene().name == "Initialize");
     if (!m_loaded)
     {
         InitialScene = SceneManager.GetActiveScene().name;
         SceneLoadHelper.LoadInitSceneNow();
         return;
     }
     if (SceneManager.GetActiveScene().name == "Main")
     {
         MainInstaller.ReleaseAll();
         MainInstaller.DoAwake();
     }
     if (SceneManager.GetActiveScene().name == "TimeMachine")
     {
         GamblingInstaller.ReleaseAll();
         GamblingInstaller.DoAwake();
     }
 }
 public void Resolve_NotBinded_ThrowsException()
 {
     Assert.Throws <ArgumentException>(() => MainInstaller.Resolve <IInterface>());
 }
 public void Bind_NotInterface_ThrowsException()
 {
     Assert.Throws <ArgumentException>(() => MainInstaller.Bind(new Implementation()));
 }
 public void CleanUp()
 {
     MainInstaller.Clean();
 }
Exemple #16
0
 private void Awake()
 {
     _services = MainInstaller.Resolve <IGameServices>();
 }
Exemple #17
0
    public void VerifyMainInstaller()
    {
        MainInstaller resource = Resources.Load <MainInstaller>("MainInstaller");

        Assert.IsNotNull(resource);
    }
Exemple #18
0
    public void Add100Hc()
    {
        var currencyLogic = MainInstaller.Resolve <IGameDataProvider>().CurrencyDataProvider as CurrencyLogic;

        currencyLogic.AddCurrency(GameId.HardCurrency, 100);
    }