Skip to content
This repository was archived by the owner on Feb 10, 2024. It is now read-only.

Commit 82e51c0

Browse files
authored
Merge pull request #2 from Window5000/dev
Update permission handling
2 parents 35872c0 + 26a7fdf commit 82e51c0

File tree

5 files changed

+21
-8
lines changed

5 files changed

+21
-8
lines changed

build.gradle

+3-1
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ repositories {
3636
}
3737
maven { url = "https://maven.enginehub.org/repo/" }
3838

39+
3940
//maven { url 'https://nexus.byteandbit.cloud/repository/maven-releases/' }
4041
maven { url 'https://repo.spongepowered.org/repository/maven-public/' }
4142
/*maven {
@@ -61,9 +62,10 @@ def jarArtifact = artifacts.add('archives', jarFile.get().asFile) {
6162
dependencies {
6263
compileOnly 'com.github.Minestom:Minestom:-SNAPSHOT'
6364
//compileOnly("net.pixelravens:PixelLib:b114")
64-
implementation('com.google.guava:guava:31.1-jre')
65+
compileOnly('com.google.guava:guava:31.1-jre')
6566
compileOnly("com.sk89q.worldedit:worldedit-core:7.2.12")
6667
compileOnly('org.spongepowered:configurate-yaml:4.1.2');
68+
compileOnly 'com.github.MinestomPlugins:lib-permissions:5a9310e71f'
6769
}
6870

6971
shadowJar {

src/main/java/io/github/openminigameserver/worldedit/MinestomWorldEdit.java

+2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import com.sk89q.worldedit.world.item.ItemType;
1111
import io.github.openminigameserver.worldedit.platform.MinestomPlatform;
1212
import io.github.openminigameserver.worldedit.platform.adapters.MinestomAdapter;
13+
import io.github.openminigameserver.worldedit.platform.adapters.MinestomPermissionProvider;
1314
import io.github.openminigameserver.worldedit.platform.config.WorldEditConfiguration;
1415
import net.minestom.server.extensions.Extension;
1516
import net.minestom.server.instance.block.Block;
@@ -49,6 +50,7 @@ public void initialize() {
4950

5051
registerBlocks();
5152
registerItems();
53+
MinestomPermissionProvider.init();
5254
}
5355

5456
private void loadConfig() {
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,21 @@
11
package io.github.openminigameserver.worldedit.platform.adapters;
22

3+
import me.window.permissions.PermissionProvider;
34
import net.minestom.server.entity.Player;
45

56
public class MinestomPermissionProvider {
7+
8+
public static PermissionProvider provider;
9+
10+
public static void init() {
11+
provider = new PermissionProvider(4, "worldedit");
12+
}
613
public static boolean hasPermission(Player player, String permission) {
7-
if (player.hasPermission("*") || player.hasPermission("worldedit.*") || player.getPermissionLevel() >= 4)
8-
return true;
9-
return player.hasPermission(permission);
14+
return provider.hasExtensionPermission(player, permission);
1015
}
1116

1217
public static boolean hasWorldEditPermission(Player player) {
13-
return player.hasPermission("*") || player.hasPermission("worldedit") || player.getPermissionLevel() >= 4;
18+
return provider.hasExtensionPermission(player);
1419
}
1520

1621
}

src/main/java/io/github/openminigameserver/worldedit/platform/misc/WorldEditCommand.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ private boolean condition(final CommandSender sender, final String command) {
6161
InjectedValueStore store = MapBackedValueStore.create();
6262
store.injectValue(Key.of(Actor.class), context ->
6363
Optional.of(new MinestomPlayer(MinestomAdapter.platform, (Player) sender)));
64-
return cmd.getCondition().satisfied(store);
64+
return cmd.getCondition().satisfied(store) && MinestomPermissionProvider.hasWorldEditPermission((Player) sender);
6565
}
6666

6767
@Override

src/main/resources/extension.json

+6-2
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,15 @@
1313
"externalDependencies": {
1414
"repositories": [
1515
{"name": "sponge", "url": "https://repo.spongepowered.org/repository/maven-public/" },
16-
{"name": "enginehub", "url": "https://maven.enginehub.org/repo/" }
16+
{"name": "enginehub", "url": "https://maven.enginehub.org/repo/" },
17+
{"name": "jitpack", "url": "https://jitpack.io" },
18+
{"name": "Central", "url": "https://repo1.maven.org/maven2/"}
1719
],
1820
"artifacts": [
1921
"org.spongepowered:configurate-yaml:4.1.2",
20-
"com.sk89q.worldedit:worldedit-core:7.2.12"
22+
"com.sk89q.worldedit:worldedit-core:7.2.12",
23+
"com.github.MinestomPlugins:lib-permissions:5a9310e71f",
24+
"com.google.guava:guava:31.1-jre"
2125
]
2226
}
2327
}

0 commit comments

Comments
 (0)