Skip to content

Commit 318ed3b

Browse files
committed
Add Permission for use biome
1 parent 237c2c1 commit 318ed3b

File tree

4 files changed

+10
-4
lines changed

4 files changed

+10
-4
lines changed

jitpack.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
jdk:
2-
- openjdk17
2+
- openjdk21
33

44
projectDir: api

plugin/src/main/java/fr/euphyllia/skyllia/Main.java

-2
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@ public class Main extends JavaPlugin {
4242

4343
@Override
4444
public void onEnable() {
45-
logger.log(Level.INFO, "Plugin Start");
4645
try {
4746
this.interneAPI = new InterneAPI(this);
4847
} catch (UnsupportedMinecraftVersionException e) {
@@ -87,7 +86,6 @@ public void onEnable() {
8786

8887
@Override
8988
public void onDisable() {
90-
this.logger.log(Level.INFO, "Plugin Off");
9189
Bukkit.getAsyncScheduler().cancelTasks(this);
9290
Bukkit.getGlobalRegionScheduler().cancelTasks(this);
9391
if (this.interneAPI.getDatabaseLoader() != null) {

plugin/src/main/java/fr/euphyllia/skyllia/commands/common/subcommands/SetBiomeSubCommand.java

+7-1
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,10 @@ public boolean onCommand(@NotNull Main plugin, @NotNull CommandSender sender, @N
6464
return true;
6565
}
6666

67+
if (!player.hasPermission("skyllia.island.command.biome.%s".formatted(biome.name()))) {
68+
LanguageToml.sendMessage(plugin, player, LanguageToml.messageBiomePermissionDenied.formatted(selectBiome));
69+
}
70+
6771
if (Boolean.FALSE.equals(WorldUtils.isWorldSkyblock(playerLocation.getWorld().getName()))) {
6872
LanguageToml.sendMessage(plugin, player, LanguageToml.messageBiomeOnlyIsland);
6973
return true;
@@ -125,7 +129,9 @@ public boolean onCommand(@NotNull Main plugin, @NotNull CommandSender sender, @N
125129
List<String> biomesList = new ArrayList<>();
126130
if (args.length == 1) {
127131
for (Biome biome : Biome.values()) {
128-
biomesList.add(biome.name());
132+
if (sender.hasPermission("skyllia.island.command.biome.%s".formatted(biome.name()))) {
133+
biomesList.add(biome.name());
134+
}
129135
}
130136
}
131137
return biomesList;

plugin/src/main/java/fr/euphyllia/skyllia/configuration/LanguageToml.java

+2
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ public class LanguageToml {
4747
public static String messageBiomeCommandNotEnoughArgs = "La commande n'est pas complète : /skyllia biome <biome>";
4848
public static String messageBiomeOnlyIsland = "La commande ne peut être exécuté seulement sur une île";
4949
public static String messageBiomeNotExist = "Le biome %s n'existe pas.";
50+
public static String messageBiomePermissionDenied = "Vous n'avez pas la permission d'utiliser ce biome.";
5051
public static String messageBiomeChangeInProgress = "Changement de biome en cours. Veuillez notez que ça prends du temps... Un message vous avertira quand le processus sera achevé.";
5152
public static String messageBiomeChangeSuccess = "Le changement de biome dans le chunk où vous étiez est terminé ! Vous devez quitter et revenir sur votre île pour voir le changement.";
5253
public static String messageInviteAlreadyIsland = "Vous êtes déjà sur une île !";
@@ -235,6 +236,7 @@ private static void islandBiomeLanguage() {
235236
messageBiomeCommandNotEnoughArgs = getString("island.biome.not-enough-args", messageBiomeCommandNotEnoughArgs);
236237
messageBiomeOnlyIsland = getString("island.biome.only-island", messageBiomeOnlyIsland);
237238
messageBiomeNotExist = getString("island.biome.biome-not-exist", messageBiomeNotExist);
239+
messageBiomePermissionDenied = getString("island.biome.permission-denied", messageBiomePermissionDenied);
238240
messageBiomeChangeInProgress = getString("island.biome.change-in-progress", messageBiomeChangeInProgress);
239241
messageBiomeChangeSuccess = getString("island.biome.success", messageBiomeChangeSuccess);
240242
}

0 commit comments

Comments
 (0)