HaircutType enum

Пакет: com.hypixel.hytale.server.core.cosmetics

Файл: com/hypixel/hytale/server/core/cosmetics/PlayerSkinPart.java

Поля (1)

МодификаторыТипИмя
Short, Medium, Long

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.cosmetics;

class="kw">import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap;
class="kw">import java.util.Arrays;
class="kw">import java.util.Map;
class="kw">import java.util.Map.Entry;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.bson.BsonArray;
class="kw">import org.bson.BsonDocument;
class="kw">import org.bson.BsonValue;

class="kw">public class PlayerSkinPart {
   class="kw">private class="kw">final String id;
   class="kw">private class="kw">final String name;
   class="kw">private String model;
   class="kw">private String greyscaleTexture;
   class="kw">private String gradientSet;
   class="kw">private Map<String, PlayerSkinPartTexture> textures;
   class="kw">private Map<String, PlayerSkinPart.Variant> variants;
   class="kw">private boolean isDefaultAsset;
   class="kw">private String[] tags;
   class="kw">private PlayerSkinPart.HaircutType hairType;
   class="kw">private boolean requiresGenericHaircut;
   @Nonnull
   class="kw">private PlayerSkinPart.HeadAccessoryType headAccessoryType = PlayerSkinPart.HeadAccessoryType.Simple;

   class="kw">protected PlayerSkinPart(@Nonnull BsonDocument var1) {
      this.id = var1.getString("Id").getValue();
      this.name = var1.getString("Name").getValue();
      if (var1.containsKey("Model")) {
         this.model = var1.getString("Model").getValue();
      }

      if (var1.containsKey("GradientSet")) {
         this.gradientSet = var1.getString("GradientSet").getValue();
      }

      if (var1.containsKey("GreyscaleTexture")) {
         this.greyscaleTexture = var1.getString("GreyscaleTexture").getValue();
      }

      if (var1.containsKey("Variants")) {
         BsonDocument var2 = var1.getDocument("Variants");
         this.variants = new Object2ObjectOpenHashMap();

         for (Entry var4 : var2.entrySet()) {
            this.variants.put(var4.getKey(), new PlayerSkinPart.Variant(var4.getValue().asDocument()));
         }
      } else if (var1.containsKey("Textures")) {
         BsonDocument var5 = var1.getDocument("Textures");
         this.textures = new Object2ObjectOpenHashMap();

         for (Entry var9 : var5.entrySet()) {
            this.textures.put(var9.getKey(), new PlayerSkinPartTexture(var9.getValue().asDocument()));
         }
      }

      if (var1.containsKey("IsDefaultAsset")) {
         this.isDefaultAsset = var1.getBoolean("IsDefaultAsset").getValue();
      }

      if (var1.containsKey("Tags")) {
         BsonArray var6 = var1.getArray("Tags");
         this.tags = new String[var6.size()];

         for (int var8 = 0; var8 < var6.size(); var8++) {
            this.tags[var8] = var6.get(var8).asString().getValue();
         }
      }

      if (var1.containsKey("HairType")) {
         this.hairType = PlayerSkinPart.HaircutType.valueOf(var1.getString("HairType").getValue());
      }

      if (var1.containsKey("RequiresGenericHaircut")) {
         this.requiresGenericHaircut = var1.getBoolean("RequiresGenericHaircut").getValue();
      }

      if (var1.containsKey("HeadAccessoryType")) {
         this.headAccessoryType = PlayerSkinPart.HeadAccessoryType.valueOf(var1.getString("HeadAccessoryType").getValue());
      }
   }

   class="kw">public String getId() {
      class="kw">return this.id;
   }

   class="kw">public String getName() {
      class="kw">return this.name;
   }

   class="kw">public String getModel() {
      class="kw">return this.model;
   }

   class="kw">public Map<String, PlayerSkinPartTexture> getTextures() {
      class="kw">return this.textures;
   }

   class="kw">public Map<String, PlayerSkinPart.Variant> getVariants() {
      class="kw">return this.variants;
   }

   class="kw">public boolean isDefaultAsset() {
      class="kw">return this.isDefaultAsset;
   }

   class="kw">public String[] getTags() {
      class="kw">return this.tags;
   }

   class="kw">public PlayerSkinPart.HaircutType getHairType() {
      class="kw">return this.hairType;
   }

   class="kw">public boolean doesRequireGenericHaircut() {
      class="kw">return this.requiresGenericHaircut;
   }

   @Nonnull
   class="kw">public PlayerSkinPart.HeadAccessoryType getHeadAccessoryType() {
      class="kw">return this.headAccessoryType;
   }

   class="kw">public String getGreyscaleTexture() {
      class="kw">return this.greyscaleTexture;
   }

   class="kw">public String getGradientSet() {
      class="kw">return this.gradientSet;
   }

   @Nonnull
   @Override
   class="kw">public String toString() {
      class="kw">return "PlayerSkinPart{id='"
         + this.id
         + "', name='"
         + this.name
         + "', model='"
         + this.model
         + "', greyscaleTexture='"
         + this.greyscaleTexture
         + "', gradientSet='"
         + this.gradientSet
         + "', textures="
         + this.textures
         + ", variants="
         + this.variants
         + ", isDefaultAsset="
         + this.isDefaultAsset
         + ", tags="
         + Arrays.toString(this.tags)
         + ", hairType="
         + this.hairType
         + ", requiresGenericHaircut="
         + this.requiresGenericHaircut
         + ", headAccessoryType="
         + this.headAccessoryType
         + "}";
   }

   class="kw">public enum HaircutType {
      Short,
      Medium,
      Long;

      HaircutType() {
      }
   }

   class="kw">public enum HeadAccessoryType {
      Simple,
      HalfCovering,
      FullyCovering;

      HeadAccessoryType() {
      }
   }

   class="kw">public class="kw">static class Variant {
      class="kw">private class="kw">final String model;
      class="kw">private String greyscaleTexture;
      class="kw">private Map<String, PlayerSkinPartTexture> textures;

      class="kw">protected Variant(@Nonnull BsonDocument var1) {
         this.model = var1.getString("Model").getValue();
         if (var1.containsKey("GreyscaleTexture")) {
            this.greyscaleTexture = var1.getString("GreyscaleTexture").getValue();
         }

         if (var1.containsKey("Textures")) {
            BsonDocument var2 = var1.getDocument("Textures");
            this.textures = new Object2ObjectOpenHashMap();

            for (Entry var4 : var2.entrySet()) {
               this.textures.put(var4.getKey(), new PlayerSkinPartTexture(var4.getValue().asDocument()));
            }
         }
      }

      class="kw">public String getModel() {
         class="kw">return this.model;
      }

      class="kw">public String getGreyscaleTexture() {
         class="kw">return this.greyscaleTexture;
      }

      class="kw">public Map<String, PlayerSkinPartTexture> getTextures() {
         class="kw">return this.textures;
      }

      @Nonnull
      @Override
      class="kw">public String toString() {
         class="kw">return "Variant{model='" + this.model + "', greyscaleTexture='" + this.greyscaleTexture + "', textures=" + this.textures + "}";
      }
   }
}