public InputOutputItem(string name, int index, string assignedSignalName, ESignalType type)
 {
     Name   = name;
     _index = index;
     _assignedsignalName = assignedSignalName;
     this.signalType     = type;
 }
示例#2
0
 void OnPlayerChange(ESignalType Signal, object playerIndexObj)
 {
     if (Signal == global::ESignalType.PlayerWin)
     {
         GetComponentInChildren <Text>().text = "Player " + (((int)playerIndexObj) + 1) + " Wins!";
     }
 }
示例#3
0
        public WatchItem(int index, ESignalType type)
        {
            this.index      = index;
            this.signalType = type;
            switch (type)
            {
            case ESignalType.DI:
                DIStruct signaldi = DIStruct.FindByIndex(index);
                signaldi.PropertyChanged += Signal_PropertyChanged;
                break;

            case ESignalType.AI:
                AIStruct signalai = AIStruct.FindByIndex(index);
                signalai.PropertyChanged += Signal_PropertyChanged;
                break;

            case ESignalType.DO:
                DOStruct signaldo = DOStruct.FindByIndex(index);
                signaldo.PropertyChanged += Signal_PropertyChanged;
                break;

            case ESignalType.AO:
                AOStruct signalao = AOStruct.FindByIndex(index);
                signalao.PropertyChanged += Signal_PropertyChanged;
                break;
            }
        }
 public InputOutputItem(string name, DOStruct signal)
 {
     this.Name          = name;
     _index             = signal.indxArrDO;
     signalType         = ESignalType.DO;
     AssignedSignalName = signal.NameDO;
 }
示例#5
0
 protected override void OnSignal(ESignalType signalType)
 {
     switch (signalType)
     {
     case ESignalType.SetupComplete:
         SMTransition(signalType);
         break;
     }
 }
示例#6
0
 protected override void OnSignalOne(ESignalType signalType, object arg0)
 {
     switch (signalType)
     {
     case ESignalType.PuzzleComplete:
         SMTransition(signalType);
         break;
     }
 }
示例#7
0
 protected override void OnSignalOne(ESignalType signalType, object index)
 {
     switch (signalType)
     {
     case ESignalType.StartPuzzle:
         Game.SelectGame((int)index);
         SMTransition(signalType);
         break;
     }
 }
示例#8
0
 private void OnSignal(ESignalType signalType, object arg1)
 {
     if (signalType == ESignalType.PieceSelected)
     {
         pieceSelected = arg1 != null;
         if (State != UIStates.State.Hidden)
         {
             State = pieceSelected ? UIStates.State.Active : UIStates.State.Disabled;
         }
     }
 }
示例#9
0
    protected override void OnSignal(ESignalType signalType)
    {
        switch (signalType)
        {
        case ESignalType.StartPuzzle:
            Game.SelectGame();
            SMTransition(signalType);
            break;

        case ESignalType.Quit:
            SMTransition(signalType);
            break;
        }
    }
示例#10
0
 private void OnSignalOne(ESignalType signal, object arg1)
 {
     if (signal == ESignalType.PuzzleComplete)
     {
         if (Game.currentGameIndex == levelIndex)
         {
             stars = (int)arg1;
         }
         else if (Game.currentGameIndex == levelIndex - 1)
         {
             State = UIStates.State.Active;
         }
     }
 }
示例#11
0
    private void OnBoardSelect(ESignalType signal, object arg1)
    {
        if (signal == ESignalType.StartPuzzle)
        {
            if (Game.currentGameIndex == (Progression.Puzzles.Count - 1))
            {
                OnStateChanged(UIStates.State.Disabled);
            }

            else
            {
                OnStateChanged(UIStates.State.Active);
            }
        }
    }
示例#12
0
    void OnBoardSelect(ESignalType signal, object arg1)
    {
        if (signal == ESignalType.GameStart)
        {
            if (((int)arg1) == level)
            {
                State = UIStates.State.Active;
            }

            else
            {
                State = UIStates.State.Hidden;
            }
        }
        else
        {
            State = UIStates.State.Hidden;
        }
    }
示例#13
0
    protected override void OnSignal(ESignalType signalType)
    {
        switch (signalType)
        {
        case ESignalType.StartPuzzle:
            UIStates.SetGroupState(UIStates.Group.EndGame, UIStates.State.Hidden);
            Game.SelectGame();
            SMTransition(signalType);
            break;

        case ESignalType.SelectBoard:
            UIStates.SetGroupState(UIStates.Group.EndGame, UIStates.State.Hidden);
            SMTransition(signalType);
            break;

        case ESignalType.Quit:
            SMTransition(signalType);
            break;
        }
    }
示例#14
0
    protected override void OnSignal(ESignalType signalType)
    {
        switch (signalType)
        {
        case ESignalType.PuzzleMode:
            HextwistStateMachine.GameType = HextwistStateMachine.EGameType.Puzzle;
            //SMTransition(signalType);
            SceneManager.LoadScene("Game");
            break;

        case ESignalType.PvPMode:
            HextwistStateMachine.GameType = HextwistStateMachine.EGameType.PvP;
            //SMTransition(signalType);
            SceneManager.LoadScene("Game");
            break;

        case ESignalType.ClearProgression:
            Progression.ClearProgression();
            break;
        }
    }
示例#15
0
    protected override void OnSignal(ESignalType signalType)
    {
        Game game = Game.currentGame;

        switch (signalType)
        {
        case ESignalType.Quit:
            SMTransition(signalType);
            break;

        case ESignalType.EndTurn:
            game.OnMovementFinished();
            break;

        case ESignalType.RotateCCW:
            game.currentSelectedPiece.RotateCCW();
            break;

        case ESignalType.RotateCW:
            game.currentSelectedPiece.RotateCW();
            break;

        case ESignalType.RotateUndo:
            if (game.lastSelectedPiece)
            {
                game.lastSelectedPiece.UndoRotation();
            }
            else
            {
                game.currentSelectedPiece.ResetRotation();
            }
            break;

        case ESignalType.Restart:
            Game.SelectGame(Game.currentGameIndex);
            SMTransition(signalType);
            break;
        }
    }
示例#16
0
    public static void Invoke(ESignalType button, params object[] args)
    {
        string debug = button.ToString();

        foreach (object arg in args)
        {
            if (arg != null)
            {
                debug += " " + arg.ToString();
            }
            else
            {
                debug += " NULL";
            }
        }

        Debug.Log(debug);

        if (button == ESignalType.None)
        {
            return;
        }

        if (args.Length == 0)
        {
            buttonActions[button].Invoke(button);
        }
        else if (args.Length == 1)
        {
            buttonActionsOne[button].Invoke(button, args[0]);
        }
        else
        {
            buttonActionsTwo[button].Invoke(button, args[0], args[1]);
        }
    }
 protected virtual void OnSignal(ESignalType signalType) /*stub*/ }
示例#18
0
        /// <summary>
        /// The internal signal dispatcher will route the signal to the appropriate static
        /// event.
        /// </summary>
        /// <param name="p_signalType">The signal type that was raised</param>
        private static bool DispatchSignal(ESignalType p_signalType)
        {
            bool retval = true;

            switch (p_signalType)
            {
            case ESignalType.ControlC:
                if (OnControlC != null)
                {
                    OnControlC();
                }
                else
                {
                    retval = false;
                }
                break;

            case ESignalType.Break:
                if (OnBreak != null)
                {
                    OnBreak();
                }
                else
                {
                    retval = false;
                }
                break;

            case ESignalType.Close:
                if (OnClose != null)
                {
                    OnClose();
                }
                else
                {
                    retval = false;
                }
                break;

            case ESignalType.Logoff:
                if (OnLogoff != null)
                {
                    OnLogoff();
                }
                else
                {
                    retval = false;
                }
                break;

            case ESignalType.Shutdown:
                if (OnShutdown != null)
                {
                    OnShutdown();
                }
                else
                {
                    retval = false;
                }
                break;
            }

            if (OnAnySignal != null)
            {
                OnAnySignal(p_signalType);
                retval = true;
            }

            return(retval);
        }
示例#19
0
 public WatchItem(AOStruct signal)
 {
     index                   = signal.indx;
     signalType              = ESignalType.AO;
     signal.PropertyChanged += Signal_PropertyChanged;
 }
示例#20
0
 static private void OnSignal(ESignalType arg0, object stars)
 {
     PuzzleComplete(Game.currentGameIndex, (int)stars);
 }
示例#21
0
文件: Cam.cs 项目: 03knoppg/Hextwist
 private void OnCamPosition(ESignalType signal, object arg1)
 {
     bounds = (Bounds)arg1;
 }
示例#22
0
 public WatchItem(DOStruct signal)
 {
     index                   = signal.indxArrDO;
     signalType              = ESignalType.DO;
     signal.PropertyChanged += Signal_PropertyChanged;
 }