Problem - Sędzia Tic Tac Toe C# .NET

0

Witam. Zrobiłem projekt gry "tic tac toe" (kółko i krzyżyk). Gdy chciałem dodać sędziego do projektu, okazało się, że gdy jest linia z kółek, sędzia reaguje od razu, ale gdy są to krzyże, to reaguje dopiero po zapełnieniu kolejnego pola kółkiem, w wypadku remisu także czeka. Czy ktoś mógłby mi wytłumaczyć co trzeba zmienić w kodzie? Albo podesłać poprawioną wersję? W załączniku daję projekt stworzony w Sharp Develop, ale można go także (mam nadzieję) otworzyć w VS, ma rozszerzenie .vsproject.
PS: Program nie jest ukończony.
PPS: Jestem początkującym, więc proszę o wyrozumiałość.

1

Jeżeli nie wrzucisz tego na jakiegoś GIT'a albo coś w tym stylu to marne szanse, że ktokolwiek zaryzykuje otworzenie tego zipa. Tym bardziej pochodzącego od osoby, która dopiero co się zarejestrowała.

0
        void updtPlayer(bool p){
            if(p){
                checkRound();
                pictureBox10.Image=crossMmsg;
                pictureBox13.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
                pictureBox15.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
                pictureBox14.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
                pictureBox16.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
            }else{
                checkRound(); /////////////////////tego ci brakuje
                pictureBox10.Image=circleMmsg;
                pictureBox13.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
                pictureBox15.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
                pictureBox14.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
                pictureBox16.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));

            }
        }
0
dam1an napisał(a):
      void updtPlayer(bool p){
          if(p){
              checkRound();
              pictureBox10.Image=crossMmsg;
              pictureBox13.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
              pictureBox15.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
              pictureBox14.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
              pictureBox16.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
          }else{
                checkRound(); /////////////////////tego ci brakuje
                pictureBox10.Image=circleMmsg;
              pictureBox13.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
              pictureBox15.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
              pictureBox14.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
              pictureBox16.BackColor=System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));

          }
      }

Dzięki :)

2

Co nie zmienia faktu, że to:

(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))))

...jest jakiś totalny ROTFL. Po co robisz jakieś dziwne rzutowania kiedy ta metoda oczekuje zwyczajnie int'a? O_o

https://msdn.microsoft.com/pl[...]brary/cce5h557(v=vs.110).aspx

Jeszcze gdybyś wartości brał z jakichś metod co to zwracają inny typ etc... ale przecież wpisujesz je na żywego twardymi wartościami.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0