Salut a tous ,
j'ai fait un début de code de test de mon premier schéma qui me semble fonctionnel le voici :
Balle maBalle = new Balle(500, 500, color(155,50,52));
int w =800 ;
int v = 500;
Nour nouriture = new Nour(w, v, color(255));
float p1 = random(-5,5);
float p2 = random(-5,5);
float p3 = random(-5,5);
float p4 = random(-5,5);
void setup() {
smooth(); //Lissage des dessins
size(1000, 1001); //Taille de la fenêtre
}
void draw() {
fill(0, 0, 0, 1);
rect(0, 0, width, height);
noStroke();
//Déplacement et affichage de la balle
maBalle.bouge();
maBalle.testCollision();
maBalle.display();
}
class Balle {
//Déclaration des paramètres de base de la balle
float x;
float y;
float vitesseX; //AJOUT
float vitesseY; //AJOUT
color couleur;
//Constructeur de la balle
Balle (float nouvX, float nouvY, color nouvCouleur) {
x = nouvX;
y = nouvY;
couleur = nouvCouleur;
vitesseX = w*p1+x*p2 ; //AJOUT
vitesseY = v*p3+y*p4 ;
}
//Dessin de la balle
void display() {
fill(couleur);
ellipse(x, y, 40, 40);
nouriture.display();
}
void bouge() {
vitesseX = w*p1+x*p2 ; //AJOUT
vitesseY = v*p3+y*p4 ; //AJOUT
if (vitesseX-abs(vitesseX)<0){
x--;
}
if (vitesseX-abs(vitesseX)==0){
x++;
}
if (vitesseY-abs(vitesseY)<0){
y--;
}
if (vitesseY-abs(vitesseY)==0){
y++;
}
}
void testCollision() {
//Si la balle touche une mur, elle rebondit
if (x > width-20 || x < 20) {
vitesseX = vitesseX * -1;
}
if (y > height-20 || y < 20) {
vitesseY = vitesseY * -1;
}
}}
class Nour {
//Déclaration des paramètres de base de la balle
float z;
float q;
color couleur2;
//Constructeur de la balle
Nour (float nouvz, float nouvq, color nouvCouleur2) {
z = nouvz;
q = nouvq;
couleur2 = nouvCouleur2;
}
//Dessin de la balle
void display() {
fill(couleur2);
ellipse(z, q, 40, 40);
}
}
on peut voir que si on remplace les p1 p2 p3 p4 par 1;-1;1-1 tout marche comme prévu et c'est plutôt cool (essayez) ;
maintenant le problème c'est que la il n'y a que une bette et une nourriture auriez vous des pistes pour en créer une dizaine voire une centaine simultanément ?