All pastes #490361 Raw Edit

timothyb89

public java v1 · immutable
·published 2007-05-15 23:41 UTC
rendered paste body
// Looks like: http://img379.imageshack.us/my.php?image=screenshot1zr2.png// Have fun!/* * CreatureLookupDialog.java * * Created on May 15, 2007, 6:13 PM */package games.stendhal.client.gui;import games.stendhal.server.config.CreaturesXMLLoader;import games.stendhal.server.config.ItemsXMLLoader;import games.stendhal.server.entity.creature.impl.DropItem;import games.stendhal.server.rule.defaultruleset.DefaultCreature;import games.stendhal.server.rule.defaultruleset.DefaultItem;import java.util.Collections;import java.util.Comparator;import java.util.List;/** * * @author  zenix */public class CreatureLookupDialog extends javax.swing.JDialog {    //This must be in a void    //can't be in the void as it needs to be used later    CreaturesXMLLoader creatureLoader;    //used later    List<DefaultCreature> creatures;    private void loadCreatures() {        creatureLoader = CreaturesXMLLoader.get();        try {            creatures = creatureLoader.load("data/conf/creatures.xml");        } catch(Exception e) {            System.out.println("Error in loading creatures.xml for CreatureLookupDialog: ");            e.printStackTrace();        }    }    /** Creates new form CreatureLookupDialog */    public CreatureLookupDialog(java.awt.Frame parent, boolean modal) {        loadCreatures();        super(parent, modal);        initComponents();    }        /** This method is called from within the constructor to     * initialize the form.     * WARNING: Do NOT modify this code. The content of this method is     * always regenerated by the Form Editor.     */    // <editor-fold defaultstate="collapsed" desc=" Generated Code ">                              private void initComponents() {        directions_lbl = new javax.swing.JLabel();        creature_list = new javax.swing.JComboBox();        jButton1 = new javax.swing.JButton();        jSeparator1 = new javax.swing.JSeparator();        health_lbl = new javax.swing.JLabel();        atk_lbl = new javax.swing.JLabel();        def_lbl = new javax.swing.JLabel();        exp_lbl = new javax.swing.JLabel();        lvl_lbl = new javax.swing.JLabel();        creature_name_lbl = new javax.swing.JLabel();        getContentPane().setLayout(null);        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);        directions_lbl.setText("Please choose a creature from the list below");        getContentPane().add(directions_lbl);        directions_lbl.setBounds(10, 10, 276, 15);        creature_list.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Loading..." }));        // begin Creatures.xml loader        Collections.sort(creatures, new Comparator<DefaultCreature>() {            public int compare(DefaultCreature o1, DefaultCreature o2) {                return o1.getLevel() - o2.getLevel();            }            @Override            public boolean equals(Object obj) {                return true;            }        });        for(DefaultCreature creature: creatures)        {            String name = creature.getCreatureName();            creature_list.addItem(makeObj(name));        }        // end creatures.xml loader        getContentPane().add(creature_list);        creature_list.setBounds(10, 30, 100, 23);        jButton1.setText("Look it up");        jButton1.addActionListener(new java.awt.event.ActionListener() {            public void actionPerformed(java.awt.event.ActionEvent evt) {                jButton1ActionPerformed(evt);            }        });        getContentPane().add(jButton1);        jButton1.setBounds(120, 30, 100, 25);        getContentPane().add(jSeparator1);        jSeparator1.setBounds(0, 70, 300, 10);        health_lbl.setText("0 health");        getContentPane().add(health_lbl);        health_lbl.setBounds(10, 140, 60, 15);        atk_lbl.setText("Attack: 0");        getContentPane().add(atk_lbl);        atk_lbl.setBounds(10, 100, 60, 15);        def_lbl.setText("Defense: 0");        getContentPane().add(def_lbl);        def_lbl.setBounds(10, 120, 70, 15);        exp_lbl.setText("0 exp given");        getContentPane().add(exp_lbl);        exp_lbl.setBounds(10, 160, 80, 15);        lvl_lbl.setText("Level 0");        getContentPane().add(lvl_lbl);        lvl_lbl.setBounds(10, 80, 50, 15);        creature_name_lbl.setFont(new java.awt.Font("Dialog", 1, 24));        getContentPane().add(creature_name_lbl);        creature_name_lbl.setBounds(130, 90, 140, 40);        pack();    }// </editor-fold>                            private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                                  // index - 1 as the first creature is drop-down index #1 but list index #0        DefaultCreature creature = creatures.get(creature_list.getSelectedIndex()-1);                atk_lbl.setText("Attack: " + String.valueOf(creature.getATK()));        atk_lbl.setSize(atk_lbl.getPreferredSize());                def_lbl.setText("Defense: " + String.valueOf(creature.getDEF()));        def_lbl.setSize(def_lbl.getPreferredSize());                lvl_lbl.setText("Level " + String.valueOf(creature.getLevel()));        lvl_lbl.setSize(lvl_lbl.getPreferredSize());                health_lbl.setText(String.valueOf(creature.getHP()) + " health");        health_lbl.setSize(health_lbl.getPreferredSize());                exp_lbl.setText(String.valueOf(creature.getXP()) + " exp given");        exp_lbl.setSize(exp_lbl.getPreferredSize());                creature_name_lbl.setText(creature.getCreatureName());        creature_name_lbl.setSize(creature_name_lbl.getPreferredSize());    }                                                /**     * @param args the command line arguments     */    public static void main(String args[]) {        java.awt.EventQueue.invokeLater(new Runnable() {            public void run() {                new CreatureLookupDialog(new javax.swing.JFrame(), true).setVisible(true);            }        });    }        /**     * Borrowed this from the Javadocs present on JComboBox     * @param item the string to reverse it into an Object     */    private Object makeObj(final String item)  {        return new Object() { public String toString() { return item; } };    }        // Variables declaration - do not modify                         private javax.swing.JLabel atk_lbl;    private javax.swing.JComboBox creature_list;    private javax.swing.JLabel creature_name_lbl;    private javax.swing.JLabel def_lbl;    private javax.swing.JLabel directions_lbl;    private javax.swing.JLabel exp_lbl;    private javax.swing.JLabel health_lbl;    private javax.swing.JButton jButton1;    private javax.swing.JSeparator jSeparator1;    private javax.swing.JLabel lvl_lbl;    // End of variables declaration                       }