Files

64 lines
1.8 KiB
Java
Raw Permalink Normal View History

2019-05-10 11:20:39 +03:00
package customskinloader.loader.jsonapi;
import java.util.List;
2021-04-24 10:33:18 +08:00
import java.util.Map;
import com.google.common.collect.Lists;
2019-05-10 11:20:39 +03:00
import com.google.gson.Gson;
import com.mojang.authlib.minecraft.MinecraftProfileTexture;
import customskinloader.loader.JsonAPILoader;
import customskinloader.plugin.ICustomSkinLoaderPlugin;
2019-05-10 11:20:39 +03:00
import customskinloader.profile.ModelManager0;
import customskinloader.profile.UserProfile;
public class GlitchlessAPI implements JsonAPILoader.IJsonAPI {
2021-04-24 10:33:18 +08:00
public static class GlitchlessGames extends JsonAPILoader.DefaultProfile {
2023-01-11 22:06:58 +08:00
public GlitchlessGames(JsonAPILoader loader) {
super(loader);
}
@Override
public String getName() {
return "GlitchlessGames";
}
@Override
public int getPriority() {
return 700;
}
@Override
public String getRoot() {
return "https://games.glitchless.ru/api/minecraft/users/profiles/textures/?nickname=";
}
}
@Override
public List<ICustomSkinLoaderPlugin.IDefaultProfile> getDefaultProfiles(JsonAPILoader loader) {
return Lists.newArrayList(new GlitchlessGames(loader));
2021-04-24 10:33:18 +08:00
}
2019-05-10 11:20:39 +03:00
@Override
public String toJsonUrl(String root, String username) {
return root + username;
}
@Override
public UserProfile toUserProfile(String root, String json, boolean local) {
GlitchlessApiResponse result = new Gson().fromJson(json, GlitchlessApiResponse.class);
if (!result.textures.containsKey(MinecraftProfileTexture.Type.SKIN))
return null;
return ModelManager0.toUserProfile(result.textures);
}
@Override
public String getName() {
return "GlitchlessAPI";
}
public static class GlitchlessApiResponse {
protected Map<MinecraftProfileTexture.Type, MinecraftProfileTexture> textures;
}
}