Bir Özel Attribute içinde FileIn() ile ilgili bir sorunum var. Komutumu ilk defa çalıştırdığımda tanımsız bir sınıf veya işlev alıyorum. Ayrıca 3ds max'i kapattığımda ve özel niteliklerimi kullanarak bir kutuyu yeniden açtığımda da her zaman hata alıyorum.Maxscript FileIn Özel Öznitelik İçinde
Umarım birisi kodumda yanlış yaptığımı anlamama yardımcı olabilir. Ben gerçekten bir çözüm olduğunu umuyorum çünkü FileIn() benim kodumu yeniden kullanıp düzenlemem için çok kullanışlıdır. yardım :) İşte
için şimdiden teşekkür ederiz kodum şudur: MAXScript dosyasında
Global newAttrib = attributes posAttribs
(
fn addFunction FolderName vArray=
(
/*
1) Get the root position of the installed position of 3ds max
2) Get in the script file and then in the FolderName of the function
3) Add all the function inside the vArray in a FileIn Loop
*/
for i = 1 to vArray.count do
(
FolderPosition = ((GetDir #maxroot)+"\scripts\\" +FolderName + "\\")
FileIn(FolderPosition + vArray[i])
)
)
parameters Param0 rollout:General
(
pPreset0 type:#String ui:ddl_Preset0 default:"..."
pTableHeight type:#Float ui:spn_Height default:100
)--end Param1
parameters Param1 rollout:TopPart
(
pPreset1 type:#String ui:ddl_Preset1 default:"..."
defaultArray1 type:#stringTab tabSize:1 tabSizeVariable:true
defaultExist1 type:#boolean default:False
)--end Param1
parameters Param2 rollout:BottomPart
(
pPreset2 type:#String ui:ddl_Preset2 default:"..."
pLegEndShape type:#String ui:ddl_LegEnd default:"..."
defaultArray2 type:#stringTab tabSize:1 tabSizeVariable:true
defaultExist2 type:#boolean default:False
)--end Param2
parameters Param3 rollout:Supports
(
pPreset3 type:#String ui:ddl_Preset3 default:"..."
defaultArray3 type:#stringTab tabSize:1 tabSizeVariable:true
defaultExist3 type:#boolean default:False
)--end Param3
Local externalFn = #("UI_CaptionChange.ms", "UI_ControlVisible.ms", "UI_MoveVisible.ms")
Local externalMod = #("MOD_Extrude.ms", "MOD_Taper.ms", "MOD_QuadChamfer.ms", "MOD_SweepModifier.ms")
Local TableTypes = sort(#("...", "Dining", "Workbench", "Coffee", "Round"))
Local TopTypes = sort(#("...", "Square", "Rectangle", "Round","Oval","Triangle", "NGon", "Semi Circle", "Quarter Circle"))
Local LegTypes = sort(#("...", "Straight", "Taper", "Cross","U","MultiEnd", "X", "Curve", "T"))
Local LegEndTypes = sort(#("...", "Square", "Rectangular", "Circle","NGon"))
Local SupportTypes = sort(#("...", "CopyTop", "PTP"))
Rollout General "General"
(
dropdownlist ddl_Preset0 "Presets:" items:TableTypes
spinner spn_Height "Height" range:[0,1000,100] type:#float
button btn_Random "Random All" border:True
on General open do
(
addFunction "Mal_Functions" externalFn --Adding all the external function
addFunction "Mal_Modifiers" externalMod --Adding all the external modifiers
ddl_Preset0.selection = findItem ddl_Preset0.items pPreset0
UICaptionChange General 2 "Test"
)
on ddl_Preset0 selected val do
(
pPreset0 = ddl_Preset0.selected
)
)--end TopPart Rollout
Rollout TopPart "Top Part"
(
dropdownlist ddl_Preset1 "Presets:" items:TopTypes
spinner spn_Thickness "Height" range:[0,1000,2] type:#float
spinner spn_Length "Length" range:[0,1000,2] type:#float
spinner spn_Width "Width" range:[0,1000,2] type:#float
on TopPart open do
(
ddl_Preset1.selection = findItem ddl_Preset1.items pPreset1
if defaultExist == False then
(
--defaultArray = UIDefault Testing
--defaultExist = True
)
)
on ddl_Preset1 selected val do
(
pPreset1 = ddl_Preset1.selected
)
)--end TopPart Rollout
Rollout BottomPart "Bottom Part"
(
dropdownlist ddl_Preset2 "Presets:" items:LegTypes
dropdownlist ddl_LegEnd "Leg End Shape:" items:LegEndTypes
on BottomPart open do
(
ddl_Preset2.selection = findItem ddl_Preset2.items pPreset2
ddl_LegEnd.selection = findItem ddl_LegEnd.items pLegEndShape
)
on ddl_Preset2 selected val do
(
pPreset2 = ddl_Preset2.selected
)
on ddl_LegEnd selected val do
(
pLegEndShape = ddl_LegEnd.selected
)
)--end BottomPart Rollout
Rollout Supports "Supports"
(
dropdownlist ddl_Preset3 "Presets:" items:SupportTypes
on Supports open do
(
ddl_Preset3.selection = findItem ddl_Preset3.items pPreset3
)
on ddl_Preset3 selected val do
(
pPreset3 = ddl_Preset3.selected
)
)--end Supports Rollout
)--end posAttribs
modPanel.addModToSelection (EmptyModifier()) ui:on
custAttributes.add $.modifiers[1] newAttrib --add the attribute in the first modifier
Gerçek hata mesajı nedir? Hangi satırın/öğenin tanımsız olduğunu söylüyor mu? Yaptığınız şeyle teknik olarak yanlış bir şey yok, FileIn'i böyle bir döngüde çalıştırmak olağandışı ama imkansız değil. – FrozenKiwi
Sorunlar şu satırdan geliyor: UICaptionChange Genel 2 "Test" İlk değerlendirdiğimde, undefiend işlev/sınıfını aldım ancak ikinci kez betiğimi değerlendiriyorum. – teckcloud
Bu, Maxscript Listener'daki tam iletidir: - General.open() içinde hata oluştu; dosya adı: ; pozisyon: 2354; satır: 58 - Çerçeve: - UICaptionChange: undefined >> MAXScript Rollout Handler Özel Durum: - Tür hatası: Arama işlevi veya sınıfı, şunu aldınız: undefined << – teckcloud