Skip to content

Commit

Permalink
Merge pull request #7 from piotrmaciejbednarski/develop
Browse files Browse the repository at this point in the history
 Improve WorldEdit Plugin Handling
  • Loading branch information
piotrmaciejbednarski authored Feb 12, 2025
2 parents 344ac5c + a35325b commit 8a51adf
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 7 deletions.
3 changes: 2 additions & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,9 @@ repositories {

dependencies {
compileOnly("io.papermc.paper:paper-api:1.20.1-R0.1-SNAPSHOT")
compileOnly("com.sk89q.worldedit:worldedit-bukkit:7.3.0")
compileOnly("com.google.code.gson:gson:2.12.1")
compileOnly("com.sk89q.worldedit:worldedit-bukkit:7.3.0")
compileOnly("com.sk89q.worldedit:worldedit-core:7.3.0")
implementation("org.bstats:bstats-bukkit:3.0.0")
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package pl.bednarskiwsieci.logicgatesplugin;

import com.sk89q.worldedit.WorldEdit;
import com.sk89q.worldedit.util.eventbus.EventBus;
import org.bstats.bukkit.Metrics;
import org.bukkit.*;
import org.bukkit.block.Block;
Expand All @@ -13,6 +14,7 @@
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.scheduler.BukkitRunnable;
import org.bukkit.scheduler.BukkitTask;
Expand Down Expand Up @@ -121,12 +123,19 @@ public void onEnable() {
getLogger().severe("An error occurred while checking for updates");
}

// Register WorldEdit Integration
try {
WorldEdit.getInstance().getEventBus().register(new WorldEditIntegration(this));
getLogger().info("WorldEdit Integration has been registered");
} catch (Exception e) {
getLogger().severe("Failed to register WorldEdit integration");
// Register WorldEdit Integration if WorldEdit is present
if (isWorldEditPresent()) {
try {
WorldEdit worldEditInstance = WorldEdit.getInstance();
EventBus eventBus = worldEditInstance.getEventBus();
eventBus.register(new WorldEditIntegration(this));
getLogger().info("WorldEdit Integration has been registered");
} catch (Exception e) {
getLogger().severe("Failed to register WorldEdit integration");
e.printStackTrace();
}
} else {
getLogger().info("WorldEdit not found, skipping integration");
}
}

Expand Down Expand Up @@ -155,6 +164,16 @@ private void initializeConfigFiles() {
//endregion

//region Component Registration
private boolean isWorldEditPresent() {
Plugin[] plugins = Bukkit.getPluginManager().getPlugins();
for(Plugin plugin : plugins) {
if (plugin.getName().toLowerCase().contains("worldedit")) {
return true;
}
}
return false;
}

private void registerCommands() {
Objects.requireNonNull(getCommand("logicgates")).setExecutor(new LogicGatesCommand(this, configManager, updateChecker));
}
Expand Down

0 comments on commit 8a51adf

Please sign in to comment.