Cloxygen Posted June 30, 2017 Share Posted June 30, 2017 (edited) Spoiler private MouseListener clickListener = new MouseListener() { @Override public void mouseClicked(MouseEvent e) { if (bankButton.contains(e.getPoint())) { shouldBank = !shouldBank; } if(pauseButton.contains(e.getPoint())){ shouldPause = !shouldPause; } if(startButton.contains(e.getPoint())){ started = true; } else if(!started){ //removes selected if clicked for(int i = 0;i < selectedOrePos.size();i++){ if(selectedOrePos.get(i).getPolygon(getBot()).contains(e.getPoint())){ selectedOrePos.remove(selectedOrePos.get(i)); return; } } //adds unselected if clicked for(int i = 0;i < nearbyOres.size();i++){ if(nearbyOres.get(i).getPosition().getPolygon(getBot()).contains(e.getPoint())){ selectedOrePos.add(nearbyOres.get(i).getPosition()); return; } } } } @Override public void mousePressed(MouseEvent e) { } @Override public void mouseReleased(MouseEvent e) { } @Override public void mouseEntered(MouseEvent e) { } @Override public void mouseExited(MouseEvent e) { } }; public final void onStart() throws InterruptedException { getBot().addMouseListener(clickListener); } This is how I was implementing a mouse listener for ore selection, but in the current release this no longer works. Any pro tips on how I should doing this? Edited June 30, 2017 by Cloxygen Quote Link to comment Share on other sites More sharing options...
Explv Posted June 30, 2017 Share Posted June 30, 2017 (edited) If you are trying to listen for user clicks, then maybe try adding the listener to the canvas instead: getBot().getCanvas().addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { super.mouseClicked(e); // whatever } }); Note: Sometimes mouseClicked can be unresponsive, and you may want to consider using mousePressed instead. Edited June 30, 2017 by Explv 1 Quote Link to comment Share on other sites More sharing options...