Using a module call in an "If" statement will result in the module's return value being reset to "0" when the entire "If" condition becomes true. This can only happen if the Return statement within the called module is not currently in an active state.
For example:
Main [
If Check();
[
I++;
]
]
<
{===================================================== }
Check
Init [
If 1 Main;
[
Return (1);
]
]
Main [
]
>
In the example above, the first "If" will not be an "If 1", since its return value will be reset.