mirror of
https://github.com/TotalFreedomMC/TF-EssentialsX.git
synced 2025-08-06 20:43:11 +00:00
Allow toggling public broadcast of AFK messages (#2780)
(description from #2608) So... I've implemented a system for toggling whether or not AFK messages are broadcasted to the entire server and also changed a few things along the way: 1. I added a config toggle broadcast-afk-message that will change whether AFK messages are broadcast globally or not. 2. In both cases the AFK target now recieves a "self-oriented" message instead of the global default. Basically just says "You are now/no longer AFK". This would be a change from the default behaviour. 3. I created a way to exclude certain IUsers from broadcastMessage messages using an IUser... varargs parameter. I wasn't too sure how to implement the exclusion, but this seemed like a fairly good option. I'm not too sure if what I've come up with is an optimal solution, but it's been tested and confirmed to work as intended. closes #2116, closes #959 --- * implement toggle for broadcasting afk message * add "self-private" AFK messages, implement exclusion system for broadcastMessage * remove rogue import, clarify config comment * move excluded collection creation out of loop, use set instead * use set instead of varargs * ok but actually use the set this time * address requested changes * update missed message section * move from Collection to Predicate for broadcast exclusion * update Predicate variable name * use identity comparison (cleanup) * clean up unnecessary imports, remove extra spacing
This commit is contained in:
parent
5082badca4
commit
6f61010cf9
8 changed files with 71 additions and 21 deletions
|
@ -513,6 +513,7 @@ public class Settings implements net.ess3.api.ISettings {
|
|||
sleepIgnoresAfkPlayers = _sleepIgnoresAfkPlayers();
|
||||
afkListName = _getAfkListName();
|
||||
isAfkListName = !afkListName.equalsIgnoreCase("none");
|
||||
broadcastAfkMessage = _broadcastAfkMessage();
|
||||
itemSpawnBl = _getItemSpawnBlacklist();
|
||||
loginAttackDelay = _getLoginAttackDelay();
|
||||
signUsePerSecond = _getSignUsePerSecond();
|
||||
|
@ -949,6 +950,17 @@ public class Settings implements net.ess3.api.ISettings {
|
|||
return afkListName;
|
||||
}
|
||||
|
||||
private boolean broadcastAfkMessage;
|
||||
|
||||
@Override
|
||||
public boolean broadcastAfkMessage() {
|
||||
return broadcastAfkMessage;
|
||||
}
|
||||
|
||||
private boolean _broadcastAfkMessage() {
|
||||
return config.getBoolean("broadcast-afk-message", true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean areDeathMessagesEnabled() {
|
||||
return config.getBoolean("death-messages", true);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue