From 120bf371963b27daab21aff35be5e4885a6f7568 Mon Sep 17 00:00:00 2001 From: Hraponssi Date: Fri, 23 Dec 2022 11:08:38 +0200 Subject: [PATCH 01/27] Fix dispensers loading Legacy Material Support (#3894) Fixes https://github.com/IntellectualSites/PlotSquared/issues/3883 --- .../plotsquared/bukkit/listener/BlockEventListener.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/BlockEventListener.java b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/BlockEventListener.java index 61365db8c..dded70e62 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/BlockEventListener.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/BlockEventListener.java @@ -71,6 +71,7 @@ import org.bukkit.block.Block; import org.bukkit.block.BlockFace; import org.bukkit.block.BlockState; import org.bukkit.block.data.BlockData; +import org.bukkit.block.data.type.Dispenser; import org.bukkit.entity.Entity; import org.bukkit.entity.Fireball; import org.bukkit.entity.Player; @@ -100,7 +101,6 @@ import org.bukkit.event.block.EntityBlockFormEvent; import org.bukkit.event.block.LeavesDecayEvent; import org.bukkit.event.block.SpongeAbsorbEvent; import org.bukkit.event.world.StructureGrowEvent; -import org.bukkit.material.Directional; import org.bukkit.projectiles.BlockProjectileSource; import org.bukkit.util.Vector; import org.checkerframework.checker.nullness.qual.NonNull; @@ -926,6 +926,9 @@ public class BlockEventListener implements Listener { @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) public void onBlockDispense(BlockDispenseEvent event) { + if (!this.plotAreaManager.hasPlotArea(event.getBlock().getWorld().getName())) { + return; + } Material type = event.getItem().getType(); switch (type.toString()) { case "SHULKER_BOX", "WHITE_SHULKER_BOX", "ORANGE_SHULKER_BOX", "MAGENTA_SHULKER_BOX", "LIGHT_BLUE_SHULKER_BOX", @@ -937,7 +940,7 @@ public class BlockEventListener implements Listener { if (event.getBlock().getType() == Material.DROPPER) { return; } - BlockFace targetFace = ((Directional) event.getBlock().getState().getData()).getFacing(); + BlockFace targetFace = ((Dispenser) event.getBlock().getBlockData()).getFacing(); Location location = BukkitUtil.adapt(event.getBlock().getRelative(targetFace).getLocation()); if (location.isPlotRoad()) { event.setCancelled(true); From 742d78a505455dc8fca0ecea83dd629b8f6682f0 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Fri, 23 Dec 2022 13:41:58 +0100 Subject: [PATCH 02/27] Add 1.19.3 to the issue template --- .github/ISSUE_TEMPLATE/bug_report.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 3067cc238..ddc9a2a87 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -27,6 +27,7 @@ body: description: Which server version version you using? If your server version is not listed, it is not supported. Update to a supported version first. multiple: false options: + - '1.19.3' - '1.19.2' - '1.19.1' - '1.19' From 339ca8e30fda26f2f1fa2522d692872cd02ad701 Mon Sep 17 00:00:00 2001 From: Hannes Greule Date: Wed, 4 Jan 2023 12:35:12 +0100 Subject: [PATCH 03/27] Fix wrong plot id calculation for negative coordinates (#3898) --- .../core/generator/SquarePlotManager.java | 46 ++++--------------- 1 file changed, 10 insertions(+), 36 deletions(-) diff --git a/Core/src/main/java/com/plotsquared/core/generator/SquarePlotManager.java b/Core/src/main/java/com/plotsquared/core/generator/SquarePlotManager.java index 205ee06ad..6ca53e2cd 100644 --- a/Core/src/main/java/com/plotsquared/core/generator/SquarePlotManager.java +++ b/Core/src/main/java/com/plotsquared/core/generator/SquarePlotManager.java @@ -114,26 +114,14 @@ public abstract class SquarePlotManager extends GridPlotManager { end = pathWidthLower + squarePlotWorld.PLOT_WIDTH; } int size = squarePlotWorld.PLOT_WIDTH + squarePlotWorld.ROAD_WIDTH; - int idx; - if (x < 0) { - idx = x / size; - x = size + (x % size); - } else { - idx = (x / size) + 1; - x = x % size; - } - int idz; - if (z < 0) { - idz = z / size; - z = size + (z % size); - } else { - idz = (z / size) + 1; - z = z % size; - } - if (z <= pathWidthLower || z > end || x <= pathWidthLower || x > end) { + int dx = Math.floorDiv(x, size) + 1; + int rx = Math.floorMod(x, size); + int dz = Math.floorDiv(z, size) + 1; + int rz = Math.floorMod(z, size); + if (rz <= pathWidthLower || rz > end || rx <= pathWidthLower || rx > end) { return null; } else { - return PlotId.of(idx, idz); + return PlotId.of(dx, dz); } } @@ -180,24 +168,10 @@ public abstract class SquarePlotManager extends GridPlotManager { } end = pathWidthLower + squarePlotWorld.PLOT_WIDTH; } - int dx; - int rx; - if (x < 0) { - dx = x / size; - rx = size + (x % size); - } else { - dx = (x / size) + 1; - rx = x % size; - } - int dz; - int rz; - if (z < 0) { - dz = z / size; - rz = size + (z % size); - } else { - dz = (z / size) + 1; - rz = z % size; - } + int dx = Math.floorDiv(x, size) + 1; + int rx = Math.floorMod(x, size); + int dz = Math.floorDiv(z, size) + 1; + int rz = Math.floorMod(z, size); PlotId id = PlotId.of(dx, dz); boolean[] merged = new boolean[]{rz <= pathWidthLower, rx > end, rz > end, rx <= pathWidthLower}; int hash = HashUtil.hash(merged); From becd8c4eafd85f739cad49325433f25570bdd3e3 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Sun, 8 Jan 2023 23:16:40 +0100 Subject: [PATCH 04/27] Replace licenser with spotless (#3914) --- HEADER.txt | 34 ++++++++++++++++++---------------- build.gradle.kts | 16 ++++++++-------- gradle/libs.versions.toml | 4 ++-- 3 files changed, 28 insertions(+), 26 deletions(-) diff --git a/HEADER.txt b/HEADER.txt index 63b00e3da..77c134ded 100644 --- a/HEADER.txt +++ b/HEADER.txt @@ -1,16 +1,18 @@ -PlotSquared, a land and world management plugin for Minecraft. -Copyright (C) IntellectualSites -Copyright (C) IntellectualSites team and contributors - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . +/* + * PlotSquared, a land and world management plugin for Minecraft. + * Copyright (C) IntellectualSites + * Copyright (C) IntellectualSites team and contributors + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ diff --git a/build.gradle.kts b/build.gradle.kts index 810e2be6e..2525fb4a9 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,7 +1,6 @@ import com.github.jengelman.gradle.plugins.shadow.ShadowPlugin -import org.cadixdev.gradle.licenser.LicenseExtension -import org.cadixdev.gradle.licenser.Licenser import java.net.URI +import com.diffplug.gradle.spotless.SpotlessPlugin plugins { java @@ -10,7 +9,7 @@ plugins { signing alias(libs.plugins.shadow) - alias(libs.plugins.licenser) + alias(libs.plugins.spotless) alias(libs.plugins.grgit) alias(libs.plugins.nexus) @@ -57,7 +56,7 @@ subprojects { plugin() plugin() plugin() - plugin() + plugin() plugin() plugin() @@ -87,10 +86,11 @@ subprojects { attributes.attribute(TargetJvmVersion.TARGET_JVM_VERSION_ATTRIBUTE, 17) } - configure { - header(rootProject.file("HEADER.txt")) - include("**/*.java") - newLine.set(false) + spotless { + java { + licenseHeaderFile(rootProject.file("HEADER.txt")) + target("**/*.java") + } } java { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 652758547..16bd6bc7b 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -21,7 +21,7 @@ http4j = "1.3" # Gradle plugins shadow = "7.1.2" grgit = "4.1.1" -licenser = "0.6.1" +spotless = "6.12.1" nexus = "1.1.0" [libraries] @@ -49,5 +49,5 @@ http4j = { group = "com.intellectualsites.http", name = "HTTP4J", version.ref = [plugins] shadow = { id = "com.github.johnrengelman.shadow", version.ref = "shadow" } grgit = { id = "org.ajoberstar.grgit", version.ref = "grgit" } -licenser = { id = "org.cadixdev.licenser", version.ref = "licenser" } +spotless = { id = "com.diffplug.spotless", version.ref = "spotless" } nexus = { id = "io.github.gradle-nexus.publish-plugin", version.ref = "nexus" } From 707c7be5bd4c3f4136c4560a1b20563e6027aa4e Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Mon, 9 Jan 2023 10:26:05 +0100 Subject: [PATCH 05/27] Remove unused editorconfig rules (#3915) --- .editorconfig | 630 +------------------------------------------------- 1 file changed, 2 insertions(+), 628 deletions(-) diff --git a/.editorconfig b/.editorconfig index 16b2c7ec4..b349e7425 100644 --- a/.editorconfig +++ b/.editorconfig @@ -13,40 +13,6 @@ ij_formatter_tags_enabled = false ij_smart_tabs = false ij_wrap_on_typing = true -[*.conf] -indent_size = 2 -tab_width = 2 -ij_continuation_indent_size = 2 -ij_hocon_keep_blank_lines_before_right_brace = 2 -ij_hocon_keep_indents_on_empty_lines = false -ij_hocon_keep_line_breaks = true -ij_hocon_space_after_colon = true -ij_hocon_space_after_comma = true -ij_hocon_space_before_colon = true -ij_hocon_space_before_comma = false -ij_hocon_spaces_within_braces = false -ij_hocon_spaces_within_brackets = false -ij_hocon_spaces_within_method_call_parentheses = false - -[*.css] -ij_css_align_closing_brace_with_properties = false -ij_css_blank_lines_around_nested_selector = 1 -ij_css_blank_lines_between_blocks = 1 -ij_css_brace_placement = end_of_line -ij_css_enforce_quotes_on_format = false -ij_css_hex_color_long_format = false -ij_css_hex_color_lower_case = false -ij_css_hex_color_short_format = false -ij_css_hex_color_upper_case = false -ij_css_keep_blank_lines_in_code = 2 -ij_css_keep_indents_on_empty_lines = false -ij_css_keep_single_line_blocks = false -ij_css_properties_order = font, font-family, font-size, font-weight, font-style, font-variant, font-size-adjust, font-stretch, line-height, position, z-index, top, right, bottom, left, display, visibility, float, clear, overflow, overflow-x, overflow-y, clip, zoom, align-content, align-items, align-self, flex, flex-flow, flex-basis, flex-direction, flex-grow, flex-shrink, flex-wrap, justify-content, order, box-sizing, width, min-width, max-width, height, min-height, max-height, margin, margin-top, margin-right, margin-bottom, margin-left, padding, padding-top, padding-right, padding-bottom, padding-left, table-layout, empty-cells, caption-side, border-spacing, border-collapse, list-style, list-style-position, list-style-type, list-style-image, content, quotes, counter-reset, counter-increment, resize, cursor, user-select, nav-index, nav-up, nav-right, nav-down, nav-left, transition, transition-delay, transition-timing-function, transition-duration, transition-property, transform, transform-origin, animation, animation-name, animation-duration, animation-play-state, animation-timing-function, animation-delay, animation-iteration-count, animation-direction, text-align, text-align-last, vertical-align, white-space, text-decoration, text-emphasis, text-emphasis-color, text-emphasis-style, text-emphasis-position, text-indent, text-justify, letter-spacing, word-spacing, text-outline, text-transform, text-wrap, text-overflow, text-overflow-ellipsis, text-overflow-mode, word-wrap, word-break, tab-size, hyphens, pointer-events, opacity, color, border, border-width, border-style, border-color, border-top, border-top-width, border-top-style, border-top-color, border-right, border-right-width, border-right-style, border-right-color, border-bottom, border-bottom-width, border-bottom-style, border-bottom-color, border-left, border-left-width, border-left-style, border-left-color, border-radius, border-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius, border-image, border-image-source, border-image-slice, border-image-width, border-image-outset, border-image-repeat, outline, outline-width, outline-style, outline-color, outline-offset, background, background-color, background-image, background-repeat, background-attachment, background-position, background-position-x, background-position-y, background-clip, background-origin, background-size, box-decoration-break, box-shadow, text-shadow -ij_css_space_after_colon = true -ij_css_space_before_opening_brace = true -ij_css_use_double_quotes = true -ij_css_value_alignment = do_not_align - [*.java] ij_java_align_consecutive_assignments = false ij_java_align_consecutive_variable_declarations = false @@ -277,63 +243,12 @@ ij_java_wrap_comments = false ij_java_wrap_first_method_in_call_chain = true ij_java_wrap_long_lines = false -[*.nbtt] -max_line_length = 150 -ij_continuation_indent_size = 4 -ij_nbtt_keep_indents_on_empty_lines = false -ij_nbtt_space_after_colon = true -ij_nbtt_space_after_comma = true -ij_nbtt_space_before_colon = true -ij_nbtt_space_before_comma = false -ij_nbtt_spaces_within_brackets = false -ij_nbtt_spaces_within_parentheses = false - [*.properties] ij_properties_align_group_field_declarations = false ij_properties_keep_blank_lines = false ij_properties_key_value_delimiter = equals ij_properties_spaces_around_key_value_delimiter = false -[*.sass] -indent_size = 2 -ij_sass_align_closing_brace_with_properties = false -ij_sass_blank_lines_around_nested_selector = 1 -ij_sass_blank_lines_between_blocks = 1 -ij_sass_brace_placement = 0 -ij_sass_enforce_quotes_on_format = false -ij_sass_hex_color_long_format = false -ij_sass_hex_color_lower_case = false -ij_sass_hex_color_short_format = false -ij_sass_hex_color_upper_case = false -ij_sass_keep_blank_lines_in_code = 2 -ij_sass_keep_indents_on_empty_lines = false -ij_sass_keep_single_line_blocks = false -ij_sass_properties_order = font, font-family, font-size, font-weight, font-style, font-variant, font-size-adjust, font-stretch, line-height, position, z-index, top, right, bottom, left, display, visibility, float, clear, overflow, overflow-x, overflow-y, clip, zoom, align-content, align-items, align-self, flex, flex-flow, flex-basis, flex-direction, flex-grow, flex-shrink, flex-wrap, justify-content, order, box-sizing, width, min-width, max-width, height, min-height, max-height, margin, margin-top, margin-right, margin-bottom, margin-left, padding, padding-top, padding-right, padding-bottom, padding-left, table-layout, empty-cells, caption-side, border-spacing, border-collapse, list-style, list-style-position, list-style-type, list-style-image, content, quotes, counter-reset, counter-increment, resize, cursor, user-select, nav-index, nav-up, nav-right, nav-down, nav-left, transition, transition-delay, transition-timing-function, transition-duration, transition-property, transform, transform-origin, animation, animation-name, animation-duration, animation-play-state, animation-timing-function, animation-delay, animation-iteration-count, animation-direction, text-align, text-align-last, vertical-align, white-space, text-decoration, text-emphasis, text-emphasis-color, text-emphasis-style, text-emphasis-position, text-indent, text-justify, letter-spacing, word-spacing, text-outline, text-transform, text-wrap, text-overflow, text-overflow-ellipsis, text-overflow-mode, word-wrap, word-break, tab-size, hyphens, pointer-events, opacity, color, border, border-width, border-style, border-color, border-top, border-top-width, border-top-style, border-top-color, border-right, border-right-width, border-right-style, border-right-color, border-bottom, border-bottom-width, border-bottom-style, border-bottom-color, border-left, border-left-width, border-left-style, border-left-color, border-radius, border-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius, border-image, border-image-source, border-image-slice, border-image-width, border-image-outset, border-image-repeat, outline, outline-width, outline-style, outline-color, outline-offset, background, background-color, background-image, background-repeat, background-attachment, background-position, background-position-x, background-position-y, background-clip, background-origin, background-size, box-decoration-break, box-shadow, text-shadow -ij_sass_space_after_colon = true -ij_sass_space_before_opening_brace = true -ij_sass_use_double_quotes = true -ij_sass_value_alignment = 0 - -[*.scss] -indent_size = 2 -ij_scss_align_closing_brace_with_properties = false -ij_scss_blank_lines_around_nested_selector = 1 -ij_scss_blank_lines_between_blocks = 1 -ij_scss_brace_placement = 0 -ij_scss_enforce_quotes_on_format = false -ij_scss_hex_color_long_format = false -ij_scss_hex_color_lower_case = false -ij_scss_hex_color_short_format = false -ij_scss_hex_color_upper_case = false -ij_scss_keep_blank_lines_in_code = 2 -ij_scss_keep_indents_on_empty_lines = false -ij_scss_keep_single_line_blocks = false -ij_scss_properties_order = font, font-family, font-size, font-weight, font-style, font-variant, font-size-adjust, font-stretch, line-height, position, z-index, top, right, bottom, left, display, visibility, float, clear, overflow, overflow-x, overflow-y, clip, zoom, align-content, align-items, align-self, flex, flex-flow, flex-basis, flex-direction, flex-grow, flex-shrink, flex-wrap, justify-content, order, box-sizing, width, min-width, max-width, height, min-height, max-height, margin, margin-top, margin-right, margin-bottom, margin-left, padding, padding-top, padding-right, padding-bottom, padding-left, table-layout, empty-cells, caption-side, border-spacing, border-collapse, list-style, list-style-position, list-style-type, list-style-image, content, quotes, counter-reset, counter-increment, resize, cursor, user-select, nav-index, nav-up, nav-right, nav-down, nav-left, transition, transition-delay, transition-timing-function, transition-duration, transition-property, transform, transform-origin, animation, animation-name, animation-duration, animation-play-state, animation-timing-function, animation-delay, animation-iteration-count, animation-direction, text-align, text-align-last, vertical-align, white-space, text-decoration, text-emphasis, text-emphasis-color, text-emphasis-style, text-emphasis-position, text-indent, text-justify, letter-spacing, word-spacing, text-outline, text-transform, text-wrap, text-overflow, text-overflow-ellipsis, text-overflow-mode, word-wrap, word-break, tab-size, hyphens, pointer-events, opacity, color, border, border-width, border-style, border-color, border-top, border-top-width, border-top-style, border-top-color, border-right, border-right-width, border-right-style, border-right-color, border-bottom, border-bottom-width, border-bottom-style, border-bottom-color, border-left, border-left-width, border-left-style, border-left-color, border-radius, border-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius, border-image, border-image-source, border-image-slice, border-image-width, border-image-outset, border-image-repeat, outline, outline-width, outline-style, outline-color, outline-offset, background, background-color, background-image, background-repeat, background-attachment, background-position, background-position-x, background-position-y, background-clip, background-origin, background-size, box-decoration-break, box-shadow, text-shadow -ij_scss_space_after_colon = true -ij_scss_space_before_opening_brace = true -ij_scss_use_double_quotes = true -ij_scss_value_alignment = 0 - [.editorconfig] ij_editorconfig_align_group_field_declarations = false ij_editorconfig_space_after_colon = false @@ -342,548 +257,6 @@ ij_editorconfig_space_before_colon = false ij_editorconfig_space_before_comma = false ij_editorconfig_spaces_around_assignment_operators = true -[{*.ant, *.fxml, *.jhm, *.jnlp, *.jrxml, *.pom, *.rng, *.tld, *.wsdl, *.xml, *.xsd, *.xsl, *.xslt, *.xul}] -ij_xml_align_attributes = true -ij_xml_align_text = false -ij_xml_attribute_wrap = normal -ij_xml_block_comment_at_first_column = true -ij_xml_keep_blank_lines = 2 -ij_xml_keep_indents_on_empty_lines = false -ij_xml_keep_line_breaks = true -ij_xml_keep_line_breaks_in_text = true -ij_xml_keep_whitespaces = false -ij_xml_keep_whitespaces_around_cdata = preserve -ij_xml_keep_whitespaces_inside_cdata = false -ij_xml_line_comment_at_first_column = true -ij_xml_space_after_tag_name = false -ij_xml_space_around_equals_in_attribute = false -ij_xml_space_inside_empty_tag = false -ij_xml_text_wrap = normal - -[{*.ats, *.ts}] -ij_continuation_indent_size = 4 -ij_typescript_align_imports = false -ij_typescript_align_multiline_array_initializer_expression = false -ij_typescript_align_multiline_binary_operation = false -ij_typescript_align_multiline_chained_methods = false -ij_typescript_align_multiline_extends_list = false -ij_typescript_align_multiline_for = true -ij_typescript_align_multiline_parameters = true -ij_typescript_align_multiline_parameters_in_calls = false -ij_typescript_align_multiline_ternary_operation = false -ij_typescript_align_object_properties = 0 -ij_typescript_align_union_types = false -ij_typescript_align_var_statements = 0 -ij_typescript_array_initializer_new_line_after_left_brace = false -ij_typescript_array_initializer_right_brace_on_new_line = false -ij_typescript_array_initializer_wrap = off -ij_typescript_assignment_wrap = off -ij_typescript_binary_operation_sign_on_next_line = false -ij_typescript_binary_operation_wrap = off -ij_typescript_blacklist_imports = rxjs/Rx, node_modules/**, **/node_modules/**, @angular/material, @angular/material/typings/** -ij_typescript_blank_lines_after_imports = 1 -ij_typescript_blank_lines_around_class = 1 -ij_typescript_blank_lines_around_field = 0 -ij_typescript_blank_lines_around_field_in_interface = 0 -ij_typescript_blank_lines_around_function = 1 -ij_typescript_blank_lines_around_method = 1 -ij_typescript_blank_lines_around_method_in_interface = 1 -ij_typescript_block_brace_style = end_of_line -ij_typescript_call_parameters_new_line_after_left_paren = false -ij_typescript_call_parameters_right_paren_on_new_line = false -ij_typescript_call_parameters_wrap = off -ij_typescript_catch_on_new_line = false -ij_typescript_chained_call_dot_on_new_line = true -ij_typescript_class_brace_style = end_of_line -ij_typescript_comma_on_new_line = false -ij_typescript_do_while_brace_force = never -ij_typescript_else_on_new_line = false -ij_typescript_enforce_trailing_comma = keep -ij_typescript_extends_keyword_wrap = off -ij_typescript_extends_list_wrap = off -ij_typescript_field_prefix = _ -ij_typescript_file_name_style = relaxed -ij_typescript_finally_on_new_line = false -ij_typescript_for_brace_force = never -ij_typescript_for_statement_new_line_after_left_paren = false -ij_typescript_for_statement_right_paren_on_new_line = false -ij_typescript_for_statement_wrap = off -ij_typescript_force_quote_style = false -ij_typescript_force_semicolon_style = false -ij_typescript_function_expression_brace_style = end_of_line -ij_typescript_if_brace_force = never -ij_typescript_import_merge_members = global -ij_typescript_import_prefer_absolute_path = global -ij_typescript_import_sort_members = true -ij_typescript_import_sort_module_name = false -ij_typescript_import_use_node_resolution = true -ij_typescript_imports_wrap = on_every_item -ij_typescript_indent_case_from_switch = true -ij_typescript_indent_chained_calls = true -ij_typescript_indent_package_children = 0 -ij_typescript_jsdoc_include_types = false -ij_typescript_jsx_attribute_value = braces -ij_typescript_keep_blank_lines_in_code = 2 -ij_typescript_keep_first_column_comment = true -ij_typescript_keep_indents_on_empty_lines = false -ij_typescript_keep_line_breaks = true -ij_typescript_keep_simple_blocks_in_one_line = false -ij_typescript_keep_simple_methods_in_one_line = false -ij_typescript_line_comment_add_space = true -ij_typescript_line_comment_at_first_column = false -ij_typescript_method_brace_style = end_of_line -ij_typescript_method_call_chain_wrap = off -ij_typescript_method_parameters_new_line_after_left_paren = false -ij_typescript_method_parameters_right_paren_on_new_line = false -ij_typescript_method_parameters_wrap = off -ij_typescript_object_literal_wrap = on_every_item -ij_typescript_parentheses_expression_new_line_after_left_paren = false -ij_typescript_parentheses_expression_right_paren_on_new_line = false -ij_typescript_place_assignment_sign_on_next_line = false -ij_typescript_prefer_as_type_cast = false -ij_typescript_prefer_explicit_types_function_expression_returns = false -ij_typescript_prefer_explicit_types_function_returns = false -ij_typescript_prefer_explicit_types_vars_fields = false -ij_typescript_prefer_parameters_wrap = false -ij_typescript_reformat_c_style_comments = false -ij_typescript_space_after_colon = true -ij_typescript_space_after_comma = true -ij_typescript_space_after_dots_in_rest_parameter = false -ij_typescript_space_after_generator_mult = true -ij_typescript_space_after_property_colon = true -ij_typescript_space_after_quest = true -ij_typescript_space_after_type_colon = true -ij_typescript_space_after_unary_not = false -ij_typescript_space_before_async_arrow_lparen = true -ij_typescript_space_before_catch_keyword = true -ij_typescript_space_before_catch_left_brace = true -ij_typescript_space_before_catch_parentheses = true -ij_typescript_space_before_class_lbrace = true -ij_typescript_space_before_class_left_brace = true -ij_typescript_space_before_colon = true -ij_typescript_space_before_comma = false -ij_typescript_space_before_do_left_brace = true -ij_typescript_space_before_else_keyword = true -ij_typescript_space_before_else_left_brace = true -ij_typescript_space_before_finally_keyword = true -ij_typescript_space_before_finally_left_brace = true -ij_typescript_space_before_for_left_brace = true -ij_typescript_space_before_for_parentheses = true -ij_typescript_space_before_for_semicolon = false -ij_typescript_space_before_function_left_parenth = true -ij_typescript_space_before_generator_mult = false -ij_typescript_space_before_if_left_brace = true -ij_typescript_space_before_if_parentheses = true -ij_typescript_space_before_method_call_parentheses = false -ij_typescript_space_before_method_left_brace = true -ij_typescript_space_before_method_parentheses = false -ij_typescript_space_before_property_colon = false -ij_typescript_space_before_quest = true -ij_typescript_space_before_switch_left_brace = true -ij_typescript_space_before_switch_parentheses = true -ij_typescript_space_before_try_left_brace = true -ij_typescript_space_before_type_colon = false -ij_typescript_space_before_unary_not = false -ij_typescript_space_before_while_keyword = true -ij_typescript_space_before_while_left_brace = true -ij_typescript_space_before_while_parentheses = true -ij_typescript_spaces_around_additive_operators = true -ij_typescript_spaces_around_arrow_function_operator = true -ij_typescript_spaces_around_assignment_operators = true -ij_typescript_spaces_around_bitwise_operators = true -ij_typescript_spaces_around_equality_operators = true -ij_typescript_spaces_around_logical_operators = true -ij_typescript_spaces_around_multiplicative_operators = true -ij_typescript_spaces_around_relational_operators = true -ij_typescript_spaces_around_shift_operators = true -ij_typescript_spaces_around_unary_operator = false -ij_typescript_spaces_within_array_initializer_brackets = false -ij_typescript_spaces_within_brackets = false -ij_typescript_spaces_within_catch_parentheses = false -ij_typescript_spaces_within_for_parentheses = false -ij_typescript_spaces_within_if_parentheses = false -ij_typescript_spaces_within_imports = false -ij_typescript_spaces_within_interpolation_expressions = false -ij_typescript_spaces_within_method_call_parentheses = false -ij_typescript_spaces_within_method_parentheses = false -ij_typescript_spaces_within_object_literal_braces = false -ij_typescript_spaces_within_object_type_braces = true -ij_typescript_spaces_within_parentheses = false -ij_typescript_spaces_within_switch_parentheses = false -ij_typescript_spaces_within_type_assertion = false -ij_typescript_spaces_within_union_types = true -ij_typescript_spaces_within_while_parentheses = false -ij_typescript_special_else_if_treatment = true -ij_typescript_ternary_operation_signs_on_next_line = false -ij_typescript_ternary_operation_wrap = off -ij_typescript_union_types_wrap = on_every_item -ij_typescript_use_chained_calls_group_indents = false -ij_typescript_use_double_quotes = true -ij_typescript_use_explicit_js_extension = global -ij_typescript_use_path_mapping = always -ij_typescript_use_public_modifier = false -ij_typescript_use_semicolon_after_statement = true -ij_typescript_var_declaration_wrap = normal -ij_typescript_while_brace_force = never -ij_typescript_while_on_new_line = false -ij_typescript_wrap_comments = false - -[{*.bash, *.sh, *.zsh}] -indent_size = 2 -tab_width = 2 -ij_shell_binary_ops_start_line = false -ij_shell_keep_column_alignment_padding = false -ij_shell_minify_program = false -ij_shell_redirect_followed_by_space = false -ij_shell_switch_cases_indented = false - -[{*.cjs, *.js}] -ij_continuation_indent_size = 4 -ij_javascript_align_imports = false -ij_javascript_align_multiline_array_initializer_expression = false -ij_javascript_align_multiline_binary_operation = false -ij_javascript_align_multiline_chained_methods = false -ij_javascript_align_multiline_extends_list = false -ij_javascript_align_multiline_for = true -ij_javascript_align_multiline_parameters = true -ij_javascript_align_multiline_parameters_in_calls = false -ij_javascript_align_multiline_ternary_operation = false -ij_javascript_align_object_properties = 0 -ij_javascript_align_union_types = false -ij_javascript_align_var_statements = 0 -ij_javascript_array_initializer_new_line_after_left_brace = false -ij_javascript_array_initializer_right_brace_on_new_line = false -ij_javascript_array_initializer_wrap = off -ij_javascript_assignment_wrap = off -ij_javascript_binary_operation_sign_on_next_line = false -ij_javascript_binary_operation_wrap = off -ij_javascript_blacklist_imports = rxjs/Rx, node_modules/**, **/node_modules/**, @angular/material, @angular/material/typings/** -ij_javascript_blank_lines_after_imports = 1 -ij_javascript_blank_lines_around_class = 1 -ij_javascript_blank_lines_around_field = 0 -ij_javascript_blank_lines_around_function = 1 -ij_javascript_blank_lines_around_method = 1 -ij_javascript_block_brace_style = end_of_line -ij_javascript_call_parameters_new_line_after_left_paren = false -ij_javascript_call_parameters_right_paren_on_new_line = false -ij_javascript_call_parameters_wrap = off -ij_javascript_catch_on_new_line = false -ij_javascript_chained_call_dot_on_new_line = true -ij_javascript_class_brace_style = end_of_line -ij_javascript_comma_on_new_line = false -ij_javascript_do_while_brace_force = never -ij_javascript_else_on_new_line = false -ij_javascript_enforce_trailing_comma = keep -ij_javascript_extends_keyword_wrap = off -ij_javascript_extends_list_wrap = off -ij_javascript_field_prefix = _ -ij_javascript_file_name_style = relaxed -ij_javascript_finally_on_new_line = false -ij_javascript_for_brace_force = never -ij_javascript_for_statement_new_line_after_left_paren = false -ij_javascript_for_statement_right_paren_on_new_line = false -ij_javascript_for_statement_wrap = off -ij_javascript_force_quote_style = false -ij_javascript_force_semicolon_style = false -ij_javascript_function_expression_brace_style = end_of_line -ij_javascript_if_brace_force = never -ij_javascript_import_merge_members = global -ij_javascript_import_prefer_absolute_path = global -ij_javascript_import_sort_members = true -ij_javascript_import_sort_module_name = false -ij_javascript_import_use_node_resolution = true -ij_javascript_imports_wrap = on_every_item -ij_javascript_indent_case_from_switch = true -ij_javascript_indent_chained_calls = true -ij_javascript_indent_package_children = 0 -ij_javascript_jsx_attribute_value = braces -ij_javascript_keep_blank_lines_in_code = 2 -ij_javascript_keep_first_column_comment = true -ij_javascript_keep_indents_on_empty_lines = false -ij_javascript_keep_line_breaks = true -ij_javascript_keep_simple_blocks_in_one_line = false -ij_javascript_keep_simple_methods_in_one_line = false -ij_javascript_line_comment_add_space = true -ij_javascript_line_comment_at_first_column = false -ij_javascript_method_brace_style = end_of_line -ij_javascript_method_call_chain_wrap = off -ij_javascript_method_parameters_new_line_after_left_paren = false -ij_javascript_method_parameters_right_paren_on_new_line = false -ij_javascript_method_parameters_wrap = off -ij_javascript_object_literal_wrap = on_every_item -ij_javascript_parentheses_expression_new_line_after_left_paren = false -ij_javascript_parentheses_expression_right_paren_on_new_line = false -ij_javascript_place_assignment_sign_on_next_line = false -ij_javascript_prefer_as_type_cast = false -ij_javascript_prefer_explicit_types_function_expression_returns = false -ij_javascript_prefer_explicit_types_function_returns = false -ij_javascript_prefer_explicit_types_vars_fields = false -ij_javascript_prefer_parameters_wrap = false -ij_javascript_reformat_c_style_comments = false -ij_javascript_space_after_colon = true -ij_javascript_space_after_comma = true -ij_javascript_space_after_dots_in_rest_parameter = false -ij_javascript_space_after_generator_mult = true -ij_javascript_space_after_property_colon = true -ij_javascript_space_after_quest = true -ij_javascript_space_after_type_colon = true -ij_javascript_space_after_unary_not = false -ij_javascript_space_before_async_arrow_lparen = true -ij_javascript_space_before_catch_keyword = true -ij_javascript_space_before_catch_left_brace = true -ij_javascript_space_before_catch_parentheses = true -ij_javascript_space_before_class_lbrace = true -ij_javascript_space_before_class_left_brace = true -ij_javascript_space_before_colon = true -ij_javascript_space_before_comma = false -ij_javascript_space_before_do_left_brace = true -ij_javascript_space_before_else_keyword = true -ij_javascript_space_before_else_left_brace = true -ij_javascript_space_before_finally_keyword = true -ij_javascript_space_before_finally_left_brace = true -ij_javascript_space_before_for_left_brace = true -ij_javascript_space_before_for_parentheses = true -ij_javascript_space_before_for_semicolon = false -ij_javascript_space_before_function_left_parenth = true -ij_javascript_space_before_generator_mult = false -ij_javascript_space_before_if_left_brace = true -ij_javascript_space_before_if_parentheses = true -ij_javascript_space_before_method_call_parentheses = false -ij_javascript_space_before_method_left_brace = true -ij_javascript_space_before_method_parentheses = false -ij_javascript_space_before_property_colon = false -ij_javascript_space_before_quest = true -ij_javascript_space_before_switch_left_brace = true -ij_javascript_space_before_switch_parentheses = true -ij_javascript_space_before_try_left_brace = true -ij_javascript_space_before_type_colon = false -ij_javascript_space_before_unary_not = false -ij_javascript_space_before_while_keyword = true -ij_javascript_space_before_while_left_brace = true -ij_javascript_space_before_while_parentheses = true -ij_javascript_spaces_around_additive_operators = true -ij_javascript_spaces_around_arrow_function_operator = true -ij_javascript_spaces_around_assignment_operators = true -ij_javascript_spaces_around_bitwise_operators = true -ij_javascript_spaces_around_equality_operators = true -ij_javascript_spaces_around_logical_operators = true -ij_javascript_spaces_around_multiplicative_operators = true -ij_javascript_spaces_around_relational_operators = true -ij_javascript_spaces_around_shift_operators = true -ij_javascript_spaces_around_unary_operator = false -ij_javascript_spaces_within_array_initializer_brackets = false -ij_javascript_spaces_within_brackets = false -ij_javascript_spaces_within_catch_parentheses = false -ij_javascript_spaces_within_for_parentheses = false -ij_javascript_spaces_within_if_parentheses = false -ij_javascript_spaces_within_imports = false -ij_javascript_spaces_within_interpolation_expressions = false -ij_javascript_spaces_within_method_call_parentheses = false -ij_javascript_spaces_within_method_parentheses = false -ij_javascript_spaces_within_object_literal_braces = false -ij_javascript_spaces_within_object_type_braces = true -ij_javascript_spaces_within_parentheses = false -ij_javascript_spaces_within_switch_parentheses = false -ij_javascript_spaces_within_type_assertion = false -ij_javascript_spaces_within_union_types = true -ij_javascript_spaces_within_while_parentheses = false -ij_javascript_special_else_if_treatment = true -ij_javascript_ternary_operation_signs_on_next_line = false -ij_javascript_ternary_operation_wrap = off -ij_javascript_union_types_wrap = on_every_item -ij_javascript_use_chained_calls_group_indents = false -ij_javascript_use_double_quotes = true -ij_javascript_use_explicit_js_extension = global -ij_javascript_use_path_mapping = always -ij_javascript_use_public_modifier = false -ij_javascript_use_semicolon_after_statement = true -ij_javascript_var_declaration_wrap = normal -ij_javascript_while_brace_force = never -ij_javascript_while_on_new_line = false -ij_javascript_wrap_comments = false - -[{*.ft, *.vm, *.vsl}] -ij_vtl_keep_indents_on_empty_lines = false - -[{*.gant, *.gradle, *.groovy, *.gy}] -ij_groovy_align_group_field_declarations = false -ij_groovy_align_multiline_array_initializer_expression = false -ij_groovy_align_multiline_assignment = false -ij_groovy_align_multiline_binary_operation = false -ij_groovy_align_multiline_chained_methods = false -ij_groovy_align_multiline_extends_list = false -ij_groovy_align_multiline_for = true -ij_groovy_align_multiline_list_or_map = true -ij_groovy_align_multiline_method_parentheses = false -ij_groovy_align_multiline_parameters = true -ij_groovy_align_multiline_parameters_in_calls = false -ij_groovy_align_multiline_resources = true -ij_groovy_align_multiline_ternary_operation = false -ij_groovy_align_multiline_throws_list = false -ij_groovy_align_named_args_in_map = true -ij_groovy_align_throws_keyword = false -ij_groovy_array_initializer_new_line_after_left_brace = false -ij_groovy_array_initializer_right_brace_on_new_line = false -ij_groovy_array_initializer_wrap = off -ij_groovy_assert_statement_wrap = off -ij_groovy_assignment_wrap = off -ij_groovy_binary_operation_wrap = off -ij_groovy_blank_lines_after_class_header = 0 -ij_groovy_blank_lines_after_imports = 1 -ij_groovy_blank_lines_after_package = 1 -ij_groovy_blank_lines_around_class = 1 -ij_groovy_blank_lines_around_field = 0 -ij_groovy_blank_lines_around_field_in_interface = 0 -ij_groovy_blank_lines_around_method = 1 -ij_groovy_blank_lines_around_method_in_interface = 1 -ij_groovy_blank_lines_before_imports = 1 -ij_groovy_blank_lines_before_method_body = 0 -ij_groovy_blank_lines_before_package = 0 -ij_groovy_block_brace_style = end_of_line -ij_groovy_block_comment_at_first_column = true -ij_groovy_call_parameters_new_line_after_left_paren = false -ij_groovy_call_parameters_right_paren_on_new_line = false -ij_groovy_call_parameters_wrap = off -ij_groovy_catch_on_new_line = false -ij_groovy_class_annotation_wrap = split_into_lines -ij_groovy_class_brace_style = end_of_line -ij_groovy_class_count_to_use_import_on_demand = 5 -ij_groovy_do_while_brace_force = never -ij_groovy_else_on_new_line = false -ij_groovy_enum_constants_wrap = off -ij_groovy_extends_keyword_wrap = off -ij_groovy_extends_list_wrap = off -ij_groovy_field_annotation_wrap = split_into_lines -ij_groovy_finally_on_new_line = false -ij_groovy_for_brace_force = never -ij_groovy_for_statement_new_line_after_left_paren = false -ij_groovy_for_statement_right_paren_on_new_line = false -ij_groovy_for_statement_wrap = off -ij_groovy_if_brace_force = never -ij_groovy_import_annotation_wrap = 2 -ij_groovy_imports_layout = *, |, javax.**, java.**, |, $* -ij_groovy_indent_case_from_switch = true -ij_groovy_indent_label_blocks = true -ij_groovy_insert_inner_class_imports = false -ij_groovy_keep_blank_lines_before_right_brace = 2 -ij_groovy_keep_blank_lines_in_code = 2 -ij_groovy_keep_blank_lines_in_declarations = 2 -ij_groovy_keep_control_statement_in_one_line = true -ij_groovy_keep_first_column_comment = true -ij_groovy_keep_indents_on_empty_lines = false -ij_groovy_keep_line_breaks = true -ij_groovy_keep_multiple_expressions_in_one_line = false -ij_groovy_keep_simple_blocks_in_one_line = false -ij_groovy_keep_simple_classes_in_one_line = true -ij_groovy_keep_simple_lambdas_in_one_line = true -ij_groovy_keep_simple_methods_in_one_line = true -ij_groovy_label_indent_absolute = false -ij_groovy_label_indent_size = 0 -ij_groovy_lambda_brace_style = end_of_line -ij_groovy_layout_static_imports_separately = true -ij_groovy_line_comment_add_space = false -ij_groovy_line_comment_at_first_column = true -ij_groovy_method_annotation_wrap = split_into_lines -ij_groovy_method_brace_style = end_of_line -ij_groovy_method_call_chain_wrap = off -ij_groovy_method_parameters_new_line_after_left_paren = false -ij_groovy_method_parameters_right_paren_on_new_line = false -ij_groovy_method_parameters_wrap = off -ij_groovy_modifier_list_wrap = false -ij_groovy_names_count_to_use_import_on_demand = 3 -ij_groovy_parameter_annotation_wrap = off -ij_groovy_parentheses_expression_new_line_after_left_paren = false -ij_groovy_parentheses_expression_right_paren_on_new_line = false -ij_groovy_prefer_parameters_wrap = false -ij_groovy_resource_list_new_line_after_left_paren = false -ij_groovy_resource_list_right_paren_on_new_line = false -ij_groovy_resource_list_wrap = off -ij_groovy_space_after_assert_separator = true -ij_groovy_space_after_colon = true -ij_groovy_space_after_comma = true -ij_groovy_space_after_comma_in_type_arguments = true -ij_groovy_space_after_for_semicolon = true -ij_groovy_space_after_quest = true -ij_groovy_space_after_type_cast = true -ij_groovy_space_before_annotation_parameter_list = false -ij_groovy_space_before_array_initializer_left_brace = false -ij_groovy_space_before_assert_separator = false -ij_groovy_space_before_catch_keyword = true -ij_groovy_space_before_catch_left_brace = true -ij_groovy_space_before_catch_parentheses = true -ij_groovy_space_before_class_left_brace = true -ij_groovy_space_before_closure_left_brace = true -ij_groovy_space_before_colon = true -ij_groovy_space_before_comma = false -ij_groovy_space_before_do_left_brace = true -ij_groovy_space_before_else_keyword = true -ij_groovy_space_before_else_left_brace = true -ij_groovy_space_before_finally_keyword = true -ij_groovy_space_before_finally_left_brace = true -ij_groovy_space_before_for_left_brace = true -ij_groovy_space_before_for_parentheses = true -ij_groovy_space_before_for_semicolon = false -ij_groovy_space_before_if_left_brace = true -ij_groovy_space_before_if_parentheses = true -ij_groovy_space_before_method_call_parentheses = false -ij_groovy_space_before_method_left_brace = true -ij_groovy_space_before_method_parentheses = false -ij_groovy_space_before_quest = true -ij_groovy_space_before_switch_left_brace = true -ij_groovy_space_before_switch_parentheses = true -ij_groovy_space_before_synchronized_left_brace = true -ij_groovy_space_before_synchronized_parentheses = true -ij_groovy_space_before_try_left_brace = true -ij_groovy_space_before_try_parentheses = true -ij_groovy_space_before_while_keyword = true -ij_groovy_space_before_while_left_brace = true -ij_groovy_space_before_while_parentheses = true -ij_groovy_space_in_named_argument = true -ij_groovy_space_in_named_argument_before_colon = false -ij_groovy_space_within_empty_array_initializer_braces = false -ij_groovy_space_within_empty_method_call_parentheses = false -ij_groovy_spaces_around_additive_operators = true -ij_groovy_spaces_around_assignment_operators = true -ij_groovy_spaces_around_bitwise_operators = true -ij_groovy_spaces_around_equality_operators = true -ij_groovy_spaces_around_lambda_arrow = true -ij_groovy_spaces_around_logical_operators = true -ij_groovy_spaces_around_multiplicative_operators = true -ij_groovy_spaces_around_regex_operators = true -ij_groovy_spaces_around_relational_operators = true -ij_groovy_spaces_around_shift_operators = true -ij_groovy_spaces_within_annotation_parentheses = false -ij_groovy_spaces_within_array_initializer_braces = false -ij_groovy_spaces_within_braces = true -ij_groovy_spaces_within_brackets = false -ij_groovy_spaces_within_cast_parentheses = false -ij_groovy_spaces_within_catch_parentheses = false -ij_groovy_spaces_within_for_parentheses = false -ij_groovy_spaces_within_gstring_injection_braces = false -ij_groovy_spaces_within_if_parentheses = false -ij_groovy_spaces_within_list_or_map = false -ij_groovy_spaces_within_method_call_parentheses = false -ij_groovy_spaces_within_method_parentheses = false -ij_groovy_spaces_within_parentheses = false -ij_groovy_spaces_within_switch_parentheses = false -ij_groovy_spaces_within_synchronized_parentheses = false -ij_groovy_spaces_within_try_parentheses = false -ij_groovy_spaces_within_tuple_expression = false -ij_groovy_spaces_within_while_parentheses = false -ij_groovy_special_else_if_treatment = true -ij_groovy_ternary_operation_wrap = off -ij_groovy_throws_keyword_wrap = off -ij_groovy_throws_list_wrap = off -ij_groovy_use_flying_geese_braces = false -ij_groovy_use_fq_class_names = false -ij_groovy_use_fq_class_names_in_javadoc = true -ij_groovy_use_relative_indents = false -ij_groovy_use_single_class_imports = true -ij_groovy_variable_annotation_wrap = off -ij_groovy_while_brace_force = never -ij_groovy_while_on_new_line = false -ij_groovy_wrap_long_lines = false - [{*.gradle.kts, *.kt, *.kts, *.main.kts}] ij_kotlin_align_in_columns_case_branch = false ij_kotlin_align_multiline_binary_operation = false @@ -963,7 +336,8 @@ ij_kotlin_wrap_elvis_expressions = 1 ij_kotlin_wrap_expression_body_functions = 0 ij_kotlin_wrap_first_method_in_call_chain = false -[{*.har, *.jsb2, *.jsb3, *.json, .babelrc, .eslintrc, .stylelintrc, bowerrc, jest.config, mcmod.info}] + +[*.json] indent_size = 2 ij_json_keep_blank_lines_in_code = 0 ij_json_keep_indents_on_empty_lines = false From 669293566b09beae8f372ffbff629c76c15879ee Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Mon, 9 Jan 2023 11:41:12 +0100 Subject: [PATCH 06/27] Release 6.10.6 --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index 2525fb4a9..a27143be2 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -18,7 +18,7 @@ plugins { } group = "com.plotsquared" -version = "6.10.6-SNAPSHOT" +version = "6.10.6" subprojects { group = rootProject.group From 78dbe7fbbccbb1fad679ca28a3398010dfc74aa0 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Mon, 9 Jan 2023 11:41:59 +0100 Subject: [PATCH 07/27] Back to snapshot for development --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index a27143be2..f76d616b4 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -18,7 +18,7 @@ plugins { } group = "com.plotsquared" -version = "6.10.6" +version = "6.10.7-SNASPHOT" subprojects { group = rootProject.group From 02ae14894a23c2744b3fb48130d49efaaca799c3 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Mon, 9 Jan 2023 15:23:50 +0100 Subject: [PATCH 08/27] Stage 6.10.7 --- .github/workflows/build.yml | 2 +- build.gradle.kts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index bee920ea9..49ffbbf5c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -28,7 +28,7 @@ jobs: fi - name: Publish Release if: ${{ runner.os == 'Linux' && env.STATUS == 'release' && github.event_name == 'push' && github.ref == 'refs/heads/v6'}} - run: ./gradlew publishToSonatype closeAndReleaseSonatypeStagingRepository + run: ./gradlew publishToSonatype closeSonatypeStagingRepository env: ORG_GRADLE_PROJECT_sonatypeUsername: ${{ secrets.SONATYPE_USERNAME }} ORG_GRADLE_PROJECT_sonatypePassword: ${{ secrets.SONATYPE_PASSWORD }} diff --git a/build.gradle.kts b/build.gradle.kts index f76d616b4..9da000456 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -18,7 +18,7 @@ plugins { } group = "com.plotsquared" -version = "6.10.7-SNASPHOT" +version = "6.10.7" subprojects { group = rootProject.group From 577a0d8ed977a164185a47f48a96ef56e7cc4fb3 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Mon, 9 Jan 2023 15:28:31 +0100 Subject: [PATCH 09/27] Unstage 6.10.7 --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index 9da000456..f76d616b4 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -18,7 +18,7 @@ plugins { } group = "com.plotsquared" -version = "6.10.7" +version = "6.10.7-SNASPHOT" subprojects { group = rootProject.group From 99ee8a780dd925eee34ba4c70bd9d7bd3de87071 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Mon, 9 Jan 2023 15:40:32 +0100 Subject: [PATCH 10/27] Back to snapshot for development --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index f76d616b4..43dd987cf 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -18,7 +18,7 @@ plugins { } group = "com.plotsquared" -version = "6.10.7-SNASPHOT" +version = "6.10.7-SNAPSHOT" subprojects { group = rootProject.group From febac6fa40e31223ed9e4b32a2fa188c3cb806d0 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Mon, 9 Jan 2023 15:43:51 +0100 Subject: [PATCH 11/27] Release 6.10.8 --- .github/workflows/build.yml | 2 +- build.gradle.kts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 49ffbbf5c..bee920ea9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -28,7 +28,7 @@ jobs: fi - name: Publish Release if: ${{ runner.os == 'Linux' && env.STATUS == 'release' && github.event_name == 'push' && github.ref == 'refs/heads/v6'}} - run: ./gradlew publishToSonatype closeSonatypeStagingRepository + run: ./gradlew publishToSonatype closeAndReleaseSonatypeStagingRepository env: ORG_GRADLE_PROJECT_sonatypeUsername: ${{ secrets.SONATYPE_USERNAME }} ORG_GRADLE_PROJECT_sonatypePassword: ${{ secrets.SONATYPE_PASSWORD }} diff --git a/build.gradle.kts b/build.gradle.kts index 43dd987cf..f589836dd 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -18,7 +18,7 @@ plugins { } group = "com.plotsquared" -version = "6.10.7-SNAPSHOT" +version = "6.10.8" subprojects { group = rootProject.group From bbf1e4fe6186d3e3dfdaa1c345dee444cc1b6248 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Mon, 9 Jan 2023 15:53:19 +0100 Subject: [PATCH 12/27] Back to snapshot for development --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index f589836dd..c282e4539 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -18,7 +18,7 @@ plugins { } group = "com.plotsquared" -version = "6.10.8" +version = "6.10.9-SNAPSHOT" subprojects { group = rootProject.group From 0f0030916fc38f7e559773849778e7f4b13923a7 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Wed, 11 Jan 2023 18:25:51 +0100 Subject: [PATCH 13/27] Add source documentation to javadocs and add dependency tab (#3917) Get the most out of javadocs --- Bukkit/build.gradle.kts | 4 ++++ Core/build.gradle.kts | 4 ++++ .../java/com/plotsquared/core/events/PlayerAutoPlotEvent.java | 4 ++-- javadocfooter.html | 4 ++++ 4 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 javadocfooter.html diff --git a/Bukkit/build.gradle.kts b/Bukkit/build.gradle.kts index d56c2d74d..181f412d7 100644 --- a/Bukkit/build.gradle.kts +++ b/Bukkit/build.gradle.kts @@ -105,6 +105,10 @@ tasks { opt.links("https://jd.adventure.kyori.net/api/4.9.3/") opt.links("https://google.github.io/guice/api-docs/" + libs.guice.get().versionConstraint.toString() + "/javadoc/") opt.links("https://checkerframework.org/api/") + opt.isLinkSource = true + opt.bottom(File("$rootDir/javadocfooter.html").readText()) + opt.isUse = true opt.encoding("UTF-8") + opt.keyWords() } } diff --git a/Core/build.gradle.kts b/Core/build.gradle.kts index aa7e541db..322ac6319 100644 --- a/Core/build.gradle.kts +++ b/Core/build.gradle.kts @@ -71,6 +71,10 @@ tasks { opt.links("https://google.github.io/guice/api-docs/" + libs.guice.get().versionConstraint.toString() + "/javadoc/") opt.links("https://checkerframework.org/api/") opt.links("https://javadoc.io/doc/com.intellectualsites.informative-annotations/informative-annotations/latest/") + opt.isLinkSource = true + opt.bottom(File("$rootDir/javadocfooter.html").readText()) + opt.isUse = true opt.encoding("UTF-8") + opt.keyWords() } } diff --git a/Core/src/main/java/com/plotsquared/core/events/PlayerAutoPlotEvent.java b/Core/src/main/java/com/plotsquared/core/events/PlayerAutoPlotEvent.java index 3fe14ce1b..03e9b10f9 100644 --- a/Core/src/main/java/com/plotsquared/core/events/PlayerAutoPlotEvent.java +++ b/Core/src/main/java/com/plotsquared/core/events/PlayerAutoPlotEvent.java @@ -114,7 +114,7 @@ public class PlayerAutoPlotEvent extends PlotEvent implements CancellablePlotEve } /** - * @deprecated for removal. Use {@link PlayerAutoPlotEvent#setSizeX(int)} )} + * @deprecated for removal. Use {@link PlayerAutoPlotEvent#setSizeX(int)} */ @Deprecated(forRemoval = true, since = "6.1.0") public void setSize_x(int sizeX) { @@ -130,7 +130,7 @@ public class PlayerAutoPlotEvent extends PlotEvent implements CancellablePlotEve } /** - * @deprecated for removal. Use {@link PlayerAutoPlotEvent#setSizeZ(int)} )} + * @deprecated for removal. Use {@link PlayerAutoPlotEvent#setSizeZ(int)} */ @Deprecated(forRemoval = true, since = "6.1.0") public void setSize_z(int sizeZ) { diff --git a/javadocfooter.html b/javadocfooter.html new file mode 100644 index 000000000..b6528c732 --- /dev/null +++ b/javadocfooter.html @@ -0,0 +1,4 @@ +Javadocs generated for + PlotSquared | + Documentation | +Visit us on our Discord server :) From 4aa7bc51bcd2834df546ecd519b74507ab7ff7e7 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Wed, 11 Jan 2023 22:11:11 +0100 Subject: [PATCH 14/27] Include missing javadoc option --- Bukkit/build.gradle.kts | 2 ++ Core/build.gradle.kts | 2 ++ 2 files changed, 4 insertions(+) diff --git a/Bukkit/build.gradle.kts b/Bukkit/build.gradle.kts index 181f412d7..b40755efa 100644 --- a/Bukkit/build.gradle.kts +++ b/Bukkit/build.gradle.kts @@ -98,6 +98,7 @@ tasks.named("shadowJar") { tasks { withType { + val isRelease = if (rootProject.version.toString().endsWith("-SNAPSHOT")) "TODO" else rootProject.version.toString() val opt = options as StandardJavadocDocletOptions opt.links("https://jd.papermc.io/paper/1.18/") opt.links("https://docs.enginehub.org/javadoc/com.sk89q.worldedit/worldedit-bukkit/" + libs.worldeditBukkit.get().versionConstraint.toString()) @@ -110,5 +111,6 @@ tasks { opt.isUse = true opt.encoding("UTF-8") opt.keyWords() + opt.addStringOption("-since", isRelease) } } diff --git a/Core/build.gradle.kts b/Core/build.gradle.kts index 322ac6319..12d8dcb02 100644 --- a/Core/build.gradle.kts +++ b/Core/build.gradle.kts @@ -65,6 +65,7 @@ tasks.processResources { tasks { withType { + val isRelease = if (rootProject.version.toString().endsWith("-SNAPSHOT")) "TODO" else rootProject.version.toString() val opt = options as StandardJavadocDocletOptions opt.links("https://docs.enginehub.org/javadoc/com.sk89q.worldedit/worldedit-core/" + libs.worldeditCore.get().versionConstraint.toString()) opt.links("https://jd.adventure.kyori.net/api/4.9.3/") @@ -76,5 +77,6 @@ tasks { opt.isUse = true opt.encoding("UTF-8") opt.keyWords() + opt.addStringOption("-since", isRelease) } } From d1b8f652a75ea05d778399d5cdfd2b2edee8eb4a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 11 Jan 2023 22:16:12 +0100 Subject: [PATCH 15/27] Update dependency org.junit.jupiter:junit-jupiter to v5.9.2 (#3923) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index c282e4539..3a8abe758 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -69,7 +69,7 @@ subprojects { dependencies { // Tests - testImplementation("org.junit.jupiter:junit-jupiter:5.9.1") + testImplementation("org.junit.jupiter:junit-jupiter:5.9.2") } plugins.withId("java") { From e887a59158bcedbac8c06cd5070c7abf1d4d64bf Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Thu, 12 Jan 2023 10:03:11 +0100 Subject: [PATCH 16/27] Officially deprecated BukkitPlayer#BukkitPlayer() (#3922) * Officially deprecated BukkitPlayer#BukkitPlayer() * Address review feedback --- .../plotsquared/bukkit/player/BukkitPlayer.java | 17 ++++++++++++++--- .../bukkit/player/BukkitPlayerManager.java | 2 ++ 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitPlayer.java b/Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitPlayer.java index 1bcd3750f..268258ead 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitPlayer.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitPlayer.java @@ -67,14 +67,15 @@ public class BukkitPlayer extends PlotPlayer { private String name; /** - *

Please do not use this method. Instead use - * BukkitUtil.getPlayer(Player), as it caches player objects.

- * * @param plotAreaManager PlotAreaManager instance * @param eventDispatcher EventDispatcher instance * @param player Bukkit player instance * @param permissionHandler PermissionHandler instance + * + * @deprecated Please do not use this method. Instead use {@link BukkitUtil#adapt(Player)}, as it caches player objects. + * This method will be made private in a future release. */ + @Deprecated(forRemoval = true, since = "TODO") public BukkitPlayer( final @NonNull PlotAreaManager plotAreaManager, final @NonNull EventDispatcher eventDispatcher, final @NonNull Player player, final @NonNull PermissionHandler permissionHandler @@ -82,6 +83,16 @@ public class BukkitPlayer extends PlotPlayer { this(plotAreaManager, eventDispatcher, player, false, permissionHandler); } + /** + * @param plotAreaManager PlotAreaManager instance + * @param eventDispatcher EventDispatcher instance + * @param player Bukkit player instance + * @param permissionHandler PermissionHandler instance + * + * @deprecated Please do not use this method. Instead use {@link BukkitUtil#adapt(Player)}, as it caches player objects. + * This method will be made private in a future release. + */ + @Deprecated(forRemoval = true, since = "TODO") public BukkitPlayer( final @NonNull PlotAreaManager plotAreaManager, final @NonNull EventDispatcher eventDispatcher, final @NonNull Player player, diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitPlayerManager.java b/Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitPlayerManager.java index 35b550d2f..a1a675598 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitPlayerManager.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitPlayerManager.java @@ -54,6 +54,7 @@ public class BukkitPlayerManager extends PlayerManager { @NonNull @Override + @SuppressWarnings("deprecation") public BukkitPlayer getPlayer(final @NonNull Player object) { if (object.getUniqueId().version() == 2) { // not a real player return new BukkitPlayer(this.plotAreaManager, this.eventDispatcher, object, false, this.permissionHandler); @@ -65,6 +66,7 @@ public class BukkitPlayerManager extends PlayerManager { } @Override + @SuppressWarnings("deprecation") public @NonNull BukkitPlayer createPlayer(final @NonNull UUID uuid) { final Player player = Bukkit.getPlayer(uuid); if (player == null || !player.isOnline()) { From 1d201b04baf8d608ccc365326398686d72791218 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Fri, 13 Jan 2023 17:48:13 +0100 Subject: [PATCH 17/27] chore: Update a few deprecations (#3913) --- .../src/main/java/com/plotsquared/bukkit/BukkitPlatform.java | 5 ----- .../plotsquared/bukkit/managers/MultiverseWorldManager.java | 3 ++- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/BukkitPlatform.java b/Bukkit/src/main/java/com/plotsquared/bukkit/BukkitPlatform.java index 4355e9418..8055bd5cb 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/BukkitPlatform.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/BukkitPlatform.java @@ -36,7 +36,6 @@ import com.plotsquared.bukkit.listener.ChunkListener; import com.plotsquared.bukkit.listener.EntityEventListener; import com.plotsquared.bukkit.listener.EntitySpawnListener; import com.plotsquared.bukkit.listener.PaperListener; -import com.plotsquared.bukkit.listener.PaperListener113; import com.plotsquared.bukkit.listener.PlayerEventListener; import com.plotsquared.bukkit.listener.ProjectileEventListener; import com.plotsquared.bukkit.listener.ServerListener; @@ -356,11 +355,7 @@ public final class BukkitPlatform extends JavaPlugin implements Listener, PlotPl getServer().getPluginManager().registerEvents(injector().getInstance(ServerListener.class), this); getServer().getPluginManager().registerEvents(injector().getInstance(EntitySpawnListener.class), this); if (PaperLib.isPaper() && Settings.Paper_Components.PAPER_LISTENERS) { - if (serverVersion()[1] == 13) { - getServer().getPluginManager().registerEvents(injector().getInstance(PaperListener113.class), this); - } else { getServer().getPluginManager().registerEvents(injector().getInstance(PaperListener.class), this); - } } else { getServer().getPluginManager().registerEvents(injector().getInstance(SpigotListener.class), this); } diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/managers/MultiverseWorldManager.java b/Bukkit/src/main/java/com/plotsquared/bukkit/managers/MultiverseWorldManager.java index 0a6ed594b..8f4439339 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/managers/MultiverseWorldManager.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/managers/MultiverseWorldManager.java @@ -30,8 +30,9 @@ import org.checkerframework.checker.nullness.qual.Nullable; * * @deprecated Deprecated and scheduled for removal without replacement * in favor of the build in setup wizard. + * However, this class will be kept around for a while, given it's not a maintenance burden. */ -@Deprecated(forRemoval = true, since = "6.0.0") +@Deprecated @Singleton public class MultiverseWorldManager extends BukkitWorldManager { From 6a34a1996f821f99617cb3ada67bc40ca93bb668 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 13 Jan 2023 22:28:58 +0100 Subject: [PATCH 18/27] Update dependency com.intellectualsites.bom:bom-1.18.x to v1.22 (#3918) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index 3a8abe758..d6d7bb50b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -64,7 +64,7 @@ subprojects { } dependencies { - implementation(platform("com.intellectualsites.bom:bom-1.18.x:1.21")) + implementation(platform("com.intellectualsites.bom:bom-1.18.x:1.22")) } dependencies { From 00722bc4633410ca7644b531f3a0a2172f000385 Mon Sep 17 00:00:00 2001 From: Hannes Greule Date: Sat, 14 Jan 2023 00:27:09 +0100 Subject: [PATCH 19/27] Reduce `/plot home` overhead (#3921) * Add JFR events * Replace global connected plots cache with local cache * Simplify isOwner check * Avoid extensive hashing of plots * Clear caches in more cases * Revert "Add JFR events" This reverts commit 78c107f1 --- .../java/com/plotsquared/core/plot/Plot.java | 41 ++++++++++--------- .../core/plot/PlotModificationManager.java | 6 ++- .../core/util/query/GlobalPlotProvider.java | 6 +-- 3 files changed, 28 insertions(+), 25 deletions(-) diff --git a/Core/src/main/java/com/plotsquared/core/plot/Plot.java b/Core/src/main/java/com/plotsquared/core/plot/Plot.java index 098b95656..bab1a3d61 100644 --- a/Core/src/main/java/com/plotsquared/core/plot/Plot.java +++ b/Core/src/main/java/com/plotsquared/core/plot/Plot.java @@ -122,9 +122,6 @@ public class Plot { private static final MiniMessage MINI_MESSAGE = MiniMessage.builder().build(); private static final Cleaner CLEANER = Cleaner.create(); - static Set connected_cache; - static Set regions_cache; - static { FLAG_DECIMAL_FORMAT.setMaximumFractionDigits(340); } @@ -207,6 +204,8 @@ public class Plot { */ private Plot origin; + private Set connectedCache; + /** * Constructor for a new plot. * (Only changes after plot.create() will be properly set in the database) @@ -576,7 +575,14 @@ public class Plot { return false; } final Set connected = getConnectedPlots(); - return connected.stream().anyMatch(current -> uuid.equals(current.getOwner())); + for (Plot current : connected) { + // can skip ServerPlotFlag check in getOwner() + // as flags are synchronized between plots + if (uuid.equals(current.getOwnerAbs())) { + return true; + } + } + return false; } /** @@ -1294,6 +1300,7 @@ public class Plot { DBFunc.delete(current); current.setOwnerAbs(null); current.settings = null; + current.clearCache(); for (final PlotPlayer pp : players) { this.plotListener.plotEntry(pp, current); } @@ -1864,6 +1871,7 @@ public class Plot { this.area.removePlot(this.id); this.id = plot.getId(); this.area.addPlotAbs(this); + clearCache(); DBFunc.movePlot(this, plot); TaskManager.runTaskLater(whenDone, TaskTime.ticks(1L)); return true; @@ -2128,17 +2136,16 @@ public class Plot { this.origin.origin = base; other.origin = base; this.origin = base; - connected_cache = null; + this.connectedCache = null; } } else { if (this.origin != null) { this.origin.origin = null; this.origin = null; } - connected_cache = null; + this.connectedCache = null; } DBFunc.setMerged(this, this.getSettings().getMerged()); - regions_cache = null; } } @@ -2173,8 +2180,7 @@ public class Plot { } public void clearCache() { - connected_cache = null; - regions_cache = null; + this.connectedCache = null; if (this.origin != null) { this.origin.origin = null; this.origin = null; @@ -2301,10 +2307,9 @@ public class Plot { if (!this.isMerged()) { return Collections.singleton(this); } - if (connected_cache != null && connected_cache.contains(this)) { - return connected_cache; + if (this.connectedCache != null && this.connectedCache.contains(this)) { + return this.connectedCache; } - regions_cache = null; HashSet tmpSet = new HashSet<>(); tmpSet.add(this); @@ -2409,7 +2414,7 @@ public class Plot { } } } - connected_cache = tmpSet; + this.connectedCache = tmpSet; return tmpSet; } @@ -2421,19 +2426,15 @@ public class Plot { * @return all regions within the plot */ public @NonNull Set getRegions() { - if (regions_cache != null && connected_cache != null && connected_cache.contains(this)) { - return regions_cache; - } if (!this.isMerged()) { Location pos1 = this.getBottomAbs().withY(getArea().getMinBuildHeight()); Location pos2 = this.getTopAbs().withY(getArea().getMaxBuildHeight()); - connected_cache = Sets.newHashSet(this); + this.connectedCache = Sets.newHashSet(this); CuboidRegion rg = new CuboidRegion(pos1.getBlockVector3(), pos2.getBlockVector3()); - regions_cache = Collections.singleton(rg); - return regions_cache; + return Collections.singleton(rg); } Set plots = this.getConnectedPlots(); - Set regions = regions_cache = new HashSet<>(); + Set regions = new HashSet<>(); Set visited = new HashSet<>(); for (Plot current : plots) { if (visited.contains(current.getId())) { diff --git a/Core/src/main/java/com/plotsquared/core/plot/PlotModificationManager.java b/Core/src/main/java/com/plotsquared/core/plot/PlotModificationManager.java index 61658391f..cfab430b8 100644 --- a/Core/src/main/java/com/plotsquared/core/plot/PlotModificationManager.java +++ b/Core/src/main/java/com/plotsquared/core/plot/PlotModificationManager.java @@ -263,6 +263,7 @@ public final class PlotModificationManager { return; } Plot current = queue.poll(); + current.clearCache(); if (plot.getArea().getTerrain() != PlotAreaTerrainType.NONE) { try { PlotSquared.platform().regionManager().regenerateRegion( @@ -327,6 +328,7 @@ public final class PlotModificationManager { ArrayList ids = new ArrayList<>(plots.size()); for (Plot current : plots) { current.setHome(null); + current.clearCache(); ids.add(current.getId()); } this.plot.clearRatings(); @@ -478,8 +480,7 @@ public final class PlotModificationManager { this.plot.updateWorldBorder(); } } - Plot.connected_cache = null; - Plot.regions_cache = null; + this.plot.clearCache(); this.plot.getTrusted().clear(); this.plot.getMembers().clear(); this.plot.getDenied().clear(); @@ -630,6 +631,7 @@ public final class PlotModificationManager { if (queue.size() > 0) { queue.enqueue(); } + visited.forEach(Plot::clearCache); return toReturn; } diff --git a/Core/src/main/java/com/plotsquared/core/util/query/GlobalPlotProvider.java b/Core/src/main/java/com/plotsquared/core/util/query/GlobalPlotProvider.java index 2e635101e..e02994e63 100644 --- a/Core/src/main/java/com/plotsquared/core/util/query/GlobalPlotProvider.java +++ b/Core/src/main/java/com/plotsquared/core/util/query/GlobalPlotProvider.java @@ -23,9 +23,9 @@ import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.plot.world.PlotAreaManager; import org.checkerframework.checker.nullness.qual.NonNull; +import java.util.ArrayList; import java.util.Collection; -import java.util.HashSet; -import java.util.Set; +import java.util.List; class GlobalPlotProvider implements PlotProvider { @@ -37,7 +37,7 @@ class GlobalPlotProvider implements PlotProvider { @Override public Collection getPlots() { - final Set plots = new HashSet<>(); + final List plots = new ArrayList<>(); for (final PlotArea plotArea : this.plotAreaManager.getAllPlotAreas()) { plots.addAll(plotArea.getPlots()); } From 86919b88415cadb0dbb15bca257c1e183f9f1343 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 15 Jan 2023 10:28:43 +0100 Subject: [PATCH 20/27] Update dependency com.diffplug.spotless to v6.13.0 (#3929) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 16bd6bc7b..3fb14d96b 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -21,7 +21,7 @@ http4j = "1.3" # Gradle plugins shadow = "7.1.2" grgit = "4.1.1" -spotless = "6.12.1" +spotless = "6.13.0" nexus = "1.1.0" [libraries] From 39d2f1a72c6f69c00319600ebc2c81feef7ecdf8 Mon Sep 17 00:00:00 2001 From: Jordan Date: Sun, 15 Jan 2023 13:08:59 +0000 Subject: [PATCH 21/27] chore: remove uses of deprecated Permissions class and add javadoc notes (#3930) - Closes #3907 --- .../bukkit/listener/BlockEventListener.java | 47 ++++------ .../bukkit/listener/EntityEventListener.java | 6 +- .../bukkit/listener/ForceFieldListener.java | 7 +- .../bukkit/listener/PaperListener.java | 8 +- .../bukkit/listener/PlayerEventListener.java | 93 +++++++++---------- .../listener/ProjectileEventListener.java | 15 ++- .../bukkit/player/BukkitOfflinePlayer.java | 5 + .../bukkit/util/BukkitEntityUtil.java | 21 ++--- .../com/plotsquared/core/command/Add.java | 18 ++-- .../com/plotsquared/core/command/Alias.java | 3 +- .../com/plotsquared/core/command/Area.java | 25 +++-- .../com/plotsquared/core/command/Auto.java | 9 +- .../com/plotsquared/core/command/Backup.java | 10 +- .../com/plotsquared/core/command/Caps.java | 4 +- .../com/plotsquared/core/command/Claim.java | 8 +- .../com/plotsquared/core/command/Clear.java | 10 +- .../com/plotsquared/core/command/Cluster.java | 84 ++++++++--------- .../com/plotsquared/core/command/Command.java | 3 +- .../plotsquared/core/command/Continue.java | 4 +- .../com/plotsquared/core/command/Copy.java | 4 +- .../com/plotsquared/core/command/Delete.java | 4 +- .../com/plotsquared/core/command/Deny.java | 9 +- .../com/plotsquared/core/command/Dislike.java | 5 +- .../com/plotsquared/core/command/Done.java | 4 +- .../plotsquared/core/command/Download.java | 15 ++- .../plotsquared/core/command/FlagCommand.java | 12 +-- .../com/plotsquared/core/command/Grant.java | 9 +- .../plotsquared/core/command/HomeCommand.java | 4 +- .../com/plotsquared/core/command/Inbox.java | 9 +- .../com/plotsquared/core/command/Info.java | 5 +- .../com/plotsquared/core/command/Kick.java | 9 +- .../com/plotsquared/core/command/Like.java | 8 +- .../com/plotsquared/core/command/ListCmd.java | 77 ++++++++------- .../com/plotsquared/core/command/Load.java | 4 +- .../plotsquared/core/command/MainCommand.java | 5 +- .../com/plotsquared/core/command/Merge.java | 23 +++-- .../com/plotsquared/core/command/Move.java | 7 +- .../com/plotsquared/core/command/Music.java | 4 +- .../com/plotsquared/core/command/Owner.java | 12 +-- .../com/plotsquared/core/command/Rate.java | 10 +- .../com/plotsquared/core/command/Remove.java | 4 +- .../com/plotsquared/core/command/Save.java | 4 +- .../core/command/SchematicCmd.java | 21 ++--- .../com/plotsquared/core/command/Set.java | 33 ++++--- .../plotsquared/core/command/SetCommand.java | 5 +- .../com/plotsquared/core/command/Swap.java | 4 +- .../plotsquared/core/command/Template.java | 7 +- .../com/plotsquared/core/command/Trust.java | 9 +- .../com/plotsquared/core/command/Unlink.java | 4 +- .../com/plotsquared/core/command/Visit.java | 14 ++- .../components/ComponentPresetManager.java | 8 +- .../core/listener/PlotListener.java | 19 ++-- .../core/listener/WESubscriber.java | 3 +- .../core/permissions/PermissionHolder.java | 47 ++++++++++ .../plotsquared/core/player/PlotPlayer.java | 17 +++- .../java/com/plotsquared/core/plot/Plot.java | 8 +- .../com/plotsquared/core/plot/PlotArea.java | 3 +- .../core/plot/comment/CommentInbox.java | 18 ++-- .../core/util/EventDispatcher.java | 49 +++++----- .../plotsquared/core/util/Permissions.java | 16 ++-- 60 files changed, 428 insertions(+), 484 deletions(-) diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/BlockEventListener.java b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/BlockEventListener.java index dded70e62..343acce06 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/BlockEventListener.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/BlockEventListener.java @@ -55,7 +55,6 @@ import com.plotsquared.core.plot.flag.implementations.VineGrowFlag; import com.plotsquared.core.plot.flag.types.BlockTypeWrapper; import com.plotsquared.core.plot.flag.types.BooleanFlag; import com.plotsquared.core.plot.world.PlotAreaManager; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlotFlagUtil; import com.plotsquared.core.util.task.TaskManager; import com.plotsquared.core.util.task.TaskTime; @@ -278,7 +277,7 @@ public class BlockEventListener implements Listener { return; } if (!plot.hasOwner()) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_UNOWNED)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_UNOWNED)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_BUILD_UNOWNED)) @@ -295,7 +294,7 @@ public class BlockEventListener implements Listener { return; } } - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_OTHER)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_BUILD_OTHER)) @@ -306,7 +305,7 @@ public class BlockEventListener implements Listener { return; } } else if (Settings.Done.RESTRICT_BUILDING && DoneFlag.isDone(plot)) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_OTHER)) { pp.sendMessage( TranslatableCaption.of("done.building_restricted") ); @@ -322,7 +321,7 @@ public class BlockEventListener implements Listener { + " did not fall because of disable-physics = true"); } } - } else if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_ROAD)) { + } else if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_ROAD)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_BUILD_ROAD)) @@ -344,8 +343,7 @@ public class BlockEventListener implements Listener { BukkitPlayer plotPlayer = BukkitUtil.adapt(player); // == rather than <= as we only care about the "ground level" not being destroyed if (event.getBlock().getY() == area.getMinGenHeight()) { - if (!Permissions - .hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_DESTROY_GROUNDLEVEL)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_GROUNDLEVEL)) { plotPlayer.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_DESTROY_GROUNDLEVEL)) @@ -358,8 +356,7 @@ public class BlockEventListener implements Listener { return; } if (!plot.hasOwner()) { - if (!Permissions - .hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_DESTROY_UNOWNED, true)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_UNOWNED, true)) { event.setCancelled(true); } return; @@ -373,8 +370,7 @@ public class BlockEventListener implements Listener { return; } } - if (Permissions - .hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_DESTROY_OTHER)) { + if (plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_OTHER)) { return; } plotPlayer.sendMessage( @@ -383,7 +379,7 @@ public class BlockEventListener implements Listener { ); event.setCancelled(true); } else if (Settings.Done.RESTRICT_BUILDING && DoneFlag.isDone(plot)) { - if (!Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_BUILD_OTHER)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_BUILD_OTHER)) { plotPlayer.sendMessage( TranslatableCaption.of("done.building_restricted") ); @@ -394,7 +390,7 @@ public class BlockEventListener implements Listener { return; } BukkitPlayer pp = BukkitUtil.adapt(player); - if (Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_DESTROY_ROAD)) { + if (pp.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_ROAD)) { return; } if (this.worldEdit != null && pp.getAttribute("worldedit")) { @@ -479,18 +475,18 @@ public class BlockEventListener implements Listener { BukkitPlayer plotPlayer = BukkitUtil.adapt(player); if (plot != null) { if (!plot.hasOwner()) { - if (Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_INTERACT_UNOWNED)) { + if (plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_UNOWNED)) { return; } } else if (!plot.isAdded(plotPlayer.getUUID())) { - if (Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_INTERACT_OTHER)) { + if (plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_OTHER)) { return; } } else { return; } } else { - if (Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_INTERACT_ROAD)) { + if (plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_ROAD)) { return; } if (this.worldEdit != null && plotPlayer.getAttribute("worldedit")) { @@ -635,8 +631,7 @@ public class BlockEventListener implements Listener { } if (!plot.hasOwner()) { BukkitPlayer plotPlayer = BukkitUtil.adapt(player); - if (Permissions - .hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_DESTROY_UNOWNED)) { + if (plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_UNOWNED)) { return; } event.setCancelled(true); @@ -648,8 +643,7 @@ public class BlockEventListener implements Listener { Block block = event.getBlock(); if (destroy .contains(BlockTypeWrapper.get(BukkitAdapter.asBlockType(block.getType()))) - || Permissions - .hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_DESTROY_OTHER)) { + || plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_OTHER)) { return; } plot.debug(player.getName() + " could not break " + block.getType() @@ -660,7 +654,7 @@ public class BlockEventListener implements Listener { return; } BukkitPlayer plotPlayer = BukkitUtil.adapt(player); - if (Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_DESTROY_ROAD)) { + if (plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_ROAD)) { return; } event.setCancelled(true); @@ -1088,8 +1082,7 @@ public class BlockEventListener implements Listener { return; } if (plot == null) { - if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, BlockIgnitionFlag.class, true) && !Permissions.hasPermission( - pp, + if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, BlockIgnitionFlag.class, true) && !pp.hasPermission( Permission.PERMISSION_ADMIN_BUILD_ROAD )) { pp.sendMessage( @@ -1099,8 +1092,7 @@ public class BlockEventListener implements Listener { event.setCancelled(true); } } else if (!plot.hasOwner()) { - if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, BlockIgnitionFlag.class, true) && !Permissions.hasPermission( - pp, + if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, BlockIgnitionFlag.class, true) && !pp.hasPermission( Permission.PERMISSION_ADMIN_BUILD_UNOWNED )) { pp.sendMessage( @@ -1110,7 +1102,7 @@ public class BlockEventListener implements Listener { event.setCancelled(true); } } else if (!plot.isAdded(pp.getUUID())) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_OTHER)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_BUILD_OTHER)) @@ -1234,8 +1226,7 @@ public class BlockEventListener implements Listener { for (final BlockState state : event.getReplacedBlockStates()) { Location currentLocation = BukkitUtil.adapt(state.getLocation()); - if (!Permissions.hasPermission( - pp, + if (!pp.hasPermission( Permission.PERMISSION_ADMIN_BUILD_ROAD ) && !(Objects.equals(currentLocation.getPlot(), plot))) { pp.sendMessage( diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/EntityEventListener.java b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/EntityEventListener.java index 3e32a9816..68f658a20 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/EntityEventListener.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/EntityEventListener.java @@ -37,7 +37,6 @@ import com.plotsquared.core.plot.flag.implementations.ExplosionFlag; import com.plotsquared.core.plot.flag.implementations.InvincibleFlag; import com.plotsquared.core.plot.world.PlotAreaManager; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlotFlagUtil; import com.sk89q.worldedit.bukkit.BukkitAdapter; import com.sk89q.worldedit.world.block.BlockType; @@ -371,14 +370,13 @@ public class EntityEventListener implements Listener { if (shooter instanceof Player) { PlotPlayer pp = BukkitUtil.adapt((Player) shooter); if (plot == null) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_PROJECTILE_UNOWNED)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_PROJECTILE_UNOWNED)) { entity.remove(); event.setCancelled(true); } return; } - if (plot.isAdded(pp.getUUID()) || Permissions - .hasPermission(pp, Permission.PERMISSION_ADMIN_PROJECTILE_OTHER)) { + if (plot.isAdded(pp.getUUID()) || pp.hasPermission(Permission.PERMISSION_ADMIN_PROJECTILE_OTHER)) { return; } entity.remove(); diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/ForceFieldListener.java b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/ForceFieldListener.java index 8c4b5b9b6..d14a259b3 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/ForceFieldListener.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/ForceFieldListener.java @@ -25,7 +25,6 @@ import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.flag.implementations.ForcefieldFlag; -import com.plotsquared.core.util.Permissions; import org.bukkit.entity.Player; import org.bukkit.util.Vector; @@ -109,8 +108,7 @@ public class ForceFieldListener { if (plot.isAdded(uuid)) { Set> players = getNearbyPlayers(player, plot); for (PlotPlayer oPlayer : players) { - if (!Permissions - .hasPermission(oPlayer, Permission.PERMISSION_ADMIN_ENTRY_FORCEFIELD)) { + if (!oPlayer.hasPermission(Permission.PERMISSION_ADMIN_ENTRY_FORCEFIELD)) { ((BukkitPlayer) oPlayer).player .setVelocity(calculateVelocity(plotPlayer, oPlayer)); } @@ -120,8 +118,7 @@ public class ForceFieldListener { if (oPlayer == null) { return; } - if (!Permissions - .hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_ENTRY_FORCEFIELD)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_ENTRY_FORCEFIELD)) { player.setVelocity(calculateVelocity(oPlayer, plotPlayer)); } } diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/PaperListener.java b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/PaperListener.java index 3ad3a6227..dee073885 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/PaperListener.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/PaperListener.java @@ -43,7 +43,6 @@ import com.plotsquared.core.plot.flag.implementations.DoneFlag; import com.plotsquared.core.plot.flag.implementations.ProjectilesFlag; import com.plotsquared.core.plot.flag.types.BooleanFlag; import com.plotsquared.core.plot.world.PlotAreaManager; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlotFlagUtil; import net.kyori.adventure.text.minimessage.Template; import org.bukkit.Chunk; @@ -335,8 +334,7 @@ public class PaperListener implements Listener { Plot plot = location.getOwnedPlot(); if (plot == null) { - if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, ProjectilesFlag.class, true) && !Permissions.hasPermission( - pp, + if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, ProjectilesFlag.class, true) && !pp.hasPermission( Permission.PERMISSION_ADMIN_PROJECTILE_ROAD )) { pp.sendMessage( @@ -347,7 +345,7 @@ public class PaperListener implements Listener { event.setCancelled(true); } } else if (!plot.hasOwner()) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_PROJECTILE_UNOWNED)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_PROJECTILE_UNOWNED)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_PROJECTILE_UNOWNED)) @@ -357,7 +355,7 @@ public class PaperListener implements Listener { } } else if (!plot.isAdded(pp.getUUID())) { if (!plot.getFlag(ProjectilesFlag.class)) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_PROJECTILE_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_PROJECTILE_OTHER)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_PROJECTILE_OTHER)) diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/PlayerEventListener.java b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/PlayerEventListener.java index fbe26e676..6602cb8be 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/PlayerEventListener.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/PlayerEventListener.java @@ -67,7 +67,6 @@ import com.plotsquared.core.plot.flag.implementations.VillagerInteractFlag; import com.plotsquared.core.plot.world.PlotAreaManager; import com.plotsquared.core.util.EventDispatcher; import com.plotsquared.core.util.MathMan; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlotFlagUtil; import com.plotsquared.core.util.PremiumVerification; import com.plotsquared.core.util.entity.EntityCategories; @@ -275,8 +274,10 @@ public class PlayerEventListener implements Listener { switch (parts[0]) { case "up": case "worldedit:up": - if (plot == null || (!plot.isAdded(plotPlayer.getUUID()) && !Permissions - .hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_BUILD_OTHER, true))) { + if (plot == null || (!plot.isAdded(plotPlayer.getUUID()) && !plotPlayer.hasPermission( + Permission.PERMISSION_ADMIN_BUILD_OTHER, + true + ))) { event.setCancelled(true); return; } @@ -291,7 +292,7 @@ public class PlayerEventListener implements Listener { if (blockedCommands.isEmpty()) { return; } - if (Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_INTERACT_BLOCKED_CMDS)) { + if (plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_BLOCKED_CMDS)) { return; } // When using namespaced commands, we're not interested in the namespace @@ -310,7 +311,7 @@ public class PlayerEventListener implements Listener { } else { perm = "plots.admin.command.blocked-cmds.road"; } - if (!Permissions.hasPermission(plotPlayer, perm)) { + if (!plotPlayer.hasPermission(perm)) { plotPlayer.sendMessage(TranslatableCaption.of("blockedcmds.command_blocked")); event.setCancelled(true); } @@ -600,7 +601,7 @@ public class PlayerEventListener implements Listener { int border = area.getBorder(); int x1; if (x2 > border && this.tmpTeleport) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { to.setX(border - 1); this.tmpTeleport = false; player.teleport(event.getTo()); @@ -610,7 +611,7 @@ public class PlayerEventListener implements Listener { pp.sendMessage(TranslatableCaption.of("border.bypass.exited")); } } else if (x2 < -border && this.tmpTeleport) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { to.setX(-border + 1); this.tmpTeleport = false; player.teleport(event.getTo()); @@ -620,7 +621,7 @@ public class PlayerEventListener implements Listener { pp.sendMessage(TranslatableCaption.of("border.bypass.exited")); } } else if (((x1 = MathMan.roundInt(from.getX())) >= border && x2 <= border) || (x1 <= -border && x2 >= -border)) { - if (Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { + if (pp.hasPermission(Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { pp.sendMessage(TranslatableCaption.of("border.bypass.entered")); } } @@ -691,7 +692,7 @@ public class PlayerEventListener implements Listener { int border = area.getBorder(); int z1; if (z2 > border && this.tmpTeleport) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { to.setZ(border - 1); this.tmpTeleport = false; player.teleport(event.getTo()); @@ -701,7 +702,7 @@ public class PlayerEventListener implements Listener { pp.sendMessage(TranslatableCaption.of("border.bypass.exited")); } } else if (z2 < -border && this.tmpTeleport) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { to.setZ(-border + 1); this.tmpTeleport = false; player.teleport(event.getTo()); @@ -711,7 +712,7 @@ public class PlayerEventListener implements Listener { pp.sendMessage(TranslatableCaption.of("border.bypass.exited")); } } else if (((z1 = MathMan.roundInt(from.getZ())) >= border && z2 <= border) || (z1 <= -border && z2 >= -border)) { - if (Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { + if (pp.hasPermission(Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { pp.sendMessage(TranslatableCaption.of("border.bypass.entered")); } } @@ -738,8 +739,7 @@ public class PlayerEventListener implements Listener { || area.isForcingPlotChat())) { return; } - if (plot.isDenied(plotPlayer.getUUID()) && !Permissions - .hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_CHAT_BYPASS)) { + if (plot.isDenied(plotPlayer.getUUID()) && !plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_CHAT_BYPASS)) { return; } event.setCancelled(true); @@ -824,7 +824,7 @@ public class PlayerEventListener implements Listener { plotListener.plotExit(pp, plot); } if (this.worldEdit != null) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_WORLDEDIT_BYPASS)) { + if (!pp.hasPermission(Permission.PERMISSION_WORLDEDIT_BYPASS)) { if (pp.getAttribute("worldedit")) { pp.removeAttribute("worldedit"); } @@ -880,8 +880,7 @@ public class PlayerEventListener implements Listener { final Plot plot = pp.getCurrentPlot(); if (plot != null) { if (plot.getFlag(PreventCreativeCopyFlag.class) && !plot - .isAdded(player.getUniqueId()) && !Permissions - .hasPermission(pp, Permission.PERMISSION_ADMIN_INTERACT_OTHER)) { + .isAdded(player.getUniqueId()) && !pp.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_OTHER)) { final ItemStack newStack = new ItemStack(newItem.getType(), newItem.getAmount()); event.setCursor(newStack); @@ -943,7 +942,7 @@ public class PlayerEventListener implements Listener { Plot plot = area.getPlotAbs(location); boolean cancelled = false; if (plot == null) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_INTERACT_ROAD)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_ROAD)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_INTERACT_ROAD)) @@ -951,7 +950,7 @@ public class PlayerEventListener implements Listener { cancelled = true; } } else if (!plot.hasOwner()) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_INTERACT_UNOWNED)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_UNOWNED)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_INTERACT_UNOWNED)) @@ -961,7 +960,7 @@ public class PlayerEventListener implements Listener { } else { UUID uuid = pp.getUUID(); if (!plot.isAdded(uuid)) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_INTERACT_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_OTHER)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_INTERACT_OTHER)) @@ -998,8 +997,7 @@ public class PlayerEventListener implements Listener { Plot plot = location.getPlotAbs(); BukkitPlayer pp = BukkitUtil.adapt(e.getPlayer()); if (plot == null) { - if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, MiscInteractFlag.class, true) && !Permissions.hasPermission( - pp, + if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, MiscInteractFlag.class, true) && !pp.hasPermission( Permission.PERMISSION_ADMIN_INTERACT_ROAD )) { pp.sendMessage( @@ -1010,14 +1008,14 @@ public class PlayerEventListener implements Listener { } } else { if (Settings.Done.RESTRICT_BUILDING && DoneFlag.isDone(plot)) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_OTHER)) { pp.sendMessage(TranslatableCaption.of("done.building_restricted")); e.setCancelled(true); return; } } if (!plot.hasOwner()) { - if (!Permissions.hasPermission(pp, "plots.admin.interact.unowned")) { + if (!pp.hasPermission("plots.admin.interact.unowned")) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_INTERACT_UNOWNED)) @@ -1032,7 +1030,7 @@ public class PlayerEventListener implements Listener { if (plot.getFlag(MiscInteractFlag.class)) { return; } - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_INTERACT_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_OTHER)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_INTERACT_OTHER)) @@ -1257,7 +1255,7 @@ public class PlayerEventListener implements Listener { BukkitPlayer pp = BukkitUtil.adapt(event.getPlayer()); Plot plot = area.getPlot(location); if (plot == null) { - if (Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_ROAD)) { + if (pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_ROAD)) { return; } pp.sendMessage( @@ -1266,7 +1264,7 @@ public class PlayerEventListener implements Listener { ); event.setCancelled(true); } else if (!plot.hasOwner()) { - if (Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_UNOWNED)) { + if (pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_UNOWNED)) { return; } pp.sendMessage( @@ -1275,7 +1273,7 @@ public class PlayerEventListener implements Listener { ); event.setCancelled(true); } else if (!plot.isAdded(pp.getUUID())) { - if (Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_OTHER)) { + if (pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_OTHER)) { return; } pp.sendMessage( @@ -1284,7 +1282,7 @@ public class PlayerEventListener implements Listener { ); event.setCancelled(true); } else if (Settings.Done.RESTRICT_BUILDING && DoneFlag.isDone(plot)) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_OTHER)) { pp.sendMessage( TranslatableCaption.of("done.building_restricted") ); @@ -1322,7 +1320,7 @@ public class PlayerEventListener implements Listener { BukkitPlayer plotPlayer = BukkitUtil.adapt(player); Plot plot = area.getPlot(location); if (plot == null) { - if (Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_BUILD_ROAD)) { + if (plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_BUILD_ROAD)) { return; } plotPlayer.sendMessage( @@ -1331,7 +1329,7 @@ public class PlayerEventListener implements Listener { ); event.setCancelled(true); } else if (!plot.hasOwner()) { - if (Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_BUILD_UNOWNED)) { + if (plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_BUILD_UNOWNED)) { return; } plotPlayer.sendMessage( @@ -1340,7 +1338,7 @@ public class PlayerEventListener implements Listener { ); event.setCancelled(true); } else if (!plot.isAdded(plotPlayer.getUUID())) { - if (Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_BUILD_OTHER)) { + if (plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_BUILD_OTHER)) { return; } plotPlayer.sendMessage( @@ -1349,7 +1347,7 @@ public class PlayerEventListener implements Listener { ); event.setCancelled(true); } else if (Settings.Done.RESTRICT_BUILDING && DoneFlag.isDone(plot)) { - if (!Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_BUILD_OTHER)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_BUILD_OTHER)) { plotPlayer.sendMessage( TranslatableCaption.of("done.building_restricted") ); @@ -1374,7 +1372,7 @@ public class PlayerEventListener implements Listener { BukkitPlayer pp = BukkitUtil.adapt(p); Plot plot = area.getPlot(location); if (plot == null) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_ROAD)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_ROAD)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_BUILD_ROAD)) @@ -1383,7 +1381,7 @@ public class PlayerEventListener implements Listener { } } else { if (!plot.hasOwner()) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_UNOWNED)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_UNOWNED)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_BUILD_UNOWNED)) @@ -1394,7 +1392,7 @@ public class PlayerEventListener implements Listener { } if (!plot.isAdded(pp.getUUID())) { if (!plot.getFlag(HangingPlaceFlag.class)) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_BUILD_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_BUILD_OTHER)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_BUILD_OTHER)) @@ -1423,7 +1421,7 @@ public class PlayerEventListener implements Listener { BukkitPlayer pp = BukkitUtil.adapt(p); Plot plot = area.getPlot(location); if (plot == null) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_DESTROY_ROAD)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_ROAD)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_DESTROY_ROAD)) @@ -1431,7 +1429,7 @@ public class PlayerEventListener implements Listener { event.setCancelled(true); } } else if (!plot.hasOwner()) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_DESTROY_UNOWNED)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_UNOWNED)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_DESTROY_UNOWNED)) @@ -1442,7 +1440,7 @@ public class PlayerEventListener implements Listener { if (plot.getFlag(HangingBreakFlag.class)) { return; } - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_DESTROY_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_OTHER)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_DESTROY_OTHER)) @@ -1463,8 +1461,7 @@ public class PlayerEventListener implements Listener { Plot plot = area.getPlot(BukkitUtil.adapt(event.getEntity().getLocation())); if (plot != null) { if (!plot.hasOwner()) { - if (!Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_DESTROY_UNOWNED)) { + if (!player.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_UNOWNED)) { player.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_DESTROY_UNOWNED)) @@ -1473,8 +1470,7 @@ public class PlayerEventListener implements Listener { } } else if (!plot.isAdded(player.getUUID())) { if (!plot.getFlag(HangingBreakFlag.class)) { - if (!Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_DESTROY_OTHER)) { + if (!player.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_DESTROY_OTHER)) @@ -1506,7 +1502,7 @@ public class PlayerEventListener implements Listener { BukkitPlayer pp = BukkitUtil.adapt(p); Plot plot = area.getPlot(location); if (plot == null && !area.isRoadFlags()) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_INTERACT_ROAD)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_ROAD)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_INTERACT_ROAD)) @@ -1514,7 +1510,7 @@ public class PlayerEventListener implements Listener { event.setCancelled(true); } } else if (plot != null && !plot.hasOwner()) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_INTERACT_UNOWNED)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_UNOWNED)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_INTERACT_UNOWNED)) @@ -1572,7 +1568,7 @@ public class PlayerEventListener implements Listener { return; } - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_INTERACT_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_OTHER)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_INTERACT_OTHER)) @@ -1594,8 +1590,7 @@ public class PlayerEventListener implements Listener { BukkitPlayer pp = BukkitUtil.adapt(p); Plot plot = area.getPlot(location); if (plot == null) { - if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, VehicleBreakFlag.class, true) && !Permissions.hasPermission( - pp, + if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, VehicleBreakFlag.class, true) && !pp.hasPermission( Permission.PERMISSION_ADMIN_DESTROY_VEHICLE_ROAD )) { pp.sendMessage( @@ -1606,7 +1601,7 @@ public class PlayerEventListener implements Listener { } } else { if (!plot.hasOwner()) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_DESTROY_VEHICLE_UNOWNED)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_VEHICLE_UNOWNED)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_DESTROY_VEHICLE_UNOWNED)) @@ -1620,7 +1615,7 @@ public class PlayerEventListener implements Listener { if (plot.getFlag(VehicleBreakFlag.class)) { return; } - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_DESTROY_VEHICLE_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_DESTROY_VEHICLE_OTHER)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_DESTROY_VEHICLE_OTHER)) diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/ProjectileEventListener.java b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/ProjectileEventListener.java index 2703c8cd9..32773d0ba 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/listener/ProjectileEventListener.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/listener/ProjectileEventListener.java @@ -30,7 +30,6 @@ import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.plot.PlotHandler; import com.plotsquared.core.plot.flag.implementations.ProjectilesFlag; import com.plotsquared.core.plot.world.PlotAreaManager; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlotFlagUtil; import net.kyori.adventure.text.minimessage.Template; import org.bukkit.entity.Entity; @@ -106,8 +105,7 @@ public class ProjectileEventListener implements Listener { Plot plot = location.getOwnedPlot(); if (plot == null) { - if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, ProjectilesFlag.class, true) && !Permissions.hasPermission( - pp, + if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, ProjectilesFlag.class, true) && !pp.hasPermission( Permission.PERMISSION_ADMIN_PROJECTILE_ROAD )) { pp.sendMessage( @@ -118,7 +116,7 @@ public class ProjectileEventListener implements Listener { event.setCancelled(true); } } else if (!plot.hasOwner()) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_PROJECTILE_UNOWNED)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_PROJECTILE_UNOWNED)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_PROJECTILE_UNOWNED)) @@ -128,7 +126,7 @@ public class ProjectileEventListener implements Listener { } } else if (!plot.isAdded(pp.getUUID())) { if (!plot.getFlag(ProjectilesFlag.class)) { - if (!Permissions.hasPermission(pp, Permission.PERMISSION_ADMIN_PROJECTILE_OTHER)) { + if (!pp.hasPermission(Permission.PERMISSION_ADMIN_PROJECTILE_OTHER)) { pp.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_PROJECTILE_OTHER)) @@ -170,8 +168,7 @@ public class ProjectileEventListener implements Listener { PlotPlayer pp = BukkitUtil.adapt((Player) shooter); if (plot == null) { - if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, ProjectilesFlag.class, true) && !Permissions.hasPermission( - pp, + if (!PlotFlagUtil.isAreaRoadFlagsAndFlagEquals(area, ProjectilesFlag.class, true) && !pp.hasPermission( Permission.PERMISSION_ADMIN_PROJECTILE_UNOWNED )) { entity.remove(); @@ -179,8 +176,8 @@ public class ProjectileEventListener implements Listener { } return; } - if (plot.isAdded(pp.getUUID()) || Permissions - .hasPermission(pp, Permission.PERMISSION_ADMIN_PROJECTILE_OTHER) || plot.getFlag(ProjectilesFlag.class)) { + if (plot.isAdded(pp.getUUID()) || pp.hasPermission(Permission.PERMISSION_ADMIN_PROJECTILE_OTHER) || plot.getFlag( + ProjectilesFlag.class)) { return; } entity.remove(); diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitOfflinePlayer.java b/Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitOfflinePlayer.java index 8d04b444e..928cbca7d 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitOfflinePlayer.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitOfflinePlayer.java @@ -87,4 +87,9 @@ public class BukkitOfflinePlayer implements OfflinePlotPlayer { ); } + @Override + public boolean hasPermission(@NonNull final String permission, final boolean notify) { + return hasPermission(permission); + } + } diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/util/BukkitEntityUtil.java b/Bukkit/src/main/java/com/plotsquared/bukkit/util/BukkitEntityUtil.java index 2661186a4..9c5e29b14 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/util/BukkitEntityUtil.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/util/BukkitEntityUtil.java @@ -40,7 +40,6 @@ import com.plotsquared.core.plot.flag.implementations.PvpFlag; import com.plotsquared.core.plot.flag.implementations.TamedAttackFlag; import com.plotsquared.core.plot.flag.implementations.VehicleCapFlag; import com.plotsquared.core.util.EntityUtil; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.entity.EntityCategories; import com.sk89q.worldedit.bukkit.BukkitAdapter; import net.kyori.adventure.text.minimessage.Template; @@ -168,8 +167,7 @@ public class BukkitEntityUtil { if (plot != null && (plot.getFlag(HangingBreakFlag.class) || plot .isAdded(plotPlayer.getUUID()))) { if (Settings.Done.RESTRICT_BUILDING && DoneFlag.isDone(plot)) { - if (!Permissions - .hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_BUILD_OTHER)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_BUILD_OTHER)) { plotPlayer.sendMessage( TranslatableCaption.of("done.building_restricted") ); @@ -178,7 +176,7 @@ public class BukkitEntityUtil { } return true; } - if (!Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_DESTROY + "." + stub)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_DESTROY + "." + stub)) { plotPlayer.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", Permission.PERMISSION_ADMIN_DESTROY + "." + stub) @@ -190,7 +188,7 @@ public class BukkitEntityUtil { .isAdded(plotPlayer.getUUID()))) { return true; } - if (!Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_DESTROY + "." + stub)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_DESTROY + "." + stub)) { plotPlayer.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", Permission.PERMISSION_ADMIN_DESTROY + "." + stub) @@ -211,7 +209,7 @@ public class BukkitEntityUtil { .getFlag(PveFlag.class))) { return true; } - if (!Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_PVE + "." + stub)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_PVE + "." + stub)) { plotPlayer.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", Permission.PERMISSION_ADMIN_PVE + "." + stub) @@ -232,7 +230,7 @@ public class BukkitEntityUtil { .getFlag(PveFlag.class))) { return true; } - if (!Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_PVE + "." + stub)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_PVE + "." + stub)) { plotPlayer.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", Permission.PERMISSION_ADMIN_PVE + "." + stub) @@ -245,8 +243,7 @@ public class BukkitEntityUtil { } } else if (EntityCategories.PLAYER.contains(entityType)) { if (isPlot) { - if (!plot.getFlag(PvpFlag.class) && !Permissions - .hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_PVP + "." + stub)) { + if (!plot.getFlag(PvpFlag.class) && !plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_PVP + "." + stub)) { plotPlayer.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", Permission.PERMISSION_ADMIN_PVP + "." + stub) @@ -260,7 +257,7 @@ public class BukkitEntityUtil { } else if (roadFlags && area.getRoadFlag(PvpFlag.class)) { return true; } - if (!Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_PVP + "." + stub)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_PVP + "." + stub)) { plotPlayer.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", Permission.PERMISSION_ADMIN_PVP + "." + stub) @@ -277,7 +274,7 @@ public class BukkitEntityUtil { .getFlag(PveFlag.class))) { return true; } - if (!Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_PVE + "." + stub)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_PVE + "." + stub)) { plotPlayer.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", Permission.PERMISSION_ADMIN_PVE + "." + stub) @@ -299,7 +296,7 @@ public class BukkitEntityUtil { } else if (roadFlags && area.getRoadFlag(PveFlag.class)) { return true; } - if (!Permissions.hasPermission(plotPlayer, Permission.PERMISSION_ADMIN_PVE + "." + stub)) { + if (!plotPlayer.hasPermission(Permission.PERMISSION_ADMIN_PVE + "." + stub)) { plotPlayer.sendMessage( TranslatableCaption.of("permission.no_permission_event"), Template.of("node", Permission.PERMISSION_ADMIN_PVE + "." + stub) diff --git a/Core/src/main/java/com/plotsquared/core/command/Add.java b/Core/src/main/java/com/plotsquared/core/command/Add.java index a457b6c50..04d36f285 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Add.java +++ b/Core/src/main/java/com/plotsquared/core/command/Add.java @@ -26,7 +26,6 @@ import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlayerManager; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.task.RunnableVal2; @@ -58,18 +57,20 @@ public class Add extends Command { @Override public CompletableFuture execute( - final PlotPlayer player, String[] args, + final PlotPlayer player, + String[] args, RunnableVal3 confirm, RunnableVal2 whenDone ) throws CommandException { final Plot plot = check(player.getCurrentPlot(), TranslatableCaption.of("errors.not_in_plot")); checkTrue(plot.hasOwner(), TranslatableCaption.of("info.plot_unowned")); checkTrue( - plot.isOwner(player.getUUID()) || Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_TRUST), + plot.isOwner(player.getUUID()) || player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_TRUST), TranslatableCaption.of("permission.no_plot_perms") ); - checkTrue(args.length == 1, TranslatableCaption.of("commandconfig.command_syntax"), + checkTrue( + args.length == 1, + TranslatableCaption.of("commandconfig.command_syntax"), Template.of("value", "/plot add ") ); final CompletableFuture future = new CompletableFuture<>(); @@ -94,9 +95,8 @@ public class Add extends Command { int size = plot.getTrusted().size() + plot.getMembers().size(); while (iterator.hasNext()) { UUID uuid = iterator.next(); - if (uuid == DBFunc.EVERYONE && !( - Permissions.hasPermission(player, Permission.PERMISSION_TRUST_EVERYONE) || Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_TRUST))) { + if (uuid == DBFunc.EVERYONE && !(player.hasPermission(Permission.PERMISSION_TRUST_EVERYONE) || player.hasPermission( + Permission.PERMISSION_ADMIN_COMMAND_TRUST))) { player.sendMessage( TranslatableCaption.of("errors.invalid_player"), Template.of("value", PlayerManager.resolveName(uuid).getComponent(player)) @@ -124,7 +124,7 @@ public class Add extends Command { } checkTrue(!uuids.isEmpty(), null); int localAddSize = plot.getMembers().size(); - int maxAddSize = Permissions.hasPermissionRange(player, Permission.PERMISSION_ADD, Settings.Limit.MAX_PLOTS); + int maxAddSize = player.hasPermissionRange(Permission.PERMISSION_ADD, Settings.Limit.MAX_PLOTS); if (localAddSize >= maxAddSize) { player.sendMessage( TranslatableCaption.of("members.plot_max_members_added"), diff --git a/Core/src/main/java/com/plotsquared/core/command/Alias.java b/Core/src/main/java/com/plotsquared/core/command/Alias.java index 9063ede69..11439a6e8 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Alias.java +++ b/Core/src/main/java/com/plotsquared/core/command/Alias.java @@ -26,7 +26,6 @@ import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.util.MathMan; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.query.PlotQuery; import net.kyori.adventure.text.minimessage.Template; @@ -194,7 +193,7 @@ public class Alias extends SubCommand { } private boolean isPermitted(PlotPlayer player, Permission permission) { - return Permissions.hasPermission(player, permission); + return player.hasPermission(permission); } } diff --git a/Core/src/main/java/com/plotsquared/core/command/Area.java b/Core/src/main/java/com/plotsquared/core/command/Area.java index 4931d2cac..093ca744d 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Area.java +++ b/Core/src/main/java/com/plotsquared/core/command/Area.java @@ -48,7 +48,6 @@ import com.plotsquared.core.queue.QueueCoordinator; import com.plotsquared.core.setup.PlotAreaBuilder; import com.plotsquared.core.util.FileUtils; import com.plotsquared.core.util.MathMan; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.RegionUtil; import com.plotsquared.core.util.SchematicHandler; import com.plotsquared.core.util.SetupUtils; @@ -138,7 +137,7 @@ public class Area extends SubCommand { player.sendMessage(RequiredType.CONSOLE.getErrorMessage()); return false; } - if (!Permissions.hasPermission(player, Permission.PERMISSION_AREA_CREATE)) { + if (!player.hasPermission(Permission.PERMISSION_AREA_CREATE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_AREA_CREATE)) @@ -288,7 +287,7 @@ public class Area extends SubCommand { return true; } case "c", "setup", "create" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_AREA_CREATE)) { + if (!player.hasPermission(Permission.PERMISSION_AREA_CREATE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_AREA_CREATE)) @@ -575,7 +574,7 @@ public class Area extends SubCommand { return true; } case "i", "info" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_AREA_INFO)) { + if (!player.hasPermission(Permission.PERMISSION_AREA_INFO)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_AREA_INFO)) @@ -653,7 +652,7 @@ public class Area extends SubCommand { return true; } case "l", "list" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_AREA_LIST)) { + if (!player.hasPermission(Permission.PERMISSION_AREA_LIST)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_AREA_LIST)) @@ -736,7 +735,7 @@ public class Area extends SubCommand { return true; } case "regen", "clear", "reset", "regenerate" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_AREA_REGEN)) { + if (!player.hasPermission(Permission.PERMISSION_AREA_REGEN)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_AREA_REGEN)) @@ -769,7 +768,7 @@ public class Area extends SubCommand { return true; } case "goto", "v", "teleport", "visit", "tp" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_AREA_TP)) { + if (!player.hasPermission(Permission.PERMISSION_AREA_TP)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_AREA_TP)) @@ -825,19 +824,19 @@ public class Area extends SubCommand { public Collection tab(final PlotPlayer player, final String[] args, final boolean space) { if (args.length == 1) { final List completions = new LinkedList<>(); - if (Permissions.hasPermission(player, Permission.PERMISSION_AREA_CREATE)) { + if (player.hasPermission(Permission.PERMISSION_AREA_CREATE)) { completions.add("create"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_AREA_CREATE)) { + if (player.hasPermission(Permission.PERMISSION_AREA_CREATE)) { completions.add("single"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_AREA_LIST)) { + if (player.hasPermission(Permission.PERMISSION_AREA_LIST)) { completions.add("list"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_AREA_INFO)) { + if (player.hasPermission(Permission.PERMISSION_AREA_INFO)) { completions.add("info"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_AREA_TP)) { + if (player.hasPermission(Permission.PERMISSION_AREA_TP)) { completions.add("tp"); } final List commands = completions.stream().filter(completion -> completion @@ -852,7 +851,7 @@ public class Area extends SubCommand { CommandCategory.ADMINISTRATION ) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_AREA) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_AREA) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } return commands; diff --git a/Core/src/main/java/com/plotsquared/core/command/Auto.java b/Core/src/main/java/com/plotsquared/core/command/Auto.java index 60ed4bfea..1f78c6af3 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Auto.java +++ b/Core/src/main/java/com/plotsquared/core/command/Auto.java @@ -38,7 +38,6 @@ import com.plotsquared.core.plot.world.PlotAreaManager; import com.plotsquared.core.services.plots.AutoService; import com.plotsquared.core.util.EconHandler; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlotExpression; import com.plotsquared.core.util.task.AutoClaimFinishTask; import com.plotsquared.core.util.task.RunnableVal; @@ -246,7 +245,7 @@ public class Auto extends SubCommand { sizeX = event.getSizeX(); sizeZ = event.getSizeZ(); schematic = event.getSchematic(); - if (!force && mega && !Permissions.hasPermission(player, Permission.PERMISSION_AUTO_MEGA)) { + if (!force && mega && !player.hasPermission(Permission.PERMISSION_AUTO_MEGA)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_AUTO_MEGA)) @@ -279,11 +278,9 @@ public class Auto extends SubCommand { ); return true; } - if (!force && !Permissions.hasPermission( - player, + if (!force && !player.hasPermission( Permission.PERMISSION_CLAIM_SCHEMATIC.format(schematic) - ) && !Permissions - .hasPermission(player, "plots.admin.command.schematic")) { + ) && !player.hasPermission("plots.admin.command.schematic")) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", "plots.claim.%s0") diff --git a/Core/src/main/java/com/plotsquared/core/command/Backup.java b/Core/src/main/java/com/plotsquared/core/command/Backup.java index adb832c61..a0030ab1a 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Backup.java +++ b/Core/src/main/java/com/plotsquared/core/command/Backup.java @@ -27,7 +27,6 @@ import com.plotsquared.core.configuration.caption.TranslatableCaption; import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.task.RunnableVal2; import com.plotsquared.core.util.task.RunnableVal3; import net.kyori.adventure.text.minimessage.Template; @@ -144,8 +143,7 @@ public final class Backup extends Command { TranslatableCaption.of("backups.backup_impossible"), Template.of("plot", TranslatableCaption.of("generic.generic_merged").getComponent(player)) ); - } else if (!plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_BACKUP_OTHER)) { + } else if (!plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_BACKUP_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_BACKUP_OTHER)) @@ -198,8 +196,7 @@ public final class Backup extends Command { ); } else if (plot.getVolume() > Integer.MAX_VALUE) { player.sendMessage(TranslatableCaption.of("schematics.schematic_too_large")); - } else if (!plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_BACKUP_OTHER)) { + } else if (!plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_BACKUP_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_BACKUP_OTHER)) @@ -269,8 +266,7 @@ public final class Backup extends Command { ); } else if (plot.getVolume() > Integer.MAX_VALUE) { player.sendMessage(TranslatableCaption.of("schematics.schematic_too_large")); - } else if (!plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_BACKUP_OTHER)) { + } else if (!plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_BACKUP_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_BACKUP_OTHER)) diff --git a/Core/src/main/java/com/plotsquared/core/command/Caps.java b/Core/src/main/java/com/plotsquared/core/command/Caps.java index da99bcfb2..4093ce77e 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Caps.java +++ b/Core/src/main/java/com/plotsquared/core/command/Caps.java @@ -29,7 +29,6 @@ import com.plotsquared.core.plot.flag.implementations.HostileCapFlag; import com.plotsquared.core.plot.flag.implementations.MiscCapFlag; import com.plotsquared.core.plot.flag.implementations.MobCapFlag; import com.plotsquared.core.plot.flag.implementations.VehicleCapFlag; -import com.plotsquared.core.util.Permissions; import net.kyori.adventure.text.minimessage.Template; import static com.plotsquared.core.util.entity.EntityCategories.CAP_ANIMAL; @@ -51,8 +50,7 @@ public class Caps extends SubCommand { player.sendMessage(TranslatableCaption.of("errors.not_in_plot")); return false; } - if (!plot.isAdded(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_CAPS_OTHER)) { + if (!plot.isAdded(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_CAPS_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_CAPS_OTHER)) diff --git a/Core/src/main/java/com/plotsquared/core/command/Claim.java b/Core/src/main/java/com/plotsquared/core/command/Claim.java index 821ade23d..0f17c7fbb 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Claim.java +++ b/Core/src/main/java/com/plotsquared/core/command/Claim.java @@ -35,7 +35,6 @@ import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.util.EconHandler; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlotExpression; import com.plotsquared.core.util.task.TaskManager; import net.kyori.adventure.text.minimessage.Template; @@ -127,9 +126,8 @@ public class Claim extends SubCommand { Template.of("reason", "non-existent") ); } - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLAIM_SCHEMATIC - .format(schematic)) && !Permissions.hasPermission( - player, + if (!player.hasPermission(Permission.PERMISSION_CLAIM_SCHEMATIC + .format(schematic)) && !player.hasPermission( "plots.admin.command.schematic" ) && !force) { player.sendMessage( @@ -176,7 +174,7 @@ public class Claim extends SubCommand { ); } } - if (!Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { + if (!player.hasPermission(Permission.PERMISSION_ADMIN_BYPASS_BORDER)) { int border = area.getBorder(); if (border != Integer.MAX_VALUE && plot.getDistanceFromOrigin() > border && !force) { player.sendMessage(TranslatableCaption.of("border.denied")); diff --git a/Core/src/main/java/com/plotsquared/core/command/Clear.java b/Core/src/main/java/com/plotsquared/core/command/Clear.java index a8d50e223..83a612951 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Clear.java +++ b/Core/src/main/java/com/plotsquared/core/command/Clear.java @@ -32,7 +32,6 @@ import com.plotsquared.core.plot.flag.implementations.AnalysisFlag; import com.plotsquared.core.plot.flag.implementations.DoneFlag; import com.plotsquared.core.queue.GlobalBlockQueue; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.task.RunnableVal2; import com.plotsquared.core.util.task.RunnableVal3; import com.plotsquared.core.util.task.TaskManager; @@ -89,13 +88,14 @@ public class Clear extends Command { } boolean force = eventResult == Result.FORCE; checkTrue( - force || plot.isOwner(player.getUUID()) || Permissions - .hasPermission(player, "plots.admin.command.clear"), + force || plot.isOwner(player.getUUID()) || player.hasPermission("plots.admin.command.clear"), TranslatableCaption.of("permission.no_plot_perms") ); checkTrue(plot.getRunning() == 0, TranslatableCaption.of("errors.wait_for_timer")); - checkTrue(force || !Settings.Done.RESTRICT_BUILDING || !DoneFlag.isDone(plot) || Permissions - .hasPermission(player, "plots.continue"), TranslatableCaption.of("done.done_already_done")); + checkTrue( + force || !Settings.Done.RESTRICT_BUILDING || !DoneFlag.isDone(plot) || player.hasPermission("plots.continue"), + TranslatableCaption.of("done.done_already_done") + ); confirm.run(this, () -> { if (Settings.Teleport.ON_CLEAR) { plot.getPlayersInPlot().forEach(playerInPlot -> plot.teleportPlayer(playerInPlot, TeleportCause.COMMAND_CLEAR, diff --git a/Core/src/main/java/com/plotsquared/core/command/Cluster.java b/Core/src/main/java/com/plotsquared/core/command/Cluster.java index 74d38407d..2821803a4 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Cluster.java +++ b/Core/src/main/java/com/plotsquared/core/command/Cluster.java @@ -32,7 +32,6 @@ import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.plot.PlotCluster; import com.plotsquared.core.plot.PlotId; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.query.PlotQuery; import net.kyori.adventure.text.minimessage.Template; @@ -73,7 +72,7 @@ public class Cluster extends SubCommand { switch (sub) { case "l": case "list": { - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_LIST)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_LIST)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_CLUSTER_LIST)) @@ -126,7 +125,7 @@ public class Cluster extends SubCommand { } case "c": case "create": { - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_CREATE)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_CREATE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_CLUSTER_CREATE)) @@ -197,8 +196,7 @@ public class Cluster extends SubCommand { } Set plots = area.getPlotSelectionOwned(pos1, pos2); if (!plots.isEmpty()) { - if (!Permissions - .hasPermission(player, Permission.PERMISSION_CLUSTER_CREATE_OTHER)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_CREATE_OTHER)) { UUID uuid = player.getUUID(); for (Plot plot : plots) { if (!plot.isOwner(uuid)) { @@ -219,10 +217,10 @@ public class Cluster extends SubCommand { } else { current = player.getPlayerClusterCount(player.getLocation().getWorldName()); } - int allowed = Permissions - .hasPermissionRange(player, Permission.PERMISSION_CLUSTER_SIZE, - Settings.Limit.MAX_PLOTS - ); + int allowed = player.hasPermissionRange( + Permission.PERMISSION_CLUSTER_SIZE, + Settings.Limit.MAX_PLOTS + ); if (current + cluster.getArea() > allowed) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), @@ -252,7 +250,7 @@ public class Cluster extends SubCommand { case "disband": case "del": case "delete": { - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_DELETE)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_DELETE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_CLUSTER_DELETE)) @@ -289,8 +287,7 @@ public class Cluster extends SubCommand { } } if (!cluster.owner.equals(player.getUUID())) { - if (!Permissions - .hasPermission(player, Permission.PERMISSION_CLUSTER_DELETE_OTHER)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_DELETE_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_CLUSTER_DELETE_OTHER)) @@ -307,7 +304,7 @@ public class Cluster extends SubCommand { } case "res": case "resize": { - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_RESIZE)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_RESIZE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_CLUSTER_RESIZE)) @@ -347,8 +344,7 @@ public class Cluster extends SubCommand { return false; } if (!cluster.hasHelperRights(player.getUUID())) { - if (!Permissions - .hasPermission(player, Permission.PERMISSION_CLUSTER_RESIZE_OTHER)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_RESIZE_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_CLUSTER_RESIZE_OTHER)) @@ -373,8 +369,7 @@ public class Cluster extends SubCommand { removed.removeAll(newPlots); // Check expand / shrink if (!removed.isEmpty()) { - if (!Permissions - .hasPermission(player, Permission.PERMISSION_CLUSTER_RESIZE_SHRINK)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_RESIZE_SHRINK)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_CLUSTER_RESIZE_SHRINK)) @@ -384,8 +379,7 @@ public class Cluster extends SubCommand { } newPlots.removeAll(existing); if (!newPlots.isEmpty()) { - if (!Permissions - .hasPermission(player, Permission.PERMISSION_CLUSTER_RESIZE_EXPAND)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_RESIZE_EXPAND)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_CLUSTER_RESIZE_EXPAND)) @@ -401,7 +395,8 @@ public class Cluster extends SubCommand { current = player.getPlayerClusterCount(player.getLocation().getWorldName()); } current -= cluster.getArea() + (1 + pos2.getX() - pos1.getX()) * (1 + pos2.getY() - pos1.getY()); - int allowed = Permissions.hasPermissionRange(player, Permission.PERMISSION_CLUSTER, + int allowed = player.hasPermissionRange( + Permission.PERMISSION_CLUSTER, Settings.Limit.MAX_PLOTS ); if (current + cluster.getArea() > allowed) { @@ -419,7 +414,7 @@ public class Cluster extends SubCommand { case "add": case "inv": case "invite": { - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_INVITE)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_INVITE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_CLUSTER_INVITE)) @@ -444,8 +439,7 @@ public class Cluster extends SubCommand { return false; } if (!cluster.hasHelperRights(player.getUUID())) { - if (!Permissions - .hasPermission(player, Permission.PERMISSION_CLUSTER_INVITE_OTHER)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_INVITE_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_CLUSTER_INVITE_OTHER.toString()) @@ -485,7 +479,7 @@ public class Cluster extends SubCommand { case "k": case "remove": case "kick": { - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_KICK)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_KICK)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_CLUSTER_KICK.toString()) @@ -509,8 +503,7 @@ public class Cluster extends SubCommand { return false; } if (!cluster.hasHelperRights(player.getUUID())) { - if (!Permissions - .hasPermission(player, Permission.PERMISSION_CLUSTER_KICK_OTHER)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_KICK_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_CLUSTER_KICK_OTHER.toString()) @@ -561,7 +554,7 @@ public class Cluster extends SubCommand { } case "quit": case "leave": { - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_LEAVE)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_LEAVE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_CLUSTER_LEAVE.toString()) @@ -619,7 +612,7 @@ public class Cluster extends SubCommand { return true; } case "members": { - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_HELPERS)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_HELPERS)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_CLUSTER_HELPERS.toString()) @@ -674,7 +667,7 @@ public class Cluster extends SubCommand { case "spawn": case "home": case "tp": { - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_TP)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_TP)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_CLUSTER_TP.toString()) @@ -703,7 +696,7 @@ public class Cluster extends SubCommand { } UUID uuid = player.getUUID(); if (!cluster.isAdded(uuid)) { - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_TP_OTHER)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_TP_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_CLUSTER_TP_OTHER.toString()) @@ -719,7 +712,7 @@ public class Cluster extends SubCommand { case "info": case "show": case "information": { - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_INFO)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_INFO)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_CLUSTER_TP.toString()) @@ -792,7 +785,7 @@ public class Cluster extends SubCommand { case "sh": case "setspawn": case "sethome": { - if (!Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_SETHOME)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_SETHOME)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_CLUSTER_SETHOME.toString()) @@ -816,8 +809,7 @@ public class Cluster extends SubCommand { return false; } if (!cluster.hasHelperRights(player.getUUID())) { - if (!Permissions - .hasPermission(player, Permission.PERMISSION_CLUSTER_SETHOME_OTHER)) { + if (!player.hasPermission(Permission.PERMISSION_CLUSTER_SETHOME_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_CLUSTER_SETHOME_OTHER.toString()) @@ -869,37 +861,37 @@ public class Cluster extends SubCommand { public Collection tab(final PlotPlayer player, final String[] args, final boolean space) { if (args.length == 1) { final List completions = new LinkedList<>(); - if (Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_LIST)) { + if (player.hasPermission(Permission.PERMISSION_CLUSTER_LIST)) { completions.add("list"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_CREATE)) { + if (player.hasPermission(Permission.PERMISSION_CLUSTER_CREATE)) { completions.add("create"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_DELETE)) { + if (player.hasPermission(Permission.PERMISSION_CLUSTER_DELETE)) { completions.add("delete"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_RESIZE)) { + if (player.hasPermission(Permission.PERMISSION_CLUSTER_RESIZE)) { completions.add("resize"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_INVITE)) { + if (player.hasPermission(Permission.PERMISSION_CLUSTER_INVITE)) { completions.add("invite"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_KICK)) { + if (player.hasPermission(Permission.PERMISSION_CLUSTER_KICK)) { completions.add("kick"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_KICK)) { + if (player.hasPermission(Permission.PERMISSION_CLUSTER_KICK)) { completions.add("leave"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_HELPERS)) { + if (player.hasPermission(Permission.PERMISSION_CLUSTER_HELPERS)) { completions.add("members"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_INFO)) { + if (player.hasPermission(Permission.PERMISSION_CLUSTER_INFO)) { completions.add("info"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_TP)) { + if (player.hasPermission(Permission.PERMISSION_CLUSTER_TP)) { completions.add("tp"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER_SETHOME)) { + if (player.hasPermission(Permission.PERMISSION_CLUSTER_SETHOME)) { completions.add("sethome"); } final List commands = completions.stream().filter(completion -> completion @@ -914,7 +906,7 @@ public class Cluster extends SubCommand { CommandCategory.ADMINISTRATION ) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_CLUSTER) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_CLUSTER) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } return commands; diff --git a/Core/src/main/java/com/plotsquared/core/command/Command.java b/Core/src/main/java/com/plotsquared/core/command/Command.java index c3cd5ce36..7e7e090db 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Command.java +++ b/Core/src/main/java/com/plotsquared/core/command/Command.java @@ -25,7 +25,6 @@ import com.plotsquared.core.configuration.caption.TranslatableCaption; import com.plotsquared.core.permissions.PermissionHolder; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.util.MathMan; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.StringComparison; import com.plotsquared.core.util.StringMan; import com.plotsquared.core.util.task.RunnableVal2; @@ -466,7 +465,7 @@ public abstract class Command { if (message) { player.sendMessage(this.required.getErrorMessage()); } - } else if (!Permissions.hasPermission(player, getPermission())) { + } else if (!player.hasPermission(getPermission())) { if (message) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), diff --git a/Core/src/main/java/com/plotsquared/core/command/Continue.java b/Core/src/main/java/com/plotsquared/core/command/Continue.java index 9db740575..5d064c7a8 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Continue.java +++ b/Core/src/main/java/com/plotsquared/core/command/Continue.java @@ -29,7 +29,6 @@ import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.flag.PlotFlag; import com.plotsquared.core.plot.flag.implementations.DoneFlag; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import net.kyori.adventure.text.minimessage.Template; import org.checkerframework.checker.nullness.qual.NonNull; @@ -53,8 +52,7 @@ public class Continue extends SubCommand { player.sendMessage(TranslatableCaption.of("errors.not_in_plot")); return false; } - if (!plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_CONTINUE)) { + if (!plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_CONTINUE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", TranslatableCaption.of("permission.no_plot_perms").getComponent(player)) diff --git a/Core/src/main/java/com/plotsquared/core/command/Copy.java b/Core/src/main/java/com/plotsquared/core/command/Copy.java index 82afe0457..41870eb37 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Copy.java +++ b/Core/src/main/java/com/plotsquared/core/command/Copy.java @@ -23,7 +23,6 @@ import com.plotsquared.core.location.Location; import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; -import com.plotsquared.core.util.Permissions; import net.kyori.adventure.text.minimessage.Template; @CommandDeclaration(command = "copy", @@ -42,8 +41,7 @@ public class Copy extends SubCommand { player.sendMessage(TranslatableCaption.of("errors.not_in_plot")); return false; } - if (!plot1.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN.toString())) { + if (!plot1.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN.toString())) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return false; } diff --git a/Core/src/main/java/com/plotsquared/core/command/Delete.java b/Core/src/main/java/com/plotsquared/core/command/Delete.java index ba323673f..36ec56e31 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Delete.java +++ b/Core/src/main/java/com/plotsquared/core/command/Delete.java @@ -30,7 +30,6 @@ import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.util.EconHandler; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlotExpression; import com.plotsquared.core.util.task.TaskManager; import net.kyori.adventure.text.minimessage.Template; @@ -83,8 +82,7 @@ public class Delete extends SubCommand { return true; } boolean force = eventResult == Result.FORCE; - if (!force && !plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_DELETE)) { + if (!force && !plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_DELETE)) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return false; } diff --git a/Core/src/main/java/com/plotsquared/core/command/Deny.java b/Core/src/main/java/com/plotsquared/core/command/Deny.java index 70cdb6e2d..585f25314 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Deny.java +++ b/Core/src/main/java/com/plotsquared/core/command/Deny.java @@ -30,7 +30,6 @@ import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.world.PlotAreaManager; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlayerManager; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.WorldUtil; @@ -79,13 +78,12 @@ public class Deny extends SubCommand { player.sendMessage(TranslatableCaption.of("info.plot_unowned")); return false; } - if (!plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_DENY)) { + if (!plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_DENY)) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return true; } - int maxDenySize = Permissions.hasPermissionRange(player, Permission.PERMISSION_DENY, Settings.Limit.MAX_PLOTS); + int maxDenySize = player.hasPermissionRange(Permission.PERMISSION_DENY, Settings.Limit.MAX_PLOTS); int size = plot.getDenied().size(); if (size >= maxDenySize) { player.sendMessage( @@ -106,8 +104,7 @@ public class Deny extends SubCommand { } else { for (UUID uuid : uuids) { if (uuid == DBFunc.EVERYONE && !( - Permissions.hasPermission(player, Permission.PERMISSION_DENY_EVERYONE) || Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_DENY))) { + player.hasPermission(Permission.PERMISSION_DENY_EVERYONE) || player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_DENY))) { player.sendMessage( TranslatableCaption.of("errors.invalid_player"), Template.of("value", args[0]) diff --git a/Core/src/main/java/com/plotsquared/core/command/Dislike.java b/Core/src/main/java/com/plotsquared/core/command/Dislike.java index d11afa828..e2cd89e8f 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Dislike.java +++ b/Core/src/main/java/com/plotsquared/core/command/Dislike.java @@ -21,7 +21,6 @@ package com.plotsquared.core.command; import com.google.inject.Inject; import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.TabCompletions; import org.checkerframework.checker.nullness.qual.NonNull; @@ -54,7 +53,7 @@ public class Dislike extends SubCommand { public Collection tab(final PlotPlayer player, final String[] args, final boolean space) { if (args.length == 1) { final List completions = new LinkedList<>(); - if (Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_PURGE_RATINGS)) { + if (player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_PURGE_RATINGS)) { completions.add("purge"); } final List commands = completions.stream().filter(completion -> completion @@ -62,7 +61,7 @@ public class Dislike extends SubCommand { .startsWith(args[0].toLowerCase())) .map(completion -> new Command(null, true, completion, "", RequiredType.PLAYER, CommandCategory.INFO) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_RATE) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_RATE) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } return commands; diff --git a/Core/src/main/java/com/plotsquared/core/command/Done.java b/Core/src/main/java/com/plotsquared/core/command/Done.java index c50bdfce9..68c90b948 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Done.java +++ b/Core/src/main/java/com/plotsquared/core/command/Done.java @@ -34,7 +34,6 @@ import com.plotsquared.core.plot.expiration.PlotAnalysis; import com.plotsquared.core.plot.flag.PlotFlag; import com.plotsquared.core.plot.flag.implementations.DoneFlag; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.task.RunnableVal; import net.kyori.adventure.text.minimessage.Template; import org.checkerframework.checker.nullness.qual.NonNull; @@ -75,8 +74,7 @@ public class Done extends SubCommand { return true; } boolean force = event.getEventResult() == Result.FORCE; - if (!force && !plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_DONE)) { + if (!force && !plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_DONE)) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return false; } diff --git a/Core/src/main/java/com/plotsquared/core/command/Download.java b/Core/src/main/java/com/plotsquared/core/command/Download.java index 15cf82851..9f3d2112b 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Download.java +++ b/Core/src/main/java/com/plotsquared/core/command/Download.java @@ -27,7 +27,6 @@ import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.flag.implementations.DoneFlag; import com.plotsquared.core.plot.world.PlotAreaManager; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlotUploader; import com.plotsquared.core.util.SchematicHandler; import com.plotsquared.core.util.StringMan; @@ -87,13 +86,11 @@ public class Download extends SubCommand { player.sendMessage(TranslatableCaption.of("info.plot_unowned")); return false; } - if ((Settings.Done.REQUIRED_FOR_DOWNLOAD && !DoneFlag.isDone(plot)) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_DOWNLOAD)) { + if ((Settings.Done.REQUIRED_FOR_DOWNLOAD && !DoneFlag.isDone(plot)) && !player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_DOWNLOAD)) { player.sendMessage(TranslatableCaption.of("done.done_not_done")); return false; } - if (!plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN.toString())) { + if (!plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN.toString())) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return false; } @@ -111,7 +108,7 @@ public class Download extends SubCommand { upload(player, plot); } else if (args.length == 1 && StringMan .isEqualIgnoreCaseToAny(args[0], "mcr", "world", "mca")) { - if (!Permissions.hasPermission(player, Permission.PERMISSION_DOWNLOAD_WORLD)) { + if (!player.hasPermission(Permission.PERMISSION_DOWNLOAD_WORLD)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_DOWNLOAD_WORLD.toString()) @@ -147,10 +144,10 @@ public class Download extends SubCommand { public Collection tab(final PlotPlayer player, final String[] args, final boolean space) { if (args.length == 1) { final List completions = new LinkedList<>(); - if (Permissions.hasPermission(player, Permission.PERMISSION_DOWNLOAD)) { + if (player.hasPermission(Permission.PERMISSION_DOWNLOAD)) { completions.add("schem"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_DOWNLOAD_WORLD)) { + if (player.hasPermission(Permission.PERMISSION_DOWNLOAD_WORLD)) { completions.add("world"); } final List commands = completions.stream().filter(completion -> completion @@ -165,7 +162,7 @@ public class Download extends SubCommand { CommandCategory.ADMINISTRATION ) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_DOWNLOAD) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_DOWNLOAD) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } return commands; diff --git a/Core/src/main/java/com/plotsquared/core/command/FlagCommand.java b/Core/src/main/java/com/plotsquared/core/command/FlagCommand.java index 16d28c38a..fd14d650c 100644 --- a/Core/src/main/java/com/plotsquared/core/command/FlagCommand.java +++ b/Core/src/main/java/com/plotsquared/core/command/FlagCommand.java @@ -40,7 +40,6 @@ import com.plotsquared.core.plot.flag.types.IntegerFlag; import com.plotsquared.core.plot.flag.types.ListFlag; import com.plotsquared.core.util.EventDispatcher; import com.plotsquared.core.util.MathMan; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.StringComparison; import com.plotsquared.core.util.StringMan; import com.plotsquared.core.util.helpmenu.HelpMenu; @@ -128,7 +127,7 @@ public final class FlagCommand extends Command { key.toLowerCase(), entry.toString().toLowerCase() ); - final boolean result = Permissions.hasPermission(player, permission); + final boolean result = player.hasPermission(permission); if (!result) { player.sendMessage(TranslatableCaption.of("permission.no_permission"), Template.of("node", permission)); return false; @@ -150,9 +149,9 @@ public final class FlagCommand extends Command { boolean result; String basePerm = Permission.PERMISSION_SET_FLAG_KEY.format(key.toLowerCase()); if (flag.isValuedPermission()) { - result = Permissions.hasKeyedPermission(player, basePerm, value); + result = player.hasKeyedPermission(basePerm, value); } else { - result = Permissions.hasPermission(player, basePerm); + result = player.hasPermission(basePerm); perm = basePerm; } if (!result) { @@ -177,8 +176,7 @@ public final class FlagCommand extends Command { player.sendMessage(TranslatableCaption.of("working.plot_not_claimed")); return false; } - if (!plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_SET_FLAG_OTHER)) { + if (!plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_SET_FLAG_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_SET_FLAG_OTHER)) @@ -473,7 +471,7 @@ public final class FlagCommand extends Command { } boolean force = event.getEventResult() == Result.FORCE; flag = event.getFlag(); - if (!force && !Permissions.hasPermission(player, Permission.PERMISSION_SET_FLAG_KEY.format(args[0].toLowerCase()))) { + if (!force && !player.hasPermission(Permission.PERMISSION_SET_FLAG_KEY.format(args[0].toLowerCase()))) { if (args.length != 2) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), diff --git a/Core/src/main/java/com/plotsquared/core/command/Grant.java b/Core/src/main/java/com/plotsquared/core/command/Grant.java index 841098515..48b3fdba7 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Grant.java +++ b/Core/src/main/java/com/plotsquared/core/command/Grant.java @@ -26,7 +26,6 @@ import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.MetaDataAccess; import com.plotsquared.core.player.PlayerMetaDataKeys; import com.plotsquared.core.player.PlotPlayer; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlayerManager; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.task.RunnableVal; @@ -69,7 +68,7 @@ public class Grant extends Command { final String arg0 = args[0].toLowerCase(); switch (arg0) { case "add", "check" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_GRANT.format(arg0))) { + if (!player.hasPermission(Permission.PERMISSION_GRANT.format(arg0))) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_GRANT.format(arg0)) @@ -150,10 +149,10 @@ public class Grant extends Command { public Collection tab(final PlotPlayer player, final String[] args, final boolean space) { if (args.length == 1) { final List completions = new LinkedList<>(); - if (Permissions.hasPermission(player, Permission.PERMISSION_GRANT_ADD)) { + if (player.hasPermission(Permission.PERMISSION_GRANT_ADD)) { completions.add("add"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_GRANT_CHECK)) { + if (player.hasPermission(Permission.PERMISSION_GRANT_CHECK)) { completions.add("check"); } final List commands = completions.stream().filter(completion -> completion @@ -168,7 +167,7 @@ public class Grant extends Command { CommandCategory.ADMINISTRATION ) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_GRANT_SINGLE) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_GRANT_SINGLE) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } return commands; diff --git a/Core/src/main/java/com/plotsquared/core/command/HomeCommand.java b/Core/src/main/java/com/plotsquared/core/command/HomeCommand.java index 2218ba44e..afc940012 100644 --- a/Core/src/main/java/com/plotsquared/core/command/HomeCommand.java +++ b/Core/src/main/java/com/plotsquared/core/command/HomeCommand.java @@ -29,7 +29,6 @@ import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.plot.PlotId; import com.plotsquared.core.plot.world.PlotAreaManager; import com.plotsquared.core.util.MathMan; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.query.PlotQuery; import com.plotsquared.core.util.query.SortingStrategy; @@ -104,8 +103,7 @@ public class HomeCommand extends Command { // /plot home <[area;]x;y> // /plot home // /plot home - if (!Permissions.hasPermission(player, Permission.PERMISSION_VISIT_OWNED) && !Permissions - .hasPermission(player, Permission.PERMISSION_HOME)) { + if (!player.hasPermission(Permission.PERMISSION_VISIT_OWNED) && !player.hasPermission(Permission.PERMISSION_HOME)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_VISIT_OWNED.toString()) diff --git a/Core/src/main/java/com/plotsquared/core/command/Inbox.java b/Core/src/main/java/com/plotsquared/core/command/Inbox.java index 8bdc4df41..928cd84a7 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Inbox.java +++ b/Core/src/main/java/com/plotsquared/core/command/Inbox.java @@ -30,7 +30,6 @@ import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.comment.CommentInbox; import com.plotsquared.core.plot.comment.CommentManager; import com.plotsquared.core.plot.comment.PlotComment; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.StringMan; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.task.RunnableVal; @@ -285,13 +284,13 @@ public class Inbox extends SubCommand { public Collection tab(final PlotPlayer player, final String[] args, final boolean space) { if (args.length == 1) { final List completions = new LinkedList<>(); - if (Permissions.hasPermission(player, Permission.PERMISSION_INBOX_READ_OWNER)) { + if (player.hasPermission(Permission.PERMISSION_INBOX_READ_OWNER)) { completions.add("owner"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_INBOX_READ_PUBLIC)) { + if (player.hasPermission(Permission.PERMISSION_INBOX_READ_PUBLIC)) { completions.add("public"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_INBOX_READ_REPORT)) { + if (player.hasPermission(Permission.PERMISSION_INBOX_READ_REPORT)) { completions.add("report"); } final List commands = completions.stream().filter(completion -> completion @@ -299,7 +298,7 @@ public class Inbox extends SubCommand { .startsWith(args[0].toLowerCase())) .map(completion -> new Command(null, true, completion, "", RequiredType.PLAYER, CommandCategory.CHAT) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_INBOX) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_INBOX) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } return commands; diff --git a/Core/src/main/java/com/plotsquared/core/command/Info.java b/Core/src/main/java/com/plotsquared/core/command/Info.java index 6f4c085ad..613fd5cdf 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Info.java +++ b/Core/src/main/java/com/plotsquared/core/command/Info.java @@ -27,7 +27,6 @@ import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.flag.implementations.HideInfoFlag; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.TabCompletions; import net.kyori.adventure.text.minimessage.Template; @@ -144,7 +143,7 @@ public class Info extends SubCommand { @Override public Collection tab(PlotPlayer player, String[] args, boolean space) { final List completions = new LinkedList<>(); - if (Permissions.hasPermission(player, Permission.PERMISSION_AREA_INFO_FORCE)) { + if (player.hasPermission(Permission.PERMISSION_AREA_INFO_FORCE)) { completions.add("-f"); } @@ -154,7 +153,7 @@ public class Info extends SubCommand { .map(completion -> new Command(null, true, completion, "", RequiredType.PLAYER, CommandCategory.INFO) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_AREA_INFO_FORCE) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_AREA_INFO_FORCE) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } diff --git a/Core/src/main/java/com/plotsquared/core/command/Kick.java b/Core/src/main/java/com/plotsquared/core/command/Kick.java index 111a29026..c1357f09e 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Kick.java +++ b/Core/src/main/java/com/plotsquared/core/command/Kick.java @@ -27,7 +27,6 @@ import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.world.PlotAreaManager; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlayerManager; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.WorldUtil; @@ -70,8 +69,7 @@ public class Kick extends SubCommand { player.sendMessage(TranslatableCaption.of("errors.not_in_plot")); return false; } - if ((!plot.hasOwner() || !plot.isOwner(player.getUUID())) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_KICK)) { + if ((!plot.hasOwner() || !plot.isOwner(player.getUUID())) && !player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_KICK)) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return false; } @@ -89,8 +87,7 @@ public class Kick extends SubCommand { for (UUID uuid : uuids) { if (uuid == DBFunc.EVERYONE) { for (PlotPlayer pp : plot.getPlayersInPlot()) { - if (pp == player || Permissions - .hasPermission(pp, Permission.PERMISSION_ADMIN_ENTRY_DENIED)) { + if (pp == player || pp.hasPermission(Permission.PERMISSION_ADMIN_ENTRY_DENIED)) { continue; } players.add(pp); @@ -118,7 +115,7 @@ public class Kick extends SubCommand { ); return; } - if (Permissions.hasPermission(player2, Permission.PERMISSION_ADMIN_ENTRY_DENIED)) { + if (player2.hasPermission(Permission.PERMISSION_ADMIN_ENTRY_DENIED)) { player.sendMessage( TranslatableCaption.of("cluster.cannot_kick_player"), Template.of("name", player2.getName()) diff --git a/Core/src/main/java/com/plotsquared/core/command/Like.java b/Core/src/main/java/com/plotsquared/core/command/Like.java index 9f93efe57..78f2023ea 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Like.java +++ b/Core/src/main/java/com/plotsquared/core/command/Like.java @@ -30,7 +30,6 @@ import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.Rating; import com.plotsquared.core.plot.flag.implementations.DoneFlag; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.query.PlotQuery; import com.plotsquared.core.util.task.TaskManager; @@ -121,8 +120,7 @@ public class Like extends SubCommand { player.sendMessage(TranslatableCaption.of("errors.not_in_plot")); return false; } - if (!Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_PURGE_RATINGS, true)) { + if (!player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_PURGE_RATINGS, true)) { return false; } plot.clearRatings(); @@ -204,7 +202,7 @@ public class Like extends SubCommand { public Collection tab(final PlotPlayer player, final String[] args, final boolean space) { if (args.length == 1) { final List completions = new LinkedList<>(); - if (Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_PURGE_RATINGS)) { + if (player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_PURGE_RATINGS)) { completions.add("purge"); } final List commands = completions.stream().filter(completion -> completion @@ -212,7 +210,7 @@ public class Like extends SubCommand { .startsWith(args[0].toLowerCase())) .map(completion -> new Command(null, true, completion, "", RequiredType.PLAYER, CommandCategory.INFO) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_RATE) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_RATE) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } return commands; diff --git a/Core/src/main/java/com/plotsquared/core/command/ListCmd.java b/Core/src/main/java/com/plotsquared/core/command/ListCmd.java index fcb161926..63cf73b05 100644 --- a/Core/src/main/java/com/plotsquared/core/command/ListCmd.java +++ b/Core/src/main/java/com/plotsquared/core/command/ListCmd.java @@ -36,7 +36,6 @@ import com.plotsquared.core.plot.flag.implementations.ServerPlotFlag; import com.plotsquared.core.plot.world.PlotAreaManager; import com.plotsquared.core.util.EconHandler; import com.plotsquared.core.util.MathMan; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlayerManager; import com.plotsquared.core.util.StringComparison; import com.plotsquared.core.util.StringMan; @@ -82,40 +81,40 @@ public class ListCmd extends SubCommand { private String[] getArgumentList(PlotPlayer player) { List args = new ArrayList<>(); - if (this.econHandler != null && Permissions.hasPermission(player, Permission.PERMISSION_LIST_FOR_SALE)) { + if (this.econHandler != null && player.hasPermission(Permission.PERMISSION_LIST_FOR_SALE)) { args.add("forsale"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_MINE)) { + if (player.hasPermission(Permission.PERMISSION_LIST_MINE)) { args.add("mine"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_SHARED)) { + if (player.hasPermission(Permission.PERMISSION_LIST_SHARED)) { args.add("shared"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_WORLD)) { + if (player.hasPermission(Permission.PERMISSION_LIST_WORLD)) { args.add("world"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_TOP)) { + if (player.hasPermission(Permission.PERMISSION_LIST_TOP)) { args.add("top"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_ALL)) { + if (player.hasPermission(Permission.PERMISSION_LIST_ALL)) { args.add("all"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_UNOWNED)) { + if (player.hasPermission(Permission.PERMISSION_LIST_UNOWNED)) { args.add("unowned"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_PLAYER)) { + if (player.hasPermission(Permission.PERMISSION_LIST_PLAYER)) { args.add(""); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_WORLD)) { + if (player.hasPermission(Permission.PERMISSION_LIST_WORLD)) { args.add(""); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_DONE)) { + if (player.hasPermission(Permission.PERMISSION_LIST_DONE)) { args.add("done"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_EXPIRED)) { + if (player.hasPermission(Permission.PERMISSION_LIST_EXPIRED)) { args.add("expired"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_FUZZY)) { + if (player.hasPermission(Permission.PERMISSION_LIST_FUZZY)) { args.add("fuzzy "); } return args.toArray(new String[args.size()]); @@ -187,7 +186,7 @@ public class ListCmd extends SubCommand { switch (arg) { case "mine" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_MINE)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_MINE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.mine") @@ -202,7 +201,7 @@ public class ListCmd extends SubCommand { .withSortingStrategy(SortingStrategy.SORT_BY_TEMP)); } case "shared" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_SHARED)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_SHARED)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.shared") @@ -215,14 +214,14 @@ public class ListCmd extends SubCommand { .thatPasses(plot -> !plot.isOwnerAbs(player.getUUID()))); } case "world" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_WORLD)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_WORLD)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.world") ); return false; } - if (!Permissions.hasPermission(player, "plots.list.world." + world)) { + if (!player.hasPermission("plots.list.world." + world)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.world." + world) @@ -232,7 +231,7 @@ public class ListCmd extends SubCommand { plotConsumer.accept(PlotQuery.newQuery().inWorld(world)); } case "expired" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_EXPIRED)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_EXPIRED)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.expired") @@ -246,14 +245,14 @@ public class ListCmd extends SubCommand { } } case "area" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_AREA)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_AREA)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.area") ); return false; } - if (!Permissions.hasPermission(player, "plots.list.world." + world)) { + if (!player.hasPermission("plots.list.world." + world)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.world." + world) @@ -267,7 +266,7 @@ public class ListCmd extends SubCommand { } } case "all" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_ALL)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_ALL)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.all") @@ -277,7 +276,7 @@ public class ListCmd extends SubCommand { plotConsumer.accept(PlotQuery.newQuery().allPlots()); } case "done" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_DONE)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_DONE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.done") @@ -292,7 +291,7 @@ public class ListCmd extends SubCommand { .withSortingStrategy(SortingStrategy.SORT_BY_DONE)); } case "top" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_TOP)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_TOP)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.top") @@ -303,7 +302,7 @@ public class ListCmd extends SubCommand { plotConsumer.accept(PlotQuery.newQuery().allPlots().withSortingStrategy(SortingStrategy.SORT_BY_RATING)); } case "forsale" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_FOR_SALE)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_FOR_SALE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.forsale") @@ -316,7 +315,7 @@ public class ListCmd extends SubCommand { plotConsumer.accept(PlotQuery.newQuery().allPlots().thatPasses(plot -> plot.getFlag(PriceFlag.class) > 0)); } case "unowned" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_UNOWNED)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_UNOWNED)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.unowned") @@ -326,7 +325,7 @@ public class ListCmd extends SubCommand { plotConsumer.accept(PlotQuery.newQuery().allPlots().thatPasses(plot -> plot.getOwner() == null)); } case "fuzzy" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_FUZZY)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_FUZZY)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.fuzzy") @@ -351,14 +350,14 @@ public class ListCmd extends SubCommand { } default -> { if (this.plotAreaManager.hasPlotArea(args[0])) { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_WORLD)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_WORLD)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.world") ); return false; } - if (!Permissions.hasPermission(player, "plots.list.world." + args[0])) { + if (!player.hasPermission("plots.list.world." + args[0])) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.world." + args[0]) @@ -382,7 +381,7 @@ public class ListCmd extends SubCommand { if (uuid == null) { player.sendMessage(TranslatableCaption.of("errors.invalid_player"), Templates.of("value", args[0])); } else { - if (!Permissions.hasPermission(player, Permission.PERMISSION_LIST_PLAYER)) { + if (!player.hasPermission(Permission.PERMISSION_LIST_PLAYER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.list.player") @@ -515,31 +514,31 @@ public class ListCmd extends SubCommand { @Override public Collection tab(PlotPlayer player, String[] args, boolean space) { final List completions = new LinkedList<>(); - if (this.econHandler.isSupported() && Permissions.hasPermission(player, Permission.PERMISSION_LIST_FOR_SALE)) { + if (this.econHandler.isSupported() && player.hasPermission(Permission.PERMISSION_LIST_FOR_SALE)) { completions.add("forsale"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_MINE)) { + if (player.hasPermission(Permission.PERMISSION_LIST_MINE)) { completions.add("mine"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_SHARED)) { + if (player.hasPermission(Permission.PERMISSION_LIST_SHARED)) { completions.add("shared"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_WORLD)) { + if (player.hasPermission(Permission.PERMISSION_LIST_WORLD)) { completions.addAll(PlotSquared.platform().worldManager().getWorlds()); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_TOP)) { + if (player.hasPermission(Permission.PERMISSION_LIST_TOP)) { completions.add("top"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_ALL)) { + if (player.hasPermission(Permission.PERMISSION_LIST_ALL)) { completions.add("all"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_UNOWNED)) { + if (player.hasPermission(Permission.PERMISSION_LIST_UNOWNED)) { completions.add("unowned"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_DONE)) { + if (player.hasPermission(Permission.PERMISSION_LIST_DONE)) { completions.add("done"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_EXPIRED)) { + if (player.hasPermission(Permission.PERMISSION_LIST_EXPIRED)) { completions.add("expired"); } @@ -549,7 +548,7 @@ public class ListCmd extends SubCommand { .map(completion -> new Command(null, true, completion, "", RequiredType.NONE, CommandCategory.TELEPORT) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_LIST_PLAYER) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_LIST_PLAYER) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } diff --git a/Core/src/main/java/com/plotsquared/core/command/Load.java b/Core/src/main/java/com/plotsquared/core/command/Load.java index f1b10ca73..933cc32c6 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Load.java +++ b/Core/src/main/java/com/plotsquared/core/command/Load.java @@ -31,7 +31,6 @@ import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.plot.PlotId; import com.plotsquared.core.plot.schematic.Schematic; import com.plotsquared.core.plot.world.PlotAreaManager; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.SchematicHandler; import com.plotsquared.core.util.TimeUtil; import com.plotsquared.core.util.task.RunnableVal; @@ -80,8 +79,7 @@ public class Load extends SubCommand { player.sendMessage(TranslatableCaption.of("info.plot_unowned")); return false; } - if (!plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_LOAD)) { + if (!plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_LOAD)) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return false; } diff --git a/Core/src/main/java/com/plotsquared/core/command/MainCommand.java b/Core/src/main/java/com/plotsquared/core/command/MainCommand.java index 77ebe94c3..eb1583a51 100644 --- a/Core/src/main/java/com/plotsquared/core/command/MainCommand.java +++ b/Core/src/main/java/com/plotsquared/core/command/MainCommand.java @@ -32,7 +32,6 @@ import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.plot.world.SinglePlotArea; import com.plotsquared.core.util.EconHandler; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlotExpression; import com.plotsquared.core.util.task.RunnableVal2; import com.plotsquared.core.util.task.RunnableVal3; @@ -244,8 +243,8 @@ public class MainCommand extends Command { PlotArea area = player.getApplicablePlotArea(); Plot newPlot = Plot.fromString(area, args[0]); if (newPlot != null && (player instanceof ConsolePlayer || newPlot.getArea() - .equals(area) || Permissions.hasPermission(player, Permission.PERMISSION_ADMIN) - || Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_AREA_SUDO)) + .equals(area) || player.hasPermission(Permission.PERMISSION_ADMIN) + || player.hasPermission(Permission.PERMISSION_ADMIN_AREA_SUDO)) && !newPlot.isDenied(player.getUUID())) { final Location newLoc; if (newPlot.getArea() instanceof SinglePlotArea) { diff --git a/Core/src/main/java/com/plotsquared/core/command/Merge.java b/Core/src/main/java/com/plotsquared/core/command/Merge.java index 6da21063b..335d3728d 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Merge.java +++ b/Core/src/main/java/com/plotsquared/core/command/Merge.java @@ -32,7 +32,6 @@ import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.util.EconHandler; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlotExpression; import com.plotsquared.core.util.StringMan; import net.kyori.adventure.text.minimessage.Template; @@ -124,7 +123,7 @@ public class Merge extends SubCommand { return false; } final int size = plot.getConnectedPlots().size(); - int max = Permissions.hasPermissionRange(player, "plots.merge", Settings.Limit.MAX_PLOTS); + int max = player.hasPermissionRange("plots.merge", Settings.Limit.MAX_PLOTS); PlotMergeEvent event = this.eventDispatcher.callMerge(plot, direction, max, player); if (event.getEventResult() == Result.DENY) { @@ -152,7 +151,7 @@ public class Merge extends SubCommand { UUID uuid = player.getUUID(); if (!force && !plot.isOwner(uuid)) { - if (!Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_MERGE)) { + if (!player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_MERGE)) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return false; } else { @@ -164,8 +163,7 @@ public class Merge extends SubCommand { if (args.length == 2) { terrain = "true".equalsIgnoreCase(args[1]); } - if (!force && !terrain && !Permissions - .hasPermission(player, Permission.PERMISSION_MERGE_KEEP_ROAD)) { + if (!force && !terrain && !player.hasPermission(Permission.PERMISSION_MERGE_KEEP_ROAD)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_MERGE_KEEP_ROAD)) @@ -202,8 +200,7 @@ public class Merge extends SubCommand { } else { terrain = true; } - if (!force && !terrain && !Permissions - .hasPermission(player, Permission.PERMISSION_MERGE_KEEP_ROAD)) { + if (!force && !terrain && !player.hasPermission(Permission.PERMISSION_MERGE_KEEP_ROAD)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_MERGE_KEEP_ROAD)) @@ -228,7 +225,7 @@ public class Merge extends SubCommand { player.sendMessage(TranslatableCaption.of("merge.no_available_automerge")); return false; } - if (!force && !Permissions.hasPermission(player, Permission.PERMISSION_MERGE_OTHER)) { + if (!force && !player.hasPermission(Permission.PERMISSION_MERGE_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_MERGE_OTHER)) @@ -283,8 +280,14 @@ public class Merge extends SubCommand { } } if (force || !isOnline) { - if (force || Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_MERGE_OTHER_OFFLINE)) { - if (plot.getPlotModificationManager().autoMerge(direction, maxSize - size, uuids.iterator().next(), player, terrain)) { + if (force || player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_MERGE_OTHER_OFFLINE)) { + if (plot.getPlotModificationManager().autoMerge( + direction, + maxSize - size, + uuids.iterator().next(), + player, + terrain + )) { if (this.econHandler.isEnabled(plotArea) && price > 0d) { if (!force && this.econHandler.getMoney(player) < price) { player.sendMessage( diff --git a/Core/src/main/java/com/plotsquared/core/command/Move.java b/Core/src/main/java/com/plotsquared/core/command/Move.java index 602e29c19..998420caa 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Move.java +++ b/Core/src/main/java/com/plotsquared/core/command/Move.java @@ -26,7 +26,6 @@ import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.plot.world.PlotAreaManager; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.task.RunnableVal2; import com.plotsquared.core.util.task.RunnableVal3; import net.kyori.adventure.text.minimessage.Template; @@ -60,8 +59,7 @@ public class Move extends SubCommand { player.sendMessage(TranslatableCaption.of("errors.not_in_plot")); return CompletableFuture.completedFuture(false); } - if (!plot1.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN)) { + if (!plot1.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN)) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return CompletableFuture.completedFuture(false); } @@ -88,8 +86,7 @@ public class Move extends SubCommand { player.sendMessage(TranslatableCaption.of("invalid.origin_cant_be_target")); return CompletableFuture.completedFuture(false); } - if (!plot1.getArea().isCompatible(plot2.getArea()) && (!override || !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN))) { + if (!plot1.getArea().isCompatible(plot2.getArea()) && (!override || !player.hasPermission(Permission.PERMISSION_ADMIN))) { player.sendMessage(TranslatableCaption.of("errors.plotworld_incompatible")); return CompletableFuture.completedFuture(false); } diff --git a/Core/src/main/java/com/plotsquared/core/command/Music.java b/Core/src/main/java/com/plotsquared/core/command/Music.java index f8a3af88d..1c760899a 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Music.java +++ b/Core/src/main/java/com/plotsquared/core/command/Music.java @@ -33,7 +33,6 @@ import com.plotsquared.core.plot.flag.PlotFlag; import com.plotsquared.core.plot.flag.implementations.MusicFlag; import com.plotsquared.core.util.EventDispatcher; import com.plotsquared.core.util.InventoryUtil; -import com.plotsquared.core.util.Permissions; import com.sk89q.worldedit.world.item.ItemType; import com.sk89q.worldedit.world.item.ItemTypes; import net.kyori.adventure.text.minimessage.Template; @@ -79,8 +78,7 @@ public class Music extends SubCommand { player.sendMessage(TranslatableCaption.of("info.plot_unowned")); return false; } - if (!plot.isAdded(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_MUSIC_OTHER)) { + if (!plot.isAdded(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_MUSIC_OTHER)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_ADMIN_MUSIC_OTHER)) diff --git a/Core/src/main/java/com/plotsquared/core/command/Owner.java b/Core/src/main/java/com/plotsquared/core/command/Owner.java index bb44a4686..15e06497e 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Owner.java +++ b/Core/src/main/java/com/plotsquared/core/command/Owner.java @@ -31,7 +31,6 @@ import com.plotsquared.core.player.PlayerMetaDataKeys; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlayerManager; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.task.TaskManager; @@ -99,10 +98,10 @@ public class Owner extends SetCommand { uuid = event.getNewOwner(); boolean force = event.getEventResult() == Result.FORCE; if (uuid == null) { - if (!force && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_SET_OWNER, - true - )) { + if (!force && !player.hasPermission( + Permission.PERMISSION_ADMIN_COMMAND_SET_OWNER, + true + )) { return; } PlotUnlinkEvent unlinkEvent = this.eventDispatcher.callUnlink( @@ -139,8 +138,7 @@ public class Owner extends SetCommand { ); return; } - if (!force && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_SET_OWNER)) { + if (!force && !player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_SET_OWNER)) { if (other == null) { player.sendMessage( TranslatableCaption.of("errors.invalid_player_offline"), diff --git a/Core/src/main/java/com/plotsquared/core/command/Rate.java b/Core/src/main/java/com/plotsquared/core/command/Rate.java index 0c7a446d5..17869c44d 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Rate.java +++ b/Core/src/main/java/com/plotsquared/core/command/Rate.java @@ -34,7 +34,6 @@ import com.plotsquared.core.plot.flag.implementations.DoneFlag; import com.plotsquared.core.util.EventDispatcher; import com.plotsquared.core.util.InventoryUtil; import com.plotsquared.core.util.MathMan; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.query.PlotQuery; import com.plotsquared.core.util.task.TaskManager; @@ -114,8 +113,7 @@ public class Rate extends SubCommand { player.sendMessage(TranslatableCaption.of("errors.not_in_plot")); return false; } - if (!Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_PURGE_RATINGS, true)) { + if (!player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_PURGE_RATINGS, true)) { return false; } plot.clearRatings(); @@ -273,10 +271,10 @@ public class Rate extends SubCommand { public Collection tab(final PlotPlayer player, final String[] args, final boolean space) { if (args.length == 1) { final List completions = new LinkedList<>(); - if (Permissions.hasPermission(player, Permission.PERMISSION_RATE)) { + if (player.hasPermission(Permission.PERMISSION_RATE)) { completions.add("1 - 10"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_PURGE_RATINGS)) { + if (player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_PURGE_RATINGS)) { completions.add("purge"); } final List commands = completions.stream().filter(completion -> completion @@ -284,7 +282,7 @@ public class Rate extends SubCommand { .startsWith(args[0].toLowerCase())) .map(completion -> new Command(null, true, completion, "", RequiredType.PLAYER, CommandCategory.INFO) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_RATE) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_RATE) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } return commands; diff --git a/Core/src/main/java/com/plotsquared/core/command/Remove.java b/Core/src/main/java/com/plotsquared/core/command/Remove.java index 3a2e06a2d..ecfab4a88 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Remove.java +++ b/Core/src/main/java/com/plotsquared/core/command/Remove.java @@ -26,7 +26,6 @@ import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlayerManager; import com.plotsquared.core.util.TabCompletions; import net.kyori.adventure.text.minimessage.Template; @@ -65,8 +64,7 @@ public class Remove extends SubCommand { player.sendMessage(TranslatableCaption.of("info.plot_unowned")); return false; } - if (!plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_REMOVE)) { + if (!plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_REMOVE)) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return true; } diff --git a/Core/src/main/java/com/plotsquared/core/command/Save.java b/Core/src/main/java/com/plotsquared/core/command/Save.java index 1cfa55d1b..c15647fdc 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Save.java +++ b/Core/src/main/java/com/plotsquared/core/command/Save.java @@ -28,7 +28,6 @@ import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.PlotId; import com.plotsquared.core.plot.world.PlotAreaManager; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.SchematicHandler; import com.plotsquared.core.util.task.RunnableVal; import com.plotsquared.core.util.task.TaskManager; @@ -82,8 +81,7 @@ public class Save extends SubCommand { player.sendMessage(TranslatableCaption.of("schematics.schematic_too_large")); return false; } - if (!plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_SAVE)) { + if (!plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_SAVE)) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return false; } diff --git a/Core/src/main/java/com/plotsquared/core/command/SchematicCmd.java b/Core/src/main/java/com/plotsquared/core/command/SchematicCmd.java index 0a495e987..550a0cf93 100644 --- a/Core/src/main/java/com/plotsquared/core/command/SchematicCmd.java +++ b/Core/src/main/java/com/plotsquared/core/command/SchematicCmd.java @@ -30,7 +30,6 @@ import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.plot.schematic.Schematic; import com.plotsquared.core.plot.world.PlotAreaManager; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.SchematicHandler; import com.plotsquared.core.util.StringMan; import com.plotsquared.core.util.TabCompletions; @@ -80,7 +79,7 @@ public class SchematicCmd extends SubCommand { String arg = args[0].toLowerCase(); switch (arg) { case "paste" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_SCHEMATIC_PASTE)) { + if (!player.hasPermission(Permission.PERMISSION_SCHEMATIC_PASTE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_SCHEMATIC_PASTE)) @@ -104,8 +103,7 @@ public class SchematicCmd extends SubCommand { player.sendMessage(TranslatableCaption.of("info.plot_unowned")); return false; } - if (!plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, "plots.admin.command.schematic.paste")) { + if (!plot.isOwner(player.getUUID()) && !player.hasPermission("plots.admin.command.schematic.paste")) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return false; } @@ -218,7 +216,7 @@ public class SchematicCmd extends SubCommand { } } case "export", "save" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_SCHEMATIC_SAVE)) { + if (!player.hasPermission(Permission.PERMISSION_SCHEMATIC_SAVE)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_SCHEMATIC_SAVE)) @@ -243,8 +241,7 @@ public class SchematicCmd extends SubCommand { player.sendMessage(TranslatableCaption.of("schematics.schematic_too_large")); return false; } - if (!plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, "plots.admin.command.schematic.save")) { + if (!plot.isOwner(player.getUUID()) && !player.hasPermission("plots.admin.command.schematic.save")) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return false; } @@ -261,7 +258,7 @@ public class SchematicCmd extends SubCommand { } } case "list" -> { - if (!Permissions.hasPermission(player, Permission.PERMISSION_SCHEMATIC_LIST)) { + if (!player.hasPermission(Permission.PERMISSION_SCHEMATIC_LIST)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_SCHEMATIC_LIST)) @@ -286,13 +283,13 @@ public class SchematicCmd extends SubCommand { public Collection tab(final PlotPlayer player, final String[] args, final boolean space) { if (args.length == 1) { final List completions = new LinkedList<>(); - if (Permissions.hasPermission(player, Permission.PERMISSION_SCHEMATIC_SAVE)) { + if (player.hasPermission(Permission.PERMISSION_SCHEMATIC_SAVE)) { completions.add("save"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_SCHEMATIC_LIST)) { + if (player.hasPermission(Permission.PERMISSION_SCHEMATIC_LIST)) { completions.add("list"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_SCHEMATIC_PASTE)) { + if (player.hasPermission(Permission.PERMISSION_SCHEMATIC_PASTE)) { completions.add("paste"); } final List commands = completions.stream().filter(completion -> completion @@ -307,7 +304,7 @@ public class SchematicCmd extends SubCommand { CommandCategory.ADMINISTRATION ) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_SCHEMATIC) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_SCHEMATIC) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } return commands; diff --git a/Core/src/main/java/com/plotsquared/core/command/Set.java b/Core/src/main/java/com/plotsquared/core/command/Set.java index e12ab3505..84ec87eeb 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Set.java +++ b/Core/src/main/java/com/plotsquared/core/command/Set.java @@ -32,7 +32,6 @@ import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.plot.PlotManager; import com.plotsquared.core.queue.QueueCoordinator; import com.plotsquared.core.util.PatternUtil; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.StringMan; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.WorldUtil; @@ -96,7 +95,7 @@ public class Set extends SubCommand { BlockType::getName).toList()); } - if (!Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_ALLOW_UNSAFE) && + if (!player.hasPermission(Permission.PERMISSION_ADMIN_ALLOW_UNSAFE) && !forbiddenTypes.isEmpty()) { for (String forbiddenType : forbiddenTypes) { forbiddenType = forbiddenType.toLowerCase(Locale.ENGLISH); @@ -132,7 +131,7 @@ public class Set extends SubCommand { for (String component : components) { if (component.equalsIgnoreCase(args[0])) { - if (!Permissions.hasPermission(player, Permission.PERMISSION_SET_COMPONENT.format(component))) { + if (!player.hasPermission(Permission.PERMISSION_SET_COMPONENT.format(component))) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_SET_COMPONENT.format(component)) @@ -211,7 +210,7 @@ public class Set extends SubCommand { } Command cmd = MainCommand.getInstance().getCommand("set" + args[0]); if (cmd != null) { - if (!Permissions.hasPermission(player, cmd.getPermission(), true)) { + if (!player.hasPermission(cmd.getPermission(), true)) { return false; } cmd.execute(player, Arrays.copyOfRange(args, 1, args.length), null, null); @@ -241,37 +240,37 @@ public class Set extends SubCommand { if (args.length == 1) { final List completions = new LinkedList<>(); - if (Permissions.hasPermission(player, Permission.PERMISSION_SET_BIOME)) { + if (player.hasPermission(Permission.PERMISSION_SET_BIOME)) { completions.add("biome"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_SET_ALIAS)) { + if (player.hasPermission(Permission.PERMISSION_SET_ALIAS)) { completions.add("alias"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_SET_HOME)) { + if (player.hasPermission(Permission.PERMISSION_SET_HOME)) { completions.add("home"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_SET_MAIN)) { + if (player.hasPermission(Permission.PERMISSION_SET_MAIN)) { completions.add("main"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_SET_FLOOR)) { + if (player.hasPermission(Permission.PERMISSION_SET_FLOOR)) { completions.add("floor"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_SET_AIR)) { + if (player.hasPermission(Permission.PERMISSION_SET_AIR)) { completions.add("air"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_SET_ALL)) { + if (player.hasPermission(Permission.PERMISSION_SET_ALL)) { completions.add("all"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_SET_BORDER)) { + if (player.hasPermission(Permission.PERMISSION_SET_BORDER)) { completions.add("border"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_SET_WALL)) { + if (player.hasPermission(Permission.PERMISSION_SET_WALL)) { completions.add("wall"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_SET_OUTLINE)) { + if (player.hasPermission(Permission.PERMISSION_SET_OUTLINE)) { completions.add("outline"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_SET_MIDDLE)) { + if (player.hasPermission(Permission.PERMISSION_SET_MIDDLE)) { completions.add("middle"); } final List commands = completions.stream().filter(completion -> completion @@ -280,7 +279,7 @@ public class Set extends SubCommand { .map(completion -> new Command(null, true, completion, "", RequiredType.NONE, CommandCategory.APPEARANCE) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_SET) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_SET) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } return commands; @@ -296,7 +295,7 @@ public class Set extends SubCommand { final Command cmd = MainCommand.getInstance().getCommand("set" + args[0]); if (cmd != null) { - if (!Permissions.hasPermission(player, cmd.getPermission(), true)) { + if (!player.hasPermission(cmd.getPermission(), true)) { return new ArrayList<>(); } return cmd.tab(player, newArgs, space); diff --git a/Core/src/main/java/com/plotsquared/core/command/SetCommand.java b/Core/src/main/java/com/plotsquared/core/command/SetCommand.java index 1ff54853c..2189a0eae 100644 --- a/Core/src/main/java/com/plotsquared/core/command/SetCommand.java +++ b/Core/src/main/java/com/plotsquared/core/command/SetCommand.java @@ -23,7 +23,6 @@ import com.plotsquared.core.location.Location; import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.StringMan; import net.kyori.adventure.text.minimessage.Template; @@ -38,7 +37,7 @@ public abstract class SetCommand extends SubCommand { return false; } if (!plot.hasOwner()) { - if (!Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND.format(getFullId()))) { + if (!player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND.format(getFullId()))) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_ADMIN_COMMAND.format(getFullId())) @@ -48,7 +47,7 @@ public abstract class SetCommand extends SubCommand { } } if (!plot.isOwner(player.getUUID())) { - if (!Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND.format(getFullId()))) { + if (!player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND.format(getFullId()))) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", Permission.PERMISSION_ADMIN_COMMAND.format(getFullId())) diff --git a/Core/src/main/java/com/plotsquared/core/command/Swap.java b/Core/src/main/java/com/plotsquared/core/command/Swap.java index 4c7864439..d97437d89 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Swap.java +++ b/Core/src/main/java/com/plotsquared/core/command/Swap.java @@ -23,7 +23,6 @@ import com.plotsquared.core.location.Location; import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.task.RunnableVal2; import com.plotsquared.core.util.task.RunnableVal3; import net.kyori.adventure.text.minimessage.Template; @@ -49,8 +48,7 @@ public class Swap extends SubCommand { player.sendMessage(TranslatableCaption.of("errors.not_in_plot")); return CompletableFuture.completedFuture(false); } - if (!plot1.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN)) { + if (!plot1.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN)) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return CompletableFuture.completedFuture(false); } diff --git a/Core/src/main/java/com/plotsquared/core/command/Template.java b/Core/src/main/java/com/plotsquared/core/command/Template.java index 02b95e71f..9f05d8aff 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Template.java +++ b/Core/src/main/java/com/plotsquared/core/command/Template.java @@ -39,7 +39,6 @@ import com.plotsquared.core.setup.PlotAreaBuilder; import com.plotsquared.core.setup.SettingsNodesWrapper; import com.plotsquared.core.util.FileBytes; import com.plotsquared.core.util.FileUtils; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.SetupUtils; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.WorldUtil; @@ -279,10 +278,10 @@ public class Template extends SubCommand { public Collection tab(final PlotPlayer player, final String[] args, final boolean space) { if (args.length == 1) { final List completions = new LinkedList<>(); - if (Permissions.hasPermission(player, Permission.PERMISSION_TEMPLATE_EXPORT)) { + if (player.hasPermission(Permission.PERMISSION_TEMPLATE_EXPORT)) { completions.add("export"); } - if (Permissions.hasPermission(player, Permission.PERMISSION_TEMPLATE_IMPORT)) { + if (player.hasPermission(Permission.PERMISSION_TEMPLATE_IMPORT)) { completions.add("import"); } final List commands = completions.stream().filter(completion -> completion @@ -297,7 +296,7 @@ public class Template extends SubCommand { CommandCategory.ADMINISTRATION ) { }).collect(Collectors.toCollection(LinkedList::new)); - if (Permissions.hasPermission(player, Permission.PERMISSION_TEMPLATE) && args[0].length() > 0) { + if (player.hasPermission(Permission.PERMISSION_TEMPLATE) && args[0].length() > 0) { commands.addAll(TabCompletions.completePlayers(player, args[0], Collections.emptyList())); } return commands; diff --git a/Core/src/main/java/com/plotsquared/core/command/Trust.java b/Core/src/main/java/com/plotsquared/core/command/Trust.java index 63c5e9a94..b44eec0e0 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Trust.java +++ b/Core/src/main/java/com/plotsquared/core/command/Trust.java @@ -27,7 +27,6 @@ import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlayerManager; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.task.RunnableVal2; @@ -69,8 +68,7 @@ public class Trust extends Command { } checkTrue(currentPlot.hasOwner(), TranslatableCaption.of("info.plot_unowned")); checkTrue( - currentPlot.isOwner(player.getUUID()) || Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_TRUST), + currentPlot.isOwner(player.getUUID()) || player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_TRUST), TranslatableCaption.of("permission.no_plot_perms") ); @@ -101,8 +99,7 @@ public class Trust extends Command { while (iterator.hasNext()) { UUID uuid = iterator.next(); if (uuid == DBFunc.EVERYONE && !( - Permissions.hasPermission(player, Permission.PERMISSION_TRUST_EVERYONE) || Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_TRUST))) { + player.hasPermission(Permission.PERMISSION_TRUST_EVERYONE) || player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_TRUST))) { player.sendMessage( TranslatableCaption.of("errors.invalid_player"), Template.of("value", PlayerManager.resolveName(uuid).getComponent(player)) @@ -130,7 +127,7 @@ public class Trust extends Command { } checkTrue(!uuids.isEmpty(), null); int localTrustSize = currentPlot.getTrusted().size(); - int maxTrustSize = Permissions.hasPermissionRange(player, Permission.PERMISSION_TRUST, Settings.Limit.MAX_PLOTS); + int maxTrustSize = player.hasPermissionRange(Permission.PERMISSION_TRUST, Settings.Limit.MAX_PLOTS); if (localTrustSize >= maxTrustSize) { player.sendMessage( TranslatableCaption.of("members.plot_max_members_trusted"), diff --git a/Core/src/main/java/com/plotsquared/core/command/Unlink.java b/Core/src/main/java/com/plotsquared/core/command/Unlink.java index f0aec660d..45d49c6c3 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Unlink.java +++ b/Core/src/main/java/com/plotsquared/core/command/Unlink.java @@ -27,7 +27,6 @@ import com.plotsquared.core.permissions.Permission; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.StringMan; import com.plotsquared.core.util.task.TaskManager; import net.kyori.adventure.text.minimessage.Template; @@ -91,8 +90,7 @@ public class Unlink extends SubCommand { return true; } boolean force = event.getEventResult() == Result.FORCE; - if (!force && !plot.isOwner(player.getUUID()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_UNLINK)) { + if (!force && !plot.isOwner(player.getUUID()) && !player.hasPermission(Permission.PERMISSION_ADMIN_COMMAND_UNLINK)) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); return true; } diff --git a/Core/src/main/java/com/plotsquared/core/command/Visit.java b/Core/src/main/java/com/plotsquared/core/command/Visit.java index e287fa589..c20edeba8 100644 --- a/Core/src/main/java/com/plotsquared/core/command/Visit.java +++ b/Core/src/main/java/com/plotsquared/core/command/Visit.java @@ -31,7 +31,6 @@ import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.plot.flag.implementations.UntrustedVisitFlag; import com.plotsquared.core.plot.world.PlotAreaManager; import com.plotsquared.core.util.MathMan; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlayerManager; import com.plotsquared.core.util.TabCompletions; import com.plotsquared.core.util.query.PlotQuery; @@ -108,7 +107,7 @@ public class Visit extends Command { final Plot plot = plots.get(page - 1); if (!plot.hasOwner()) { - if (!Permissions.hasPermission(player, Permission.PERMISSION_VISIT_UNOWNED)) { + if (!player.hasPermission(Permission.PERMISSION_VISIT_UNOWNED)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.visit.unowned") @@ -116,8 +115,7 @@ public class Visit extends Command { return; } } else if (plot.isOwner(player.getUUID())) { - if (!Permissions.hasPermission(player, Permission.PERMISSION_VISIT_OWNED) && !Permissions - .hasPermission(player, Permission.PERMISSION_HOME)) { + if (!player.hasPermission(Permission.PERMISSION_VISIT_OWNED) && !player.hasPermission(Permission.PERMISSION_HOME)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.visit.owned") @@ -125,7 +123,7 @@ public class Visit extends Command { return; } } else if (plot.isAdded(player.getUUID())) { - if (!Permissions.hasPermission(player, Permission.PERMISSION_SHARED)) { + if (!player.hasPermission(Permission.PERMISSION_SHARED)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.visit.shared") @@ -135,8 +133,8 @@ public class Visit extends Command { } else { // allow visit, if UntrustedVisit flag is set, or if the player has either the plot.visit.other or // plot.admin.visit.untrusted permission - if (!plot.getFlag(UntrustedVisitFlag.class) && !Permissions.hasPermission(player, Permission.PERMISSION_VISIT_OTHER) - && !Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_VISIT_UNTRUSTED)) { + if (!plot.getFlag(UntrustedVisitFlag.class) && !player.hasPermission(Permission.PERMISSION_VISIT_OTHER) + && !player.hasPermission(Permission.PERMISSION_ADMIN_VISIT_UNTRUSTED)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Templates.of("node", "plots.visit.other") @@ -144,7 +142,7 @@ public class Visit extends Command { return; } if (plot.isDenied(player.getUUID())) { - if (!Permissions.hasPermission(player, Permission.PERMISSION_VISIT_DENIED)) { + if (!player.hasPermission(Permission.PERMISSION_VISIT_DENIED)) { player.sendMessage( TranslatableCaption.of("permission.no_permission"), Template.of("node", String.valueOf(Permission.PERMISSION_VISIT_DENIED)) diff --git a/Core/src/main/java/com/plotsquared/core/components/ComponentPresetManager.java b/Core/src/main/java/com/plotsquared/core/components/ComponentPresetManager.java index 710b6c283..88dc48672 100644 --- a/Core/src/main/java/com/plotsquared/core/components/ComponentPresetManager.java +++ b/Core/src/main/java/com/plotsquared/core/components/ComponentPresetManager.java @@ -35,7 +35,6 @@ import com.plotsquared.core.queue.QueueCoordinator; import com.plotsquared.core.util.EconHandler; import com.plotsquared.core.util.InventoryUtil; import com.plotsquared.core.util.PatternUtil; -import com.plotsquared.core.util.Permissions; import com.sk89q.worldedit.function.pattern.Pattern; import com.sk89q.worldedit.world.item.ItemTypes; import net.kyori.adventure.text.minimessage.MiniMessage; @@ -51,7 +50,6 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; -import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.Map; @@ -153,8 +151,7 @@ public class ComponentPresetManager { } else if (!plot.hasOwner()) { player.sendMessage(TranslatableCaption.of("info.plot_unowned")); return null; - } else if (!plot.isOwner(player.getUUID()) && !plot.getTrusted().contains(player.getUUID()) && !Permissions.hasPermission( - player, + } else if (!plot.isOwner(player.getUUID()) && !plot.getTrusted().contains(player.getUUID()) && !player.hasPermission( Permission.PERMISSION_ADMIN_COMPONENTS_OTHER )) { player.sendMessage(TranslatableCaption.of("permission.no_plot_perms")); @@ -166,8 +163,7 @@ public class ComponentPresetManager { final List allowedPresets = new ArrayList<>(this.presets.size()); for (final ComponentPreset componentPreset : this.presets) { - if (!componentPreset.getPermission().isEmpty() && !Permissions.hasPermission( - player, + if (!componentPreset.getPermission().isEmpty() && !player.hasPermission( componentPreset.getPermission() )) { continue; diff --git a/Core/src/main/java/com/plotsquared/core/listener/PlotListener.java b/Core/src/main/java/com/plotsquared/core/listener/PlotListener.java index 0550d65eb..59f1b0d24 100644 --- a/Core/src/main/java/com/plotsquared/core/listener/PlotListener.java +++ b/Core/src/main/java/com/plotsquared/core/listener/PlotListener.java @@ -56,7 +56,6 @@ import com.plotsquared.core.plot.flag.implementations.TitlesFlag; import com.plotsquared.core.plot.flag.implementations.WeatherFlag; import com.plotsquared.core.plot.flag.types.TimedFlag; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlayerManager; import com.plotsquared.core.util.task.TaskManager; import com.plotsquared.core.util.task.TaskTime; @@ -149,8 +148,7 @@ public class PlotListener { } public boolean plotEntry(final PlotPlayer player, final Plot plot) { - if (plot.isDenied(player.getUUID()) && !Permissions - .hasPermission(player, "plots.admin.entry.denied")) { + if (plot.isDenied(player.getUUID()) && !player.hasPermission("plots.admin.entry.denied")) { player.sendMessage( TranslatableCaption.of("deny.no_enter"), Template.of("plot", plot.toString()) @@ -188,7 +186,7 @@ public class PlotListener { } if (plot.getFlag(NotifyEnterFlag.class)) { - if (!Permissions.hasPermission(player, "plots.flag.notify-enter.bypass")) { + if (!player.hasPermission("plots.flag.notify-enter.bypass")) { for (UUID uuid : plot.getOwners()) { final PlotPlayer owner = PlotSquared.platform().playerManager().getPlayerIfExists(uuid); if (owner != null && !owner.getUUID().equals(player.getUUID()) && owner.canSee(player)) { @@ -200,7 +198,7 @@ public class PlotListener { } final FlyFlag.FlyStatus flyStatus = plot.getFlag(FlyFlag.class); - if (!Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_FLIGHT)) { + if (!player.hasPermission(Permission.PERMISSION_ADMIN_FLIGHT)) { if (flyStatus != FlyFlag.FlyStatus.DEFAULT) { boolean flight = player.getFlight(); GameMode gamemode = player.getGameMode(); @@ -216,7 +214,7 @@ public class PlotListener { final GameMode gameMode = plot.getFlag(GamemodeFlag.class); if (!gameMode.equals(GamemodeFlag.DEFAULT)) { if (player.getGameMode() != gameMode) { - if (!Permissions.hasPermission(player, "plots.gamemode.bypass")) { + if (!player.hasPermission("plots.gamemode.bypass")) { player.setGameMode(gameMode); } else { player.sendMessage( @@ -231,7 +229,7 @@ public class PlotListener { final GameMode guestGameMode = plot.getFlag(GuestGamemodeFlag.class); if (!guestGameMode.equals(GamemodeFlag.DEFAULT)) { if (player.getGameMode() != guestGameMode && !plot.isAdded(player.getUUID())) { - if (!Permissions.hasPermission(player, "plots.gamemode.bypass")) { + if (!player.hasPermission("plots.gamemode.bypass")) { player.setGameMode(guestGameMode); } else { player.sendMessage( @@ -392,8 +390,7 @@ public class PlotListener { } try (final MetaDataAccess kickAccess = player.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_KICK)) { - if (plot.getFlag(DenyExitFlag.class) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_EXIT_DENIED) && + if (plot.getFlag(DenyExitFlag.class) && !player.hasPermission(Permission.PERMISSION_ADMIN_EXIT_DENIED) && !kickAccess.get().orElse(false)) { if (previous != null) { lastPlot.set(previous); @@ -404,7 +401,7 @@ public class PlotListener { if (!plot.getFlag(GamemodeFlag.class).equals(GamemodeFlag.DEFAULT) || !plot .getFlag(GuestGamemodeFlag.class).equals(GamemodeFlag.DEFAULT)) { if (player.getGameMode() != pw.getGameMode()) { - if (!Permissions.hasPermission(player, "plots.gamemode.bypass")) { + if (!player.hasPermission("plots.gamemode.bypass")) { player.setGameMode(pw.getGameMode()); } else { player.sendMessage( @@ -426,7 +423,7 @@ public class PlotListener { } if (plot.getFlag(NotifyLeaveFlag.class)) { - if (!Permissions.hasPermission(player, "plots.flag.notify-leave.bypass")) { + if (!player.hasPermission("plots.flag.notify-leave.bypass")) { for (UUID uuid : plot.getOwners()) { final PlotPlayer owner = PlotSquared.platform().playerManager().getPlayerIfExists(uuid); if ((owner != null) && !owner.getUUID().equals(player.getUUID()) && owner.canSee(player)) { diff --git a/Core/src/main/java/com/plotsquared/core/listener/WESubscriber.java b/Core/src/main/java/com/plotsquared/core/listener/WESubscriber.java index 0ad71a737..493863a07 100644 --- a/Core/src/main/java/com/plotsquared/core/listener/WESubscriber.java +++ b/Core/src/main/java/com/plotsquared/core/listener/WESubscriber.java @@ -25,7 +25,6 @@ import com.plotsquared.core.configuration.caption.TranslatableCaption; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.world.PlotAreaManager; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.WEManager; import com.plotsquared.core.util.WorldUtil; import com.sk89q.worldedit.EditSession; @@ -92,7 +91,7 @@ public class WESubscriber { } else { mask = WEManager.getMask(plotPlayer); if (mask.isEmpty()) { - if (Permissions.hasPermission(plotPlayer, "plots.worldedit.bypass")) { + if (plotPlayer.hasPermission("plots.worldedit.bypass")) { plotPlayer.sendMessage( TranslatableCaption.of("worldedit.worldedit_bypass"), Template.of("command", "/plot toggle worldedit") diff --git a/Core/src/main/java/com/plotsquared/core/permissions/PermissionHolder.java b/Core/src/main/java/com/plotsquared/core/permissions/PermissionHolder.java index ed79cbdc9..3b483f45b 100644 --- a/Core/src/main/java/com/plotsquared/core/permissions/PermissionHolder.java +++ b/Core/src/main/java/com/plotsquared/core/permissions/PermissionHolder.java @@ -38,6 +38,16 @@ public interface PermissionHolder { return hasPermission(null, permission); } + /** + * Check if the owner of the profile has a given (global) permission + * + * @param permission Permission + * @return {@code true} if the owner has the given permission, else {@code false} + */ + default boolean hasPermission(final @NonNull Permission permission) { + return hasPermission(permission.toString()); + } + /** * Check if the owner of the profile has a given (global) keyed permission. Checks both {@code permission.key} * and {@code permission.*} @@ -54,6 +64,23 @@ public interface PermissionHolder { return hasKeyedPermission(null, permission, key); } + /** + * Check the highest permission a PlotPlayer has within a specified range.
+ * - Excessively high values will lag
+ * - The default range that is checked is {@link Settings.Limit#MAX_PLOTS}
+ * + * @param stub The permission stub to check e.g. for `plots.plot.#` the stub is `plots.plot` + * @param range The range to check + * @return The highest permission they have within that range + */ + @NonNegative + default int hasPermissionRange( + final @NonNull Permission stub, + @NonNegative final int range + ) { + return hasPermissionRange(stub.toString(), range); + } + /** * Check the highest permission a PlotPlayer has within a specified range.
* - Excessively high values will lag
@@ -92,6 +119,26 @@ public interface PermissionHolder { return 0; } + /** + * Checks if the owner of the profile has a permission, and optionally send the no permission message if applicable. + * + * @param permission Permission + * @param notify If to notify the permission holder + * @return {@code true} if the owner has the given permission, else {@code false} + */ + default boolean hasPermission(@NonNull Permission permission, boolean notify) { + return hasPermission(permission.toString(), notify); + } + + /** + * Checks if the owner of the profile has a permission, and optionally send the no permission message if applicable. + * + * @param permission Permission + * @param notify If to notify the permission holder + * @return {@code true} if the owner has the given permission, else {@code false} + */ + boolean hasPermission(@NonNull String permission, boolean notify); + /** * Check if the owner of the profile has a given permission * diff --git a/Core/src/main/java/com/plotsquared/core/player/PlotPlayer.java b/Core/src/main/java/com/plotsquared/core/player/PlotPlayer.java index f0d5cdfc3..29c487526 100644 --- a/Core/src/main/java/com/plotsquared/core/player/PlotPlayer.java +++ b/Core/src/main/java/com/plotsquared/core/player/PlotPlayer.java @@ -48,7 +48,6 @@ import com.plotsquared.core.plot.world.SinglePlotArea; import com.plotsquared.core.plot.world.SinglePlotAreaManager; import com.plotsquared.core.synchronization.LockRepository; import com.plotsquared.core.util.EventDispatcher; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.query.PlotQuery; import com.plotsquared.core.util.task.RunnableVal; import com.plotsquared.core.util.task.TaskManager; @@ -200,6 +199,20 @@ public abstract class PlotPlayer

implements CommandCaller, OfflinePlotPlayer, return this.permissionProfile.hasKeyedPermission(world, permission, key); } + @Override + public final boolean hasPermission(@NonNull String permission, boolean notify) { + if (!hasPermission(permission)) { + if (notify) { + sendMessage( + TranslatableCaption.of("permission.no_permission_event"), + Template.of("node", permission) + ); + } + return false; + } + return true; + } + public abstract Actor toActor(); public abstract P getPlatformPlayer(); @@ -290,7 +303,7 @@ public abstract class PlotPlayer

implements CommandCaller, OfflinePlotPlayer, * @return number of allowed plots within the scope (globally, or in the player's current world as defined in the settings.yml) */ public int getAllowedPlots() { - return Permissions.hasPermissionRange(this, "plots.plot", Settings.Limit.MAX_PLOTS); + return hasPermissionRange("plots.plot", Settings.Limit.MAX_PLOTS); } /** diff --git a/Core/src/main/java/com/plotsquared/core/plot/Plot.java b/Core/src/main/java/com/plotsquared/core/plot/Plot.java index bab1a3d61..5c90c2fad 100644 --- a/Core/src/main/java/com/plotsquared/core/plot/Plot.java +++ b/Core/src/main/java/com/plotsquared/core/plot/Plot.java @@ -54,7 +54,6 @@ import com.plotsquared.core.plot.world.SinglePlotArea; import com.plotsquared.core.queue.QueueCoordinator; import com.plotsquared.core.util.EventDispatcher; import com.plotsquared.core.util.MathMan; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlayerManager; import com.plotsquared.core.util.RegionManager; import com.plotsquared.core.util.RegionUtil; @@ -2207,7 +2206,7 @@ public class Plot { public boolean canClaim(@NonNull PlotPlayer player) { PlotCluster cluster = this.getCluster(); if (cluster != null) { - if (!cluster.isAdded(player.getUUID()) && !Permissions.hasPermission(player, "plots.admin.command.claim")) { + if (!cluster.isAdded(player.getUUID()) && !player.hasPermission("plots.admin.command.claim")) { return false; } } @@ -2598,7 +2597,7 @@ public class Plot { Template plotTemplate = Template.of("plot", this.toString()); Template messageTemplate = Template.of("message", message); for (final PlotPlayer player : players) { - if (isOwner(player.getUUID()) || Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_DEBUG_OTHER)) { + if (isOwner(player.getUUID()) || player.hasPermission(Permission.PERMISSION_ADMIN_DEBUG_OTHER)) { player.sendMessage(caption, plotTemplate, messageTemplate); } } @@ -2635,8 +2634,7 @@ public class Plot { return; } final Consumer locationConsumer = location -> { - if (Settings.Teleport.DELAY == 0 || Permissions - .hasPermission(player, "plots.teleport.delay.bypass")) { + if (Settings.Teleport.DELAY == 0 || player.hasPermission("plots.teleport.delay.bypass")) { player.sendMessage(TranslatableCaption.of("teleport.teleported_to_plot")); player.teleport(location, cause); resultConsumer.accept(true); diff --git a/Core/src/main/java/com/plotsquared/core/plot/PlotArea.java b/Core/src/main/java/com/plotsquared/core/plot/PlotArea.java index 63f5577ba..b9b805f82 100644 --- a/Core/src/main/java/com/plotsquared/core/plot/PlotArea.java +++ b/Core/src/main/java/com/plotsquared/core/plot/PlotArea.java @@ -49,7 +49,6 @@ import com.plotsquared.core.plot.flag.implementations.DoneFlag; import com.plotsquared.core.queue.GlobalBlockQueue; import com.plotsquared.core.queue.QueueCoordinator; import com.plotsquared.core.util.MathMan; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.PlotExpression; import com.plotsquared.core.util.RegionUtil; import com.plotsquared.core.util.StringMan; @@ -646,7 +645,7 @@ public abstract class PlotArea { * @since 6.9.1 */ public boolean notifyIfOutsideBuildArea(PlotPlayer player, int y) { - if (!buildRangeContainsY(y) && !Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_BUILD_HEIGHT_LIMIT)) { + if (!buildRangeContainsY(y) && !player.hasPermission(Permission.PERMISSION_ADMIN_BUILD_HEIGHT_LIMIT)) { player.sendMessage( TranslatableCaption.of("height.height_limit"), Template.of("minHeight", String.valueOf(minBuildHeight)), diff --git a/Core/src/main/java/com/plotsquared/core/plot/comment/CommentInbox.java b/Core/src/main/java/com/plotsquared/core/plot/comment/CommentInbox.java index ac9185bfe..1e0894538 100644 --- a/Core/src/main/java/com/plotsquared/core/plot/comment/CommentInbox.java +++ b/Core/src/main/java/com/plotsquared/core/plot/comment/CommentInbox.java @@ -21,7 +21,6 @@ package com.plotsquared.core.plot.comment; import com.plotsquared.core.database.DBFunc; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; -import com.plotsquared.core.util.Permissions; import com.plotsquared.core.util.task.RunnableVal; import java.util.List; @@ -37,9 +36,8 @@ public abstract class CommentInbox { * @return the inbox, otherwise {@code false} false */ public boolean canRead(Plot plot, PlotPlayer player) { - if (Permissions.hasPermission(player, "plots.inbox.read." + this, true)) { - return plot.isOwner(player.getUUID()) || Permissions - .hasPermission(player, "plots.inbox.read." + this + ".other", true); + if (player.hasPermission("plots.inbox.read." + this, true)) { + return plot.isOwner(player.getUUID()) || player.hasPermission("plots.inbox.read." + this + ".other", true); } return false; } @@ -51,11 +49,10 @@ public abstract class CommentInbox { */ public boolean canWrite(Plot plot, PlotPlayer player) { if (plot == null) { - return Permissions.hasPermission(player, "plots.inbox.write." + this, true); + return player.hasPermission("plots.inbox.write." + this, true); } - return Permissions.hasPermission(player, "plots.inbox.write." + this, true) && ( - plot.isOwner(player.getUUID()) || Permissions - .hasPermission(player, "plots.inbox.write." + this + ".other", true)); + return player.hasPermission("plots.inbox.write." + this, true) && ( + plot.isOwner(player.getUUID()) || player.hasPermission("plots.inbox.write." + this + ".other", true)); } /** @@ -65,9 +62,8 @@ public abstract class CommentInbox { */ @SuppressWarnings({"BooleanMethodIsAlwaysInverted"}) public boolean canModify(Plot plot, PlotPlayer player) { - if (Permissions.hasPermission(player, "plots.inbox.modify." + this, true)) { - return plot.isOwner(player.getUUID()) || Permissions - .hasPermission(player, "plots.inbox.modify." + this + ".other", true); + if (player.hasPermission("plots.inbox.modify." + this, true)) { + return plot.isOwner(player.getUUID()) || player.hasPermission("plots.inbox.modify." + this + ".other", true); } return false; } diff --git a/Core/src/main/java/com/plotsquared/core/util/EventDispatcher.java b/Core/src/main/java/com/plotsquared/core/util/EventDispatcher.java index b2d858b4d..9318cccd0 100644 --- a/Core/src/main/java/com/plotsquared/core/util/EventDispatcher.java +++ b/Core/src/main/java/com/plotsquared/core/util/EventDispatcher.java @@ -332,8 +332,7 @@ public class EventDispatcher { ) { PlotArea area = location.getPlotArea(); assert area != null; - if (!area.buildRangeContainsY(location.getY()) && !Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_BUILD_HEIGHT_LIMIT)) { + if (!area.buildRangeContainsY(location.getY()) && !player.hasPermission(Permission.PERMISSION_ADMIN_BUILD_HEIGHT_LIMIT)) { player.sendMessage( TranslatableCaption.of("height.height_limit"), Template.of("minHeight", String.valueOf(area.getMinBuildHeight())), @@ -360,12 +359,12 @@ public class EventDispatcher { return true; } } - return Permissions.hasPermission(player, + return player.hasPermission( Permission.PERMISSION_ADMIN_INTERACT_ROAD.toString(), notifyPerms ); } if (!plot.hasOwner()) { - return Permissions.hasPermission(player, + return player.hasPermission( Permission.PERMISSION_ADMIN_INTERACT_UNOWNED.toString(), notifyPerms ); } @@ -376,7 +375,7 @@ public class EventDispatcher { return true; } } - if (Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_INTERACT_OTHER.toString(), false)) { + if (player.hasPermission(Permission.PERMISSION_ADMIN_INTERACT_OTHER.toString(), false)) { return true; } if (notifyPerms) { @@ -395,12 +394,12 @@ public class EventDispatcher { return true; } } - return Permissions.hasPermission(player, + return player.hasPermission( Permission.PERMISSION_ADMIN_INTERACT_ROAD.toString(), false ); } if (!plot.hasOwner()) { - return Permissions.hasPermission(player, + return player.hasPermission( Permission.PERMISSION_ADMIN_INTERACT_UNOWNED.toString(), false ); } @@ -414,19 +413,19 @@ public class EventDispatcher { return true; } } - return Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_INTERACT_OTHER.toString(), - false - ); + return player.hasPermission( + Permission.PERMISSION_ADMIN_INTERACT_OTHER.toString(), + false + ); } case SPAWN_MOB: { if (plot == null) { - return Permissions.hasPermission(player, + return player.hasPermission( Permission.PERMISSION_ADMIN_INTERACT_ROAD.toString(), notifyPerms ); } if (!plot.hasOwner()) { - return Permissions.hasPermission(player, + return player.hasPermission( Permission.PERMISSION_ADMIN_INTERACT_UNOWNED.toString(), notifyPerms ); } @@ -440,10 +439,10 @@ public class EventDispatcher { return true; } } - if (Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_INTERACT_OTHER.toString(), - false - )) { + if (player.hasPermission( + Permission.PERMISSION_ADMIN_INTERACT_OTHER.toString(), + false + )) { return true; } if (notifyPerms) { @@ -457,12 +456,12 @@ public class EventDispatcher { } case PLACE_MISC: { if (plot == null) { - return Permissions.hasPermission(player, + return player.hasPermission( Permission.PERMISSION_ADMIN_INTERACT_ROAD.toString(), notifyPerms ); } if (!plot.hasOwner()) { - return Permissions.hasPermission(player, + return player.hasPermission( Permission.PERMISSION_ADMIN_INTERACT_UNOWNED.toString(), notifyPerms ); } @@ -476,10 +475,10 @@ public class EventDispatcher { return true; } } - if (Permissions - .hasPermission(player, Permission.PERMISSION_ADMIN_INTERACT_OTHER.toString(), - false - )) { + if (player.hasPermission( + Permission.PERMISSION_ADMIN_INTERACT_OTHER.toString(), + false + )) { return true; } if (notifyPerms) { @@ -493,12 +492,12 @@ public class EventDispatcher { } case PLACE_VEHICLE: if (plot == null) { - return Permissions.hasPermission(player, + return player.hasPermission( Permission.PERMISSION_ADMIN_INTERACT_ROAD.toString(), notifyPerms ); } if (!plot.hasOwner()) { - return Permissions.hasPermission(player, + return player.hasPermission( Permission.PERMISSION_ADMIN_INTERACT_UNOWNED.toString(), notifyPerms ); } diff --git a/Core/src/main/java/com/plotsquared/core/util/Permissions.java b/Core/src/main/java/com/plotsquared/core/util/Permissions.java index 06d0ddbee..972653a8b 100644 --- a/Core/src/main/java/com/plotsquared/core/util/Permissions.java +++ b/Core/src/main/java/com/plotsquared/core/util/Permissions.java @@ -32,14 +32,14 @@ import org.checkerframework.checker.nullness.qual.NonNull; * - Checking the PlotPlayer class directly will not take the above into account
* * @deprecated all logic that may once have been in the class lives elsewhere. We also want to do away with statically-accessed - * classes + * classes */ @Deprecated(forRemoval = true, since = "6.9.3") public class Permissions { /** * @deprecated all logic that may once have been in the class lives elsewhere. We also want to do away with statically-accessed - * classes + * classes. Use {@link PlotPlayer#hasPermission(String, boolean)} */ @Deprecated(forRemoval = true, since = "6.9.3") public static boolean hasPermission(PlotPlayer player, Permission permission, boolean notify) { @@ -53,7 +53,7 @@ public class Permissions { * @param permission Permission * @return {@code true} if the owner has the given permission, else {@code false} * @deprecated all logic that may once have been in the class lives elsewhere. We also want to do away with statically-accessed - * classes + * classes. Use {@link PermissionHolder#hasPermission(Permission)} */ @Deprecated(forRemoval = true, since = "6.9.3") public static boolean hasPermission(final @NonNull PermissionHolder caller, final @NonNull Permission permission) { @@ -68,7 +68,7 @@ public class Permissions { * @param permission Permission * @return {@code true} if the owner has the given permission, else {@code false} * @deprecated all logic that may once have been in the class lives elsewhere. We also want to do away with statically-accessed - * classes + * classes. Use {@link PermissionHolder#hasPermission(String)} */ @Deprecated(forRemoval = true, since = "6.9.3") public static boolean hasPermission(final @NonNull PermissionHolder caller, final @NonNull String permission) { @@ -85,7 +85,7 @@ public class Permissions { * @return {@code true} if the owner has the given permission, else {@code false} * @since 6.0.10 * @deprecated all logic that may once have been in the class lives elsewhere. We also want to do away with statically-accessed - * classes + * classes. Use {@link PermissionHolder#hasKeyedPermission(String, String)} */ @Deprecated(forRemoval = true, since = "6.9.3") public static boolean hasKeyedPermission( @@ -103,7 +103,7 @@ public class Permissions { * @param notify if to notify the permission holder * @return if permission is had * @deprecated all logic that may once have been in the class lives elsewhere. We also want to do away with statically-accessed - * classes + * classes. Use {@link PlotPlayer#hasPermission(String, boolean)} */ @Deprecated(forRemoval = true, since = "6.9.3") public static boolean hasPermission(PlotPlayer player, String permission, boolean notify) { @@ -121,7 +121,7 @@ public class Permissions { /** * @deprecated all logic that may once have been in the class lives elsewhere. We also want to do away with statically-accessed - * classes + * classes. Use {@link PlotPlayer#hasPermissionRange(Permission, int)} */ @Deprecated(forRemoval = true, since = "6.9.3") public static int hasPermissionRange(PlotPlayer player, Permission Permission, int range) { @@ -138,7 +138,7 @@ public class Permissions { * @param range The range to check * @return The highest permission they have within that range * @deprecated all logic that may once have been in the class lives elsewhere. We also want to do away with statically-accessed - * classes + * classes. Use {@link PlotPlayer#hasPermissionRange(String, int)} */ @Deprecated(forRemoval = true, since = "6.9.3") public static int hasPermissionRange(PlotPlayer player, String stub, int range) { From c978322036f670c4db31b7e4042db1c7cda11770 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Sun, 15 Jan 2023 14:10:41 +0100 Subject: [PATCH 22/27] Separate workflows between PRs and pushes (#3928) * Separate workflows between PRs and pushes * Fixup --- .github/workflows/build-pr.yml | 23 +++++++++++++++++++++++ .github/workflows/build.yml | 9 ++++++--- .github/workflows/codeql.yml | 2 -- 3 files changed, 29 insertions(+), 5 deletions(-) create mode 100644 .github/workflows/build-pr.yml diff --git a/.github/workflows/build-pr.yml b/.github/workflows/build-pr.yml new file mode 100644 index 000000000..b1ffd45a4 --- /dev/null +++ b/.github/workflows/build-pr.yml @@ -0,0 +1,23 @@ +name: Build PR + +on: [ pull_request ] + +jobs: + build_pr: + if: github.repository_owner == 'IntellectualSites' + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ ubuntu-latest, windows-latest, macos-latest ] + steps: + - name: Checkout Repository + uses: actions/checkout@v3 + - name: Validate Gradle Wrapper + uses: gradle/wrapper-validation-action@v1 + - name: Setup Java + uses: actions/setup-java@v3 + with: + distribution: temurin + java-version: 17 + - name: Clean Build + run: ./gradlew clean build diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index bee920ea9..d7d6fa81c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,15 +1,18 @@ name: build -on: [ pull_request, push ] +on: + push: + branches: + - v6 jobs: build: - if: ${{ github.event_name != 'pull_request' || github.repository != github.event.pull_request.head.repo.full_name }} + if: github.repository_owner == 'IntellectualSites' runs-on: ubuntu-latest steps: - name: Checkout Repository uses: actions/checkout@v3 - - name: Validate Gradle Wrapper" + - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@v1 - name: Setup Java uses: actions/setup-java@v3 diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 42526cb92..625a76a13 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -1,8 +1,6 @@ name: "CodeQL" on: - push: - branches: [ v6 ] pull_request: # The branches below must be a subset of the branches above branches: [ v6 ] From abbac057ed1227d96b3ed62f41b7e2d367a8fdde Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Sun, 15 Jan 2023 17:54:52 +0100 Subject: [PATCH 23/27] Default to unix line endings (#3932) * Default to unix line endings * Respect preconfigured settings --- .gitattributes | 4 ++++ .../main/java/com/plotsquared/bukkit/util/BukkitWorld.java | 1 - .../plotsquared/bukkit/util/fawe/FaweSchematicHandler.java | 1 - .../src/main/java/com/plotsquared/core/command/DebugExec.java | 2 -- Core/src/main/java/com/plotsquared/core/plot/PlotWorld.java | 1 - .../main/java/com/plotsquared/core/plot/flag/PlotFlag.java | 1 - Core/src/main/java/com/plotsquared/core/util/RegionUtil.java | 1 - .../main/java/com/plotsquared/core/util/TabCompletions.java | 1 - .../core/util/net/AbstractDelegateOutputStream.java | 1 - .../com/plotsquared/core/util/query/OwnersIncludeFilter.java | 1 - .../java/com/plotsquared/core/util/task/PlotSquaredTask.java | 1 - .../java/com/plotsquared/core/database/AbstractDBTest.java | 1 - build.gradle.kts | 3 +++ 13 files changed, 7 insertions(+), 12 deletions(-) create mode 100644 .gitattributes diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 000000000..4c7cc4031 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,4 @@ +* text=auto + +*.java text +*.jar binary diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/util/BukkitWorld.java b/Bukkit/src/main/java/com/plotsquared/bukkit/util/BukkitWorld.java index 4f9e1db38..aa1111e9a 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/util/BukkitWorld.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/util/BukkitWorld.java @@ -24,7 +24,6 @@ import org.bukkit.Bukkit; import org.checkerframework.checker.nullness.qual.NonNull; import java.util.Map; -import java.util.Objects; public class BukkitWorld implements World { diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/util/fawe/FaweSchematicHandler.java b/Bukkit/src/main/java/com/plotsquared/bukkit/util/fawe/FaweSchematicHandler.java index c1b2bbd7e..be2b3a21a 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/util/fawe/FaweSchematicHandler.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/util/fawe/FaweSchematicHandler.java @@ -80,4 +80,3 @@ public class FaweSchematicHandler extends SchematicHandler { } } - diff --git a/Core/src/main/java/com/plotsquared/core/command/DebugExec.java b/Core/src/main/java/com/plotsquared/core/command/DebugExec.java index 51e8ad8fe..d8e845591 100644 --- a/Core/src/main/java/com/plotsquared/core/command/DebugExec.java +++ b/Core/src/main/java/com/plotsquared/core/command/DebugExec.java @@ -28,7 +28,6 @@ import com.plotsquared.core.generator.HybridUtils; import com.plotsquared.core.player.PlotPlayer; import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.PlotArea; -import com.plotsquared.core.plot.expiration.ExpireManager; import com.plotsquared.core.plot.expiration.PlotAnalysis; import com.plotsquared.core.plot.flag.GlobalFlagContainer; import com.plotsquared.core.plot.flag.PlotFlag; @@ -42,7 +41,6 @@ import org.checkerframework.checker.nullness.qual.NonNull; import java.util.Arrays; import java.util.Collection; -import java.util.HashSet; import java.util.LinkedHashSet; import java.util.List; import java.util.Locale; diff --git a/Core/src/main/java/com/plotsquared/core/plot/PlotWorld.java b/Core/src/main/java/com/plotsquared/core/plot/PlotWorld.java index ca4024f7a..baeebeb5b 100644 --- a/Core/src/main/java/com/plotsquared/core/plot/PlotWorld.java +++ b/Core/src/main/java/com/plotsquared/core/plot/PlotWorld.java @@ -24,7 +24,6 @@ import org.checkerframework.checker.nullness.qual.NonNull; import org.checkerframework.checker.nullness.qual.Nullable; import java.util.Collection; -import java.util.Objects; /** * A world that contains plots diff --git a/Core/src/main/java/com/plotsquared/core/plot/flag/PlotFlag.java b/Core/src/main/java/com/plotsquared/core/plot/flag/PlotFlag.java index 77b1a76c3..c38eb1b88 100644 --- a/Core/src/main/java/com/plotsquared/core/plot/flag/PlotFlag.java +++ b/Core/src/main/java/com/plotsquared/core/plot/flag/PlotFlag.java @@ -24,7 +24,6 @@ import org.checkerframework.checker.nullness.qual.NonNull; import java.util.Collection; import java.util.Collections; -import java.util.Objects; /** * A plot flag is any property that can be assigned diff --git a/Core/src/main/java/com/plotsquared/core/util/RegionUtil.java b/Core/src/main/java/com/plotsquared/core/util/RegionUtil.java index a0aa27275..4ee917b84 100644 --- a/Core/src/main/java/com/plotsquared/core/util/RegionUtil.java +++ b/Core/src/main/java/com/plotsquared/core/util/RegionUtil.java @@ -19,7 +19,6 @@ package com.plotsquared.core.util; import com.plotsquared.core.location.Location; -import com.plotsquared.core.plot.Plot; import com.sk89q.worldedit.math.BlockVector2; import com.sk89q.worldedit.math.BlockVector3; import com.sk89q.worldedit.regions.CuboidRegion; diff --git a/Core/src/main/java/com/plotsquared/core/util/TabCompletions.java b/Core/src/main/java/com/plotsquared/core/util/TabCompletions.java index 13e951414..65d45dc16 100644 --- a/Core/src/main/java/com/plotsquared/core/util/TabCompletions.java +++ b/Core/src/main/java/com/plotsquared/core/util/TabCompletions.java @@ -31,7 +31,6 @@ import com.plotsquared.core.plot.Plot; import com.plotsquared.core.plot.PlotArea; import com.plotsquared.core.uuid.UUIDMapping; import org.checkerframework.checker.nullness.qual.NonNull; -import org.checkerframework.checker.nullness.qual.Nullable; import java.util.ArrayList; import java.util.Arrays; diff --git a/Core/src/main/java/com/plotsquared/core/util/net/AbstractDelegateOutputStream.java b/Core/src/main/java/com/plotsquared/core/util/net/AbstractDelegateOutputStream.java index 0af0d3fee..120ba15cc 100644 --- a/Core/src/main/java/com/plotsquared/core/util/net/AbstractDelegateOutputStream.java +++ b/Core/src/main/java/com/plotsquared/core/util/net/AbstractDelegateOutputStream.java @@ -55,4 +55,3 @@ public class AbstractDelegateOutputStream extends OutputStream { } } - diff --git a/Core/src/main/java/com/plotsquared/core/util/query/OwnersIncludeFilter.java b/Core/src/main/java/com/plotsquared/core/util/query/OwnersIncludeFilter.java index 702e4a640..8a9969b3e 100644 --- a/Core/src/main/java/com/plotsquared/core/util/query/OwnersIncludeFilter.java +++ b/Core/src/main/java/com/plotsquared/core/util/query/OwnersIncludeFilter.java @@ -21,7 +21,6 @@ package com.plotsquared.core.util.query; import com.plotsquared.core.plot.Plot; import org.checkerframework.checker.nullness.qual.NonNull; -import java.util.Objects; import java.util.UUID; class OwnersIncludeFilter implements PlotFilter { diff --git a/Core/src/main/java/com/plotsquared/core/util/task/PlotSquaredTask.java b/Core/src/main/java/com/plotsquared/core/util/task/PlotSquaredTask.java index b7337d45b..25a3b440c 100644 --- a/Core/src/main/java/com/plotsquared/core/util/task/PlotSquaredTask.java +++ b/Core/src/main/java/com/plotsquared/core/util/task/PlotSquaredTask.java @@ -83,4 +83,3 @@ public interface PlotSquaredTask extends Runnable { } } - diff --git a/Core/src/test/java/com/plotsquared/core/database/AbstractDBTest.java b/Core/src/test/java/com/plotsquared/core/database/AbstractDBTest.java index d4c8c7be8..18e0a5f41 100644 --- a/Core/src/test/java/com/plotsquared/core/database/AbstractDBTest.java +++ b/Core/src/test/java/com/plotsquared/core/database/AbstractDBTest.java @@ -276,4 +276,3 @@ public class AbstractDBTest implements AbstractDB { } } - diff --git a/build.gradle.kts b/build.gradle.kts index d6d7bb50b..05e70c4d1 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -90,6 +90,9 @@ subprojects { java { licenseHeaderFile(rootProject.file("HEADER.txt")) target("**/*.java") + endWithNewline() + trimTrailingWhitespace() + removeUnusedImports() } } From 63a6bdc1d688791c577d125e74bd5126eda61dd1 Mon Sep 17 00:00:00 2001 From: Alexander Brandes Date: Mon, 16 Jan 2023 00:18:51 +0100 Subject: [PATCH 24/27] Terminate process if `.git` folder is not a repository (#3937) Terminate process if folder is not a repository --- build.gradle.kts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/build.gradle.kts b/build.gradle.kts index 05e70c4d1..0a8df0130 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -20,6 +20,16 @@ plugins { group = "com.plotsquared" version = "6.10.9-SNAPSHOT" +if (!File("$rootDir/.git").exists()) { + logger.lifecycle(""" + ************************************************************************************** + You need to fork and clone this repository! Don't download a .zip file. + If you need assistance, consult the GitHub docs: https://docs.github.com/get-started/quickstart/fork-a-repo + ************************************************************************************** + """.trimIndent() + ).also { kotlin.system.exitProcess(1) } +} + subprojects { group = rootProject.group version = rootProject.version From f6f00dfcda7a63c10cdba7559fa8aee55df87b73 Mon Sep 17 00:00:00 2001 From: Jordan Date: Mon, 16 Jan 2023 17:14:20 +0000 Subject: [PATCH 25/27] fix: Remove chunk#isLoaded call in BukkitChunkCoordinator (#3934) --- .../plotsquared/bukkit/queue/BukkitChunkCoordinator.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/queue/BukkitChunkCoordinator.java b/Bukkit/src/main/java/com/plotsquared/bukkit/queue/BukkitChunkCoordinator.java index 7e787843b..fc3ce7370 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/queue/BukkitChunkCoordinator.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/queue/BukkitChunkCoordinator.java @@ -239,9 +239,11 @@ public final class BukkitChunkCoordinator extends ChunkCoordinator { * server's main thread. */ private void processChunk(final @NonNull Chunk chunk) { + /* Chunk#isLoaded does not necessarily return true shortly after PaperLib#getChunkAtAsync completes, but the chunk is + still loaded. if (!chunk.isLoaded()) { - throw new IllegalArgumentException(String.format("Chunk %d;%d is is not loaded", chunk.getX(), chunk.getZ())); - } + throw new IllegalArgumentException(String.format("Chunk %d;%d is is not loaded", chunk.getX(), chunk.getZ()); + }*/ if (finished) { return; } From 07e598e48ff862bc5916cb0be651069271108c5d Mon Sep 17 00:00:00 2001 From: Jordan Date: Mon, 16 Jan 2023 21:15:35 +0000 Subject: [PATCH 26/27] fix: account for exclusivity of max build height where requires (#3935) --- .../com/plotsquared/core/generator/ClassicPlotManager.java | 6 +++--- Core/src/main/java/com/plotsquared/core/plot/Plot.java | 2 +- Core/src/main/java/com/plotsquared/core/util/WEManager.java | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Core/src/main/java/com/plotsquared/core/generator/ClassicPlotManager.java b/Core/src/main/java/com/plotsquared/core/generator/ClassicPlotManager.java index f7037cc24..c9eeb4485 100644 --- a/Core/src/main/java/com/plotsquared/core/generator/ClassicPlotManager.java +++ b/Core/src/main/java/com/plotsquared/core/generator/ClassicPlotManager.java @@ -144,7 +144,7 @@ public class ClassicPlotManager extends SquarePlotManager { plot.getRegions(), blocks, classicPlotWorld.getMinBuildHeight(), - classicPlotWorld.getMaxBuildHeight(), + classicPlotWorld.getMaxBuildHeight() - 1, actor, queue ); @@ -175,7 +175,7 @@ public class ClassicPlotManager extends SquarePlotManager { plot.getRegions(), blocks, classicPlotWorld.PLOT_HEIGHT + 1, - classicPlotWorld.getMaxBuildHeight(), + classicPlotWorld.getMaxBuildHeight() - 1, actor, queue ); @@ -281,7 +281,7 @@ public class ClassicPlotManager extends SquarePlotManager { } } - int maxY = classicPlotWorld.getMaxBuildHeight(); + int maxY = classicPlotWorld.getMaxBuildHeight() - 1; if (!plot.isMerged(Direction.NORTH)) { int z = bottom.getZ(); for (int x = bottom.getX(); x <= top.getX(); x++) { diff --git a/Core/src/main/java/com/plotsquared/core/plot/Plot.java b/Core/src/main/java/com/plotsquared/core/plot/Plot.java index 5c90c2fad..b1c7c1f6a 100644 --- a/Core/src/main/java/com/plotsquared/core/plot/Plot.java +++ b/Core/src/main/java/com/plotsquared/core/plot/Plot.java @@ -2506,7 +2506,7 @@ public class Plot { } } int minHeight = getArea().getMinBuildHeight(); - int maxHeight = getArea().getMaxBuildHeight(); + int maxHeight = getArea().getMaxBuildHeight() - 1; Location gtopabs = this.area.getPlotAbs(top).getTopAbs(); Location gbotabs = this.area.getPlotAbs(bot).getBottomAbs(); visited.addAll(Lists.newArrayList((Iterable) PlotId.PlotRangeIterator.range(bot, top))); diff --git a/Core/src/main/java/com/plotsquared/core/util/WEManager.java b/Core/src/main/java/com/plotsquared/core/util/WEManager.java index 78a3ff8ac..377160114 100644 --- a/Core/src/main/java/com/plotsquared/core/util/WEManager.java +++ b/Core/src/main/java/com/plotsquared/core/util/WEManager.java @@ -106,7 +106,7 @@ public class WEManager { .getTrusted().contains(uuid))) && !plot.getFlag(NoWorldeditFlag.class)) { for (CuboidRegion region : plot.getRegions()) { BlockVector3 pos1 = region.getMinimumPoint().withY(area.getMinBuildHeight()); - BlockVector3 pos2 = region.getMaximumPoint().withY(area.getMaxBuildHeight()); + BlockVector3 pos2 = region.getMaximumPoint().withY(area.getMaxBuildHeight() - 1); CuboidRegion copy = new CuboidRegion(pos1, pos2); regions.add(copy); } From c45bbe3ec523121f9ed2717cd703a735214ef678 Mon Sep 17 00:00:00 2001 From: Jordan Date: Thu, 19 Jan 2023 08:01:06 +0000 Subject: [PATCH 27/27] fix: ensure plots are fully unlinked before the clear itself is run (#3933) * fix: ensure plots are fully unlinked before the clear itself is run * Update Core/src/main/java/com/plotsquared/core/plot/PlotModificationManager.java Co-authored-by: Alexander Brandes --- .../core/plot/PlotModificationManager.java | 52 +++++++++++++------ 1 file changed, 37 insertions(+), 15 deletions(-) diff --git a/Core/src/main/java/com/plotsquared/core/plot/PlotModificationManager.java b/Core/src/main/java/com/plotsquared/core/plot/PlotModificationManager.java index cfab430b8..c170dec7e 100644 --- a/Core/src/main/java/com/plotsquared/core/plot/PlotModificationManager.java +++ b/Core/src/main/java/com/plotsquared/core/plot/PlotModificationManager.java @@ -220,17 +220,6 @@ public final class PlotModificationManager { if (isDelete) { this.removeSign(); } - PlotUnlinkEvent event = PlotSquared.get().getEventDispatcher() - .callUnlink( - this.plot.getArea(), - this.plot, - true, - !isDelete, - isDelete ? PlotUnlinkEvent.REASON.DELETE : PlotUnlinkEvent.REASON.CLEAR - ); - if (event.getEventResult() != Result.DENY && this.unlinkPlot(event.isCreateRoad(), event.isCreateSign())) { - PlotSquared.get().getEventDispatcher().callPostUnlink(plot, event.getReason()); - } final PlotManager manager = this.plot.getArea().getPlotManager(); Runnable run = new Runnable() { @Override @@ -281,7 +270,21 @@ public final class PlotModificationManager { manager.clearPlot(current, this, actor, null); } }; - run.run(); + PlotUnlinkEvent event = PlotSquared.get().getEventDispatcher() + .callUnlink( + this.plot.getArea(), + this.plot, + true, + !isDelete, + isDelete ? PlotUnlinkEvent.REASON.DELETE : PlotUnlinkEvent.REASON.CLEAR + ); + if (event.getEventResult() != Result.DENY) { + if (this.unlinkPlot(event.isCreateRoad(), event.isCreateSign(), run)) { + PlotSquared.get().getEventDispatcher().callPostUnlink(plot, event.getReason()); + } + } else { + run.run(); + } return true; } @@ -321,7 +324,23 @@ public final class PlotModificationManager { * @return success/!cancelled */ public boolean unlinkPlot(final boolean createRoad, final boolean createSign) { + return unlinkPlot(createRoad, createSign, null); + } + + /** + * Unlink the plot and all connected plots. + * + * @param createRoad whether to recreate road + * @param createSign whether to recreate signs + * @param whenDone Task to run when unlink is complete + * @return success/!cancelled + * @since TODO + */ + public boolean unlinkPlot(final boolean createRoad, final boolean createSign, final Runnable whenDone) { if (!this.plot.isMerged()) { + if (whenDone != null) { + whenDone.run(); + } return false; } final Set plots = this.plot.getConnectedPlots(); @@ -366,14 +385,17 @@ public final class PlotModificationManager { current.getPlotModificationManager().setSign(PlayerManager.resolveName(current.getOwnerAbs()).getComponent( LocaleHolder.console())); } + if (whenDone != null) { + TaskManager.runTask(whenDone); + } })); + } else if (whenDone != null) { + queue.setCompleteTask(whenDone); } if (createRoad) { manager.finishPlotUnlink(ids, queue); } - if (queue != null) { - queue.enqueue(); - } + queue.enqueue(); return true; }