Dear god, why? Just do this:
eval("%this." @ %method @ "(%v0,%v1,%v2,%v3,%v4,%v5,%v6,%v7,%v8,%v9,%v10,%v11,%v12,%v13,%v14,%v15,%v16,%v17);");
There is actually a very good reason. That's what I did originally, but it doesn't work. Default methods, like
setColor, say that you have the wrong number of arguments when you do that. The unused parameters are considered to be "" rather than null by the engine, and it causes an error.
So... Would the chainMethodCall be a better solution for THIS?
Yes.
The first one I don't really have a use for, but the chainMethodCall sounds useful.
Keep in mind that first one is required for the second.