Skip to content

Commit

Permalink
chan: store & manipulate channels themselves rather than strings
Browse files Browse the repository at this point in the history
  • Loading branch information
Snaipe committed Sep 1, 2019
1 parent 3074d88 commit 40f2d5e
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 9 deletions.
2 changes: 1 addition & 1 deletion src/main/java/cool/foyer/chat/Chat.java
Expand Up @@ -15,7 +15,7 @@
public class Chat {

private final ProxiedPlayer player;
private String focus;
private Channel focus;
private final Set<Channel> channels = new HashSet<>();

}
5 changes: 2 additions & 3 deletions src/main/java/cool/foyer/chat/ChatHandler.java
Expand Up @@ -26,8 +26,7 @@ public void onLogin(PostLoginEvent event) {
chat.focus(plugin.defaultFocus());

var defaults = plugin.defaultChannels();
for (var chanName : defaults) {
var chan = this.plugin.channels().get(chanName);
for (var chan : defaults) {
chan.recipients().add(player);
chat.channels().add(chan);
}
Expand Down Expand Up @@ -60,7 +59,7 @@ public void onChat(ChatEvent event) {
var player = (ProxiedPlayer) sender;
var msg = ChatColor.stripColor(event.getMessage());
var chat = this.plugin.chats().get(player);
var chan = this.plugin.channels().get(chat.focus());
var chan = chat.focus();

if (chan == null) {
player.sendMessage("§cAucun canal sélectionné.§r");
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/cool/foyer/chat/Commands.java
Expand Up @@ -25,7 +25,7 @@ public Commands(Plugin plugin) {
@Subcommand("switch")
@CommandCompletion("@channels")
public void cmdSwitch(Chat chat, Channel chan) {
chat.focus(chan.toString());
chat.focus(chan);
}

@Subcommand("list")
Expand Down
11 changes: 7 additions & 4 deletions src/main/java/cool/foyer/chat/Plugin.java
Expand Up @@ -4,6 +4,7 @@
import java.io.IOException;
import java.io.InputStream;
import java.nio.file.Files;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
Expand Down Expand Up @@ -33,8 +34,8 @@ public class Plugin extends net.md_5.bungee.api.plugin.Plugin {
private Configuration config;

private String defaultTemplate;
private List<String> defaultChannels;
private String defaultFocus;
private List<Channel> defaultChannels = new ArrayList<>();
private Channel defaultFocus;

private void loadConfig() {
var datadir = getDataFolder();
Expand All @@ -57,8 +58,6 @@ private void loadConfig() {
}

defaultTemplate = config.getString("template");
defaultChannels = config.getStringList("default_channels");
defaultFocus = config.getString("default_focus");
}

@Override
Expand All @@ -74,6 +73,10 @@ public void onEnable() {
.template(template);
channels.put(name, chan);
}
for (var name : config.getStringList("default_channels")) {
defaultChannels.add(channels.get(name));
}
defaultFocus = channels.get(config.getString("default_focus"));

var pm = getProxy().getPluginManager();
pm.registerListener(this, new ChatHandler(this));
Expand Down

0 comments on commit 40f2d5e

Please sign in to comment.