Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class CustomSkinManager {
- public static final String DB_NAME = Kyrgon.MODID + ":customskins";
- private static CustomSkinManager instance;
- public static CustomSkinManager getInstance() {
- if(instance == null) instance = new CustomSkinManager();
- return instance;
- }
- private Database getDB(){
- return Databases.getDatabase(DB_NAME);
- }
- public boolean hasSkin(EntityPlayer player)
- {
- return hasSkin(player.getName());
- }
- public boolean hasSkin(String playerName)
- {
- Skin skin = Skin.fromString(getDB().getString(playerName));
- return (!skin.isDefault());
- }
- public Skin getSkin(EntityPlayer player)
- {
- return getSkin(player.getName());
- }
- public Skin getSkin(String playerName)
- {
- return hasSkin(playerName) ? Skin.fromString(getDB().getString(playerName)) : Skin.DEFAULT_SKIN;
- }
- public void setSkin(EntityPlayer player, Skin skin)
- {
- setSkin(player.getName(), skin);
- }
- public void setSkin(String playerName, Skin skin)
- {
- getDB().setString(playerName, skin.toString());
- }
- public static class Skin
- {
- private String name;
- private String link;
- public Skin(String name, String link)
- {
- this.name = name;
- this.link = link;
- }
- public String getName()
- {
- return name;
- }
- public void setName(String name)
- {
- this.name = name;
- }
- public String getLink()
- {
- return link;
- }
- public void setLink(String link)
- {
- this.link = link;
- }
- @Override
- public String toString()
- {
- return name + ":" + link;
- }
- public boolean isDefault()
- {
- return !(name.equalsIgnoreCase("") || name.equalsIgnoreCase("default")) && !(link.equalsIgnoreCase("") || link.equalsIgnoreCase("default"));
- }
- public static Skin DEFAULT_SKIN = new Skin("default", "default");
- public static Skin fromString(String string)
- {
- String[] parts = string.split(":");
- if(parts.length == 2)
- {
- return new Skin(parts[0], parts[1]);
- }
- return DEFAULT_SKIN;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement