L
Lavrael
Gast
Hallo ComputerBaseCommunity,
ich studiere seid einer Weile Informatik und bin ein ziemlicher Anfänger was Programmieren angeht. Bisher kam ich super mit, doch nun stehe ich vor einem kleinen Problem. Wir sollen mit Processing, das ja auf Java basiert, ein kleines Spiel programmieren. Und zwar soll unten ein kleines Rechteck sein, das sich mit Tasten nach links und rechts bewegen kann, und dassoll die von oben fallenden Kreise auffangen. Das Problem ist, das ich es nicht schaffe das die Kreise auf das Rechteck reagieren. Wenn die Kreise auf das Rechteck treffen, sollen sie verschwinden und irgendwo oben wieder auftauchen. Das Random-Auftauchen und so, habe ich. Nur weiß ich nicht, wie ich das mache das die Kreise auf das Rechteck reagieren. Was ich auch versuche, die gehen einfach mitten durch.
Hoffe ihr könnt behilflich sein ...
Freundliche Grüße,
Lavrael
ich studiere seid einer Weile Informatik und bin ein ziemlicher Anfänger was Programmieren angeht. Bisher kam ich super mit, doch nun stehe ich vor einem kleinen Problem. Wir sollen mit Processing, das ja auf Java basiert, ein kleines Spiel programmieren. Und zwar soll unten ein kleines Rechteck sein, das sich mit Tasten nach links und rechts bewegen kann, und dassoll die von oben fallenden Kreise auffangen. Das Problem ist, das ich es nicht schaffe das die Kreise auf das Rechteck reagieren. Wenn die Kreise auf das Rechteck treffen, sollen sie verschwinden und irgendwo oben wieder auftauchen. Das Random-Auftauchen und so, habe ich. Nur weiß ich nicht, wie ich das mache das die Kreise auf das Rechteck reagieren. Was ich auch versuche, die gehen einfach mitten durch.
Hoffe ihr könnt behilflich sein ...
Code:
float a = random(15,285); //Randomstartpunkt des 1. Kreises auf der X Achse
float b = random(15,285); //Randomstartpunkt des 2. Kreises auf der X Achse
float c = random(15,285); //Randomstartpunkt des 3. Kreises auf der X Achse
float d = 0; //Startpunkt des 1. Kreises auf der Y Achse
float e = random(0,255); //Randomfarbe des 1. Kreises
float f = random(0,255); //Randomfarbe des 2. Kreises
float g = random(0,255); //Randomfarbe des 3. Kreises
float h = 0; //Startpunkt des 2. Kreises auf der Y Achse
float i = 0; //Startpunkt des 3. Kreises auf der Y Achse
float x = 150; //Startpunkt auf der X Achse vom Eimer
float y = 2.5; //Bewegungsgeschwindigkeit des Eimers
void setup() {
size(300,300);
}
void draw() {
smooth();
background(0,255,0);
rectMode(CENTER); //Rechteckkoordinatenpunkte X & Y werden zentriert
rect(x,280,60,15);
fill(e);
stroke(1);
ellipse(a,d,30,30); //1. Kreis
noFill();
fill(f);
ellipse(b,h,30,30); //2. Kreis
noFill();
fill(g);
ellipse(c,i,30,30); //3. Kreis
noFill();
fill(255);
noStroke();
d = d+1.5; //Fallgeschwindigkeit des 1. Kreises
h = h+1.2; //Fallgeschwindigkeit des 2. Kreises
i = i+1; //Fallgeschwindigkeit des 3. Kreises
if(d > 300) {
e = random(0,255);
a = random(15,285);
d = 0;
}
if(h > 300) {
f = random(0,255);
b = random(15,285);
h = 0;
}
if(i > 300) {
g = random(0,255);
c = random(15,285);
i = 0;
}
if(keyPressed) { //if-Anweisung um den Eimer nach links zu bewegen
if(key == 'a' || key == 'A') {
x = x - y;
}
}
if(keyPressed) { //if-Anweisung um den Eimer nach rechts zu bewegen
if(key == 's' || key == 'S') {
x = x + y;
}
}
if(x-30 < 0) { //Der Eimer kann nicht links aus dem Bild
x = 30;
}
if(x+30 > 300) { //Der Eimer kann nicht rechts aus dem Bild
x = 270;
}
}
Freundliche Grüße,
Lavrael