feat: check visibility of player in /plot near

This commit is contained in:
Pierre Maurice Schwang 2022-10-01 21:55:14 +02:00
parent d1a85982fb
commit 6d4cbb2df6
2 changed files with 7 additions and 2 deletions

View File

@ -26,6 +26,7 @@ import com.plotsquared.core.util.task.RunnableVal2;
import com.plotsquared.core.util.task.RunnableVal3;
import net.kyori.adventure.text.minimessage.Template;
import java.util.List;
import java.util.concurrent.CompletableFuture;
@CommandDeclaration(command = "near",
@ -48,9 +49,13 @@ public class Near extends Command {
final Plot plot = check(player.getCurrentPlot(), TranslatableCaption.of("errors.not_in_plot"));
player.sendMessage(
TranslatableCaption.of("near.plot_near"),
Template.of("list", StringMan.join(plot.getPlayersInPlot(), ", "))
Template.of("list", StringMan.join(getPlayersInPlotVisible(plot, player), ", "))
);
return CompletableFuture.completedFuture(true);
}
private List<PlotPlayer<?>> getPlayersInPlotVisible(Plot plot, PlotPlayer<?> executor) {
return plot.getPlayersInPlot().stream().filter(executor::canSee).toList();
}
}