示例#1
0
 public override void OnRegister()
 {
     CameraLockSignal.AddListener(View.Lock);
     CameraUnlockSignal.AddListener(View.Unlock);
     CameraPanSignal.AddListener(StartCameraPan);
     CameraPanToPointOfInterestSignal.AddListener(StartCameraPan);
 }
示例#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);
            }
        }
示例#3
0
        private void Setup(BattleUIState state)
        {
            switch (state)
            {
            case BattleUIState.CombatantMoving:
                break;

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

            case BattleUIState.SelectingAction:
                HoverTileDisableSignal.Dispatch();
                break;

            case BattleUIState.ForecastingCombat:
                break;

            case BattleUIState.SelectingFightAction:
                break;

            case BattleUIState.SelectingAttackTarget:
                SetupAttackTargetState();
                break;

            case BattleUIState.SelectingInteractTarget:
                SetupInteractTargetState();
                break;

            case BattleUIState.SelectingMoveLocation:
                SetupMoveLocationState();
                break;

            case BattleUIState.Fighting:
                HoverTileDisableSignal.Dispatch();
                AnimateActionSignal.Dispatch(Model.PendingAction);
                break;

            case BattleUIState.Uninitialized:
                break;

            case BattleUIState.PhaseChanging:
                HoverTileDisableSignal.Dispatch();
                CameraLockSignal.Dispatch();
                break;

            case BattleUIState.EnemyTurn:
                CameraLockSignal.Dispatch();
                HoverTileDisableSignal.Dispatch();
                EnemyTurnStartSignal.Dispatch();
                break;

            case BattleUIState.ContextMenu:
                HoverTileDisableSignal.Dispatch();
                break;

            case BattleUIState.Preparations:
                CameraLockSignal.Dispatch();
                break;

            case BattleUIState.Surveying:
                CameraUnlockSignal.Dispatch();
                break;

            case BattleUIState.EventPlaying:
                break;

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