Skip to content

Commit 42b3b6a

Browse files
committed
replace hardcoded ints with global variables
1 parent 04efa16 commit 42b3b6a

File tree

1 file changed

+50
-20
lines changed
  • Assets/com.unity.formats.fbx/Editor/Integrations/Autodesk/maya/scripts

1 file changed

+50
-20
lines changed

Assets/com.unity.formats.fbx/Editor/Integrations/Autodesk/maya/scripts/unityCommands.mel

Lines changed: 50 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@ global string $UnityFbxAnimFileNameAttr = "unityFbxAnimFileName";
55
global string $UnityFbxNamespaceAttr = "unityFbxNamespace";
66
global string $UnityExportSetNameFormat = "^1s_UnityExportSet";
77

8+
global int $UnityFbxFilePathIndex = 0;
9+
global int $UnityFbxFileNameIndex = 1;
10+
global int $UnityFbxAnimFilePathIndex = 2;
11+
global int $UnityFbxAnimFileNameIndex = 3;
12+
global int $UnityFileNameWithoutExtIndex = 4;
13+
814
/* Enum */
915
global int $UnityExportAnim = 0;
1016
global int $UnityExportModel = 1;
@@ -136,6 +142,12 @@ proc string checkNamespaceNeedsUpdate(string $unitySet, string $unityFbxNamespac
136142
// =======================
137143

138144
proc string[] getExportSetAttributes(string $exportPath, int $exportAnimOnly){
145+
global int $UnityFbxFilePathIndex;
146+
global int $UnityFbxFileNameIndex;
147+
global int $UnityFbxAnimFilePathIndex;
148+
global int $UnityFbxAnimFileNameIndex;
149+
global int $UnityFileNameWithoutExtIndex;
150+
139151
string $exportAttributes[5];
140152

141153
$exportDir = dirname($exportPath);
@@ -154,11 +166,11 @@ proc string[] getExportSetAttributes(string $exportPath, int $exportAnimOnly){
154166
}
155167
$fileNameWithoutExt = formValidObjectName($fileNameWithoutExt);
156168

157-
$exportAttributes[0] = $exportDir;
158-
$exportAttributes[1] = $exportFileName;
159-
$exportAttributes[2] = $exportAnimDir;
160-
$exportAttributes[3] = $exportAnimFileName;
161-
$exportAttributes[4] = $fileNameWithoutExt;
169+
$exportAttributes[$UnityFbxFilePathIndex] = $exportDir;
170+
$exportAttributes[$UnityFbxFileNameIndex] = $exportFileName;
171+
$exportAttributes[$UnityFbxAnimFilePathIndex] = $exportAnimDir;
172+
$exportAttributes[$UnityFbxAnimFileNameIndex] = $exportAnimFileName;
173+
$exportAttributes[$UnityFileNameWithoutExtIndex] = $fileNameWithoutExt;
162174

163175
return $exportAttributes;
164176
}
@@ -233,11 +245,17 @@ proc setExportSetAttributes(
233245
global string $UnityFbxAnimFileNameAttr;
234246
global string $UnityFbxNamespaceAttr;
235247

236-
$exportDir = $exportAttrs[0];
237-
$exportFileName = $exportAttrs[1];
238-
$exportAnimDir = $exportAttrs[2];
239-
$exportAnimFileName = $exportAttrs[3];
240-
$fileNameWithoutExt = $exportAttrs[4];
248+
global int $UnityFbxFilePathIndex;
249+
global int $UnityFbxFileNameIndex;
250+
global int $UnityFbxAnimFilePathIndex;
251+
global int $UnityFbxAnimFileNameIndex;
252+
global int $UnityFileNameWithoutExtIndex;
253+
254+
$exportDir = $exportAttrs[$UnityFbxFilePathIndex];
255+
$exportFileName = $exportAttrs[$UnityFbxFileNameIndex];
256+
$exportAnimDir = $exportAttrs[$UnityFbxAnimFilePathIndex];
257+
$exportAnimFileName = $exportAttrs[$UnityFbxAnimFileNameIndex];
258+
$fileNameWithoutExt = $exportAttrs[$UnityFileNameWithoutExtIndex];
241259

242260
// unlock set so we can add attributes to it
243261
lockNode -lock false $unityExportSet;
@@ -273,6 +291,12 @@ proc importFile(string $filePathStr){
273291
global string $UnityFbxAnimFileNameAttr;
274292
global string $UnityFbxNamespaceAttr;
275293

294+
global int $UnityFbxFilePathIndex;
295+
global int $UnityFbxFileNameIndex;
296+
global int $UnityFbxAnimFilePathIndex;
297+
global int $UnityFbxAnimFileNameIndex;
298+
global int $UnityFileNameWithoutExtIndex;
299+
276300
$isAnimFile = false;
277301
if(match("@", basename($filePathStr, ".fbx")) != ""){
278302
// import as animation
@@ -281,11 +305,11 @@ proc importFile(string $filePathStr){
281305

282306
$exportAttrs = getExportSetAttributes($filePathStr, $isAnimFile);
283307

284-
$currentDir = $exportAttrs[0];
285-
$fileName = $exportAttrs[1];
286-
$currentAnimDir = $exportAttrs[2];
287-
$animFileName = $exportAttrs[3];
288-
$fileNameWithoutExt = $exportAttrs[4];
308+
$currentDir = $exportAttrs[$UnityFbxFilePathIndex];
309+
$fileName = $exportAttrs[$UnityFbxFileNameIndex];
310+
$currentAnimDir = $exportAttrs[$UnityFbxAnimFilePathIndex];
311+
$animFileName = $exportAttrs[$UnityFbxAnimFileNameIndex];
312+
$fileNameWithoutExt = $exportAttrs[$UnityFileNameWithoutExtIndex];
289313

290314
$unityExportSet = getNewExportSetName($fileNameWithoutExt);
291315

@@ -523,15 +547,21 @@ proc string[] getUnityExportSets(){
523547
}
524548

525549
proc setupNewExportSet(string $exportPath, int $exportAnimOnly, string $selectedObjects[]){
550+
global int $UnityFbxFilePathIndex;
551+
global int $UnityFbxFileNameIndex;
552+
global int $UnityFbxAnimFilePathIndex;
553+
global int $UnityFbxAnimFileNameIndex;
554+
global int $UnityFileNameWithoutExtIndex;
555+
526556
$isAnimFile = $exportAnimOnly;
527557

528558
// Get the export set attributes
529559
$exportAttrs = getExportSetAttributes($exportPath, $exportAnimOnly);
530-
$exportDir = $exportAttrs[0];
531-
$exportFileName = $exportAttrs[1];
532-
$exportAnimDir = $exportAttrs[2];
533-
$exportAnimFileName = $exportAttrs[3];
534-
$fileNameWithoutExt = $exportAttrs[4];
560+
$exportDir = $exportAttrs[$UnityFbxFilePathIndex];
561+
$exportFileName = $exportAttrs[$UnityFbxFileNameIndex];
562+
$exportAnimDir = $exportAttrs[$UnityFbxAnimFilePathIndex];
563+
$exportAnimFileName = $exportAttrs[$UnityFbxAnimFileNameIndex];
564+
$fileNameWithoutExt = $exportAttrs[$UnityFileNameWithoutExtIndex];
535565

536566
$unityExportSet = getNewExportSetName($fileNameWithoutExt);
537567

0 commit comments

Comments
 (0)