public void render(Canvas canvas) {

    // render explosions
    if (explosion != null) {
      if (mParticeBitmap != null) explosion.draw(mParticeBitmap, canvas);
      else explosion.draw(canvas);
    }
  }
Beispiel #2
0
  public void drawFromThread(Canvas canvas) {
    final float scaleFactorX = getWidth() / (WIDTH * 1.f);
    final float scaleFactorY = getHeight() / (HEIGHT * 1.f);

    if (canvas != null) {
      final int savedState = canvas.save();
      canvas.scale(scaleFactorX, scaleFactorY);
      bg.draw(canvas);
      if (!dissapear) {
        player.draw(canvas);
      }
      // draw smokepuffs
      for (Smokepuff sp : smoke) {
        sp.draw(canvas);
      }
      // draw missiles
      for (Missile m : missiles) {
        m.draw(canvas);
      }
      // draw topborder
      for (TopBorder tb : topborder) {
        tb.draw(canvas);
      }
      // draw botborder
      for (BotBorder bb : botborder) {
        bb.draw(canvas);
      }
      // draw explosion
      if (started) {
        explosion.draw(canvas);
      }
      drawText(canvas);
      canvas.restoreToCount(savedState);
    }
  }
Beispiel #3
0
 @Override
 protected void paintComponent(Graphics g) {
   super.paintComponent(g);
   Graphics2D g2d = (Graphics2D) g;
   g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
   g2d.drawImage(background, 0, 0, null);
   g2d.setColor(Color.WHITE);
   for (Ship ship : facade.getShips(world)) {
     if (!visualizations.containsKey(ship)) {
       visualizations.put(ship, new ShipVisualization(Color.BLUE, ship, null));
     }
     visualizations.get(ship).draw(g2d);
   }
   for (Asteroid asteroid : facade.getAsteroids(world)) {
     if (!visualizations.containsKey(asteroid)) {
       visualizations.put(asteroid, new AsteroidVisualization(asteroid));
     }
     visualizations.get(asteroid).draw(g2d);
   }
   for (Bullet bullet : facade.getBullets(world)) {
     if (!visualizations.containsKey(bullet)) {
       Ship ship = facade.getBulletSource(bullet);
       visualizations.put(
           bullet, new BulletVisualization(visualizations.get(ship).getColor(), bullet));
     }
     visualizations.get(bullet).draw(g2d);
   }
   for (Explosion explosion : explosions) {
     explosion.draw(g2d);
   }
   if (msg != null) {
     g2d.setColor(Color.WHITE);
     g2d.setFont(g2d.getFont().deriveFont(40f));
     drawCenteredString(g2d, msg);
     g2d.setFont(g2d.getFont().deriveFont(20f));
     drawCenteredString(g2d, "Press ESC to continue ...", getHeight() / 3 * 2);
   }
 }