Only show admin chat server when message is remote

This commit is contained in:
Ashcon Partovi 2018-05-22 15:35:46 -07:00
parent 9b59cc0cde
commit 06fd77595f
No known key found for this signature in database
GPG Key ID: 97468B9EF2123630
3 changed files with 7 additions and 11 deletions

View File

@ -34,7 +34,6 @@ public interface ChatDoc {
@Serialize @Serialize
interface Complete extends Base { interface Complete extends Base {
@Nullable PlayerId sender(); @Nullable PlayerId sender();
@Serialize(false) default boolean local() { return false; }
} }
enum Type { enum Type {

View File

@ -38,11 +38,13 @@ public class AdminChannel extends SimpleChannel implements PermissibleChannel {
private final SettingManagerProvider settings; private final SettingManagerProvider settings;
private final PermissionRegistry permissions; private final PermissionRegistry permissions;
private final Server localServer;
private final ServerStore serverStore; private final ServerStore serverStore;
@Inject AdminChannel(PermissionRegistry permissions, SettingManagerProvider settings, ServerStore serverStore) { @Inject AdminChannel(PermissionRegistry permissions, SettingManagerProvider settings, Server localServer, ServerStore serverStore) {
this.settings = settings; this.settings = settings;
this.permissions = permissions; this.permissions = permissions;
this.localServer = localServer;
this.serverStore = serverStore; this.serverStore = serverStore;
} }
@ -70,16 +72,12 @@ public class AdminChannel extends SimpleChannel implements PermissibleChannel {
@Override @Override
public BaseComponent format(Chat chat, PlayerComponent player, String message) { public BaseComponent format(Chat chat, PlayerComponent player, String message) {
BaseComponent stub; Component component = new Component();
if(chat.local()) { if(!localServer._id().equals(chat.server_id())) {
stub = player;
} else {
final Server server = serverStore.byId(chat.server_id()); final Server server = serverStore.byId(chat.server_id());
stub = ServerFormatter.light.nameWithDatacenter(server); component.extra(ServerFormatter.light.nameWithDatacenter(server)).extra(" ");
stub.addExtra(" ");
stub.addExtra(player);
} }
return new Component(stub).extra(": ").extra(message); return component.extra(player).extra(": ").extra(message);
} }
@Override @Override

View File

@ -85,7 +85,6 @@ public class ChatCreator implements PluginFacet, Listener {
public ChatDoc.Type type() { return chat.type(); } public ChatDoc.Type type() { return chat.type(); }
public Instant sent_at() { return chat.sent_at(); } public Instant sent_at() { return chat.sent_at(); }
public ChatDoc.Broadcast broadcast() { return chat.broadcast(); } public ChatDoc.Broadcast broadcast() { return chat.broadcast(); }
public boolean local() { return true; }
}; };
} }