UNPKG

@minecraft/creator-tools

Version:

Minecraft Creator Tools command line and libraries.

42 lines (41 loc) 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SkinModelTarget = void 0; exports.isValidSkinPurchaseType = isValidSkinPurchaseType; exports.isValidGeometry = isValidGeometry; exports.getModelTargetGeometry = getModelTargetGeometry; exports.isValidSkinModelTarget = isValidSkinModelTarget; exports.isValidCapeSize = isValidCapeSize; var SkinModelTarget; (function (SkinModelTarget) { /* 'custom' is the model target used for Steve */ SkinModelTarget["Custom"] = "Custom"; /* Model target for Alex uses */ SkinModelTarget["CustomSlim"] = "CustomSlim"; })(SkinModelTarget || (exports.SkinModelTarget = SkinModelTarget = {})); const GeometryNamesToModelTarget = new Map([ ["geometry.humanoid.custom", SkinModelTarget.Custom], ["geometry.humanoid.customSlim", SkinModelTarget.CustomSlim], ]); const ValidSkinTextureResolutions = [ [64, 64], [64, 32], [128, 128], ]; const ValidPurchaseTypes = new Set(["free", "paid"]); const ValidCapeTextureSizes = [[64, 32]]; function isValidSkinPurchaseType(type) { return ValidPurchaseTypes.has(type); } function isValidGeometry(skin) { return GeometryNamesToModelTarget.has(skin.geometry); } function getModelTargetGeometry(skin) { return GeometryNamesToModelTarget.get(skin.geometry); } function isValidSkinModelTarget(modelTarget) { return ValidSkinTextureResolutions.some((dim) => dim[0] === modelTarget[0] && dim[1] === modelTarget[1]); } function isValidCapeSize(size) { return ValidCapeTextureSizes.some((dim) => dim[0] === size[0] && dim[1] === size[1]); }