| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- package model.objects;
- import image.Images;
- import java.awt.Color;
- import java.awt.Font;
- import java.awt.Graphics2D;
- import java.awt.RenderingHints;
- import java.awt.Transparency;
- import java.awt.image.VolatileImage;
- import model.gameState.PlayState;
- public class InfoPanel {
-
- private String totalHighscore = "Score: 000000";
- private int x, y;
- private VolatileImage infoPanel;
-
- public InfoPanel(int x, int y){
- this.x = x;
- this.y = y;
- updateIPanel();
- generateInfoPanel();
- }
-
- public void updateIPanel() {
- totalHighscore = "Score: " + PlayState.currentScore;
-
- generateInfoPanel();
- }
-
- private void generateInfoPanel(){
- infoPanel = Images.initVolatileImage(256, 1024, Transparency.OPAQUE);
- Graphics2D g2 = infoPanel.createGraphics();
- RenderingHints rh = new RenderingHints(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
- g2.setRenderingHints(rh);
- g2.setColor(Color.BLACK);
-
- g2.fillRect(x, y, 256, 1024);
-
- Font scoreFont = new Font("OCR A Extended", Font.BOLD, 30);
- g2.setFont(scoreFont);
- g2.setColor(Color.ORANGE);
-
- g2.drawString(totalHighscore, 25, 75);
- g2.drawRect(25, 100, 200, 30);
- g2.drawRect(25, 300, 200, 700);
- g2.setColor(Color.GREEN);
- g2.fillRect(25, 100, (int)(2 * PlayState.lifePoints), 30);
-
- g2.setColor(Color.YELLOW);
- g2.fillRect(25, 1000 - 7 * PlayState.comboScore, 200, 0 + 7 * PlayState.comboScore);
- g2.dispose();
- infoPanel.createGraphics();
- }
-
- public void draw(Graphics2D g2){
- g2.drawImage(infoPanel, 0, 0, 256,1024,null);
- }
-
- public String getTotalHighscore()
- {
- return totalHighscore;
- }
- }
|