Hi Sven,
lösch einmal die Strichpunkte (Semikolons) nach den if's:
Code:
////////////////////////// DH Warning Tone
if(DecisionHeight > 2500)
{DecisionHeight = 2500;}
if(DecisionHeight > 410) // 150ft Warning
{UINT32 val = (UINT32) (radio_height_var.var_value.n * 3.28084);
if ((val - DecisionHeight < 150) && (vs_var.var_value.n <0))
{MFSSoundFilePlay(dhwarn, FALSE);}
else if (val - DecisionHeight == 0)
{MFSSoundStop(dhwarn);}
else
{MFSSoundStop(dhwarn);}
}
if(DecisionHeight < 400) // 50ft Warning
{UINT32 val = (UINT32) (radio_height_var.var_value.n * 3.28084);
if ((val - DecisionHeight < 50) && (vs_var.var_value.n <0))
{MFSSoundFilePlay(dhwarn, FALSE);}
else if (val - DecisionHeight == 0)
{MFSSoundStop(dhwarn);}
else
{MFSSoundStop(dhwarn);}
}
Und was passiert bei einer DH zwischen 400 und 410 (es wird zuerst >410 und dann <400 überprüft!)
Hoffe geholfen zu haben!
Grüsse, Christoph