org.bukkit.configuration.file.FileConfiguration#contains ( )源码实例Demo

下面列出了org.bukkit.configuration.file.FileConfiguration#contains ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: Crazy-Auctions   文件: GUI.java
public static ItemStack getBiddingGlass(Player player, String ID) {
    FileConfiguration config = Files.CONFIG.getFile();
    String id = config.getString("Settings.GUISettings.OtherSettings.Bidding.Item");
    String name = config.getString("Settings.GUISettings.OtherSettings.Bidding.Name");
    ItemStack item;
    int bid = bidding.get(player);
    if (config.contains("Settings.GUISettings.OtherSettings.Bidding.Lore")) {
        List<String> lore = new ArrayList<>();
        for (String l : config.getStringList("Settings.GUISettings.OtherSettings.Bidding.Lore")) {
            lore.add(l.replace("%Bid%", bid + "").replace("%bid%", bid + "").replace("%TopBid%", Methods.getPrice(ID, false)).replace("%topbid%", Methods.getPrice(ID, false)));
        }
        item = Methods.makeItem(id, 1, name, lore);
    } else {
        item = Methods.makeItem(id, 1, name);
    }
    return item;
}
 
源代码2 项目: Crazy-Crates   文件: Methods.java
public static HashMap<ItemStack, String> getItems(Player player) {
    HashMap<ItemStack, String> items = new HashMap<>();
    FileConfiguration file = cc.getOpeningCrate(player).getFile();
    for (String reward : file.getConfigurationSection("Crate.Prizes").getKeys(false)) {
        String id = file.getString("Crate.Prizes." + reward + ".DisplayItem");
        String name = file.getString("Crate.Prizes." + reward + ".DisplayName");
        int chance = file.getInt("Crate.Prizes." + reward + ".Chance");
        int max = 99;
        if (file.contains("Crate.Prizes." + reward + ".MaxRange")) {
            max = file.getInt("Crate.Prizes." + reward + ".MaxRange") - 1;
        }
        try {
            ItemStack item = new ItemBuilder().setMaterial(id).setName(name).build();
            int num;
            for (int counter = 1; counter <= 1; counter++) {
                num = 1 + random.nextInt(max);
                if (num >= 1 && num <= chance) items.put(item, "Crate.Prizes." + reward);
            }
        } catch (Exception e) {
        }
    }
    return items;
}
 
源代码3 项目: Crazy-Crates   文件: CrazyCrates.java
/**
 * Take keys from an offline player.
 * @param player The player which you are taking keys from.
 * @param crate The Crate of which key you are taking from the player.
 * @param keys The amount of keys you wish to take.
 * @return Returns true if it took the keys and false if an error occurred.
 */
public boolean takeOfflineKeys(String player, Crate crate, int keys) {
    try {
        FileConfiguration data = Files.DATA.getFile();
        player = player.toLowerCase();
        int playerKeys = 0;
        if (data.contains("Offline-Players." + player + "." + crate.getName())) {
            playerKeys = data.getInt("Offline-Players." + player + "." + crate.getName());
        }
        data.set("Offline-Players." + player + "." + crate.getName(), playerKeys - keys);
        Files.DATA.saveFile();
        return true;
    } catch (Exception e) {
        e.printStackTrace();
        return false;
    }
}
 
源代码4 项目: BedwarsRel   文件: BedwarsRel.java
public List<String> getAllowedCommands() {
  FileConfiguration config = this.getConfig();
  if (config.contains("allowed-commands") && config.isList("allowed-commands")) {
    return config.getStringList("allowed-commands");
  }

  return new ArrayList<String>();
}
 
源代码5 项目: PerWorldInventory   文件: GroupManager.java
/**
 * Loads the groups defined in a 'worlds.yml' file into memory.
 *
 * @param config The contents of the configuration file.
 */
public void loadGroupsToMemory(FileConfiguration config) {
    groups.clear();

    for (String key : config.getConfigurationSection("groups.").getKeys(false)) {
        List<String> worlds;
        if (config.contains("groups." + key + ".worlds")) {
            worlds = config.getStringList("groups." + key + ".worlds");
        } else {
            worlds = config.getStringList("groups." + key);
            config.set("groups." + key, null);
            config.set("groups." + key + ".worlds", worlds);
            if (settings.getProperty(PwiProperties.SEPARATE_GAMEMODE_INVENTORIES)) {
                config.set("groups." + key + ".default-gamemode", "SURVIVAL");
            }
        }

        if (settings.getProperty(PwiProperties.MANAGE_GAMEMODES)) {
            GameMode gameMode = GameMode.SURVIVAL;
            if (config.getString("groups." + key + ".default-gamemode") != null) {
                gameMode = GameMode.valueOf(config.getString("groups." + key + ".default-gamemode").toUpperCase());
            }

            addGroup(key, worlds, gameMode);
        } else {
            addGroup(key, worlds);
        }

        setDefaultsFile(key);
    }
}
 
源代码6 项目: CardinalPGM   文件: Cardinal.java
private void registerSettings() {
    FileConfiguration config = YamlConfiguration.loadConfiguration(new InputStreamReader(this.getResource("settings.yml"), Charsets.UTF_8));
    if (config.contains("settings")) {
        for (String settingName : config.getStringList("settings")) {
            List<String> names = new ArrayList<>();
            String description = "No description.";
            List<SettingValue> values = new ArrayList<>();
            names.add(settingName.trim());
            if (config.contains("setting." + settingName + ".aliases")) {
                for (String alias : config.getStringList("setting." + settingName + ".aliases")) {
                    names.add(alias.trim());
                }
            }
            if (config.contains("setting." + settingName + ".description"))
                description = config.getString("setting." + settingName + ".description");
            if (config.contains("setting." + settingName + ".values")) {
                for (String valueName : config.getStringList("setting." + settingName + ".values")) {
                    if (valueName.endsWith("[default]"))
                        values.add(new SettingValue(valueName.trim().substring(0, valueName.length() - 9), true));
                    else values.add(new SettingValue(valueName.trim(), false));
                }
            }
            new Setting(names, description, values);
        }
    }
    new Setting(Arrays.asList("ChatChannel"), "Choose a default chat channel.", Arrays.asList(new SettingValue("global", false), new SettingValue("team", true), new SettingValue("admin", false)));
}
 
源代码7 项目: BedwarsRel   文件: BedwarsRel.java
public boolean getBooleanConfig(String key, boolean defaultBool) {
  FileConfiguration config = this.getConfig();
  if (config.contains(key) && config.isBoolean(key)) {
    return config.getBoolean(key);
  }
  return defaultBool;
}
 
源代码8 项目: civcraft   文件: CivSettings.java
public static Integer getInteger(FileConfiguration cfg, String path) throws InvalidConfiguration {
	if (!cfg.contains(path)) {
		throw new InvalidConfiguration("Could not get configuration integer "+path);
	}
	
	int data = cfg.getInt(path);
	return data;
}
 
源代码9 项目: DungeonsXL   文件: PlayerClass.java
/**
 * Creates a PlayerClass from the given class config.
 *
 * @param caliburn the CaliburnAPI instance
 * @param name     the class name
 * @param config   the config
 */
public PlayerClass(CaliburnAPI caliburn, String name, FileConfiguration config) {
    this.name = name;

    if (config.contains("items")) {
        items = caliburn.deserializeStackList(config, "items");
    }

    if (config.contains("dog")) {
        dog = config.getBoolean("dog");
    }
}
 
源代码10 项目: BedwarsRel   文件: BedwarsRel.java
public Integer getRespawnProtectionTime() {
  FileConfiguration config = this.getConfig();
  if (config.contains("respawn-protection") && config.isInt("respawn-protection")) {
    return config.getInt("respawn-protection");
  }
  return 0;
}
 
源代码11 项目: skUtilities   文件: CondYamlExists.java
@Override
public boolean check(Event e) {
  File pth = new File(skUtilities.getDefaultPath(path.getSingle(e)));
  FileConfiguration con = YamlConfiguration.loadConfiguration(pth);
  Boolean v = con.contains(yaml.getSingle(e));
  return (isNegated() ? !v : v);
}
 
源代码12 项目: Crazy-Auctions   文件: GUI.java
public static void openBidding(Player player, String ID) {
    Methods.updateAuction();
    FileConfiguration config = Files.CONFIG.getFile();
    FileConfiguration data = Files.DATA.getFile();
    if (!data.contains("Items." + ID)) {
        openShop(player, ShopType.BID, shopCategory.get(player), 1);
        player.sendMessage(Messages.ITEM_DOESNT_EXIST.getMessage());
        return;
    }
    Inventory inv = Bukkit.createInventory(null, 27, Methods.color(config.getString("Settings.Bidding-On-Item")));
    if (!bidding.containsKey(player)) bidding.put(player, 0);
    if (Version.getCurrentVersion().isNewer(Version.v1_12_R1)) {
        inv.setItem(9, Methods.makeItem("LIME_STAINED_GLASS_PANE", 1, "&a+1"));
        inv.setItem(10, Methods.makeItem("LIME_STAINED_GLASS_PANE", 1, "&a+10"));
        inv.setItem(11, Methods.makeItem("LIME_STAINED_GLASS_PANE", 1, "&a+100"));
        inv.setItem(12, Methods.makeItem("LIME_STAINED_GLASS_PANE", 1, "&a+1000"));
        inv.setItem(14, Methods.makeItem("RED_STAINED_GLASS_PANE", 1, "&c-1000"));
        inv.setItem(15, Methods.makeItem("RED_STAINED_GLASS_PANE", 1, "&c-100"));
        inv.setItem(16, Methods.makeItem("RED_STAINED_GLASS_PANE", 1, "&c-10"));
        inv.setItem(17, Methods.makeItem("RED_STAINED_GLASS_PANE", 1, "&c-1"));
    } else {
        inv.setItem(9, Methods.makeItem("160:5", 1, "&a+1"));
        inv.setItem(10, Methods.makeItem("160:5", 1, "&a+10"));
        inv.setItem(11, Methods.makeItem("160:5", 1, "&a+100"));
        inv.setItem(12, Methods.makeItem("160:5", 1, "&a+1000"));
        inv.setItem(14, Methods.makeItem("160:14", 1, "&c-1000"));
        inv.setItem(15, Methods.makeItem("160:14", 1, "&c-100"));
        inv.setItem(16, Methods.makeItem("160:14", 1, "&c-10"));
        inv.setItem(17, Methods.makeItem("160:14", 1, "&c-1"));
    }
    inv.setItem(13, getBiddingGlass(player, ID));
    inv.setItem(22, Methods.makeItem(config.getString("Settings.GUISettings.OtherSettings.Bid.Item"), 1, config.getString("Settings.GUISettings.OtherSettings.Bid.Name"), config.getStringList("Settings.GUISettings.OtherSettings.Bid.Lore")));
    
    inv.setItem(4, getBiddingItem(player, ID));
    player.openInventory(inv);
}
 
源代码13 项目: Crazy-Crates   文件: CrazyCrates.java
private ItemStack getKey(FileConfiguration file) {
    String name = file.getString("Crate.PhysicalKey.Name");
    List<String> lore = file.getStringList("Crate.PhysicalKey.Lore");
    String id = file.getString("Crate.PhysicalKey.Item");
    boolean glowing = false;
    if (file.contains("Crate.PhysicalKey.Glowing")) {
        glowing = file.getBoolean("Crate.PhysicalKey.Glowing");
    }
    return new ItemBuilder().setMaterial(id).setName(name).setLore(lore).setGlowing(glowing).build();
}
 
源代码14 项目: PerWorldInventory   文件: GroupManager.java
/**
 * Loads the groups defined in a 'worlds.yml' file into memory.
 *
 * @param config The contents of the configuration file.
 */
public void loadGroupsToMemory(FileConfiguration config) {
    groups.clear();

    for (String key : config.getConfigurationSection("groups.").getKeys(false)) {
        List<String> worlds;
        if (config.contains("groups." + key + ".worlds")) {
            worlds = config.getStringList("groups." + key + ".worlds");
        } else {
            worlds = config.getStringList("groups." + key);
            config.set("groups." + key, null);
            config.set("groups." + key + ".worlds", worlds);
            if (settings.getProperty(PwiProperties.SEPARATE_GAMEMODE_INVENTORIES)) {
                config.set("groups." + key + ".default-gamemode", "SURVIVAL");
            }
        }

        if (settings.getProperty(PwiProperties.MANAGE_GAMEMODES)) {
            GameMode gameMode = GameMode.SURVIVAL;
            if (config.getString("groups." + key + ".default-gamemode") != null) {
                gameMode = GameMode.valueOf(config.getString("groups." + key + ".default-gamemode").toUpperCase());
            }

            addGroup(key, worlds, gameMode);
        } else {
            addGroup(key, worlds);
        }

        setDefaultsFile(key);
    }
}
 
源代码15 项目: AuthMeReloaded   文件: SpawnLoader.java
/**
 * Return whether the file configuration contains all fields necessary to define a spawn
 * under the given path.
 *
 * @param configuration The file configuration to use
 * @param pathPrefix    The path to verify
 *
 * @return True if all spawn fields are present, false otherwise
 */
private static boolean containsAllSpawnFields(FileConfiguration configuration, String pathPrefix) {
    String[] fields = {"world", "x", "y", "z", "yaw", "pitch"};
    for (String field : fields) {
        if (!configuration.contains(pathPrefix + "." + field)) {
            return false;
        }
    }
    return true;
}
 
源代码16 项目: NovaGuilds   文件: ResourceManagerPlayerImpl.java
@Override
public boolean save(NovaPlayer nPlayer) {
	if(!nPlayer.isChanged() && !isInSaveQueue(nPlayer) || nPlayer.isUnloaded()) {
		return false;
	}

	if(!nPlayer.isAdded()) {
		add(nPlayer);
	}

	FileConfiguration playerData = getData(nPlayer);

	if(playerData != null) {
		try {
			//set values
			playerData.set("name", nPlayer.getName());
			playerData.set("guild", nPlayer.hasGuild() ? nPlayer.getGuild().getUUID().toString() : null);
			playerData.set("invitedto", new ToStringConverterImpl().convert((List) new ResourceToUUIDConverterImpl<NovaGuild>().convert(nPlayer.getInvitedTo())));
			playerData.set("points", nPlayer.getPoints());
			playerData.set("kills", nPlayer.getKills());
			playerData.set("deaths", nPlayer.getDeaths());

			if(playerData.contains("uuid")) {
				playerData.set("uuid", null);
			}

			//save
			playerData.save(getFile(nPlayer));
		}
		catch(IOException e) {
			LoggerUtils.exception(e);
		}
	}
	else {
		LoggerUtils.error("Attempting to save non-existing player. " + nPlayer.getName());
	}

	return true;
}
 
源代码17 项目: PlaceholderAPI   文件: ExpansionManager.java
public boolean registerExpansion(PlaceholderExpansion expansion) {
  if (expansion == null || expansion.getIdentifier() == null) {
    return false;
  }

  if (expansion instanceof Configurable) {
    Map<String, Object> defaults = ((Configurable) expansion).getDefaults();
    String pre = "expansions." + expansion.getIdentifier() + ".";
    FileConfiguration cfg = plugin.getConfig();
    boolean save = false;

    if (defaults != null) {
      for (Entry<String, Object> entries : defaults.entrySet()) {
        if (entries.getKey() == null || entries.getKey().isEmpty()) {
          continue;
        }

        if (entries.getValue() == null) {
          if (cfg.contains(pre + entries.getKey())) {
            save = true;
            cfg.set(pre + entries.getKey(), null);
          }
        } else {
          if (!cfg.contains(pre + entries.getKey())) {
            save = true;
            cfg.set(pre + entries.getKey(), entries.getValue());
          }
        }
      }
    }

    if (save) {
      plugin.saveConfig();
      plugin.reloadConfig();
    }
  }

  if (expansion instanceof VersionSpecific) {
    VersionSpecific nms = (VersionSpecific) expansion;
    if (!nms.isCompatibleWith(PlaceholderAPIPlugin.getServerVersion())) {
      plugin.getLogger()
          .info(
              "Your server version is not compatible with expansion: " + expansion.getIdentifier()
                  + " version: " + expansion.getVersion());
      return false;
    }
  }

  if (!expansion.canRegister()) {
    return false;
  }

  if (!expansion.register()) {
    return false;
  }

  if (expansion instanceof Listener) {
    Listener l = (Listener) expansion;
    Bukkit.getPluginManager().registerEvents(l, plugin);
  }

  plugin.getLogger().info("Successfully registered expansion: " + expansion.getIdentifier());

  if (expansion instanceof Taskable) {
    ((Taskable) expansion).start();
  }

  if (plugin.getExpansionCloud() != null) {
    CloudExpansion ce = plugin.getExpansionCloud().getCloudExpansion(expansion.getIdentifier());

    if (ce != null) {
      ce.setHasExpansion(true);
      if (!ce.getLatestVersion().equals(expansion.getVersion())) {
        ce.setShouldUpdate(true);
      }
    }
  }

  return true;
}
 
源代码18 项目: QualityArmory   文件: GunYMLLoader.java
public static void loadArmor(QAMain main) {
	if (new File(main.getDataFolder(), "armor").exists()) {
		int items = 0;

		for (File f : new File(main.getDataFolder(), "armor").listFiles()) {
			try {
				if (f.getName().contains("yml")) {
					FileConfiguration f2 = YamlConfiguration.loadConfiguration(f);
					if ((!f2.contains("invalid")) || !f2.getBoolean("invalid")) {
						final String name = f2.getString("name");
						if(QAMain.verboseLoadingLogging)
						main.getLogger().info("-Loading Armor: " + name);

						Material m = f2.contains("material") ? Material.matchMaterial(f2.getString("material"))
								: Material.DIAMOND_AXE;
						int variant = f2.contains("variant") ? f2.getInt("variant") : 0;
						final MaterialStorage ms = MaterialStorage.getMS(m, f2.getInt("id"), variant);
						final ItemStack[] materails = main
								.convertIngredients(f2.getStringList("craftingRequirements"));
						final String displayname = f2.contains("displayname")
								? ChatColor.translateAlternateColorCodes('&', f2.getString("displayname"))
								: (ChatColor.WHITE + name);
						final List<String> rawLore = f2.contains("lore") ? f2.getStringList("lore") : null;
						final List<String> lore = new ArrayList<String>();
						try {
							for (String lore2 : rawLore) {
								lore.add(ChatColor.translateAlternateColorCodes('&', lore2));
							}
						} catch (Error | Exception re52) {
						}

						final int price = f2.contains("price") ? f2.getInt("price") : 100;

						WeaponType wt = WeaponType.getByName(f2.getString("MiscType"));

						if (wt == WeaponType.HELMET) {
							QAMain.armorRegister.put(ms, new Helmet(name, displayname, lore, materails, ms, price));
							items++;
						}
					}
				}
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
		if(!QAMain.verboseLoadingLogging)
			main.getLogger().info("-Loaded "+items+" Armor types.");
	}
}
 
源代码19 项目: QualityArmory   文件: GunYMLLoader.java
public static void loadMisc(QAMain main) {
	if (new File(main.getDataFolder(), "misc").exists()) {
		int items = 0;
		for (File f : new File(main.getDataFolder(), "misc").listFiles()) {
			try {
				if (f.getName().contains("yml")) {
					FileConfiguration f2 = YamlConfiguration.loadConfiguration(f);
					if ((!f2.contains("invalid")) || !f2.getBoolean("invalid")) {
						final String name = f2.getString("name");
						if (QAMain.verboseLoadingLogging)
							main.getLogger().info("-Loading Misc: " + name);

						Material m = f2.contains("material") ? Material.matchMaterial(f2.getString("material"))
								: Material.DIAMOND_AXE;
						int variant = f2.contains("variant") ? f2.getInt("variant") : 0;
						final MaterialStorage ms = MaterialStorage.getMS(m, f2.getInt("id"), variant);
						final ItemStack[] materails = main
								.convertIngredients(f2.getStringList("craftingRequirements"));
						final String displayname = f2.contains("displayname")
								? ChatColor.translateAlternateColorCodes('&', f2.getString("displayname"))
								: (ChatColor.WHITE + name);
						final List<String> rawLore = f2.contains("lore") ? f2.getStringList("lore") : null;
						final List<String> lore = new ArrayList<String>();
						try {
							for (String lore2 : rawLore) {
								lore.add(ChatColor.translateAlternateColorCodes('&', lore2));
							}
						} catch (Error | Exception re52) {
						}

						final int price = f2.contains("price") ? f2.getInt("price") : 100;

						int damage = f2.contains("damage") ? f2.getInt("damage") : 1;
						// int durib = f2.contains("durability") ? f2.getInt("durability") : 1000;

						WeaponType wt = WeaponType.getByName(f2.getString("MiscType"));

						double radius = f2.contains("radius") ? f2.getDouble("radius") : 0;
						items++;

						CustomBaseObject base = null;


						String soundEquip =  f2.contains("sound_equip")? f2.getString("sound_equip"):null;
						String soundHit =  f2.contains("sound_meleehit")? f2.getString("sound_meleehit"):null;

						if (wt == WeaponType.MEDKIT)
							QAMain.miscRegister.put(ms, base=new MedKit(ms, name, displayname, materails, price));
						if (wt == WeaponType.MELEE) {
							QAMain.miscRegister.put(ms,
									base = new MeleeItems(ms, name, displayname, materails, price, damage));
							base.setSoundOnEquip(soundEquip);
							base.setSoundOnHit(soundHit);
							base.setCustomLore(lore);
						}
						if (wt == WeaponType.GRENADES)
							QAMain.miscRegister.put(ms,
									base=new Grenade(materails, price, damage, radius, name, displayname, lore, ms));
						if (wt == WeaponType.SMOKE_GRENADES)
							QAMain.miscRegister.put(ms, base=new SmokeGrenades(materails, price, damage, radius, name,
									displayname, lore, ms));
						if (wt == WeaponType.INCENDARY_GRENADES)
							QAMain.miscRegister.put(ms, base=new IncendaryGrenades(materails, price, damage, radius,
									name, displayname, lore, ms));
						if (wt == WeaponType.FLASHBANGS)
							QAMain.miscRegister.put(ms,
									base=new Flashbang(materails, price, damage, radius, name, displayname, lore, ms));

						if(base!=null) {
							base.setCustomLore(lore);
							base.setIngredients(materails);
						}
					}
				}
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
		if(!QAMain.verboseLoadingLogging)
			main.getLogger().info("-Loaded "+items+" Misc.");
	}
}
 
源代码20 项目: QualityArmory   文件: GunYMLLoader.java
public static void loadAttachments(QAMain main) {
	if (new File(main.getDataFolder(), "attachments").exists()) {
		int items = 0;
		for (File f : new File(main.getDataFolder(), "attachments").listFiles()) {
			try {
				if (f.getName().contains("yml")) {
					FileConfiguration f2 = YamlConfiguration.loadConfiguration(f);
					if ((!f2.contains("invalid")) || !f2.getBoolean("invalid")) {
						final String name = f2.getString("name");
						main.getLogger().info("-Loading Attachment: " + name);
						final String displayname = f2.contains("displayname")
								? ChatColor.translateAlternateColorCodes('&', f2.getString("displayname"))
								: (ChatColor.GOLD + name);
						final List<String> extraLore2 = f2.contains("lore") ? f2.getStringList("lore") : null;

						Material m = f2.contains("material") ? Material.matchMaterial(f2.getString("material"))
								: Material.DIAMOND_AXE;
						int variant = f2.contains("variant") ? f2.getInt("variant") : 0;
						final MaterialStorage ms = MaterialStorage.getMS(m, f2.getInt("id"), variant);

						// Gun baseGun = null;
						MaterialStorage baseGunM = null;
						String base = f2.getString("baseGun");
						for (Entry<MaterialStorage, Gun> g : QAMain.gunRegister.entrySet()) {
							if (g.getValue().getName().equalsIgnoreCase(base)) {
								// baseGun = g.getValue();
								baseGunM = g.getKey();
							}
						}

						final List<String> extraLore = new ArrayList<String>();
						try {
							for (String lore : extraLore2) {
								extraLore.add(ChatColor.translateAlternateColorCodes('&', lore));
							}
						} catch (Error | Exception re52) {
						}
						if(baseGunM==null){
							main.getLogger().info("--Failed to load "+name+" attachment because the base \""+base+"\" does not exist.");
							continue;
						}

						AttachmentBase attach = new AttachmentBase(baseGunM, ms, name, displayname);
						QAMain.gunRegister.put(ms, attach);
						items++;

						attach.setCustomLore(extraLore);

						final Object[] materials = main
								.convertIngredientsRaw(f2.getStringList("craftingRequirements"));
						attach.setIngredientsRaw(materials);

						// QAMain.attachmentRegister.put(ms, attach);
						loadGunSettings(attach, f2);
					}

				}
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
		if(!QAMain.verboseLoadingLogging)
			main.getLogger().info("-Loaded "+items+" Attachment types.");
	}
}