mirror of
https://github.com/MineLittlePony/MineLittlePony.git
synced 2025-02-13 16:24:23 +01:00
Fix issues related to skin loading.
Turns out, the anonymous classes were having trouble being deserialized.
This commit is contained in:
parent
d82af57b3c
commit
2bb9e9b61a
2 changed files with 9 additions and 5 deletions
|
@ -9,6 +9,7 @@ import com.mojang.authlib.minecraft.MinecraftProfileTexture;
|
|||
import com.mojang.authlib.yggdrasil.response.MinecraftTexturesPayload;
|
||||
import com.mojang.util.UUIDTypeAdapter;
|
||||
import com.voxelmodpack.hdskins.HDSkinManager;
|
||||
import com.voxelmodpack.hdskins.util.TexturesPayloadBuilder;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.util.Session;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package com.voxelmodpack.hdskins.skins;
|
||||
package com.voxelmodpack.hdskins.util;
|
||||
|
||||
import com.google.common.collect.Maps;
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
import com.mojang.authlib.GameProfile;
|
||||
|
@ -9,6 +8,7 @@ import com.mojang.authlib.minecraft.MinecraftProfileTexture.Type;
|
|||
import com.mojang.authlib.yggdrasil.response.MinecraftTexturesPayload;
|
||||
import com.mojang.util.UUIDTypeAdapter;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
|
||||
|
@ -23,7 +23,10 @@ public class TexturesPayloadBuilder {
|
|||
private static Gson gson = new GsonBuilder().registerTypeAdapter(UUID.class, new UUIDTypeAdapter()).create();
|
||||
|
||||
public static MinecraftTexturesPayload createTexturesPayload(GameProfile profile, Map<Type, MinecraftProfileTexture> textures) {
|
||||
return gson.fromJson(gson.toJson(new TexturesPayloadBuilder(profile, textures)), MinecraftTexturesPayload.class);
|
||||
// This worked fine as is before I started using sub-classes.
|
||||
MinecraftTexturesPayload payload = gson.fromJson(gson.toJson(new TexturesPayloadBuilder(profile)), MinecraftTexturesPayload.class);
|
||||
payload.getTextures().putAll(textures);
|
||||
return payload;
|
||||
}
|
||||
|
||||
private long timestamp;
|
||||
|
@ -35,13 +38,13 @@ public class TexturesPayloadBuilder {
|
|||
|
||||
private Map<Type, MinecraftProfileTexture> textures;
|
||||
|
||||
public TexturesPayloadBuilder(GameProfile profile, Map<Type, MinecraftProfileTexture> textures) {
|
||||
private TexturesPayloadBuilder(GameProfile profile) {
|
||||
profileId = profile.getId();
|
||||
profileName = profile.getName();
|
||||
timestamp = System.currentTimeMillis();
|
||||
|
||||
isPublic = true;
|
||||
|
||||
this.textures = textures;
|
||||
this.textures = new HashMap<>();
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue