Create localization branch for upcoming feature.

This commit is contained in:
Aust1n46 2020-01-27 21:36:27 -05:00
parent ef20ad8b10
commit 623b82494f
14 changed files with 151 additions and 46 deletions

View File

@ -0,0 +1,18 @@
BlockingMessage: '&6{player} is currently blocking messages.'
BungeeToggleOff: '&6You are now blocking BungeeCord chat.'
BungeeToggleOn: '&6You are now receiving BungeeCord chat.'
ClearChatSender: '&aCleared the server chat.'
ClearChatServer: '&aYour chat has been cleared.'
ChannelList: '{channel_color}{channel_name} : {channel_alias}'
ChannelListHeader: '&6Channel List : Alias'
ChannelListWithPermissions: '{channel_color}{channel_name} : {channel_alias} - Permission Required'
ChannelNoPermission: '&cYou do not have permission for this channel.'
ChannelNoPermissionView: '&cYou do not have permission to look at this channel.'
ChannelPlayerListHeader: '&6Players in Channel: {channel_color}{channel_name}'
CommandInvalidArguments: '&cInvalid command: {command} {args}'
CommandMustBeRunByPlayer: '&cThis command must be run by a player.'
CommandNoPermission: '&cYou do not have permission for this command.'
ConfigReloaded: '&6VentureChat config reloaded.'
EmptyString: ''
IgnoringMessage: '&6{player} is currently ignoring your messages.'
InvalidChannel: '&cInvalid channel: {args}'

View File

@ -6,6 +6,7 @@ import org.bukkit.command.CommandSender;
import mineverse.Aust1n46.chat.MineverseChat;
import mineverse.Aust1n46.chat.channel.ChatChannelInfo;
import mineverse.Aust1n46.chat.command.MineverseCommand;
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
import mineverse.Aust1n46.chat.utilities.Format;
public class Broadcast extends MineverseCommand {
@ -30,12 +31,14 @@ public class Broadcast extends MineverseCommand {
return;
}
else {
sender.sendMessage(ChatColor.RED + "Invalid command: /broadcast [msg]");
sender.sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString()
.replace("{command}", "/broadcast")
.replace("{args}", "[msg]"));
return;
}
}
else {
sender.sendMessage(ChatColor.RED + "You do not have permission for this command.");
sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());
return;
}
}

View File

@ -1,6 +1,5 @@
package mineverse.Aust1n46.chat.command.chat;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@ -8,6 +7,7 @@ import mineverse.Aust1n46.chat.MineverseChat;
import mineverse.Aust1n46.chat.api.MineverseChatAPI;
import mineverse.Aust1n46.chat.api.MineverseChatPlayer;
import mineverse.Aust1n46.chat.command.MineverseCommand;
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
public class BungeeToggle extends MineverseCommand {
private MineverseChat plugin;
@ -20,23 +20,23 @@ public class BungeeToggle extends MineverseCommand {
@Override
public void execute(CommandSender sender, String command, String[] args) {
if(!(sender instanceof Player)) {
plugin.getServer().getConsoleSender().sendMessage(ChatColor.RED + "This command must be run by a player.");
plugin.getServer().getConsoleSender().sendMessage(LocalizedMessage.COMMAND_MUST_BE_RUN_BY_PLAYER.toString());
return;
}
MineverseChatPlayer mcp = MineverseChatAPI.getMineverseChatPlayer((Player) sender);
if(mcp.getPlayer().hasPermission("venturechat.bungeetoggle")) {
if(!mcp.getBungeeToggle()) {
mcp.setBungeeToggle(true);
mcp.getPlayer().sendMessage(ChatColor.GOLD + "You are now receiving BungeeCord chat.");
mcp.getPlayer().sendMessage(LocalizedMessage.BUNGEE_TOGGLE_ON.toString());
MineverseChat.getInstance().synchronize(mcp, true);
return;
}
mcp.setBungeeToggle(false);
mcp.getPlayer().sendMessage(ChatColor.GOLD + "You are now blocking BungeeCord chat.");
mcp.getPlayer().sendMessage(LocalizedMessage.BUNGEE_TOGGLE_OFF.toString());
MineverseChat.getInstance().synchronize(mcp, true);
return;
}
mcp.getPlayer().sendMessage(ChatColor.RED + "You do not have permission for this command.");
mcp.getPlayer().sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());
return;
}
}

View File

@ -14,6 +14,7 @@ import mineverse.Aust1n46.chat.api.events.ChannelJoinEvent;
import mineverse.Aust1n46.chat.channel.ChatChannel;
import mineverse.Aust1n46.chat.channel.ChatChannelInfo;
import mineverse.Aust1n46.chat.command.MineverseCommand;
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
public class Channel extends MineverseCommand implements Listener {
private MineverseChat plugin;
@ -29,20 +30,23 @@ public class Channel extends MineverseCommand implements Listener {
@Override
public void execute(CommandSender sender, String command, String[] args) {
if(!(sender instanceof Player)) {
plugin.getServer().getConsoleSender().sendMessage(ChatColor.RED + "This command must be run by a player.");
plugin.getServer().getConsoleSender().sendMessage(LocalizedMessage.COMMAND_MUST_BE_RUN_BY_PLAYER.toString());
return;
}
MineverseChatPlayer mcp = MineverseChatAPI.getMineverseChatPlayer((Player) sender);
if(args.length > 0) {
if(!cc.isChannel(args[0])) {
mcp.getPlayer().sendMessage(ChatColor.RED + "Invalid channel: " + args[0]);
mcp.getPlayer().sendMessage(LocalizedMessage.INVALID_CHANNEL.toString()
.replace("{args}", args[0]));
return;
}
ChatChannel channel = cc.getChannelInfo(args[0]);
plugin.getServer().getPluginManager().callEvent(new ChannelJoinEvent(mcp.getPlayer(), channel, "Channel Set: " + ChatColor.valueOf(channel.getColor().toUpperCase()) + "[" + channel.getName() + "]"));
return;
}
mcp.getPlayer().sendMessage(ChatColor.RED + "Invalid command: /" + command + " [channel]");
mcp.getPlayer().sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString()
.replace("{command}", "/channel")
.replace("{args}", "[channel]"));
return;
}

View File

@ -1,12 +1,12 @@
package mineverse.Aust1n46.chat.command.chat;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import mineverse.Aust1n46.chat.MineverseChat;
import mineverse.Aust1n46.chat.api.MineverseChatPlayer;
import mineverse.Aust1n46.chat.command.MineverseCommand;
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
public class Chatreload extends MineverseCommand {
private MineverseChat plugin;
@ -25,12 +25,12 @@ public class Chatreload extends MineverseCommand {
plugin.getServer().getLogger().info("[VentureChat] Config reloaded");
for(MineverseChatPlayer player : MineverseChat.players) {
if(player.isOnline() && player.getPlayer().hasPermission("venturechat.reload")) {
player.getPlayer().sendMessage(ChatColor.GOLD + "VentureChat config reloaded.");
player.getPlayer().sendMessage(LocalizedMessage.CONFIG_RELOADED.toString());
}
}
return;
}
sender.sendMessage(ChatColor.RED + "You do not have permission for this command.");
sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());
return;
}
}

View File

@ -7,6 +7,7 @@ import mineverse.Aust1n46.chat.MineverseChat;
import mineverse.Aust1n46.chat.channel.ChatChannel;
import mineverse.Aust1n46.chat.channel.ChatChannelInfo;
import mineverse.Aust1n46.chat.command.MineverseCommand;
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
public class Chlist extends MineverseCommand {
private ChatChannelInfo cc = MineverseChat.ccInfo;
@ -17,15 +18,21 @@ public class Chlist extends MineverseCommand {
@Override
public void execute(CommandSender sender, String command, String[] args) {
sender.sendMessage(ChatColor.GOLD + "Channel List : Alias");
sender.sendMessage(LocalizedMessage.CHANNEL_LIST_HEADER.toString());
for(ChatChannel chname : cc.getChannelsInfo()) {
if(chname.hasPermission()) {
if(sender.hasPermission(chname.getPermission())) {
sender.sendMessage(ChatColor.valueOf(chname.getColor().toUpperCase()) + chname.getName() + " : " + chname.getAlias() + " - Permission Required");
sender.sendMessage(LocalizedMessage.CHANNEL_LIST_WITH_PERMISSIONS.toString()
.replace("{channel_color}", (ChatColor.valueOf(chname.getColor().toUpperCase())).toString())
.replace("{channel_name}", chname.getName())
.replace("{channel_alias}", chname.getAlias()));
}
}
else {
sender.sendMessage(ChatColor.valueOf(chname.getColor().toUpperCase()) + chname.getName() + " : " + chname.getAlias());
sender.sendMessage(LocalizedMessage.CHANNEL_LIST.toString()
.replace("{channel_color}", (ChatColor.valueOf(chname.getColor().toUpperCase())).toString())
.replace("{channel_name}", chname.getName())
.replace("{channel_alias}", chname.getAlias()));
}
}
return;

View File

@ -19,6 +19,7 @@ import mineverse.Aust1n46.chat.api.MineverseChatPlayer;
import mineverse.Aust1n46.chat.channel.ChatChannel;
import mineverse.Aust1n46.chat.channel.ChatChannelInfo;
import mineverse.Aust1n46.chat.command.MineverseCommand;
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
public class Chwho extends MineverseCommand {
private MineverseChat plugin;
@ -40,7 +41,7 @@ public class Chwho extends MineverseCommand {
if(!sender.hasPermission(channel.getPermission())) {
MineverseChatPlayer mcp = MineverseChatAPI.getMineverseChatPlayer(((Player) sender));
mcp.removeListening(channel.getName());
mcp.getPlayer().sendMessage(ChatColor.RED + "You do not have permission to look at this channel.");
mcp.getPlayer().sendMessage(LocalizedMessage.CHANNEL_NO_PERMISSION_VIEW.toString());
return;
}
}
@ -178,22 +179,27 @@ public class Chwho extends MineverseCommand {
if(playerlist.length() > 2) {
playerlist = playerlist.substring(0, playerlist.length() - 2);
}
sender.sendMessage(ChatColor.GOLD + "Players in Channel: " + ChatColor.valueOf(channel.getColor().toUpperCase()) + channel.getName());
sender.sendMessage(LocalizedMessage.CHANNEL_PLAYER_LIST_HEADER.toString()
.replace("{channel_color}", (ChatColor.valueOf(channel.getColor().toUpperCase())).toString())
.replace("{channel_name}", channel.getName()));
sender.sendMessage(playerlist);
return;
}
else {
sender.sendMessage(ChatColor.RED + "Invalid channel: " + args[0]);
sender.sendMessage(LocalizedMessage.INVALID_CHANNEL.toString()
.replace("{args}", args[0]));
return;
}
}
else {
sender.sendMessage(ChatColor.RED + "Invalid command: /chwho [channel]");
sender.sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString()
.replace("{command}", "/chwho")
.replace("{args}", "[channel]"));
return;
}
}
else {
sender.sendMessage(ChatColor.RED + "You do not have permission for this command.");
sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());
return;
}
}

View File

@ -1,11 +1,11 @@
package mineverse.Aust1n46.chat.command.chat;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import mineverse.Aust1n46.chat.MineverseChat;
import mineverse.Aust1n46.chat.api.MineverseChatPlayer;
import mineverse.Aust1n46.chat.command.MineverseCommand;
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
public class Clearchat extends MineverseCommand {
@ -19,14 +19,14 @@ public class Clearchat extends MineverseCommand {
for(MineverseChatPlayer player : MineverseChat.players) {
if(player.isOnline() && !player.getPlayer().hasPermission("venturechat.clearchat.bypass")) {
for(int a = 1; a <= 20; a++)
player.getPlayer().sendMessage("");
player.getPlayer().sendMessage(ChatColor.GREEN + "Your chat has been cleared.");
player.getPlayer().sendMessage(LocalizedMessage.EMPTY_STRING.toString());
player.getPlayer().sendMessage(LocalizedMessage.CLEAR_CHAT_SERVER.toString());
}
}
sender.sendMessage(ChatColor.GREEN + "Cleared the server chat.");
sender.sendMessage(LocalizedMessage.CLEAR_CHAT_SENDER.toString());
return;
}
sender.sendMessage(ChatColor.RED + "You do not have permission for this command.");
sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());
return;
}
}

View File

@ -10,6 +10,7 @@ import mineverse.Aust1n46.chat.api.MineverseChatPlayer;
import mineverse.Aust1n46.chat.channel.ChatChannel;
import mineverse.Aust1n46.chat.channel.ChatChannelInfo;
import mineverse.Aust1n46.chat.command.MineverseCommand;
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
public class Leave extends MineverseCommand {
private MineverseChat plugin;
@ -23,14 +24,15 @@ public class Leave extends MineverseCommand {
@Override
public void execute(CommandSender sender, String command, String[] args) {
if(!(sender instanceof Player)) {
plugin.getServer().getConsoleSender().sendMessage(ChatColor.RED + "This command must be run by a player.");
plugin.getServer().getConsoleSender().sendMessage(LocalizedMessage.COMMAND_MUST_BE_RUN_BY_PLAYER.toString());
return;
}
MineverseChatPlayer mcp = MineverseChatAPI.getMineverseChatPlayer((Player) sender);
if(args.length > 0) {
ChatChannel channel = cc.getChannelInfo(args[0]);
if(channel == null) {
mcp.getPlayer().sendMessage(ChatColor.RED + "Invalid channel: " + args[0]);
mcp.getPlayer().sendMessage(LocalizedMessage.INVALID_CHANNEL.toString()
.replace("{args}", args[0]));
return;
}
mcp.removeListening(channel.getName());
@ -47,6 +49,8 @@ public class Leave extends MineverseCommand {
}
return;
}
mcp.getPlayer().sendMessage(ChatColor.RED + "Invalid command: /leave [channelname]");
mcp.getPlayer().sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString()
.replace("{command}", "/leave")
.replace("{args}", "[channel]"));
}
}

View File

@ -10,6 +10,7 @@ import mineverse.Aust1n46.chat.api.MineverseChatPlayer;
import mineverse.Aust1n46.chat.channel.ChatChannel;
import mineverse.Aust1n46.chat.channel.ChatChannelInfo;
import mineverse.Aust1n46.chat.command.MineverseCommand;
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
public class Listen extends MineverseCommand {
private MineverseChat plugin;
@ -23,20 +24,21 @@ public class Listen extends MineverseCommand {
@Override
public void execute(CommandSender sender, String command, String[] args) {
if(!(sender instanceof Player)) {
plugin.getServer().getConsoleSender().sendMessage(ChatColor.RED + "This command must be run by a player.");
plugin.getServer().getConsoleSender().sendMessage(LocalizedMessage.COMMAND_MUST_BE_RUN_BY_PLAYER.toString());
return;
}
MineverseChatPlayer mcp = MineverseChatAPI.getMineverseChatPlayer((Player) sender);
if(args.length > 0) {
ChatChannel channel = cc.getChannelInfo(args[0]);
if(channel == null) {
mcp.getPlayer().sendMessage(ChatColor.RED + "Invalid channel: " + args[0]);
mcp.getPlayer().sendMessage(LocalizedMessage.INVALID_CHANNEL.toString()
.replace("{args}", args[0]));
return;
}
if(channel.hasPermission()) {
if(!mcp.getPlayer().hasPermission(channel.getPermission())) {
mcp.removeListening(channel.getName());
mcp.getPlayer().sendMessage(ChatColor.RED + "You do not have permission for this channel.");
mcp.getPlayer().sendMessage(LocalizedMessage.CHANNEL_NO_PERMISSION.toString());
return;
}
}
@ -45,6 +47,8 @@ public class Listen extends MineverseCommand {
mcp.getPlayer().sendMessage("Listening to Channel: " + format);
return;
}
mcp.getPlayer().sendMessage(ChatColor.RED + "Invalid command: /listen [channel]");
mcp.getPlayer().sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString()
.replace("{command}", "/listen")
.replace("{args}", "[channel]"));
}
}

View File

@ -13,6 +13,7 @@ import mineverse.Aust1n46.chat.api.MineverseChatAPI;
import mineverse.Aust1n46.chat.api.MineverseChatPlayer;
import mineverse.Aust1n46.chat.channel.ChatChannelInfo;
import mineverse.Aust1n46.chat.command.MineverseCommand;
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
import mineverse.Aust1n46.chat.utilities.Format;
import mineverse.Aust1n46.chat.versions.VersionHandler;
@ -28,17 +29,21 @@ public class Message extends MineverseCommand {
@Override
public void execute(CommandSender sender, String command, String[] args) {
if(!(sender instanceof Player)) {
plugin.getServer().getConsoleSender().sendMessage(ChatColor.RED + "This command must be run by a player.");
plugin.getServer().getConsoleSender().sendMessage(LocalizedMessage.COMMAND_MUST_BE_RUN_BY_PLAYER.toString());
return;
}
MineverseChatPlayer mcp = MineverseChatAPI.getMineverseChatPlayer((Player) sender);
if(args.length == 0) {
mcp.getPlayer().sendMessage(ChatColor.RED + "Invalid command: /" + command + " [player] [msg]");
mcp.getPlayer().sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString()
.replace("{command}", "/" + command)
.replace("{args}", "[player] [message]"));
return;
}
if(plugin.getConfig().getBoolean("bungeecordmessaging", true)) {
if(args.length < 2) {
mcp.getPlayer().sendMessage(ChatColor.RED + "Invalid command: /" + command + " [player] [msg]");
mcp.getPlayer().sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString()
.replace("{command}", "/" + command)
.replace("{args}", "[player] [message]"));
return;
}
ByteArrayOutputStream byteOutStream = new ByteArrayOutputStream();
@ -111,11 +116,11 @@ public class Message extends MineverseCommand {
return;
}
if(player.getIgnores().contains(mcp.getUUID())) {
mcp.getPlayer().sendMessage(ChatColor.GOLD + player.getName() + " is currently ignoring your messages.");
mcp.getPlayer().sendMessage(LocalizedMessage.IGNORING_MESSAGE.toString());
return;
}
if(!player.getMessageToggle()) {
mcp.getPlayer().sendMessage(ChatColor.GOLD + player.getName() + " is currently blocking messages.");
mcp.getPlayer().sendMessage(LocalizedMessage.BLOCKING_MESSAGE.toString());
return;
}
if(args.length >= 2) {

View File

@ -1,8 +1,6 @@
package mineverse.Aust1n46.chat.localization;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import mineverse.Aust1n46.chat.MineverseChat;
@ -10,12 +8,12 @@ import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
//This class is used to create objects of localization for different languages.
public class Localization { //unimplemented
private FileConfiguration localization;
private File localizationFile;
private MineverseChat plugin;
public class Localization {
//private FileConfiguration localization;
//private File localizationFile;
//private MineverseChat plugin;
public Localization() {
/*public Localization() {
this.plugin = MineverseChat.getInstance();
localizationFile = new File(plugin.getDataFolder().getAbsolutePath(), "en_default.yml");
if(!localizationFile.exists()) {
@ -41,5 +39,22 @@ public class Localization { //unimplemented
public FileConfiguration getLocalizedMessages() {
return localization;
}*/
private static MineverseChat plugin;
private static FileConfiguration localization;
private static File localizationFile;
public static void initialize() {
plugin = MineverseChat.getInstance();
localizationFile = new File(plugin.getDataFolder().getAbsolutePath(), "Messages.yml");
if(!localizationFile.isFile()) {
plugin.saveResource("Messages.yml", true);
}
localization = YamlConfiguration.loadConfiguration(localizationFile);
}
public static FileConfiguration getLocalization() {
return localization;
}
}

View File

@ -0,0 +1,39 @@
package mineverse.Aust1n46.chat.localization;
import mineverse.Aust1n46.chat.utilities.Format;
/**
* Messages configurable in Messages.yml
*/
public enum LocalizedMessage {
BLOCKING_MESSAGE("BlockingMessage"),
BUNGEE_TOGGLE_OFF("BungeeToggleOff"),
BUNGEE_TOGGLE_ON("BungeeToggleOn"),
CLEAR_CHAT_SENDER("ClearChatSender"),
CLEAR_CHAT_SERVER("ClearChatServer"),
CHANNEL_LIST("ChannelList"),
CHANNEL_LIST_HEADER("ChannelListHeader"),
CHANNEL_LIST_WITH_PERMISSIONS("ChannelListWithPermissions"),
CHANNEL_NO_PERMISSION("ChannelNoPermission"),
CHANNEL_NO_PERMISSION_VIEW("ChannelNoPermissionView"),
CHANNEL_PLAYER_LIST_HEADER("ChannelPlayerListHeader"),
COMMAND_INVALID_ARGUMENTS("CommandInvalidArguments"),
COMMAND_MUST_BE_RUN_BY_PLAYER("CommandMustBeRunByPlayer"),
COMMAND_NO_PERMISSION("CommandNoPermission"),
CONFIG_RELOADED("ConfigReloaded"),
EMPTY_STRING("EmptyString"),
IGNORING_MESSAGE("IgnoringMessage"),
INVALID_CHANNEL("InvalidChannel"),
Z_END("End");
private final String message;
LocalizedMessage(String message) {
this.message = message;
}
@Override
public String toString() {
return Format.FormatStringAll(Localization.getLocalization().getString(this.message));
}
}