From 74089840efbd107c6f5e97dfc212d916b00037e7 Mon Sep 17 00:00:00 2001 From: iffamies Date: Sun, 21 Apr 2013 20:43:30 +0300 Subject: [PATCH] Removed Pail, stared confused at NetBeans --- pom.xml | 8 - src/main/java/me/iffa/bspace/Space.java | 12 - .../bspace/commands/SpaceHelpCommand.java | 2 +- .../me/iffa/bspace/gui/PailInterface.form | 817 --------------- .../me/iffa/bspace/gui/PailInterface.java | 963 ------------------ .../wgen/planets/PlanetsChunkGenerator.java | 2 +- src/main/resources/plugin.yml | 2 +- target/bSpace-v2.5-dev.jar | Bin 178615 -> 143765 bytes 8 files changed, 3 insertions(+), 1803 deletions(-) delete mode 100644 src/main/java/me/iffa/bspace/gui/PailInterface.form delete mode 100644 src/main/java/me/iffa/bspace/gui/PailInterface.java diff --git a/pom.xml b/pom.xml index a64c7f8e..604c7d04 100644 --- a/pom.xml +++ b/pom.xml @@ -49,14 +49,6 @@ 1.5.1-R0.1-SNAPSHOT jar - - me.escapeNT - Pail - lol - - system - ${project.basedir}/libs/Pail.jar - com.nijikokun Register diff --git a/src/main/java/me/iffa/bspace/Space.java b/src/main/java/me/iffa/bspace/Space.java index 7552d860..ecab59b4 100644 --- a/src/main/java/me/iffa/bspace/Space.java +++ b/src/main/java/me/iffa/bspace/Space.java @@ -7,9 +7,6 @@ import java.util.Map; import java.util.logging.Level; -// Pail Imports -import me.escapeNT.pail.Pail; - // bSpace Imports import me.iffa.bspace.api.SpaceAddon; import me.iffa.bspace.api.schematic.SpaceSchematicHandler; @@ -17,7 +14,6 @@ import me.iffa.bspace.config.SpaceConfig; import me.iffa.bspace.config.SpaceConfigUpdater; import me.iffa.bspace.economy.Economy; -import me.iffa.bspace.gui.PailInterface; import me.iffa.bspace.handlers.AddonHandler; import me.iffa.bspace.handlers.ConfigHandler; import me.iffa.bspace.handlers.LangHandler; @@ -56,7 +52,6 @@ public class Space extends JavaPlugin { // Variables private static String prefix; private static String version; - private static PailInterface pailInterface; private static Map locCache = null; private static Map jumpPressed = new HashMap(); private PluginManager pm; @@ -126,13 +121,6 @@ public void onEnable() { } } - // Initializing the Pail tab. - if (pm.getPlugin("Pail") != null) { - MessageHandler.debugPrint(Level.INFO, "Starting up the Pail tab."); - pailInterface = new PailInterface(this); - ((Pail) pm.getPlugin("Pail")).loadInterfaceComponent("bSpace", pailInterface); - } - // Finishing up enablation. MessageHandler.print(Level.INFO, LangHandler.getUsageStatsMessage()); try { diff --git a/src/main/java/me/iffa/bspace/commands/SpaceHelpCommand.java b/src/main/java/me/iffa/bspace/commands/SpaceHelpCommand.java index 33b4ac2b..86e534b9 100644 --- a/src/main/java/me/iffa/bspace/commands/SpaceHelpCommand.java +++ b/src/main/java/me/iffa/bspace/commands/SpaceHelpCommand.java @@ -37,6 +37,6 @@ public void command() { getSender().sendMessage(ChatColor.GRAY + " /space help - Brings up this help message"); getSender().sendMessage(ChatColor.GRAY + " /space about [credits] - About bSpace"); getSender().sendMessage(ChatColor.GRAY + "If you have questions, please visit " + ChatColor.GOLD + "bit.ly/banspace" + ChatColor.GRAY + "!"); - getSender().sendMessage(ChatColor.GRAY + "...or if you prefer IRC, #iffa or #bananacode (Espernet)"); + //getSender().sendMessage(ChatColor.GRAY + "...or if you prefer IRC, #iffa or #bananacode (Espernet)"); } } diff --git a/src/main/java/me/iffa/bspace/gui/PailInterface.form b/src/main/java/me/iffa/bspace/gui/PailInterface.form deleted file mode 100644 index e35d52d6..00000000 --- a/src/main/java/me/iffa/bspace/gui/PailInterface.form +++ /dev/null @@ -1,817 +0,0 @@ - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/main/java/me/iffa/bspace/gui/PailInterface.java b/src/main/java/me/iffa/bspace/gui/PailInterface.java deleted file mode 100644 index 58ea0f65..00000000 --- a/src/main/java/me/iffa/bspace/gui/PailInterface.java +++ /dev/null @@ -1,963 +0,0 @@ -// Package Declaration -package me.iffa.bspace.gui; - -// bSpace Imports -import me.iffa.bspace.Space; -import me.iffa.bspace.config.SpaceConfig; -import me.iffa.bspace.config.SpaceConfig.ConfigFile; -import static me.iffa.bspace.config.SpaceConfig.Defaults.*; -import me.iffa.bspace.handlers.ConfigHandler; -import me.iffa.bspace.handlers.LangHandler; -import me.iffa.bspace.handlers.MessageHandler; - -// Bukkit Imports -import org.bukkit.configuration.file.YamlConfiguration; - -// Java Imports -import java.awt.Desktop; -import javax.swing.JOptionPane; -import javax.swing.DefaultListModel; -import java.io.IOException; -import java.util.logging.Level; -/** - * Interface for Pail, a Bukkit GUI. - * - * @author iffa - * @author Jack - */ -public class PailInterface extends javax.swing.JPanel { - // Variables - - public static YamlConfiguration spaceConfig = SpaceConfig.getConfig(ConfigFile.CONFIG); - public static YamlConfiguration idConfig = SpaceConfig.getConfig(ConfigFile.IDS); - private static final long serialVersionUID = 1L; - private Space plugin; - - /** - * Constructor for PailInterface. - * - * @param plugin bSpace instance - */ - public PailInterface(Space plugin) { - this.plugin = plugin; - initComponents(); - readConfigs(); - } - - /** - * Reads the configuration files and changes the interface values to represent the configuration values. - */ - private void readConfigs() { - // Updated to latest v2 - SpoutEnabled.setSelected(ConfigHandler.isUsingSpout()); - Clouds.setSelected(!ConfigHandler.getCloudsEnabled()); - Gravity.setSelected(ConfigHandler.getGravityEnabled()); - UseTexture.setSelected(ConfigHandler.getTexturePackEnabled()); - CheckBoxHelmet.setSelected(ConfigHandler.isHelmetGiven()); - CheckBoxSuit.setSelected(ConfigHandler.isSuitGiven()); - ArmorTypeBox.setText(ConfigHandler.getArmorType()); - HelmetBlockIdBox.setText(String.valueOf(ConfigHandler.getHelmet())); - TexturePackURL.setText(ConfigHandler.getSpoutTexturePack()); - SpaceList.setModel(new DefaultListModel()); - if (idConfig.getConfigurationSection("ids") != null) { - for (String id : idConfig.getConfigurationSection("ids").getKeys(false)) { - ((DefaultListModel) SpaceList.getModel()).addElement(id); - MessageHandler.debugPrint(Level.INFO, "Added ID '" + id + "' to list of IDs (Pail)."); - } - } - CurrentVersion.setText(plugin.getDescription().getVersion()); - } - - /** - * Loads the configuration settings for the ID selected in the list. - * Only one safety check is made (to make sure an ID that doesn't exist is not loaded). - * - * @param idname ID name - */ - private void loadSpaceListConfig(String idname) { - if (idConfig.get("ids." + idname) == null) { - MessageHandler.print(Level.WARNING, LangHandler.getIdNotFoundMessage(idname)); - return; - } - // Updated for latest v2 - Settings_IDName.setText(idname); - Settings_Planets.setSelected(idConfig.getBoolean("ids." + idname + ".generation.generateplanets", (Boolean) GENERATE_PLANETS.getDefault())); - Settings_Asteroids.setSelected(idConfig.getBoolean("ids." + idname + "generation.generateasteroids", (Boolean) ASTEROIDS_ENABLED.getDefault())); - Settings_Schematics.setSelected(idConfig.getBoolean("ids." + idname + "generation.generateschematics", (Boolean) GENERATE_SCHEMATICS.getDefault())); - Settings_Satellites.setSelected(idConfig.getBoolean("ids." + idname + "generation.generatesatellites", (Boolean) SATELLITES_ENABLED.getDefault())); - Settings_SpoutBlackholes.setSelected(idConfig.getBoolean("ids." + idname + "generation.spoutblackholes", (Boolean) SPOUT_BLACKHOLES.getDefault())); - Settings_NonSpoutBlackholes.setSelected(idConfig.getBoolean("ids." + idname + "generation.nonspoutblackholes", (Boolean) NONSPOUT_BLACKHOLES.getDefault())); - Settings_GlowstoneChance.setValue(idConfig.getInt("ids." + idname + ".generation.glowstonechance", (Integer) GLOWSTONE_CHANCE.getDefault())); - Settings_StoneChance.setValue(idConfig.getInt("ids." + idname + ".generation.stonechance", (Integer) STONE_CHANCE.getDefault())); - Settings_Night.setSelected(idConfig.getBoolean("ids." + idname + ".alwaysnight", (Boolean) FORCE_NIGHT.getDefault())); - Settings_HelmetRequired.setSelected(idConfig.getBoolean("ids." + idname + ".helmet.required", (Boolean) REQUIRE_HELMET.getDefault())); - Settings_SuitRequired.setSelected(idConfig.getBoolean("ids." + idname + ".suit.required", (Boolean) REQUIRE_SUIT.getDefault())); - Settings_RoomHeight.setValue(idConfig.getInt("ids." + idname + ".breathingarea.maxroomheight", (Integer) ROOM_HEIGHT.getDefault())); - MessageHandler.debugPrint(Level.INFO, "Loaded settings for id '" + idname + "'."); - } - - /** - * Saves the configuration settings for the ID selected in the list. - * Only one safety check is made (to make sure a ID that doesn't exist is not saved). - * - * @param idname ID name - */ - private boolean saveIdConfig(String idname) { - if (idConfig.get("ids." + idname) == null) { - MessageHandler.print(Level.WARNING, LangHandler.getIdNotFoundMessage(idname)); - return false; - } - idConfig.set("ids." + idname + ".generation.generateplanets", Settings_Planets.isSelected()); - idConfig.set("ids." + idname + ".generation.generateasteroids", Settings_Asteroids.isSelected()); - idConfig.set("ids." + idname + ".generation.generatesatellites", Settings_Satellites.isSelected()); - idConfig.set("ids." + idname + ".generation.generateschematics", Settings_Schematics.isSelected()); - idConfig.set("ids." + idname + ".generation.spoutblackholes", Settings_SpoutBlackholes.isSelected()); - idConfig.set("ids." + idname + ".generation.nonspoutblackholes", Settings_SpoutBlackholes.isSelected()); - idConfig.set("ids." + idname + ".generation.glowstonechance", (Integer) Settings_GlowstoneChance.getValue()); - idConfig.set("ids." + idname + ".generation.stonechance", (Integer) Settings_StoneChance.getValue()); - idConfig.set("ids." + idname + ".generation.schematicchance", (Integer) Settings_SchematicChance.getValue()); - idConfig.set("ids." + idname + ".generation.satellitechance", (Integer) Settings_SatelliteChance.getValue()); - idConfig.set("ids." + idname + ".alwaysnight", Settings_Night.isSelected()); - idConfig.set("ids." + idname + ".suit.required", Settings_SuitRequired.isSelected()); - idConfig.set("ids." + idname + ".helmet.required", Settings_HelmetRequired.isSelected()); - try { - idConfig.save(SpaceConfig.getConfigFile(ConfigFile.IDS)); - } catch (IOException ex) { - MessageHandler.print(Level.WARNING, ex.getMessage()); - return false; - } - MessageHandler.debugPrint(Level.INFO, "Saved settings for id '" + idname + "'."); - return true; - } - - /** - * Adds a ID to the list in the GUI. - * - * @param idname ID name - */ - public void addSpaceList(String idname) { - ((DefaultListModel) SpaceList.getModel()).addElement(idname); - } - - /** 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. - */ - @SuppressWarnings("unchecked") - // //GEN-BEGIN:initComponents - private void initComponents() { - - GlobalSettings = new javax.swing.JPanel(); - CheckBoxHelmet = new javax.swing.JCheckBox(); - CheckBoxSuit = new javax.swing.JCheckBox(); - jLabel5 = new javax.swing.JLabel(); - HelmetBlockIdBox = new javax.swing.JTextField(); - jLabel4 = new javax.swing.JLabel(); - ArmorTypeBox = new javax.swing.JTextField(); - SpoutEnabled = new javax.swing.JCheckBox(); - ResetButton = new javax.swing.JButton(); - SaveButton = new javax.swing.JButton(); - Clouds = new javax.swing.JCheckBox(); - Gravity = new javax.swing.JCheckBox(); - UseTexture = new javax.swing.JCheckBox(); - TexturePackURL = new javax.swing.JTextField(); - ids = new javax.swing.JPanel(); - jScrollPane1 = new javax.swing.JScrollPane(); - SpaceList = new javax.swing.JList(); - createIdButton = new javax.swing.JButton(); - deleteIdButton = new javax.swing.JButton(); - jLabel1 = new javax.swing.JLabel(); - newID = new javax.swing.JTextField(); - Settings = new javax.swing.JPanel(); - Settings_Save = new javax.swing.JButton(); - Settings_Reset = new javax.swing.JButton(); - jLabel2 = new javax.swing.JLabel(); - Settings_IDName = new javax.swing.JLabel(); - Settings_Planets = new javax.swing.JCheckBox(); - Settings_Asteroids = new javax.swing.JCheckBox(); - jLabel3 = new javax.swing.JLabel(); - Settings_StoneChance = new javax.swing.JSpinner(); - jLabel6 = new javax.swing.JLabel(); - Settings_GlowstoneChance = new javax.swing.JSpinner(); - Settings_HelmetRequired = new javax.swing.JCheckBox(); - Settings_SuitRequired = new javax.swing.JCheckBox(); - jLabel7 = new javax.swing.JLabel(); - Settings_RoomHeight = new javax.swing.JSpinner(); - Settings_Night = new javax.swing.JCheckBox(); - jLabel10 = new javax.swing.JLabel(); - Settings_SchematicChance = new javax.swing.JSpinner(); - jLabel11 = new javax.swing.JLabel(); - Settings_SatelliteChance = new javax.swing.JSpinner(); - Settings_Satellites = new javax.swing.JCheckBox(); - Settings_Schematics = new javax.swing.JCheckBox(); - Settings_SpoutBlackholes = new javax.swing.JCheckBox(); - Settings_NonSpoutBlackholes = new javax.swing.JCheckBox(); - jLabel8 = new javax.swing.JLabel(); - jLabel9 = new javax.swing.JLabel(); - CurrentVersion = new javax.swing.JLabel(); - jLabel14 = new javax.swing.JLabel(); - - setFont(new java.awt.Font("Arial", 0, 11)); - setInheritsPopupMenu(true); - setMaximumSize(new java.awt.Dimension(850, 450)); - setMinimumSize(new java.awt.Dimension(850, 450)); - setPreferredSize(new java.awt.Dimension(850, 450)); - setRequestFocusEnabled(false); - - GlobalSettings.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Global Settings", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 0, 14))); // NOI18N - GlobalSettings.setToolTipText("Global settings. These affect each and every spaceworld."); - - CheckBoxHelmet.setText("Give helmet"); - CheckBoxHelmet.setToolTipText("Selected if a spacehelmet should be given when going to a space world."); - CheckBoxHelmet.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - CheckBoxHelmetActionPerformed(evt); - } - }); - - CheckBoxSuit.setText("Give suit"); - CheckBoxSuit.setToolTipText("Selected if a spacehelmet should be given when going to a space world."); - CheckBoxSuit.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - CheckBoxSuitActionPerformed(evt); - } - }); - - jLabel5.setFont(new java.awt.Font("Tahoma", 0, 10)); - jLabel5.setText("Helmet block id:"); - jLabel5.setToolTipText("The block id that will be the helmet."); - - HelmetBlockIdBox.setText("86"); - HelmetBlockIdBox.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - HelmetBlockIdBoxActionPerformed(evt); - } - }); - - jLabel4.setFont(new java.awt.Font("Tahoma", 0, 10)); - jLabel4.setText("Suit armortype:"); - - ArmorTypeBox.setText("iron"); - ArmorTypeBox.setToolTipText("The spacesuit armortype. Can be diamond, chainmail, gold, iron or leather."); - ArmorTypeBox.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - ArmorTypeBoxActionPerformed(evt); - } - }); - - SpoutEnabled.setSelected(true); - SpoutEnabled.setText("Use Spout features:"); - SpoutEnabled.setToolTipText("Checked if you want to enable Spout features."); - SpoutEnabled.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - SpoutEnabledActionPerformed(evt); - } - }); - - ResetButton.setText("Revert"); - ResetButton.setToolTipText("Not happy with the changes? Just press this button and all your changes will be reset!"); - ResetButton.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - ResetButtonActionPerformed(evt); - } - }); - - SaveButton.setText("Save"); - SaveButton.setToolTipText("Saves the changes and reloads the server for changes to take effect."); - SaveButton.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - SaveButtonActionPerformed(evt); - } - }); - - Clouds.setSelected(true); - Clouds.setText("Remove clouds"); - Clouds.setToolTipText("Checked if you want clouds removed."); - Clouds.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - CloudsActionPerformed(evt); - } - }); - - Gravity.setSelected(true); - Gravity.setText("Space-ish gravity"); - Gravity.setToolTipText("Checked if you want space-ish gravity."); - Gravity.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - GravityActionPerformed(evt); - } - }); - - UseTexture.setSelected(true); - UseTexture.setText("Use space texture pack"); - UseTexture.setToolTipText("Checked if you want to use a space-ish texture pack."); - UseTexture.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - UseTextureActionPerformed(evt); - } - }); - - TexturePackURL.setText("https://github.com/downloads/iffa/bSpace/spacetexture.zip"); - TexturePackURL.setToolTipText("The texture pack to use if space texture pack is enabled. Must be a zip."); - - javax.swing.GroupLayout GlobalSettingsLayout = new javax.swing.GroupLayout(GlobalSettings); - GlobalSettings.setLayout(GlobalSettingsLayout); - GlobalSettingsLayout.setHorizontalGroup( - GlobalSettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(GlobalSettingsLayout.createSequentialGroup() - .addContainerGap() - .addGroup(GlobalSettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(GlobalSettingsLayout.createSequentialGroup() - .addGroup(GlobalSettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(GlobalSettingsLayout.createSequentialGroup() - .addComponent(CheckBoxHelmet, javax.swing.GroupLayout.DEFAULT_SIZE, 167, Short.MAX_VALUE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 81, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(HelmetBlockIdBox, javax.swing.GroupLayout.PREFERRED_SIZE, 31, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addGroup(GlobalSettingsLayout.createSequentialGroup() - .addComponent(CheckBoxSuit) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 74, Short.MAX_VALUE) - .addComponent(jLabel4) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(ArmorTypeBox, javax.swing.GroupLayout.PREFERRED_SIZE, 51, javax.swing.GroupLayout.PREFERRED_SIZE))) - .addGap(24, 24, 24) - .addGroup(GlobalSettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) - .addComponent(ResetButton, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(SaveButton, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))) - .addGroup(GlobalSettingsLayout.createSequentialGroup() - .addGroup(GlobalSettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(SpoutEnabled) - .addGroup(GlobalSettingsLayout.createSequentialGroup() - .addGap(21, 21, 21) - .addGroup(GlobalSettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(Clouds) - .addGroup(GlobalSettingsLayout.createSequentialGroup() - .addGroup(GlobalSettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(UseTexture) - .addComponent(Gravity)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(TexturePackURL, javax.swing.GroupLayout.PREFERRED_SIZE, 129, javax.swing.GroupLayout.PREFERRED_SIZE))))) - .addGap(64, 64, 64))) - .addContainerGap()) - ); - GlobalSettingsLayout.setVerticalGroup( - GlobalSettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(GlobalSettingsLayout.createSequentialGroup() - .addGroup(GlobalSettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(CheckBoxHelmet, javax.swing.GroupLayout.PREFERRED_SIZE, 13, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel5) - .addComponent(HelmetBlockIdBox, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(ResetButton)) - .addGroup(GlobalSettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(GlobalSettingsLayout.createSequentialGroup() - .addGap(2, 2, 2) - .addGroup(GlobalSettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(CheckBoxSuit, javax.swing.GroupLayout.PREFERRED_SIZE, 15, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(ArmorTypeBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel4)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(SpoutEnabled, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addGroup(GlobalSettingsLayout.createSequentialGroup() - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(SaveButton))) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addGroup(GlobalSettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(UseTexture, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(TexturePackURL, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(Clouds, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(Gravity, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap(20, Short.MAX_VALUE)) - ); - - ids.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "IDs", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 0, 14))); // NOI18N - ids.setToolTipText("Panel with buttons to create and delete IDs."); - ids.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR)); - - SpaceList.setFont(new java.awt.Font("Arial", 0, 12)); - SpaceList.setModel(new javax.swing.AbstractListModel() { - String[] strings = { "No user IDs" }; - public int getSize() { return strings.length; } - public Object getElementAt(int i) { return strings[i]; } - }); - SpaceList.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION); - SpaceList.setToolTipText("All IDs. Selecting an ID on the list opens its settings on the right."); - SpaceList.addListSelectionListener(new javax.swing.event.ListSelectionListener() { - public void valueChanged(javax.swing.event.ListSelectionEvent evt) { - SpaceListValueChanged(evt); - } - }); - SpaceList.addFocusListener(new java.awt.event.FocusAdapter() { - public void focusGained(java.awt.event.FocusEvent evt) { - SpaceListFocusGained(evt); - } - public void focusLost(java.awt.event.FocusEvent evt) { - SpaceListFocusLost(evt); - } - }); - jScrollPane1.setViewportView(SpaceList); - - createIdButton.setFont(new java.awt.Font("Arial", 0, 11)); - createIdButton.setText("Create"); - createIdButton.setToolTipText("Creates a new ID with the name on the box above."); - createIdButton.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - createIdButtonActionPerformed(evt); - } - }); - - deleteIdButton.setFont(new java.awt.Font("Arial", 0, 11)); - deleteIdButton.setText("Delete"); - deleteIdButton.setToolTipText("Select an ID from the list and click this button to delete the ID."); - deleteIdButton.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - deleteIdButtonActionPerformed(evt); - } - }); - - newID.setText("Name of ID"); - newID.setToolTipText("Specify a name for the ID. Must not be an ID already, and must not be empty or contain spaces."); - - javax.swing.GroupLayout idsLayout = new javax.swing.GroupLayout(ids); - ids.setLayout(idsLayout); - idsLayout.setHorizontalGroup( - idsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(idsLayout.createSequentialGroup() - .addContainerGap() - .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 159, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(idsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(idsLayout.createSequentialGroup() - .addComponent(newID, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(0, 0, Short.MAX_VALUE)) - .addGroup(idsLayout.createSequentialGroup() - .addGroup(idsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) - .addComponent(deleteIdButton, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(createIdButton, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(jLabel1)))) - ); - idsLayout.setVerticalGroup( - idsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(idsLayout.createSequentialGroup() - .addComponent(newID, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(idsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(idsLayout.createSequentialGroup() - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 53, Short.MAX_VALUE) - .addComponent(jLabel1)) - .addGroup(idsLayout.createSequentialGroup() - .addComponent(createIdButton) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(deleteIdButton)))) - .addGroup(idsLayout.createSequentialGroup() - .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 78, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(0, 4, Short.MAX_VALUE)) - ); - - Settings.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "ID Settings", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 0, 14))); // NOI18N - Settings.setToolTipText("Settings for the currently selected ID in the list."); - Settings.setMaximumSize(new java.awt.Dimension(200, 32767)); - Settings.setPreferredSize(new java.awt.Dimension(200, 250)); - - Settings_Save.setText("Save"); - Settings_Save.setToolTipText("Saves the changes made to the ID's settings."); - Settings_Save.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - Settings_SaveActionPerformed(evt); - } - }); - - Settings_Reset.setText("Revert"); - Settings_Reset.setToolTipText("Resets the changes made to the ID's settings."); - Settings_Reset.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - Settings_ResetActionPerformed(evt); - } - }); - - jLabel2.setFont(new java.awt.Font("Tahoma", 0, 12)); - jLabel2.setText("Currently editing:"); - - Settings_IDName.setFont(new java.awt.Font("Tahoma", 1, 12)); - Settings_IDName.setText("None"); - - Settings_Planets.setSelected(true); - Settings_Planets.setText("Generate planets"); - Settings_Planets.setToolTipText("Checked if planets are generated."); - Settings_Planets.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - Settings_PlanetsActionPerformed(evt); - } - }); - - Settings_Asteroids.setSelected(true); - Settings_Asteroids.setText("Generate asteroids"); - Settings_Asteroids.setToolTipText("Asteroids are small patches of glowstone and stone. The frequency can be changed."); - - jLabel3.setText("Stone-asteroid chance:"); - - Settings_StoneChance.setModel(new javax.swing.SpinnerNumberModel(3, 1, 200, 1)); - Settings_StoneChance.setToolTipText("The stone-asteroid spawning chance. From 1 to 200."); - - jLabel6.setText("Glowstone-asteroid chance:"); - - Settings_GlowstoneChance.setModel(new javax.swing.SpinnerNumberModel(1, 1, 200, 1)); - Settings_GlowstoneChance.setToolTipText("The glowstone-asteroid spawning chance. From 1 to 200."); - - Settings_HelmetRequired.setText("Helmet required"); - Settings_HelmetRequired.setToolTipText("Checked if helmets are required in a spaceworld to survive."); - Settings_HelmetRequired.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - Settings_HelmetRequiredActionPerformed(evt); - } - }); - - Settings_SuitRequired.setText("Suit required"); - Settings_SuitRequired.setToolTipText("Checked if suits are required in a spaceworld to survive."); - - jLabel7.setText("Maximum room height:"); - - Settings_RoomHeight.setModel(new javax.swing.SpinnerNumberModel(5, 1, 64, 1)); - Settings_RoomHeight.setToolTipText("The maximum height of a room where you can breathe in. In a zone like this, no helmets or suits are required."); - - Settings_Night.setSelected(true); - Settings_Night.setText("Always night"); - Settings_Night.setToolTipText("Checked if it should always be night in the spaceworld."); - Settings_Night.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - Settings_NightActionPerformed(evt); - } - }); - - jLabel10.setText("Schematic chance:"); - - Settings_SchematicChance.setModel(new javax.swing.SpinnerNumberModel(1, 1, 200, 1)); - Settings_SchematicChance.setToolTipText("Chance of schematics generation. From 1 to 200."); - Settings_SchematicChance.setRequestFocusEnabled(false); - - jLabel11.setText("Satellite chance:"); - - Settings_SatelliteChance.setModel(new javax.swing.SpinnerNumberModel(1, 1, 200, 1)); - Settings_SatelliteChance.setToolTipText("Chance of satellite generation. From 1 to 1337."); - Settings_SatelliteChance.setRequestFocusEnabled(false); - - Settings_Satellites.setSelected(true); - Settings_Satellites.setText("Generate satellites"); - Settings_Satellites.setToolTipText("Satellites are \"satellites\" in space. The frequency can be changed."); - - Settings_Schematics.setSelected(true); - Settings_Schematics.setText("Generate schematics"); - Settings_Schematics.setToolTipText("Schematics are custom .schematic-files placed in plugins/bSpace/schematics. The frequency can be changed."); - - Settings_SpoutBlackholes.setSelected(true); - Settings_SpoutBlackholes.setText("Generate black holes with spout"); - Settings_SpoutBlackholes.setToolTipText("Black holes are custom blocks using Spout (and Spoutcraft). They will suck entities and kill them. Deadly!"); - - Settings_NonSpoutBlackholes.setSelected(true); - Settings_NonSpoutBlackholes.setText("Generate black holes without spout"); - Settings_NonSpoutBlackholes.setToolTipText("Black holes are custom blocks using Spout (and Spoutcraft). They will suck entities and kill them. Deadly!"); - - javax.swing.GroupLayout SettingsLayout = new javax.swing.GroupLayout(Settings); - Settings.setLayout(SettingsLayout); - SettingsLayout.setHorizontalGroup( - SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(SettingsLayout.createSequentialGroup() - .addContainerGap() - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(SettingsLayout.createSequentialGroup() - .addComponent(Settings_NonSpoutBlackholes) - .addContainerGap()) - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(SettingsLayout.createSequentialGroup() - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(Settings_Planets) - .addComponent(Settings_Asteroids) - .addComponent(Settings_Satellites) - .addComponent(Settings_Schematics) - .addComponent(Settings_SpoutBlackholes) - .addGroup(SettingsLayout.createSequentialGroup() - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) - .addComponent(Settings_Save, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(Settings_Reset, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) - .addComponent(jLabel2) - .addComponent(Settings_IDName, javax.swing.GroupLayout.PREFERRED_SIZE, 76, javax.swing.GroupLayout.PREFERRED_SIZE)))) - .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) - .addGroup(SettingsLayout.createSequentialGroup() - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(SettingsLayout.createSequentialGroup() - .addComponent(Settings_Night) - .addGap(0, 132, Short.MAX_VALUE)) - .addGroup(SettingsLayout.createSequentialGroup() - .addComponent(jLabel3) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 44, Short.MAX_VALUE) - .addComponent(Settings_StoneChance, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) - .addGroup(javax.swing.GroupLayout.Alignment.LEADING, SettingsLayout.createSequentialGroup() - .addComponent(jLabel10) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(Settings_SchematicChance, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addGroup(javax.swing.GroupLayout.Alignment.LEADING, SettingsLayout.createSequentialGroup() - .addComponent(jLabel6) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(Settings_GlowstoneChance, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addGroup(SettingsLayout.createSequentialGroup() - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(jLabel11) - .addComponent(jLabel7)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) - .addComponent(Settings_SatelliteChance) - .addComponent(Settings_RoomHeight, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))) - .addComponent(Settings_SuitRequired) - .addComponent(Settings_HelmetRequired)) - .addGap(4, 4, 4))))) - ); - SettingsLayout.setVerticalGroup( - SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(SettingsLayout.createSequentialGroup() - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(Settings_Save) - .addComponent(jLabel2)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(SettingsLayout.createSequentialGroup() - .addComponent(Settings_Reset) - .addGap(8, 8, 8)) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, SettingsLayout.createSequentialGroup() - .addComponent(Settings_IDName) - .addGap(18, 18, 18))) - .addComponent(Settings_Planets, javax.swing.GroupLayout.PREFERRED_SIZE, 13, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(Settings_Asteroids, javax.swing.GroupLayout.PREFERRED_SIZE, 15, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(Settings_Satellites, javax.swing.GroupLayout.PREFERRED_SIZE, 15, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(Settings_Schematics, javax.swing.GroupLayout.PREFERRED_SIZE, 15, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(Settings_SpoutBlackholes, javax.swing.GroupLayout.PREFERRED_SIZE, 15, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(2, 2, 2) - .addComponent(Settings_NonSpoutBlackholes, javax.swing.GroupLayout.PREFERRED_SIZE, 15, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(1, 1, 1) - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(jLabel3) - .addComponent(Settings_StoneChance, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(jLabel6) - .addComponent(Settings_GlowstoneChance, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addGap(3, 3, 3) - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(jLabel10) - .addComponent(Settings_SchematicChance, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(jLabel11) - .addComponent(Settings_SatelliteChance, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) - .addComponent(jLabel7) - .addComponent(Settings_RoomHeight, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(Settings_SuitRequired, javax.swing.GroupLayout.PREFERRED_SIZE, 15, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(Settings_HelmetRequired, javax.swing.GroupLayout.PREFERRED_SIZE, 15, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(Settings_Night, javax.swing.GroupLayout.PREFERRED_SIZE, 15, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap(21, Short.MAX_VALUE)) - ); - - jLabel8.setIcon(new javax.swing.ImageIcon(getClass().getResource("/bspace.png"))); // NOI18N - jLabel8.setText(" "); - jLabel8.setOpaque(true); - jLabel8.addMouseListener(new java.awt.event.MouseAdapter() { - public void mouseClicked(java.awt.event.MouseEvent evt) { - jLabel8MouseClicked(evt); - } - }); - - jLabel9.setFont(new java.awt.Font("Tahoma", 0, 14)); - jLabel9.setText("Current bSpace version:"); - - CurrentVersion.setFont(new java.awt.Font("Tahoma", 1, 14)); - CurrentVersion.setText("Unknown"); - - jLabel14.setText("TODO: Economy settings"); - - javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); - this.setLayout(layout); - layout.setHorizontalGroup( - layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(layout.createSequentialGroup() - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(layout.createSequentialGroup() - .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(GlobalSettings, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(ids, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) - .addGroup(layout.createSequentialGroup() - .addGap(28, 28, 28) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(layout.createSequentialGroup() - .addComponent(jLabel9) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(CurrentVersion)) - .addComponent(jLabel8)) - .addGap(0, 131, Short.MAX_VALUE))) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(Settings, javax.swing.GroupLayout.PREFERRED_SIZE, 241, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(jLabel14) - .addGap(175, 175, 175)) - ); - layout.setVerticalGroup( - layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(layout.createSequentialGroup() - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(layout.createSequentialGroup() - .addContainerGap() - .addComponent(GlobalSettings, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(18, 18, 18) - .addComponent(ids, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(jLabel8) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(jLabel9) - .addComponent(CurrentVersion))) - .addGroup(layout.createSequentialGroup() - .addGap(29, 29, 29) - .addComponent(jLabel14)) - .addGroup(layout.createSequentialGroup() - .addGap(19, 19, 19) - .addComponent(Settings, javax.swing.GroupLayout.PREFERRED_SIZE, 400, javax.swing.GroupLayout.PREFERRED_SIZE))) - .addContainerGap(15, Short.MAX_VALUE)) - ); - - ids.getAccessibleContext().setAccessibleName("Ids"); - }// //GEN-END:initComponents - - private void CheckBoxHelmetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_CheckBoxHelmetActionPerformed - }//GEN-LAST:event_CheckBoxHelmetActionPerformed - - private void CheckBoxSuitActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_CheckBoxSuitActionPerformed - }//GEN-LAST:event_CheckBoxSuitActionPerformed - - private void ArmorTypeBoxActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_ArmorTypeBoxActionPerformed - }//GEN-LAST:event_ArmorTypeBoxActionPerformed - - private void HelmetBlockIdBoxActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_HelmetBlockIdBoxActionPerformed - }//GEN-LAST:event_HelmetBlockIdBoxActionPerformed - - private void SaveButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_SaveButtonActionPerformed - // Updated for latest v2 - spaceConfig.set("global.givesuit", CheckBoxSuit.isSelected()); - spaceConfig.set("global.givehelmet", CheckBoxHelmet.isSelected()); - spaceConfig.set("global.armortype", ArmorTypeBox.getText()); - spaceConfig.set("global.blockid", Integer.parseInt(HelmetBlockIdBox.getText())); - spaceConfig.set("global.spout.use", SpoutEnabled.isSelected()); - spaceConfig.set("global.spout.gravity", Gravity.isSelected()); - spaceConfig.set("global.spout.usetp", UseTexture.isSelected()); - spaceConfig.set("global.spout.texturepack", TexturePackURL.getText()); - spaceConfig.set("global.spout.clouds", !Clouds.isSelected()); - try { - spaceConfig.save(SpaceConfig.getConfigFile(ConfigFile.CONFIG)); - } catch (IOException ex) { - MessageHandler.print(Level.WARNING, ex.getMessage()); - } - JOptionPane.showMessageDialog(this, "Your general settings have been saved!", "Settings saved!", JOptionPane.INFORMATION_MESSAGE); - }//GEN-LAST:event_SaveButtonActionPerformed - - private void ResetButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_ResetButtonActionPerformed - JOptionPane.showMessageDialog(this, "Your changes have been reset!", "Changes reset!", JOptionPane.INFORMATION_MESSAGE); - readConfigs(); - }//GEN-LAST:event_ResetButtonActionPerformed - -private void createIdButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_createIdButtonActionPerformed - String idname = newID.getText().trim(); - if (idname.equalsIgnoreCase("")) { - JOptionPane.showMessageDialog(this, "The ID cannot be empty!", "Invalid ID", JOptionPane.WARNING_MESSAGE); - return; - } - if (idConfig.getConfigurationSection("ids") != null && idConfig.getConfigurationSection("ids").contains(idname)) { - JOptionPane.showMessageDialog(this, "An ID with the given name already exists!", "Invalid ID", JOptionPane.WARNING_MESSAGE); - return; - } - if (idname.contains(" ")) { - JOptionPane.showMessageDialog(this, "The ID cannot contain spaces! Replace spaces with underscores.", "Invalid ID", JOptionPane.WARNING_MESSAGE); - return; - } - // Updated to latest v2 - idConfig.set("ids." + idname + ".generation.generateplanets", GENERATE_PLANETS.getDefault()); - idConfig.set("ids." + idname + ".generation.generateasteroids", ASTEROIDS_ENABLED.getDefault()); - idConfig.set("ids." + idname + ".generation.generateschematics", GENERATE_SCHEMATICS.getDefault()); - idConfig.set("ids." + idname + ".generation.generatesatellites", SATELLITES_ENABLED.getDefault()); - idConfig.set("ids." + idname + ".generation.spoutblackholes", SPOUT_BLACKHOLES.getDefault()); - idConfig.set("ids." + idname + ".generation.nonblackholes", SPOUT_BLACKHOLES.getDefault()); - idConfig.set("ids." + idname + ".generation.glowstonechance", GLOWSTONE_CHANCE.getDefault()); - idConfig.set("ids." + idname + ".generation.stonechance", STONE_CHANCE.getDefault()); - idConfig.set("ids." + idname + ".generation.satellitechance", SATELLITE_CHANCE.getDefault()); - idConfig.set("ids." + idname + ".generation.schematicchance", SCHEMATIC_CHANCE.getDefault()); - idConfig.set("ids." + idname + ".weather", ALLOW_WEATHER.getDefault()); - idConfig.set("ids." + idname + ".hostilemobs", HOSTILE_MOBS_ALLOWED.getDefault()); - idConfig.set("ids." + idname + ".neutralmobs", NEUTRAL_MOBS_ALLOWED.getDefault()); - idConfig.set("ids." + idname + ".alwaysnight", FORCE_NIGHT); - idConfig.set("ids." + idname + ".nethermode", false); - idConfig.set("ids." + idname + ".suit.required", REQUIRE_SUIT.getDefault()); - idConfig.set("ids." + idname + ".helmet.required", REQUIRE_HELMET.getDefault()); - try { - idConfig.save(SpaceConfig.getConfigFile(ConfigFile.IDS)); - } catch (IOException ex) { - MessageHandler.print(Level.WARNING, ex.getMessage()); - } - ((DefaultListModel) SpaceList.getModel()).addElement(idname); - MessageHandler.debugPrint(Level.INFO, "Created ID '" + idname + "' through Pail."); - JOptionPane.showMessageDialog(this, "A new ID called '" + idname + "' has been created! You can change the settings through this tab.", "ID created", JOptionPane.INFORMATION_MESSAGE); - newID.setText("ID"); -}//GEN-LAST:event_createIdButtonActionPerformed - -private void deleteIdButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_deleteIdButtonActionPerformed - - if (SpaceList.getSelectedIndex() == -1) { - JOptionPane.showMessageDialog(this, "You need to choose an ID to delete from the list!", "Select an ID", JOptionPane.WARNING_MESSAGE); - return; - } - String s = (String) SpaceList.getModel().getElementAt(SpaceList.getSelectedIndex()); - int n = JOptionPane.showConfirmDialog( - this, - "Are you sure? :(", - "Delete an ID", - JOptionPane.YES_NO_OPTION); - if (n == JOptionPane.YES_OPTION) { - idConfig.set("ids." + s, null); - try { - idConfig.save(SpaceConfig.getConfigFile(ConfigFile.IDS)); - } catch (IOException ex) { - MessageHandler.print(Level.WARNING, ex.getMessage()); - } - ((DefaultListModel) SpaceList.getModel()).remove(SpaceList.getSelectedIndex()); - Settings_IDName.setText("None"); - JOptionPane.showMessageDialog(this, "The ID was deleted successfully!", "ID deleted", JOptionPane.INFORMATION_MESSAGE); - } -}//GEN-LAST:event_deleteIdButtonActionPerformed - -private void Settings_ResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_Settings_ResetActionPerformed - if (SpaceList.getSelectedIndex() != -1) { - String idname = (String) SpaceList.getModel().getElementAt(SpaceList.getSelectedIndex()); - loadSpaceListConfig(idname); - JOptionPane.showMessageDialog(this, "Your changes have been reset!", "Changes reset!", JOptionPane.INFORMATION_MESSAGE); - } -}//GEN-LAST:event_Settings_ResetActionPerformed - -private void Settings_SaveActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_Settings_SaveActionPerformed - if (SpaceList.getSelectedIndex() != -1) { - String idname = (String) SpaceList.getModel().getElementAt(SpaceList.getSelectedIndex()); - boolean success = saveIdConfig(idname); - if (success) { - JOptionPane.showMessageDialog(this, "The ID '" + idname + "' has been saved. Please note that most changes take effect after reloading the server.", "ID saved!", JOptionPane.INFORMATION_MESSAGE); - } else { - JOptionPane.showMessageDialog(this, "There was a problem saving '" + idname + "! Please try again.", "Problem while saving ID!", JOptionPane.INFORMATION_MESSAGE); - } - } -}//GEN-LAST:event_Settings_SaveActionPerformed - -private void Settings_PlanetsActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_Settings_PlanetsActionPerformed -}//GEN-LAST:event_Settings_PlanetsActionPerformed - -private void SpoutEnabledActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_SpoutEnabledActionPerformed -}//GEN-LAST:event_SpoutEnabledActionPerformed - -private void SpaceListFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_SpaceListFocusLost -}//GEN-LAST:event_SpaceListFocusLost - -private void SpaceListFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_SpaceListFocusGained -}//GEN-LAST:event_SpaceListFocusGained - -private void SpaceListValueChanged(javax.swing.event.ListSelectionEvent evt) {//GEN-FIRST:event_SpaceListValueChanged - if (SpaceList.getSelectedIndex() != -1) { - String idname = (String) SpaceList.getModel().getElementAt(SpaceList.getSelectedIndex()); - loadSpaceListConfig(idname); - } -}//GEN-LAST:event_SpaceListValueChanged - -private void jLabel8MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel8MouseClicked - try { - Desktop.getDesktop().browse(java.net.URI.create("http://forums.bukkit.org/threads/32546/")); - } catch (IOException ex) { - MessageHandler.print(Level.WARNING, "Something went wrong while opening a page on your web browser!"); - } -}//GEN-LAST:event_jLabel8MouseClicked - - private void CloudsActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_CloudsActionPerformed - }//GEN-LAST:event_CloudsActionPerformed - - private void GravityActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_GravityActionPerformed - }//GEN-LAST:event_GravityActionPerformed - - private void UseTextureActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_UseTextureActionPerformed - }//GEN-LAST:event_UseTextureActionPerformed - - private void Settings_HelmetRequiredActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_Settings_HelmetRequiredActionPerformed - }//GEN-LAST:event_Settings_HelmetRequiredActionPerformed - - private void Settings_NightActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_Settings_NightActionPerformed - - }//GEN-LAST:event_Settings_NightActionPerformed - - // Variables declaration - do not modify//GEN-BEGIN:variables - private javax.swing.JTextField ArmorTypeBox; - private javax.swing.JCheckBox CheckBoxHelmet; - private javax.swing.JCheckBox CheckBoxSuit; - private javax.swing.JCheckBox Clouds; - private javax.swing.JLabel CurrentVersion; - private javax.swing.JPanel GlobalSettings; - private javax.swing.JCheckBox Gravity; - private javax.swing.JTextField HelmetBlockIdBox; - private javax.swing.JButton ResetButton; - private javax.swing.JButton SaveButton; - private javax.swing.JPanel Settings; - private javax.swing.JCheckBox Settings_Asteroids; - private javax.swing.JSpinner Settings_GlowstoneChance; - private javax.swing.JCheckBox Settings_HelmetRequired; - private javax.swing.JLabel Settings_IDName; - private javax.swing.JCheckBox Settings_Night; - private javax.swing.JCheckBox Settings_NonSpoutBlackholes; - private javax.swing.JCheckBox Settings_Planets; - private javax.swing.JButton Settings_Reset; - private javax.swing.JSpinner Settings_RoomHeight; - private javax.swing.JSpinner Settings_SatelliteChance; - private javax.swing.JCheckBox Settings_Satellites; - private javax.swing.JButton Settings_Save; - private javax.swing.JSpinner Settings_SchematicChance; - private javax.swing.JCheckBox Settings_Schematics; - private javax.swing.JCheckBox Settings_SpoutBlackholes; - private javax.swing.JSpinner Settings_StoneChance; - private javax.swing.JCheckBox Settings_SuitRequired; - private javax.swing.JList SpaceList; - private javax.swing.JCheckBox SpoutEnabled; - private javax.swing.JTextField TexturePackURL; - private javax.swing.JCheckBox UseTexture; - private javax.swing.JButton createIdButton; - private javax.swing.JButton deleteIdButton; - private javax.swing.JPanel ids; - private javax.swing.JLabel jLabel1; - private javax.swing.JLabel jLabel10; - private javax.swing.JLabel jLabel11; - private javax.swing.JLabel jLabel14; - private javax.swing.JLabel jLabel2; - private javax.swing.JLabel jLabel3; - private javax.swing.JLabel jLabel4; - private javax.swing.JLabel jLabel5; - private javax.swing.JLabel jLabel6; - private javax.swing.JLabel jLabel7; - private javax.swing.JLabel jLabel8; - private javax.swing.JLabel jLabel9; - private javax.swing.JScrollPane jScrollPane1; - private javax.swing.JTextField newID; - // End of variables declaration//GEN-END:variables -} diff --git a/src/main/java/me/iffa/bspace/wgen/planets/PlanetsChunkGenerator.java b/src/main/java/me/iffa/bspace/wgen/planets/PlanetsChunkGenerator.java index 8e3b88ea..ca0126e4 100644 --- a/src/main/java/me/iffa/bspace/wgen/planets/PlanetsChunkGenerator.java +++ b/src/main/java/me/iffa/bspace/wgen/planets/PlanetsChunkGenerator.java @@ -4,7 +4,6 @@ // Java Imports import java.io.File; import java.util.ArrayList; -import java.util.Arrays; import java.util.Collections; import java.util.HashMap; import java.util.HashSet; @@ -141,6 +140,7 @@ public byte[][] generateBlockSections(World world, java.util.Random random, int } } else { ArrayList list = new ArrayList(curPl.coreBlkIds); + // this confuses me too much. this part is setting core blocks, right? how is it "random"? MaterialData get = list.get(random.nextInt(list.size())); setBlock(retVal, chunkX, worldY, chunkZ, (byte) get.getItemTypeId()); if (get.getData() != 0) { //Has data diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index f9456713..3b00e8ce 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -9,7 +9,7 @@ jenkins-url: http://ci.chrisgward.com/jobs/bSpace # Load on startup for bukkit.yml, and all that support load: startup version: 'v2.5-dev' -softdepend: [Spout, Pail, Register] +softdepend: [Spout, Register] # Commands commands: space: diff --git a/target/bSpace-v2.5-dev.jar b/target/bSpace-v2.5-dev.jar index 22f28bad7e4d51665d1a4b54493a4a90b25603fd..9654962d0291cf25d01fb6f4c93275a12eb8ba8e 100644 GIT binary patch delta 26145 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 p15tAR*Talmt?2$`KD5hEL9ee(2!<&FaTEN@8Je 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