1
0

addwieleded.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. import os
  2. import json
  3. import shutil
  4. def process_folder(folder):
  5. left_src = os.path.join(folder, "inhand-left.png")
  6. right_src = os.path.join(folder, "inhand-right.png")
  7. left_dst = os.path.join(folder, "wielded-inhand-left.png")
  8. right_dst = os.path.join(folder, "wielded-inhand-right.png")
  9. meta_path = os.path.join(folder, "meta.json")
  10. if os.path.isfile(left_src) and os.path.isfile(right_src):
  11. # Copy files
  12. shutil.copyfile(left_src, left_dst)
  13. shutil.copyfile(right_src, right_dst)
  14. print(f"Copied to wielded-inhand-* in {folder}")
  15. # Modify meta.json
  16. if os.path.isfile(meta_path):
  17. with open(meta_path, "r", encoding="utf-8") as f:
  18. meta = json.load(f)
  19. states = meta.get("states", [])
  20. state_names = [s["name"] for s in states]
  21. changed = False
  22. for name in ["wielded-inhand-left", "wielded-inhand-right"]:
  23. if name not in state_names:
  24. states.append({"name": name, "directions": 1})
  25. changed = True
  26. if changed:
  27. meta["states"] = states
  28. with open(meta_path, "w", encoding="utf-8") as f:
  29. json.dump(meta, f, indent=4)
  30. print(f"Updated meta.json in {folder}")
  31. else:
  32. print(f"meta.json not found in {folder}, skipping JSON update.")
  33. else:
  34. print(f"Missing inhand-left or inhand-right in {folder}, skipping.")
  35. def main():
  36. root = os.path.abspath(os.path.dirname(__file__))
  37. for current_dir, subdirs, files in os.walk(root):
  38. process_folder(current_dir)
  39. if __name__ == "__main__":
  40. main()