mirror of
https://github.com/MikuLeaks/MikuSB.git
synced 2026-06-04 09:03:58 +00:00
Changed to use a separate account for each email address.
This commit is contained in:
37
GameServer/Command/Commands/CommandAccount.cs
Normal file
37
GameServer/Command/Commands/CommandAccount.cs
Normal file
@@ -0,0 +1,37 @@
|
||||
using MikuSB.Database.Account;
|
||||
using MikuSB.Enums.Player;
|
||||
using MikuSB.Internationalization;
|
||||
|
||||
namespace MikuSB.GameServer.Command.Commands;
|
||||
|
||||
[CommandInfo("account", "Game.Command.Account.Desc", "Game.Command.Account.Usage", [], [PermEnum.Admin, PermEnum.Support])]
|
||||
public class CommandAccount : ICommands
|
||||
{
|
||||
[CommandMethod("create")]
|
||||
public async ValueTask Create(CommandArg arg)
|
||||
{
|
||||
if (!await arg.CheckArgCnt(2))
|
||||
return;
|
||||
|
||||
var email = arg.Args[0].Trim();
|
||||
if (!int.TryParse(arg.Args[1], out var uid) || uid <= 0)
|
||||
{
|
||||
await arg.SendMsg(I18NManager.Translate("Game.Command.Notice.InvalidArguments"));
|
||||
return;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
var account = AccountData.CreateAccount(email, uid, "");
|
||||
await arg.SendMsg(I18NManager.Translate("Game.Command.Account.Created", account.Username, account.Uid.ToString()));
|
||||
}
|
||||
catch (InvalidOperationException ex)
|
||||
{
|
||||
await arg.SendMsg(I18NManager.Translate("Game.Command.Account.CreateFailed", ex.Message));
|
||||
}
|
||||
catch (ArgumentException ex)
|
||||
{
|
||||
await arg.SendMsg(I18NManager.Translate("Game.Command.Account.CreateFailed", ex.Message));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user