This is an old revision of the document!
ACSUtils uses a simple convention for functions returning multiple values, like RotateVector:
There are global variables r1 through r8. The functions write their return values to them.
RotateVector(x, y, angle); // Call the function int newX = r1; // Get the first returned value int newY = r2; // And the second one
Don't do this:
SomeFunctionWithMultipleReturns(...); SomeOtherFunction(r1); int x = r2;
Because SomeOtherFunction can call functions that overwrite r2!!!
Instead do this:
SomeFunctionWithMultipleReturns(...); int a = r1; int b = r2;
SomeOtherFunction(a);