mirror of
https://github.com/RoinujNosde/SimpleClans.git
synced 2026-11-05 09:10:14 -05:00
Compare commits
5
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
776acbebbe | ||
|
|
aa70a7653e | ||
|
|
046aa1d96d | ||
|
|
e44775e994 | ||
|
|
43da5bd1f1 |
No files matched your search
@@ -1,5 +1,19 @@
|
||||
# Changelog
|
||||
|
||||
## [2.18.1](https://github.com/RoinujNosde/SimpleClans/compare/v2.18.0...v2.18.1) (2022-11-29)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* added check for clan_member on land commands ([fc81e76](https://github.com/RoinujNosde/SimpleClans/commit/fc81e765211bebe22a7a6aa5d5158754580bbdc5))
|
||||
* attempt at fixing NPE on getAllClanPlayers ([26ba9f7](https://github.com/RoinujNosde/SimpleClans/commit/26ba9f73296a772eaa698d2ede6fbc3831da850c))
|
||||
* **bungee:** error deserializing clan banners ([56c7908](https://github.com/RoinujNosde/SimpleClans/commit/56c7908c332167cec9cca6a4ea054977d0d68b9f))
|
||||
* channel auto creation setting not respected on join/link ([7f9d133](https://github.com/RoinujNosde/SimpleClans/commit/7f9d133051b9011837d0a5114abc6c3637a3f02c))
|
||||
* default ranks were getting re-added on config load ([7a37382](https://github.com/RoinujNosde/SimpleClans/commit/7a37382264ff4dd5456f6930045b5102bf491897))
|
||||
* missing getHandlerList on HomeRegroupEvent ([#338](https://github.com/RoinujNosde/SimpleClans/issues/338)) ([8fa465d](https://github.com/RoinujNosde/SimpleClans/commit/8fa465da385f36b1fb075031c375ef94df78ea52))
|
||||
* money was not given back when channel creation failed ([#336](https://github.com/RoinujNosde/SimpleClans/issues/336)) ([d8cb61b](https://github.com/RoinujNosde/SimpleClans/commit/d8cb61b0fc9584bb58f421faf98596816621053f))
|
||||
* wrong path of discord economy section ([#334](https://github.com/RoinujNosde/SimpleClans/issues/334)) ([3f1b06d](https://github.com/RoinujNosde/SimpleClans/commit/3f1b06dcf996e51a878b7fc281069e236ebcbfce))
|
||||
|
||||
## [2.18.0](https://github.com/RoinujNosde/SimpleClans/compare/v2.17.0...v2.18.0) (2022-10-14)
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>net.sacredlabyrinth.phaed.simpleclans</groupId>
|
||||
<artifactId>SimpleClans</artifactId>
|
||||
<version>2.18.1-SNAPSHOT</version>
|
||||
<version>2.18.2-SNAPSHOT</version>
|
||||
<name>SimpleClans</name>
|
||||
<url>https://www.spigotmc.org/resources/simpleclans.71242/</url>
|
||||
|
||||
|
||||
@@ -2,15 +2,15 @@ package net.sacredlabyrinth.phaed.simpleclans.chat;
|
||||
|
||||
import net.sacredlabyrinth.phaed.simpleclans.SimpleClans;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.managers.ChatManager;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.managers.PermissionsManager;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.managers.SettingsManager;
|
||||
|
||||
public interface ChatHandler {
|
||||
|
||||
SimpleClans plugin = SimpleClans.getInstance();
|
||||
|
||||
SettingsManager settingsManager = plugin.getSettingsManager();
|
||||
|
||||
ChatManager chatManager = plugin.getChatManager();
|
||||
PermissionsManager permissionsManager = plugin.getPermissionsManager();
|
||||
|
||||
void sendMessage(SCMessage message);
|
||||
|
||||
|
||||
+20
-1
@@ -13,6 +13,7 @@ import static net.sacredlabyrinth.phaed.simpleclans.managers.SettingsManager.Con
|
||||
import static net.sacredlabyrinth.phaed.simpleclans.managers.SettingsManager.ConfigField.PERFORMANCE_USE_BUNGEECORD;
|
||||
import static org.bukkit.Bukkit.getPluginManager;
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
public class SpigotChatHandler implements ChatHandler {
|
||||
|
||||
@Override
|
||||
@@ -30,7 +31,7 @@ public class SpigotChatHandler implements ChatHandler {
|
||||
if (event.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
message.setContent(event.getMessage());
|
||||
message.setContent(stripColorsAndFormatsPerPermission(message.getSender(),event.getMessage()));
|
||||
|
||||
ConfigField configField = ConfigField.valueOf(String.format("%sCHAT_FORMAT",
|
||||
message.getSource() == DISCORD ? "DISCORD" : message.getChannel()));
|
||||
@@ -47,6 +48,24 @@ public class SpigotChatHandler implements ChatHandler {
|
||||
}.runTask(plugin);
|
||||
}
|
||||
|
||||
private String stripColorsAndFormatsPerPermission(ClanPlayer sender, String message) {
|
||||
if (!permissionsManager.has(sender.toPlayer(), "simpleclans.member.chat.color")) {
|
||||
message = stripColors(message);
|
||||
}
|
||||
if (!permissionsManager.has(sender.toPlayer(), "simpleclans.member.chat.format")) {
|
||||
message = stripFormats(message);
|
||||
}
|
||||
return message;
|
||||
}
|
||||
|
||||
private String stripColors(String message) {
|
||||
return message.replaceAll("[§&][0-9a-fA-FxX]", "");
|
||||
}
|
||||
|
||||
private String stripFormats(String message) {
|
||||
return message.replaceAll("[§&][k-orK-OR]", "");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canHandle(SCMessage.Source source) {
|
||||
return source == SPIGOT || (source == PROXY && settingsManager.is(PERFORMANCE_USE_BUNGEECORD))
|
||||
|
||||
+1
-1
@@ -45,7 +45,7 @@ public class SpyChatHandler implements ChatHandler {
|
||||
private List<ClanPlayer> getOnlineSpies() {
|
||||
return Bukkit.getOnlinePlayers().stream().
|
||||
filter(Objects::nonNull).
|
||||
filter(player -> plugin.getPermissionsManager().has(player, "simpleclans.admin.all-seeing-eye")).
|
||||
filter(player -> permissionsManager.has(player, "simpleclans.admin.all-seeing-eye")).
|
||||
map(player -> plugin.getClanManager().getCreateClanPlayer(player.getUniqueId())).
|
||||
filter(Objects::nonNull).
|
||||
filter(clanPlayer -> !clanPlayer.isMuted()).
|
||||
|
||||
@@ -6,16 +6,11 @@ import net.sacredlabyrinth.phaed.simpleclans.ChatBlock;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.Clan;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.SimpleClans;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.commands.data.*;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.managers.SettingsManager;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.ui.InventoryDrawer;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.ui.frames.CoordsFrame;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.ui.frames.RosterFrame;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.utils.VanishUtils;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import static net.sacredlabyrinth.phaed.simpleclans.SimpleClans.lang;
|
||||
import static net.sacredlabyrinth.phaed.simpleclans.managers.SettingsManager.ConfigField.*;
|
||||
import static org.bukkit.ChatColor.RED;
|
||||
|
||||
@CommandAlias("%clan")
|
||||
@@ -23,8 +18,6 @@ import static org.bukkit.ChatColor.RED;
|
||||
public class DataCommands extends BaseCommand {
|
||||
@Dependency
|
||||
private SimpleClans plugin;
|
||||
@Dependency
|
||||
private SettingsManager settings;
|
||||
|
||||
@Subcommand("%vitals")
|
||||
@CommandPermission("simpleclans.member.vitals")
|
||||
@@ -56,10 +49,6 @@ public class DataCommands extends BaseCommand {
|
||||
@CommandPermission("simpleclans.member.roster")
|
||||
@Description("{@@command.description.roster}")
|
||||
public void roster(Player player, Clan clan) {
|
||||
if (settings.is(ENABLE_GUI)) {
|
||||
InventoryDrawer.open(new RosterFrame(player, null, clan));
|
||||
return;
|
||||
}
|
||||
ClanRoster r = new ClanRoster(plugin, player, clan);
|
||||
r.send();
|
||||
}
|
||||
@@ -70,10 +59,6 @@ public class DataCommands extends BaseCommand {
|
||||
@HelpSearchTags("local location")
|
||||
@Description("{@@command.description.coords}")
|
||||
public void coords(Player player, Clan clan) {
|
||||
if (settings.is(ENABLE_GUI)) {
|
||||
InventoryDrawer.open(new CoordsFrame(player, null, clan));
|
||||
return;
|
||||
}
|
||||
if (VanishUtils.getNonVanished(player, clan).size() == 1) {
|
||||
ChatBlock.sendMessage(player, RED + lang("you.are.the.only.member.online", player));
|
||||
return;
|
||||
|
||||
+2
-25
@@ -20,8 +20,7 @@ import net.sacredlabyrinth.phaed.simpleclans.managers.RequestManager;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.managers.SettingsManager;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.managers.StorageManager;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.ui.InventoryDrawer;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.ui.frames.*;
|
||||
import org.bukkit.Bukkit;
|
||||
import net.sacredlabyrinth.phaed.simpleclans.ui.frames.MainFrame;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
@@ -29,7 +28,6 @@ import java.text.MessageFormat;
|
||||
import java.util.Comparator;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
import static net.sacredlabyrinth.phaed.simpleclans.SimpleClans.lang;
|
||||
import static net.sacredlabyrinth.phaed.simpleclans.conversation.CreateClanNamePrompt.NAME_KEY;
|
||||
@@ -87,10 +85,6 @@ public class GeneralCommands extends BaseCommand {
|
||||
@CommandPermission("simpleclans.anyone.leaderboard")
|
||||
@Description("{@@command.description.leaderboard}")
|
||||
public void leaderboard(CommandSender sender) {
|
||||
if (settings.is(ENABLE_GUI) && sender instanceof Player) {
|
||||
InventoryDrawer.open(new LeaderboardFrame((Player) sender, null));
|
||||
return;
|
||||
}
|
||||
Leaderboard l = new Leaderboard(plugin, sender);
|
||||
l.send();
|
||||
}
|
||||
@@ -100,12 +94,7 @@ public class GeneralCommands extends BaseCommand {
|
||||
@CommandPermission("simpleclans.anyone.lookup")
|
||||
@Description("{@@command.description.lookup.other}")
|
||||
public void lookup(CommandSender sender, @Name("player") ClanPlayerInput player) {
|
||||
UUID uuid = player.getClanPlayer().getUniqueId();
|
||||
if (settings.is(ENABLE_GUI) && sender instanceof Player) {
|
||||
InventoryDrawer.open(new PlayerDetailsFrame((Player) sender, null, Bukkit.getOfflinePlayer(uuid)));
|
||||
return;
|
||||
}
|
||||
Lookup l = new Lookup(plugin, sender, uuid);
|
||||
Lookup l = new Lookup(plugin, sender, player.getClanPlayer().getUniqueId());
|
||||
l.send();
|
||||
}
|
||||
|
||||
@@ -113,10 +102,6 @@ public class GeneralCommands extends BaseCommand {
|
||||
@CommandPermission("simpleclans.member.lookup")
|
||||
@Description("{@@command.description.lookup}")
|
||||
public void lookup(Player sender) {
|
||||
if (settings.is(ENABLE_GUI)) {
|
||||
InventoryDrawer.open(new PlayerDetailsFrame(sender, null, sender));
|
||||
return;
|
||||
}
|
||||
Lookup l = new Lookup(plugin, sender, sender.getUniqueId());
|
||||
l.send();
|
||||
}
|
||||
@@ -149,10 +134,6 @@ public class GeneralCommands extends BaseCommand {
|
||||
@CommandPermission("simpleclans.anyone.roster")
|
||||
@Description("{@@command.description.roster.other}")
|
||||
public void roster(CommandSender sender, @Conditions("verified") @Name("clan") ClanInput clan) {
|
||||
if (settings.is(ENABLE_GUI) && sender instanceof Player) {
|
||||
InventoryDrawer.open(new RosterFrame(((Player) sender), null, clan.getClan()));
|
||||
return;
|
||||
}
|
||||
ClanRoster r = new ClanRoster(plugin, sender, clan.getClan());
|
||||
r.send();
|
||||
}
|
||||
@@ -286,10 +267,6 @@ public class GeneralCommands extends BaseCommand {
|
||||
@CommandCompletion("@clan_list_type @order")
|
||||
public void list(CommandSender sender, @Optional @Values("@clan_list_type") String type,
|
||||
@Optional @Single @Values("@order") String order) {
|
||||
if (settings.is(ENABLE_GUI) && sender instanceof Player) {
|
||||
InventoryDrawer.open(new ClanListFrame(null, (Player) sender));
|
||||
return;
|
||||
}
|
||||
ClanList list = new ClanList(plugin, sender, type, order);
|
||||
list.send();
|
||||
}
|
||||
|
||||
@@ -190,7 +190,7 @@ public class SCPlayerListener extends SCListener {
|
||||
if (duplicate != null) {
|
||||
plugin.getLogger().warning(String.format("Found duplicate for %s, UUIDs: %s, %s", player.getName(),
|
||||
player.getUniqueId(), duplicate.getUniqueId()));
|
||||
duplicate.setName(duplicate.getName() + "_duplicate");
|
||||
duplicate.setName(duplicate.getUniqueId().toString());
|
||||
plugin.getStorageManager().updatePlayerName(duplicate);
|
||||
}
|
||||
if (cp != null) {
|
||||
|
||||
@@ -103,6 +103,11 @@ permissions:
|
||||
description: Can use ally chat
|
||||
simpleclans.member.chat:
|
||||
description: Can use clan chat
|
||||
simpleclans.member.chat.color:
|
||||
description: Can use colors in chat
|
||||
simpleclans.member.chat.format:
|
||||
description: Can use formats in chat
|
||||
default: false
|
||||
simpleclans.member.can-join:
|
||||
description: Can join clans
|
||||
simpleclans.member.home:
|
||||
@@ -298,6 +303,7 @@ permissions:
|
||||
simpleclans.member.kills: true
|
||||
simpleclans.member.bank: true
|
||||
simpleclans.member.fee-check: true
|
||||
simpleclans.member.chat.color: true
|
||||
simpleclans.leader.*:
|
||||
description: Permissions for those who can be clan leaders
|
||||
default: true
|
||||
|
||||
Reference in new issue
Block a user