Пример #1
0
        public override void OnRegister()
        {
            base.OnRegister();

            HoveredTileChangeSignal.AddListener(OnHighlightPositionChange);
            HoverTileEnableSignal.AddListener(OnHighlightEnable);
            HoverTileDisableSignal.AddListener(OnHighlightDisable);
            ClearHighlightSignal.AddListener(OnClearHighlight);
            MapHighlightSignal.AddListener(OnHighlight);
        }
Пример #2
0
        private void Cleanup(BattleUIState state)
        {
            switch (state)
            {
            case BattleUIState.SelectingUnit:
                break;

            case BattleUIState.SelectingAction:
                HoverTileEnableSignal.Dispatch();
                UnitDeselectedSignal.Dispatch();
                break;

            case BattleUIState.SelectingFightAction:
                break;

            case BattleUIState.SelectingAttackTarget:
                ClearHighlightSignal.Dispatch(HighlightLevel.PlayerAttack);
                break;

            case BattleUIState.SelectingInteractTarget:
                ClearHighlightSignal.Dispatch(HighlightLevel.PlayerInteract);
                break;

            case BattleUIState.SelectingMoveLocation:
                ClearHighlightSignal.Dispatch(HighlightLevel.PlayerAttack);
                ClearHighlightSignal.Dispatch(HighlightLevel.PlayerMove);
                PathUnavailableSignal.Dispatch();
                break;

            case BattleUIState.Fighting:
                HoverTileEnableSignal.Dispatch();
                break;

            case BattleUIState.CombatantMoving:
                break;

            case BattleUIState.ForecastingCombat:
                FightForecastDisableSignal.Dispatch();
                break;

            case BattleUIState.Uninitialized:
                break;

            case BattleUIState.PhaseChanging:
                HoverTileEnableSignal.Dispatch();
                CameraUnlockSignal.Dispatch();
                break;

            case BattleUIState.EnemyTurn:
                HoverTileEnableSignal.Dispatch();
                CameraUnlockSignal.Dispatch();
                break;

            case BattleUIState.ContextMenu:
                break;

            case BattleUIState.Preparations:
                break;

            case BattleUIState.Surveying:
                break;

            case BattleUIState.EventPlaying:
                break;

            default:
                throw new ArgumentOutOfRangeException("state", state, null);
            }
        }