summaryrefslogtreecommitdiffstats
path: root/Scripts/remove_audio_sources.py
blob: 0486169b8dc212188ab55381ae5fb36b3d5dff99 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import argparse
import libunity
import sys

def removeAudioSources(path: str):
    parser = libunity.MulticoreUnityParser()
    anim = parser.parseFile(path)
    anchors = set()
    node = anim.popNodeOfClass("82")
    while node:
        print("Killed audio source")
        anchors.add(node.anchor)
        node = anim.popNodeOfClass("82")
    for node in anim.nodes:
        anim.scrubReferencesByValue(node, values=anchors)
    with open(path, "w", encoding="utf-8") as f:
        f.write(libunity.unityYamlToString(anim.nodes))

if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("--prefab", type=str, help="Path to .prefab file.")
    args = parser.parse_args()

    removeAudioSources(args.prefab)