Thanks again Bobo. This all makes really good sense. I do have one question though regarding installing/uninstalling custom tools written in maxscrip…
Found it, there’s a huge amount of documentation on it that I somehow missed macros.load() Cheers
Thanks for the info Bobo. Very handy that this can be done without restarting 3ds max. Is there a way of reloading macroscripts in a similar kind of …
The reason the callback isn’t being removed is becase it is a change handler. To remove the change handler use this code: deleteAllChangeHandlers id…
Why do you need to save a string with and without a dot? Surely you can just save one string in the ini file and add a dot in the script after loading…
I think it’s because you had “as string” outside of a bracket. Also, “as string” isn’t required because everything is a string already. “;” at the end…
Ah of course, any new layers/objects added to the scene will always be at the end of the layer/object array respectively. Cheers for that I’m sure it’…
Ah, it appears that the filePostMerge callback is fired before the nodeEventCallback. This code works, and the nodeEventCallback is only enabled when…
I’d do something like this, but probably put it in a struct to avoid lots of globals: global theNodeEventCallback global merging = false global new…
Looks nice. By the way you may want to have a look at some other button controls that ship with 3ds Max. the default ones are OK but they don’t exactl…
Nice work John, looks like you’re getting up to speeds with dotNet very quickly Looking forward to the results you post up soon.
Really nice code optimisation lo! Thanks for sharing, I’ll be sure to have a proper look through it a little later when I have some free time. It’s d…
Hmm odd, when I paste in the code it adds a few spaces between some words. “.flatstyle” has become “.flatstyl e”! Has anyone seen this before? I’ve…
I would add all your dotNet objects into a struct so you can access them with only one global variable. Also, no, you cannot send custom parameters t…