protected virtual void AwakeOverride() { m_gameMachine = GameMachine; m_appTheme = AppTheme; m_audio = Audio; m_globalUI = UI; }
protected void Awake() { m_gameMachine = IOC.Resolve <IGameMachine>(); m_menu = GetComponent <Menu>(); m_globalUI = IOC.Resolve <IGlobalUI>(); m_menuSelection = IOC.Resolve <IMenuSelection>(); m_audio = IOC.Resolve <IAudio>(); m_player = IOC.Resolve <IPlayer>(); AwakeOverride(); }
private void OnDestroy() { if (m_instance == this) { m_instance = null; } OnDestroyOverride(); m_gameMachine = null; }
public void Setup() { _gameLogicMock = new Mock <IGameLogic>(); _gameLogicMock.Setup(x => x.ShowIntroduction()); _gameLogicMock.Setup(x => x.Initialization()); _gameLogicMock.Setup(x => x.GetCoordinates()).Returns((_exampleX, _exampleY)); _shootWasAHit = true; _gameLogicMock.Setup(x => x.Shoot(It.Is <int>(x => x == _exampleX), It.Is <int>(x => x == _exampleY))) .Returns(() => ToggleHit()); _gameLogicMock.Setup(x => x.Missed()); _gameLogicMock.Setup(x => x.EnemyTargesPresent()).Returns(() => ToggleEnemy()); _gameLogicMock.Setup(x => x.ShowSummary()); _gameLogicMock.Setup(x => x.GetUserRestartGameDecision()).Returns(() => ToggleDecision()); _gameLogicMock.Setup(x => x.ShowEndCredits()); _gameMachine = new GameMachine(_gameLogicMock.Object); }
private void DataBind() { if (m_item != null) { m_icon.sprite = m_item.Icon; if (m_item.Data != null && m_item.Data is Color) { m_icon.color = (Color)m_item.Data; } m_icon.gameObject.SetActive(m_item.Icon != null || (m_item.Data != null && m_item.Data is Color)); m_text.text = m_item.Text; } else { m_icon.sprite = null; m_icon.gameObject.SetActive(false); m_text.text = string.Empty; } m_item.Validate = new MenuItemValidationEvent(); if (m_gameMachine == null) { m_gameMachine = IOC.Resolve <IGameMachine>(); } if (m_appTheme == null) { m_appTheme = IOC.Resolve <IAppTheme>(); } m_item.Validate.AddListener(m_gameMachine.CanExecuteMenuCommand); m_item.Validate.AddListener((args) => args.IsValid = m_item.IsValid); var validationResult = IsValid(); if (validationResult.IsVisible) { if (m_item.IsValid) { m_text.color = m_appTheme.SelectedTheme.buttonNormalTextColor; } else { m_text.color = m_appTheme.SelectedTheme.buttonDisabledTextColor; } if (m_item.Action == null) { m_item.Action = new MenuItemEvent(); } else { m_item.Action.AddListener(m_gameMachine.ExecuteMenuCommand); } ((Button)m_selectable).onClick.AddListener(() => m_item.Action.Invoke(new MenuClickArgs(m_item.Path, m_item.Text, m_item.Command, m_item.CommandType, m_item.Data))); } gameObject.SetActive(validationResult.IsVisible); m_selectable.interactable = validationResult.IsValid; }
protected void Awake() { m_gameMachine = IOC.Resolve <IGameMachine>(); m_player = IOC.Resolve <IPlayer>(); AwakeOverride(); }