Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.*;
- import org.bukkit.Material;
- import org.bukkit.Server;
- import org.bukkit.configuration.file.*;
- import org.bukkit.inventory.*;
- import org.bukkit.plugin.java.JavaPlugin;
- public class ReCraft extends JavaPlugin
- {
- public ReCraft()
- {
- customConfig = null;
- customConfigFile = null;
- }
- public void onDisabled()
- {
- System.out.println("[РЕВЕРС-КРАФТ] Выгрузка рецетов.");
- getServer().resetRecipes();
- System.out.println("[РЕВЕРС-КРАФТ] Теперь отключён.");
- }
- public void onEnable()
- {
- System.out.println("[РЕВЕРС-КРАФТ] Загрузка рецетов.");
- System.out.println((new StringBuilder("[РЕВЕРС-КРАФТ] Коэфициент возврата: ")).append(getConfig().getDouble("Factor")).toString());
- LoadConfiguration();
- for(int i = 0; i < getConfig().getInt("BurnR"); i++)
- {
- String number = String.valueOf(i);
- String name = getCustomConfig().getString((new StringBuilder("burn.")).append(number).append(".name").toString());
- String materialItemStack = getCustomConfig().getString((new StringBuilder("burn.")).append(number).append(".material").toString());
- Integer quantity = Integer.valueOf((int)Math.round((double)getCustomConfig().getInt((new StringBuilder("burn.")).append(number).append(".quantity").toString()) * getConfig().getDouble("Factor")));
- ItemStack material = new ItemStack(Material.getMaterial(materialItemStack), quantity.intValue());
- FurnaceRecipe recipe = new FurnaceRecipe(material, Material.getMaterial(name));
- getServer().addRecipe(recipe);
- }
- for(int i = 0; i < getConfig().getInt("CrafR"); i++)
- {
- String number = String.valueOf(i);
- String name = getCustomConfig().getString((new StringBuilder("craft.")).append(number).append(".name").toString());
- String materialItemStack = getCustomConfig().getString((new StringBuilder("craft.")).append(number).append(".material").toString());
- Integer quantity = Integer.valueOf((int)Math.round((double)getCustomConfig().getInt((new StringBuilder("craft.")).append(number).append(".quantity").toString()) * getConfig().getDouble("Factor")));
- ItemStack material = new ItemStack(Material.getMaterial(materialItemStack), quantity.intValue());
- ShapelessRecipe recipe = (new ShapelessRecipe(material)).addIngredient(Material.getMaterial(name));
- getServer().addRecipe(recipe);
- }
- System.out.println("[РЕВЕРС-КРАФТ] Рецепты загружены.");
- System.out.println("[РЕВЕРС-КРАФТ] Теперь включён.");
- }
- public void LoadConfiguration()
- {
- String factor = "Factor";
- String burnr = "BurnR";
- String crafr = "CrafR";
- getConfig().addDefault(factor, Integer.valueOf(1));
- getConfig().addDefault(burnr, Integer.valueOf(1));
- getConfig().addDefault(crafr, Integer.valueOf(1));
- getConfig().options().copyDefaults(true);
- saveConfig();
- }
- public void reloadCustomConfig()
- {
- if(customConfigFile == null)
- customConfigFile = new File(getDataFolder(), "items.yml");
- customConfig = YamlConfiguration.loadConfiguration(customConfigFile);
- InputStream defConfigStream = getResource("items.yml");
- if(defConfigStream != null)
- {
- YamlConfiguration defConfig = YamlConfiguration.loadConfiguration(defConfigStream);
- customConfig.setDefaults(defConfig);
- }
- }
- public FileConfiguration getCustomConfig()
- {
- if(customConfig == null)
- reloadCustomConfig();
- return customConfig;
- }
- private FileConfiguration customConfig;
- private File customConfigFile;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement