From 381d12f02160a7856a9fe909070ceba504c98f1b Mon Sep 17 00:00:00 2001 From: laure Date: Wed, 29 May 2024 19:50:37 +0200 Subject: [PATCH] can delete agent went click on it --- src/backend/Simulator.java | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/src/backend/Simulator.java b/src/backend/Simulator.java index dba94a7..4990fa4 100644 --- a/src/backend/Simulator.java +++ b/src/backend/Simulator.java @@ -201,11 +201,25 @@ public class Simulator extends Thread { if (clickActionFlag==0) { // cell setCell(x, y, getCell(x, y) == 1 ? 0 : 1); } else if (clickActionFlag==1) { // sheep - Sheep sheep = new Sheep(x,y); - agents.add(sheep); + ArrayList nearby=getNeighboringAnimals(x,y,1); //look if the cell has an agent + if (nearby.isEmpty()) { + Sheep sheep = new Sheep(x,y); + agents.add(sheep); + }else { + for (Agent animal:nearby) { + agents.remove(animal); + } + } } else if (clickActionFlag==2) { // wolf - Wolf wolf = new Wolf(x,y); - agents.add(wolf); + ArrayList nearby=getNeighboringAnimals(x,y,1); + if (nearby.isEmpty()) { + Sheep sheep = new Sheep(x,y); + agents.add(sheep); + }else { + for (Agent animal:nearby) { + agents.remove(animal); + } + } } }