示例#1
0
 public void render(GameContainer container, Graphics g) {
   map.getTmap().render(0, 0);
   // Renders the random landscape objects,which were generated in map.
   ArrayList<Item> objects = map.getObjects();
   for (int i = 0; i < objects.size(); i++) {
     container
         .getGraphics()
         .drawImage(objects.get(i).getImage(), objects.get(i).getX(), objects.get(i).getY());
   }
   if (!finished) {
     ArrayList<Landmark> landmarks = map.getLandmarks();
     for (Landmark landmark : landmarks) {
       g.drawImage(landmark.getImage(), landmark.getTileX(), landmark.getTileY());
     }
     ArrayList<Avatar> avatars = map.getAvatars();
     for (int i = 0; i < avatars.size(); i++) {
       g.drawAnimation(
           avatars.get(i).getImage(), avatars.get(i).getPosX(), avatars.get(i).getPosY());
       if (avatars.get(i).getPosX() / 16 >= 33.0
           && avatars.get(i).getPosX() / 16 <= 36.0
           && avatars.get(i).getPosY() / 16 >= 10.0
           && avatars.get(i).getPosY() / 16 <= 12.0) {
         finished = true;
         winner = avatars.get(i).getName();
       }
     }
     for (int i = 0; i < map.getTmap().getWidth(); i++) {
       g.drawString(String.valueOf(i), i * 16, 0 * 16);
       g.drawString(String.valueOf(i), i * 16, 29 * 16);
     }
     for (int j = 0; j < map.getTmap().getHeight(); j++) {
       g.drawString(String.valueOf(j), 0 * 16, j * 16);
       g.drawString(String.valueOf(j), 39 * 16, j * 16);
     }
   } else {
     map.setFinished(true);
     container.getGraphics().drawString("Game over in " + map.getSteps() + " steps!", 150, 50);
     g.drawString("Winner is " + winner + "!", 150, 60);
   }
 }