Skip to content

Commit

Permalink
微调
Browse files Browse the repository at this point in the history
  • Loading branch information
shulng committed Nov 28, 2024
1 parent 41d6a1a commit fff4c40
Show file tree
Hide file tree
Showing 5 changed files with 22 additions and 69 deletions.
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
package cc.baka9.catseedlogin.bukkit.command;

import java.util.Optional;

import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;

import cc.baka9.catseedlogin.bukkit.CatSeedLogin;
import cc.baka9.catseedlogin.bukkit.Config;
import cc.baka9.catseedlogin.bukkit.database.Cache;
Expand All @@ -25,9 +23,7 @@ public boolean onCommand(CommandSender sender, Command command, String s, String
Player player = (Player) sender;
String name = player.getName();

if (Config.Settings.BedrockLoginBypass && LoginPlayerHelper.isFloodgatePlayer(player)) {
return true;
}
if (Config.Settings.BedrockLoginBypass && LoginPlayerHelper.isFloodgatePlayer(player)) return true;

LoginPlayer lp = Cache.getIgnoreCase(name);
if (lp == null) {
Expand Down Expand Up @@ -93,11 +89,10 @@ public boolean onCommand(CommandSender sender, Command command, String s, String
private void sendEmailCode(CommandSender sender, String name, String mail, EmailCode bindEmail) {
CatSeedLogin.instance.runTaskAsync(() -> {
try {
Mail.sendMail(mail, "邮箱绑定",
"你的验证码是 <strong>" + bindEmail.getCode() + "</strong>" +
"<br/>在服务器中使用帐号 " + name + " 输入指令<strong>/bindemail verify " + bindEmail.getCode() + "</strong> 来绑定邮箱" +
"<br/>绑定邮箱之后可用于忘记密码时重置自己的密码" +
"<br/>此验证码有效期为 " + (bindEmail.getDurability() / (1000 * 60)) + "分钟");
Mail.sendMail(mail, "邮箱绑定", "你的验证码是 <strong>" + bindEmail.getCode() + "</strong>" +
"<br/>在服务器中使用帐号 " + name + " 输入指令<strong>/bindemail verify " + bindEmail.getCode() + "</strong> 来绑定邮箱" +
"<br/>绑定邮箱之后可用于忘记密码时重置自己的密码" +
"<br/>此验证码有效期为 " + (bindEmail.getDurability() / (1000 * 60)) + "分钟");
Bukkit.getScheduler().runTask(CatSeedLogin.instance, () -> {
sender.sendMessage("§6已经向邮箱 " + mail + " 发送了一串绑定验证码,请检查你的邮箱的收件箱");
sender.sendMessage("§c如果未收到,请检查邮箱的垃圾箱!");
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
package cc.baka9.catseedlogin.bukkit.command;

import java.util.Objects;

import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;

import cc.baka9.catseedlogin.bukkit.CatScheduler;
import cc.baka9.catseedlogin.bukkit.CatSeedLogin;
import cc.baka9.catseedlogin.bukkit.Config;
Expand All @@ -19,14 +17,10 @@

public class CommandChangePassword implements CommandExecutor {
@Override
public boolean onCommand(CommandSender sender, Command command, String lable, String[] args){
if (args.length != 3 || !(sender instanceof Player)) {
return false;
}
public boolean onCommand(CommandSender sender, Command command, String lable, String[] args) {
if (args.length != 3 || !(sender instanceof Player)) return false;
String name = sender.getName();
if (Config.Settings.BedrockLoginBypass && LoginPlayerHelper.isFloodgatePlayer((Player) sender)){
return true;
}
if (Config.Settings.BedrockLoginBypass && LoginPlayerHelper.isFloodgatePlayer((Player) sender)) return true;
LoginPlayer lp = Cache.getIgnoreCase(name);
if (lp == null) {
sender.sendMessage(Config.Language.CHANGEPASSWORD_NOREGISTER);
Expand All @@ -39,7 +33,6 @@ public boolean onCommand(CommandSender sender, Command command, String lable, St
if (!Objects.equals(Crypt.encrypt(name, args[0]), lp.getPassword().trim())) {
sender.sendMessage(Config.Language.CHANGEPASSWORD_OLDPASSWORD_INCORRECT);
return true;

}
if (!args[1].equals(args[2])) {
sender.sendMessage(Config.Language.CHANGEPASSWORD_PASSWORD_CONFIRM_FAIL);
Expand All @@ -49,17 +42,14 @@ public boolean onCommand(CommandSender sender, Command command, String lable, St
sender.sendMessage(Config.Language.COMMON_PASSWORD_SO_SIMPLE);
return true;
}
if (!Cache.isLoaded) {
return true;
}
if (!Cache.isLoaded) return true;
sender.sendMessage("§e修改中..");
CatSeedLogin.instance.runTaskAsync(() -> {
try {
lp.setPassword(args[1]);
lp.crypt();
CatSeedLogin.sql.edit(lp);
LoginPlayerHelper.remove(lp);

CatScheduler.runTask(() -> {
Player player = Bukkit.getPlayer(((Player) sender).getUniqueId());
if (player != null && player.isOnline()) {
Expand All @@ -71,11 +61,8 @@ public boolean onCommand(CommandSender sender, Command command, String lable, St
LoginPlayerHelper.sendBlankInventoryPacket(player);
}
}

}
});


} catch (Exception e) {
e.printStackTrace();
sender.sendMessage("§c服务器内部错误!");
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
package cc.baka9.catseedlogin.bukkit.command;

import java.util.Objects;

import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;

import cc.baka9.catseedlogin.bukkit.CatScheduler;
import cc.baka9.catseedlogin.bukkit.Config;
import cc.baka9.catseedlogin.bukkit.database.Cache;
Expand All @@ -18,13 +16,11 @@

public class CommandLogin implements CommandExecutor {
@Override
public boolean onCommand(CommandSender sender, Command command, String lable, String[] args){
public boolean onCommand(CommandSender sender, Command command, String lable, String[] args) {
if (args.length == 0 || !(sender instanceof Player)) return false;
Player player = (Player) sender;
String name = player.getName();
if (Config.Settings.BedrockLoginBypass && LoginPlayerHelper.isFloodgatePlayer(player)){
return true;
}
if (Config.Settings.BedrockLoginBypass && LoginPlayerHelper.isFloodgatePlayer(player)) return true;
if (LoginPlayerHelper.isLogin(name)) {
sender.sendMessage(Config.Language.LOGIN_REPEAT);
return true;
Expand All @@ -42,7 +38,7 @@ public boolean onCommand(CommandSender sender, Command command, String lable, St
CatScheduler.updateInventory(player);
LoginPlayerHelper.recordCurrentIP(player, lp);
if (Config.Settings.AfterLoginBack && Config.Settings.CanTpSpawnLocation) {
Config.getOfflineLocation(player).ifPresent(location -> CatScheduler.teleport(player,location));
Config.getOfflineLocation(player).ifPresent(location -> CatScheduler.teleport(player, location));
}
} else {
sender.sendMessage(Config.Language.LOGIN_FAIL);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
package cc.baka9.catseedlogin.bukkit.command;

import java.util.List;

import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;

import cc.baka9.catseedlogin.bukkit.CatScheduler;
import cc.baka9.catseedlogin.bukkit.CatSeedLogin;
import cc.baka9.catseedlogin.bukkit.Config;
Expand All @@ -18,15 +16,12 @@
import cc.baka9.catseedlogin.util.Util;

public class CommandRegister implements CommandExecutor {

@Override
public boolean onCommand(CommandSender sender, Command command, String lable, String[] args){
public boolean onCommand(CommandSender sender, Command command, String lable, String[] args) {
if (args.length != 2) return false;
Player player = (Player) sender;
String name = sender.getName();
if (Config.Settings.BedrockLoginBypass && LoginPlayerHelper.isFloodgatePlayer(player)){
return true;
}
if (Config.Settings.BedrockLoginBypass && LoginPlayerHelper.isFloodgatePlayer(player)) return true;
if (LoginPlayerHelper.isLogin(name)) {
sender.sendMessage(Config.Language.REGISTER_AFTER_LOGIN_ALREADY);
return true;
Expand All @@ -43,9 +38,7 @@ public boolean onCommand(CommandSender sender, Command command, String lable, St
sender.sendMessage(Config.Language.COMMON_PASSWORD_SO_SIMPLE);
return true;
}
if (!Cache.isLoaded) {
return true;
}
if (!Cache.isLoaded) return true;
sender.sendMessage("§e注册中..");
CatSeedLogin.instance.runTaskAsync(() -> {
try {
Expand All @@ -68,14 +61,11 @@ public boolean onCommand(CommandSender sender, Command command, String lable, St
CatScheduler.updateInventory(player);
LoginPlayerHelper.recordCurrentIP(player, lp);
}


} catch (Exception e) {
e.printStackTrace();
sender.sendMessage("§c服务器内部错误!");
}
});
return true;

}
}
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
package cc.baka9.catseedlogin.bukkit.command;

import java.util.Optional;

import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;

import cc.baka9.catseedlogin.bukkit.CatScheduler;
import cc.baka9.catseedlogin.bukkit.CatSeedLogin;
import cc.baka9.catseedlogin.bukkit.Config;
Expand All @@ -20,15 +18,12 @@

public class CommandResetPassword implements CommandExecutor {
@Override
public boolean onCommand(CommandSender sender, Command command, String s, String[] args){
public boolean onCommand(CommandSender sender, Command command, String s, String[] args) {
if (args.length == 0 || !(sender instanceof Player)) return false;
Player player = (Player) sender;
String name = player.getName();
if (Config.Settings.BedrockLoginBypass && LoginPlayerHelper.isFloodgatePlayer(player)){
return true;
}
if (Config.Settings.BedrockLoginBypass && LoginPlayerHelper.isFloodgatePlayer(player)) return true;
LoginPlayer lp = Cache.getIgnoreCase(name);

if (lp == null) {
sender.sendMessage(Config.Language.RESETPASSWORD_NOREGISTER);
return true;
Expand All @@ -37,7 +32,6 @@ public boolean onCommand(CommandSender sender, Command command, String s, String
sender.sendMessage(Config.Language.RESETPASSWORD_EMAIL_DISABLE);
return true;
}
//command forget
if (args[0].equalsIgnoreCase("forget")) {
if (lp.getEmail() == null) {
sender.sendMessage(Config.Language.RESETPASSWORD_EMAIL_NO_SET);
Expand All @@ -46,16 +40,14 @@ public boolean onCommand(CommandSender sender, Command command, String s, String
if (optionalEmailCode.isPresent()) {
sender.sendMessage(Config.Language.RESETPASSWORD_EMAIL_REPEAT_SEND_MESSAGE.replace("{email}", optionalEmailCode.get().getEmail()));
} else {
//20分钟有效期的验证码
EmailCode emailCode = EmailCode.create(name, lp.getEmail(), 1000 * 60 * 5, EmailCode.Type.ResetPassword);
sender.sendMessage(Config.Language.RESETPASSWORD_EMAIL_SENDING_MESSAGE.replace("{email}", lp.getEmail()));
CatSeedLogin.instance.runTaskAsync(() -> {
try {
if (emailCode != null) {
Mail.sendMail(emailCode.getEmail(), "重置密码",
"你的验证码是 <strong>" + emailCode.getCode() + "</strong>" +
"<br/>在服务器中使用帐号 " + name + " 输入指令<strong>/resetpassword re " + emailCode.getCode() + " 新密码</strong> 来重置新密码" +
"<br/>此验证码有效期为 " + (emailCode.getDurability() / (1000 * 60)) + "分钟");
Mail.sendMail(emailCode.getEmail(), "重置密码", "你的验证码是 <strong>" + emailCode.getCode() + "</strong>" +
"<br/>在服务器中使用帐号 " + name + " 输入指令<strong>/resetpassword re " + emailCode.getCode() + " 新密码</strong> 来重置新密码" +
"<br/>此验证码有效期为 " + (emailCode.getDurability() / (1000 * 60)) + "分钟");
}
Bukkit.getScheduler().runTask(CatSeedLogin.instance, () -> {
if (emailCode != null) {
Expand All @@ -71,7 +63,6 @@ public boolean onCommand(CommandSender sender, Command command, String s, String
}
return true;
}
//command re
if (args[0].equalsIgnoreCase("re") && args.length > 2) {
if (lp.getEmail() == null) {
sender.sendMessage(Config.Language.RESETPASSWORD_EMAIL_NO_SET);
Expand All @@ -80,7 +71,6 @@ public boolean onCommand(CommandSender sender, Command command, String s, String
if (optionalEmailCode.isPresent()) {
EmailCode emailCode = optionalEmailCode.get();
String code = args[1], pwd = args[2];

if (emailCode.getCode().equals(code)) {
if (Util.passwordIsDifficulty(pwd)) {
sender.sendMessage(Config.Language.COMMON_PASSWORD_SO_SIMPLE);
Expand All @@ -98,27 +88,22 @@ public boolean onCommand(CommandSender sender, Command command, String s, String
Player p = Bukkit.getPlayer(lp.getName());
if (p != null && p.isOnline()) {
if (Config.Settings.CanTpSpawnLocation) {
// PlayerTeleport.teleport(p, Config.Settings.SpawnLocation);
CatScheduler.teleport(p,Config.Settings.SpawnLocation);
CatScheduler.teleport(p, Config.Settings.SpawnLocation);
}
p.sendMessage(Config.Language.RESETPASSWORD_SUCCESS);
if (CatSeedLogin.loadProtocolLib) {
LoginPlayerHelper.sendBlankInventoryPacket(player);
}
}

});
} catch (Exception e) {
CatScheduler.runTask( () -> sender.sendMessage("§c数据库异常!"));
CatScheduler.runTask(() -> sender.sendMessage("§c数据库异常!"));
e.printStackTrace();
}


});
} else {
sender.sendMessage(Config.Language.RESETPASSWORD_EMAILCODE_INCORRECT);
}

} else {
sender.sendMessage(Config.Language.RESETPASSWORD_FAIL);
}
Expand Down

0 comments on commit fff4c40

Please sign in to comment.