package com.weem.epicinventor.hud; import com.weem.epicinventor.*; import com.weem.epicinventor.actor.*; import java.awt.*; public class HUDLevelUp extends HUD { private final static int ATTACK_BONUS_X = 47; private final static int ATTACK_BONUS_Y = 250; private final static int ATTACK_BONUS_WIDTH = 200; private final static int ATTACK_BONUS_HEIGHT = 25; private final static int HP_BONUS_X = 170; private final static int HP_BONUS_Y = 250; private final static int HP_BONUS_WIDTH = 200; private final static int HP_BONUS_HEIGHT = 25; private final static int LEVEL_X = 100; private final static int LEVEL_Y = 75; private final static int LEVEL_WIDTH = 200; private final static int LEVEL_HEIGHT = 25; private final static int BUTTON_CLOSE_WIDTH = 42; private final static int BUTTON_CLOSE_HEIGHT = 42; private final static int BUTTON_CLOSE_X = 216; private final static int BUTTON_CLOSE_Y = 0; public HUDLevelUp(HUDManager hm, Registry rg, int x, int y, int w, int h) { super(hm, rg, x, y, w, h); setImage("HUD/LevelUp/BG"); HUDArea hudArea = null; //close hudArea = addArea(BUTTON_CLOSE_X, BUTTON_CLOSE_Y, BUTTON_CLOSE_WIDTH, BUTTON_CLOSE_HEIGHT, "close"); hudArea.setImage("HUD/LevelUp/ButtonClose"); //level if(registry.getPlayerManager().getCurrentPlayer().getLevel() > 9) { hudArea = addArea(LEVEL_X, LEVEL_Y, LEVEL_WIDTH, LEVEL_HEIGHT, "level"); } else { hudArea = addArea(LEVEL_X + 15, LEVEL_Y, LEVEL_WIDTH, LEVEL_HEIGHT, "level"); } hudArea.setFont("SansSerif", Font.BOLD, 70); hudArea.setText(Integer.toString(registry.getPlayerManager().getCurrentPlayer().getLevel())); //attack bonus if(registry.getAttackBonus() > 99) { hudArea = addArea(ATTACK_BONUS_X, ATTACK_BONUS_Y, ATTACK_BONUS_WIDTH, ATTACK_BONUS_HEIGHT, "attack_bonus"); } else if(registry.getAttackBonus() > 9) { hudArea = addArea(ATTACK_BONUS_X + 3, ATTACK_BONUS_Y, ATTACK_BONUS_WIDTH, ATTACK_BONUS_HEIGHT, "attack_bonus"); } else { hudArea = addArea(ATTACK_BONUS_X + 6, ATTACK_BONUS_Y, ATTACK_BONUS_WIDTH, ATTACK_BONUS_HEIGHT, "attack_bonus"); } hudArea.setFont("SansSerif", Font.BOLD, 20); hudArea.setText("+" + registry.getAttackBonus()); //hp bonus if(registry.getHPBonus() > 99) { hudArea = addArea(HP_BONUS_X, HP_BONUS_Y, HP_BONUS_WIDTH, HP_BONUS_HEIGHT, "hp_bonus"); } else if(registry.getHPBonus() > 9) { hudArea = addArea(HP_BONUS_X + 3, HP_BONUS_Y, HP_BONUS_WIDTH, HP_BONUS_HEIGHT, "hp_bonus"); } else { hudArea = addArea(HP_BONUS_X + 6, HP_BONUS_Y, HP_BONUS_WIDTH, HP_BONUS_HEIGHT, "hp_bonus"); } hudArea.setFont("SansSerif", Font.BOLD, 20); hudArea.setText("+" + registry.getHPBonus()); } @Override public void update() { if (shouldRender) { HUDArea hudArea; for (int i = 0; i < hudAreas.size(); i++) { hudArea = hudAreas.get(i); if (hudArea.getType().equals("attack_bonus")) { hudArea.setText("+" + registry.getAttackBonus()); } else if (hudArea.getType().equals("hp_bonus")) { hudArea.setText("+" + registry.getHPBonus()); } else if (hudArea.getType().equals("level")) { hudArea.setText(Integer.toString(registry.getPlayerManager().getCurrentPlayer().getLevel())); } } } super.update(); } @Override public void HUDAreaClicked(HUDArea ha) { HUDArea hudArea = null; for (int i = 0; i < hudAreas.size(); i++) { hudArea = hudAreas.get(i); if (hudArea.getType().equals("close")) { hudManager.unloadHUD(name); } } } }