Dev - 3.1.2-DEV-3
Developpement status actually Some Fixes for the 1.7.2 Remove some Magic Values Fix threads not start correctly Add a recall email adding message Fix catpcha messages Add multilines messages ( add &n ) Fix some inventory problem Fix some events problem Call login event after /register
This commit is contained in:
@@ -145,7 +145,6 @@ public class AuthMe extends JavaPlugin {
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
//Load MailApi
|
||||
if(!Settings.getmailAccount.isEmpty() && !Settings.getmailPassword.isEmpty())
|
||||
mail = new SendMailSSL(this);
|
||||
@@ -184,7 +183,7 @@ public class AuthMe extends JavaPlugin {
|
||||
case FILE:
|
||||
if (Settings.useMultiThreading) {
|
||||
FlatFileThread fileThread = new FlatFileThread();
|
||||
fileThread.run();
|
||||
fileThread.start();
|
||||
database = fileThread;
|
||||
databaseThread = fileThread;
|
||||
break;
|
||||
@@ -205,7 +204,7 @@ public class AuthMe extends JavaPlugin {
|
||||
case MYSQL:
|
||||
if (Settings.useMultiThreading) {
|
||||
MySQLThread sqlThread = new MySQLThread();
|
||||
sqlThread.run();
|
||||
sqlThread.start();
|
||||
database = sqlThread;
|
||||
databaseThread = sqlThread;
|
||||
break;
|
||||
@@ -226,7 +225,7 @@ public class AuthMe extends JavaPlugin {
|
||||
case SQLITE:
|
||||
if (Settings.useMultiThreading) {
|
||||
SQLiteThread sqliteThread = new SQLiteThread();
|
||||
sqliteThread.run();
|
||||
sqliteThread.start();
|
||||
database = sqliteThread;
|
||||
databaseThread = sqliteThread;
|
||||
break;
|
||||
@@ -255,6 +254,7 @@ public class AuthMe extends JavaPlugin {
|
||||
|
||||
// Setup Management
|
||||
management = new Management(database, this);
|
||||
management.start();
|
||||
|
||||
PluginManager pm = getServer().getPluginManager();
|
||||
if (Settings.bungee) {
|
||||
@@ -325,6 +325,10 @@ public class AuthMe extends JavaPlugin {
|
||||
enableProtection();
|
||||
if (Settings.usePurge)
|
||||
autoPurge();
|
||||
|
||||
// Start Email recall task if needed
|
||||
recallEmail();
|
||||
|
||||
ConsoleLogger.info("Authme " + this.getDescription().getVersion() + " enabled");
|
||||
}
|
||||
|
||||
@@ -354,9 +358,7 @@ public class AuthMe extends JavaPlugin {
|
||||
} catch (NumberFormatException nfee) {
|
||||
}
|
||||
}
|
||||
} catch (NullPointerException npe) {}
|
||||
catch (NoClassDefFoundError ncdfe) {}
|
||||
catch (ClassCastException cce) {}
|
||||
} catch (Exception e) {}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -739,4 +741,25 @@ public class AuthMe extends JavaPlugin {
|
||||
Settings.switchAntiBotMod(mode);
|
||||
}
|
||||
|
||||
private void recallEmail() {
|
||||
if (!Settings.recallEmail)
|
||||
return;
|
||||
Bukkit.getScheduler().scheduleSyncRepeatingTask(this, new Runnable(){
|
||||
@Override
|
||||
public void run() {
|
||||
for (Player player : Bukkit.getOnlinePlayers()) {
|
||||
if (player.isOnline()) {
|
||||
String name = player.getName().toLowerCase();
|
||||
if (database.isAuthAvailable(name))
|
||||
if (PlayerCache.getInstance().isAuthenticated(name)) {
|
||||
String email = database.getAuth(name).getEmail();
|
||||
if (email == null || email.isEmpty() || email.equalsIgnoreCase("your@email.com"))
|
||||
m._(player, "add_email");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}, 1, 1200 * Settings.delayRecall);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@ import fr.xephi.authme.settings.Settings;
|
||||
* @authors Xephi59, <a href="http://dev.bukkit.org/profiles/Possible/">Possible</a>
|
||||
*
|
||||
*/
|
||||
public class Management {
|
||||
public class Management extends Thread {
|
||||
private Messages m = Messages.getInstance();
|
||||
private PlayersLogs pllog = PlayersLogs.getInstance();
|
||||
private Utils utils = Utils.getInstance();
|
||||
@@ -49,6 +49,9 @@ public class Management {
|
||||
this.plugin = plugin;
|
||||
this.pm = plugin.getServer().getPluginManager();
|
||||
}
|
||||
|
||||
public void run() {
|
||||
}
|
||||
|
||||
public void performLogin(final Player player, final String password, final boolean passpartu, final boolean forceLogin) {
|
||||
if (passpartu) {
|
||||
@@ -111,20 +114,20 @@ public class Management {
|
||||
*/
|
||||
protected PlayerAuth preAuth() {
|
||||
if (PlayerCache.getInstance().isAuthenticated(name)) {
|
||||
player.sendMessage(m._("logged_in"));
|
||||
m._(player, "logged_in");
|
||||
return null;
|
||||
}
|
||||
if (!database.isAuthAvailable(name)) {
|
||||
player.sendMessage(m._("user_unknown"));
|
||||
m._(player, "user_unknown");
|
||||
return null;
|
||||
}
|
||||
PlayerAuth pAuth = database.getAuth(name);
|
||||
if (pAuth == null) {
|
||||
player.sendMessage(m._("user_unknown"));
|
||||
m._(player, "user_unknown");
|
||||
return null;
|
||||
}
|
||||
if (!Settings.getMySQLColumnGroup.isEmpty() && pAuth.getGroupId() == Settings.getNonActivatedGroup) {
|
||||
player.sendMessage(m._("vb_nonActiv"));
|
||||
m._(player, "vb_nonActiv");
|
||||
return null;
|
||||
}
|
||||
return pAuth;
|
||||
@@ -143,7 +146,7 @@ public class Management {
|
||||
passwordVerified = PasswordSecurity.comparePasswordWithHash(password, hash, name);
|
||||
} catch (Exception ex) {
|
||||
ConsoleLogger.showError(ex.getMessage());
|
||||
player.sendMessage(m._("error"));
|
||||
m._(player, "error");
|
||||
return;
|
||||
}
|
||||
if (passwordVerified && player.isOnline()) {
|
||||
@@ -174,7 +177,7 @@ public class Management {
|
||||
}
|
||||
|
||||
player.setNoDamageTicks(0);
|
||||
player.sendMessage(m._("login"));
|
||||
m._(player, "login");
|
||||
|
||||
displayOtherAccounts(auth);
|
||||
|
||||
@@ -204,13 +207,13 @@ public class Management {
|
||||
@Override
|
||||
public void run() {
|
||||
if (AuthMePlayerListener.gameMode != null && AuthMePlayerListener.gameMode.containsKey(name)) {
|
||||
player.setGameMode(GameMode.getByValue(AuthMePlayerListener.gameMode.get(name)));
|
||||
player.setGameMode(AuthMePlayerListener.gameMode.get(name));
|
||||
}
|
||||
player.kickPlayer(m._("wrong_pwd"));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
player.sendMessage(m._("wrong_pwd"));
|
||||
m._(player, "wrong_pwd");
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
@@ -259,7 +262,7 @@ public class Management {
|
||||
}
|
||||
|
||||
player.setNoDamageTicks(0);
|
||||
player.sendMessage(m._("login"));
|
||||
m._(player, "login");
|
||||
|
||||
displayOtherAccounts(auth);
|
||||
|
||||
@@ -362,7 +365,7 @@ public class Management {
|
||||
* Also it's the current world inventory !
|
||||
*/
|
||||
if (!Settings.forceOnlyAfterLogin) {
|
||||
player.setGameMode(GameMode.getByValue(limbo.getGameMode()));
|
||||
player.setGameMode(limbo.getGameMode());
|
||||
// Inventory - Make it after restore GameMode , cause we need to restore the
|
||||
// right inventory in the right gamemode
|
||||
if (Settings.protectInventoryBeforeLogInEnabled && player.hasPlayedBefore()) {
|
||||
@@ -410,6 +413,7 @@ public class Management {
|
||||
if (p.isOnline())
|
||||
p.sendMessage(AuthMePlayerListener.joinMessage.get(name));
|
||||
}
|
||||
AuthMePlayerListener.joinMessage.remove(name);
|
||||
}
|
||||
|
||||
// The Loginevent now fires (as intended) after everything is processed
|
||||
|
||||
@@ -106,13 +106,13 @@ public class PlayerAuth {
|
||||
}
|
||||
|
||||
public String getHash() {
|
||||
if(salt != null && !salt.isEmpty() && Settings.getPasswordHash == HashAlgorithm.MD5VB) {
|
||||
vBhash = "$MD5vb$"+salt+"$"+hash;
|
||||
return vBhash;
|
||||
}
|
||||
else {
|
||||
return hash;
|
||||
}
|
||||
if (Settings.getPasswordHash == HashAlgorithm.MD5VB) {
|
||||
if(salt != null && !salt.isEmpty() && Settings.getPasswordHash == HashAlgorithm.MD5VB) {
|
||||
vBhash = "$MD5vb$"+salt+"$"+hash;
|
||||
return vBhash;
|
||||
}
|
||||
}
|
||||
return hash;
|
||||
}
|
||||
|
||||
public String getSalt() {
|
||||
|
||||
@@ -4,6 +4,8 @@ import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
|
||||
import java.util.Scanner;
|
||||
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.enchantments.Enchantment;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
@@ -134,7 +136,7 @@ public class FileCache {
|
||||
}
|
||||
// can enchant item? size ofstring in file - 4 all / 2 = number of enchant
|
||||
if (in[0].equals("i")) {
|
||||
stacki[i] = new ItemStack(Integer.parseInt(in[1]),
|
||||
stacki[i] = new ItemStack(Material.getMaterial(Integer.parseInt(in[1])),
|
||||
Integer.parseInt(in[2]), Short.parseShort((in[3])));
|
||||
if(in.length > 4 && !in[4].isEmpty()) {
|
||||
for(int k=4;k<in.length-1;k++) {
|
||||
@@ -144,7 +146,7 @@ public class FileCache {
|
||||
}
|
||||
i++;
|
||||
} else {
|
||||
stacka[a] = new ItemStack(Integer.parseInt(in[1]),
|
||||
stacka[a] = new ItemStack(Material.getMaterial(Integer.parseInt(in[1])),
|
||||
Integer.parseInt(in[2]), Short.parseShort((in[3])));
|
||||
if(in.length > 4 && !in[4].isEmpty()) {
|
||||
for(int k=4;k<in.length-1;k++) {
|
||||
|
||||
@@ -31,7 +31,7 @@ public class LimboCache {
|
||||
String name = player.getName().toLowerCase();
|
||||
Location loc = player.getLocation();
|
||||
loc.setY(loc.getY() + 0.4D);
|
||||
int gameMode = player.getGameMode().getValue();
|
||||
GameMode gameMode = player.getGameMode();
|
||||
ItemStack[] arm;
|
||||
ItemStack[] inv;
|
||||
boolean operator;
|
||||
@@ -78,7 +78,7 @@ public class LimboCache {
|
||||
player.sendMessage("Your inventory has been cleaned!");
|
||||
}
|
||||
}
|
||||
gameMode = 0;
|
||||
gameMode = GameMode.SURVIVAL;
|
||||
}
|
||||
if(player.isDead()) {
|
||||
loc = plugin.getSpawnLocation(player.getWorld());
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package fr.xephi.authme.cache.limbo;
|
||||
|
||||
import org.bukkit.GameMode;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
@@ -11,12 +12,12 @@ public class LimboPlayer {
|
||||
private Location loc = null;
|
||||
private int timeoutTaskId = -1;
|
||||
private int messageTaskId = -1;
|
||||
private int gameMode = 0;
|
||||
private GameMode gameMode = GameMode.SURVIVAL;
|
||||
private boolean operator = false;
|
||||
private String group = null;
|
||||
private boolean flying = false;
|
||||
|
||||
public LimboPlayer(String name, Location loc, ItemStack[] inventory, ItemStack[] armour, int gameMode, boolean operator, String group, boolean flying) {
|
||||
public LimboPlayer(String name, Location loc, ItemStack[] inventory, ItemStack[] armour, GameMode gameMode, boolean operator, String group, boolean flying) {
|
||||
this.name = name;
|
||||
this.loc = loc;
|
||||
this.inventory = inventory;
|
||||
@@ -27,7 +28,7 @@ public class LimboPlayer {
|
||||
this.flying = flying;
|
||||
}
|
||||
|
||||
public LimboPlayer(String name, Location loc, int gameMode, boolean operator, String group, boolean flying) {
|
||||
public LimboPlayer(String name, Location loc, GameMode gameMode, boolean operator, String group, boolean flying) {
|
||||
this.name = name;
|
||||
this.loc = loc;
|
||||
this.gameMode = gameMode;
|
||||
@@ -65,7 +66,7 @@ public class LimboPlayer {
|
||||
this.inventory = inventory;
|
||||
}
|
||||
|
||||
public int getGameMode() {
|
||||
public GameMode getGameMode() {
|
||||
return gameMode;
|
||||
}
|
||||
|
||||
|
||||
@@ -55,6 +55,10 @@ public class AdminCommand implements CommandExecutor {
|
||||
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command cmnd, String label, String[] args) {
|
||||
if (!plugin.authmePermissible(sender, "authme.admin." + args[0].toLowerCase())) {
|
||||
m._(sender, "no_perm");
|
||||
return true;
|
||||
}
|
||||
if (args.length == 0) {
|
||||
sender.sendMessage("Usage: /authme reload - Reload the config");
|
||||
sender.sendMessage("/authme register <playername> <password> - Register a player");
|
||||
@@ -86,11 +90,6 @@ public class AdminCommand implements CommandExecutor {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!plugin.authmePermissible(sender, "authme.admin." + args[0].toLowerCase())) {
|
||||
sender.sendMessage(m._("no_perm"));
|
||||
return true;
|
||||
}
|
||||
|
||||
if (args[0].equalsIgnoreCase("version")) {
|
||||
sender.sendMessage("AuthMe Version: "+AuthMe.getInstance().getDescription().getVersion());
|
||||
return true;
|
||||
@@ -151,7 +150,7 @@ public class AdminCommand implements CommandExecutor {
|
||||
Settings.reloadConfigOptions(newConfig);
|
||||
m.reLoad();
|
||||
s.reLoad();
|
||||
sender.sendMessage(m._("reload"));
|
||||
m._(sender, "reload");
|
||||
} else if (args[0].equalsIgnoreCase("lastlogin")) {
|
||||
if (args.length != 2) {
|
||||
sender.sendMessage("Usage: /authme lastlogin <playername>");
|
||||
@@ -270,7 +269,7 @@ public class AdminCommand implements CommandExecutor {
|
||||
try {
|
||||
String name = args[1].toLowerCase();
|
||||
if (database.isAuthAvailable(name)) {
|
||||
sender.sendMessage(m._("user_regged"));
|
||||
m._(sender, "user_regged");
|
||||
return true;
|
||||
}
|
||||
String hash = PasswordSecurity.getHash(Settings.getPasswordHash, args[2], name);
|
||||
@@ -280,14 +279,14 @@ public class AdminCommand implements CommandExecutor {
|
||||
else
|
||||
auth.setSalt("");
|
||||
if (!database.saveAuth(auth)) {
|
||||
sender.sendMessage(m._("error"));
|
||||
m._(sender, "error");
|
||||
return true;
|
||||
}
|
||||
sender.sendMessage(m._("registered"));
|
||||
m._(sender, "registered");
|
||||
ConsoleLogger.info(args[1] + " registered");
|
||||
} catch (NoSuchAlgorithmException ex) {
|
||||
ConsoleLogger.showError(ex.getMessage());
|
||||
sender.sendMessage(m._("error"));
|
||||
m._(sender, "error");
|
||||
}
|
||||
return true;
|
||||
} else if (args[0].equalsIgnoreCase("convertflattosql")) {
|
||||
@@ -352,7 +351,7 @@ public class AdminCommand implements CommandExecutor {
|
||||
}
|
||||
getAuth.setEmail(args[2]);
|
||||
if (!database.updateEmail(getAuth)) {
|
||||
sender.sendMessage(m._("error"));
|
||||
m._(sender, "error");
|
||||
return true;
|
||||
}
|
||||
if (PlayerCache.getInstance().getAuth(playername) != null)
|
||||
@@ -434,13 +433,13 @@ public class AdminCommand implements CommandExecutor {
|
||||
} else if (database.isAuthAvailable(name)) {
|
||||
auth = database.getAuth(name);
|
||||
} else {
|
||||
sender.sendMessage(m._("unknown_user"));
|
||||
m._(sender, "unknown_user");
|
||||
return true;
|
||||
}
|
||||
auth.setHash(hash);
|
||||
auth.setSalt(PasswordSecurity.userSalt.get(name));
|
||||
if (!database.updatePassword(auth)) {
|
||||
sender.sendMessage(m._("error"));
|
||||
m._(sender, "error");
|
||||
return true;
|
||||
}
|
||||
database.updateSalt(auth);
|
||||
@@ -448,7 +447,7 @@ public class AdminCommand implements CommandExecutor {
|
||||
ConsoleLogger.info(args[1] + "'s password changed");
|
||||
} catch (NoSuchAlgorithmException ex) {
|
||||
ConsoleLogger.showError(ex.getMessage());
|
||||
sender.sendMessage(m._("error"));
|
||||
m._(sender, "error");
|
||||
}
|
||||
return true;
|
||||
} else if (args[0].equalsIgnoreCase("unregister") || args[0].equalsIgnoreCase("unreg") || args[0].equalsIgnoreCase("del") ) {
|
||||
@@ -458,7 +457,7 @@ public class AdminCommand implements CommandExecutor {
|
||||
}
|
||||
String name = args[1].toLowerCase();
|
||||
if (!database.removeAuth(name)) {
|
||||
sender.sendMessage(m._("error"));
|
||||
m._(sender, "error");
|
||||
return true;
|
||||
}
|
||||
PlayerCache.getInstance().removePlayer(name);
|
||||
|
||||
@@ -34,27 +34,27 @@ public class CaptchaCommand implements CommandExecutor {
|
||||
String name = player.getName().toLowerCase();
|
||||
|
||||
if (args.length == 0) {
|
||||
player.sendMessage(m._("usage_captcha"));
|
||||
m._(player, "usage_captcha");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (PlayerCache.getInstance().isAuthenticated(name)) {
|
||||
player.sendMessage(m._("logged_in"));
|
||||
m._(player, "logged_in");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!plugin.authmePermissible(player, "authme." + label.toLowerCase())) {
|
||||
player.sendMessage(m._("no_perm"));
|
||||
m._(player, "no_perm");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!Settings.useCaptcha) {
|
||||
player.sendMessage(m._("usage_log"));
|
||||
m._(player, "usage_log");
|
||||
return true;
|
||||
}
|
||||
|
||||
if(!plugin.cap.containsKey(name)) {
|
||||
player.sendMessage(m._("usage_log"));
|
||||
m._(player, "usage_log");
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -69,8 +69,8 @@ public class CaptchaCommand implements CommandExecutor {
|
||||
plugin.cap.remove(name);
|
||||
} catch (NullPointerException npe) {
|
||||
}
|
||||
player.sendMessage(m._("valid_captcha"));
|
||||
player.sendMessage(m._("login_msg"));
|
||||
m._(player, "valid_captcha");
|
||||
m._(player, "login_msg");
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -37,19 +37,19 @@ public class ChangePasswordCommand implements CommandExecutor {
|
||||
}
|
||||
|
||||
if (!plugin.authmePermissible(sender, "authme." + label.toLowerCase())) {
|
||||
sender.sendMessage(m._("no_perm"));
|
||||
m._(sender, "no_perm");
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player = (Player) sender;
|
||||
String name = player.getName().toLowerCase();
|
||||
if (!PlayerCache.getInstance().isAuthenticated(name)) {
|
||||
player.sendMessage(m._("not_logged_in"));
|
||||
m._(player, "not_logged_in");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (args.length != 2) {
|
||||
player.sendMessage(m._("usage_changepassword"));
|
||||
m._(player, "usage_changepassword");
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -64,22 +64,22 @@ public class ChangePasswordCommand implements CommandExecutor {
|
||||
else
|
||||
auth.setSalt("");
|
||||
if (!database.updatePassword(auth)) {
|
||||
player.sendMessage(m._("error"));
|
||||
m._(player, "error");
|
||||
return true;
|
||||
}
|
||||
database.updateSalt(auth);
|
||||
PlayerCache.getInstance().updatePlayer(auth);
|
||||
player.sendMessage(m._("pwd_changed"));
|
||||
m._(player, "pwd_changed");
|
||||
ConsoleLogger.info(player.getName() + " changed his password");
|
||||
if(plugin.notifications != null) {
|
||||
plugin.notifications.showNotification(new Notification("[AuthMe] " + player.getName() + " change his password!"));
|
||||
}
|
||||
} else {
|
||||
player.sendMessage(m._("wrong_pwd"));
|
||||
m._(player, "wrong_pwd");
|
||||
}
|
||||
} catch (NoSuchAlgorithmException ex) {
|
||||
ConsoleLogger.showError(ex.getMessage());
|
||||
sender.sendMessage(m._("error"));
|
||||
m._(sender, "error");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ public class EmailCommand implements CommandExecutor {
|
||||
}
|
||||
|
||||
if (!plugin.authmePermissible(sender, "authme." + label.toLowerCase())) {
|
||||
sender.sendMessage(m._("no_perm"));
|
||||
m._(sender, "no_perm");
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -48,89 +48,89 @@ public class EmailCommand implements CommandExecutor {
|
||||
String name = player.getName().toLowerCase();
|
||||
|
||||
if (args.length == 0) {
|
||||
player.sendMessage(m._("usage_email_add"));
|
||||
player.sendMessage(m._("usage_email_change"));
|
||||
player.sendMessage(m._("usage_email_recovery"));
|
||||
m._(player, "usage_email_add");
|
||||
m._(player, "usage_email_change");
|
||||
m._(player, "usage_email_recovery");
|
||||
return true;
|
||||
}
|
||||
|
||||
if(args[0].equalsIgnoreCase("add")) {
|
||||
if (args.length != 3) {
|
||||
player.sendMessage(m._("usage_email_add"));
|
||||
m._(player, "usage_email_add");
|
||||
return true;
|
||||
}
|
||||
if(args[1].equals(args[2]) && PlayerCache.getInstance().isAuthenticated(name)) {
|
||||
PlayerAuth auth = PlayerCache.getInstance().getAuth(name);
|
||||
if (auth.getEmail() == null || (!auth.getEmail().equals("your@email.com") && !auth.getEmail().isEmpty())) {
|
||||
player.sendMessage("usage_email_change");
|
||||
m._(player, "usage_email_change");
|
||||
return true;
|
||||
}
|
||||
if (!args[1].contains("@")) {
|
||||
player.sendMessage(m._("email_invalid"));
|
||||
m._(player, "email_invalid");
|
||||
return true;
|
||||
}
|
||||
auth.setEmail(args[1]);
|
||||
if (!data.updateEmail(auth)) {
|
||||
player.sendMessage(m._("error"));
|
||||
m._(player, "error");
|
||||
return true;
|
||||
}
|
||||
PlayerCache.getInstance().updatePlayer(auth);
|
||||
player.sendMessage(m._("email_added"));
|
||||
m._(player, "email_added");
|
||||
player.sendMessage(auth.getEmail());
|
||||
} else if (PlayerCache.getInstance().isAuthenticated(name)){
|
||||
player.sendMessage(m._("email_confirm"));
|
||||
m._(player, "email_confirm");
|
||||
} else {
|
||||
if (!data.isAuthAvailable(name)) {
|
||||
player.sendMessage(m._("login_msg"));
|
||||
m._(player, "login_msg");
|
||||
} else {
|
||||
player.sendMessage(m._("reg_email_msg"));
|
||||
m._(player, "reg_email_msg");
|
||||
}
|
||||
}
|
||||
} else if(args[0].equalsIgnoreCase("change") && args.length == 3 ) {
|
||||
if(PlayerCache.getInstance().isAuthenticated(name)) {
|
||||
PlayerAuth auth = PlayerCache.getInstance().getAuth(name);
|
||||
if (auth.getEmail() == null || auth.getEmail().equals("your@email.com") || auth.getEmail().isEmpty()) {
|
||||
player.sendMessage(m._("usage_email_add"));
|
||||
m._(player, "usage_email_add");
|
||||
return true;
|
||||
}
|
||||
if (!args[1].equals(auth.getEmail())) {
|
||||
player.sendMessage(m._("old_email_invalid"));
|
||||
m._(player, "old_email_invalid");
|
||||
return true;
|
||||
}
|
||||
if (!args[2].contains("@")) {
|
||||
player.sendMessage(m._("new_email_invalid"));
|
||||
m._(player, "new_email_invalid");
|
||||
return true;
|
||||
}
|
||||
auth.setEmail(args[2]);
|
||||
if (!data.updateEmail(auth)) {
|
||||
player.sendMessage(m._("bad_database_email"));
|
||||
m._(player, "error");
|
||||
return true;
|
||||
}
|
||||
PlayerCache.getInstance().updatePlayer(auth);
|
||||
player.sendMessage(m._("email_changed"));
|
||||
m._(player, "email_changed");
|
||||
player.sendMessage(m._("email_defined") + auth.getEmail());
|
||||
} else if (PlayerCache.getInstance().isAuthenticated(name)){
|
||||
player.sendMessage(m._("email_confirm"));
|
||||
m._(player, "email_confirm");
|
||||
} else {
|
||||
if (!data.isAuthAvailable(name)) {
|
||||
player.sendMessage(m._("login_msg"));
|
||||
m._(player, "login_msg");
|
||||
} else {
|
||||
player.sendMessage(m._("reg_email_msg"));
|
||||
m._(player, "reg_email_msg");
|
||||
}
|
||||
}
|
||||
}
|
||||
if(args[0].equalsIgnoreCase("recovery")) {
|
||||
if (args.length != 2) {
|
||||
player.sendMessage(m._("usage_email_recovery"));
|
||||
m._(player, "usage_email_recovery");
|
||||
return true;
|
||||
}
|
||||
if (plugin.mail == null) {
|
||||
player.sendMessage(m._("error"));
|
||||
m._(player, "error");
|
||||
return true;
|
||||
}
|
||||
if (data.isAuthAvailable(name)) {
|
||||
if (PlayerCache.getInstance().isAuthenticated(name)) {
|
||||
player.sendMessage(m._("logged_in"));
|
||||
m._(player, "logged_in");
|
||||
return true;
|
||||
}
|
||||
try {
|
||||
@@ -143,16 +143,16 @@ public class EmailCommand implements CommandExecutor {
|
||||
} else if (data.isAuthAvailable(name)) {
|
||||
auth = data.getAuth(name);
|
||||
} else {
|
||||
sender.sendMessage(m._("unknown_user"));
|
||||
m._(player, "unknown_user");
|
||||
return true;
|
||||
}
|
||||
if (Settings.getmailAccount.equals("") || Settings.getmailAccount.isEmpty()) {
|
||||
player.sendMessage(m._("error"));
|
||||
m._(player, "error");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!args[1].equalsIgnoreCase(auth.getEmail())) {
|
||||
player.sendMessage(m._("email_invalid"));
|
||||
m._(player, "email_invalid");
|
||||
return true;
|
||||
}
|
||||
final String finalhashnew = hashnew;
|
||||
@@ -170,16 +170,16 @@ public class EmailCommand implements CommandExecutor {
|
||||
});
|
||||
}
|
||||
plugin.mail.main(auth, thePass);
|
||||
player.sendMessage(m._("email_send"));
|
||||
m._(player, "email_send");
|
||||
} catch (NoSuchAlgorithmException ex) {
|
||||
ConsoleLogger.showError(ex.getMessage());
|
||||
sender.sendMessage(m._("error"));
|
||||
m._(sender, "error");
|
||||
} catch (NoClassDefFoundError ncdfe) {
|
||||
ConsoleLogger.showError(ncdfe.getMessage());
|
||||
sender.sendMessage(m._("error"));
|
||||
m._(sender, "error");
|
||||
}
|
||||
} else {
|
||||
player.sendMessage(m._("reg_email_msg"));
|
||||
m._(player, "reg_email_msg");
|
||||
}
|
||||
}
|
||||
return true;
|
||||
|
||||
@@ -27,12 +27,12 @@ public class LoginCommand implements CommandExecutor {
|
||||
final Player player = (Player) sender;
|
||||
|
||||
if (args.length == 0) {
|
||||
player.sendMessage(m._("usage_log"));
|
||||
m._(player, "usage_log");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!plugin.authmePermissible(player, "authme." + label.toLowerCase())) {
|
||||
player.sendMessage(m._("no_perm"));
|
||||
m._(player, "no_perm");
|
||||
return true;
|
||||
}
|
||||
plugin.management.performLogin(player, args[0], false, false);
|
||||
|
||||
@@ -7,7 +7,6 @@ import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.scheduler.BukkitScheduler;
|
||||
import org.bukkit.scheduler.BukkitTask;
|
||||
|
||||
@@ -50,7 +49,7 @@ public class LogoutCommand implements CommandExecutor {
|
||||
}
|
||||
|
||||
if (!plugin.authmePermissible(sender, "authme." + label.toLowerCase())) {
|
||||
sender.sendMessage(m._("no_perm"));
|
||||
m._(sender, "no_perm");
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -58,7 +57,7 @@ public class LogoutCommand implements CommandExecutor {
|
||||
String name = player.getName().toLowerCase();
|
||||
|
||||
if (!PlayerCache.getInstance().isAuthenticated(name)) {
|
||||
player.sendMessage(m._("not_logged_in"));
|
||||
m._(player, "not_logged_in");
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -119,7 +118,7 @@ public class LogoutCommand implements CommandExecutor {
|
||||
player.getVehicle().eject();
|
||||
} catch (NullPointerException npe) {
|
||||
}
|
||||
player.sendMessage(m._("logout"));
|
||||
m._(player, "logout");
|
||||
ConsoleLogger.info(player.getDisplayName() + " logged out");
|
||||
if(plugin.notifications != null) {
|
||||
plugin.notifications.showNotification(new Notification("[AuthMe] " + player.getName() + " logged out!"));
|
||||
|
||||
@@ -28,7 +28,7 @@ public class PasspartuCommand implements CommandExecutor {
|
||||
public boolean onCommand(CommandSender sender, Command cmnd, String label, String[] args) {
|
||||
|
||||
if (!plugin.authmePermissible(sender, "authme." + label.toLowerCase())) {
|
||||
sender.sendMessage(m._("no_perm"));
|
||||
m._(sender, "no_perm");
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -55,7 +55,7 @@ public class RegisterCommand implements CommandExecutor {
|
||||
}
|
||||
|
||||
if (!plugin.authmePermissible(sender, "authme." + label.toLowerCase())) {
|
||||
sender.sendMessage(m._("no_perm"));
|
||||
m._(sender, "no_perm");
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -71,17 +71,17 @@ public class RegisterCommand implements CommandExecutor {
|
||||
final String ip = ipA;
|
||||
|
||||
if (PlayerCache.getInstance().isAuthenticated(name)) {
|
||||
player.sendMessage(m._("logged_in"));
|
||||
m._(player, "logged_in");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!Settings.isRegistrationEnabled) {
|
||||
player.sendMessage(m._("reg_disabled"));
|
||||
m._(player, "reg_disabled");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (database.isAuthAvailable(player.getName().toLowerCase())) {
|
||||
player.sendMessage(m._("user_regged"));
|
||||
m._(player, "user_regged");
|
||||
if (pllog.getStringList("players").contains(player.getName())) {
|
||||
pllog.getStringList("players").remove(player.getName());
|
||||
}
|
||||
@@ -90,30 +90,30 @@ public class RegisterCommand implements CommandExecutor {
|
||||
|
||||
if(Settings.getmaxRegPerIp > 0 ){
|
||||
if(!plugin.authmePermissible(sender, "authme.allow2accounts") && database.getAllAuthsByIp(ipA).size() >= Settings.getmaxRegPerIp) {
|
||||
player.sendMessage(m._("max_reg"));
|
||||
m._(player, "max_reg");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if(Settings.emailRegistration && !Settings.getmailAccount.isEmpty()) {
|
||||
if(!args[0].contains("@")) {
|
||||
player.sendMessage(m._("usage_reg"));
|
||||
m._(player, "usage_reg");
|
||||
return true;
|
||||
}
|
||||
if(Settings.doubleEmailCheck) {
|
||||
if(args.length < 2) {
|
||||
player.sendMessage(m._("usage_reg"));
|
||||
m._(player, "usage_reg");
|
||||
return true;
|
||||
}
|
||||
if(!args[0].equals(args[1])) {
|
||||
player.sendMessage(m._("usage_reg"));
|
||||
m._(player, "usage_reg");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
final String email = args[0];
|
||||
if(Settings.getmaxRegPerEmail > 0) {
|
||||
if (!plugin.authmePermissible(sender, "authme.allow2accounts") && database.getAllAuthsByEmail(email).size() >= Settings.getmaxRegPerEmail) {
|
||||
player.sendMessage(m._("max_reg"));
|
||||
m._(player, "max_reg");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -152,7 +152,7 @@ public class RegisterCommand implements CommandExecutor {
|
||||
if(!Settings.getRegisteredGroup.isEmpty()){
|
||||
Utils.getInstance().setGroup(player, Utils.groupType.REGISTERED);
|
||||
}
|
||||
player.sendMessage(m._("vb_nonActiv"));
|
||||
m._(player, "vb_nonActiv");
|
||||
String msg = m._("login_msg");
|
||||
int time = Settings.getRegistrationTimeout * 20;
|
||||
int msgInterval = Settings.getWarnMessageInterval;
|
||||
@@ -195,12 +195,12 @@ public class RegisterCommand implements CommandExecutor {
|
||||
}
|
||||
|
||||
if (args.length == 0 || (Settings.getEnablePasswordVerifier && args.length < 2) ) {
|
||||
player.sendMessage(m._("usage_reg"));
|
||||
m._(player, "usage_reg");
|
||||
return true;
|
||||
}
|
||||
|
||||
if(args[0].length() < Settings.getPasswordMinLen || args[0].length() > Settings.passwordMaxLength) {
|
||||
player.sendMessage(m._("pass_len"));
|
||||
m._(player, "pass_len");
|
||||
return true;
|
||||
}
|
||||
try {
|
||||
@@ -209,7 +209,7 @@ public class RegisterCommand implements CommandExecutor {
|
||||
if (args[0].equals(args[1])) {
|
||||
hash = PasswordSecurity.getHash(Settings.getPasswordHash, args[0], name);
|
||||
} else {
|
||||
player.sendMessage(m._("password_error"));
|
||||
m._(player, "password_error");
|
||||
return true;
|
||||
}
|
||||
} else
|
||||
@@ -221,13 +221,13 @@ public class RegisterCommand implements CommandExecutor {
|
||||
auth = new PlayerAuth(name, hash, PasswordSecurity.userSalt.get(name), ip, new Date().getTime(), player.getName());
|
||||
}
|
||||
if (!database.saveAuth(auth)) {
|
||||
player.sendMessage(m._("error"));
|
||||
m._(player, "error");
|
||||
return true;
|
||||
}
|
||||
PlayerCache.getInstance().addPlayer(auth);
|
||||
LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(name);
|
||||
if (limbo != null) {
|
||||
player.setGameMode(GameMode.getByValue(limbo.getGameMode()));
|
||||
player.setGameMode(limbo.getGameMode());
|
||||
if (Settings.isTeleportToSpawnEnabled) {
|
||||
World world = player.getWorld();
|
||||
Location loca = plugin.getSpawnLocation(world);
|
||||
@@ -248,9 +248,9 @@ public class RegisterCommand implements CommandExecutor {
|
||||
if(!Settings.getRegisteredGroup.isEmpty()){
|
||||
Utils.getInstance().setGroup(player, Utils.groupType.REGISTERED);
|
||||
}
|
||||
player.sendMessage(m._("registered"));
|
||||
m._(player, "registered");
|
||||
if (!Settings.getmailAccount.isEmpty())
|
||||
player.sendMessage(m._("add_email"));
|
||||
m._(player, "add_email");
|
||||
this.isFirstTimeJoin = true;
|
||||
if (player.getGameMode() != GameMode.CREATIVE && !Settings.isMovementAllowed) {
|
||||
player.setAllowFlight(false);
|
||||
@@ -264,7 +264,7 @@ public class RegisterCommand implements CommandExecutor {
|
||||
}
|
||||
} catch (NoSuchAlgorithmException ex) {
|
||||
ConsoleLogger.showError(ex.getMessage());
|
||||
sender.sendMessage(m._("error"));
|
||||
m._(sender, "error");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -49,7 +49,7 @@ public class UnregisterCommand implements CommandExecutor {
|
||||
}
|
||||
|
||||
if (!plugin.authmePermissible(sender, "authme." + label.toLowerCase())) {
|
||||
sender.sendMessage(m._("no_perm"));
|
||||
m._(sender, "no_perm");
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -57,12 +57,12 @@ public class UnregisterCommand implements CommandExecutor {
|
||||
String name = player.getName().toLowerCase();
|
||||
|
||||
if (!PlayerCache.getInstance().isAuthenticated(name)) {
|
||||
player.sendMessage(m._("not_logged_in"));
|
||||
m._(player, "not_logged_in");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (args.length != 1) {
|
||||
player.sendMessage(m._("usage_unreg"));
|
||||
m._(player, "usage_unreg");
|
||||
return true;
|
||||
}
|
||||
try {
|
||||
@@ -125,7 +125,7 @@ public class UnregisterCommand implements CommandExecutor {
|
||||
}
|
||||
return true;
|
||||
} else {
|
||||
player.sendMessage(m._("wrong_pwd"));
|
||||
m._(player, "wrong_pwd");
|
||||
}
|
||||
} catch (NoSuchAlgorithmException ex) {
|
||||
ConsoleLogger.showError(ex.getMessage());
|
||||
|
||||
@@ -64,8 +64,8 @@ import fr.xephi.authme.task.TimeoutTask;
|
||||
|
||||
public class AuthMePlayerListener implements Listener {
|
||||
|
||||
public static int gm = 0;
|
||||
public static HashMap<String, Integer> gameMode = new HashMap<String, Integer>();
|
||||
public static GameMode gm = GameMode.SURVIVAL;
|
||||
public static HashMap<String, GameMode> gameMode = new HashMap<String, GameMode>();
|
||||
public static HashMap<String, String> joinMessage = new HashMap<String, String>();
|
||||
private Utils utils = Utils.getInstance();
|
||||
private Messages m = Messages.getInstance();
|
||||
@@ -132,16 +132,16 @@ public class AuthMePlayerListener implements Listener {
|
||||
String cmd = event.getMessage().split(" ")[0];
|
||||
|
||||
if (data.isAuthAvailable(name)) {
|
||||
player.sendMessage(m._("login_msg"));
|
||||
m._(player, "login_msg");
|
||||
} else {
|
||||
if (!Settings.isForcedRegistrationEnabled) {
|
||||
return;
|
||||
}
|
||||
if (Settings.emailRegistration) {
|
||||
player.sendMessage(m._("reg_email_msg"));
|
||||
m._(player, "reg_email_msg");
|
||||
return;
|
||||
} else {
|
||||
player.sendMessage(m._("reg_msg"));
|
||||
m._(player, "reg_msg");
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -169,16 +169,16 @@ public class AuthMePlayerListener implements Listener {
|
||||
String cmd = event.getMessage().split(" ")[0];
|
||||
|
||||
if (data.isAuthAvailable(name)) {
|
||||
player.sendMessage(m._("login_msg"));
|
||||
m._(player, "login_msg");
|
||||
} else {
|
||||
if (!Settings.isForcedRegistrationEnabled) {
|
||||
return;
|
||||
}
|
||||
if (Settings.emailRegistration) {
|
||||
player.sendMessage(m._("reg_email_msg"));
|
||||
m._(player, "reg_email_msg");
|
||||
return;
|
||||
} else {
|
||||
player.sendMessage(m._("reg_msg"));
|
||||
m._(player, "reg_msg");
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -206,16 +206,16 @@ public class AuthMePlayerListener implements Listener {
|
||||
String cmd = event.getMessage().split(" ")[0];
|
||||
|
||||
if (data.isAuthAvailable(name)) {
|
||||
player.sendMessage(m._("login_msg"));
|
||||
m._(player, "login_msg");
|
||||
} else {
|
||||
if (!Settings.isForcedRegistrationEnabled) {
|
||||
return;
|
||||
}
|
||||
if (Settings.emailRegistration) {
|
||||
player.sendMessage(m._("reg_email_msg"));
|
||||
m._(player, "reg_email_msg");
|
||||
return;
|
||||
} else {
|
||||
player.sendMessage(m._("reg_msg"));
|
||||
m._(player, "reg_msg");
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -243,16 +243,16 @@ public class AuthMePlayerListener implements Listener {
|
||||
String cmd = event.getMessage().split(" ")[0];
|
||||
|
||||
if (data.isAuthAvailable(name)) {
|
||||
player.sendMessage(m._("login_msg"));
|
||||
m._(player, "login_msg");
|
||||
} else {
|
||||
if (!Settings.isForcedRegistrationEnabled) {
|
||||
return;
|
||||
}
|
||||
if (Settings.emailRegistration) {
|
||||
player.sendMessage(m._("reg_email_msg"));
|
||||
m._(player, "reg_email_msg");
|
||||
return;
|
||||
} else {
|
||||
player.sendMessage(m._("reg_msg"));
|
||||
m._(player, "reg_msg");
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -280,16 +280,16 @@ public class AuthMePlayerListener implements Listener {
|
||||
String cmd = event.getMessage().split(" ")[0];
|
||||
|
||||
if (data.isAuthAvailable(name)) {
|
||||
player.sendMessage(m._("login_msg"));
|
||||
m._(player, "login_msg");
|
||||
} else {
|
||||
if (!Settings.isForcedRegistrationEnabled) {
|
||||
return;
|
||||
}
|
||||
if (Settings.emailRegistration) {
|
||||
player.sendMessage(m._("reg_email_msg"));
|
||||
m._(player, "reg_email_msg");
|
||||
return;
|
||||
} else {
|
||||
player.sendMessage(m._("reg_msg"));
|
||||
m._(player, "reg_msg");
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -317,15 +317,15 @@ public class AuthMePlayerListener implements Listener {
|
||||
String cmd = event.getMessage().split(" ")[0];
|
||||
|
||||
if (data.isAuthAvailable(name)) {
|
||||
player.sendMessage(m._("login_msg"));
|
||||
m._(player, "login_msg");
|
||||
} else {
|
||||
if (!Settings.isForcedRegistrationEnabled) {
|
||||
return;
|
||||
}
|
||||
if (Settings.emailRegistration) {
|
||||
player.sendMessage(m._("reg_email_msg"));
|
||||
m._(player, "reg_email_msg");
|
||||
} else {
|
||||
player.sendMessage(m._("reg_msg"));
|
||||
m._(player, "reg_msg");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -537,7 +537,7 @@ public class AuthMePlayerListener implements Listener {
|
||||
Player player = event.getPlayer();
|
||||
World world = player.getWorld();
|
||||
Location spawnLoc = plugin.getSpawnLocation(world);
|
||||
gm = player.getGameMode().getValue();
|
||||
gm = player.getGameMode();
|
||||
final String name = player.getName().toLowerCase();
|
||||
gameMode.put(name, gm);
|
||||
BukkitScheduler sched = plugin.getServer().getScheduler();
|
||||
@@ -558,9 +558,9 @@ public class AuthMePlayerListener implements Listener {
|
||||
ip = plugin.realIp.get(name);
|
||||
}
|
||||
if(Settings.isAllowRestrictedIp && !Settings.getRestrictedIp(name, ip)) {
|
||||
int gM = gameMode.get(name);
|
||||
GameMode gM = gameMode.get(name);
|
||||
this.causeByAuthMe = true;
|
||||
player.setGameMode(GameMode.getByValue(gM));
|
||||
player.setGameMode(gM);
|
||||
this.causeByAuthMe = false;
|
||||
player.kickPlayer("You are not the Owner of this account, please try another name!");
|
||||
if (Settings.banUnsafeIp)
|
||||
@@ -581,12 +581,12 @@ public class AuthMePlayerListener implements Listener {
|
||||
} else {
|
||||
PlayerCache.getInstance().addPlayer(auth);
|
||||
}
|
||||
player.sendMessage(m._("valid_session"));
|
||||
m._(player, "valid_session");
|
||||
return;
|
||||
} else if (!Settings.sessionExpireOnIpChange){
|
||||
int gM = gameMode.get(name);
|
||||
GameMode gM = gameMode.get(name);
|
||||
this.causeByAuthMe = true;
|
||||
player.setGameMode(GameMode.getByValue(gM));
|
||||
player.setGameMode(gM);
|
||||
this.causeByAuthMe = false;
|
||||
player.kickPlayer(m._("unvalid_session"));
|
||||
return;
|
||||
@@ -600,9 +600,9 @@ public class AuthMePlayerListener implements Listener {
|
||||
PlayerCache.getInstance().removePlayer(name);
|
||||
LimboCache.getInstance().addLimboPlayer(player , utils.removeAll(player));
|
||||
} else {
|
||||
int gM = gameMode.get(name);
|
||||
GameMode gM = gameMode.get(name);
|
||||
this.causeByAuthMe = true;
|
||||
player.setGameMode(GameMode.getByValue(gM));
|
||||
player.setGameMode(gM);
|
||||
this.causeByAuthMe = false;
|
||||
player.kickPlayer(m._("unvalid_session"));
|
||||
return;
|
||||
@@ -698,7 +698,7 @@ public class AuthMePlayerListener implements Listener {
|
||||
return;
|
||||
Block b = player.getLocation().getBlock();
|
||||
if (b.getType() == Material.PORTAL || b.getType() == Material.ENDER_PORTAL || b.getType() == Material.LAVA || b.getType() == Material.STATIONARY_LAVA) {
|
||||
player.sendMessage(m._("unsafe_spawn"));
|
||||
m._(player, "unsafe_spawn");
|
||||
player.teleport(spawnLoc);
|
||||
return;
|
||||
}
|
||||
@@ -827,7 +827,7 @@ public class AuthMePlayerListener implements Listener {
|
||||
API.setPlayerInventory(player, ev.getInventory(), ev.getArmor());
|
||||
}
|
||||
} catch (NullPointerException npe){
|
||||
ConsoleLogger.showError("Problem while restore " + name + "inventory after a kick");
|
||||
ConsoleLogger.showError("Problem while restore " + name + " inventory after a kick");
|
||||
}
|
||||
}
|
||||
try {
|
||||
|
||||
@@ -2,9 +2,8 @@ package fr.xephi.authme.settings;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.InputStream;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
|
||||
import fr.xephi.authme.AuthMe;
|
||||
|
||||
public class Messages extends CustomConfiguration {
|
||||
@@ -66,11 +65,8 @@ public class Messages extends CustomConfiguration {
|
||||
this.save();
|
||||
}
|
||||
|
||||
public String _(String msg) {
|
||||
public void _(CommandSender sender, String msg) {
|
||||
String loc = (String) this.get(msg, this.getDefault(msg));
|
||||
if (loc != null) {
|
||||
return loc.replace("&", "\u00a7");
|
||||
}
|
||||
if (loc == null && !contains(msg)) {
|
||||
set(msg, this.getDefault(msg));
|
||||
save();
|
||||
@@ -78,7 +74,22 @@ public class Messages extends CustomConfiguration {
|
||||
loc = (String) this.get(msg, this.getDefault(msg));
|
||||
}
|
||||
if (loc == null)
|
||||
return "Error with Translation files; Please contact the admin ";
|
||||
loc = "Error with Translation files; Please contact the admin ";
|
||||
for (String l : loc.split("&n")) {
|
||||
sender.sendMessage(l.replace("&", "\u00a7"));
|
||||
}
|
||||
}
|
||||
|
||||
public String _(String msg) {
|
||||
String loc = (String) this.get(msg, this.getDefault(msg));
|
||||
if (loc == null && !contains(msg)) {
|
||||
set(msg, this.getDefault(msg));
|
||||
save();
|
||||
load();
|
||||
loc = (String) this.get(msg, this.getDefault(msg));
|
||||
}
|
||||
if (loc == null)
|
||||
loc = "Error with Translation files; Please contact the admin ";
|
||||
return loc.replace("&", "\u00a7");
|
||||
}
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ public final class Settings extends YamlConfiguration {
|
||||
useCaptcha, emailRegistration, multiverse, notifications, chestshop, bungee, banUnsafeIp, doubleEmailCheck, sessionExpireOnIpChange,
|
||||
disableSocialSpy, useMultiThreading, forceOnlyAfterLogin, useEssentialsMotd,
|
||||
usePurge, purgePlayerDat, purgeEssentialsFile, supportOldPassword, purgeLimitedCreative,
|
||||
purgeAntiXray, purgePermissions, enableProtection, enableAntiBot;
|
||||
purgeAntiXray, purgePermissions, enableProtection, enableAntiBot, recallEmail;
|
||||
|
||||
public static String getNickRegex, getUnloggedinGroup, getMySQLHost, getMySQLPort,
|
||||
getMySQLUsername, getMySQLPassword, getMySQLDatabase, getMySQLTablename,
|
||||
@@ -62,7 +62,7 @@ public final class Settings extends YamlConfiguration {
|
||||
public static int getWarnMessageInterval, getSessionTimeout, getRegistrationTimeout, getMaxNickLength,
|
||||
getMinNickLength, getPasswordMinLen, getMovementRadius, getmaxRegPerIp, getNonActivatedGroup,
|
||||
passwordMaxLength, getRecoveryPassLength, getMailPort, maxLoginTry, captchaLength, saltLength, getmaxRegPerEmail,
|
||||
bCryptLog2Rounds, purgeDelay, getPhpbbGroup, antiBotSensibility, antiBotDuration;
|
||||
bCryptLog2Rounds, purgeDelay, getPhpbbGroup, antiBotSensibility, antiBotDuration, delayRecall;
|
||||
|
||||
protected static YamlConfiguration configFile;
|
||||
|
||||
@@ -218,6 +218,8 @@ public void loadConfigOptions() {
|
||||
antiBotSensibility = configFile.getInt("Protection.antiBotSensibility", 5);
|
||||
antiBotDuration = configFile.getInt("Protection.antiBotDuration", 10);
|
||||
forceCommands = (List<String>) configFile.getList("settings.forceCommands", new ArrayList<String>());
|
||||
recallEmail = configFile.getBoolean("Email.recallPlayers", false);
|
||||
delayRecall = configFile.getInt("Email.delayRecall", 5);
|
||||
|
||||
saveDefaults();
|
||||
}
|
||||
@@ -360,6 +362,8 @@ public static void reloadConfigOptions(YamlConfiguration newConfig) {
|
||||
antiBotSensibility = configFile.getInt("Protection.antiBotSensibility", 5);
|
||||
antiBotDuration = configFile.getInt("Protection.antiBotDuration", 10);
|
||||
forceCommands = (List<String>) configFile.getList("settings.forceCommands", new ArrayList<String>());
|
||||
recallEmail = configFile.getBoolean("Email.recallPlayers", false);
|
||||
delayRecall = configFile.getInt("Email.delayRecall", 5);
|
||||
}
|
||||
|
||||
public void mergeConfig() {
|
||||
@@ -476,8 +480,13 @@ public void mergeConfig() {
|
||||
set("Protection.antiBotDuration", 10);
|
||||
if(!contains("settings.forceCommands"))
|
||||
set("settings.forceCommands", new ArrayList<String>());
|
||||
if(!contains("Email.recallPlayers"))
|
||||
set("Email.recallPlayers", false);
|
||||
if(!contains("Email.delayRecall"))
|
||||
set("Email.delayRecall", 5);
|
||||
|
||||
plugin.getLogger().info("Merge new Config Options if needed..");
|
||||
plugin.getLogger().warning("Merge new Config Options if needed..");
|
||||
plugin.getLogger().warning("Please check your config.yml file!");
|
||||
plugin.saveConfig();
|
||||
|
||||
return;
|
||||
@@ -655,6 +664,6 @@ public void mergeConfig() {
|
||||
}
|
||||
|
||||
public enum messagesLang {
|
||||
en, de, br, cz, pl, fr, ru, hu, sk, es, zhtw, fi, zhcn, lt, it, ko, pt, nl
|
||||
en, de, br, cz, pl, fr, uk, ru, hu, sk, es, fi, zhtw, zhhk, zhcn, lt, it, ko, pt, nl
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,7 +30,9 @@ public class MessageTask implements Runnable {
|
||||
|
||||
for (Player player : plugin.getServer().getOnlinePlayers()) {
|
||||
if (player.getName().toLowerCase().equals(name)) {
|
||||
player.sendMessage(msg);
|
||||
for (String ms : msg.split("\u00a7n")) {
|
||||
player.sendMessage(ms);
|
||||
}
|
||||
BukkitScheduler sched = plugin.getServer().getScheduler();
|
||||
BukkitTask late = sched.runTaskLater(plugin, this, interval * 20);
|
||||
if(LimboCache.getInstance().hasLimboPlayer(name)) {
|
||||
|
||||
@@ -45,9 +45,9 @@ public class TimeoutTask implements Runnable {
|
||||
playerCache.removeCache(name);
|
||||
}
|
||||
}
|
||||
int gm = AuthMePlayerListener.gameMode.get(name);
|
||||
player.setGameMode(GameMode.getByValue(gm));
|
||||
ConsoleLogger.info("Set " + player.getName() + " to gamemode: " + GameMode.getByValue(gm).name());
|
||||
GameMode gm = AuthMePlayerListener.gameMode.get(name);
|
||||
player.setGameMode(gm);
|
||||
ConsoleLogger.info("Set " + player.getName() + " to gamemode: " + gm.name());
|
||||
player.kickPlayer(m._("timeout"));
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user