public void render(Canvas canvas) { // render explosions if (explosion != null) { if (mParticeBitmap != null) explosion.draw(mParticeBitmap, canvas); else explosion.draw(canvas); } }
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); } }
@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); } }