Drei gewinnt-Problem beim Programmieren (processing)

Neue Frage »

Auf diesen Beitrag antworten »
nina97 Drei gewinnt-Problem beim Programmieren (processing)

Meine Frage:
Hallo Community
Ich habe ein Probelm beim Programm Processing (Java-basiert) und bin natürlich Anfänger. Ich möchte, dass ich einen Bereich festlegen kann, auf den ich dann klicken kann und der sich dann füllt. Bis jetzt habe ich es geschafft, dass sich alle Felder und deren Kreise bei einem Klicken füllt, jedoch möchte ich, dass sich der Kreis NUR füllt, wenn ich auf den Bereich des Kreises klicke. Wie kann ich das anstellen?
p.s. Ich bin noch nicht fertig mit dem ganzen Programm!
Schonmal vielen Dank für Antworten!


Meine Ideen:
Also ursprünglich war gedacht, dass ich auf die Leiste unten auf die Felder klicke und die Kreise von oben nach unten die Farbe des Spielers annehmen (wie eine Ampel) und ganz unten die Farbe erhalten. Wenn zb das unterste Feld die Farbe schon angenommen hat, erhält die Farbe der Kreis davor.
Aber ich versuche klein anzufangen und zu versuchen, dass man mit einem Klick auf das Feld, der Kreis darin sich verfärbt.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
int[][] felder= new int[6][6];
int[] klickfelder= new int[6];
float a=random(1);
int spieler= (int)(a+0.5);
void setup() 
{
  size (680, 680);
}

void draw()
{
  for (int i=0; i<6;i++)
  { 
    for (int j=0; j<6;j++)
    {
      rect(80+j*80, 80+i*80, 80, 80);
          ellipse(120+j*80, 120+i*80, 80, 80);     
      int k=0;
      while (k<6)
      {
        rect(80 + k * 80, 580, 80, 80, 80);
        k= k+1;
      }
    }
    int richtung= 1;
    if (mousePressed) {
      for (int x=1;x<6;x++) {

        for (int y=1;y<6;y++) {
          if (mouseX<80+(x*80) && mouseY<80+(y*80) && spieler==1 && mouseButton==LEFT&& felder[x][y]!=2)
          {
            fill(0, 255, 0);
            ellipse(120+x*80, 120+ y*80, 80, 80);     
         
           spieler=0;

            felder[x][y]=1;
          }
          if ( mouseX<80+(x*80) && mouseY<80+(y*80) && spieler==0 && mouseButton==RIGHT && felder[x][y]!=1)

          {

            fill(0, 0, 255);
            ellipse(120+x*80, 120+y*80, 80, 80);
            spieler=1;

            felder[x][y]=2;
          }
 
        }
      }
    }
  }
}
 
Auf diesen Beitrag antworten »
Karlito

Hallo Nina,

vor kurzem war hier bereits ein anderer Fragesteller, welcher etwas Ähnliches erreichen wollte. Ich habe ziemlich ausführlich geantwortet. Bitte schau mal, ob dir das weiter hilft: spiel tic tac toe programmieren (processing)

Gern kannst du dann weitere Fragen stellen, wenn dir etwas nicht klar ist.

VG,

Karlito
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »