L'IA atteint ses limites

ReadyForYOURPLS
2022-12-05 03:01:41

Je lui demande et la guide pour créer une autre simulation de vie, elle n'y arrive pas cette merde
// Création de la classe Agent
class Agent {
// Propriétés de l'agent
float x, y; // Position de l'agent
float speed; // Vitesse de l'agent

// Constructeur de la classe Agent
Agent(float x_, float y_, float speed_) {
x = x_;
y = y_;
speed = speed_;
}

// Méthode pour mettre à jour la position de l'agent
void update() {
// Déplacement aléatoire de l'agent
x += random(-speed, speed);
y += random(-speed, speed);
}

// Méthode pour afficher l'agent
void display() {
// Dessin d'un cercle pour représenter l'agent
ellipse(x, y, 5, 5);
}
}

// Liste des agents
Agent[] agents;

// Définition des zones rouges
float[] redZonesX = {50, 150, 250};
float[] redZonesY = {50, 150, 250};
float[] redZonesW = {100, 100, 100};
float[] redZonesH = {100, 100, 100};

void setup() {
size(400, 400);

// Initialisation de la liste des agents
agents = new Agent[100];

// Création des agents et ajout à la liste
for (int i = 0; i < agents.length; i++) {
agents[i] = new Agent(random(width), random(height), random(1, 5));
}
}

void draw() {
background(255);

// Vérification d'une condition pour recommencer le système
// (par exemple, si la touche "r" est enfoncée)
if (keyPressed && key == 'r') {
setup(); // Appel de la fonction setup() pour recommencer
}

// Affichage des zones rouges
fill(255, 0, 0);
for (int i = 0; i < redZonesX.length; i++) {
rect(redZonesX[i], redZonesY[i], redZonesW[i], redZonesH[i]);
}

// Mise à jour et affichage des agents
for (int i = 0; i < agents.length; i++) {
// Vérification si l'agent se trouve dans une zone rouge
boolean inRedZone = false;
for (int j = 0; j < redZonesX.length; j++) {
if (agents[i].x > redZonesX[j] && agents[i].x < redZonesX[j] + redZonesW[j] &&
agents[i].y > redZonesY[j] && agents[i].y < redZonesY[j] + redZonesH[j]) {
inRedZone = true;
break;
}
}

// Si l'agent se trouve dans une zone rouge, on le supprime de la liste
if (inRedZone) {
agents = shorten(Agents[]);
} else {
agents[i].update();
agents[i].display();
}
}
}

MafiaJ
2022-12-05 03:02:28

Osef le goy

ReadyForYOURPLS
2022-12-05 03:06:42

up

Infos
Gestion du forum

contact@geevey.com

API disponible. Utilisez le paramètre "api" en GET, peu importe le contenu, sur une page du site.

Notes

    Partenaire: JVFlux
    Ce site n'est pas associé à Jeuxvideo.com ou Webedia. Nous utilisons seulement des archives publiques.
    Il est inutile de me spammer par e-mail pour supprimer un topic. Au contraire, en conséquence, je mettrais votre topic dans le bloc ci-dessous.
Non-assumage
    Personne n'a pas assumé de topic pour le moment.