diff --git a/.github/.gitignore b/.github/.gitignore new file mode 100644 index 0000000..e12bb72 --- /dev/null +++ b/.github/.gitignore @@ -0,0 +1,28 @@ +# Output +bin/ +target/ +out/ + +# IDEA +**/*.iml +.idea/ + +# VSC +.vscode/ + +# Metals +.metals/ +.bloop/ +.bsp/ + +# Eclipse +.classpath +.project +.settings/ + +# Maven +dependency-reduced-pom.xml + +# Leiningen +.lein-* +.nrepl-port diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index 8386783..49c77f5 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -5,21 +5,20 @@ name: Java CI with Maven on: push: - branches: [ master ] + branches: [master] pull_request: - branches: [ master ] + branches: [master] jobs: build: - runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - name: Set up JDK 8 - uses: actions/setup-java@v2 - with: - java-version: '8' - distribution: 'adopt' - - name: Build with Maven - run: mvn -B package --file pom.xml + - uses: actions/checkout@v2 + - name: Set up JDK 8 + uses: actions/setup-java@v2 + with: + java-version: "8" + distribution: "adopt" + - name: Build with Maven + run: mvn -B package --file pom.xml diff --git a/.gitignore b/.gitignore index 493f917..e12bb72 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,28 @@ +# Output +bin/ target/ -.settings/ +out/ + +# IDEA +**/*.iml +.idea/ + +# VSC +.vscode/ +# Metals +.metals/ +.bloop/ +.bsp/ + +# Eclipse .classpath .project +.settings/ -.netbeans_automatic_build +# Maven +dependency-reduced-pom.xml -.vscode/ -.theia/ +# Leiningen +.lein-* +.nrepl-port diff --git a/CHANGELOG b/CHANGELOG index e7526ab..2dc2a08 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -53,7 +53,7 @@ - [docs] edit wiki (2021.2.26-20:30) - [refactor] update version ntag to '1.0.6' in 'pom.xml' (2021.2.26-20:33) -### Reborn (v1.0.7 | 2021.5.3) +### Glass Electricity Transmitter (v1.0.7 | 2021.5.3) - [feat] add 'GLASS_ELECTRICITY_TRANSMITTER' (2021.?.?-?) - [docs] rewrite the 'CHANGELOG' file (2021.5.3-12:10) - [refactor] configure default configuration (2021.5.3-12:19) diff --git a/README.md b/README.md index 5d1f640..840a4fa 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,18 @@ -# UltimateGenerators - -A spigot plugin depends on Slimefun 4 which adds some generators and machines. +## Welcome All releases can be found in the `Release Page`. Check out the `CHANGELOG` to get to know what's new. +*Some images below in the chart can be clicked* + +***Please notice that `Pre-Release` will not be displayed as `latest release`*** + --- -| Release Page | Build Passing | Changelog | -| ---- | ---- | ---- | -| | | | +| Releases | Building Status | Changelog | +| :-: | :-: | :-: | +| | | | +| | - | - | ### About Open-Source @@ -23,7 +26,7 @@ Run commands below to build the project, make sure you have `Maven` installed on By the way, if the `Building Passing` badge is shown as `FAILING`, you may probably not able to build by yourself right now. -``` +```shell git clone https://github.com/freeze-dolphin/UltimateGenerators/ cd UltimateGenerators/ diff --git a/dependency-reduced-pom.xml b/dependency-reduced-pom.xml deleted file mode 100644 index aeb0b36..0000000 --- a/dependency-reduced-pom.xml +++ /dev/null @@ -1,83 +0,0 @@ - - - 4.0.0 - io.freeze-dolphin - ultimate-generators - UltimateGenerators - 1.0.6 - - - - true - ${project.basedir}/src/main/resources - - - ${project.name} v${project.version} - - - maven-resources-plugin - 3.2.0 - - \ - UTF-8 - - - - maven-shade-plugin - 3.2.4 - - - package - - shade - - - - - org.dom4j:dom4j - - META-INF/* - - - - - - - - - - - - taboolib - https://ptms.ink:8081/repository/maven-public/ - - - - - ink.ptms.core - v11200 - 11200 - all - provided - - - me.mrCookieSlime - Slimefun - 4.1.15 - system - ${pom.basedir}/lib/Slimefun-4.1.15-NOBUTS.jar - - - me.mrCookieSlime - CS-CoreLib - 1.5.18 - system - ${pom.basedir}/lib/CS-CoreLib-1.5.18.jar - - - - UTF-8 - 1.8 - 1.8 - - diff --git a/docs/_config.yml b/docs/_config.yml new file mode 100644 index 0000000..f93e258 --- /dev/null +++ b/docs/_config.yml @@ -0,0 +1 @@ +theme: jekyll-theme-time-machine diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..840a4fa --- /dev/null +++ b/docs/index.md @@ -0,0 +1,35 @@ +## Welcome + +All releases can be found in the `Release Page`. +Check out the `CHANGELOG` to get to know what's new. + +*Some images below in the chart can be clicked* + +***Please notice that `Pre-Release` will not be displayed as `latest release`*** + +--- + +| Releases | Building Status | Changelog | +| :-: | :-: | :-: | +| | | | +| | - | - | + +### About Open-Source + +**Publishing the compiled JAR file of this plug-in directly and without my permission is not allowed!** + +So if you want to make some changes to the codes, please consider `Pull Request` first! + +### Build by yourself + +Run commands below to build the project, make sure you have `Maven` installed on your computer before it. + +By the way, if the `Building Passing` badge is shown as `FAILING`, you may probably not able to build by yourself right now. + +```shell +git clone https://github.com/freeze-dolphin/UltimateGenerators/ + +cd UltimateGenerators/ + +mvn clean package +``` diff --git a/lib/CS-CoreLib-1.5.18.jar b/lib/CS-CoreLib-1.5.18.jar deleted file mode 100644 index 582f20c..0000000 Binary files a/lib/CS-CoreLib-1.5.18.jar and /dev/null differ diff --git a/lib/Slimefun-4.1.15-NOBUTS.jar b/lib/Slimefun-4.1.15-NOBUTS.jar deleted file mode 100644 index f5411ed..0000000 Binary files a/lib/Slimefun-4.1.15-NOBUTS.jar and /dev/null differ diff --git a/pom.xml b/pom.xml index 2f82d42..d2b49ea 100644 --- a/pom.xml +++ b/pom.xml @@ -4,61 +4,65 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 - io.freeze-dolphin - ultimate-generators - 1.0.7 + io.freeze_dolphin + ultimate_generators + 1.0.8 UltimateGenerators - 1.8 - 1.8 UTF-8 + + 8 + 8 - taboolib - https://repo.ptms.ink/repository/maven-releases/ + papermc + https://papermc.io/repo/repository/maven-public/ + + + jitpack.io + https://jitpack.io + - ink.ptms.core - v11200 - 11200 + com.destroystokyo.paper + paper-api + 1.12.2-R0.1-SNAPSHOT provided - all - - + + org.dom4j dom4j 2.1.3 compile - + me.mrCookieSlime Slimefun - 4.1.15 - system - ${pom.basedir}/lib/Slimefun-4.1.15-NOBUTS.jar + nar4.1.15 + provided - - me.mrCookieSlime + com.github.TheBusyBiscuit CS-CoreLib 1.5.18 - system - ${pom.basedir}/lib/CS-CoreLib-1.5.18.jar + provided - ${project.name} v${project.version} + ${project.name}-${project.version} ${project.basedir}/src/main/resources @@ -68,18 +72,16 @@ - maven-resources-plugin - 3.2.0 - - \ - UTF-8 - - - - - org.apache.maven.plugins maven-shade-plugin 3.2.4 + + true + + + org.dom4j:dom4j + + + package @@ -89,9 +91,9 @@ - org.dom4j:dom4j + *:* - META-INF/* + META-INF/** diff --git a/src/main/java/io/freeze_dolphin/api/updating_server/UpdatingServerUtils.java b/src/main/java/io/freeze_dolphin/api/updating_server/UpdatingServerUtils.java deleted file mode 100644 index 3133ad8..0000000 --- a/src/main/java/io/freeze_dolphin/api/updating_server/UpdatingServerUtils.java +++ /dev/null @@ -1,244 +0,0 @@ -package io.freeze_dolphin.api.updating_server; - -import io.freeze_dolphin.ultimate_generators.DefaultConfig; -import java.io.IOException; -import java.io.InputStream; -import java.net.HttpURLConnection; -import java.net.URL; -import java.security.KeyManagementException; -import java.security.NoSuchAlgorithmException; -import java.security.NoSuchProviderException; -import java.security.cert.CertificateException; -import java.security.cert.X509Certificate; -import java.util.Iterator; - -import javax.net.ssl.HostnameVerifier; -import javax.net.ssl.HttpsURLConnection; -import javax.net.ssl.SSLContext; -import javax.net.ssl.SSLSession; -import javax.net.ssl.SSLSocketFactory; -import javax.net.ssl.TrustManager; -import javax.net.ssl.X509TrustManager; - -import org.dom4j.Document; -import org.dom4j.DocumentException; -import org.dom4j.Element; -import org.dom4j.io.SAXReader; - -public class UpdatingServerUtils { - - private static String DEFAULT_URL = "https://cdn.jsdelivr.net/gh/freeze-dolphin/updating-server@master/content.xml"; - private static String UA = "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:85.0) Gecko/20100101 Firefox/85.0"; - private static int TIME_OUT = 9000; - - /* - * This is the calling template - * Utils.asyncDelay(() -> { - if (Boolean.parseBoolean(getProperties().getProperty("enable-update-notification", "true"))) { - info("Checking Updates..."); - try { - String latest = getLatestVersion(Loader.getImplement().getName()); - String current = Loader.getImplement().getDescription().getVersion(); - if (Integer.parseInt(latest.replaceAll("\\.", "")) > Integer.parseInt(current.replaceAll("\\.", ""))) { - VersionInfo vi = getVersionInfo(Loader.getImplement().getName(), latest); - warn("Update detected: v" + latest + " (Current: v" + current + ")" + "\n\t· " + vi.getName() + "\n\t· " + vi.getDescription() + "\n\t· " + vi.getURL()); - } else { - info("You are now in the latest version!"); - } - } catch (IOException | KeyManagementException | NoSuchAlgorithmException ex) { - ex.printStackTrace(); - warn("Unable to check updates! Make sure that you have configured your Internet properly and try again by restarting the server!"); - } catch (DocumentException | NumberFormatException | NullPointerException | NoSuchProviderException ex) { - ex.printStackTrace(); - warn("Unable to check updates! Please contact the plugin author to fix the updating-server bug, or you can temporarily disable the update checker by setting 'enable-update-notification' to 'false' in 'config.properties'"); - } - } - }); - */ - public static String setDefaultURL(String newDefaultUrl) { - DEFAULT_URL = newDefaultUrl; - return DEFAULT_URL; - } - - public static String getDefaultURL() { - return DEFAULT_URL; - } - - public static String setUA(String newUA) { - UA = newUA; - return UA; - } - - public static String getUA() { - return UA; - } - - public static int getTimeOut() { - return TIME_OUT; - } - - public static int setTimeOut(int timeOut) { - TIME_OUT = timeOut; - return TIME_OUT; - } - - public static void init(String defaultUrl, String userAgent, int timeOut) { - setDefaultURL(defaultUrl); - setUA(userAgent); - setTimeOut(timeOut); - } - - public static String getLatestVersion(String contentUrl, String repositoryName) throws IOException, DocumentException, KeyManagementException, NoSuchAlgorithmException, NoSuchProviderException { - SAXReader reader = new SAXReader(); - Document d = reader.read(getVersionFile(contentUrl, repositoryName)); - Element root = d.getRootElement(); - return root.element("latest").getStringValue(); - } - - public static String getLatestVersion(String repositoryName) throws IOException, DocumentException, KeyManagementException, NoSuchAlgorithmException, NoSuchProviderException { - return getLatestVersion(DEFAULT_URL, repositoryName); - } - - public static VersionInfo getVersionInfo(String contentUrl, String repositoryName, String versionKey) throws IOException, DocumentException, KeyManagementException, NoSuchAlgorithmException, NoSuchProviderException { - SAXReader reader = new SAXReader(); - Document d = reader.read(getVersionFile(contentUrl, repositoryName)); - - Element root = d.getRootElement(); - for (Iterator it = root.elementIterator("versions"); it.hasNext();) { - Element rp = it.next().element("version"); - if (rp.attribute("key").getStringValue().equals(versionKey)) { - return new VersionInfo(rp.element("name").getStringValue(), rp.element("desc").getStringValue(), rp.element("url").getStringValue()); - } - } - return null; - } - - public static VersionInfo getVersionInfo(String repositoryName, String versionKey) throws IOException, DocumentException, KeyManagementException, NoSuchAlgorithmException, NoSuchProviderException { - return getVersionInfo(DEFAULT_URL, repositoryName, versionKey); - } - - public static class VersionInfo { - - private final String name, desc, url; - - public VersionInfo(String versionName, String versionDescription, String url) { - this.name = versionName; - this.desc = versionDescription; - this.url = url; - } - - public String getName() { - return name; - } - - public String getDescription() { - return desc; - } - - public String getURL() { - return url; - } - - } - - public static InputStream getVersionFile(String contentUrl, String repositoryName) throws IOException, DocumentException, KeyManagementException, NoSuchAlgorithmException, NoSuchProviderException { - return DownloadUtils.downLoadFromURL(getVersionFileURL(contentUrl, repositoryName)); - } - - public static InputStream getVersionFile(String repositoryName) throws IOException, DocumentException, KeyManagementException, NoSuchAlgorithmException, NoSuchProviderException { - return getVersionFile(DEFAULT_URL, repositoryName); - } - - public static String getVersionFileURL(String contentUrl, String repositoryName) throws IOException, DocumentException, KeyManagementException, NoSuchAlgorithmException, NoSuchProviderException { - SAXReader reader = new SAXReader(); - Document d = reader.read(getFile(contentUrl)); - - Element root = d.getRootElement(); - for (Iterator it = root.elementIterator("repositories"); it.hasNext();) { - Element rp = it.next().element("repository"); - if (rp.attribute("name").getStringValue().equals(repositoryName)) { - return rp.getStringValue(); - } - } - return null; - } - - public static InputStream getFile(String url) throws IOException, KeyManagementException, NoSuchAlgorithmException, NoSuchProviderException { - return DownloadUtils.downLoadFromURL(url); - } - - public static InputStream getContentFile() throws IOException, KeyManagementException, NoSuchAlgorithmException, NoSuchProviderException { - return getFile(DEFAULT_URL); - } - - private static class DownloadUtils { - - public static InputStream downLoadFromURL(String urlStr) throws IOException, KeyManagementException, NoSuchAlgorithmException, NoSuchProviderException { - if (urlStr.startsWith("https://")) { - return downLoadFromHttps(urlStr); - } else { - return downLoadFromHttp(urlStr); - } - } - - public static InputStream downLoadFromHttp(String urlStr) throws IOException { - URL url = new URL(urlStr); - HttpURLConnection conn = (HttpURLConnection) url.openConnection(); - conn.setReadTimeout(TIME_OUT); - conn.setConnectTimeout(TIME_OUT); - conn.setRequestProperty("User-Agent", UA); - conn.connect(); - - InputStream inputStream = conn.getInputStream(); - - // log.log(Level.INFO, "Successfully downloaded: {0}", file.getName()); - return inputStream; - - } - - public static InputStream downLoadFromHttps(String urlStr) throws IOException, KeyManagementException, NoSuchAlgorithmException, NoSuchProviderException { - SSLContext sslContext = SSLContext.getInstance("SSL"); - sslContext.init(null, new TrustManager[]{new TrustAnyTrustManager()}, new java.security.SecureRandom()); - SSLSocketFactory ssf = sslContext.getSocketFactory(); - URL url = new URL(urlStr); - HttpsURLConnection conn = (HttpsURLConnection) url.openConnection(); - conn.setReadTimeout(Integer.parseInt(DefaultConfig.getConfig("update-check-timeout"))); - conn.setConnectTimeout(Integer.parseInt(DefaultConfig.getConfig("update-check-timeout"))); - conn.setRequestProperty("User-Agent", UA); - conn.setHostnameVerifier(new TrustAnyHostnameVerifier()); - conn.setSSLSocketFactory(ssf); - conn.connect(); - - InputStream inputStream = conn.getInputStream(); - - return inputStream; - } - - private static class TrustAnyHostnameVerifier implements HostnameVerifier { - - @Override - public boolean verify(String hostname, SSLSession session) { - return true; - } - } - - private static class TrustAnyTrustManager implements X509TrustManager { - - @Override - public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException { - } - - @Override - public void checkServerTrusted(X509Certificate[] x509Certificates, String s) throws CertificateException { - } - - @Override - public X509Certificate[] getAcceptedIssuers() { - return new X509Certificate[]{}; - } - - } - - } - -} diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/DefaultConfig.java b/src/main/java/io/freeze_dolphin/ultimate_generators/DefaultConfig.java index b42479e..bfdec9e 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/DefaultConfig.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/DefaultConfig.java @@ -22,7 +22,7 @@ public class DefaultConfig { } public static String getConfig(String s) { - return Loader.getProperties().getProperty(s, map.get(s)); + return PlugGividado.getProperties().getProperty(s, map.get(s)); } } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/Loader.java b/src/main/java/io/freeze_dolphin/ultimate_generators/PlugGividado.java similarity index 60% rename from src/main/java/io/freeze_dolphin/ultimate_generators/Loader.java rename to src/main/java/io/freeze_dolphin/ultimate_generators/PlugGividado.java index 0be77da..1158e2d 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/Loader.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/PlugGividado.java @@ -1,32 +1,51 @@ package io.freeze_dolphin.ultimate_generators; -import io.freeze_dolphin.api.updating_server.UpdatingServerUtils; -import java.io.File; -import java.io.FileOutputStream; -import java.io.FileReader; -import java.io.InputStream; -import java.io.IOException; -import java.util.Properties; - +import io.freeze_dolphin.ultimate_generators.lists.UGCategories; import org.bukkit.plugin.Plugin; import org.bukkit.plugin.java.JavaPlugin; -import io.freeze_dolphin.api.updating_server.UpdatingServerUtils.VersionInfo; -import static io.freeze_dolphin.api.updating_server.UpdatingServerUtils.getLatestVersion; -import static io.freeze_dolphin.api.updating_server.UpdatingServerUtils.getVersionInfo; -import io.freeze_dolphin.ultimate_generators.lists.UGCategories; -import io.freeze_dolphin.ultimate_generators.lists.UGItems; -import io.freeze_dolphin.ultimate_generators.lists.UGRecipeType; -import java.security.KeyManagementException; -import java.security.NoSuchAlgorithmException; -import java.security.NoSuchProviderException; -import org.dom4j.DocumentException; +import java.io.*; +import java.util.Properties; -public class Loader extends JavaPlugin { +public class PlugGividado extends JavaPlugin { private static Plugin plug; private static Properties pp; + public static Plugin getImplement() { + return plug; + } + + public static void info(String msg) { + getImplement().getLogger().info(msg); + } + + public static void severe(String msg) { + getImplement().getLogger().severe(msg); + } + + public static Properties getProperties() { + return pp; + } + + public static boolean getDisplaySw() { + + return Boolean.parseBoolean(getProperties().getProperty("show-machine-indicator", "true")); + + /* + * YamlConfiguration pdf = new YamlConfiguration(); try { pdf.load(new + * InputStreamReader(Loader.class.getClassLoader().getResourceAsStream( + * "plugin.yml"))); } catch (Exception e) { e.printStackTrace(); + * plug.getLogger() + * .severe("The internal plugin description file 'plugin.yml' cannot be read, self-disabling..." + * ); plug.getServer().getPluginManager().disablePlugin(plug); } + * + * return pdf.contains("show-machine-indicator") && + * pdf.isBoolean("show-machine-indicator") && + * pdf.getBoolean("show-machine-indicator"); + */ + } + @Override @SuppressWarnings("CallToPrintStackTrace") public void onEnable() { @@ -41,10 +60,11 @@ public void onEnable() { info("Configuration is not exist, creating one..."); if (!ppf.getParentFile().exists()) { - ppf.getParentFile().mkdirs(); + if (!ppf.getParentFile().mkdirs()) throw new IOException("Couldn't make directories."); } InputStream is = this.getClass().getClassLoader().getResourceAsStream("config.properties"); try (FileOutputStream fos = new FileOutputStream(ppf)) { + assert is != null; byte[] b = new byte[is.available()]; while (is.read(b) != -1) { fos.write(b); @@ -62,14 +82,12 @@ public void onEnable() { this.setEnabled(false); return; } - + // load try { - new UGItems(this); - new UGRecipeType(); new UGCategories(this); - UGImplementor implementor = new UGImplementor(this); + UGImplementor implementor = new UGImplementor(); implementor.implementIngredients(); implementor.implementMachines(); implementor.implementSingleGenerators(); @@ -82,29 +100,16 @@ public void onEnable() { this.setEnabled(false); } - // initialize configurations /* - * (Deprecated) try { Class ugItemClass = - * Class.forName("io.github.freeze_dolphin.ultimate_generators.lists.UGItems"); - * for (Field f : ugItemClass.getFields()) { if - * (f.isAnnotationPresent(MachineItemStack.class)) { if - * (SlimefunItem.getByID(f.getName()) == null) { - * severe("An unexpected error occurred: Item '" + f.getName() + - * "' is not loaded!"); continue; } else { - * getUGConfig().setMachineValue(f.getName(), "speed", 1); } } else { continue; - * } } } catch (ClassNotFoundException e) { e.printStackTrace(); - * severe("In-plugin file 'UGItems.class' is lost, self-disabling..."); - * this.setEnabled(false); } - */ Utils.asyncDelay(() -> { if (Boolean.parseBoolean(getProperties().getProperty("enable-update-notification", "true"))) { info("Checking Updates..."); try { UpdatingServerUtils.setTimeOut(Integer.parseInt(DefaultConfig.getConfig("update-check-timeout"))); - String latest = getLatestVersion(Loader.getImplement().getName()); - String current = Loader.getImplement().getDescription().getVersion(); + String latest = getLatestVersion(PlugGividado.getImplement().getName()); + String current = PlugGividado.getImplement().getDescription().getVersion(); if (Integer.parseInt(latest.replaceAll("\\.", "")) > Integer.parseInt(current.replaceAll("\\.", ""))) { - VersionInfo vi = getVersionInfo(Loader.getImplement().getName(), latest); + VersionInfo vi = getVersionInfo(PlugGividado.getImplement().getName(), latest); warn("Update detected: v" + latest + " (Current: v" + current + ")" + "\n\t· " + vi.getName() + "\n\t· " + vi.getDescription() + "\n\t· " + vi.getURL()); } else { info("You are now in the latest version!"); @@ -118,43 +123,6 @@ public void onEnable() { } } }); - } - - public static Plugin getImplement() { - return plug; - } - - public static void info(String msg) { - getImplement().getLogger().info(msg); - } - - public static void warn(String msg) { - getImplement().getLogger().warning(msg); - } - - public static void severe(String msg) { - getImplement().getLogger().severe(msg); - } - - public static Properties getProperties() { - return pp; - } - - public static boolean getDisplaySw() { - - return Boolean.parseBoolean(getProperties().getProperty("show-machine-indicator", "true")); - - /* - * YamlConfiguration pdf = new YamlConfiguration(); try { pdf.load(new - * InputStreamReader(Loader.class.getClassLoader().getResourceAsStream( - * "plugin.yml"))); } catch (Exception e) { e.printStackTrace(); - * plug.getLogger() - * .severe("The internal plugin description file 'plugin.yml' cannot be read, self-disabling..." - * ); plug.getServer().getPluginManager().disablePlugin(plug); } - * - * return pdf.contains("show-machine-indicator") && - * pdf.isBoolean("show-machine-indicator") && - * pdf.getBoolean("show-machine-indicator"); */ } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/UGImplementor.java b/src/main/java/io/freeze_dolphin/ultimate_generators/UGImplementor.java index 1f9970e..0e638ba 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/UGImplementor.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/UGImplementor.java @@ -1,9 +1,5 @@ package io.freeze_dolphin.ultimate_generators; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.inventory.ItemStack; - import io.freeze_dolphin.ultimate_generators.lists.UGCategories; import io.freeze_dolphin.ultimate_generators.lists.UGItems; import io.freeze_dolphin.ultimate_generators.lists.UGRecipeType; @@ -17,10 +13,8 @@ import io.freeze_dolphin.ultimate_generators.objects.machines.ender_crystal_generator.EnderCrystalStabilizer; import io.freeze_dolphin.ultimate_generators.objects.machines.rainbow_generator.RainbowGenerator; import io.freeze_dolphin.ultimate_generators.objects.tasks.ReinforcedRainbowTicker; - import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem; -import me.mrCookieSlime.Slimefun.SlimefunStartup; import me.mrCookieSlime.Slimefun.Lists.Categories; import me.mrCookieSlime.Slimefun.Lists.RecipeType; import me.mrCookieSlime.Slimefun.Lists.SlimefunItems; @@ -28,9 +22,12 @@ import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AReactor; import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineFuel; import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.handlers.BlockTicker; -import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.handlers.ItemHandler; +import me.mrCookieSlime.Slimefun.SlimefunStartup; import me.mrCookieSlime.Slimefun.api.Slimefun; import me.mrCookieSlime.Slimefun.api.energy.EnergyTicker; +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.inventory.ItemStack; class UGImplementor { @@ -43,12 +40,6 @@ class UGImplementor { private static final ItemStack ALUI = SlimefunItems.ALUMINUM_INGOT; private static final ItemStack COPPI = SlimefunItems.COPPER_INGOT; - private final Loader plug; - - public UGImplementor(Loader plug) { - this.plug = plug; - } - public void implementIngredients() { (new SlimefunItem(UGCategories.TECH_MISC, UGItems.MODULAR_GENERATOR_REGULATOR, "MODULAR_GENERATOR_REGULATOR", @@ -57,21 +48,21 @@ public void implementIngredients() { SlimefunItems.COBALT_INGOT, SlimefunItems.ADVANCED_CIRCUIT_BOARD, SlimefunItems.ENERGY_REGULATOR, SlimefunItems.ADVANCED_CIRCUIT_BOARD, SlimefunItems.COBALT_INGOT, SlimefunItems.ADVANCED_CIRCUIT_BOARD, SlimefunItems.BILLON_INGOT))) - .register(false); + .register(false); (new SlimefunItem(UGCategories.TECH_MISC, UGItems.SOLID_STORAGE_EXPANSION, "SOLID_STORAGE_EXPANSION", RecipeType.ENHANCED_CRAFTING_TABLE, Utils.buildRecipe(null, SlimefunItems.CARGO_OUTPUT, null, ALUI, - SlimefunItems.ANDROID_INTERFACE_ITEMS, ALUI, ALUI, mat(Material.GLASS), ALUI))).register(false); + SlimefunItems.ANDROID_INTERFACE_ITEMS, ALUI, ALUI, mat(Material.GLASS), ALUI))).register(false); (new SlimefunItem(UGCategories.TECH_MISC, UGItems.LIQUID_STORAGE_EXPANSION, "LIQUID_STORAGE_EXPANSION", RecipeType.ENHANCED_CRAFTING_TABLE, Utils.buildRecipe(null, SlimefunItems.CARGO_OUTPUT, null, ALUI, - SlimefunItems.ANDROID_INTERFACE_FUEL, ALUI, ALUI, mat(Material.GLASS), ALUI))).register(false); + SlimefunItems.ANDROID_INTERFACE_FUEL, ALUI, ALUI, mat(Material.GLASS), ALUI))).register(false); (new SlimefunItem( UGCategories.ELECTRICITY_STORAGE, UGItems.ELECTRICITY_STORAGE_UNIT, "ELECTRICITY_STORAGE_UNIT", RecipeType.ENHANCED_CRAFTING_TABLE, Utils.buildRecipe(HGLASS, SlimefunItems.REDSTONE_ALLOY, HGLASS, - ALUI, SlimefunItems.BATTERY, ALUI, HGLASS, SlimefunItems.REDSTONE_ALLOY, HGLASS))) - .register(false); + ALUI, SlimefunItems.BATTERY, ALUI, HGLASS, SlimefunItems.REDSTONE_ALLOY, HGLASS))) + .register(false); (new SlimefunItem(UGCategories.ELECTRICITY_STORAGE, UGItems.ADVANCED_BATTERY, "ADVANCED_BATTERY", RecipeType.ENHANCED_CRAFTING_TABLE, @@ -94,7 +85,7 @@ public void implementIngredients() { RecipeType.ENHANCED_CRAFTING_TABLE, Utils.buildRecipe(UGItems.BETA_BATTERY, ACIRCUIT, UGItems.BETA_BATTERY, COPPI, UGItems.ELECTRICITY_STORAGE_UNIT, COPPI, UGItems.BETA_BATTERY, ACIRCUIT, UGItems.BETA_BATTERY))) - .register(false); + .register(false); (new SlimefunItem(Categories.RESOURCES, UGItems.DIESEL_BUCKET, "DIESEL_BUCKET", new RecipeType( @@ -115,22 +106,22 @@ public void implementIngredients() { : null))).register(false); (new SlimefunItem(Categories.LUMPS_AND_MAGIC, UGItems.ENDER_LUMP_4, "ENDER_LUMP_4", RecipeType.ANCIENT_ALTAR, - new ItemStack[] { SlimefunItems.ENDER_LUMP_3, SlimefunItems.ENDER_LUMP_3, SlimefunItems.ENDER_LUMP_3, + new ItemStack[]{SlimefunItems.ENDER_LUMP_3, SlimefunItems.ENDER_LUMP_3, SlimefunItems.ENDER_LUMP_3, SlimefunItems.ENDER_LUMP_3, SlimefunItems.ENDER_LUMP_3, SlimefunItems.ENDER_LUMP_3, - SlimefunItems.ENDER_LUMP_3, SlimefunItems.ENDER_LUMP_3, SlimefunItems.ENDER_LUMP_3 })) - .register(false); + SlimefunItems.ENDER_LUMP_3, SlimefunItems.ENDER_LUMP_3, SlimefunItems.ENDER_LUMP_3})) + .register(false); (new SlimefunItem(Categories.LUMPS_AND_MAGIC, UGItems.RUNE_COMPLEX_ENDER, "RUNE_COMPLEX_ENDER", RecipeType.ANCIENT_ALTAR, - new ItemStack[] { SlimefunItems.RUNE_ENDER, SlimefunItems.GOLD_24K, SlimefunItems.RUNE_ENDER, + new ItemStack[]{SlimefunItems.RUNE_ENDER, SlimefunItems.GOLD_24K, SlimefunItems.RUNE_ENDER, UGItems.ENDER_LUMP_4, SlimefunItems.STONE_CHUNK, UGItems.ENDER_LUMP_4, SlimefunItems.RUNE_ENDER, - SlimefunItems.GOLD_24K, SlimefunItems.RUNE_ENDER })).register(false); + SlimefunItems.GOLD_24K, SlimefunItems.RUNE_ENDER})).register(false); (new SlimefunItem(Categories.MISC, UGItems.ENDER_CRYSTAL_ENHANCER, "ENERGY_ACUMULATED_ENDER_CRYSTAL", RecipeType.ANCIENT_ALTAR, - new ItemStack[] { mat(Material.GLASS), mat(Material.GLASS), mat(Material.GLASS), mat(Material.GLASS), + new ItemStack[]{mat(Material.GLASS), mat(Material.GLASS), mat(Material.GLASS), mat(Material.GLASS), UGItems.ENDER_LUMP_4, mat(Material.GLASS), mat(Material.GLASS), mat(Material.GLASS), - mat(Material.GLASS) })).register(false); + mat(Material.GLASS)})).register(false); Slimefun.addWikiPage("ENERGY_ACUMULATED_ENDER_CRYSTAL", "https://gitee.com/freeze-dolphin/UltimateGenerators-wiki/blob/master/Generator-(Ender-Crystal-Generator).md"); @@ -140,35 +131,35 @@ UGItems.ENDER_LUMP_4, mat(Material.GLASS), mat(Material.GLASS), mat(Material.GLA (new SlimefunItem(Categories.MISC, UGItems.NEUTRON_MODERATOR, "NEUTRON_MODERATOR", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { mat(Material.GLASS), UGItems.HEAVY_WATER_BUCKET, mat(Material.GLASS), + new ItemStack[]{mat(Material.GLASS), UGItems.HEAVY_WATER_BUCKET, mat(Material.GLASS), UGItems.HEAVY_WATER_BUCKET, SlimefunItems.CARBON_CHUNK, UGItems.HEAVY_WATER_BUCKET, - mat(Material.GLASS), UGItems.HEAVY_WATER_BUCKET, mat(Material.GLASS) })).register(false); + mat(Material.GLASS), UGItems.HEAVY_WATER_BUCKET, mat(Material.GLASS)})).register(false); (new SlimefunItem(Categories.TECH_MISC, UGItems.THERMAL_NEUTRON_REACTOR_COOLANT_CELL, "THERMAL_NEUTRON_REACTOR_COOLANT_CELL", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { null, null, UGItems.HEAVY_WATER_BUCKET, null, SlimefunItems.REACTOR_COOLANT_CELL, - null, UGItems.HEAVY_WATER_BUCKET, null, null })).register(false); + new ItemStack[]{null, null, UGItems.HEAVY_WATER_BUCKET, null, SlimefunItems.REACTOR_COOLANT_CELL, + null, UGItems.HEAVY_WATER_BUCKET, null, null})).register(false); (new SlimefunItem(Categories.RESOURCES, UGItems.RAINBOW_ALLOY, "RAINBOW_ALLOY", RecipeType.SMELTERY, Utils.buildRecipe(SlimefunItems.REDSTONE_ALLOY, SlimefunItems.CORINTHIAN_BRONZE_INGOT, SlimefunItems.COBALT_INGOT, SlimefunItems.MAGIC_LUMP_3, SlimefunItems.RUNE_RAINBOW))) - .register(false); + .register(false); SlimefunStartup.getItemCfg().setValue("REINFORCED_RAINBOW_GLASS.allow-disenchanting", false); BlockTicker fast = new ReinforcedRainbowTicker.Fast(); (new SlimefunItem(Categories.MAGIC, UGItems.REINFORCED_RAINBOW_GLASS, "REINFORCED_RAINBOW_GLASS", RecipeType.ANCIENT_ALTAR, - new ItemStack[] { SlimefunItems.RAINBOW_GLASS, SlimefunItems.RAINBOW_GLASS, SlimefunItems.RAINBOW_GLASS, + new ItemStack[]{SlimefunItems.RAINBOW_GLASS, SlimefunItems.RAINBOW_GLASS, SlimefunItems.RAINBOW_GLASS, SlimefunItems.REINFORCED_ALLOY_INGOT, UGItems.RAINBOW_ALLOY, SlimefunItems.REINFORCED_ALLOY_INGOT, SlimefunItems.RAINBOW_GLASS, SlimefunItems.RAINBOW_GLASS, - SlimefunItems.RAINBOW_GLASS }, + SlimefunItems.RAINBOW_GLASS}, new CustomItem(UGItems.REINFORCED_RAINBOW_GLASS, Integer.parseInt(DefaultConfig.getConfig("reinforced-rainbow-glass-crafting-number-on-once"))))) - .register(false, - new ItemHandler[] { Boolean.parseBoolean( - DefaultConfig.getConfig("reinforced-rainbow-glass-twinkling-randomly")) - ? new ReinforcedRainbowTicker.Fancy() - : fast }); + .register(false, + Boolean.parseBoolean( + DefaultConfig.getConfig("reinforced-rainbow-glass-twinkling-randomly")) + ? new ReinforcedRainbowTicker.Fancy() + : fast); Slimefun.addWikiPage("REINFORCED_RAINBOW_GLASS", "https://gitee.com/freeze-dolphin/UltimateGenerators-wiki/blob/master/Generator-(Rainbow-Reactor).md"); @@ -193,8 +184,8 @@ public void implementMachines() { (new BContainer(UGCategories.MACHINES, UGItems.BIOMASS_EXTRACTION_MACHINE, "BIOMASS_EXTRACTION_MACHINE", RecipeType.ENHANCED_CRAFTING_TABLE, Utils.buildRecipe(ALUI, mat(Material.PISTON_BASE), ALUI, HGLASS, - COIL, HGLASS, COIL, mat(Material.HOPPER), COIL), - Loader.getDisplaySw()) { + COIL, HGLASS, COIL, mat(Material.HOPPER), COIL), + PlugGividado.getDisplaySw()) { @Override public ItemStack getProgressBar() { @@ -203,24 +194,24 @@ public ItemStack getProgressBar() { @Override public void registerDefaultRecipes() { - registerRecipe(4, new ItemStack[] { new ItemStack(Material.SLIME_BALL, 2), mat(Material.BUCKET) }, - new ItemStack[] { UGItems.BIOMASS_BUCKET }); + registerRecipe(4, new ItemStack[]{new ItemStack(Material.SLIME_BALL, 2), mat(Material.BUCKET)}, + new ItemStack[]{UGItems.BIOMASS_BUCKET}); registerRecipe(4, - new ItemStack[] { new ItemStack(Material.NETHER_WART_BLOCK, 2), mat(Material.BUCKET) }, - new ItemStack[] { UGItems.BIOMASS_BUCKET }); + new ItemStack[]{new ItemStack(Material.NETHER_WART_BLOCK, 2), mat(Material.BUCKET)}, + new ItemStack[]{UGItems.BIOMASS_BUCKET}); - registerRecipe(8, new ItemStack[] { new ItemStack(Material.LEAVES, 32), mat(Material.BUCKET) }, - new ItemStack[] { UGItems.BIOMASS_BUCKET }); - registerRecipe(8, new ItemStack[] { new ItemStack(Material.LEAVES_2, 32), mat(Material.BUCKET) }, - new ItemStack[] { UGItems.BIOMASS_BUCKET }); - registerRecipe(8, new ItemStack[] { new ItemStack(Material.SEEDS, 16), mat(Material.BUCKET) }, - new ItemStack[] { UGItems.BIOMASS_BUCKET }); - registerRecipe(8, new ItemStack[] { new ItemStack(Material.BEETROOT_SEEDS, 16), mat(Material.BUCKET) }, - new ItemStack[] { UGItems.BIOMASS_BUCKET }); - registerRecipe(8, new ItemStack[] { new ItemStack(Material.MELON_SEEDS, 16), mat(Material.BUCKET) }, - new ItemStack[] { UGItems.BIOMASS_BUCKET }); - registerRecipe(8, new ItemStack[] { new ItemStack(Material.PUMPKIN_SEEDS, 16), mat(Material.BUCKET) }, - new ItemStack[] { UGItems.BIOMASS_BUCKET }); + registerRecipe(8, new ItemStack[]{new ItemStack(Material.LEAVES, 32), mat(Material.BUCKET)}, + new ItemStack[]{UGItems.BIOMASS_BUCKET}); + registerRecipe(8, new ItemStack[]{new ItemStack(Material.LEAVES_2, 32), mat(Material.BUCKET)}, + new ItemStack[]{UGItems.BIOMASS_BUCKET}); + registerRecipe(8, new ItemStack[]{new ItemStack(Material.SEEDS, 16), mat(Material.BUCKET)}, + new ItemStack[]{UGItems.BIOMASS_BUCKET}); + registerRecipe(8, new ItemStack[]{new ItemStack(Material.BEETROOT_SEEDS, 16), mat(Material.BUCKET)}, + new ItemStack[]{UGItems.BIOMASS_BUCKET}); + registerRecipe(8, new ItemStack[]{new ItemStack(Material.MELON_SEEDS, 16), mat(Material.BUCKET)}, + new ItemStack[]{UGItems.BIOMASS_BUCKET}); + registerRecipe(8, new ItemStack[]{new ItemStack(Material.PUMPKIN_SEEDS, 16), mat(Material.BUCKET)}, + new ItemStack[]{UGItems.BIOMASS_BUCKET}); } @Override @@ -245,95 +236,95 @@ public int getEnergyConsumption() { * SlimefunItems.BLISTERING_INGOT_3, SlimefunItems.HARDENED_GLASS, * SlimefunItems.ADVANCED_CIRCUIT_BOARD, SlimefunItems.MEDIUM_CAPACITOR, * SlimefunItems.RUNE_ENDER), false) { - * + * * @Override public ItemStack getProgressBar() { return * mat(Material.ENDER_PEARL); } - * + * * @Override public void registerDefaultRecipes() { registerRecipe(320, new * ItemStack[] {SlimefunItems.ENDER_LUMP_3, SlimefunItems.SILVER_DUST}, new * ItemStack[] {UGItems.ENDERIUM_DUST}); registerRecipe(1200, new ItemStack[] * {SlimefunItems.ENDER_LUMP_3, SlimefunItems.SILVER_INGOT}, new ItemStack[] * {UGItems.ENDERIUM_INGOT}); } - * + * * @Override public String getInventoryTitle() { return "&5末影之尘精炼机"; } - * + * * @Override public int getEnergyConsumption() { return 16; } - * + * * }).registerChargeableBlock(false, 256); */ (new SlimefunItem(UGCategories.ELECTRICITY_STORAGE, UGItems.GLASS_ELECTRICITY_TRANSMITTER, "GLASS_ELECTRICITY_TRANSMITTER", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { null, ALUI, null, ALUI, UGItems.ELECTRICITY_STORAGE_UNIT, ALUI, null, ALUI, null }, - new CustomItem(UGItems.REINFORCED_RAINBOW_GLASS, + new ItemStack[]{null, ALUI, null, ALUI, UGItems.ELECTRICITY_STORAGE_UNIT, ALUI, null, ALUI, null}, + new CustomItem(UGItems.GLASS_ELECTRICITY_TRANSMITTER, Integer.parseInt( DefaultConfig.getConfig("glass-electricity-transmitter-crafting-number-on-once"))))) - .registerDistibutingCapacitor(false, 16); + .registerDistibutingCapacitor(false, 16); (new SlimefunItem(UGCategories.ELECTRICITY_STORAGE, UGItems.BASIC_ELECTRICITY_STORAGE, "BASIC_ELECTRICITY_STORAGE", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { SlimefunItems.BATTERY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.BATTERY, + new ItemStack[]{SlimefunItems.BATTERY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.BATTERY, SlimefunItems.REDSTONE_ALLOY, ALUI, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.BATTERY, - SlimefunItems.REDSTONE_ALLOY, SlimefunItems.BATTERY })).registerDistibutingCapacitor(false, - 640); + SlimefunItems.REDSTONE_ALLOY, SlimefunItems.BATTERY})).registerDistibutingCapacitor(false, + 640); (new SlimefunItem(UGCategories.ELECTRICITY_STORAGE, UGItems.ADVANCED_ELECTRICITY_STORAGE, "ADVANCED_ELECTRICITY_STORAGE", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { UGItems.ADVANCED_BATTERY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, + new ItemStack[]{UGItems.ADVANCED_BATTERY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, UGItems.BASIC_ELECTRICITY_STORAGE, SlimefunItems.REDSTONE_ALLOY, - SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, UGItems.ADVANCED_BATTERY })) - .registerDistibutingCapacitor(false, 2560); + SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, UGItems.ADVANCED_BATTERY})) + .registerDistibutingCapacitor(false, 2560); (new SlimefunItem(UGCategories.ELECTRICITY_STORAGE, UGItems.ALPHA_ELECTRICITY_STORAGE, "ALPHA_ELECTRICITY_STORAGE", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { UGItems.ALPHA_BATTERY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, + new ItemStack[]{UGItems.ALPHA_BATTERY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, UGItems.ADVANCED_ELECTRICITY_STORAGE, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, - UGItems.ALPHA_BATTERY })).registerDistibutingCapacitor(false, 5120); + UGItems.ALPHA_BATTERY})).registerDistibutingCapacitor(false, 5120); (new SlimefunItem(UGCategories.ELECTRICITY_STORAGE, UGItems.BETA_ELECTRICITY_STORAGE, "BETA_ELECTRICITY_STORAGE", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { UGItems.BETA_BATTERY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, + new ItemStack[]{UGItems.BETA_BATTERY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, UGItems.ALPHA_ELECTRICITY_STORAGE, SlimefunItems.REDSTONE_ALLOY, - SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, UGItems.BETA_BATTERY })) - .registerDistibutingCapacitor(false, 40960); + SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, UGItems.BETA_BATTERY})) + .registerDistibutingCapacitor(false, 40960); (new SlimefunItem(UGCategories.ELECTRICITY_STORAGE, UGItems.GAMMA_ELECTRICITY_STORAGE, "GAMMA_ELECTRICITY_STORAGE", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { UGItems.GAMMA_BATTERY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, + new ItemStack[]{UGItems.GAMMA_BATTERY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, UGItems.BETA_ELECTRICITY_STORAGE, SlimefunItems.REDSTONE_ALLOY, - SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, UGItems.GAMMA_BATTERY })) - .registerDistibutingCapacitor(false, 327680); + SlimefunItems.REDSTONE_ALLOY, SlimefunItems.REDSTONE_ALLOY, UGItems.GAMMA_BATTERY})) + .registerDistibutingCapacitor(false, 327680); (new SlimefunItem(UGCategories.ELECTRICITY_STORAGE, UGItems.LAMBDA_ELECTRICITY_STORAGE, "LAMBDA_ELECTRICITY_STORAGE", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { UGItems.GAMMA_ELECTRICITY_STORAGE, UGItems.GAMMA_ELECTRICITY_STORAGE, + new ItemStack[]{UGItems.GAMMA_ELECTRICITY_STORAGE, UGItems.GAMMA_ELECTRICITY_STORAGE, UGItems.GAMMA_ELECTRICITY_STORAGE, UGItems.GAMMA_ELECTRICITY_STORAGE, SlimefunItems.REDSTONE_ALLOY, UGItems.GAMMA_ELECTRICITY_STORAGE, UGItems.GAMMA_ELECTRICITY_STORAGE, UGItems.GAMMA_ELECTRICITY_STORAGE, - UGItems.GAMMA_ELECTRICITY_STORAGE })).registerDistibutingCapacitor(false, 2621440); + UGItems.GAMMA_ELECTRICITY_STORAGE})).registerDistibutingCapacitor(false, 2621440); Slimefun.addWikiPage("LAMBDA_ELECTRICITY_STORAGE", "https://gitee.com/freeze-dolphin/UltimateGenerators-wiki/blob/master/Easter-(Electricity-Storage).md"); SlimefunStartup.getItemCfg().setValue("KAPA_ELECTRICITY_STORAGE.hide-in-guide", true); (new SlimefunItem(UGCategories.ELECTRICITY_STORAGE, UGItems.KAPA_ELECTRICITY_STORAGE, - "KAPA_ELECTRICITY_STORAGE", UGRecipeType.NULL, new ItemStack[] {})).registerDistibutingCapacitor(false, - 20971520); + "KAPA_ELECTRICITY_STORAGE", UGRecipeType.NULL, new ItemStack[]{})).registerDistibutingCapacitor(false, + 20971520); SlimefunStartup.getItemCfg().setValue("PHI_ELECTRICITY_STORAGE.hide-in-guide", true); (new SlimefunItem(UGCategories.ELECTRICITY_STORAGE, UGItems.PHI_ELECTRICITY_STORAGE, "PHI_ELECTRICITY_STORAGE", - UGRecipeType.NULL, new ItemStack[] {})).registerDistibutingCapacitor(false, 167772160); + UGRecipeType.NULL, new ItemStack[]{})).registerDistibutingCapacitor(false, 167772160); (new BContainer(UGCategories.MACHINES, UGItems.HEAVY_WATER_REFINING_MACHINE, "HEAVY_WATER_REFINING_MACHINE", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { HGLASS, null, HGLASS, COIL, SlimefunItems.ELECTRIC_DUST_WASHER_2, COIL, BCIRCUIT, - SlimefunItems.MEDIUM_CAPACITOR, BCIRCUIT }, - Loader.getDisplaySw()) { + new ItemStack[]{HGLASS, null, HGLASS, COIL, SlimefunItems.ELECTRIC_DUST_WASHER_2, COIL, BCIRCUIT, + SlimefunItems.MEDIUM_CAPACITOR, BCIRCUIT}, + PlugGividado.getDisplaySw()) { @Override public void registerDefaultRecipes() { - registerRecipe(120, new ItemStack[] { mat(Material.WATER_BUCKET) }, - new ItemStack[] { UGItems.HEAVY_WATER_BUCKET }); + registerRecipe(120, new ItemStack[]{mat(Material.WATER_BUCKET)}, + new ItemStack[]{UGItems.HEAVY_WATER_BUCKET}); } @Override @@ -359,16 +350,16 @@ public void implementSingleGenerators() { (new SlimefunItem(UGCategories.SINGLE_GENERATOR, UGItems.ENDLESS_GENERATOR, "ENDLESS_GENERATOR", UGRecipeType.NULL, Utils.buildRecipe(), true)).register(false, new EnergyTicker() { - @Override - public boolean explode(Location paramLocation) { - return false; - } + @Override + public boolean explode(Location paramLocation) { + return false; + } - @Override - public double generateEnergy(Location l, SlimefunItem paramSlimefunItem, Config paramConfig) { - return l.getBlock().getBlockPower() * 4096; - } - }); + @Override + public double generateEnergy(Location l, SlimefunItem paramSlimefunItem, Config paramConfig) { + return l.getBlock().getBlockPower() * 4096; + } + }); (new BGenerator(UGCategories.SINGLE_GENERATOR, UGItems.NETHER_STAR_GENERATOR, "NETHER_STAR_GENERATOR", RecipeType.ENHANCED_CRAFTING_TABLE, @@ -376,7 +367,7 @@ public double generateEnergy(Location l, SlimefunItem paramSlimefunItem, Config SlimefunItems.REINFORCED_ALLOY_INGOT, SlimefunItems.PLASTIC_SHEET, SlimefunItems.WITHER_PROOF_GLASS, SlimefunItems.PLASTIC_SHEET, SlimefunItems.WITHER_PROOF_GLASS, SlimefunItems.BIG_CAPACITOR, SlimefunItems.WITHER_PROOF_GLASS), - Loader.getDisplaySw()) { + PlugGividado.getDisplaySw()) { @Override public ItemStack getProgressBar() { @@ -409,7 +400,7 @@ public int getEnergyProduction() { Utils.buildRecipe(null, SlimefunItems.DURALUMIN_INGOT, null, SlimefunItems.DURALUMIN_INGOT, SlimefunItems.ELECTRIC_MOTOR, SlimefunItems.DURALUMIN_INGOT, SlimefunItems.HEATING_COIL, SlimefunItems.DURALUMIN_INGOT, SlimefunItems.HEATING_COIL), - Loader.getDisplaySw()) { + PlugGividado.getDisplaySw()) { @Override public ItemStack getProgressBar() { @@ -442,7 +433,7 @@ public int getEnergyProduction() { Utils.buildRecipe(SlimefunItems.HEATING_COIL, SlimefunItems.BILLON_INGOT, SlimefunItems.HEATING_COIL, SlimefunItems.BILLON_INGOT, SlimefunItems.ELECTRIC_MOTOR, SlimefunItems.BILLON_INGOT, SlimefunItems.HEATING_COIL, SlimefunItems.BILLON_INGOT, SlimefunItems.HEATING_COIL), - Loader.getDisplaySw()) { + PlugGividado.getDisplaySw()) { @Override public ItemStack getProgressBar() { @@ -475,7 +466,7 @@ public int getEnergyProduction() { Utils.buildRecipe(COIL, SlimefunItems.HARDENED_GLASS, COIL, SlimefunItems.PLASTIC_SHEET, SlimefunItems.RUNE_ENDER, SlimefunItems.PLASTIC_SHEET, SlimefunItems.ENDER_LUMP_3, SlimefunItems.MEDIUM_CAPACITOR, ACIRCUIT), - Loader.getDisplaySw()) { + PlugGividado.getDisplaySw()) { @Override public ItemStack getProgressBar() { @@ -507,7 +498,7 @@ public int getEnergyProduction() { RecipeType.ENHANCED_CRAFTING_TABLE, Utils.buildRecipe(SlimefunItems.LEAD_INGOT, MOTOR, SlimefunItems.LEAD_INGOT, COIL, SlimefunItems.HARDENED_GLASS, COIL, BCIRCUIT, SlimefunItems.MEDIUM_CAPACITOR, BCIRCUIT), - Loader.getDisplaySw()) { + PlugGividado.getDisplaySw()) { @Override public ItemStack getProgressBar() { @@ -538,9 +529,9 @@ public int getEnergyProduction() { }).registerChargeableBlock(false, 256); new BGenerator(UGCategories.SINGLE_GENERATOR, UGItems.COAL_GENERATOR, "ENLARGED_COAL_GENERATOR", - RecipeType.ENHANCED_CRAFTING_TABLE, new ItemStack[] { null, UGItems.SOLID_STORAGE_EXPANSION, null, ALUI, - SlimefunItems.COAL_GENERATOR, ALUI, null, UGItems.SOLID_STORAGE_EXPANSION, null }, - Loader.getDisplaySw()) { + RecipeType.ENHANCED_CRAFTING_TABLE, new ItemStack[]{null, UGItems.SOLID_STORAGE_EXPANSION, null, ALUI, + SlimefunItems.COAL_GENERATOR, ALUI, null, UGItems.SOLID_STORAGE_EXPANSION, null}, + PlugGividado.getDisplaySw()) { @Override public void registerDefaultRecipes() { @@ -589,9 +580,9 @@ public int getSpeed() { }.registerUnrechargeableBlock(false, 64); new BGenerator(UGCategories.SINGLE_GENERATOR, UGItems.BIO_REACTOR, "ENLARGED_BIO_REACTOR", - RecipeType.ENHANCED_CRAFTING_TABLE, new ItemStack[] { null, UGItems.SOLID_STORAGE_EXPANSION, null, ALUI, - SlimefunItems.BIO_REACTOR, ALUI, null, UGItems.SOLID_STORAGE_EXPANSION, null }, - Loader.getDisplaySw()) { + RecipeType.ENHANCED_CRAFTING_TABLE, new ItemStack[]{null, UGItems.SOLID_STORAGE_EXPANSION, null, ALUI, + SlimefunItems.BIO_REACTOR, ALUI, null, UGItems.SOLID_STORAGE_EXPANSION, null}, + PlugGividado.getDisplaySw()) { @Override public void registerDefaultRecipes() { @@ -658,9 +649,9 @@ public int getSpeed() { }.registerUnrechargeableBlock(false, 128); new BGenerator(UGCategories.SINGLE_GENERATOR, UGItems.LAVA_GENERATOR, "ENLARGED_LAVA_GENERATOR", - RecipeType.ENHANCED_CRAFTING_TABLE, new ItemStack[] { null, UGItems.LIQUID_STORAGE_EXPANSION, null, - ALUI, SlimefunItems.LAVA_GENERATOR, ALUI, null, UGItems.LIQUID_STORAGE_EXPANSION, null }, - Loader.getDisplaySw()) { + RecipeType.ENHANCED_CRAFTING_TABLE, new ItemStack[]{null, UGItems.LIQUID_STORAGE_EXPANSION, null, + ALUI, SlimefunItems.LAVA_GENERATOR, ALUI, null, UGItems.LIQUID_STORAGE_EXPANSION, null}, + PlugGividado.getDisplaySw()) { @Override public void registerDefaultRecipes() { @@ -690,9 +681,9 @@ public int getSpeed() { }.registerUnrechargeableBlock(false, 512); new BGenerator(UGCategories.SINGLE_GENERATOR, UGItems.COMBUSTION_REACTOR, "ENLARGED_COMBUSTION_REACTOR", - RecipeType.ENHANCED_CRAFTING_TABLE, new ItemStack[] { null, UGItems.LIQUID_STORAGE_EXPANSION, null, - ALUI, SlimefunItems.COMBUSTION_REACTOR, ALUI, null, UGItems.LIQUID_STORAGE_EXPANSION, null }, - Loader.getDisplaySw()) { + RecipeType.ENHANCED_CRAFTING_TABLE, new ItemStack[]{null, UGItems.LIQUID_STORAGE_EXPANSION, null, + ALUI, SlimefunItems.COMBUSTION_REACTOR, ALUI, null, UGItems.LIQUID_STORAGE_EXPANSION, null}, + PlugGividado.getDisplaySw()) { @Override public void registerDefaultRecipes() { @@ -727,34 +718,34 @@ public int getSpeed() { Utils.buildRecipe(null, SlimefunItems.ELECTRIC_MOTOR, null, SlimefunItems.COMPRESSED_CARBON, new ItemStack(Material.WATER_BUCKET), SlimefunItems.COMPRESSED_CARBON, SlimefunItems.DURALUMIN_INGOT, SlimefunItems.DURALUMIN_INGOT, SlimefunItems.DURALUMIN_INGOT), - Loader.getDisplaySw())).registerChargeableBlock(false, 128); + PlugGividado.getDisplaySw())).registerChargeableBlock(false, 128); (new SlimefunItem(UGCategories.SINGLE_GENERATOR, UGItems.QUANTUM_SOLAR_GENERATOR, "QUANTUM_SOLAR_GENERATOR", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { SlimefunItems.SOLAR_GENERATOR_4, SlimefunItems.SOLAR_GENERATOR_4, + new ItemStack[]{SlimefunItems.SOLAR_GENERATOR_4, SlimefunItems.SOLAR_GENERATOR_4, SlimefunItems.SOLAR_GENERATOR_4, SlimefunItems.SOLAR_GENERATOR_4, SlimefunItems.ADVANCED_CIRCUIT_BOARD, SlimefunItems.SOLAR_GENERATOR_4, SlimefunItems.SOLAR_GENERATOR_4, SlimefunItems.SOLAR_GENERATOR_4, - SlimefunItems.SOLAR_GENERATOR_4 })).registerChargeableBlock(false, 65536, - new ItemHandler[] { new EnergyTicker() { - - @Override - public double generateEnergy(Location l, SlimefunItem item, Config data) { - if ((!l.getWorld().isChunkLoaded(l.getBlockX() >> 4, l.getBlockZ() >> 4)) - || (l.getBlock().getLightFromSky() != 15)) { - return 0.0D; - } - if ((l.getWorld().getTime() < 12300L) || (l.getWorld().getTime() > 23850L)) { - return 1024.0D; - } - return 512.0D; - } - - @Override - public boolean explode(Location l) { - return false; - } - } }); + SlimefunItems.SOLAR_GENERATOR_4})).registerChargeableBlock(false, 65536, + new EnergyTicker() { + + @Override + public double generateEnergy(Location l, SlimefunItem item, Config data) { + if ((!l.getWorld().isChunkLoaded(l.getBlockX() >> 4, l.getBlockZ() >> 4)) + || (l.getBlock().getLightFromSky() != 15)) { + return 0.0D; + } + if ((l.getWorld().getTime() < 12300L) || (l.getWorld().getTime() > 23850L)) { + return 1024.0D; + } + return 512.0D; + } + + @Override + public boolean explode(Location l) { + return false; + } + }); } @@ -762,19 +753,19 @@ public void implementModularGenerators() { (new EnderCrystalGenerator(UGCategories.MODULAR_GENERATOR, UGItems.ENDER_CRYSTAL_GENERATOR, "ENDER_CRYSTAL_GENERATOR", RecipeType.ANCIENT_ALTAR, - new ItemStack[] { SlimefunItems.RUNE_ENDER, SlimefunItems.HOLOGRAM_PROJECTOR, SlimefunItems.RUNE_ENDER, + new ItemStack[]{SlimefunItems.RUNE_ENDER, SlimefunItems.HOLOGRAM_PROJECTOR, SlimefunItems.RUNE_ENDER, SlimefunItems.FREEZER_2, SlimefunItems.CARBONADO_EDGED_CAPACITOR, UGItems.MODULAR_GENERATOR_REGULATOR, SlimefunItems.RUNE_ENDER, SlimefunItems.NUCLEAR_REACTOR, - SlimefunItems.RUNE_ENDER }) { + SlimefunItems.RUNE_ENDER}) { @Override public int getEnergyProductionPerCrystal() { - return (Integer.parseInt(String.valueOf(Loader.getProperties().get("generation-per-crystal")))); + return (Integer.parseInt(String.valueOf(PlugGividado.getProperties().get("generation-per-crystal")))); } @Override public int getWarningCrystalNum() { - return (Integer.parseInt(String.valueOf(Loader.getProperties().get("warning-crystal-number")))); + return (Integer.parseInt(String.valueOf(PlugGividado.getProperties().get("warning-crystal-number")))); } }).registerChargeableBlock(false, 14336); @@ -783,20 +774,20 @@ public int getWarningCrystalNum() { (new SlimefunItem(UGCategories.MODULAR_GENERATOR, UGItems.ENDER_CRYSTAL_GENERATOR_BASE, "ENDER_CRYSTAL_GENERATOR_BASE", RecipeType.ANCIENT_ALTAR, - new ItemStack[] { SlimefunItems.ENDER_LUMP_2, mat(Material.END_BRICKS), SlimefunItems.ENDER_LUMP_2, + new ItemStack[]{SlimefunItems.ENDER_LUMP_2, mat(Material.END_BRICKS), SlimefunItems.ENDER_LUMP_2, mat(Material.END_BRICKS), SlimefunItems.ANCIENT_PEDESTAL, mat(Material.END_BRICKS), - SlimefunItems.ENDER_LUMP_2, mat(Material.END_BRICKS), SlimefunItems.ENDER_LUMP_2 })) - .register(false); + SlimefunItems.ENDER_LUMP_2, mat(Material.END_BRICKS), SlimefunItems.ENDER_LUMP_2})) + .register(false); Slimefun.addWikiPage("ENDER_CRYSTAL_GENERATOR_BASE", "https://gitee.com/freeze-dolphin/UltimateGenerators-wiki/blob/master/Generator-(Ender-Crystal-Generator).md"); (new EnderCrystalStabilizer(UGCategories.MODULAR_GENERATOR, UGItems.ENDER_CRYSTAL_GENERATOR_STABILIZER, "ENDER_CRYSTAL_GENERATOR_STABILIZER", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 2), 1), null, + new ItemStack[]{new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 2), 1), null, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 2), 1), UGItems.ENDER_LUMP_4, SlimefunItems.ELECTRIC_MOTOR, UGItems.ENDER_LUMP_4, SlimefunItems.RAINBOW_GLASS, - UGItems.ENDER_LUMP_4, SlimefunItems.RAINBOW_GLASS })).registerChargeableBlock(false, 256); + UGItems.ENDER_LUMP_4, SlimefunItems.RAINBOW_GLASS})).registerChargeableBlock(false, 256); Slimefun.addWikiPage("ENDER_CRYSTAL_GENERATOR_STABILIZER", "https://gitee.com/freeze-dolphin/UltimateGenerators-wiki/blob/master/Generator-(Ender-Crystal-Generator).md"); @@ -812,10 +803,10 @@ SlimefunItems.ENDER_LUMP_2, mat(Material.END_BRICKS), SlimefunItems.ENDER_LUMP_2 */ (new AReactor(UGCategories.MODULAR_GENERATOR, UGItems.THERMAL_NEUTRON_REACTOR, "THERMAL_NEUTRON_REACTOR", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { SlimefunItems.BLISTERING_INGOT_3, SlimefunItems.CARBONADO_EDGED_CAPACITOR, + new ItemStack[]{SlimefunItems.BLISTERING_INGOT_3, SlimefunItems.CARBONADO_EDGED_CAPACITOR, SlimefunItems.BLISTERING_INGOT_3, SlimefunItems.REINFORCED_PLATE, UGItems.NEUTRON_MODERATOR, SlimefunItems.REINFORCED_PLATE, UGItems.NEUTRON_MODERATOR, SlimefunItems.REINFORCED_PLATE, - UGItems.NEUTRON_MODERATOR }) { + UGItems.NEUTRON_MODERATOR}) { @Override public void registerDefaultRecipes() { @@ -849,9 +840,9 @@ public void extraTick(Location l) { (new RainbowGenerator(UGCategories.MODULAR_GENERATOR, UGItems.RAINBOW_REACTOR, "RAINBOW_REACTOR", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] { UGItems.RAINBOW_ALLOY, UGItems.REINFORCED_RAINBOW_GLASS, UGItems.RAINBOW_ALLOY, + new ItemStack[]{UGItems.RAINBOW_ALLOY, UGItems.REINFORCED_RAINBOW_GLASS, UGItems.RAINBOW_ALLOY, SlimefunItems.SOLAR_GENERATOR, SlimefunItems.ANDROID_MEMORY_CORE, SlimefunItems.SOLAR_GENERATOR, - UGItems.RAINBOW_ALLOY, UGItems.RAINBOW_ALLOY, UGItems.RAINBOW_ALLOY }) { + UGItems.RAINBOW_ALLOY, UGItems.RAINBOW_ALLOY, UGItems.RAINBOW_ALLOY}) { @Override public void registerDefaultRecipes() { diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/UGListenersRegister.java b/src/main/java/io/freeze_dolphin/ultimate_generators/UGListenersRegister.java index bf27d81..0913ef6 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/UGListenersRegister.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/UGListenersRegister.java @@ -1,18 +1,19 @@ package io.freeze_dolphin.ultimate_generators; -import io.freeze_dolphin.ultimate_generators.listeners.*; +import io.freeze_dolphin.ultimate_generators.listeners.EnderCrystalEnhancerListener; +import io.freeze_dolphin.ultimate_generators.listeners.UltimateElectricityStorageCraftingListener; class UGListenersRegister { - private final Loader plug; + private final PlugGividado plug; - public UGListenersRegister(Loader loader) { + public UGListenersRegister(PlugGividado loader) { this.plug = loader; } public void registerAll() { - plug.getServer().getPluginManager().registerEvents(new UltimateElectricityStorageCraftingListener(), Loader.getImplement()); - plug.getServer().getPluginManager().registerEvents(new EnderCrystalEnhancerListener(), Loader.getImplement()); + plug.getServer().getPluginManager().registerEvents(new UltimateElectricityStorageCraftingListener(), PlugGividado.getImplement()); + plug.getServer().getPluginManager().registerEvents(new EnderCrystalEnhancerListener(), PlugGividado.getImplement()); // plug.getServer().getPluginManager().registerEvents(new ReinforcedRainbowGlassBlastProofListener(), Loader.getImplement()); } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/Utils.java b/src/main/java/io/freeze_dolphin/ultimate_generators/Utils.java index 2edfafa..e583b9c 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/Utils.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/Utils.java @@ -1,10 +1,7 @@ package io.freeze_dolphin.ultimate_generators; -import java.io.UnsupportedEncodingException; -import java.util.Base64; -import java.util.List; -import java.util.Random; - +import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib; +import me.mrCookieSlime.Slimefun.Misc.compatibles.ProtectionUtils; import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.block.Block; @@ -15,20 +12,17 @@ import org.bukkit.metadata.Metadatable; import org.bukkit.plugin.Plugin; -import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib; -import me.mrCookieSlime.Slimefun.Misc.compatibles.ProtectionUtils; +import java.nio.charset.StandardCharsets; +import java.util.Base64; +import java.util.List; +import java.util.Random; +@SuppressWarnings("unused") public class Utils { @SuppressWarnings("CallToPrintStackTrace") - public static final String db64s(final String base64) { - try { - return new String(Base64.getDecoder().decode(base64), "UTF-8"); - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); - Loader.severe("Error occourred while decoding Base64, have you ever modified the plugin?"); - return base64; - } + public static String db64s(final String base64) { + return new String(Base64.getDecoder().decode(base64), StandardCharsets.UTF_8); } public static ItemStack[] buildRecipe(ItemStack... itemStacks) { @@ -77,7 +71,7 @@ public static Location locModify(Location orig, float xOffset, float yOffset, fl } public static void asyncDelay(Runnable r) { - Bukkit.getScheduler().scheduleSyncDelayedTask(Loader.getImplement(), r); + Bukkit.getScheduler().scheduleSyncDelayedTask(PlugGividado.getImplement(), r); } public static int getRandomMetaExcept(int except) { diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/listeners/EnderCrystalEnhancerListener.java b/src/main/java/io/freeze_dolphin/ultimate_generators/listeners/EnderCrystalEnhancerListener.java index 3738375..d0407cf 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/listeners/EnderCrystalEnhancerListener.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/listeners/EnderCrystalEnhancerListener.java @@ -1,5 +1,8 @@ package io.freeze_dolphin.ultimate_generators.listeners; +import io.freeze_dolphin.ultimate_generators.lists.UGItems; +import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils; +import me.mrCookieSlime.Slimefun.Setup.SlimefunManager; import org.bukkit.ChatColor; import org.bukkit.entity.EnderCrystal; import org.bukkit.entity.Player; @@ -7,11 +10,6 @@ import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerInteractAtEntityEvent; -import io.freeze_dolphin.ultimate_generators.lists.UGItems; - -import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils; -import me.mrCookieSlime.Slimefun.Setup.SlimefunManager; - public class EnderCrystalEnhancerListener implements Listener { @EventHandler diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/listeners/ReinforcedRainbowGlassBlastProofListener.java b/src/main/java/io/freeze_dolphin/ultimate_generators/listeners/ReinforcedRainbowGlassBlastProofListener.java index dcfbe57..064f5e5 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/listeners/ReinforcedRainbowGlassBlastProofListener.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/listeners/ReinforcedRainbowGlassBlastProofListener.java @@ -1,11 +1,8 @@ package io.freeze_dolphin.ultimate_generators.listeners; -import java.util.Iterator; - import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem; import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.UnregisterReason; import me.mrCookieSlime.Slimefun.api.BlockStorage; - import org.bukkit.Material; import org.bukkit.block.Block; import org.bukkit.event.EventHandler; @@ -13,6 +10,8 @@ import org.bukkit.event.Listener; import org.bukkit.event.entity.EntityExplodeEvent; +import java.util.Iterator; + @Deprecated public class ReinforcedRainbowGlassBlastProofListener implements Listener { diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/listeners/UltimateElectricityStorageCraftingListener.java b/src/main/java/io/freeze_dolphin/ultimate_generators/listeners/UltimateElectricityStorageCraftingListener.java index 0a3a83c..bc76667 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/listeners/UltimateElectricityStorageCraftingListener.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/listeners/UltimateElectricityStorageCraftingListener.java @@ -1,5 +1,7 @@ package io.freeze_dolphin.ultimate_generators.listeners; +import io.freeze_dolphin.ultimate_generators.lists.UGItems; +import me.mrCookieSlime.CSCoreLibPlugin.general.Particles.FireworkShow; import org.bukkit.Color; import org.bukkit.Location; import org.bukkit.Particle; @@ -11,10 +13,6 @@ import org.bukkit.event.entity.EntityDamageEvent.DamageCause; import org.bukkit.inventory.ItemStack; -import io.freeze_dolphin.ultimate_generators.lists.UGItems; - -import me.mrCookieSlime.CSCoreLibPlugin.general.Particles.FireworkShow; - public class UltimateElectricityStorageCraftingListener implements Listener { @EventHandler diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/lists/UGCategories.java b/src/main/java/io/freeze_dolphin/ultimate_generators/lists/UGCategories.java index 067d102..34e136e 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/lists/UGCategories.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/lists/UGCategories.java @@ -1,14 +1,12 @@ package io.freeze_dolphin.ultimate_generators.lists; import io.freeze_dolphin.ultimate_generators.DefaultConfig; -import org.bukkit.Material; - -import io.freeze_dolphin.ultimate_generators.Loader; +import io.freeze_dolphin.ultimate_generators.PlugGividado; import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; - import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem; import me.mrCookieSlime.Slimefun.Lists.Categories; import me.mrCookieSlime.Slimefun.Objects.Category; +import org.bukkit.Material; public class UGCategories { @@ -29,7 +27,10 @@ public class UGCategories { "&7&oAuthor: Freeze_Dolphin", "&a> 点击打开"), 5); - public UGCategories(Loader plug) { + public UGCategories(PlugGividado plug) { + } + + public void setup() { if (Boolean.getBoolean(DefaultConfig.getConfig("hide-author-name-in-category"))) { MACHINES = new Category( new CustomItem(new UniversalMaterial(Material.PAPER), "&d终极发电机 &7- &9机器&r", "", "&a> 点击打开"), 4); diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/lists/UGItems.java b/src/main/java/io/freeze_dolphin/ultimate_generators/lists/UGItems.java index 81938e4..a812a8f 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/lists/UGItems.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/lists/UGItems.java @@ -1,261 +1,255 @@ package io.freeze_dolphin.ultimate_generators.lists; -import org.bukkit.ChatColor; -import org.bukkit.Color; -import org.bukkit.FireworkEffect; -import org.bukkit.Material; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.FireworkEffectMeta; -import org.bukkit.inventory.meta.PotionMeta; - -import io.freeze_dolphin.ultimate_generators.Loader; import io.freeze_dolphin.ultimate_generators.Utils; import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; - import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem; import me.mrCookieSlime.CSCoreLibPlugin.general.World.CustomSkull; +import org.bukkit.ChatColor; +import org.bukkit.Color; +import org.bukkit.FireworkEffect; +import org.bukkit.Material; import org.bukkit.enchantments.Enchantment; import org.bukkit.inventory.ItemFlag; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.FireworkEffectMeta; import org.bukkit.inventory.meta.ItemMeta; +import org.bukkit.inventory.meta.PotionMeta; @SuppressWarnings("CallToPrintStackTrace") public class UGItems { - public static ItemStack ENDLESS_GENERATOR; - - public static ItemStack NETHER_STAR_GENERATOR; - - public static ItemStack DIESEL_REFINERY; - public static ItemStack DIESEL_BUCKET; - public static ItemStack DIESEL_GENERATOR; - - public static ItemStack BIOMASS_EXTRACTION_MACHINE; - public static ItemStack BIOMASS_BUCKET; - public static ItemStack BIOFUEL_REFINERY; - public static ItemStack BIOFUEL_BUCKET; - public static ItemStack BIOFUEL_GENERATOR; - - public static ItemStack DRAGON_BREATH_GENERATOR; - - public static ItemStack REACTION_GENERATOR; - - public static ItemStack SOLID_STORAGE_EXPANSION, LIQUID_STORAGE_EXPANSION; - public static ItemStack COAL_GENERATOR, LAVA_GENERATOR, COMBUSTION_REACTOR; - public static ItemStack BIO_REACTOR = new CustomItem(new UniversalMaterial(Material.STAINED_CLAY, 5), - "&2生化反应器 &7(扩容版)&r", "", "&6发电机组", "&8\u21E8 &e\u26A1 &7128 J 缓存", "&8\u21E8 &e\u26A1 &78 J/s"); - - public static ItemStack ELECTRICITY_STORAGE_UNIT; - public static ItemStack ADVANCED_BATTERY, ALPHA_BATTERY, BETA_BATTERY, GAMMA_BATTERY; - public static ItemStack BASIC_ELECTRICITY_STORAGE, ADVANCED_ELECTRICITY_STORAGE, ALPHA_ELECTRICITY_STORAGE, - BETA_ELECTRICITY_STORAGE, GAMMA_ELECTRICITY_STORAGE, LAMBDA_ELECTRICITY_STORAGE, - KAPA_ELECTRICITY_STORAGE, PHI_ELECTRICITY_STORAGE; - - public static ItemStack MAGNESIUM_SALT, MAGNESIUM_GENERATOR; - - public static ItemStack QUANTUM_SOLAR_GENERATOR; - - public static ItemStack MODULAR_GENERATOR_REGULATOR; - - public static ItemStack ENDER_CRYSTAL_GENERATOR, ENDER_CRYSTAL_GENERATOR_BASE, - ENDER_CRYSTAL_GENERATOR_STABILIZER, ENDER_CRYSTAL_ENHANCER; - public static ItemStack RUNE_COMPLEX_ENDER, ENDER_LUMP_4; - - public static ItemStack HEAVY_WATER_BUCKET, HEAVY_WATER_REFINING_MACHINE; - - public static ItemStack THERMAL_NEUTRON_REACTOR, THERMAL_NEUTRON_REACTOR_COOLANT_CELL; - public static ItemStack NEUTRON_MODERATOR; - - public static ItemStack RAINBOW_ALLOY, REINFORCED_RAINBOW_GLASS; - public static ItemStack RAINBOW_REACTOR; - - public static ItemStack GLASS_ELECTRICITY_TRANSMITTER; - - static { - try { - ENDLESS_GENERATOR = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvN2Y5ZjM1NmY1ZmU3ZDFiYzkyY2RkZmFlYmEzZWU3NzNhYzlkZjFjYzRkMWMyZjhmZTVmNDcwMTMwMzJjNTUxZCJ9fX0="), - "&6无尽发电机&r", "", "&r当接收到红石信号时工作", "", "&5创造发电机", "&8⇨ &e⚡ &7发电效率由接收到的红石信号强度决定"); - - NETHER_STAR_GENERATOR = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 7), - "&d下届之星发电机&r", "", "&4终极发电机", "&8⇨ &e⚡ &71024 J 缓存", "&8⇨ &e⚡ &7128 J/s"); - - DIESEL_REFINERY = new CustomItem(new UniversalMaterial(Material.PISTON_BASE), "&c柴油精炼器&r", "", - "&r精炼石油生产柴油"); - DIESEL_BUCKET = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNWFmZTgzNjkyZjcxZjA1ZDExM2Q4OTFmOGI4MzhlMDdkN2NiODE0MTliMjBkYzFiMjA5ZWI4NGY3NzFmMGM5ZiJ9fX0="), - "&r桶装柴油&r"); - DIESEL_GENERATOR = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMWVlMTE1NjU2YmMyMjA3NTVjNmQ1YmM4NzI2MGM4MjE0MWMyNTNhMzRiYzNkYjJiZDcyYjcyN2JlZmNjMCJ9fX0="), - "&7柴油发电机&r", "", "&6高级发电机", "&8⇨ &e⚡ &7256 J 缓存", "&8⇨ &e⚡ &736 J/s"); - - BIOMASS_EXTRACTION_MACHINE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 5), - "&a生物质萃取机&r", "", "&a中级机器", "&8⇨ &e⚡ &76 J/s"); - BIOMASS_BUCKET = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMzdkYmYxNTAzYmQxYTI3YTQ1N2M1MDk3NDRkNTIwZWVjMzhlM2Q0OGQ4YTNiZmUzY2FkZTc2Nzc4OTY0MmYifX19"), - "&r桶装生物质&r"); - BIOFUEL_REFINERY = new CustomItem(new UniversalMaterial(Material.PISTON_BASE), "&c生物燃油精炼器&r", - "", "&r精炼生物质生产生物燃油"); - BIOFUEL_BUCKET = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTdjNDA3YWE3YjMzNjIyNTMwOWQ1MzUwZTNmNDUyYmZjZjM1NTY5MmU5ODFkODFkZGZlMzIwOGJjZjZlZDI2YyJ9fX0="), - "&r桶装生物燃油&r"); - BIOFUEL_GENERATOR = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 4), - "&2生物燃油发电机&r", "", "&6高级发电机", "&8⇨ &e⚡ &7256 J 缓存", "&8⇨ &e⚡ &736 J/s"); - - DRAGON_BREATH_GENERATOR = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 2), - "&5龙息发电机&r", "", "&6高级发电机", "&8⇨ &e⚡ &7256 J 缓存", "&8⇨ &e⚡ &718 J/s"); - - REACTION_GENERATOR = new CustomItem(new UniversalMaterial(Material.STAINED_CLAY, 13), - "&2反应发电机&r", "", "&r无需冷却的小型核反应发电机", "&r直接消耗低能核燃料发电", "&r但此发电方式的燃料利用率较低", "", - "&6高级发电机", "&8⇨ &e⚡ &7256 J 缓存", "&8⇨ &e⚡ &716 J/s"); - - ENDER_CRYSTAL_GENERATOR = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 10), - "&d末影水晶发电机&r", "", "&r连接并利用附近的强化末影水晶发电", "", "&4终极发电机", "&8⇨ &e⚡ &714336 J 缓存", - "&8⇨ &e⚡ &70 ~ +∞ J/s"); - ENDER_CRYSTAL_GENERATOR_BASE = new CustomItem(new UniversalMaterial(Material.END_BRICKS), - "&b末影水晶发电机基座&r"); - ENDER_CRYSTAL_GENERATOR_STABILIZER = new CustomItem(new UniversalMaterial(Material.OBSIDIAN), - "&5末影水晶发电机稳定机&r", "", "&6高级机器", "&8⇨ &e⚡ &718 J/s"); - ItemStack itemECE = new CustomItem(new UniversalMaterial(Material.POTION), "&9末影水晶强化药剂&r"); - PotionMeta imECE = (PotionMeta) itemECE.getItemMeta(); - imECE.clearCustomEffects(); - imECE.setColor(Color.fromRGB(85, 0, 255)); - itemECE.setItemMeta(imECE); - ENDER_CRYSTAL_ENHANCER = itemECE; - - MODULAR_GENERATOR_REGULATOR = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGI4NzM2ZmY0MmJjNjhjMTFlZGU4ZDg3NGIxNTEyZDI5ZjJlOGM1ZjZmZWJlOGY1OGRmY2Q5YTBhNTFkNmRlZSJ9fX0="), - "&b模块化发电机核心&r"); - - SOLID_STORAGE_EXPANSION = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMjRmY2M5ODlmMDMzOTQ3YmYyYjc1NDE2ZDRjZTk0YTUxOGNmN2MyYmRiNTdjNDMyNDBlODdkN2FlMjY2MzI3OSJ9fX0="), - "&f固体储存拓展&r"); - LIQUID_STORAGE_EXPANSION = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTZiY2QxODBiMWM4ZmM0Y2EzOWNmNDY3YzM0NWFlODNjYzE2YjYzY2IyNTU3MDM0NjAxMDNhM2VlYmE0NTcifX19"), - "&f流体储存拓展&r"); - COAL_GENERATOR = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOTM0M2NlNThkYTU0Yzc5OTI0YTJjOTMzMWNmYzQxN2ZlOGNjYmJlYTliZTQ1YTdhYzg1ODYwYTZjNzMwIn19fQ=="), - "&c煤炭发电机 &7(扩容版)&r", "", "&6发电机组", "&8\u21E8 &e\u26A1 &764 J 缓存", - "&8\u21E8 &e\u26A1 &716 J/s"); - LAVA_GENERATOR = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOTM0M2NlNThkYTU0Yzc5OTI0YTJjOTMzMWNmYzQxN2ZlOGNjYmJlYTliZTQ1YTdhYzg1ODYwYTZjNzMwIn19fQ=="), - "&4岩浆发电机 &7(扩容版)&r", "", "&6发电机组", "&8\u21E8 &e\u26A1 &7512 J 缓存", - "&8\u21E8 &e\u26A1 &720 J/s"); - COMBUSTION_REACTOR = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOTM0M2NlNThkYTU0Yzc5OTI0YTJjOTMzMWNmYzQxN2ZlOGNjYmJlYTliZTQ1YTdhYzg1ODYwYTZjNzMwIn19fQ=="), - "&c燃烧反应器 &7(扩容版)&r", "", "&6高级发电机", "&8\u21E8 &e\u26A1 &7256 J 缓存", - "&8\u21E8 &e\u26A1 &724 J/s"); - - ELECTRICITY_STORAGE_UNIT = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7ImlkIjoiODljMzVjZjNmZmZkNDAxMWJhMTM5MmJiYjE1MjM1NzYiLCJ0eXBlIjoiU0tJTiIsInVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMzFhM2NkOWIwMTZiMTIyOGVjMDFmZDZmMDk5MmM2NGYzYjliN2IyOTc3M2ZhNDY0MzlhYjNmM2M4YTM0NzcwNCIsInByb2ZpbGVJZCI6IjYwNTc2YTMwMzYwYjRhYTBiYTRjNTczMGUyZDhhYTc0IiwidGV4dHVyZUlkIjoiMzFhM2NkOWIwMTZiMTIyOGVjMDFmZDZmMDk5MmM2NGYzYjliN2IyOTc3M2ZhNDY0MzlhYjNmM2M4YTM0NzcwNCJ9fSwic2tpbiI6eyJpZCI6Ijg5YzM1Y2YzZmZmZDQwMTFiYTEzOTJiYmIxNTIzNTc2IiwidHlwZSI6IlNLSU4iLCJ1cmwiOiJodHRwOi8vdGV4dHVyZXMubWluZWNyYWZ0Lm5ldC90ZXh0dXJlLzMxYTNjZDliMDE2YjEyMjhlYzAxZmQ2ZjA5OTJjNjRmM2I5YjdiMjk3NzNmYTQ2NDM5YWIzZjNjOGEzNDc3MDQiLCJwcm9maWxlSWQiOiI2MDU3NmEzMDM2MGI0YWEwYmE0YzU3MzBlMmQ4YWE3NCIsInRleHR1cmVJZCI6IjMxYTNjZDliMDE2YjEyMjhlYzAxZmQ2ZjA5OTJjNjRmM2I5YjdiMjk3NzNmYTQ2NDM5YWIzZjNjOGEzNDc3MDQifSwiY2FwZSI6bnVsbH0="), - "&f电力储存单元&r"); - ADVANCED_BATTERY = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZjRmMjFjZjVjMjM0ZmM5NmRiOTBhMGEzMTFkNmZiZTEyZjg3ODliN2ZhODE1NTcxNjc1N2ZkNTE2YjE4MTEifX19"), - "&e高级电池&r"); - ALPHA_BATTERY = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvODUzYjRjYTdmZTlhOWUyOTlkMzc3ZWNlNGMwMzdlMWNkMDA5YTBiNTcyZDUzYzg0NjlmMGNlMGZmZTNiYThhMiJ9fX0="), - "&aAlpha 电池&r"); - BETA_BATTERY = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZjIxNjcxN2YxZGE5NGY5OWJlODI0MmE5MzFlMzliYmYzMjI1MWRlZGY0NmNkMjA3M2ZmYTg4OTY5ZDc0Zjk2MyJ9fX0="), - "&9Beta 电池&r"); - GAMMA_BATTERY = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZDgwZTJjMzNjNGM4MzI0NDUyYWNjZjkyMzU2NjllNjVmMDBkMTkyNmNjNTMzMTQ1MTkyNWNhMjZlNmFhNzIxIn19fQ=="), - "&dGamma 电池&r"); - - BASIC_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 4), - "&e基础电力存储机&r", "", "&e基础电力存储机", "&8\u21E8 &e\u26A1 &7640 J 容量"); - ADVANCED_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 1), - "&d高级电力存储机&r", "", "&6中型电力存储机", "&8\u21E8 &e\u26A1 &72560 J 容量"); - ALPHA_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 5), - "&a&lAlpha&a-α 电力存储机&r", "", "&a大型电力存储机", "&8\u21E8 &e\u26A1 &75120 J 容量"); - BETA_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 11), - "&9&lBeta&9-β 电力存储机&r", "", "&2超级电力存储机", "&8\u21E8 &e\u26A1 &740960 J 容量"); - GAMMA_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 2), - "&5&lGamma&5-γ 电力存储机&r", "", "&4终极电力存储机", "&8\u21E8 &e\u26A1 &7327680 J 容量"); - LAMBDA_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 6), - "&d&lLAMBDA&d-λ 电力存储机&r", "", "&f其实没必要搞这么大的电容了...吧......", "", "&4终极电力存储机", - "&8\u21E8 &e\u26A1 &72621440 J 容量", "", - Utils.db64s("Jjgmb+S9oOS7peS4uui/meWwseaYr+acgOWkp+WuuemHj+eahOeUteWuueS6huWQlz8=")); - - // Hidden Items (Encoded to prevent freely editing) - KAPA_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 15), - Utils.db64s("JjAmbEtBUEEmMC3OuiAmMOeUteWKm+WtmOWCqOacuiZy"), "", - Utils.db64s("JmPlvakmZeibiyZh54mpJmLlk4Emcg=="), "", "&4终极电力存储机", - Utils.db64s("Jjjih6ggJmXimqEgJjcyMDk3MTUyMCBKIOWuuemHjw=="), "", - Utils.db64s("Jjgmb0ZyZWV6ZV9Eb2xwaGluIOW5tuS4jeaJk+eul+atouatpeS6juatpC4uLg==")); - PHI_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS), Utils - .db64s("JmYmbFAmNyZsSCZmJmxJJjctJmbPhiAmN+eUtSZm5YqbJjflrZgmZuWCqCY35py6JnI="), - "", Utils.db64s("JmPlvakmZeibiyZh54mpJmLlk4Emcg=="), "", "&4终极电力存储机", - Utils.db64s("Jjjih6ggJmXimqEgJjcxNjc3NzIxNjAgSiDlrrnph48="), "", - Utils.db64s("Jmbov5novrnlu7rorq7mg7PopoHlvZPmnI3pnLjnmoTlhYjmiorov5nlgqjnlLXmnLrlhYXmu6HnlLU=")); - - MAGNESIUM_SALT = new CustomItem(new UniversalMaterial(Material.SUGAR), "&f镁盐&r"); - MAGNESIUM_GENERATOR = new CustomItem(new UniversalMaterial(Material.STAINED_CLAY, 8), - "&f镁发电机&r", "", "&a中级发电机", "&8\u21E8 &e\u26A1 &7128 J 缓存", - "&8\u21E8 &e\u26A1 &736 J/s"); - - QUANTUM_SOLAR_GENERATOR = new CustomItem(new ItemStack(Material.DAYLIGHT_DETECTOR), - "&d量子太阳能发电机&r", - new String[] { "", "&9可在夜晚发电", "", "&4终极发电机", "&8⇨ &e⚡ &765536 J 缓存", - "&8⇨ &e⚡ &72048 J/s (白天)", "&8⇨ &e⚡ &71024 J/s (夜晚)" }); - - ItemStack itemRCE = new ItemStack(Material.FIREWORK_CHARGE); - FireworkEffectMeta imRCE = (FireworkEffectMeta) itemRCE.getItemMeta(); - imRCE.setEffect(FireworkEffect.builder().with(FireworkEffect.Type.BURST) - .withColor(Color.fromRGB(85, 0, 255)).build()); - imRCE.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&7远古符文 &8&l[&b&l终界&8&l]")); - itemRCE.setItemMeta(imRCE); - RUNE_COMPLEX_ENDER = itemRCE; - - ENDER_LUMP_4 = new CustomItem(Material.GOLD_NUGGET, "&5末影结晶 &7- &eIV", 0, - new String[] { "", "&c品级: IV" }); - - HEAVY_WATER_BUCKET = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOTFlNWRhMGM1NmNmOWQ4OTNkOWJkM2I3Y2E0MGYwODFjMTFhMDAzZWZiNzc2MjQzNDYwYzJiYThiYTVjMzUyYSJ9fX0="), - "&f桶装重水&r"); - HEAVY_WATER_REFINING_MACHINE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 7), - "&7重水提炼机&r", "", "&6高级机器", "&8⇨ &e⚡ &718 J/s"); - - ItemStack itemNM = new CustomItem(new UniversalMaterial(Material.POTION), "&9中子慢化剂&r"); - PotionMeta imNM = (PotionMeta) itemNM.getItemMeta(); - imNM.clearCustomEffects(); - imNM.setColor(Color.BLACK); - itemNM.setItemMeta(imNM); - NEUTRON_MODERATOR = itemNM; - - THERMAL_NEUTRON_REACTOR = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOTM0M2NlNThkYTU0Yzc5OTI0YTJjOTMzMWNmYzQxN2ZlOGNjYmJlYTliZTQ1YTdhYzg1ODYwYTZjNzMwIn19fQ=="), - "&c热中子核能反应器&r", - new String[] { "", "&r需要冷却!", "&8⇨ &b必须完全浸入水中", "&8⇨ &b必须配备热中子核能反应器冷却单元", "", - "&4终极发电机", "&8⇨ &e⚡ &716384 J 缓存", "&8⇨ &e⚡ &7896 J/s" }); - THERMAL_NEUTRON_REACTOR_COOLANT_CELL = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOGM3NjBjNTc2YTA4OGNiMjljZWIyNmUzMTQzYjdmM2M0NDZjZDZlNWM1MGJmMzMxNTE2NjFjZTYzNmQwNTk3ZSJ9fX0="), - "&c热中子核能反应器冷却单元&r"); - - RAINBOW_ALLOY = new CustomItem(CustomSkull.getItem( - "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNDFmZTI3YTEzYzVmYzE3NTE1Y2FlNjk1ODUyNzE2MzI2YjJiNWRmNDdkOGQ2Yjk1YTc4OWFlMzhjYWM3YjEifX19"), - "&d彩虹合金&r"); - - ItemStack itemRRG = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 2), - "&d强化彩虹玻璃&r", "", "&f能如彩虹一般随机改变颜色"); - itemRRG.addUnsafeEnchantment(Enchantment.DURABILITY, 1); - ItemMeta imRRG = itemRRG.getItemMeta(); - imRRG.addItemFlags(ItemFlag.HIDE_ENCHANTS); - itemRRG.setItemMeta(imRRG); - REINFORCED_RAINBOW_GLASS = itemRRG; - - RAINBOW_REACTOR = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 6), "&d彩虹反应器&r", - "", "&8⇨ &b必须建造完整的结构", "", "&4终极发电机", "&8⇨ &e⚡ &732768 J 缓存", - "&8⇨ &e⚡ &71536 J/s", "&8⇨ &e⚡ &7所在世界处于雷暴天气时发电量翻 1.5倍"); - - GLASS_ELECTRICITY_TRANSMITTER = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 9), - "&2电力传递器&r", "", "&a玻璃电力传递器", "&8\u21E8 &e\u26A1 &716 J 容量"); - - } catch (Exception e) { - e.printStackTrace(); - } - } - - public UGItems(Loader plug) { + public static ItemStack ENDLESS_GENERATOR; + + public static ItemStack NETHER_STAR_GENERATOR; + + public static ItemStack DIESEL_REFINERY; + public static ItemStack DIESEL_BUCKET; + public static ItemStack DIESEL_GENERATOR; + + public static ItemStack BIOMASS_EXTRACTION_MACHINE; + public static ItemStack BIOMASS_BUCKET; + public static ItemStack BIOFUEL_REFINERY; + public static ItemStack BIOFUEL_BUCKET; + public static ItemStack BIOFUEL_GENERATOR; + + public static ItemStack DRAGON_BREATH_GENERATOR; + + public static ItemStack REACTION_GENERATOR; + + public static ItemStack SOLID_STORAGE_EXPANSION, LIQUID_STORAGE_EXPANSION; + public static ItemStack COAL_GENERATOR, LAVA_GENERATOR, COMBUSTION_REACTOR; + public static ItemStack BIO_REACTOR = new CustomItem(new UniversalMaterial(Material.STAINED_CLAY, 5), + "&2生化反应器 &7(扩容版)&r", "", "&6发电机组", "&8\u21E8 &e\u26A1 &7128 J 缓存", "&8\u21E8 &e\u26A1 &78 J/s"); + + public static ItemStack ELECTRICITY_STORAGE_UNIT; + public static ItemStack ADVANCED_BATTERY, ALPHA_BATTERY, BETA_BATTERY, GAMMA_BATTERY; + public static ItemStack BASIC_ELECTRICITY_STORAGE, ADVANCED_ELECTRICITY_STORAGE, ALPHA_ELECTRICITY_STORAGE, + BETA_ELECTRICITY_STORAGE, GAMMA_ELECTRICITY_STORAGE, LAMBDA_ELECTRICITY_STORAGE, + KAPA_ELECTRICITY_STORAGE, PHI_ELECTRICITY_STORAGE; + + public static ItemStack MAGNESIUM_SALT, MAGNESIUM_GENERATOR; + + public static ItemStack QUANTUM_SOLAR_GENERATOR; + + public static ItemStack MODULAR_GENERATOR_REGULATOR; + + public static ItemStack ENDER_CRYSTAL_GENERATOR, ENDER_CRYSTAL_GENERATOR_BASE, + ENDER_CRYSTAL_GENERATOR_STABILIZER, ENDER_CRYSTAL_ENHANCER; + public static ItemStack RUNE_COMPLEX_ENDER, ENDER_LUMP_4; + + public static ItemStack HEAVY_WATER_BUCKET, HEAVY_WATER_REFINING_MACHINE; + + public static ItemStack THERMAL_NEUTRON_REACTOR, THERMAL_NEUTRON_REACTOR_COOLANT_CELL; + public static ItemStack NEUTRON_MODERATOR; + + public static ItemStack RAINBOW_ALLOY, REINFORCED_RAINBOW_GLASS; + public static ItemStack RAINBOW_REACTOR; + + public static ItemStack GLASS_ELECTRICITY_TRANSMITTER; + + static { + try { + ENDLESS_GENERATOR = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvN2Y5ZjM1NmY1ZmU3ZDFiYzkyY2RkZmFlYmEzZWU3NzNhYzlkZjFjYzRkMWMyZjhmZTVmNDcwMTMwMzJjNTUxZCJ9fX0="), + "&6无尽发电机&r", "", "&r当接收到红石信号时工作", "", "&5创造发电机", "&8⇨ &e⚡ &7发电效率由接收到的红石信号强度决定"); + + NETHER_STAR_GENERATOR = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 7), + "&d下届之星发电机&r", "", "&4终极发电机", "&8⇨ &e⚡ &71024 J 缓存", "&8⇨ &e⚡ &7128 J/s"); + + DIESEL_REFINERY = new CustomItem(new UniversalMaterial(Material.PISTON_BASE), "&c柴油精炼器&r", "", + "&r精炼石油生产柴油"); + DIESEL_BUCKET = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNWFmZTgzNjkyZjcxZjA1ZDExM2Q4OTFmOGI4MzhlMDdkN2NiODE0MTliMjBkYzFiMjA5ZWI4NGY3NzFmMGM5ZiJ9fX0="), + "&r桶装柴油&r"); + DIESEL_GENERATOR = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMWVlMTE1NjU2YmMyMjA3NTVjNmQ1YmM4NzI2MGM4MjE0MWMyNTNhMzRiYzNkYjJiZDcyYjcyN2JlZmNjMCJ9fX0="), + "&7柴油发电机&r", "", "&6高级发电机", "&8⇨ &e⚡ &7256 J 缓存", "&8⇨ &e⚡ &736 J/s"); + + BIOMASS_EXTRACTION_MACHINE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 5), + "&a生物质萃取机&r", "", "&a中级机器", "&8⇨ &e⚡ &76 J/s"); + BIOMASS_BUCKET = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMzdkYmYxNTAzYmQxYTI3YTQ1N2M1MDk3NDRkNTIwZWVjMzhlM2Q0OGQ4YTNiZmUzY2FkZTc2Nzc4OTY0MmYifX19"), + "&r桶装生物质&r"); + BIOFUEL_REFINERY = new CustomItem(new UniversalMaterial(Material.PISTON_BASE), "&c生物燃油精炼器&r", + "", "&r精炼生物质生产生物燃油"); + BIOFUEL_BUCKET = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTdjNDA3YWE3YjMzNjIyNTMwOWQ1MzUwZTNmNDUyYmZjZjM1NTY5MmU5ODFkODFkZGZlMzIwOGJjZjZlZDI2YyJ9fX0="), + "&r桶装生物燃油&r"); + BIOFUEL_GENERATOR = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 4), + "&2生物燃油发电机&r", "", "&6高级发电机", "&8⇨ &e⚡ &7256 J 缓存", "&8⇨ &e⚡ &736 J/s"); + + DRAGON_BREATH_GENERATOR = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 2), + "&5龙息发电机&r", "", "&6高级发电机", "&8⇨ &e⚡ &7256 J 缓存", "&8⇨ &e⚡ &718 J/s"); + + REACTION_GENERATOR = new CustomItem(new UniversalMaterial(Material.STAINED_CLAY, 13), + "&2反应发电机&r", "", "&r无需冷却的小型核反应发电机", "&r直接消耗低能核燃料发电", "&r但此发电方式的燃料利用率较低", "", + "&6高级发电机", "&8⇨ &e⚡ &7256 J 缓存", "&8⇨ &e⚡ &716 J/s"); + + ENDER_CRYSTAL_GENERATOR = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 10), + "&d末影水晶发电机&r", "", "&r连接并利用附近的强化末影水晶发电", "", "&4终极发电机", "&8⇨ &e⚡ &714336 J 缓存", + "&8⇨ &e⚡ &70 ~ +∞ J/s"); + ENDER_CRYSTAL_GENERATOR_BASE = new CustomItem(new UniversalMaterial(Material.END_BRICKS), + "&b末影水晶发电机基座&r"); + ENDER_CRYSTAL_GENERATOR_STABILIZER = new CustomItem(new UniversalMaterial(Material.OBSIDIAN), + "&5末影水晶发电机稳定机&r", "", "&6高级机器", "&8⇨ &e⚡ &718 J/s"); + ItemStack itemECE = new CustomItem(new UniversalMaterial(Material.POTION), "&9末影水晶强化药剂&r"); + PotionMeta imECE = (PotionMeta) itemECE.getItemMeta(); + imECE.clearCustomEffects(); + imECE.setColor(Color.fromRGB(85, 0, 255)); + itemECE.setItemMeta(imECE); + ENDER_CRYSTAL_ENHANCER = itemECE; + + MODULAR_GENERATOR_REGULATOR = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGI4NzM2ZmY0MmJjNjhjMTFlZGU4ZDg3NGIxNTEyZDI5ZjJlOGM1ZjZmZWJlOGY1OGRmY2Q5YTBhNTFkNmRlZSJ9fX0="), + "&b模块化发电机核心&r"); + + SOLID_STORAGE_EXPANSION = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMjRmY2M5ODlmMDMzOTQ3YmYyYjc1NDE2ZDRjZTk0YTUxOGNmN2MyYmRiNTdjNDMyNDBlODdkN2FlMjY2MzI3OSJ9fX0="), + "&f固体储存拓展&r"); + LIQUID_STORAGE_EXPANSION = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTZiY2QxODBiMWM4ZmM0Y2EzOWNmNDY3YzM0NWFlODNjYzE2YjYzY2IyNTU3MDM0NjAxMDNhM2VlYmE0NTcifX19"), + "&f流体储存拓展&r"); + COAL_GENERATOR = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOTM0M2NlNThkYTU0Yzc5OTI0YTJjOTMzMWNmYzQxN2ZlOGNjYmJlYTliZTQ1YTdhYzg1ODYwYTZjNzMwIn19fQ=="), + "&c煤炭发电机 &7(扩容版)&r", "", "&6发电机组", "&8\u21E8 &e\u26A1 &764 J 缓存", + "&8\u21E8 &e\u26A1 &716 J/s"); + LAVA_GENERATOR = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOTM0M2NlNThkYTU0Yzc5OTI0YTJjOTMzMWNmYzQxN2ZlOGNjYmJlYTliZTQ1YTdhYzg1ODYwYTZjNzMwIn19fQ=="), + "&4岩浆发电机 &7(扩容版)&r", "", "&6发电机组", "&8\u21E8 &e\u26A1 &7512 J 缓存", + "&8\u21E8 &e\u26A1 &720 J/s"); + COMBUSTION_REACTOR = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOTM0M2NlNThkYTU0Yzc5OTI0YTJjOTMzMWNmYzQxN2ZlOGNjYmJlYTliZTQ1YTdhYzg1ODYwYTZjNzMwIn19fQ=="), + "&c燃烧反应器 &7(扩容版)&r", "", "&6高级发电机", "&8\u21E8 &e\u26A1 &7256 J 缓存", + "&8\u21E8 &e\u26A1 &724 J/s"); + + ELECTRICITY_STORAGE_UNIT = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7ImlkIjoiODljMzVjZjNmZmZkNDAxMWJhMTM5MmJiYjE1MjM1NzYiLCJ0eXBlIjoiU0tJTiIsInVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMzFhM2NkOWIwMTZiMTIyOGVjMDFmZDZmMDk5MmM2NGYzYjliN2IyOTc3M2ZhNDY0MzlhYjNmM2M4YTM0NzcwNCIsInByb2ZpbGVJZCI6IjYwNTc2YTMwMzYwYjRhYTBiYTRjNTczMGUyZDhhYTc0IiwidGV4dHVyZUlkIjoiMzFhM2NkOWIwMTZiMTIyOGVjMDFmZDZmMDk5MmM2NGYzYjliN2IyOTc3M2ZhNDY0MzlhYjNmM2M4YTM0NzcwNCJ9fSwic2tpbiI6eyJpZCI6Ijg5YzM1Y2YzZmZmZDQwMTFiYTEzOTJiYmIxNTIzNTc2IiwidHlwZSI6IlNLSU4iLCJ1cmwiOiJodHRwOi8vdGV4dHVyZXMubWluZWNyYWZ0Lm5ldC90ZXh0dXJlLzMxYTNjZDliMDE2YjEyMjhlYzAxZmQ2ZjA5OTJjNjRmM2I5YjdiMjk3NzNmYTQ2NDM5YWIzZjNjOGEzNDc3MDQiLCJwcm9maWxlSWQiOiI2MDU3NmEzMDM2MGI0YWEwYmE0YzU3MzBlMmQ4YWE3NCIsInRleHR1cmVJZCI6IjMxYTNjZDliMDE2YjEyMjhlYzAxZmQ2ZjA5OTJjNjRmM2I5YjdiMjk3NzNmYTQ2NDM5YWIzZjNjOGEzNDc3MDQifSwiY2FwZSI6bnVsbH0="), + "&f电力储存单元&r"); + ADVANCED_BATTERY = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZjRmMjFjZjVjMjM0ZmM5NmRiOTBhMGEzMTFkNmZiZTEyZjg3ODliN2ZhODE1NTcxNjc1N2ZkNTE2YjE4MTEifX19"), + "&e高级电池&r"); + ALPHA_BATTERY = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvODUzYjRjYTdmZTlhOWUyOTlkMzc3ZWNlNGMwMzdlMWNkMDA5YTBiNTcyZDUzYzg0NjlmMGNlMGZmZTNiYThhMiJ9fX0="), + "&aAlpha 电池&r"); + BETA_BATTERY = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZjIxNjcxN2YxZGE5NGY5OWJlODI0MmE5MzFlMzliYmYzMjI1MWRlZGY0NmNkMjA3M2ZmYTg4OTY5ZDc0Zjk2MyJ9fX0="), + "&9Beta 电池&r"); + GAMMA_BATTERY = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZDgwZTJjMzNjNGM4MzI0NDUyYWNjZjkyMzU2NjllNjVmMDBkMTkyNmNjNTMzMTQ1MTkyNWNhMjZlNmFhNzIxIn19fQ=="), + "&dGamma 电池&r"); + + BASIC_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 4), + "&e基础电力存储机&r", "", "&e基础电力存储机", "&8\u21E8 &e\u26A1 &7640 J 容量"); + ADVANCED_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 1), + "&d高级电力存储机&r", "", "&6中型电力存储机", "&8\u21E8 &e\u26A1 &72560 J 容量"); + ALPHA_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 5), + "&a&lAlpha&a-α 电力存储机&r", "", "&a大型电力存储机", "&8\u21E8 &e\u26A1 &75120 J 容量"); + BETA_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 11), + "&9&lBeta&9-β 电力存储机&r", "", "&2超级电力存储机", "&8\u21E8 &e\u26A1 &740960 J 容量"); + GAMMA_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 2), + "&5&lGamma&5-γ 电力存储机&r", "", "&4终极电力存储机", "&8\u21E8 &e\u26A1 &7327680 J 容量"); + LAMBDA_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 6), + "&d&lLAMBDA&d-λ 电力存储机&r", "", "&f其实没必要搞这么大的电容了...吧......", "", "&4终极电力存储机", + "&8\u21E8 &e\u26A1 &72621440 J 容量", "", + Utils.db64s("Jjgmb+S9oOS7peS4uui/meWwseaYr+acgOWkp+WuuemHj+eahOeUteWuueS6huWQlz8=")); + + // Hidden Items (Encoded to prevent freely editing) + KAPA_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 15), + Utils.db64s("JjAmbEtBUEEmMC3OuiAmMOeUteWKm+WtmOWCqOacuiZy"), "", + Utils.db64s("JmPlvakmZeibiyZh54mpJmLlk4Emcg=="), "", "&4终极电力存储机", + Utils.db64s("Jjjih6ggJmXimqEgJjcyMDk3MTUyMCBKIOWuuemHjw=="), "", + Utils.db64s("Jjgmb0ZyZWV6ZV9Eb2xwaGluIOW5tuS4jeaJk+eul+atouatpeS6juatpC4uLg==")); + PHI_ELECTRICITY_STORAGE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS), Utils + .db64s("JmYmbFAmNyZsSCZmJmxJJjctJmbPhiAmN+eUtSZm5YqbJjflrZgmZuWCqCY35py6JnI="), + "", Utils.db64s("JmPlvakmZeibiyZh54mpJmLlk4Emcg=="), "", "&4终极电力存储机", + Utils.db64s("Jjjih6ggJmXimqEgJjcxNjc3NzIxNjAgSiDlrrnph48="), "", + Utils.db64s("Jmbov5novrnlu7rorq7mg7PopoHlvZPmnI3pnLjnmoTlhYjmiorov5nlgqjnlLXmnLrlhYXmu6HnlLU=")); + + MAGNESIUM_SALT = new CustomItem(new UniversalMaterial(Material.SUGAR), "&f镁盐&r"); + MAGNESIUM_GENERATOR = new CustomItem(new UniversalMaterial(Material.STAINED_CLAY, 8), + "&f镁发电机&r", "", "&a中级发电机", "&8\u21E8 &e\u26A1 &7128 J 缓存", + "&8\u21E8 &e\u26A1 &736 J/s"); + + QUANTUM_SOLAR_GENERATOR = new CustomItem(new ItemStack(Material.DAYLIGHT_DETECTOR), + "&d量子太阳能发电机&r", + "", "&9可在夜晚发电", "", "&4终极发电机", "&8⇨ &e⚡ &765536 J 缓存", + "&8⇨ &e⚡ &72048 J/s (白天)", "&8⇨ &e⚡ &71024 J/s (夜晚)"); + + ItemStack itemRCE = new ItemStack(Material.FIREWORK_CHARGE); + FireworkEffectMeta imRCE = (FireworkEffectMeta) itemRCE.getItemMeta(); + imRCE.setEffect(FireworkEffect.builder().with(FireworkEffect.Type.BURST) + .withColor(Color.fromRGB(85, 0, 255)).build()); + imRCE.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&7远古符文 &8&l[&b&l终界&8&l]")); + itemRCE.setItemMeta(imRCE); + RUNE_COMPLEX_ENDER = itemRCE; + + ENDER_LUMP_4 = new CustomItem(Material.GOLD_NUGGET, "&5末影结晶 &7- &eIV", 0, + new String[]{"", "&c品级: IV"}); + + HEAVY_WATER_BUCKET = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOTFlNWRhMGM1NmNmOWQ4OTNkOWJkM2I3Y2E0MGYwODFjMTFhMDAzZWZiNzc2MjQzNDYwYzJiYThiYTVjMzUyYSJ9fX0="), + "&f桶装重水&r"); + HEAVY_WATER_REFINING_MACHINE = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 7), + "&7重水提炼机&r", "", "&6高级机器", "&8⇨ &e⚡ &718 J/s"); + + ItemStack itemNM = new CustomItem(new UniversalMaterial(Material.POTION), "&9中子慢化剂&r"); + PotionMeta imNM = (PotionMeta) itemNM.getItemMeta(); + imNM.clearCustomEffects(); + imNM.setColor(Color.BLACK); + itemNM.setItemMeta(imNM); + NEUTRON_MODERATOR = itemNM; + + THERMAL_NEUTRON_REACTOR = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOTM0M2NlNThkYTU0Yzc5OTI0YTJjOTMzMWNmYzQxN2ZlOGNjYmJlYTliZTQ1YTdhYzg1ODYwYTZjNzMwIn19fQ=="), + "&c热中子核能反应器&r", + "", "&r需要冷却!", "&8⇨ &b必须完全浸入水中", "&8⇨ &b必须配备热中子核能反应器冷却单元", "", + "&4终极发电机", "&8⇨ &e⚡ &716384 J 缓存", "&8⇨ &e⚡ &7896 J/s"); + THERMAL_NEUTRON_REACTOR_COOLANT_CELL = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOGM3NjBjNTc2YTA4OGNiMjljZWIyNmUzMTQzYjdmM2M0NDZjZDZlNWM1MGJmMzMxNTE2NjFjZTYzNmQwNTk3ZSJ9fX0="), + "&c热中子核能反应器冷却单元&r"); + + RAINBOW_ALLOY = new CustomItem(CustomSkull.getItem( + "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNDFmZTI3YTEzYzVmYzE3NTE1Y2FlNjk1ODUyNzE2MzI2YjJiNWRmNDdkOGQ2Yjk1YTc4OWFlMzhjYWM3YjEifX19"), + "&d彩虹合金&r"); + + ItemStack itemRRG = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 2), + "&d强化彩虹玻璃&r", "", "&f能如彩虹一般随机改变颜色"); + itemRRG.addUnsafeEnchantment(Enchantment.DURABILITY, 1); + ItemMeta imRRG = itemRRG.getItemMeta(); + imRRG.addItemFlags(ItemFlag.HIDE_ENCHANTS); + itemRRG.setItemMeta(imRRG); + REINFORCED_RAINBOW_GLASS = itemRRG; + + RAINBOW_REACTOR = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 6), "&d彩虹反应器&r", + "", "&8⇨ &b必须建造完整的结构", "", "&4终极发电机", "&8⇨ &e⚡ &732768 J 缓存", + "&8⇨ &e⚡ &71536 J/s", "&8⇨ &e⚡ &7所在世界处于雷暴天气时发电量翻 1.5倍"); + + GLASS_ELECTRICITY_TRANSMITTER = new CustomItem(new UniversalMaterial(Material.STAINED_GLASS, 9), + "&2电力传递器&r", "", "&a玻璃电力传递器", "&8\u21E8 &e\u26A1 &716 J 容量"); + + } catch (Exception e) { + e.printStackTrace(); } + } } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/lists/UGRecipeType.java b/src/main/java/io/freeze_dolphin/ultimate_generators/lists/UGRecipeType.java index 1d68a4a..52279bb 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/lists/UGRecipeType.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/lists/UGRecipeType.java @@ -1,17 +1,12 @@ package io.freeze_dolphin.ultimate_generators.lists; -import org.bukkit.Material; - import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; - import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem; import me.mrCookieSlime.Slimefun.Lists.RecipeType; +import org.bukkit.Material; public class UGRecipeType { public static RecipeType NULL = new RecipeType(new CustomItem(new UniversalMaterial(Material.BARRIER), "&c不可合成&r")); - public UGRecipeType() { - } - } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/BContainer.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/BContainer.java index 734f168..46c74f7 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/BContainer.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/BContainer.java @@ -1,13 +1,9 @@ package io.freeze_dolphin.ultimate_generators.objects.abstracts; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - +import io.freeze_dolphin.ultimate_generators.Utils; +import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ChestMenu; -import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ChestMenu.MenuClickHandler; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ClickAction; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem; @@ -19,14 +15,12 @@ import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelper; import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe; import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.handlers.BlockTicker; -import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.handlers.ItemHandler; import me.mrCookieSlime.Slimefun.Setup.SlimefunManager; import me.mrCookieSlime.Slimefun.api.BlockStorage; import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock; import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu; import me.mrCookieSlime.Slimefun.api.inventory.BlockMenuPreset; import me.mrCookieSlime.Slimefun.api.item_transport.ItemTransportFlow; - import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.block.Block; @@ -36,47 +30,39 @@ import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import io.freeze_dolphin.ultimate_generators.Utils; -import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +@SuppressWarnings("unused") public abstract class BContainer extends SlimefunItem { - public static Map processing = new HashMap<>(); - public static Map progress = new HashMap<>(); - protected List recipes = new ArrayList<>(); - + protected static final int indicator = 22; + protected static final int machineInfo = 8; private static final int[] border = { - 0, - 9, 17, - 18, 19, 20, 21, 23, 24, 25, 26, - 27, 35, - 36, 44 - }; + 0, + 9, 17, + 18, 19, 20, 21, 23, 24, 25, 26, + 27, 35, + 36, 44 + }; private static final int[] border_in = { - 1, 7, - 10, 11, 12, 13, 14, 15, 16 - }; + 1, 7, + 10, 11, 12, 13, 14, 15, 16 + }; private static final int[] border_out = { - 28, 29, 30, 31, 32, 33, 34, - 37, 43 - }; - - public int[] getInputSlots() { - return new int[]{2, 3, 4, 5, 6}; - } - - public int[] getOutputSlots() { - return new int[]{38, 39, 40, 41, 42}; - } - - protected static final int indicator = 22; - protected static final int machineInfo = 8; - + 28, 29, 30, 31, 32, 33, 34, + 37, 43 + }; + public static Map processing = new HashMap<>(); + public static Map progress = new HashMap<>(); private final String ID; private final boolean displayMachineInfo; + protected List recipes = new ArrayList<>(); public BContainer(Category category, ItemStack item, String id, RecipeType recipeType, ItemStack[] recipe, boolean displayMachineInfo) { super(category, item, id, recipeType, recipe); @@ -131,39 +117,31 @@ public boolean onBreak(Player p, Block b, SlimefunItem item, UnregisterReason re registerDefaultRecipes(); } + public int[] getInputSlots() { + return new int[]{2, 3, 4, 5, 6}; + } + + public int[] getOutputSlots() { + return new int[]{38, 39, 40, 41, 42}; + } + protected void constructMenu(BlockMenuPreset preset) { for (int i : border) { preset.addItem(i, - new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 7), " ", new String[0]), - new ChestMenu.MenuClickHandler() { - public boolean onClick(Player arg0, int arg1, ItemStack arg2, ClickAction arg3) { - return false; - } - }); + new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 7), " "), + (arg0, arg1, arg2, arg3) -> false); } for (int i : border_in) { preset.addItem(i, - new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 9), " ", new String[0]), - new ChestMenu.MenuClickHandler() { - public boolean onClick(Player arg0, int arg1, ItemStack arg2, ClickAction arg3) { - return false; - } - }); + new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 9), " "), + (arg0, arg1, arg2, arg3) -> false); } for (int i : border_out) { preset.addItem(i, - new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 1), " ", new String[0]), - new ChestMenu.MenuClickHandler() { - public boolean onClick(Player arg0, int arg1, ItemStack arg2, ClickAction arg3) { - return false; - } - }); + new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 1), " "), + (arg0, arg1, arg2, arg3) -> false); } - preset.addItem(indicator, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 15), " ", new String[0]), new MenuClickHandler() { - public boolean onClick(Player arg0, int arg1, ItemStack arg2, ClickAction arg3) { - return false; - } - }); + preset.addItem(indicator, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 15), " "), (arg0, arg1, arg2, arg3) -> false); for (int i : getOutputSlots()) { preset.addMenuClickHandler(i, new ChestMenu.AdvancedMenuClickHandler() { public boolean onClick(Player p, int slot, ItemStack cursor, ClickAction action) { @@ -171,30 +149,16 @@ public boolean onClick(Player p, int slot, ItemStack cursor, ClickAction action) } public boolean onClick(InventoryClickEvent e, Player p, int slot, ItemStack cursor, - ClickAction action) { + ClickAction action) { return (cursor == null) || (cursor.getType() == null) || (cursor.getType() == Material.AIR); } }); } if (displayMachineInfo) { - preset.addItem(machineInfo, new CustomItem(new UniversalMaterial(Material.EMPTY_MAP), "&f机器信息", "&7 - &3耗电量: &e" + getEnergyConsumption() * 2 + " J/s", "&7 - &3工作速度: &e" + (getSpeed() == 1 ? "&f默认" : getSpeed())), new MenuClickHandler() { - - @Override - public boolean onClick(Player arg0, int arg1, ItemStack arg2, ClickAction arg3) { - return false; - } - - }); + preset.addItem(machineInfo, new CustomItem(new UniversalMaterial(Material.EMPTY_MAP), "&f机器信息", "&7 - &3耗电量: &e" + getEnergyConsumption() * 2 + " J/s", "&7 - &3工作速度: &e" + (getSpeed() == 1 ? "&f默认" : getSpeed())), (arg0, arg1, arg2, arg3) -> false); } else { - preset.addItem(machineInfo, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 7), " "), new MenuClickHandler() { - - @Override - public boolean onClick(Player arg0, int arg1, ItemStack arg2, ClickAction arg3) { - return false; - } - - }); + preset.addItem(machineInfo, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 7), " "), (arg0, arg1, arg2, arg3) -> false); } } @@ -215,7 +179,7 @@ public String getMachineIdentifier() { } public MachineRecipe getProcessing(Block b) { - return (MachineRecipe) processing.get(b); + return processing.get(b); } public boolean isProcessing(Block b) { @@ -244,7 +208,7 @@ private Inventory inject(Block b) { } protected boolean fits(Block b, ItemStack[] items) { - return inject(b).addItem(items).isEmpty(); + return !inject(b).addItem(items).isEmpty(); } protected void pushItems(Block b, ItemStack[] items) { @@ -256,7 +220,7 @@ protected void pushItems(Block b, ItemStack[] items) { } public void register(boolean slimefun) { - addItemHandler(new ItemHandler[]{new BlockTicker() { + addItemHandler(new BlockTicker() { public void tick(Block b, SlimefunItem sf, Config data) { BContainer.this.tick(b); } @@ -267,7 +231,7 @@ public void uniqueTick() { public boolean isSynchronized() { return false; } - }}); + }); super.register(slimefun); } @@ -279,14 +243,14 @@ protected void tick(Block b) { ItemMeta im; if (isProcessing(b)) { - int timeleft = ((Integer) progress.get(b)).intValue(); + int timeleft = progress.get(b); if (timeleft > 0) { ItemStack item = getProgressBar().clone(); - item.setDurability(MachineHelper.getDurability(item, timeleft, ((MachineRecipe) processing.get(b)).getTicks())); + item.setDurability(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks())); im = item.getItemMeta(); im.setDisplayName(" "); List lore = new ArrayList<>(); - lore.add(MachineHelper.getProgress(timeleft, ((MachineRecipe) processing.get(b)).getTicks())); + lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks())); lore.add(""); lore.add(MachineHelper.getTimeLeft(timeleft / 2)); im.setLore(lore); @@ -298,14 +262,12 @@ protected void tick(Block b) { return; } ChargableBlock.addCharge(b, -getEnergyConsumption()); - progress.put(b, Integer.valueOf(timeleft - 1)); - } else { - progress.put(b, Integer.valueOf(timeleft - 1)); } + progress.put(b, timeleft - 1); } else { BlockStorage.getInventory(b).replaceExistingItem(indicator, - new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 15), " ", new String[0])); - pushItems(b, (ItemStack[]) ((MachineRecipe) processing.get(b)).getOutput().clone()); + new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 15), " ")); + pushItems(b, processing.get(b).getOutput().clone()); progress.remove(b); processing.remove(b); @@ -318,7 +280,7 @@ protected void tick(Block b) { for (int slot : getInputSlots()) { if (SlimefunManager.isItemSimiliar(BlockStorage.getInventory(b).getItemInSlot(slot), input, true)) { - found.put(Integer.valueOf(slot), Integer.valueOf(input.getAmount())); + found.put(slot, input.getAmount()); break; } } @@ -330,17 +292,17 @@ protected void tick(Block b) { found.clear(); } if (r != null) { - if (!fits(b, r.getOutput())) { + if (fits(b, r.getOutput())) { return; } for (Map.Entry entry : found.entrySet()) { - BlockStorage.getInventory(b).replaceExistingItem(((Integer) entry.getKey()).intValue(), + BlockStorage.getInventory(b).replaceExistingItem(entry.getKey(), InvUtils.decreaseItem( - BlockStorage.getInventory(b).getItemInSlot(((Integer) entry.getKey()).intValue()), - ((Integer) entry.getValue()).intValue())); + BlockStorage.getInventory(b).getItemInSlot(entry.getKey()), + entry.getValue())); } processing.put(b, r); - progress.put(b, Integer.valueOf(r.getTicks())); + progress.put(b, r.getTicks()); } } } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/BGenerator.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/BGenerator.java index 4f23beb..d8b3dfc 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/BGenerator.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/BGenerator.java @@ -1,12 +1,8 @@ package io.freeze_dolphin.ultimate_generators.objects.abstracts; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; - +import io.freeze_dolphin.ultimate_generators.Utils; +import io.freeze_dolphin.ultimate_generators.lists.UGItems; +import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ChestMenu.AdvancedMenuClickHandler; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ClickAction; @@ -27,7 +23,6 @@ import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu; import me.mrCookieSlime.Slimefun.api.inventory.BlockMenuPreset; import me.mrCookieSlime.Slimefun.api.item_transport.ItemTransportFlow; - import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.Material; @@ -38,49 +33,36 @@ import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import io.freeze_dolphin.ultimate_generators.Utils; -import io.freeze_dolphin.ultimate_generators.lists.UGItems; -import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; +import java.util.*; +@SuppressWarnings("unused") public abstract class BGenerator extends SlimefunItem { - public static Map processing = new HashMap(); - public static Map progress = new HashMap(); - - private Set recipes = new HashSet<>(); - + protected static final int INDICATOR = 22; + protected static final int MACHINE_INFO = 8; private static final int[] border = { - 0, - 9, 17, - 18, 19, 20, 21, 23, 24, 25, 26, - 27, 35, - 36, 44 - }; + 0, + 9, 17, + 18, 19, 20, 21, 23, 24, 25, 26, + 27, 35, + 36, 44 + }; private static final int[] border_in = { - 1, 7, - 10, 11, 12, 13, 14, 15, 16 - }; + 1, 7, + 10, 11, 12, 13, 14, 15, 16 + }; private static final int[] border_out = { - 28, 29, 30, 31, 32, 33, 34, - 37, 43 - }; - - public int[] getInputSlots() { - return new int[]{2, 3, 4, 5, 6}; - } - - public int[] getOutputSlots() { - return new int[]{38, 39, 40, 41, 42}; - } - - protected static final int INDICATOR = 22; - protected static final int MACHINE_INFO = 8; - + 28, 29, 30, 31, 32, 33, 34, + 37, 43 + }; + public static Map processing = new HashMap<>(); + public static Map progress = new HashMap<>(); private final String ID; private final boolean displayMachineInfo; + private final Set recipes = new HashSet<>(); public BGenerator(Category category, ItemStack item, String id, RecipeType recipeType, ItemStack[] recipe, boolean displayMachineInfo) { super(category, item, id, recipeType, recipe); @@ -146,6 +128,14 @@ public boolean onBreak(Player p, Block b, SlimefunItem item, UnregisterReason re registerDefaultRecipes(); } + public int[] getInputSlots() { + return new int[]{2, 3, 4, 5, 6}; + } + + public int[] getOutputSlots() { + return new int[]{38, 39, 40, 41, 42}; + } + private void constructMenu(BlockMenuPreset preset) { for (int i : border) { preset.addItem(i, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 7), " "), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); @@ -282,9 +272,7 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { } if (r != null) { - found.entrySet().forEach(entry -> { - BlockStorage.getInventory(l).replaceExistingItem(entry.getKey(), InvUtils.decreaseItem(BlockStorage.getInventory(l).getItemInSlot(entry.getKey()), entry.getValue())); - }); + found.forEach((key, value) -> BlockStorage.getInventory(l).replaceExistingItem(key, InvUtils.decreaseItem(BlockStorage.getInventory(l).getItemInSlot(key), value))); processing.put(l, r); progress.put(l, r.getTicks()); } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/ModularContainer.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/ModularContainer.java index 0195fcb..5902ca3 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/ModularContainer.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/ModularContainer.java @@ -1,9 +1,7 @@ package io.freeze_dolphin.ultimate_generators.objects.abstracts; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import io.freeze_dolphin.ultimate_generators.Utils; +import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ChestMenu; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ClickAction; @@ -17,7 +15,6 @@ import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelper; import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe; import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.handlers.BlockTicker; -import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.handlers.ItemHandler; import me.mrCookieSlime.Slimefun.Setup.SlimefunManager; import me.mrCookieSlime.Slimefun.api.BlockStorage; import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock; @@ -33,47 +30,39 @@ import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import io.freeze_dolphin.ultimate_generators.Utils; -import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +@SuppressWarnings("unused") public abstract class ModularContainer extends SlimefunItem { - public static Map processing = new HashMap<>(); - public static Map progress = new HashMap<>(); - protected List recipes = new ArrayList<>(); - + protected static final int INDICATOR = 22; + protected static final int MACHINE_INFO = 8; private static final int[] border = { - 0, - 9, 17, - 18, 19, 20, 21, 23, 24, 25, 26, - 27, 35, - 36, 44 - }; + 0, + 9, 17, + 18, 19, 20, 21, 23, 24, 25, 26, + 27, 35, + 36, 44 + }; private static final int[] border_in = { - 1, 7, - 10, 11, 12, 13, 14, 15, 16 - }; + 1, 7, + 10, 11, 12, 13, 14, 15, 16 + }; private static final int[] border_out = { - 28, 29, 30, 31, 32, 33, 34, - 37, 43 - }; - - public int[] getInputSlots() { - return new int[]{2, 3, 4, 5, 6}; - } - - public int[] getOutputSlots() { - return new int[]{38, 39, 40, 41, 42}; - } - - protected static final int INDICATOR = 22; - protected static final int MACHINE_INFO = 8; - + 28, 29, 30, 31, 32, 33, 34, + 37, 43 + }; + public static Map processing = new HashMap<>(); + public static Map progress = new HashMap<>(); private final String ID; private final boolean displayMachineInfo; + protected List recipes = new ArrayList<>(); public ModularContainer(Category category, ItemStack item, String id, RecipeType recipeType, ItemStack[] recipe, boolean displayMachineInfo) { super(category, item, id, recipeType, recipe); @@ -136,20 +125,28 @@ public boolean onBreak(Player p, Block b, SlimefunItem item, UnregisterReason re registerDefaultRecipes(); } + public int[] getInputSlots() { + return new int[]{2, 3, 4, 5, 6}; + } + + public int[] getOutputSlots() { + return new int[]{38, 39, 40, 41, 42}; + } + protected void constructMenu(BlockMenuPreset preset) { for (int i : border) { preset.addItem(i, - new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 7), " ", new String[0]), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); + new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 7), " "), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); } for (int i : border_in) { preset.addItem(i, - new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 9), " ", new String[0]), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); + new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 9), " "), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); } for (int i : border_out) { preset.addItem(i, - new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 1), " ", new String[0]), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); + new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 1), " "), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); } - preset.addItem(INDICATOR, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 15), " ", new String[0]), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); + preset.addItem(INDICATOR, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 15), " "), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); for (int i : getOutputSlots()) { preset.addMenuClickHandler(i, new ChestMenu.AdvancedMenuClickHandler() { @Override @@ -159,7 +156,7 @@ public boolean onClick(Player p, int slot, ItemStack cursor, ClickAction action) @Override public boolean onClick(InventoryClickEvent e, Player p, int slot, ItemStack cursor, - ClickAction action) { + ClickAction action) { return (cursor == null) || (cursor.getType() == null) || (cursor.getType() == Material.AIR); } }); @@ -189,7 +186,7 @@ public String getMachineIdentifier() { } public MachineRecipe getProcessing(Block b) { - return (MachineRecipe) processing.get(b); + return processing.get(b); } public boolean isProcessing(Block b) { @@ -231,7 +228,7 @@ protected void pushItems(Block b, ItemStack[] items) { @Override public void register(boolean slimefun) { - addItemHandler(new ItemHandler[]{new BlockTicker() { + addItemHandler(new BlockTicker() { @Override public void tick(Block b, SlimefunItem sf, Config data) { @@ -246,7 +243,7 @@ public void uniqueTick() { public boolean isSynchronized() { return false; } - }}); + }); super.register(slimefun); } @@ -267,11 +264,11 @@ protected void tick(Block b) { int timeleft = (progress.get(b)); if (timeleft > 0) { ItemStack item = getProgressBar().clone(); - item.setDurability(MachineHelper.getDurability(item, timeleft, ((MachineRecipe) processing.get(b)).getTicks())); + item.setDurability(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks())); im = item.getItemMeta(); im.setDisplayName(" "); List lore = new ArrayList<>(); - lore.add(MachineHelper.getProgress(timeleft, ((MachineRecipe) processing.get(b)).getTicks())); + lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks())); lore.add(""); lore.add(MachineHelper.getTimeLeft(timeleft / 2)); im.setLore(lore); @@ -283,14 +280,12 @@ protected void tick(Block b) { return; } ChargableBlock.addCharge(b, -getEnergyConsumption()); - progress.put(b, timeleft - 1); - } else { - progress.put(b, timeleft - 1); } + progress.put(b, timeleft - 1); } else { BlockStorage.getInventory(b).replaceExistingItem(INDICATOR, - new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 15), " ", new String[0])); - pushItems(b, (ItemStack[]) ((MachineRecipe) processing.get(b)).getOutput().clone()); + new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 15), " ")); + pushItems(b, processing.get(b).getOutput().clone()); progress.remove(b); processing.remove(b); @@ -318,10 +313,8 @@ protected void tick(Block b) { if (!fits(b, r.getOutput())) { return; } - found.entrySet().forEach(entry -> { - BlockStorage.getInventory(b).replaceExistingItem((entry.getKey()), - InvUtils.decreaseItem(BlockStorage.getInventory(b).getItemInSlot((entry.getKey())), (entry.getValue()))); - }); + found.forEach((key, value) -> BlockStorage.getInventory(b).replaceExistingItem((key), + InvUtils.decreaseItem(BlockStorage.getInventory(b).getItemInSlot((key)), (value)))); processing.put(b, r); progress.put(b, r.getTicks()); } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/ModularGenerator.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/ModularGenerator.java index 838dbc0..7409ab7 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/ModularGenerator.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/abstracts/ModularGenerator.java @@ -1,12 +1,8 @@ package io.freeze_dolphin.ultimate_generators.objects.abstracts; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; - +import io.freeze_dolphin.ultimate_generators.Utils; +import io.freeze_dolphin.ultimate_generators.lists.UGItems; +import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ChestMenu.AdvancedMenuClickHandler; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ClickAction; @@ -27,7 +23,6 @@ import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu; import me.mrCookieSlime.Slimefun.api.inventory.BlockMenuPreset; import me.mrCookieSlime.Slimefun.api.item_transport.ItemTransportFlow; - import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.Material; @@ -38,49 +33,36 @@ import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import io.freeze_dolphin.ultimate_generators.Utils; -import io.freeze_dolphin.ultimate_generators.lists.UGItems; -import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; +import java.util.*; +@SuppressWarnings("unused") public abstract class ModularGenerator extends SlimefunItem { - public static Map processing = new HashMap(); - public static Map progress = new HashMap(); - - public Set recipes = new HashSet<>(); - + protected static final int INDICATOR = 22; + protected static final int MACHINE_INFO = 8; private static final int[] border = { - 0, - 9, 17, - 18, 19, 20, 21, 23, 24, 25, 26, - 27, 35, - 36, 44 - }; + 0, + 9, 17, + 18, 19, 20, 21, 23, 24, 25, 26, + 27, 35, + 36, 44 + }; private static final int[] border_in = { - 1, 7, - 10, 11, 12, 13, 14, 15, 16 - }; + 1, 7, + 10, 11, 12, 13, 14, 15, 16 + }; private static final int[] border_out = { - 28, 29, 30, 31, 32, 33, 34, - 37, 43 - }; - - public int[] getInputSlots() { - return new int[]{2, 3, 4, 5, 6}; - } - - public int[] getOutputSlots() { - return new int[]{38, 39, 40, 41, 42}; - } - - protected static final int INDICATOR = 22; - protected static final int MACHINE_INFO = 8; - + 28, 29, 30, 31, 32, 33, 34, + 37, 43 + }; + public static Map processing = new HashMap<>(); + public static Map progress = new HashMap<>(); private final String ID; private final boolean displayMachineInfo; + public Set recipes = new HashSet<>(); public ModularGenerator(Category category, ItemStack item, String id, RecipeType recipeType, ItemStack[] recipe, boolean displayMachineInfo) { super(category, item, id, recipeType, recipe); @@ -146,6 +128,14 @@ public boolean onBreak(Player p, Block b, SlimefunItem item, UnregisterReason re registerDefaultRecipes(); } + public int[] getInputSlots() { + return new int[]{2, 3, 4, 5, 6}; + } + + public int[] getOutputSlots() { + return new int[]{38, 39, 40, 41, 42}; + } + private void constructMenu(BlockMenuPreset preset) { for (int i : border) { preset.addItem(i, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 7), " "), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); @@ -221,7 +211,7 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { return 0D; } - if (!checkStructure(l.getBlock())) { + if (checkStructure(l.getBlock())) { return 0D; } @@ -288,9 +278,7 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { } if (r != null) { - found.entrySet().forEach(entry -> { - BlockStorage.getInventory(l).replaceExistingItem(entry.getKey(), InvUtils.decreaseItem(BlockStorage.getInventory(l).getItemInSlot(entry.getKey()), entry.getValue())); - }); + found.forEach((key, value) -> BlockStorage.getInventory(l).replaceExistingItem(key, InvUtils.decreaseItem(BlockStorage.getInventory(l).getItemInSlot(key), value))); processing.put(l, r); progress.put(l, r.getTicks()); } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/basics/DebugSlimefunItem.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/basics/DebugSlimefunItem.java index 9c8c25b..59e942d 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/basics/DebugSlimefunItem.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/basics/DebugSlimefunItem.java @@ -1,8 +1,5 @@ package io.freeze_dolphin.ultimate_generators.objects.basics; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; import me.mrCookieSlime.Slimefun.AncientAltar.AltarRecipe; import me.mrCookieSlime.Slimefun.Lists.RecipeType; import me.mrCookieSlime.Slimefun.Objects.Category; @@ -13,6 +10,10 @@ import org.bukkit.entity.EntityType; import org.bukkit.inventory.ItemStack; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + @Deprecated public class DebugSlimefunItem extends SlimefunItem { @@ -34,7 +35,7 @@ public void load() { if (getRecipeType().toItem().isSimilar(RecipeType.MOB_DROP.toItem())) { try { EntityType entity = EntityType.valueOf(ChatColor.stripColor(getRecipe()[4].getItemMeta().getDisplayName()).toUpperCase().replace(" ", "_")); - List dropping = new ArrayList(); + List dropping = new ArrayList<>(); if (SlimefunManager.drops.containsKey(entity)) { dropping = SlimefunManager.drops.get(entity); } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/basics/UniversalMaterial.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/basics/UniversalMaterial.java index 4ee5532..f604881 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/basics/UniversalMaterial.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/basics/UniversalMaterial.java @@ -15,7 +15,7 @@ public UniversalMaterial(Material m, int data) { } public MaterialData toData() { - return (MaterialData) this; + return this; } } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/BiofuelRefinery.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/BiofuelRefinery.java index c6cbdcc..9acf936 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/BiofuelRefinery.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/BiofuelRefinery.java @@ -1,8 +1,9 @@ package io.freeze_dolphin.ultimate_generators.objects.machines; -import java.util.ArrayList; -import java.util.List; - +import io.freeze_dolphin.ultimate_generators.PlugGividado; +import io.freeze_dolphin.ultimate_generators.lists.UGItems; +import io.freeze_dolphin.ultimate_generators.objects.abstracts.BContainer; +import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem; import me.mrCookieSlime.Slimefun.Lists.RecipeType; @@ -12,21 +13,18 @@ import me.mrCookieSlime.Slimefun.Setup.SlimefunManager; import me.mrCookieSlime.Slimefun.api.BlockStorage; import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock; - import org.bukkit.Material; import org.bukkit.block.Block; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import io.freeze_dolphin.ultimate_generators.Loader; -import io.freeze_dolphin.ultimate_generators.lists.UGItems; -import io.freeze_dolphin.ultimate_generators.objects.abstracts.BContainer; -import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; +import java.util.ArrayList; +import java.util.List; public abstract class BiofuelRefinery extends BContainer { public BiofuelRefinery(Category category, ItemStack item, String name, RecipeType recipeType, ItemStack[] recipe) { - super(category, item, name, recipeType, recipe, Loader.getDisplaySw()); + super(category, item, name, recipeType, recipe, PlugGividado.getDisplaySw()); } @Override @@ -58,7 +56,7 @@ public int getEnergyConsumption() { public int getSpeed() { return 1; } - + @Override protected void tick(Block b) { @@ -102,7 +100,7 @@ protected void tick(Block b) { for (int slot : getInputSlots()) { if (SlimefunManager.isItemSimiliar(BlockStorage.getInventory(b).getItemInSlot(slot), UGItems.BIOMASS_BUCKET, true)) { MachineRecipe r = new MachineRecipe(40, new ItemStack[0], new ItemStack[]{UGItems.BIOFUEL_BUCKET}); - if (!fits(b, r.getOutput())) { + if (fits(b, r.getOutput())) { return; } BlockStorage.getInventory(b).replaceExistingItem(slot, InvUtils.decreaseItem(BlockStorage.getInventory(b).getItemInSlot(slot), 1)); diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/MagnesiumGenerator.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/MagnesiumGenerator.java index c676451..34e326c 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/MagnesiumGenerator.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/MagnesiumGenerator.java @@ -1,13 +1,12 @@ package io.freeze_dolphin.ultimate_generators.objects.machines; -import org.bukkit.Material; -import org.bukkit.inventory.ItemStack; - import io.freeze_dolphin.ultimate_generators.lists.UGItems; import io.freeze_dolphin.ultimate_generators.objects.abstracts.BGenerator; import me.mrCookieSlime.Slimefun.Lists.RecipeType; import me.mrCookieSlime.Slimefun.Objects.Category; import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineFuel; +import org.bukkit.Material; +import org.bukkit.inventory.ItemStack; public class MagnesiumGenerator extends BGenerator { diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/OilRefinery.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/OilRefinery.java index 580b220..aca0334 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/OilRefinery.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/OilRefinery.java @@ -1,8 +1,9 @@ package io.freeze_dolphin.ultimate_generators.objects.machines; -import java.util.ArrayList; -import java.util.List; - +import io.freeze_dolphin.ultimate_generators.PlugGividado; +import io.freeze_dolphin.ultimate_generators.lists.UGItems; +import io.freeze_dolphin.ultimate_generators.objects.abstracts.BContainer; +import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem; import me.mrCookieSlime.Slimefun.Lists.RecipeType; @@ -13,21 +14,18 @@ import me.mrCookieSlime.Slimefun.Setup.SlimefunManager; import me.mrCookieSlime.Slimefun.api.BlockStorage; import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock; - import org.bukkit.Material; import org.bukkit.block.Block; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import io.freeze_dolphin.ultimate_generators.Loader; -import io.freeze_dolphin.ultimate_generators.lists.UGItems; -import io.freeze_dolphin.ultimate_generators.objects.abstracts.BContainer; -import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; +import java.util.ArrayList; +import java.util.List; public abstract class OilRefinery extends BContainer { public OilRefinery(Category category, ItemStack item, String name, RecipeType recipeType, ItemStack[] recipe) { - super(category, item, name, recipeType, recipe, Loader.getDisplaySw()); + super(category, item, name, recipeType, recipe, PlugGividado.getDisplaySw()); } @Override @@ -102,7 +100,7 @@ protected void tick(Block b) { for (int slot : getInputSlots()) { if (SlimefunManager.isItemSimiliar(BlockStorage.getInventory(b).getItemInSlot(slot), SlimefunItems.BUCKET_OF_OIL, true)) { MachineRecipe r = new MachineRecipe(40, new ItemStack[0], new ItemStack[]{UGItems.DIESEL_BUCKET}); - if (!fits(b, r.getOutput())) { + if (fits(b, r.getOutput())) { return; } BlockStorage.getInventory(b).replaceExistingItem(slot, InvUtils.decreaseItem(BlockStorage.getInventory(b).getItemInSlot(slot), 1)); diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/ender_crystal_generator/EnderCrystalGenerator.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/ender_crystal_generator/EnderCrystalGenerator.java index 40fafe0..e090deb 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/ender_crystal_generator/EnderCrystalGenerator.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/ender_crystal_generator/EnderCrystalGenerator.java @@ -1,12 +1,9 @@ package io.freeze_dolphin.ultimate_generators.objects.machines.ender_crystal_generator; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; - +import io.freeze_dolphin.ultimate_generators.PlugGividado; +import io.freeze_dolphin.ultimate_generators.Utils; +import io.freeze_dolphin.ultimate_generators.lists.UGItems; +import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ChestMenu.AdvancedMenuClickHandler; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ClickAction; @@ -28,7 +25,6 @@ import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu; import me.mrCookieSlime.Slimefun.api.inventory.BlockMenuPreset; import me.mrCookieSlime.Slimefun.api.item_transport.ItemTransportFlow; - import org.apache.commons.lang3.RandomUtils; import org.bukkit.Bukkit; import org.bukkit.ChatColor; @@ -36,7 +32,6 @@ import org.bukkit.Material; import org.bukkit.block.Block; import org.bukkit.entity.EnderCrystal; -import org.bukkit.entity.Entity; import org.bukkit.entity.EntityType; import org.bukkit.entity.Player; import org.bukkit.event.inventory.InventoryClickEvent; @@ -44,37 +39,23 @@ import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import io.freeze_dolphin.ultimate_generators.Loader; -import io.freeze_dolphin.ultimate_generators.Utils; -import io.freeze_dolphin.ultimate_generators.lists.UGItems; -import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; +import java.util.*; +@SuppressWarnings("unused") public abstract class EnderCrystalGenerator extends SlimefunItem { - public static Map processing = new HashMap(); - public static Map progress = new HashMap(); - - private Set recipes = new HashSet<>(); - + protected static final int INDICATOR = 22; + protected static final int MACHINE_INFO = 44; private static final int[] border = {0, 8, 9, 17, 18, 19, 20, 21, 23, 24, 25, 26, 27, 35, 36}; private static final int[] border_in = {1, 7, 10, 11, 12, 13, 14, 15, 16}; private static final int[] border_out = {28, 29, 30, 31, 32, 33, 34, 37, 43}; - - public int[] getInputSlots() { - return new int[]{2, 3, 4, 5, 6}; - } - - public int[] getOutputSlots() { - return new int[]{38, 39, 40, 41, 42}; - } - - protected static final int INDICATOR = 22; - protected static final int MACHINE_INFO = 44; - + public static Map processing = new HashMap<>(); + public static Map progress = new HashMap<>(); private final String ID; + private final Set recipes = new HashSet<>(); public EnderCrystalGenerator(Category category, ItemStack item, String id, RecipeType recipeType, - ItemStack[] recipe) { + ItemStack[] recipe) { super(category, item, id, recipeType, recipe); ID = id; @@ -130,19 +111,22 @@ public boolean onBreak(Player p, Block b, SlimefunItem item, UnregisterReason re } } - b.getWorld().getNearbyEntities(b.getLocation(), 4D, 4D, 4D).stream().filter(ety -> (ety.getType().equals(EntityType.ENDER_CRYSTAL))).map(ety -> (EnderCrystal) ety).forEachOrdered(ec -> { - try { - if (!ec.isShowingBottom() && ec.getCustomName() - .equals(ChatColor.translateAlternateColorCodes('&', "&d&l强化末影水晶&r"))) { - if (ec.getBeamTarget().getBlock().getLocation().distance(Utils - .locModify(b.getLocation(), 0.5F, -1.5F, 0.5F).getBlock().getLocation()) == 0D) { + b.getWorld().getNearbyEntities(b.getLocation(), 4D, 4D, 4D).stream() + .filter(ety -> (ety.getType().equals(EntityType.ENDER_CRYSTAL))).map(ety -> (EnderCrystal) ety) + .forEachOrdered(ec -> { + try { + if (!ec.isShowingBottom() && ec.getCustomName() + .equals(ChatColor.translateAlternateColorCodes('&', "&d&l强化末影水晶&r"))) { + if (ec.getBeamTarget().getBlock().getLocation() + .distance(Utils.locModify(b.getLocation(), 0.5F, -1.5F, 0.5F).getBlock() + .getLocation()) == 0D) { + ec.setBeamTarget(null); + } + } + } catch (Exception ex) { ec.setBeamTarget(null); } - } - } catch (Exception ex) { - ec.setBeamTarget(null); - } - }); + }); progress.remove(b.getLocation()); processing.remove(b.getLocation()); @@ -152,15 +136,44 @@ public boolean onBreak(Player p, Block b, SlimefunItem item, UnregisterReason re registerDefaultRecipes(); } + private static void setConnectedCrystalNum(Block b, int num) { + BlockStorage.addBlockInfo(b, "crystal-number", String.valueOf(num)); + } + + @SuppressWarnings("deprecation") + private static int getConnectedCrystalNum(Block b) { + if (!BlockStorage.hasBlockInfo(b)) { + return 0; + } + if (BlockStorage.getBlockInfo(b, "crystal-number") == null) { + return 0; + } + if (BlockStorage.getBlockInfo(b, "crystal-number").equals("")) { + return 0; + } + return Integer.parseInt(BlockStorage.getBlockInfo(b, "crystal-number")); + } + + public int[] getInputSlots() { + return new int[]{2, 3, 4, 5, 6}; + } + + public int[] getOutputSlots() { + return new int[]{38, 39, 40, 41, 42}; + } + private void constructMenu(BlockMenuPreset preset) { for (int i : border) { - preset.addItem(i, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 7), " "), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); + preset.addItem(i, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 7), " "), + (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); } for (int i : border_in) { - preset.addItem(i, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 9), " "), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); + preset.addItem(i, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 9), " "), + (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); } for (int i : border_out) { - preset.addItem(i, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 1), " "), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); + preset.addItem(i, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 1), " "), + (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); } for (int i : getOutputSlots()) { @@ -173,16 +186,19 @@ public boolean onClick(Player p, int slot, ItemStack cursor, ClickAction action) @Override public boolean onClick(InventoryClickEvent e, Player p, int slot, ItemStack cursor, - ClickAction action) { + ClickAction action) { return cursor == null || cursor.getType() == null || cursor.getType() == Material.AIR; } }); } - preset.addItem(INDICATOR, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 15), " "), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); + preset.addItem(INDICATOR, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 15), " "), + (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); - preset.addItem(MACHINE_INFO, new CustomItem(new UniversalMaterial(Material.EMPTY_MAP), "&f机器信息", - "&3结构完整性: &4&l✘&r", "&3已连接水晶: &e0", "&3机器状态: &e无"), (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); + preset.addItem( + MACHINE_INFO, new CustomItem(new UniversalMaterial(Material.EMPTY_MAP), "&f机器信息", "&3结构完整性: &4&l✘&r", + "&3已连接水晶: &e0", "&3机器状态: &e无"), + (Player arg0, int arg1, ItemStack arg2, ClickAction arg3) -> false); } private void registerDefaultRecipes() { @@ -233,7 +249,8 @@ private boolean checkStructure(Block b) { return false; } - return ll.stream().noneMatch(lc -> (BlockStorage.checkID(lc) == null || !BlockStorage.checkID(lc).equals("ENDER_CRYSTAL_GENERATOR_BASE"))); + return ll.stream().noneMatch(lc -> (BlockStorage.checkID(lc) == null + || !BlockStorage.checkID(lc).equals("ENDER_CRYSTAL_GENERATOR_BASE"))); } @@ -246,25 +263,27 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { Location genL = Utils.locModify(l.getBlock().getLocation(), 0.5F, -1.5F, 0.5F); Location partL = Utils.locModify(genL, 0F, 2F, 0F); - Bukkit.getScheduler().scheduleSyncDelayedTask(Loader.getImplement(), () -> { + Bukkit.getScheduler().scheduleSyncDelayedTask(PlugGividado.getImplement(), () -> { List ecc = new ArrayList<>(); - l.getWorld().getNearbyEntities(l, 4D, 4D, 4D).stream().filter(ety -> (ety.getType().equals(EntityType.ENDER_CRYSTAL))).map(ety -> (EnderCrystal) ety).forEachOrdered(ec -> { - try { - if (!ec.isShowingBottom() && ec.getCustomName() - .equals(ChatColor.translateAlternateColorCodes('&', "&d&l强化末影水晶&r"))) { - if (ec.getBeamTarget() == null) { - ec.setBeamTarget(genL); - } - if (ec.getBeamTarget().getBlock().getLocation() - .distance(genL.getBlock().getLocation()) == 0D) { - ecc.add(ec); + l.getWorld().getNearbyEntities(l, 4D, 4D, 4D).stream() + .filter(ety -> (ety.getType().equals(EntityType.ENDER_CRYSTAL))) + .map(ety -> (EnderCrystal) ety).forEachOrdered(ec -> { + try { + if (!ec.isShowingBottom() && ec.getCustomName() + .equals(ChatColor.translateAlternateColorCodes('&', "&d&l强化末影水晶&r"))) { + if (ec.getBeamTarget() == null) { + ec.setBeamTarget(genL); + } + if (ec.getBeamTarget().getBlock().getLocation() + .distance(genL.getBlock().getLocation()) == 0D) { + ecc.add(ec); + } + } + } catch (Exception ex) { + ec.setBeamTarget(null); } - } - } catch (Exception ex) { - ec.setBeamTarget(null); - } - }); + }); setConnectedCrystalNum(l.getBlock(), ecc.size()); }); @@ -273,12 +292,9 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { } if (!checkStructure(l.getBlock())) { - Utils.asyncDelay(() -> { - BlockStorage.getInventory(l).replaceExistingItem(MACHINE_INFO, - new CustomItem(new UniversalMaterial(Material.EMPTY_MAP), "&f机器信息", - "&3结构完整性: &4&l✘&r", "&3已连接水晶: &e" + getConnectedCrystalNum(l.getBlock()), - "&3机器状态: &a正常")); - }); + Utils.asyncDelay(() -> BlockStorage.getInventory(l).replaceExistingItem(MACHINE_INFO, + new CustomItem(new UniversalMaterial(Material.EMPTY_MAP), "&f机器信息", "&3结构完整性: &4&l✘&r", + "&3已连接水晶: &e" + getConnectedCrystalNum(l.getBlock()), "&3机器状态: &a正常"))); return 0D; } @@ -288,7 +304,7 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { try { ParticleEffect.END_ROD.display(partL, 0F, 0F, 0F, 0.1F, RandomUtils.nextInt(2, getConnectedCrystalNum(l.getBlock()) + 2)); - } catch (Exception e) { + } catch (Exception ignored) { } if (getConnectedCrystalNum(l.getBlock()) > getWarningCrystalNum()) { @@ -307,18 +323,18 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { try { ParticleEffect.VILLAGER_ANGRY.display(partL, 0F, 0F, 0F, 0.1F, RandomUtils.nextInt(1, warn + 2)); - } catch (Exception e) { + } catch (Exception ignored) { } } } else { BlockStorage.getInventory(l).replaceExistingItem(MACHINE_INFO, new CustomItem(new UniversalMaterial(Material.EMPTY_MAP), "&f机器信息", - "&3结构完整性: &2&l✔&r", - "&3已连接水晶: &e" + getConnectedCrystalNum(l.getBlock()), "&3机器状态: &a正常")); + "&3结构完整性: &2&l✔&r", "&3已连接水晶: &e" + getConnectedCrystalNum(l.getBlock()), + "&3机器状态: &a正常")); try { ParticleEffect.DRAGON_BREATH.display(partL, 0F, 0F, 0F, 0.3F, RandomUtils.nextInt(1, 3)); - } catch (Exception e) { + } catch (Exception ignored) { } } }); @@ -395,10 +411,8 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { } if (r != null) { - found.entrySet().forEach(entry -> { - BlockStorage.getInventory(l).replaceExistingItem(entry.getKey(), InvUtils.decreaseItem( - BlockStorage.getInventory(l).getItemInSlot(entry.getKey()), entry.getValue())); - }); + found.forEach((key, value) -> BlockStorage.getInventory(l).replaceExistingItem(key, InvUtils.decreaseItem( + BlockStorage.getInventory(l).getItemInSlot(key), value))); processing.put(l, r); progress.put(l, r.getTicks()); } @@ -444,22 +458,4 @@ protected void pushItems(Location l, ItemStack[] items) { } } - private static void setConnectedCrystalNum(Block b, int num) { - BlockStorage.addBlockInfo(b, "crystal-number", String.valueOf(num)); - } - - @SuppressWarnings("deprecation") - private static int getConnectedCrystalNum(Block b) { - if (!BlockStorage.hasBlockInfo(b)) { - return 0; - } - if (BlockStorage.getBlockInfo(b, "crystal-number") == null) { - return 0; - } - if (BlockStorage.getBlockInfo(b, "crystal-number").equals("")) { - return 0; - } - return Integer.parseInt(BlockStorage.getBlockInfo(b, "crystal-number")); - } - } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/ender_crystal_generator/EnderCrystalStabilizer.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/ender_crystal_generator/EnderCrystalStabilizer.java index 2f78f01..c44379e 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/ender_crystal_generator/EnderCrystalStabilizer.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/ender_crystal_generator/EnderCrystalStabilizer.java @@ -1,5 +1,7 @@ package io.freeze_dolphin.ultimate_generators.objects.machines.ender_crystal_generator; +import io.freeze_dolphin.ultimate_generators.PlugGividado; +import io.freeze_dolphin.ultimate_generators.Utils; import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config; import me.mrCookieSlime.Slimefun.Lists.RecipeType; import me.mrCookieSlime.Slimefun.Objects.Category; @@ -7,16 +9,12 @@ import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.handlers.BlockTicker; import me.mrCookieSlime.Slimefun.api.BlockStorage; import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock; - import org.apache.commons.lang3.RandomUtils; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.block.Block; import org.bukkit.inventory.ItemStack; -import io.freeze_dolphin.ultimate_generators.Loader; -import io.freeze_dolphin.ultimate_generators.Utils; - public class EnderCrystalStabilizer extends SlimefunItem { public EnderCrystalStabilizer(Category category, ItemStack item, String id, RecipeType recipeType, ItemStack[] recipe) { @@ -56,7 +54,7 @@ protected void tick(Block b) { } if (ChargableBlock.getCharge(b) < getEnergyConsumption()) { - Bukkit.getScheduler().scheduleSyncDelayedTask(Loader.getImplement(), () -> { + Bukkit.getScheduler().scheduleSyncDelayedTask(PlugGividado.getImplement(), () -> { BlockStorage.clearBlockInfo(b); b.setType(Material.AIR); b.getWorld().createExplosion(Utils.locModify(b.getLocation(), 0.5F, 0.5F, 0.5F), 0F, false); diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/rainbow_generator/RainbowGenerator.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/rainbow_generator/RainbowGenerator.java index c8eef77..26f3211 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/rainbow_generator/RainbowGenerator.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/machines/rainbow_generator/RainbowGenerator.java @@ -1,10 +1,9 @@ package io.freeze_dolphin.ultimate_generators.objects.machines.rainbow_generator; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - +import io.freeze_dolphin.ultimate_generators.Utils; +import io.freeze_dolphin.ultimate_generators.lists.UGItems; +import io.freeze_dolphin.ultimate_generators.objects.abstracts.ModularGenerator; +import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem; @@ -18,17 +17,16 @@ import me.mrCookieSlime.Slimefun.api.BlockStorage; import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock; import me.mrCookieSlime.Slimefun.api.energy.EnergyTicker; - import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.block.Block; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import io.freeze_dolphin.ultimate_generators.Utils; -import io.freeze_dolphin.ultimate_generators.lists.UGItems; -import io.freeze_dolphin.ultimate_generators.objects.abstracts.ModularGenerator; -import io.freeze_dolphin.ultimate_generators.objects.basics.UniversalMaterial; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; public abstract class RainbowGenerator extends ModularGenerator { @@ -172,7 +170,7 @@ public boolean checkStructure(Block b) { s.add(Utils.locModify(l, 2, 2, 1)); s.add(Utils.locModify(l, 2, 2, 2)); - return s.stream().noneMatch(ll -> (ll.getBlock().getType().equals(Material.AIR) + return s.stream().anyMatch(ll -> (ll.getBlock().getType().equals(Material.AIR) || !BlockStorage.check(ll, "REINFORCED_RAINBOW_GLASS"))); } @@ -188,7 +186,7 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { return 0D; } - if (!checkStructure(l.getBlock())) { + if (checkStructure(l.getBlock())) { return 0D; } @@ -212,7 +210,7 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { if (ChargableBlock.isChargable(l)) { if (ChargableBlock.getMaxCharge(l) - ChargableBlock .getCharge(l) >= (int) (l.getWorld().isThundering() ? getEnergyProduction() * 1.5 - : getEnergyProduction())) { + : getEnergyProduction())) { ChargableBlock.addCharge(l, (int) (l.getWorld().isThundering() ? getEnergyProduction() * 1.5 : getEnergyProduction())); @@ -227,17 +225,17 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { } else { ItemStack fuel = processing.get(l).getInput(); if (SlimefunManager.isItemSimiliar(fuel, new ItemStack(Material.LAVA_BUCKET), true)) { - pushItems(l, new ItemStack[] { new ItemStack(Material.BUCKET) }); + pushItems(l, new ItemStack[]{new ItemStack(Material.BUCKET)}); } else if (SlimefunManager.isItemSimiliar(fuel, SlimefunItems.BUCKET_OF_FUEL, true)) { - pushItems(l, new ItemStack[] { new ItemStack(Material.BUCKET) }); + pushItems(l, new ItemStack[]{new ItemStack(Material.BUCKET)}); } else if (SlimefunManager.isItemSimiliar(fuel, SlimefunItems.BUCKET_OF_OIL, true)) { - pushItems(l, new ItemStack[] { new ItemStack(Material.BUCKET) }); + pushItems(l, new ItemStack[]{new ItemStack(Material.BUCKET)}); } else if (SlimefunManager.isItemSimiliar(fuel, UGItems.BIOFUEL_BUCKET, true)) { - pushItems(l, new ItemStack[] { new ItemStack(Material.BUCKET) }); + pushItems(l, new ItemStack[]{new ItemStack(Material.BUCKET)}); } else if (SlimefunManager.isItemSimiliar(fuel, UGItems.BIOMASS_BUCKET, true)) { - pushItems(l, new ItemStack[] { new ItemStack(Material.BUCKET) }); + pushItems(l, new ItemStack[]{new ItemStack(Material.BUCKET)}); } else if (SlimefunManager.isItemSimiliar(fuel, UGItems.DIESEL_BUCKET, true)) { - pushItems(l, new ItemStack[] { new ItemStack(Material.BUCKET) }); + pushItems(l, new ItemStack[]{new ItemStack(Material.BUCKET)}); } BlockStorage.getInventory(l).replaceExistingItem(INDICATOR, new CustomItem(new UniversalMaterial(Material.STAINED_GLASS_PANE, 15), " ")); @@ -249,7 +247,8 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { } else { MachineFuel r = null; Map found = new HashMap<>(); - outer: for (MachineFuel recipe : recipes) { + outer: + for (MachineFuel recipe : recipes) { for (int slot : getInputSlots()) { if (SlimefunManager.isItemSimiliar(BlockStorage.getInventory(l).getItemInSlot(slot), recipe.getInput(), true)) { @@ -261,10 +260,8 @@ public double generateEnergy(Location l, SlimefunItem sf, Config data) { } if (r != null) { - found.entrySet().forEach(entry -> { - BlockStorage.getInventory(l).replaceExistingItem(entry.getKey(), InvUtils.decreaseItem( - BlockStorage.getInventory(l).getItemInSlot(entry.getKey()), entry.getValue())); - }); + found.forEach((key, value) -> BlockStorage.getInventory(l).replaceExistingItem(key, InvUtils.decreaseItem( + BlockStorage.getInventory(l).getItemInSlot(key), value))); processing.put(l, r); progress.put(l, r.getTicks()); } diff --git a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/tasks/ReinforcedRainbowTicker.java b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/tasks/ReinforcedRainbowTicker.java index 2411134..9931c75 100644 --- a/src/main/java/io/freeze_dolphin/ultimate_generators/objects/tasks/ReinforcedRainbowTicker.java +++ b/src/main/java/io/freeze_dolphin/ultimate_generators/objects/tasks/ReinforcedRainbowTicker.java @@ -3,7 +3,6 @@ import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config; import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem; import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.handlers.BlockTicker; - import org.apache.commons.lang3.RandomUtils; import org.bukkit.block.Block; diff --git a/src/main/resources/config.properties b/src/main/resources/config.properties index 65c00bc..8d0ed0e 100644 --- a/src/main/resources/config.properties +++ b/src/main/resources/config.properties @@ -3,4 +3,4 @@ enable-update-notification = "false" # Update Notificator NOT AVAILABLE now -# Setting this to "true" will cause WARNINGs in you server console +# Don't setting this to "true" diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index e2559e9..722f53b 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,7 +1,11 @@ -name: UltimateGenerators -main: io.freeze_dolphin.ultimate_generators.Loader +main: io.freeze_dolphin.ultimate_generators.PlugGividado version: ${project.version} + +name: UltimateGenerators author: Freeze_Dolphin + website: https://github.com/freeze-dolphin/UltimateGenerators/ -depend: [Slimefun, CS-CoreLib] +depend: + - Slimefun + - CS-CoreLib