mirror of
https://github.com/IntellectualSites/PlotSquared.git
synced 2025-08-25 15:25:34 +02:00
Compare commits
1 Commits
main
...
feat/v7/ab
Author | SHA1 | Date | |
---|---|---|---|
![]() |
c5713c9b05 |
2
.github/workflows/build-pr.yml
vendored
2
.github/workflows/build-pr.yml
vendored
@@ -9,7 +9,7 @@ jobs:
|
|||||||
os: [ ubuntu-latest, windows-latest, macos-latest ]
|
os: [ ubuntu-latest, windows-latest, macos-latest ]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repository
|
- name: Checkout Repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
- name: Validate Gradle Wrapper
|
- name: Validate Gradle Wrapper
|
||||||
uses: gradle/actions/wrapper-validation@v4
|
uses: gradle/actions/wrapper-validation@v4
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
|
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
@@ -9,7 +9,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repository
|
- name: Checkout Repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
- name: Validate Gradle Wrapper
|
- name: Validate Gradle Wrapper
|
||||||
uses: gradle/actions/wrapper-validation@v4
|
uses: gradle/actions/wrapper-validation@v4
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
|
2
.github/workflows/codeql.yml
vendored
2
.github/workflows/codeql.yml
vendored
@@ -20,7 +20,7 @@ jobs:
|
|||||||
language: [ 'java' ]
|
language: [ 'java' ]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
uses: actions/setup-java@v4
|
uses: actions/setup-java@v4
|
||||||
with:
|
with:
|
||||||
|
@@ -204,6 +204,9 @@ public final class PlaceholderRegistry {
|
|||||||
this.createPlaceholder("currentplot_x", (player, plot) -> Integer.toString(plot.getId().getX()));
|
this.createPlaceholder("currentplot_x", (player, plot) -> Integer.toString(plot.getId().getX()));
|
||||||
this.createPlaceholder("currentplot_y", (player, plot) -> Integer.toString(plot.getId().getY()));
|
this.createPlaceholder("currentplot_y", (player, plot) -> Integer.toString(plot.getId().getY()));
|
||||||
this.createPlaceholder("currentplot_xy", (player, plot) -> plot.getId().toString());
|
this.createPlaceholder("currentplot_xy", (player, plot) -> plot.getId().toString());
|
||||||
|
this.createPlaceholder("currentplot_abs_x", (player, plot) -> Integer.toString(plot.getId().getX()), true);
|
||||||
|
this.createPlaceholder("currentplot_abs_y", (player, plot) -> Integer.toString(plot.getId().getY()), true);
|
||||||
|
this.createPlaceholder("currentplot_abs_xy", (player, plot) -> plot.getId().toString(), true);
|
||||||
this.createPlaceholder("currentplot_rating", (player, plot) -> {
|
this.createPlaceholder("currentplot_rating", (player, plot) -> {
|
||||||
if (Double.isNaN(plot.getAverageRating())) {
|
if (Double.isNaN(plot.getAverageRating())) {
|
||||||
return legacyComponent(TranslatableCaption.of("placeholder.nan"), player);
|
return legacyComponent(TranslatableCaption.of("placeholder.nan"), player);
|
||||||
@@ -253,7 +256,23 @@ public final class PlaceholderRegistry {
|
|||||||
final @NonNull String key,
|
final @NonNull String key,
|
||||||
final @NonNull BiFunction<PlotPlayer<?>, Plot, String> placeholderFunction
|
final @NonNull BiFunction<PlotPlayer<?>, Plot, String> placeholderFunction
|
||||||
) {
|
) {
|
||||||
this.registerPlaceholder(new PlotSpecificPlaceholder(key) {
|
this.createPlaceholder(key, placeholderFunction, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a functional placeholder
|
||||||
|
*
|
||||||
|
* @param key Placeholder key
|
||||||
|
* @param placeholderFunction Placeholder generator. Cannot return null
|
||||||
|
* @param requireAbsolute If the plot given to the placeholder should be the absolute (not base) plot
|
||||||
|
* @since TODO
|
||||||
|
*/
|
||||||
|
public void createPlaceholder(
|
||||||
|
final @NonNull String key,
|
||||||
|
final @NonNull BiFunction<PlotPlayer<?>, Plot, String> placeholderFunction,
|
||||||
|
final boolean requireAbsolute
|
||||||
|
) {
|
||||||
|
this.registerPlaceholder(new PlotSpecificPlaceholder(key, requireAbsolute) {
|
||||||
@Override
|
@Override
|
||||||
public @NonNull String getValue(final @NonNull PlotPlayer<?> player, final @NonNull Plot plot) {
|
public @NonNull String getValue(final @NonNull PlotPlayer<?> player, final @NonNull Plot plot) {
|
||||||
return placeholderFunction.apply(player, plot);
|
return placeholderFunction.apply(player, plot);
|
||||||
|
@@ -27,14 +27,28 @@ import org.checkerframework.checker.nullness.qual.NonNull;
|
|||||||
*/
|
*/
|
||||||
public abstract class PlotSpecificPlaceholder extends Placeholder {
|
public abstract class PlotSpecificPlaceholder extends Placeholder {
|
||||||
|
|
||||||
|
private final boolean requireAbsolute;
|
||||||
|
|
||||||
public PlotSpecificPlaceholder(final @NonNull String key) {
|
public PlotSpecificPlaceholder(final @NonNull String key) {
|
||||||
|
this(key, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a functional placeholder
|
||||||
|
*
|
||||||
|
* @param key Placeholder key
|
||||||
|
* @param requireAbsolute If the plot given to the placeholder should be the absolute (not base) plot
|
||||||
|
* @since TODO
|
||||||
|
*/
|
||||||
|
public PlotSpecificPlaceholder(final @NonNull String key, final boolean requireAbsolute) {
|
||||||
super(key);
|
super(key);
|
||||||
|
this.requireAbsolute = requireAbsolute;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public @NonNull
|
public @NonNull
|
||||||
final String getValue(final @NonNull PlotPlayer<?> player) {
|
final String getValue(final @NonNull PlotPlayer<?> player) {
|
||||||
final Plot plot = player.getCurrentPlot();
|
final Plot plot = requireAbsolute ? player.getLocation().getPlotAbs() : player.getCurrentPlot();
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user