Exemplo n.º 1
0
 void AddCommon()
 {
     OffsetTime = new OffsetTimeService(Time);
     Register   = new RegisterService(Api, State);
     Auth       = new AuthService(Api, Network, OffsetTime, State);
     Updater    = new GameStateUpdateService(Logger, OffsetTime, Api, State);
 }
Exemplo n.º 2
0
        public void Init(GameStateUpdateService updateService, LevelService levelService, Transform parent, UnitLevelModel model, UnitView view, Canvas canvas)
        {
            _updateService = updateService;
            _levelService  = levelService;
            _model         = model;
            _view          = view;
            _oldHealth     = _model.State.Health;

            _levelService.OnUnitSelected  += OnUnitSelected;
            _levelService.OnUnitCanTurn   += OnUnitCanTurn;
            _updateService.OnStateUpdated += OnStateUpdated;
            _updateService.AddHandler <AttackCommand>(OnAttackUnit);
            _updateService.AddHandler <KillUnitCommand>(OnKillUnit);

            SelectView();
            UpdateSelection(false);
            UpdateInteractable(model.IsPlayerUnit);
            UpdateHealth();

            transform.SetParent(parent, false);

            _view.transform.SetParent(canvas.transform, false);
            _view.transform.position = Camera.main.WorldToScreenPoint(transform.position);
            var distance = transform.position.z - Camera.main.transform.position.z;

            _view.UpdateDistance(distance);
            _view.SelectColor(model.IsPlayerUnit);
        }
Exemplo n.º 3
0
        public void Init(ClientStateService service, GameStateUpdateService update, ItemService items, ItemsWindow.Factory windowFactory)
        {
            _service       = service;
            _update        = update;
            _items         = items;
            _windowFactory = windowFactory;
            Button.onClick.AddListener(OnClick);

            _update.OnStateUpdated += OnStateUpdated;
        }
Exemplo n.º 4
0
 public void Init(GameStateUpdateService service)
 {
     _text    = GetComponent <TMP_Text>();
     _service = service;
     _service.OnStateUpdated += UpdateState;
     if (_service.State != null)
     {
         UpdateState(service.State);
     }
 }
Exemplo n.º 5
0
 public void Init(
     GameSceneManager scene, ClientCommandRunner runner, ClientStateService state,
     LevelService service, UnitViewModel.Factory unit, UnitView.Factory view, RewardWindow.Factory winWindow, LoseWindow.Factory loseWindow
     )
 {
     _scene        = scene;
     _update       = runner.Updater;
     _state        = state;
     _service      = service;
     _unit         = unit;
     _view         = view;
     _rewardWindow = winWindow;
     _loseWindow   = loseWindow;
 }
Exemplo n.º 6
0
        public void Init(
            GameStateUpdateService update, UnitService units, UnitFragment.Factory unitFragment, UnitsWindow.Factory unitsWindow,
            Canvas parent, string levelDesc, Action callback
            )
        {
            _update       = update;
            _units        = units;
            _unitFragment = unitFragment;
            _unitsWindow  = unitsWindow;
            _levelDesc    = levelDesc;
            _callback     = callback;

            _update.AddHandler <StartLevelCommand>(OnStartLevel);

            CloseButton.onClick.AddListener(() => Animation.Hide(() => Destroy(gameObject)));
            StartButton.onClick.AddListener(OnStart);

            Header.text = levelDesc;
            FillUnits();
            UpdateInteractable();

            ShowAt(parent);
        }
Exemplo n.º 7
0
        public void Init(
            GameStateUpdateService update, ItemService items, UnitService units,
            ItemFragment.Factory itemFragment, ItemsWindow.Factory itemsWindow,
            Canvas parent, StateUnitModel unit
            )
        {
            _update       = update;
            _items        = items;
            _units        = units;
            _itemFragment = itemFragment;
            _itemsWindow  = itemsWindow;
            _unit         = unit;

            update.AddHandler <EquipItemCommand>  (OnEquipItem);
            update.AddHandler <TakeOffItemCommand>(OnTakeOffItem);

            CloseButton.onClick.AddListener(Hide);

            CreateFragments();
            Refresh();

            ShowAt(parent);
        }
Exemplo n.º 8
0
 public ClientCommandRunner(MainThreadRunner runner, GameStateUpdateService updateService)
 {
     _runner = runner;
     Updater = updateService;
 }