1
0
mirror of https://github.com/moparisthebest/xAuth synced 2024-08-13 16:53:52 -04:00

Customizable message support

This commit is contained in:
CypherX 2011-03-26 04:21:47 -04:00
parent 7a24b5cae0
commit 5cca44837b
4 changed files with 118 additions and 61 deletions

View File

@ -1,6 +1,6 @@
package com.cypherx.xauth;
import org.bukkit.ChatColor;
//import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.entity.Player;
import org.bukkit.plugin.PluginDescriptionFile;
@ -40,21 +40,26 @@ public class CommandHandler
else if (cmd.getName().equalsIgnoreCase("login"))
{
if (args.length != 1)
player.sendMessage(ChatColor.RED + "Correct Usage: /login <password>");
player.sendMessage(xAuth.strings.getString("login.usage"));
//player.sendMessage(ChatColor.RED + "Correct Usage: /login <password>");
else if (!plugin.isRegistered(player.getName()))
player.sendMessage(ChatColor.RED + "You are not registered.");
player.sendMessage(xAuth.strings.getString("login.err.registered"));
//player.sendMessage(ChatColor.RED + "You are not registered.");
else if (plugin.sessionExists(player.getName()))
player.sendMessage(ChatColor.RED + "You are already logged in.");
player.sendMessage(xAuth.strings.getString("login.err.logged"));
//player.sendMessage(ChatColor.RED + "You are already logged in.");
else
{
if (plugin.checkPass(player, args[0]))
{
plugin.login(player);
player.sendMessage(ChatColor.GREEN + "You are now logged in.");
player.sendMessage(xAuth.strings.getString("login.success"));
//player.sendMessage(ChatColor.GREEN + "You are now logged in.");
System.out.println("[" + pdfFile.getName() + "] Player '" + player.getName() + "' has authenticated");
}
else
player.sendMessage(ChatColor.RED + "Incorrect password!");
player.sendMessage(xAuth.strings.getString("login.err.password"));
//player.sendMessage(ChatColor.RED + "Incorrect password!");
}
}
else if (cmd.getName().equalsIgnoreCase("changepw"))
@ -64,48 +69,58 @@ public class CommandHandler
if (args.length == 1)
{
if (!plugin.sessionExists(player.getName()))
player.sendMessage(ChatColor.RED + "You must login before changing your password!");
player.sendMessage(xAuth.strings.getString("changepw.err.login"));
//player.sendMessage(ChatColor.RED + "You must login before changing your password!");
else if (!xAuth.settings.getBool("misc.allow-changepw"))
player.sendMessage(ChatColor.RED + "Password changes are currently disabled.");
player.sendMessage(xAuth.strings.getString("changepw.err.disabled"));
//player.sendMessage(ChatColor.RED + "Password changes are currently disabled.");
else if (args[0].length() < xAuth.settings.getInt("registration.pw-min-length"))
player.sendMessage(ChatColor.RED + "Your password must contain " + xAuth.settings.getInt("registration.pw-min-length") + " or more characters.");
player.sendMessage(xAuth.strings.getString("register.err.password", xAuth.settings.getInt("registration.pw-min-length")));
//player.sendMessage(ChatColor.RED + "Your password must contain " + xAuth.settings.getInt("registration.pw-min-length") + " or more characters.");
else
{
plugin.changePass(player.getName(), args[0]);
player.sendMessage(ChatColor.GREEN + "Your password has been changed to: " + ChatColor.WHITE + args[0]);
player.sendMessage(xAuth.strings.getString("changepw.success.self", args[0]));
//player.sendMessage(ChatColor.GREEN + "Your password has been changed to: " + ChatColor.WHITE + args[0]);
System.out.println("[" + pdfFile.getName() + "] Player '" + player.getName() + "' has changed their password");
}
}
else if (args.length == 2)
{
if (!plugin.isRegistered(args[0]))
player.sendMessage(ChatColor.RED + "This player is not registered");
player.sendMessage(xAuth.strings.getString("changepw.err.registered"));
//player.sendMessage(ChatColor.RED + "This player is not registered");
else
{
plugin.changePass(args[0], args[1]);
player.sendMessage(ChatColor.GREEN + args[0] + "'s password has been changed to: " + ChatColor.WHITE + args[1]);
player.sendMessage(xAuth.strings.getString("changepw.success.other"));
//player.sendMessage(ChatColor.GREEN + args[0] + "'s password has been changed to: " + ChatColor.WHITE + args[1]);
System.out.println("[" + pdfFile.getName() + "] " + player.getName() + " has changed " + args[0] + "'s password");
}
}
else
{
player.sendMessage(ChatColor.RED + "Correct usage: /changepw [player] <newpassword>");
}
player.sendMessage(xAuth.strings.getString("changepw.usage2"));
//player.sendMessage(ChatColor.RED + "Correct usage: /changepw [player] <newpassword>");
}
else
{
if (args.length != 1)
player.sendMessage(ChatColor.RED + "Correct Usage: /changepw <newpassword>");
player.sendMessage(xAuth.strings.getString("changepw.usage1"));
//player.sendMessage(ChatColor.RED + "Correct Usage: /changepw <newpassword>");
else if (!plugin.sessionExists(player.getName()))
player.sendMessage(ChatColor.RED + "You must login before changing your password!");
player.sendMessage(xAuth.strings.getString("changepw.err.login"));
//player.sendMessage(ChatColor.RED + "You must login before changing your password!");
else if (!xAuth.settings.getBool("misc.allow-changepw"))
player.sendMessage(ChatColor.RED + "Password changes are currently disabled.");
player.sendMessage(xAuth.strings.getString("changepw.err.disabled"));
//player.sendMessage(ChatColor.RED + "Password changes are currently disabled.");
else if (args[0].length() < xAuth.settings.getInt("registration.pw-min-length"))
player.sendMessage(ChatColor.RED + "Your password must contain " + xAuth.settings.getInt("registration.pw-min-length") + " or more characters.");
player.sendMessage(xAuth.strings.getString("register.err.password", xAuth.settings.getInt("registration.pw-min-length")));
//player.sendMessage(ChatColor.RED + "Your password must contain " + xAuth.settings.getInt("registration.pw-min-length") + " or more characters.");
else
{
plugin.changePass(player.getName(), args[0]);
player.sendMessage(ChatColor.GREEN + "Your password has been changed to: " + ChatColor.WHITE + args[0]);
player.sendMessage(xAuth.strings.getString("changepw.success.self", args[0]));
//player.sendMessage(ChatColor.GREEN + "Your password has been changed to: " + ChatColor.WHITE + args[0]);
System.out.println("[" + pdfFile.getName() + "] Player '" + player.getName() + "' has changed their password");
}
}
@ -115,13 +130,16 @@ public class CommandHandler
if (plugin.canUseCommand(player, "xauth.admin.unregister"))
{
if (args.length != 1)
player.sendMessage(ChatColor.RED + "Correct Usage: /unregister <player>");
player.sendMessage(xAuth.strings.getString("unregister.usage"));
//player.sendMessage(ChatColor.RED + "Correct Usage: /unregister <player>");
else if (!plugin.isRegistered(args[0]))
player.sendMessage(ChatColor.RED + "This player is not registered!");
player.sendMessage(xAuth.strings.getString("changepw.err.registered"));
//player.sendMessage(ChatColor.RED + "This player is not registered!");
else
{
plugin.removeAuth(args[0]);
player.sendMessage(ChatColor.GREEN + args[0] + " has been unregistered.");
player.sendMessage(xAuth.strings.getString("unregister.success", args[0]));
//player.sendMessage(ChatColor.GREEN + args[0] + " has been unregistered.");
System.out.println("[" + pdfFile.getName() + "] " + player.getName() + " has unregistered " + args[0]);
}
}
@ -131,7 +149,8 @@ public class CommandHandler
if (plugin.canUseCommand(player, "xauth.admin.reload"))
{
plugin.reload();
player.sendMessage(ChatColor.YELLOW + "[" + pdfFile.getName() + "] Configuration & Accounts reloaded");
player.sendMessage(xAuth.strings.getString("reload.success"));
//player.sendMessage(ChatColor.YELLOW + "[" + pdfFile.getName() + "] Configuration & Accounts reloaded");
}
}
else if (cmd.getName().equalsIgnoreCase("toggle"))
@ -143,16 +162,20 @@ public class CommandHandler
if (canToggleReg || canTogglePw || canToggleSave)
{
if (args.length != 1)
player.sendMessage(ChatColor.RED + "Correct Usage: /toggle <reg|changepw|autosave>");
player.sendMessage(xAuth.strings.getString("toggle.usage"));
//player.sendMessage(ChatColor.RED + "Correct Usage: /toggle <reg|changepw|autosave>");
else if (args[0].equalsIgnoreCase("reg"))
{
if (!canToggleReg)
player.sendMessage(ChatColor.RED + "You aren't allow to toggle that!");
player.sendMessage(xAuth.strings.getString("toggle.err.permission"));
//player.sendMessage(ChatColor.RED + "You aren't allow to toggle that!");
else
{
Boolean b = xAuth.settings.getBool("registration.enabled");
xAuth.settings.updateValue("registration.enabled", (b ? false : true));
player.sendMessage(ChatColor.YELLOW + "[" + pdfFile.getName() + "] Registrations are now " + (b ? "disabled." : "enabled."));
player.sendMessage(xAuth.strings.getString("toggle.success.reg",
(b ? xAuth.strings.getString("misc.disabled") : xAuth.strings.getString("misc.enabled"))));
//player.sendMessage(ChatColor.YELLOW + "[" + pdfFile.getName() + "] Registrations are now " + (b ? "disabled." : "enabled."));
System.out.println("[" + pdfFile.getName() + "] " + player.getName() + " has " + (b ? "disabled" : "enabled") + " registrations");
}
@ -160,29 +183,36 @@ public class CommandHandler
else if (args[0].equalsIgnoreCase("changepw"))
{
if (!canTogglePw)
player.sendMessage(ChatColor.RED + "You aren't allow to toggle that!");
player.sendMessage(xAuth.strings.getString("toggle.err.permission"));
//player.sendMessage(ChatColor.RED + "You aren't allow to toggle that!");
else
{
Boolean b = xAuth.settings.getBool("misc.allow-changepw");
xAuth.settings.updateValue("misc.allow-changepw", (b ? false : true));
player.sendMessage(ChatColor.YELLOW + "[" + pdfFile.getName() + "] Password changes are now " + (b ? "disabled." : "enabled."));
player.sendMessage(xAuth.strings.getString("toggle.success.pw",
(b ? xAuth.strings.getString("misc.disabled") : xAuth.strings.getString("misc.enabled"))));
//player.sendMessage(ChatColor.YELLOW + "[" + pdfFile.getName() + "] Password changes are now " + (b ? "disabled." : "enabled."));
System.out.println("[" + pdfFile.getName() + "] " + player.getName() + " has " + (b ? "disabled" : "enabled") + " password changes");
}
}
else if (args[0].equalsIgnoreCase("autosave"))
{
if (!canToggleSave)
player.sendMessage(ChatColor.RED + "You aren't allow to toggle that!");
player.sendMessage(xAuth.strings.getString("toggle.err.permission"));
//player.sendMessage(ChatColor.RED + "You aren't allow to toggle that!");
else
{
Boolean b = xAuth.settings.getBool("misc.autosave");
xAuth.settings.updateValue("misc.autosave", (b ? false : true));
player.sendMessage(ChatColor.YELLOW + "[" + pdfFile.getName() + "] Autosaving of account modifications is now " + (b ? "disabled." : "enabled."));
player.sendMessage(xAuth.strings.getString("toggle.success.save",
(b ? xAuth.strings.getString("misc.disabled") : xAuth.strings.getString("misc.enabled"))));
//player.sendMessage(ChatColor.YELLOW + "[" + pdfFile.getName() + "] Autosaving of account modifications is now " + (b ? "disabled." : "enabled."));
System.out.println("[" + pdfFile.getName() + "] " + player.getName() + " has " + (b ? "disabled" : "enabled") + " autosave");
}
}
else
player.sendMessage(ChatColor.RED + "Correct Usage: /toggle <reg|changepw|autosave>");
player.sendMessage(xAuth.strings.getString("toggle.usage"));
//player.sendMessage(ChatColor.RED + "Correct Usage: /toggle <reg|changepw|autosave>");
}
}
}

View File

@ -9,13 +9,12 @@ public class Strings
{
private static String[] keys =
{
"register.login",
"register.usage",
"register.err.disabled",
"register.err.registered",
"register.err.password",
"register.success1",
"register.success2"
"register.login", "register.usage", "register.err.disabled", "register.err.registered", "register.err.password",
"register.success1", "register.success2", "login.login", "login.usage", "login.err.registered", "login.err.logged",
"login.err.password", "login.success", "changepw.usage1", "changepw.usage2", "changepw.err.login", "changepw.err.disabled",
"changepw.err.registered", "changepw.success.self", "changepw.success.other", "unregister.usage", "unregister.success",
"reload.success", "toggle.usage", "toggle.err.permission", "toggle.success.reg", "toggle.success.pw",
"toggle.success.save", "misc.illegal", "misc.reloaded", "misc.enabled", "misc.disabled"
};
private static final String[][] keyUpdates = {};
@ -46,6 +45,37 @@ public class Strings
defaults.put("register.err.password", "&cYour password must contain %1 or more characters.");
defaults.put("register.success1", "&aYou have successfully registered!");
defaults.put("register.success2", "&aYour password is: &f%1");
defaults.put("login.login", "&cPlease log in using /login <password>.");
defaults.put("login.usage", "&cCorrect Usage: /login <password>");
defaults.put("login.err.registered", "&cYou are not registered.");
defaults.put("login.err.logged", "&cYou are already logged in.");
defaults.put("login.err.password", "&cIncorrect password!");
defaults.put("login.success", "&aYou are now logged in.");
defaults.put("changepw.usage1", "&cCorrect Usage: /changepw <newpassword>");
defaults.put("changepw.usage2", "&cCorrect Usage: /changepw [player] <newpassword>");
defaults.put("changepw.err.login", "&cYou must login before changing your password!");
defaults.put("changepw.err.disabled", "&cPassword changes are currently disabled.");
defaults.put("changepw.err.registered", "&cThis player is not registered!");
defaults.put("changepw.success.self", "&aYour password has been changed to: &f%1");
defaults.put("changepw.success.other", "&aPassword changed.");
defaults.put("unregister.usage", "&cCorrect Usage: /unregister <player>");
defaults.put("unregister.success", "&a%1 has been unregistered.");
defaults.put("reload.success", "&e[xAuth] Configuration and Accounts reloaded");
defaults.put("toggle.usage", "&cCorrect Usage: /toggle <reg|changepw|autosave>");
defaults.put("toggle.err.permission", "&cYou aren't allow to toggle that!");
defaults.put("toggle.success.reg", "&e[xAuth] Registrations are now %1.");
defaults.put("toggle.success.pw", "&e[xAuth] Password changes are now %1.");
defaults.put("toggle.success.save", "&e[xAuth] Autosaving of account modifications is now %1.");
defaults.put("misc.illegal", "&7You must be logged in to do that!");
defaults.put("misc.reloaded", "&cServer reloaded! You must log in again.");
defaults.put("misc.enabled", "enabled");
defaults.put("misc.disabled", "disabled");
}
private void updateKeys()
@ -72,6 +102,9 @@ public class Strings
config.setProperty(key, defaults.get(key));
strings.put(key, config.getString(key).replace("&", "\u00a7"));
}
//clear defaults to free memory
defaults.clear();
}
public String getString(String key)
@ -82,14 +115,5 @@ public class Strings
public String getString(String key, Object replacement)
{
return strings.get(key).replace("%1", replacement.toString());
//return replace(strings.get(key), new Object[]{replacement});
}
public String replace(String str, Object[] replacements)
{
int i;
for (i = 0; i < replacements.length; i++)
str.replace(("%" + i).toString(), replacements[i].toString());
return str;
}
}

View File

@ -8,7 +8,7 @@ import java.util.Date;
import java.util.HashMap;
import net.minecraft.server.PropertyManager;
import org.bukkit.ChatColor;
//import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.command.ConsoleCommandSender;
@ -41,7 +41,8 @@ public class xAuth extends JavaPlugin
private final HashMap<Player, Boolean> debugees = new HashMap<Player, Boolean>();
private static PluginDescriptionFile pdfFile;
private static final String DIR = "plugins/xAuth/";
//private static final String DIR = "plugins/xAuth/";
private static final String DIR = "plugins" + File.separator + "xAuth" + File.separator;
private static final String CONFIG_FILE = "config.yml";
private static final String STRINGS_FILE = "strings.yml";
private static final String AUTH_FILE = "auths.txt";
@ -52,7 +53,7 @@ public class xAuth extends JavaPlugin
//autosave test code
private static Boolean fullyEnabled = false;
private ConcurrentHashMap<String, String> auths = new ConcurrentHashMap<String, String>();
private ConcurrentHashMap<Player, ItemStack[]> inventory = new ConcurrentHashMap<Player, ItemStack[]>();
private ConcurrentHashMap<Player, ItemStack[]> armor = new ConcurrentHashMap<Player, ItemStack[]>();
@ -78,12 +79,12 @@ public class xAuth extends JavaPlugin
this.getServer().getPluginManager().disablePlugin(this);
return;
}
File fDir = new File(DIR);
if (!fDir.exists())
fDir.mkdir();
try
{
File fAuths = new File(DIR + AUTH_FILE);
@ -95,7 +96,7 @@ public class xAuth extends JavaPlugin
{
System.out.println(e.getMessage());
}
settings = new Settings(new File(DIR + CONFIG_FILE));
strings = new Strings(new File(DIR + STRINGS_FILE));
getAuths();
@ -108,7 +109,8 @@ public class xAuth extends JavaPlugin
for (Player player : players)
{
saveInventory(player);
player.sendMessage(ChatColor.RED + "Server reloaded! You must log in again.");
player.sendMessage(strings.getString("misc.reloaded"));
//player.sendMessage(ChatColor.RED + "Server reloaded! You must log in again.");
}
}
@ -315,7 +317,8 @@ public class xAuth extends JavaPlugin
public void notifyPlayer(Player player)
{
player.sendMessage(ChatColor.GRAY + "You must be logged in to do that!");
player.sendMessage(strings.getString("misc.illegal"));
//player.sendMessage(ChatColor.GRAY + "You must be logged in to do that!");
updateNotifyTime(player, new Date());
}

View File

@ -2,9 +2,7 @@ package com.cypherx.xauth;
import org.bukkit.entity.Player;
import org.bukkit.event.player.*;
//import org.bukkit.inventory.ItemStack;
//import org.bukkit.inventory.PlayerInventory;
import org.bukkit.ChatColor;
//import org.bukkit.ChatColor;
/**
* Handle events for all Player related events
@ -28,9 +26,11 @@ public class xAuthPlayerListener extends PlayerListener
plugin.saveInventory(player);
if (!plugin.isRegistered(player.getName()))
player.sendMessage(ChatColor.RED + "You are not registered. Please register using /register <password>.");
player.sendMessage(xAuth.strings.getString("register.login"));
//player.sendMessage(ChatColor.RED + "You are not registered. Please register using /register <password>.");
else
player.sendMessage(ChatColor.RED + "Please log in using /login <password>.");
player.sendMessage(xAuth.strings.getString("login.login"));
//player.sendMessage(ChatColor.RED + "Please log in using /login <password>.");
}
}