вторник, 13 сентября 2016 г.

Работа с именами текстур.

Бывает так, что, к примеру, в папке wood - куча текстур с непонятными названиями, вроде - 01, asdfasdf, и т.п. .Скрипт ниже переименовывает текстуры по названию папки + произвольное шестизначное число. Сразу обновляет путь битмапы. На примере папки wood текстуры будут иметь следующие имена  - wood_126523 и т.п.
-----------------------------------------------------------
 (
local albm = getclassinstances bitmapTexture, arPath = #()
  
fn randName num = (
local rN = ""
for i = 1 to num do rN+= (random 1 num) as string
rN
)

fn getFileFolderName pf = (
    fsp = filterString pf "\\"
    fsp[fsp.count-1]
    )

for n in albm do
(
    if n.filename != undefined do(
        if doesFileExist n.filename then(
                appendIfUnique arPath n.filename
                nn =(getFilenamePath  n.filename)+(getFileFolderName  n.filename)+"_"+(randName 6)+(getFilenameType n.filename)
                renameFile n.filename nn
                n.filename = nn
                appendIfUnique arPath n.filename
            ) else(
                if (findItem  arPath n.filename) != 0 do n.filename = arPath[(findItem  arPath n.filename)+1]
                )
        )
    )
)   
-----------------------------------------------------------

Комментариев нет:

Отправить комментарий