diff options
| author | Brad Kittenbrink <brad@lindenlab.com> | 2022-11-28 14:33:27 -0800 |
|---|---|---|
| committer | Brad Kittenbrink <brad@lindenlab.com> | 2022-11-28 14:33:27 -0800 |
| commit | 0b188ac04ecdb1d620a427eacbf5fc089e0accc8 (patch) | |
| tree | 76f6afe9424d79bab8d30060d49aec3166d96ec8 /scripts/content_tools/skel_tool.py | |
| parent | e9cd2b320ea2ecaab88e4904f7c81746ea617fea (diff) | |
| parent | c8f08f232a28f4e08b4acf525f0d316a101a0e27 (diff) | |
Merge remote-tracking branch 'origin/main' into DRTVWR-528
Diffstat (limited to 'scripts/content_tools/skel_tool.py')
| -rw-r--r-- | scripts/content_tools/skel_tool.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/scripts/content_tools/skel_tool.py b/scripts/content_tools/skel_tool.py index 449ecd6a6c..696e4e2923 100644 --- a/scripts/content_tools/skel_tool.py +++ b/scripts/content_tools/skel_tool.py @@ -72,6 +72,22 @@ def check_symmetry(name, field, vec1, vec2): if vec1[2] != vec2[2]: print(name,field,"z match fail") +def enforce_alias_rules(tree, element, fix=False): + if element.tag != "bone": + return + alias_lis = [] + aliases = element.get("aliases") + if aliases: + alias_lis = aliases.split(" ") + name = element.get("name") + if name: + std_alias = "avatar_" + name + if not std_alias in alias_lis: + print "missing expected alias",name,std_alias + for alias in alias_lis: + if alias.startswith("avatar_") and alias != std_alias: + print "invalid avatar_ alias",name,alias + def enforce_symmetry(tree, element, field, fix=False): name = element.get("name") if not name: @@ -209,6 +225,7 @@ def validate_skel_tree(tree, ogtree, reftree, fix=False): unfixable += 1 fix_name(element) + enforce_alias_rules(tree, element, fix) enforce_precision_rules(element) for field in ["pos","pivot"]: enforce_symmetry(tree, element, field, fix) |
