public void controlEvent(ControlEvent theEvent) { // DropdownList is of type ControlGroup. // A controlEvent will be triggered from inside the ControlGroup class. // therefore you need to check the originator of the Event with // if (theEvent.isGroup()) // to avoid an error message thrown by controlP5. /* if (theEvent.getController().getName().equals("restart")) { paddles[0].points=0; paddles[1].points=0; }*/ if (theEvent.isGroup()) { // check if the Event was triggered from a ControlGroup // println("event from group : "+theEvent.getGroup().getValue()+" from // "+theEvent.getGroup()); if (theEvent.getGroup().toString().equals("paddle1 [DropdownList]")) { println("paddle1 " + theEvent.getGroup().getValue()); paddleSelector1 = translations[(int) theEvent.getGroup().getValue()]; println(jointNames[paddleSelector1]); } else if (theEvent.getGroup().toString().equals("paddle2 [DropdownList]")) { println("paddle2 " + theEvent.getGroup().getValue()); paddleSelector2 = translations[(int) theEvent.getGroup().getValue()]; println(jointNames[paddleSelector2]); } else if (theEvent.getGroup().toString().equals("1_or_2_player [DropdownList]")) { if ((int) theEvent.getGroup().getValue() == 0) { onePlayer = true; } else { onePlayer = false; } } else if (theEvent.getGroup().toString().equals("speed [DropdownList]")) { if ((int) theEvent.getGroup().getValue() == 0) { ball.speed = new PVector(5, 5); } else if ((int) theEvent.getGroup().getValue() == 1) { ball.speed = new PVector(10, 10); } else if ((int) theEvent.getGroup().getValue() == 2) { ball.speed = new PVector(15, 15); } } } else if (theEvent.isController()) { println( "event from controller : " + theEvent.getController().getValue() + " from " + theEvent.getController()); } }