示例#1
0
    public void StartTitle()
    {
        endRaceUI.gameObject.SetActive(false);

        canStart = false;

        if (players != null)
        {
            foreach (var p in players)
            {
                Destroy(p.gameObject);
            }
        }
        players   = new List <Character>();
        gameState = GameState.Title;
        OneButton.ClearButtons();
        EnableMenu(true);
        foreach (var ps in playerScores)
        {
            ps.gameObject.SetActive(false);
        }
        foreach (var bar in uiBars)
        {
            bar.gameObject.SetActive(false);
        }
        SetGlobalSpeed(4000.0f);

        globalFader.FadeTo(0.0f, 0.5f,
                           () =>
        {
            canStart        = true;
            timeOfMainTitle = Time.time;
        });
    }
示例#2
0
    void Update()
    {
        if (awardedBadges)
        {
            if (OneButton.GetButtonPress() != null)
            {
                OneButton.ClearButtons();

                GameMng.instance.globalFader.FadeTo(1.0f, 0.5f, () =>
                {
                    Fader fader = GetComponentInParent <Fader>();
                    fader.FadeTo(0.0f, 0.5f, () =>
                    {
                        GameMng.instance.StartTitle();

                        foreach (var obj in tempObjects)
                        {
                            Destroy(obj);
                        }

                        tempObjects.Clear();

                        for (int i = 0; i < characters.Count; i++)
                        {
                            characters[i].gameObject.SetActive(false);
                        }
                    });
                });
            }

            return;
        }

        characters.Sort(SortByScore);

        bool allDone = true;

        for (int i = 0; i < characters.Count; i++)
        {
            characters[i].targetPos = placements[i].position;
            if (characters[i].character)
            {
                if (characters[i].score != Mathf.FloorToInt(characters[i].character.score))
                {
                    allDone = false;
                }
                else if (Mathf.Abs(characters[i].transform.position.x - placements[i].position.x) > 2.0f)
                {
                    allDone = false;
                }
            }
        }

        if (allDone)
        {
            awardedBadges = true;
            StartCoroutine(PlacementCR());
            OneButton.ClearButtons();
        }
    }
示例#3
0
 void WaitPlayer()
 {
     if (players.Count < 4)
     {
         var button = OneButton.GetButtonPress();
         if (button != null)
         {
             JoinPlayer(button);
             if (gameState == GameState.Title)
             {
                 StartPrepare();
             }
             timeToStart = 7;
         }
     }
 }
示例#4
0
    static public OneButton GetButtonPress()
    {
        if (Input.anyKeyDown)
        {
            foreach (KeyCode vKey in System.Enum.GetValues(typeof(KeyCode)))
            {
                string keyName = vKey.ToString();

                if (keyName.StartsWith("JoystickButton"))
                {
                    // Ignore these, because they are also mapped as Joystick1Button*
                    continue;
                }

                if (Input.GetKey(vKey))
                {
                    // Check if this key is already in use
                    bool inUse = false;

                    foreach (var button in currentButtons)
                    {
                        if ((button.type == Type.Key) && (button.key == vKey))
                        {
                            inUse = true;
                            break;
                        }
                    }

                    if (!inUse)
                    {
                        OneButton b = new OneButton();
                        b.type = Type.Key;
                        b.key  = vKey;

                        currentButtons.Add(b);

                        return(b);
                    }
                }
            }
        }

        return(null);
    }
示例#5
0
        // Calculator_KeyPress: Checks for user input through KeyPresses and performs
        // the corresponding Click-event for the appropriate button.
        // Pre: -
        // Post: The KeyPress-event has been handled and, if there's a match, the appropriate
        // buttons Click-event has been fired.
        private void Calculator_KeyPress(object sender, KeyPressEventArgs e)
        {
            switch (e.KeyChar)
            {
            case '1': OneButton.PerformClick(); break;

            case '2': TwoButton.PerformClick(); break;

            case '3': ThreeButton.PerformClick(); break;

            case '4': FourButton.PerformClick(); break;

            case '5': FiveButton.PerformClick(); break;

            case '6': SixButton.PerformClick(); break;

            case '7': SevenButton.PerformClick(); break;

            case '8': EightButton.PerformClick(); break;

            case '9': NineButton.PerformClick(); break;

            case '0': ZeroButton.PerformClick(); break;

            case '/': DivideButton.PerformClick(); break;

            case '*': MultiplyButton.PerformClick(); break;

            case '-': SubtractButton.PerformClick(); break;

            case '+': AddButton.PerformClick(); break;

            case ',': CommaButton.PerformClick(); break;

            case 'C': ClearButton.PerformClick(); break;

            case 'c': ClearButton.PerformClick(); break;
            }
            e.Handled = true;
        }
示例#6
0
    void JoinPlayer(OneButton button)
    {
        Character newChar = Instantiate(characterPrefab, playerSpawnPoint[players.Count].position, Quaternion.identity);

        newChar.playerColor = playerColors[players.Count];
        newChar.button      = button;
        newChar.playerId    = players.Count;
        newChar.RunSpawnFX();

        playerScores[players.Count].gameObject.SetActive(true);
        playerScores[players.Count].color = newChar.playerColor;

        uiBars[players.Count].gameObject.SetActive(true);
        uiBars[players.Count].character = newChar;

        newChar.uiBar = uiBars[players.Count];

        players.Add(newChar);

        CameraCtrl.Shake(0.15f, 20.0f);

        SoundManager.PlaySound(SoundManager.SoundType.SoundFX, playerJoinSound, 1, 1 + 0.05f * players.Count);
    }
示例#7
0
    // Update is called once per frame
    void Update()
    {
        switch (gameState)
        {
        case GameState.Title:
            if ((canStart) && ((Time.time - timeOfMainTitle) > 2.0f))
            {
                WaitPlayer();
            }
            break;

        case GameState.Prepare:
            WaitPlayer();
            RunCountdown();
            break;

        case GameState.Playing:
        {
            bool allDead = true;

            if (gameParams.allowRespawn)
            {
                foreach (var player in players)
                {
                    if (!player.isDead)
                    {
                        allDead = false;
                    }
                }
            }
            else
            {
                allDead = false;
            }

            if (allDead)
            {
                EndRace();
            }
            else
            {
                raceTime += Time.deltaTime;
                if (raceTime >= gameParams.raceTime)
                {
                    EndRace();
                }
                else
                {
                    UpdateScore();

                    UpdatePlatforms();
                    UpdateBlocks();
                    UpdateMines();
                    UpdatePowerups();
                }
            }
        }
        break;

        default:
            break;
        }

        for (int i = 0; i < players.Count; i++)
        {
            playerScores[i].text = string.Format("{0:00000}", Mathf.FloorToInt(players[i].score));
        }

        time.text = string.Format("{0:0}", Mathf.Clamp(Mathf.FloorToInt(gameParams.raceTime - raceTime), 0, gameParams.raceTime));

        OneButton.UpdateButtons();

        if ((Input.GetKey(KeyCode.Escape)) && (Input.GetKey(KeyCode.LeftShift)))
        {
#if UNITY_EDITOR
            UnityEditor.EditorApplication.isPlaying = false;
#else
            Application.Quit();
#endif
        }
    }
        void ReleaseDesignerOutlets()
        {
            if (AboutButton != null)
            {
                AboutButton.Dispose();
                AboutButton = null;
            }

            if (AdditionButton != null)
            {
                AdditionButton.Dispose();
                AdditionButton = null;
            }

            if (ClearButton != null)
            {
                ClearButton.Dispose();
                ClearButton = null;
            }

            if (DisplayLabel != null)
            {
                DisplayLabel.Dispose();
                DisplayLabel = null;
            }

            if (DivisionButton != null)
            {
                DivisionButton.Dispose();
                DivisionButton = null;
            }

            if (EightButton != null)
            {
                EightButton.Dispose();
                EightButton = null;
            }

            if (EqualsButton != null)
            {
                EqualsButton.Dispose();
                EqualsButton = null;
            }

            if (FiveButton != null)
            {
                FiveButton.Dispose();
                FiveButton = null;
            }

            if (FourButton != null)
            {
                FourButton.Dispose();
                FourButton = null;
            }

            if (historyCalcSwipeGesture != null)
            {
                historyCalcSwipeGesture.Dispose();
                historyCalcSwipeGesture = null;
            }

            if (MultiplyButton != null)
            {
                MultiplyButton.Dispose();
                MultiplyButton = null;
            }

            if (NineButton != null)
            {
                NineButton.Dispose();
                NineButton = null;
            }

            if (OneButton != null)
            {
                OneButton.Dispose();
                OneButton = null;
            }

            if (SevenButton != null)
            {
                SevenButton.Dispose();
                SevenButton = null;
            }

            if (SixButton != null)
            {
                SixButton.Dispose();
                SixButton = null;
            }

            if (SubtractButton != null)
            {
                SubtractButton.Dispose();
                SubtractButton = null;
            }

            if (SymbolLabel != null)
            {
                SymbolLabel.Dispose();
                SymbolLabel = null;
            }

            if (ThreeButton != null)
            {
                ThreeButton.Dispose();
                ThreeButton = null;
            }

            if (TwoButton != null)
            {
                TwoButton.Dispose();
                TwoButton = null;
            }

            if (ZeroButton != null)
            {
                ZeroButton.Dispose();
                ZeroButton = null;
            }
        }
示例#9
0
 private void UserControl_Loaded(object sender, RoutedEventArgs e)
 {
     OneButton.Focus();
 }
        void ReleaseDesignerOutlets()
        {
            if (ClearButton != null)
            {
                ClearButton.Dispose();
                ClearButton = null;
            }

            if (CodeLabel != null)
            {
                CodeLabel.Dispose();
                CodeLabel = null;
            }

            if (EightButton != null)
            {
                EightButton.Dispose();
                EightButton = null;
            }

            if (FiveButton != null)
            {
                FiveButton.Dispose();
                FiveButton = null;
            }

            if (FourButton != null)
            {
                FourButton.Dispose();
                FourButton = null;
            }

            if (LoginButton != null)
            {
                LoginButton.Dispose();
                LoginButton = null;
            }

            if (LoginFrameView != null)
            {
                LoginFrameView.Dispose();
                LoginFrameView = null;
            }

            if (LoginTitleLabel != null)
            {
                LoginTitleLabel.Dispose();
                LoginTitleLabel = null;
            }

            if (NineButton != null)
            {
                NineButton.Dispose();
                NineButton = null;
            }

            if (OneButton != null)
            {
                OneButton.Dispose();
                OneButton = null;
            }

            if (RoleButton != null)
            {
                RoleButton.Dispose();
                RoleButton = null;
            }

            if (RolePickerView != null)
            {
                RolePickerView.Dispose();
                RolePickerView = null;
            }

            if (SevenButton != null)
            {
                SevenButton.Dispose();
                SevenButton = null;
            }

            if (SixButton != null)
            {
                SixButton.Dispose();
                SixButton = null;
            }

            if (ThreeButton != null)
            {
                ThreeButton.Dispose();
                ThreeButton = null;
            }

            if (TwoButton != null)
            {
                TwoButton.Dispose();
                TwoButton = null;
            }

            if (ZeroButton != null)
            {
                ZeroButton.Dispose();
                ZeroButton = null;
            }
        }
示例#11
0
        private void Form1_KeyPress(object sender, KeyPressEventArgs e)
        {
            switch (e.KeyChar.ToString())
            {
            case ("0"):
                ZeroButton.PerformClick();
                break;

            case ("1"):
                OneButton.PerformClick();
                break;

            case ("2"):
                TwoButton.PerformClick();
                break;

            case ("3"):
                ThreeButton.PerformClick();
                break;

            case ("4"):
                FourButton.PerformClick();
                break;

            case ("5"):
                FiveButton.PerformClick();
                break;

            case ("6"):
                SixButton.PerformClick();
                break;

            case ("7"):
                SevenButton.PerformClick();
                break;

            case ("8"):
                EightButton.PerformClick();
                break;

            case ("9"):
                NineButton.PerformClick();
                break;

            case ("\r"):
                EqualsButton.PerformClick();
                break;

            case ("."):
                PointButton.PerformClick();
                break;

            case ("/"):
                DivideButton.PerformClick();
                break;

            case ("*"):
                TimesButton.PerformClick();
                break;

            case ("-"):
                MinusButton.PerformClick();
                break;

            case ("+"):
                PlusButton.PerformClick();
                break;
            }
        }
示例#12
0
        void ReleaseDesignerOutlets()
        {
            if (CalculateButton != null)
            {
                CalculateButton.Dispose();
                CalculateButton = null;
            }

            if (DivideButton != null)
            {
                DivideButton.Dispose();
                DivideButton = null;
            }

            if (EightButton != null)
            {
                EightButton.Dispose();
                EightButton = null;
            }

            if (FiveButton != null)
            {
                FiveButton.Dispose();
                FiveButton = null;
            }

            if (FourButton != null)
            {
                FourButton.Dispose();
                FourButton = null;
            }

            if (MinusButton != null)
            {
                MinusButton.Dispose();
                MinusButton = null;
            }

            if (MultiplyButton != null)
            {
                MultiplyButton.Dispose();
                MultiplyButton = null;
            }

            if (NineButton != null)
            {
                NineButton.Dispose();
                NineButton = null;
            }

            if (OneButton != null)
            {
                OneButton.Dispose();
                OneButton = null;
            }

            if (PlusButton != null)
            {
                PlusButton.Dispose();
                PlusButton = null;
            }

            if (ResultBox != null)
            {
                ResultBox.Dispose();
                ResultBox = null;
            }

            if (SevenButton != null)
            {
                SevenButton.Dispose();
                SevenButton = null;
            }

            if (SixButton != null)
            {
                SixButton.Dispose();
                SixButton = null;
            }

            if (ThreeButton != null)
            {
                ThreeButton.Dispose();
                ThreeButton = null;
            }

            if (TwoButton != null)
            {
                TwoButton.Dispose();
                TwoButton = null;
            }

            if (ZeroButton != null)
            {
                ZeroButton.Dispose();
                ZeroButton = null;
            }
        }