/** * Displays client version (ThinClient Version) based on rev.txt If rev.txt is not found, ? is * displayed */ private void setClientRevision() { String path = System.getProperty("res.path"); if (path == null || path.equalsIgnoreCase("NULL")) { path = "./"; } File f = new File(path + "/.svn/entries"); try { if (f.exists()) { Scanner s = new Scanner(f); s.nextLine(); s.nextLine(); s.nextLine(); m_clientRev = new Label("Client Version: svn:" + s.nextLine()); f = new File(path + "rev.txt"); s = new Scanner(f); m_clientRev.setText(m_clientRev.getText() + " // rev:" + s.nextLine()); } else { f = new File(path + "rev.txt"); Scanner s; s = new Scanner(f); m_clientRev = new Label("Client Version: r" + s.nextLine()); } } catch (Exception e) { System.out.println(e.getMessage()); m_clientRev = new Label("Client Version: ?"); } m_clientRev.setFont(GameClient.getFontSmall()); m_clientRev.setForeground(new Color(255, 255, 255)); m_clientRev.pack(); m_clientRev.setLocation(4, 600 - m_clientRev.getHeight() - 8); this.add(m_clientRev); }
/** Default constructor */ public LoginScreen() { String respath = System.getProperty("res.path"); if (respath == null) respath = ""; try { InputStream f; // m_bgColor = new Color(255, 255, 255, 70); List<String> translated = new ArrayList<String>(); translated = Translator.translate("_LOGIN"); /* * Load the background image * NOTE: Months start at 0, not 1 */ Calendar cal = Calendar.getInstance(); if (cal.get(Calendar.MONTH) == 1) { if (cal.get(Calendar.DAY_OF_MONTH) >= 7 && cal.get(Calendar.DAY_OF_MONTH) <= 14) { /* Valentines day! */ f = new FileInputStream(respath + "res/pokenet_valentines.png"); } else { f = new FileInputStream(respath + "res/pokenet_venonat.png"); } } else if (cal.get(Calendar.MONTH) == 2 && cal.get(Calendar.DAY_OF_MONTH) > 14) { /* If second half of March, show Easter login */ f = new FileInputStream(respath + "res/pokenet_easter.png"); } else if (cal.get(Calendar.MONTH) == 3 && cal.get(Calendar.DAY_OF_MONTH) < 26) { /* If before April 26, show Easter login */ f = new FileInputStream(respath + "res/pokenet_easter.png"); } else if (cal.get(Calendar.MONTH) == 9) { /* Halloween */ f = new FileInputStream(respath + "res/pokenet_halloween.png"); } else if (cal.get(Calendar.MONTH) == 11) { /* Christmas! */ f = new FileInputStream(respath + "res/pokenet_xmas.png"); } else if (cal.get(Calendar.MONTH) == 0) { /* January - Venonat Time! */ f = new FileInputStream(respath + "res/pokenet_venonat.png"); } else if (cal.get(Calendar.MONTH) >= 5 && cal.get(Calendar.MONTH) <= 7) { /* Summer login */ f = new FileInputStream(respath + "res/pokenet_summer.png"); } else { /* Show normal login screen */ f = new FileInputStream(respath + "res/pokenet_normal.png"); } m_bg = new Label(new Image(f, "bg", false)); m_bg.pack(); m_bg.setLocation(0, 0); m_bg.setVisible(true); this.add(m_bg); /* * Create the server selector container */ m_select = new ServerDialog(); this.add(m_select); /* * Create the language selector container */ m_lang = new LanguageDialog(); this.add(m_lang); /* * Create the login container */ m_login = new LoginDialog(); this.add(m_login); m_register = new RegisterDialog(); this.add(m_register); m_about = new AboutDialog(); this.add(m_about); m_terms = new ToSDialog(); this.add(m_terms); m_openAbout = new Button(translated.get(3)); m_openAbout.setSize(64, 32); m_openAbout.setLocation(800 - 64 - 8, 8); m_openAbout.setVisible(false); m_openAbout.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent arg0) { showAbout(); } }); this.add(m_openAbout); m_openToS = new Button(translated.get(4)); m_openToS.setSize(64, 32); m_openToS.setLocation(800 - 64 - 8, 40); m_openToS.setVisible(false); m_openToS.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent arg0) { showToS(); } }); this.add(m_openToS); setClientRevision(); m_serverRev = new Label("Server Version: ?"); m_serverRev.setFont(GameClient.getFontSmall()); m_serverRev.setForeground(new Color(255, 255, 255)); m_serverRev.pack(); m_serverRev.setLocation(m_clientRev.getX() + m_clientRev.getWidth() + 16, m_clientRev.getY()); m_serverRev.setVisible(true); this.add(m_serverRev); this.setLocation(0, 0); this.setSize(800, 600); this.setVisible(true); } catch (Exception e) { e.printStackTrace(); } }