package examples; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; import java.io.*; import java.util.*; import java.lang.reflect.*; public class Launcher { public static String [] [] gameinfo = { {"Caverns of Fire","examples.cavernsoffire.CavernsOfFire", //"examples/caverns_of_fire.tbl", "html/cavernsoffire-desc.txt", "html/grabs/cavernsoffire-grab-thumb.jpg" }, {"Caverns of Fire SE","examples.cavensoffire.CavernsOfFire", "html/cavernsoffire-desc.txt", "html/grabs/cavernsoffire-scroll-grab2-thumb.gif" }, {"Chain Reaction", "examples.ChainReaction", "html/chainreaction-desc.txt", "html/grabs/chainreaction-grab-thumb.gif" }, {"Dingbat Attack JOGL","examples.dingbats.Dingbats", "html/dingbats-desc.txt", "html/grabs/dingbats-grab-thumb.jpg" }, {"Dungeons of Hack","examples.DungeonsOfHack", "html/dungeonsofhack-desc.txt", "html/grabs/dungeonsofhack-grab-thumb.gif" }, {"Dungeons of Hack SE","examples.DungeonsOfHack", "html/dungeonsofhack-desc.txt", "html/grabs/dungeonsofhack-scr-grab-thumb.gif" }, {"Guardian", "examples.guardian.Guardian", "html/guardian-desc.txt", "html/grabs/guardian-grab-thumb.gif" }, {"Insecticide", "examples.Insecticide", "html/insecticide-desc.txt", "html/grabs/insecticide-grab-thumb.gif" }, {"Matrix Miner", "examples.matrixminer.MatrixMiner", "html/matrixminer-desc.txt", "html/grabs/matrixminer-grab-thumb.gif"}, {"Munchies", "examples.Munchies", "html/munchies-desc.txt", "html/grabs/munchies-grab-thumb.gif"}, {"Nebula Alpha", "examples.nebulaalpha.NebulaAlpha", "html/nebulaalpha-desc.txt", "html/grabs/nebulaalpha-grab-thumb.jpg"}, {"Ogrotron", "examples.ogrotron.Ogrotron", "html/ogrotron-desc.txt", "html/grabs/ogrotron-grab-thumb.jpg"}, {"Packet Storm", "examples.packetstorm.PacketStorm", "html/packetstorm-desc.txt", "html/grabs/packetstorm-grab-thumb.gif"}, {"Pub Man", "examples.PubMan", "html/pubman-desc.txt", "html/grabs/pubman-grab-thumb.gif"}, {"Ramjet", "examples.Ramjet", "html/ramjet-desc.txt", "html/grabs/ramjet-grab-thumb.gif"}, {"Space Run", "examples.SpaceRun", "html/spacerun-desc.txt", "html/grabs/spacerun-grab-thumb.gif"}, {"Space Run II", "examples.SpaceRunII", "html/spacerunii-desc.txt", "html/grabs/spacerun-grab-thumb.gif"}, {"Space Run III", "examples.SpaceRunIII", "html/spaceruniii-desc.txt", "html/grabs/spaceruniii-grab-thumb.gif"}, {"Water World", "examples.waterworld.WaterWorld", "html/waterworld-desc.txt", "html/grabs/waterworld-grab-thumb.gif"}, }; static JFrame frame; static JList list; static JTextArea desc_area; static JLabel grab; static JComboBox resolution; public static void main(String [] args) { Dimension scrsize = Toolkit.getDefaultToolkit().getScreenSize(); frame = new JFrame("JGame Launcher"); frame.setSize(630,456); frame.setLocation(scrsize.width/2-630/2,scrsize.height/2-456/2); frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } } ); JPanel descpanel = new JPanel(); descpanel.setBackground(Color.white); descpanel.setLayout(new BoxLayout(descpanel,BoxLayout.Y_AXIS)); JPanel gamepanel = new JPanel(); gamepanel.setLayout(new BoxLayout(gamepanel,BoxLayout.X_AXIS)); JPanel butpanel = new JPanel(); butpanel.setLayout(new BoxLayout(butpanel,BoxLayout.X_AXIS)); JPanel mainpanel = new JPanel(); mainpanel.setLayout(new BoxLayout(mainpanel,BoxLayout.Y_AXIS)); mainpanel.setBackground(new Color(200,200,255)); String [] namelist = new String[gameinfo.length]; for (int i=0; i",true); int linefill=0; boolean in_html=false; while (toker.hasMoreTokens()) { String tok = toker.nextToken(); if (in_html) { if (tok.trim().toLowerCase().equals("br")) { //formatted.append("\n"); //linefill=0; } if (tok.trim().toLowerCase().equals("p")) { //formatted.append("\n\n"); //linefill=0; } //skip if (tok.equals(">")) in_html=false; } else { if (tok.equals("<")) { in_html=true; } else if (tok.equals("\t") || tok.equals("\n") || tok.equals("\r") ) { formatted.append(" "); // skip } else { if (linefill > 0 && linefill + tok.length() > maxlen && !tok.equals(" ")) { formatted.append("\n"); linefill=0; } formatted.append(tok); linefill += tok.length(); } } } return formatted.toString(); } public static String readTextFile(String path) { try { BufferedReader reader = new BufferedReader(new InputStreamReader( Launcher.class.getClassLoader().getResourceAsStream(path))); StringBuffer text = new StringBuffer(); String line; while (true) { line = reader.readLine(); if (line==null) break; text.append(line); text.append("\n"); } reader.close(); return text.toString(); } catch (IOException e) { System.out.println("Error reading file '"+path+"'."); return null; } } }