private void btnStartActionPerformed( java.awt.event.ActionEvent evt) { // GEN-FIRST:event_btnStartActionPerformed Random r = new Random(); Ball ball = new Ball(canvas, new Color(r.nextInt(256), r.nextInt(256), r.nextInt(256), r.nextInt(256))); ball.start(); balls.add(ball); } // GEN-LAST:event_btnStartActionPerformed
/** Основной цикл программы. Тут происходят все важные действия */ public void run() throws Exception { // Создаем холст для отрисовки. Canvas canvas = new Canvas(width, height); // Создаем объект "наблюдатель за клавиатурой" и стартуем его. KeyboardObserver keyboardObserver = new KeyboardObserver(); keyboardObserver.start(); // Исполняем цикл, пока игра не окончека while (!isGameOver) { // "наблюдатель" содержит события о нажатии клавиш? if (keyboardObserver.hasKeyEvents()) { KeyEvent event = keyboardObserver.getEventFromTop(); // Если "стрелка влево" - сдвинуть фигурку влево if (event.getKeyCode() == KeyEvent.VK_LEFT) stand.moveLeft(); // Если "стрелка вправо" - сдвинуть фигурку вправо else if (event.getKeyCode() == KeyEvent.VK_RIGHT) stand.moveRight(); // Если "пробел" - запускаем шарик else if (event.getKeyCode() == KeyEvent.VK_SPACE) ball.start(); } // двигаем все объекты move(); // проверяем столкновения checkBricksBump(); checkStandBump(); // проверяем, что шарик мог улететь через дно. checkEndGame(); // отрисовываем все объекты canvas.clear(); draw(canvas); canvas.print(); // пауза Thread.sleep(300); } // Выводим сообщение "Game Over" System.out.println("Game Over!"); }