mirror of
https://github.com/Mauler125/r5sdk.git
synced 2025-02-09 19:15:03 +01:00
Create map rename script
Rename all files associated to a BSP with a single command.
This commit is contained in:
parent
417e91b8d9
commit
245d13cea8
47
r5dev/resource/script/ren_map.py
Normal file
47
r5dev/resource/script/ren_map.py
Normal file
@ -0,0 +1,47 @@
|
||||
#------------------------------------------------------------------------------
|
||||
import sys
|
||||
import os
|
||||
import re
|
||||
|
||||
s_filePath = os.getcwd()
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Checks if this is the target level and renames it
|
||||
#------------------------------------------------------------------------------
|
||||
def RenameFileOnMatch(pattern, fileName, oldLevelName, newLevelName):
|
||||
match = re.match(pattern, fileName)
|
||||
if match:
|
||||
levelName = match.group(1)
|
||||
if levelName == oldLevelName:
|
||||
newFileName = f"{newLevelName}{match.group(2)}"
|
||||
os.rename(os.path.join(s_filePath, fileName),
|
||||
os.path.join(s_filePath, newFileName))
|
||||
print(f"Renamed {fileName} to {newFileName}")
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Renames the target BSP and its associated lump files
|
||||
#------------------------------------------------------------------------------
|
||||
def RenameBspFiles(oldLevelName, newLevelName):
|
||||
for fileName in os.listdir(s_filePath):
|
||||
|
||||
# Rename BSP
|
||||
if fileName.endswith('.bsp'):
|
||||
pattern = r'^(.*?)(\.[^\.]+$)'
|
||||
RenameFileOnMatch(pattern, fileName, oldLevelName, newLevelName)
|
||||
|
||||
# Rename lumps
|
||||
elif fileName.endswith('.bsp_lump'):
|
||||
pattern = r'^(.*?)(\..*?)$'
|
||||
RenameFileOnMatch(pattern, fileName, oldLevelName, newLevelName)
|
||||
|
||||
# Rename entity partition
|
||||
elif fileName.endswith('.ent'):
|
||||
pattern = r'^(.*?)(_[^_]+$)'
|
||||
RenameFileOnMatch(pattern, fileName, oldLevelName, newLevelName)
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
if __name__ == "__main__":
|
||||
if len(sys.argv) > 1:
|
||||
RenameBspFiles(sys.argv[1], sys.argv[2])
|
||||
else:
|
||||
print("Usage: ren_map.py <oldLevelName> <newLevelName>")
|
Loading…
x
Reference in New Issue
Block a user