-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathmain.py
More file actions
executable file
·50 lines (29 loc) · 1.18 KB
/
main.py
File metadata and controls
executable file
·50 lines (29 loc) · 1.18 KB
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
from os import path
from glob import glob
from formats.map.sec import Sector
from typing import List
import tempfile
extension = ".sec"
validator_function = Sector.read
# base_paths = glob(r"D:\Games\Arcanum")
base_paths = glob(r"/home/sebastian/.wine/drive_c/GOG Games/Arcanum/modules/Arcanum/maps/")
def validate_files(directory: str, validated_objects: List[Sector]):
template = path.join(directory, "*")
for file_path in glob(template):
if path.isdir(file_path):
validate_files(file_path, validated_objects)
elif file_path.lower().endswith(extension):
print("Validating %s.." % file_path)
validated_object = validator_function(file_path)
validated_objects.append(validated_object)
def main():
validated_objects = [] # type: List[Terrain]
for base_path in base_paths:
validate_files(base_path, validated_objects)
print(flush=True)
tmp_path = tempfile.mkstemp()[1]
for validated_object in validated_objects:
print("Further validation of %s.." % validated_object.file_path, flush=True)
validated_object.write(tmp_path)
if __name__ == "__main__":
main()