public void render(Miner miner) { Vector adjustedPosition = miner.position().add(viewPoint); int x = (int) adjustedPosition.x(); int y = (int) adjustedPosition.y(); AffineTransform orig = graphics.getTransform(); AffineTransform rot = AffineTransform.getRotateInstance(miner.heading().x(), miner.heading().y(), x, y); graphics.transform(rot); graphics.drawRect( x - (int) miner.boundingRadius(), y - ((int) miner.boundingRadius() / 2), (int) miner.boundingRadius() * 2, (int) miner.boundingRadius()); graphics.setTransform(orig); renderHealthBar(miner, x, y); renderEnergyBar(miner, x, y); }