/// <summary> /// Идентификация позиции /// </summary> /// <param name="locPos"></param> private void IdentifyLocPos(ILocationPosition locPos) { if (_locPos != null) { if (locPos.NumberLocation == _locPos.NumberLocation) { _locPos = locPos; UodateLocPos(); if (_playerVM != null) { _playerVM.CurrentPosition = _locPos.Position; OnPropertyChanged(nameof(PlayerEff)); } } else { throw new Exception("Несоответствие номера позиции"); } } else { _locPos = locPos; UodateLocPos(); if (_playerVM != null) { _playerVM.CurrentPosition = _locPos.Position; OnPropertyChanged(nameof(PlayerEff)); } } }
/// <summary> /// Инициализация игрового бокса /// </summary> /// <param name="locPos"></param> public PlayBoxViewModel(ILocationPosition locPos) { IdentifyLocPos(locPos); _highlightPosition = Brushes.Transparent; SelectBox = Command(ExecuteSelectBox); RemovePlayer = Command(ExecuteRemovePlayer); }
/// <summary> /// Установить схему /// </summary> private void SetScheme() { IScheme scheme = _schemes.GetScheme(SelectedScheme); foreach (PlayBoxViewModel plBoxVM in _playBoxVMs) { ILocationPosition locPos = scheme.GetLocation(plBoxVM.LocNumber); plBoxVM.SetLocPos(locPos); } }
/// <summary> /// Установить расположение игрового бокса /// </summary> /// <param name="locPos"></param> public void SetLocPos(ILocationPosition locPos) { IdentifyLocPos(locPos); }