public static void main(String[] args) { long animLen; // config and settings - set robotID and IP // Not needed for avatar(uncomment for robot) // String robotID = "myRobot"; // String robotIP = "192.168.0.54"; // set respective addresses // Not needed for avatar (uncomment for robot) // SetSettings settings = new SetSettings(robotID, robotIP); // try to make connections myRobot = Robokind.connectRobot(); myPlayer = Robokind.connectAnimationPlayer(); mySpeaker = Robokind.connectSpeechService(); String command = ""; while (!command.equals("STOP")) { // give Zeno a command, from command = JOptionPane.showInputDialog("Give me a command: SPEAK, DANCE, ANIM, STOP"); command = command.toUpperCase(); String speech = ""; if (command.equals("SPEAK")) { while (!speech.equals("0")) { myGoalPositions = myRobot.getDefaultPositions(); // push joints back to defaults myRobot.move(myGoalPositions, 1000); speech = JOptionPane.showInputDialog("What shall I say? (0 to stop)"); if (!speech.equals("0")) { Expression expression = new Expression(); expression.setExpressionJoints(myRobot); expression.lookUp(400, myRobot); Robokind.sleep(200); expression.smile(200, myRobot); Robokind.sleep(200); expression.blink(400, myRobot); Robokind.sleep(200); mySpeaker.speak(speech); } } } String dance = ""; if (command.equals("DANCE")) { while (!dance.equals("stop")) { dance = JOptionPane.showInputDialog("Which dance? (Pick 1-5 or 'stop')"); if (dance.equals("1")) { Animation danceAnim1 = Robokind.loadAnimation("all/AZR50_Dancing_01.anim.xml"); myPlayer.playAnimation(danceAnim1); animLen = danceAnim1.getLength(); Robokind.sleep(2000 + animLen); } if (dance.equals("2")) { Animation danceAnim1 = Robokind.loadAnimation("all/AZR50_Dancing_02.anim.xml"); myPlayer.playAnimation(danceAnim1); animLen = danceAnim1.getLength(); Robokind.sleep(2000 + animLen); } if (dance.equals("3")) { Animation danceAnim1 = Robokind.loadAnimation("all/AZR50_Dancing_03.anim.xml"); myPlayer.playAnimation(danceAnim1); animLen = danceAnim1.getLength(); Robokind.sleep(2000 + animLen); } if (dance.equals("4")) { Animation danceAnim1 = Robokind.loadAnimation("all/AZR50_Dancing_04.anim.xml"); myPlayer.playAnimation(danceAnim1); animLen = danceAnim1.getLength(); Robokind.sleep(2000 + animLen); } if (dance.equals("5")) { Animation danceAnim1 = Robokind.loadAnimation("all/AZR50_Dancing_05.anim.xml"); myPlayer.playAnimation(danceAnim1); animLen = danceAnim1.getLength(); Robokind.sleep(2000 + animLen); } if (dance.equals("stop") || dance.equals("STOP")) { // do nothing } } } if (command.equals("ANIM")) { String anim = ""; while (!anim.equals("stop")) { anim = JOptionPane.showInputDialog("What shall I do? (Pick 1-15 or 'stop')"); if (anim.equals("1")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Aggressive_01.anim.xml"); System.out.println("Playing 'aggresive'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("2")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Appreciation_02.anim.xml"); System.out.println("Playing 'appreciation'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("3")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Astonished_02.anim.xml"); System.out.println("Playing 'astonished'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("4")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Cheer_FistPump_01.anim.xml"); System.out.println("Playing 'cheer'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("5")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Conceited_01.anim.xml"); System.out.println("Playing 'conceited'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("6")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Handshake_02.anim.xml"); System.out.println("Playing 'handshake' (lol I'll hit myself in the face)."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("7")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_InLove_02.anim.xml"); System.out.println("Playing 'in love'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("8")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Listening_05.anim.xml"); System.out.println("Playing 'listening'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("9")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Offended_02.anim.xml"); System.out.println("Playing 'offended'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("10")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Quizzical_02.anim.xml"); System.out.println("Playing 'quizzical'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("11")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Tired_01.anim.xml"); System.out.println("Playing 'tired'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("12")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Relieved_02.anim.xml"); System.out.println("Playing 'relieved'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("13")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Shy_02.anim.xml"); System.out.println("Playing 'shy'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("14")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_Tired_02.anim.xml"); System.out.println("Playing 'tired (2)'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("15")) { Animation anim1 = Robokind.loadAnimation("all/AZR50_VictoryPose_01.anim.xml"); System.out.println("Playing 'victory pose'."); myPlayer.playAnimation(anim1); animLen = anim1.getLength(); Robokind.sleep(2000 + animLen); } if (anim.equals("stop") || anim.equals("STOP")) { // do nothing } // back to defaults myGoalPositions = myRobot.getDefaultPositions(); // push joints back to defaults myRobot.move(myGoalPositions, 1000); } } } Robokind.disconnect(); System.exit(0); }