File tree Expand file tree Collapse file tree
src/main/java/pro/cloudnode/smp/cloudnodemsg Expand file tree Collapse file tree Original file line number Diff line number Diff line change 22
33import org .bukkit .entity .Player ;
44import org .bukkit .metadata .MetadataValue ;
5+ import org .bukkit .permissions .Permission ;
56import org .bukkit .plugin .java .JavaPlugin ;
67import org .jetbrains .annotations .NotNull ;
78import pro .cloudnode .smp .cloudnodemsg .command .IgnoreCommand ;
@@ -30,6 +31,8 @@ public void onEnable() {
3031 saveDefaultConfig ();
3132 reload ();
3233
34+ Permissions .register ();
35+
3336 Objects .requireNonNull (getCommand ("cloudnodemsg" )).setExecutor (new MainCommand ());
3437 Objects .requireNonNull (getCommand ("message" )).setExecutor (new MessageCommand ());
3538 Objects .requireNonNull (getCommand ("reply" )).setExecutor (new ReplyCommand ());
Original file line number Diff line number Diff line change 33import org .bukkit .Bukkit ;
44import org .bukkit .permissions .Permission ;
55import org .bukkit .permissions .PermissionDefault ;
6+ import org .jetbrains .annotations .NotNull ;
67import org .jspecify .annotations .NullMarked ;
78
9+ import java .util .ArrayDeque ;
10+ import java .util .Queue ;
11+
812@ NullMarked
913public final class Permissions {
1014 private static final String NAME = "cloudnodemsg" ;
1115
16+ private static final Queue <Permission > REGISTRATION_QUEUE = new ArrayDeque <>();
17+
1218 public static final Permission USE = create (
1319 "use" ,
1420 "Allows access to the private message (/msg) and reply (/r) commands" ,
@@ -78,7 +84,14 @@ private static Permission create(
7884 ) {
7985 final var permission = create (node , description );
8086 permission .setDefault (permissionDefault );
81- Bukkit . getPluginManager (). addPermission (permission );
87+ REGISTRATION_QUEUE . add (permission );
8288 return permission ;
8389 }
90+
91+ public static void register () {
92+ final var pm = Bukkit .getPluginManager ();
93+ while (!REGISTRATION_QUEUE .isEmpty ()) {
94+ pm .addPermission (REGISTRATION_QUEUE .poll ());
95+ }
96+ }
8497}
You can’t perform that action at this time.
0 commit comments