/// <summary> /// Замена конструктора, процедура инициализации компонента отображения /// </summary> /// <param name="parModelSideProviderComponent">Связанный компонент на стороне модели</param> /// <param name="parLinkedEventsHandler">Связанный обработчик событий отображения</param> public override void InitAndLink(ViewProviderComponent parModelSideProviderComponent, ViewEventsOpenTkHandler parLinkedEventsHandler) { base.InitAndLink(parModelSideProviderComponent, parLinkedEventsHandler); _modelProviderComponent = (PocketGameViewProvider)parModelSideProviderComponent; _choosingShotAnimationInfobar = new PlayableAnimationObject(ActualSubassetsDataLibrary.GetAnimation(ANIM_INFOBAR_SHOT)); _choosingShotPlayerCueAnimation = new PlayableAnimationObject(ActualSubassetsDataLibrary.GetAnimation(SHOT_HAND_CUE_ANIM)); }
/// <summary> /// Осуществляет старт игрового уровня /// </summary> /// <param name="parLevel">Данные об игровом уровне</param> public void StartLevel(GameLevel parLevel) { _currentLevelGameObject = ActualLinkedObjectPoolSupportData.LinkedPoolManager .GetObject <GameObject>(typeof(GameObject)).Init(ParentGameObject.LinkedAppModel); _currentPocketViewProvider = ActualLinkedObjectPoolSupportData.LinkedPoolManager .GetObject <PocketGameViewProvider>(typeof(PocketGameViewProvider)) .Init(_currentLevelGameObject, parLevel.ActualLevelLevelConfig, _actualPlayer); _currentPocketViewProvider.GameLevelEnd += OnGameLevelEnd; _startingLevel = parLevel; _currentPocketViewProvider.StartGameLevel(); }