summaryrefslogtreecommitdiffstats
path: root/api/logic/minecraft/auth/MojangAccount.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'api/logic/minecraft/auth/MojangAccount.cpp')
-rw-r--r--api/logic/minecraft/auth/MojangAccount.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/api/logic/minecraft/auth/MojangAccount.cpp b/api/logic/minecraft/auth/MojangAccount.cpp
index 657e0009..28f31266 100644
--- a/api/logic/minecraft/auth/MojangAccount.cpp
+++ b/api/logic/minecraft/auth/MojangAccount.cpp
@@ -19,6 +19,7 @@
#include "flows/RefreshTask.h"
#include "flows/AuthenticateTask.h"
+#include <QCryptographicHash>
#include <QUuid>
#include <QJsonObject>
#include <QJsonArray>
@@ -103,6 +104,20 @@ MojangAccountPtr MojangAccount::createFromUsername(const QString &username)
return account;
}
+MojangAccountPtr MojangAccount::createFromUsernameOffline(const QString &username)
+{
+ MojangAccountPtr account(new MojangAccount());
+ account->m_clientToken = "ff64ff64ff64ff64ff64ff64ff64ff64";
+ account->m_accessToken = "ff64ff64ff64ff64ff64ff64ff64ff64";
+ account->m_username = username;
+ QList<AccountProfile> profiles;
+ QString uuid = QCryptographicHash::hash(username.toLocal8Bit(), QCryptographicHash::Md5).toHex();
+ profiles.append({uuid, username, false});
+ account->m_profiles = profiles;
+ account->setCurrentProfile(uuid);
+ return account;
+}
+
QJsonObject MojangAccount::saveToJson() const
{
QJsonObject json;