-- Bone alias local BODY = "Body" local HEAD = "Head" local CAPE = "Cape" local LARM = "Arm_Left" local RARM = "Arm_Right" local LLEG = "Leg_Left" local RLEG = "Leg_Right" -- Version of player model local DEFAULT_PLAYER_MODEL_VERSION = "MTG_4_Jun_2017" local VALID_PLAYER_MODEL_VERSIONS = { MTG_4_Jun_2017 = true, MTG_4_Nov_2017 = true, } local LEGACY_PLAYER_MODEL_VERSIONS = { default_character_v1 = true, default_character_v2 = true, default_character_v3 = true, } local BONE_POSITIONS = { MTG_4_Jun_2017 = { [BODY] = {x = 0, y = -3.5, z = 0}, [HEAD] = {x = 0, y = 6.5, z = 0}, [CAPE] = {x = 0, y = 6.5, z = 1.2}, [LARM] = {x = 3, y = 5.5, z = 0}, [RARM] = {x = -3, y = 5.5, z = 0}, [LLEG] = {x = 1, y = 0, z = 0}, [RLEG] = {x = -1, y = 0, z = 0}, body_sit = {x = 0, y = -5.5, z = 0}, body_lay = {x = 0, y = -5.5, z = 0}, }, MTG_4_Nov_2017 = { [BODY] = {x = 0, y = 6.25, z = 0}, [HEAD] = {x = 0, y = 6.5, z = 0}, [CAPE] = {x = 0, y = 6.5, z = 1.2}, [LARM] = {x = 3, y = 5.5, z = 0}, [RARM] = {x = -3, y = 5.5, z = 0}, [LLEG] = {x = 1, y = 0, z = 0}, [RLEG] = {x = -1, y = 0, z = 0}, body_sit = {x = 0, y = -5, z = 0}, body_lay = {x = 0, y = -5, z = 0}, }, } local BONE_ROTATIONS = { MTG_4_Jun_2017 = { [BODY] = {x = 0, y = 0, z = 0}, [HEAD] = {x = 0, y = 0, z = 0}, [CAPE] = {x = 0, y = 0, z = 0}, [LARM] = {x = 0, y = 0, z = 0}, [RARM] = {x = 0, y = 0, z = 0}, [LLEG] = {x = 0, y = 0, z = 0}, [RLEG] = {x = 0, y = 0, z = 0}, body_sit = {x = 0, y = 0, z = 0}, body_lay = {x = 270, y = 0, z = 0}, }, MTG_4_Nov_2017 = { [BODY] = {x = 0, y = 0, z = 0}, [HEAD] = {x = 0, y = 0, z = 0}, [CAPE] = {x = 0, y = 0, z = 0}, [LARM] = {x = 0, y = 0, z = 0}, [RARM] = {x = 0, y = 0, z = 0}, [LLEG] = {x = 0, y = 0, z = 0}, [RLEG] = {x = 0, y = 0, z = 0}, body_sit = {x = 0, y = 0, z = 0}, body_lay = {x = 270, y = 0, z = 0}, }, } local PLAYER_MODEL_VERSION = (function() local version = minetest.settings:get("playeranim.model_version") if version == nil or version == "" then version = DEFAULT_PLAYER_MODEL_VERSION end if LEGACY_PLAYER_MODEL_VERSIONS[version] then error("The model version '" .. version .. "' is no longer suppported") elseif not VALID_PLAYER_MODEL_VERSIONS[version] then error("Invalid value for playeranim.model_version in minetest.conf: " .. version) end return version end)() local BONE_POSITION = BONE_POSITIONS[PLAYER_MODEL_VERSION] local BONE_ROTATION = BONE_ROTATIONS[PLAYER_MODEL_VERSION] if not BONE_POSITION or not BONE_ROTATION then error("Internal error: invalid player_model_version: " .. PLAYER_MODEL_VERSION) end return BONE_POSITION, BONE_ROTATION