g.drawString("loading images...", 20, 50);
    public void update(Graphics g) {        final Dimension size = getSize();//        final long start = System.currentTimeMillis();        // update view, offset        view.setLocation(scroll);        view.setSize(getOptimalView(size));        offset.setLocation(getOptimalOffset(size));        if (!this.isTileImagesLoaded()) {            if (!tileManager.isStarted()) {                g.drawString("loading images...", 20, 50);                System.out.println("boardview1: load all images called");                tileManager.loadNeededImages(game);                if (loadAllHexes) {                    System.out.println("boardview1: loading all hex images");                    tileManager.loadAllHexes();                }                return;            }            return;        }        // make sure back buffer is valid        if (backGraph == null || !view.getSize().equals(backSize)) {            // make new back buffer            backSize = view.getSize();            backImage = createImage(backSize.width, backSize.height);            backGraph = backImage.getGraphics();            // clear current graphics            g.clearRect(0, 0, size.width, size.height);        }        // make sure board rectangle contains our current view rectangle        if (boardImage == null || !boardRect.union(view).equals(boardRect)) {            updateBoardImage();        }        // draw onto the back buffer:        // draw the board        backGraph.drawImage(boardImage, 0, 0, this);        // draw highlight border        drawSprite(highlightSprite);        // draw C3 links        drawSprites(C3Sprites);        // draw onscreen entities        drawSprites(entitySprites);        // draw onscreen attacks        drawSprites(attackSprites);        // draw movement, if valid        drawSprites(pathSprites);        // draw cursors        drawSprite(cursorSprite);        drawSprite(selectedSprite);        drawSprite(firstLOSSprite);        drawSprite(secondLOSSprite);        // draw deployment indicators        if (m_plDeployer != null) {            drawDeployment();        }        // draw the back buffer onto the screen        g.drawImage(backImage, offset.x, offset.y, this);//        final long finish = System.currentTimeMillis();//        System.out.println("BoardView1: updated screen in " + (finish - start) + " ms.");    }