// When a button is clicked and is colored, we will check all 4 buttons in a turn in order to see if we can click the check guess button public void ColorButton_Clicked(object sender, ColorChosenEventArgs e) { ColoredGameButton theButtonThatWasClicked = (ColoredGameButton)sender; // If the button that we clicked on belong to this turn we need to check all guesses if (m_TurnNumber == e.TurnNumber) { for (int i = 0; i < m_NumberOfColorsTheUserGuesses; i++) { // If we chose a color that was already chosen in the same turn, choose a different color if (theButtonThatWasClicked.ButtonCollor == UserGuess[i].ButtonCollor && theButtonThatWasClicked != UserGuess[i]) { theButtonThatWasClicked.PerformClick(); } } for (int i = 0; i < m_NumberOfColorsTheUserGuesses; i++) { // if not all 4 guessButtons are colored, no need to activate checkGuessButton if (!UserGuess[i].IsColored) { return; } } // If we have chosen 4 uniqe colors, activate checkGuessbutton m_CheckGuessButton.TurnOn(); } }
private void placeGuessingButtons(int i_TurnNumber, int i_SpaceBetweenTurnsAndButtons) { int buttonMeasurement = 40; int baseHeightFromForm = 80; int baseLeftSpaceFromform = 20; int spaceBetweenGuessButtons = 0; for (int i = 0; i < m_NumberOfColorsTheUserGuesses; i++) { m_UserGuess[i] = new ColoredGameButton((i_TurnNumber * i_SpaceBetweenTurnsAndButtons) + baseHeightFromForm, baseLeftSpaceFromform + spaceBetweenGuessButtons, buttonMeasurement, buttonMeasurement); spaceBetweenGuessButtons += i_SpaceBetweenTurnsAndButtons; } }
private void placeFeedbackButtons(int i_TurnNumber, int i_SpaceBetweenTurnsAndButtons) { int buttonMeasurement = 15; int baseHeightFromForm = 85; int baseLeftSpaceFromform = 250; m_UserFeedback[0] = new ColoredGameButton((i_TurnNumber * i_SpaceBetweenTurnsAndButtons) + baseHeightFromForm, baseLeftSpaceFromform, buttonMeasurement, buttonMeasurement); m_UserFeedback[1] = new ColoredGameButton((i_TurnNumber * i_SpaceBetweenTurnsAndButtons) + baseHeightFromForm, baseLeftSpaceFromform + buttonMeasurement, buttonMeasurement, buttonMeasurement); m_UserFeedback[2] = new ColoredGameButton((i_TurnNumber * i_SpaceBetweenTurnsAndButtons) + baseHeightFromForm + buttonMeasurement, baseLeftSpaceFromform, buttonMeasurement, buttonMeasurement); m_UserFeedback[3] = new ColoredGameButton((i_TurnNumber * i_SpaceBetweenTurnsAndButtons) + baseHeightFromForm + buttonMeasurement, baseLeftSpaceFromform + buttonMeasurement, buttonMeasurement, buttonMeasurement); foreach (ColoredGameButton feedbackButton in m_UserFeedback) { feedbackButton.TurnOff(); } }
public void InitializeColorSequence() { int buttonMeasurement = 40; int baseHeightAndLeftSpaceFromForm = 20; int spaceBetweenButtons = 0; int spaceBetweenGuessButtonsNeeded = 42; for (int i = 0; i < m_ColorSequenceChosen.Length; i++) { m_ColorSequenceChosen[i] = new ColoredGameButton(baseHeightAndLeftSpaceFromForm, baseHeightAndLeftSpaceFromForm + spaceBetweenButtons, buttonMeasurement, buttonMeasurement); m_ColorSequenceChosen[i].ColorButton(Color.Black); m_ColorSequenceChosen[i].TurnOff(); spaceBetweenButtons += spaceBetweenGuessButtonsNeeded; } }
private void chooseColorBotton_Clicked(object sender, EventArgs e) { ColoredGameButton clickedGuessingButton = (ColoredGameButton)sender; m_FormChooseColor.ShowDialog(); if (m_FormChooseColor.ButtonWasColored) { clickedGuessingButton.ColorButton(m_FormChooseColor.LastColorchosen); // We want to check in which turn was the pressed button included in for (int i = 0; i < m_Turns.Length; i++) { int turnNumberOfButton = m_Turns[i].GetTurnNumberOfButton(clickedGuessingButton); if (turnNumberOfButton != -1) { OnColorChosen(sender, turnNumberOfButton); break; } } } // reset this for the next button that will be clicked m_FormChooseColor.ButtonWasColored = false; }