[ci skip] style: Restore GlobalFlagContainer's entry list being sorted alphabetically

Mostly helps me when updating the wiki
This commit is contained in:
NotMyFault 2022-01-31 15:50:44 +01:00
parent f10ee27fdd
commit 9ba2b62fc2
No known key found for this signature in database
GPG Key ID: 158F5701A6AAD00C
4 changed files with 56 additions and 56 deletions

View File

@ -201,7 +201,7 @@ public class Settings extends Config {
public List<String> WORLDS = new ArrayList<>(Collections.singletonList("*")); public List<String> WORLDS = new ArrayList<>(Collections.singletonList("*"));
@Comment("See: https://intellectualsites.github.io/plotsquared-documentation/optimization/Plot-analysis for a description of each value.") @Comment("See: https://intellectualsites.github.io/plotsquared-documentation/optimization/plot-analysis for a description of each value.")
public static final class CALIBRATION { public static final class CALIBRATION {
public int VARIETY = 0; public int VARIETY = 0;
@ -221,7 +221,7 @@ public class Settings extends Config {
@Comment({"Chunk processor related settings", @Comment({"Chunk processor related settings",
"See https://intellectualsites.github.io/plotsquared-documentation/optimization/Chunk-processor for more information."}) "See https://intellectualsites.github.io/plotsquared-documentation/optimization/chunk-processor for more information."})
public static class Chunk_Processor { public static class Chunk_Processor {
@Comment("Auto trim will not save chunks which aren't claimed") @Comment("Auto trim will not save chunks which aren't claimed")
@ -284,7 +284,7 @@ public class Settings extends Config {
@Comment("Always show explosion Particles, even if explosion flag is set to false") @Comment("Always show explosion Particles, even if explosion flag is set to false")
public static boolean ALWAYS_SHOW_EXPLOSIONS = false; public static boolean ALWAYS_SHOW_EXPLOSIONS = false;
@Comment({"Blocks that may not be used in plot components", @Comment({"Blocks that may not be used in plot components",
"Checkout the wiki article regarding plot components before modifying: https://intellectualsites.github.io/plotsquared-documentation/customization/Plot-Components"}) "Checkout the wiki article regarding plot components before modifying: https://intellectualsites.github.io/plotsquared-documentation/customization/plot-components"})
public static List<String> public static List<String>
INVALID_BLOCKS = Arrays.asList( INVALID_BLOCKS = Arrays.asList(
// Acacia Stuff // Acacia Stuff
@ -406,7 +406,7 @@ public class Settings extends Config {
@Comment({"Schematic Settings", @Comment({"Schematic Settings",
"See https://intellectualsites.github.io/plotsquared-documentation/schematics/Schematic-on-Claim for more information."}) "See https://intellectualsites.github.io/plotsquared-documentation/schematics/schematic-on-claim for more information."})
public static final class Schematics { public static final class Schematics {
@Comment( @Comment(
@ -535,7 +535,7 @@ public class Settings extends Config {
@Comment({"Backup related settings", @Comment({"Backup related settings",
"See https://intellectualsites.github.io/plotsquared-documentation/Plot-Backups for more information."}) "See https://intellectualsites.github.io/plotsquared-documentation/plot-backups for more information."})
public static final class Backup { public static final class Backup {
@Comment("Automatically backup plots when destructive commands are performed, e.g. /plot clear") @Comment("Automatically backup plots when destructive commands are performed, e.g. /plot clear")
@ -784,7 +784,7 @@ public class Settings extends Config {
public static boolean public static boolean
PERSISTENT_ROAD_REGEN = true; PERSISTENT_ROAD_REGEN = true;
@Comment({"Enable the `/plot component` preset GUI", @Comment({"Enable the `/plot component` preset GUI",
"Read more about components here: https://intellectualsites.github.io/plotsquared-documentation/customization/Plot-Components"}) "Read more about components here: https://intellectualsites.github.io/plotsquared-documentation/customization/plot-components"})
public static boolean COMPONENT_PRESETS = true; public static boolean COMPONENT_PRESETS = true;
@Comment("Enable per user locale") @Comment("Enable per user locale")
public static boolean PER_USER_LOCALE = false; public static boolean PER_USER_LOCALE = false;

View File

@ -134,17 +134,28 @@ public final class GlobalFlagContainer extends FlagContainer {
stringClassMap = new HashMap<>(); stringClassMap = new HashMap<>();
// Register all default flags here // Register all default flags here
// Block type list flags
this.addFlag(BreakFlag.BREAK_NONE);
this.addFlag(UseFlag.USE_NONE);
this.addFlag(PlaceFlag.PLACE_NONE);
// Boolean flags // Boolean flags
this.addFlag(ExplosionFlag.EXPLOSION_FALSE);
this.addFlag(UntrustedVisitFlag.UNTRUSTED_VISIT_FLAG_TRUE);
this.addFlag(DenyExitFlag.DENY_EXIT_FLAG_FALSE);
this.addFlag(AnimalAttackFlag.ANIMAL_ATTACK_FALSE); this.addFlag(AnimalAttackFlag.ANIMAL_ATTACK_FALSE);
this.addFlag(AnimalInteractFlag.ANIMAL_INTERACT_FALSE); this.addFlag(AnimalInteractFlag.ANIMAL_INTERACT_FALSE);
this.addFlag(BlockBurnFlag.BLOCK_BURN_FALSE); this.addFlag(BlockBurnFlag.BLOCK_BURN_FALSE);
this.addFlag(BlockIgnitionFlag.BLOCK_IGNITION_TRUE); this.addFlag(BlockIgnitionFlag.BLOCK_IGNITION_TRUE);
this.addFlag(ChatFlag.CHAT_FLAG_TRUE);
this.addFlag(CopperOxideFlag.COPPER_OXIDE_FALSE);
this.addFlag(CoralDryFlag.CORAL_DRY_FALSE);
this.addFlag(CropGrowFlag.CROP_GROW_TRUE);
this.addFlag(DenyExitFlag.DENY_EXIT_FLAG_FALSE);
this.addFlag(DenyPortalsFlag.DENY_PORTALS_FALSE);
this.addFlag(DenyPortalTravelFlag.DENY_PORTAL_TRAVEL_FALSE);
this.addFlag(DeviceInteractFlag.DEVICE_INTERACT_FALSE); this.addFlag(DeviceInteractFlag.DEVICE_INTERACT_FALSE);
this.addFlag(DisablePhysicsFlag.DISABLE_PHYSICS_FALSE); this.addFlag(DisablePhysicsFlag.DISABLE_PHYSICS_FALSE);
this.addFlag(DropProtectionFlag.DROP_PROTECTION_FALSE); this.addFlag(DropProtectionFlag.DROP_PROTECTION_FALSE);
this.addFlag(EntityChangeBlockFlag.ENTITY_CHANGE_BLOCK_FALSE);
this.addFlag(ExplosionFlag.EXPLOSION_FALSE);
this.addFlag(ForcefieldFlag.FORCEFIELD_FALSE); this.addFlag(ForcefieldFlag.FORCEFIELD_FALSE);
this.addFlag(GrassGrowFlag.GRASS_GROW_TRUE); this.addFlag(GrassGrowFlag.GRASS_GROW_TRUE);
this.addFlag(HangingBreakFlag.HANGING_BREAK_FALSE); this.addFlag(HangingBreakFlag.HANGING_BREAK_FALSE);
@ -154,52 +165,53 @@ public final class GlobalFlagContainer extends FlagContainer {
this.addFlag(HostileInteractFlag.HOSTILE_INTERACT_FALSE); this.addFlag(HostileInteractFlag.HOSTILE_INTERACT_FALSE);
this.addFlag(IceFormFlag.ICE_FORM_FALSE); this.addFlag(IceFormFlag.ICE_FORM_FALSE);
this.addFlag(IceMeltFlag.ICE_MELT_FALSE); this.addFlag(IceMeltFlag.ICE_MELT_FALSE);
this.addFlag(InstabreakFlag.INSTABREAK_FALSE);
this.addFlag(InvincibleFlag.INVINCIBLE_FALSE);
this.addFlag(ItemDropFlag.ITEM_DROP_TRUE);
this.addFlag(KeepInventoryFlag.KEEP_INVENTORY_FALSE);
this.addFlag(KelpGrowFlag.KELP_GROW_TRUE); this.addFlag(KelpGrowFlag.KELP_GROW_TRUE);
this.addFlag(RedstoneFlag.REDSTONE_TRUE); this.addFlag(LeafDecayFlag.LEAF_DECAY_TRUE);
this.addFlag(ServerPlotFlag.SERVER_PLOT_FALSE); this.addFlag(LecternReadBookFlag.LECTERN_READ_BOOK_FALSE);
this.addFlag(MiscBreakFlag.MISC_BREAK_FALSE); this.addFlag(MiscBreakFlag.MISC_BREAK_FALSE);
this.addFlag(MobBreakFlag.MOB_BREAK_FALSE); this.addFlag(MobBreakFlag.MOB_BREAK_FALSE);
this.addFlag(MobPlaceFlag.MOB_PLACE_FALSE); this.addFlag(MobPlaceFlag.MOB_PLACE_FALSE);
this.addFlag(MiscInteractFlag.MISC_INTERACT_FALSE);
this.addFlag(MiscPlaceFlag.MISC_PLACE_FALSE);
this.addFlag(MycelGrowFlag.MYCEL_GROW_TRUE); this.addFlag(MycelGrowFlag.MYCEL_GROW_TRUE);
this.addFlag(NotifyEnterFlag.NOTIFY_ENTER_FALSE); this.addFlag(NotifyEnterFlag.NOTIFY_ENTER_FALSE);
this.addFlag(NotifyLeaveFlag.NOTIFY_LEAVE_FALSE); this.addFlag(NotifyLeaveFlag.NOTIFY_LEAVE_FALSE);
this.addFlag(NoWorldeditFlag.NO_WORLDEDIT_FALSE); this.addFlag(NoWorldeditFlag.NO_WORLDEDIT_FALSE);
this.addFlag(PlayerInteractFlag.PLAYER_INTERACT_FALSE); this.addFlag(PlayerInteractFlag.PLAYER_INTERACT_FALSE);
this.addFlag(PreventCreativeCopyFlag.PREVENT_CREATIVE_COPY_FALSE);
this.addFlag(PveFlag.PVE_FALSE); this.addFlag(PveFlag.PVE_FALSE);
this.addFlag(PvpFlag.PVP_FALSE); this.addFlag(PvpFlag.PVP_FALSE);
this.addFlag(RedstoneFlag.REDSTONE_TRUE);
this.addFlag(ServerPlotFlag.SERVER_PLOT_FALSE);
this.addFlag(SnowFormFlag.SNOW_FORM_FALSE); this.addFlag(SnowFormFlag.SNOW_FORM_FALSE);
this.addFlag(SnowMeltFlag.SNOW_MELT_TRUE); this.addFlag(SnowMeltFlag.SNOW_MELT_TRUE);
this.addFlag(SoilDryFlag.SOIL_DRY_FALSE); this.addFlag(SoilDryFlag.SOIL_DRY_FALSE);
this.addFlag(CoralDryFlag.CORAL_DRY_FALSE);
this.addFlag(TamedAttackFlag.TAMED_ATTACK_FALSE); this.addFlag(TamedAttackFlag.TAMED_ATTACK_FALSE);
this.addFlag(TamedInteractFlag.TAMED_INTERACT_FALSE); this.addFlag(TamedInteractFlag.TAMED_INTERACT_FALSE);
this.addFlag(UntrustedVisitFlag.UNTRUSTED_VISIT_FLAG_TRUE);
this.addFlag(VehicleBreakFlag.VEHICLE_BREAK_FALSE); this.addFlag(VehicleBreakFlag.VEHICLE_BREAK_FALSE);
this.addFlag(VehiclePlaceFlag.VEHICLE_PLACE_FALSE); this.addFlag(VehiclePlaceFlag.VEHICLE_PLACE_FALSE);
this.addFlag(VehicleUseFlag.VEHICLE_USE_FALSE); this.addFlag(VehicleUseFlag.VEHICLE_USE_FALSE);
this.addFlag(VillagerInteractFlag.VILLAGER_INTERACT_FALSE); this.addFlag(VillagerInteractFlag.VILLAGER_INTERACT_FALSE);
this.addFlag(VineGrowFlag.VINE_GROW_TRUE); this.addFlag(VineGrowFlag.VINE_GROW_TRUE);
this.addFlag(ItemDropFlag.ITEM_DROP_TRUE);
this.addFlag(InstabreakFlag.INSTABREAK_FALSE); // Double flags
this.addFlag(InvincibleFlag.INVINCIBLE_FALSE); this.addFlag(PriceFlag.PRICE_NOT_BUYABLE);
this.addFlag(ChatFlag.CHAT_FLAG_TRUE);
this.addFlag(MiscPlaceFlag.MISC_PLACE_FALSE);
this.addFlag(MiscInteractFlag.MISC_INTERACT_FALSE);
this.addFlag(KeepInventoryFlag.KEEP_INVENTORY_FALSE);
this.addFlag(PreventCreativeCopyFlag.PREVENT_CREATIVE_COPY_FALSE);
this.addFlag(LeafDecayFlag.LEAF_DECAY_TRUE);
this.addFlag(CropGrowFlag.CROP_GROW_TRUE);
this.addFlag(DenyPortalTravelFlag.DENY_PORTAL_TRAVEL_FALSE);
this.addFlag(DenyPortalsFlag.DENY_PORTALS_FALSE);
this.addFlag(LecternReadBookFlag.LECTERN_READ_BOOK_FALSE);
this.addFlag(EntityChangeBlockFlag.ENTITY_CHANGE_BLOCK_FALSE);
this.addFlag(CopperOxideFlag.COPPER_OXIDE_FALSE);
// Enum Flags // Enum Flags
this.addFlag(WeatherFlag.PLOT_WEATHER_FLAG_OFF);
this.addFlag(DenyTeleportFlag.DENY_TELEPORT_FLAG_NONE); this.addFlag(DenyTeleportFlag.DENY_TELEPORT_FLAG_NONE);
this.addFlag(TitlesFlag.TITLES_NONE);
this.addFlag(FlyFlag.FLIGHT_FLAG_DEFAULT); this.addFlag(FlyFlag.FLIGHT_FLAG_DEFAULT);
this.addFlag(LiquidFlowFlag.LIQUID_FLOW_DEFAULT); this.addFlag(LiquidFlowFlag.LIQUID_FLOW_DEFAULT);
this.addFlag(TitlesFlag.TITLES_NONE);
this.addFlag(WeatherFlag.PLOT_WEATHER_FLAG_OFF);
// Internal flags
this.addFlag(new AnalysisFlag(Collections.emptyList()));
this.addFlag(new DoneFlag(""));
// Integer flags // Integer flags
this.addFlag(AnimalCapFlag.ANIMAL_CAP_UNLIMITED); this.addFlag(AnimalCapFlag.ANIMAL_CAP_UNLIMITED);
@ -210,22 +222,10 @@ public final class GlobalFlagContainer extends FlagContainer {
this.addFlag(TimeFlag.TIME_DISABLED); this.addFlag(TimeFlag.TIME_DISABLED);
this.addFlag(VehicleCapFlag.VEHICLE_CAP_UNLIMITED); this.addFlag(VehicleCapFlag.VEHICLE_CAP_UNLIMITED);
// Timed flags
this.addFlag(FeedFlag.FEED_NOTHING);
this.addFlag(HealFlag.HEAL_NOTHING);
// Double flags
this.addFlag(PriceFlag.PRICE_NOT_BUYABLE);
// Block type list flags
this.addFlag(BreakFlag.BREAK_NONE);
this.addFlag(PlaceFlag.PLACE_NONE);
this.addFlag(UseFlag.USE_NONE);
// Misc // Misc
this.addFlag(BlockedCmdsFlag.BLOCKED_CMDS_FLAG_NONE);
this.addFlag(GamemodeFlag.GAMEMODE_FLAG_DEFAULT); this.addFlag(GamemodeFlag.GAMEMODE_FLAG_DEFAULT);
this.addFlag(GuestGamemodeFlag.GUEST_GAMEMODE_FLAG_DEFAULT); this.addFlag(GuestGamemodeFlag.GUEST_GAMEMODE_FLAG_DEFAULT);
this.addFlag(BlockedCmdsFlag.BLOCKED_CMDS_FLAG_NONE);
this.addFlag(KeepFlag.KEEP_FLAG_FALSE); this.addFlag(KeepFlag.KEEP_FLAG_FALSE);
this.addFlag(MusicFlag.MUSIC_FLAG_NONE); this.addFlag(MusicFlag.MUSIC_FLAG_NONE);
@ -235,9 +235,9 @@ public final class GlobalFlagContainer extends FlagContainer {
this.addFlag(FarewellFlag.FAREWELL_FLAG_EMPTY); this.addFlag(FarewellFlag.FAREWELL_FLAG_EMPTY);
this.addFlag(PlotTitleFlag.TITLE_FLAG_DEFAULT); this.addFlag(PlotTitleFlag.TITLE_FLAG_DEFAULT);
// Internal flags // Timed flags
this.addFlag(new AnalysisFlag(Collections.emptyList())); this.addFlag(FeedFlag.FEED_NOTHING);
this.addFlag(new DoneFlag("")); this.addFlag(HealFlag.HEAL_NOTHING);
} }
public static void setup() { public static void setup() {

View File

@ -526,15 +526,15 @@
"flags.flag_category_mixed": "<gray>Mixed Value Flags</gray>", "flags.flag_category_mixed": "<gray>Mixed Value Flags</gray>",
"flags.flag_description_entity_cap": "<gray>Set to an integer value to limit the amount of entities on the plot.</gray>", "flags.flag_description_entity_cap": "<gray>Set to an integer value to limit the amount of entities on the plot.</gray>",
"flags.flag_description_explosion": "<gray>Set to `true` to enable explosions in the plot, and `false` to disable them.</gray>", "flags.flag_description_explosion": "<gray>Set to `true` to enable explosions in the plot, and `false` to disable them.</gray>",
"flags.flag_description_music": "<gray>Set to a music disk ID (item name) to play the music disc inside of the plot.</gray>", "flags.flag_description_music": "<gray>Set to a music disk ID (item name) to play the music disc inside the plot.</gray>",
"flags.flag_description_flight": "<gray>Set to `true` to enable flight within the plot when in survival or adventure mode</gray>\n<gray>set to `default` to use the gamemode default, and `false` to disable flight entirely.</gray>", "flags.flag_description_flight": "<gray>Set to `true` to enable flight within the plot when in survival or adventure mode</gray>\n<gray>set to `default` to use the gamemode default, and `false` to disable flight entirely.</gray>",
"flags.flag_description_untrusted": "<gray>Set to `false` to disallow untrusted players from visiting the plot.</gray>", "flags.flag_description_untrusted": "<gray>Set to `false` to disallow untrusted players from visiting the plot.</gray>",
"flags.flag_description_deny_exit": "<gray>Set to `true` to disallow players from exiting the plot.</gray>", "flags.flag_description_deny_exit": "<gray>Set to `true` to disallow players from exiting the plot.</gray>",
"flags.flag_description_chat": "<gray>Set to `false` to prevent plot chat on the plot.</gray>", "flags.flag_description_chat": "<gray>Set to `false` to prevent plot chat on the plot.</gray>",
"flags.flag_description_description": "<gray>Plot description. Supports MiniMessage/Adventure.</gray>", "flags.flag_description_description": "<gray>Plot description. Supports MiniMessage/Adventure.</gray>",
"flags.flag_description_greeting": "<gray>Message sent to players on plot entry. Supports '&' color codes.</gray>", "flags.flag_description_greeting": "<gray>Message sent to players on plot entry.</gray>",
"flags.flag_description_farewell": "<gray>Message sent to players when leaving the plot. Supports '&' color codes.</gray>", "flags.flag_description_farewell": "<gray>Message sent to players when leaving the plot.</gray>",
"flags.flag_description_weather": "<gray>Specifies the weather conditions inside of the plot.</gray>", "flags.flag_description_weather": "<gray>Specifies the weather conditions inside the plot.</gray>",
"flags.flag_description_animal_attack": "<gray>Set to `true` to allow animals to be attacked in the plot.</gray>", "flags.flag_description_animal_attack": "<gray>Set to `true` to allow animals to be attacked in the plot.</gray>",
"flags.flag_description_animal_cap": "<gray>Set to an integer value to limit the amount of animals on the plot.</gray>", "flags.flag_description_animal_cap": "<gray>Set to an integer value to limit the amount of animals on the plot.</gray>",
"flags.flag_description_animal_interact": "<gray>Set to `true` to allow animals to be interacted with in the plot.</gray>", "flags.flag_description_animal_interact": "<gray>Set to `true` to allow animals to be interacted with in the plot.</gray>",
@ -557,8 +557,8 @@
"flags.flag_description_ice_form": "<gray>Set to `true` to allow ice to form in the plot.</gray>", "flags.flag_description_ice_form": "<gray>Set to `true` to allow ice to form in the plot.</gray>",
"flags.flag_description_ice_melt": "<gray>Set to `false` to disable ice melting in the plot.</gray>", "flags.flag_description_ice_melt": "<gray>Set to `false` to disable ice melting in the plot.</gray>",
"flags.flag_description_instabreak": "<gray>Set to `true` to allow blocks to be instantaneously broken in survival mode.</gray>", "flags.flag_description_instabreak": "<gray>Set to `true` to allow blocks to be instantaneously broken in survival mode.</gray>",
"flags.flag_description_invincible": "<gray>Set to `true` to prevent players from taking damage inside of the plot.</gray>", "flags.flag_description_invincible": "<gray>Set to `true` to prevent players from taking damage inside the plot.</gray>",
"flags.flag_description_item_drop": "<gray>Set to `false` to prevent items from being dropped inside of the plot.</gray>", "flags.flag_description_item_drop": "<gray>Set to `false` to prevent items from being dropped inside the plot.</gray>",
"flags.flag_description_kelp_grow": "<gray>Set to `false` to prevent kelp from growing in the plot.</gray>", "flags.flag_description_kelp_grow": "<gray>Set to `false` to prevent kelp from growing in the plot.</gray>",
"flags.flag_description_liquid_flow": "<gray>Set to `false` to disable liquids from flowing within the plot.</gray>", "flags.flag_description_liquid_flow": "<gray>Set to `false` to disable liquids from flowing within the plot.</gray>",
"flags.flag_description_misc_break": "<gray>Set to `true` to allow guests to break miscellaneous items.</gray>", "flags.flag_description_misc_break": "<gray>Set to `true` to allow guests to break miscellaneous items.</gray>",
@ -603,10 +603,10 @@
"flags.flag_description_guest_gamemode": "<gray>Determines the guest gamemode in the plot.</gray>", "flags.flag_description_guest_gamemode": "<gray>Determines the guest gamemode in the plot.</gray>",
"flags.flag_description_blocked_cmds": "<gray>A list of commands that are blocked in the plot.</gray>", "flags.flag_description_blocked_cmds": "<gray>A list of commands that are blocked in the plot.</gray>",
"flags.flag_description_keep": "<gray>Prevents the plot from expiring. Can be set to: true, false, the number of milliseconds to keep the plot for or a timestamp (3w 2d 5h).</gray>", "flags.flag_description_keep": "<gray>Prevents the plot from expiring. Can be set to: true, false, the number of milliseconds to keep the plot for or a timestamp (3w 2d 5h).</gray>",
"flags.flag_description_keep_inventory": "<gray>Prevents players from dropping their items when they die inside of the plot.</gray>", "flags.flag_description_keep_inventory": "<gray>Prevents players from dropping their items when they die inside the plot.</gray>",
"flags.flag_description_deny_portal_travel": "<gray>Prevents players from travelling across dimensions by using portals.</gray>", "flags.flag_description_deny_portal_travel": "<gray>Prevents players from travelling across dimensions by using portals.</gray>",
"flags.flag_description_deny_portals": "<gray>Prevents players from creating portals of any kind.</gray>", "flags.flag_description_deny_portals": "<gray>Prevents players from creating portals of any kind.</gray>",
"flags.flag_description_lectern_read_book": "<gray>Prevents players taking books from lecterns.</gray>", "flags.flag_description_lectern_read_book": "<gray>Prevent players taking books from lecterns.</gray>",
"flags.flag_description_prevent_creative_copy": "<gray>Prevents people from copying item NBT data in the plot unless they're added as members.</gray>", "flags.flag_description_prevent_creative_copy": "<gray>Prevents people from copying item NBT data in the plot unless they're added as members.</gray>",
"flags.flag_description_leaf_decay": "<gray>Set to `false` to prevent leaves from decaying.", "flags.flag_description_leaf_decay": "<gray>Set to `false` to prevent leaves from decaying.",
"flags.flag_error_boolean": "Flag value must be a boolean (true | false).", "flags.flag_error_boolean": "Flag value must be a boolean (true | false).",

View File

@ -33,9 +33,9 @@ is to provide a lag-free and smooth experience.
* [Contributing](https://github.com/IntellectualSites/.github/blob/main/CONTRIBUTING.md) * [Contributing](https://github.com/IntellectualSites/.github/blob/main/CONTRIBUTING.md)
### Developer Resources ### Developer Resources
* [API Documentation](https://intellectualsites.github.io/plotsquared-documentation/api/API-Documentation) * [API Documentation](https://intellectualsites.github.io/plotsquared-documentation/api/api-documentation)
* [Event API](https://intellectualsites.github.io/plotsquared-documentation/api/Event-API) * [Event API](https://intellectualsites.github.io/plotsquared-documentation/api/event-api)
* [Flag API](https://intellectualsites.github.io/plotsquared-documentation/api/API-Flag) * [Flag API](https://intellectualsites.github.io/plotsquared-documentation/api/flag-api)
# Official Addons # Official Addons
* [Plot2Dynmap](http://www.spigotmc.org/resources/plot2dynmap.1292/) * [Plot2Dynmap](http://www.spigotmc.org/resources/plot2dynmap.1292/)