CommonAssetValidator class
Пакет: com.hypixel.hytale.server.core.asset.common
Файл: com/hypixel/hytale/server/core/asset/common/CommonAssetValidator.java
implements: Validator<String>
Поля (7)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
CommonAssetValidator |
TEXTURE_ITEM |
|
|
break |
|
|
var1 |
|
boolean |
var3 |
|
|
var3 |
|
String |
var5 |
|
String |
var9 |
Методы (8)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
void |
acceptvoid accept(@Nullable String var1, @Nonnull ValidationResults var2) |
|
|
for for(int var4 = 0; var4 < var3.length; var4++) |
|
|
for for(String var7 : this.requiredRoots) |
|
|
if if(var3 != null) |
|
|
if if(var1 != null) |
|
|
if if(this.requiredRoots != null) |
|
|
if if(!var3) |
abstract |
|
this this(var1, false, var2) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.asset.common;
class="kw">import com.hypixel.hytale.codec.schema.SchemaContext;
class="kw">import com.hypixel.hytale.codec.schema.config.Schema;
class="kw">import com.hypixel.hytale.codec.schema.config.StringSchema;
class="kw">import com.hypixel.hytale.codec.validation.ValidationResults;
class="kw">import com.hypixel.hytale.codec.validation.Validator;
class="kw">import com.hypixel.hytale.codec.validation.validator.ArrayValidator;
class="kw">import com.hypixel.hytale.common.util.PatternUtil;
class="kw">import java.util.Arrays;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class CommonAssetValidator class="kw">implements Validator<String> {
class="kw">public class="kw">static class="kw">final CommonAssetValidator TEXTURE_ITEM = new CommonAssetValidator("png", "Blocks", "BlockTextures", "Items", "NPC", "Resources", "VFX");
class="kw">public class="kw">static class="kw">final CommonAssetValidator TEXTURE_CHARACTER = new CommonAssetValidator("png", "Characters", "NPC", "Items", "VFX");
class="kw">public class="kw">static class="kw">final CommonAssetValidator TEXTURE_CHARACTER_ATTACHMENT = new CommonAssetValidator(
"png", "Characters", "NPC", "Items", "Cosmetics", "Items", "NPC", "Resources"
);
class="kw">public class="kw">static class="kw">final CommonAssetValidator TEXTURE_TRAIL = new CommonAssetValidator("png", "Trails");
class="kw">public class="kw">static class="kw">final CommonAssetValidator TEXTURE_SKY = new CommonAssetValidator("png", "Sky");
class="kw">public class="kw">static class="kw">final CommonAssetValidator TEXTURE_PARTICLES = new CommonAssetValidator("png", "Particles");
class="kw">public class="kw">static class="kw">final CommonAssetValidator TEXTURE_ITEM_QUALITY = new CommonAssetValidator("png", true, "UI/ItemQualities");
class="kw">public class="kw">static class="kw">final CommonAssetValidator ICON_RESOURCE = new CommonAssetValidator("png", "Icons/ResourceTypes");
class="kw">public class="kw">static class="kw">final CommonAssetValidator ICON_ITEM = new CommonAssetValidator("png", "Icons/ItemsGenerated", "Icons/Items");
class="kw">public class="kw">static class="kw">final CommonAssetValidator ICON_ITEM_CATEGORIES = new CommonAssetValidator("png", "Icons/ItemCategories");
class="kw">public class="kw">static class="kw">final CommonAssetValidator ICON_CRAFTING = new CommonAssetValidator("png", "Icons/CraftingCategories");
class="kw">public class="kw">static class="kw">final CommonAssetValidator ICON_ENTITY_STAT = new CommonAssetValidator("png", "Icons/EntityStats");
class="kw">public class="kw">static class="kw">final CommonAssetValidator ICON_MODEL = new CommonAssetValidator("png", "Icons/ModelsGenerated", "Icons/Models");
class="kw">public class="kw">static class="kw">final CommonAssetValidator ICON_EMOTE = new CommonAssetValidator("png", "Icons/Emotes");
class="kw">public class="kw">static class="kw">final CommonAssetValidator UI_RETICLE_PART = new CommonAssetValidator("png", "UI/Reticles");
class="kw">public class="kw">static class="kw">final ArrayValidator<String> UI_RETICLE_PARTS_ARRAY = new ArrayValidator<>(UI_RETICLE_PART);
class="kw">public class="kw">static class="kw">final CommonAssetValidator UI_SCREEN_EFFECT = new CommonAssetValidator("png", "ScreenEffects");
class="kw">public class="kw">static class="kw">final CommonAssetValidator UI_CRAFTING_DIAGRAM = new CommonAssetValidator("svg", "CraftingDiagrams");
class="kw">public class="kw">static class="kw">final CommonAssetValidator MODEL_ITEM = new CommonAssetValidator("blockymodel", "Blocks", "Items", "Resources", "NPC", "VFX", "Consumable");
class="kw">public class="kw">static class="kw">final CommonAssetValidator MODEL_CHARACTER = new CommonAssetValidator("blockymodel", "Characters", "NPC", "Items", "VFX");
class="kw">public class="kw">static class="kw">final CommonAssetValidator MODEL_CHARACTER_ATTACHMENT = new CommonAssetValidator(
"blockymodel", "Characters", "NPC", "Items", "Cosmetics", "Items", "NPC", "Resources"
);
class="kw">public class="kw">static class="kw">final CommonAssetValidator PREFAB_LIST = new CommonAssetValidator("json", "PrefabList");
class="kw">public class="kw">static class="kw">final CommonAssetValidator BLOCK_LIST = new CommonAssetValidator("json", "BlockTypeList");
class="kw">public class="kw">static class="kw">final CommonAssetValidator ANIMATION_ITEM_CHARACTER = new CommonAssetValidator("blockyanim", "Characters", "NPC");
class="kw">public class="kw">static class="kw">final CommonAssetValidator ANIMATION_ITEM_BLOCK = new CommonAssetValidator(
"blockyanim", "Blocks", "Items", "Resources", "NPC", "VFX", "Consumable"
);
class="kw">public class="kw">static class="kw">final CommonAssetValidator ANIMATION_CHARACTER = new CommonAssetValidator("blockyanim", "Characters", "NPC", "Equipment", "VFX", "Items");
class="kw">public class="kw">static class="kw">final CommonAssetValidator ANIMATION_EMOTE = new CommonAssetValidator("blockyanim", "Characters");
class="kw">public class="kw">static class="kw">final CommonAssetValidator MUSIC = new CommonAssetValidator("ogg", "Music");
class="kw">public class="kw">static class="kw">final CommonAssetValidator SOUNDS = new CommonAssetValidator("ogg", "Sounds");
@Nullable
class="kw">private class="kw">final String[] requiredRoots;
@Nullable
class="kw">private class="kw">final String requiredExtension;
class="kw">private class="kw">final boolean isUIAsset;
class="kw">public CommonAssetValidator(String var1, boolean var2, @Nullable String... var3) {
if (var3 != null) {
for (int var4 = 0; var4 < var3.length; var4++) {
String var5 = var3[var4];
if (!var5.endsWith("/")) {
var3[var4] = var5 + "/";
}
}
}
this.requiredRoots = var3;
this.requiredExtension = var1;
this.isUIAsset = var2;
}
class="kw">public CommonAssetValidator(String var1, String... var2) {
this(var1, false, var2);
}
class="kw">public CommonAssetValidator() {
this.requiredRoots = null;
this.requiredExtension = null;
this.isUIAsset = true;
}
class="kw">public void accept(@Nullable String var1, @Nonnull ValidationResults var2) {
if (var1 != null) {
if (this.requiredRoots != null) {
boolean var3 = false;
for (String var7 : this.requiredRoots) {
if (var1.startsWith(var7)) {
var3 = true;
break;
}
}
if (!var3) {
var2.fail("Common Asset '" + var1 + "' must be within the root: " + Arrays.toString(this.requiredRoots));
}
}
if (this.requiredExtension != null && !var1.endsWith(this.requiredExtension)) {
var2.fail("Common Asset '" + var1 + "' must have the extension " + this.requiredExtension);
}
var1 = PatternUtil.replaceBackslashWithForwardSlash(var1);
if (!CommonAssetRegistry.hasCommonAsset(var1)) {
if (this.isUIAsset && var1.endsWith(".png")) {
String var9 = var1.substring(0, var1.lastIndexOf(".png")) + "@2x.png";
if (!CommonAssetRegistry.hasCommonAsset(var9)) {
var2.fail("Common Asset '" + var1 + "' doesn't exist!");
}
} else {
var2.fail("Common Asset '" + var1 + "' doesn't exist!");
}
}
}
}
@Override
class="kw">public void updateSchema(SchemaContext var1, @Nonnull Schema var2) {
((StringSchema)var2).setHytaleCommonAsset(new StringSchema.CommonAsset(this.requiredExtension, this.isUIAsset, this.requiredRoots));
}
}