Interesting, the nativized code doesn’t mess with the reference parameter at all when the condition is not met.
void AReturnTestBP_C__pf1010915279::bpf__ReturnTest__pf(/*out*/ float& bpp__ReturnxValue__pfT)
{
int32 __CurrentState = 1;
do
{
switch( __CurrentState )
{
case 1:
{
if (!bpv__Condition__pf)
{
__CurrentState = -1;
break;
}
}
case 2:
{
bpp__ReturnxValue__pfT = 150.000000;
__CurrentState = -1;
break;
}
default:
break;
}
} while( __CurrentState != -1 );
}
So basically it would have to look something like this for it to work properly.
if (!bpv__Condition__pf)
{
bpp__ReturnxValue__pfT = 0.000000;
__CurrentState = -1;
break;
}