feat(offline-skin): WIP: implement yggdrasil server to serve skin/cape textures.

This commit is contained in:
huanghongxun
2021-09-21 09:35:14 +08:00
parent 4537fe0390
commit e796e0f35e
9 changed files with 608 additions and 18 deletions

View File

@@ -81,7 +81,7 @@ public final class Accounts {
}
}
public static final OfflineAccountFactory FACTORY_OFFLINE = OfflineAccountFactory.INSTANCE;
public static final OfflineAccountFactory FACTORY_OFFLINE = new OfflineAccountFactory(AUTHLIB_INJECTOR_DOWNLOADER);
public static final YggdrasilAccountFactory FACTORY_MOJANG = YggdrasilAccountFactory.MOJANG;
public static final AuthlibInjectorAccountFactory FACTORY_AUTHLIB_INJECTOR = new AuthlibInjectorAccountFactory(AUTHLIB_INJECTOR_DOWNLOADER, Accounts::getOrCreateAuthlibInjectorServer);
public static final MicrosoftAccountFactory FACTORY_MICROSOFT = new MicrosoftAccountFactory(new MicrosoftService(new MicrosoftAuthenticationServer.Factory()));

View File

@@ -62,6 +62,7 @@ import org.jetbrains.annotations.Nullable;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.concurrent.CountDownLatch;
import static java.util.Collections.emptyList;
@@ -521,7 +522,8 @@ public class CreateAccountPane extends JFXDialogLayout implements DialogAware {
if (factory instanceof AuthlibInjectorAccountFactory) {
return getAuthServer();
} else if (factory instanceof OfflineAccountFactory) {
return txtUUID == null ? null : StringUtils.isBlank(txtUUID.getText()) ? null : UUIDTypeAdapter.fromString(txtUUID.getText());
UUID uuid = txtUUID == null ? null : StringUtils.isBlank(txtUUID.getText()) ? null : UUIDTypeAdapter.fromString(txtUUID.getText());
return new OfflineAccountFactory.AdditionalData(uuid, null, null);
} else {
return null;
}