01.12.2009, 18:14
Hi there.
Trying to create a compass:
Everything works just fine, but if you face north, no text is getting displayed (no string getting set). Why?
Trying to create a compass:
Код:
public comptimer(playerid)
{
new Float:angle;
new string[24];
GetPlayerFacingAngle(playerid, angle);
//--------------------------------------------------------------------------/
if(floatround(angle,floatround_round) > 23.50 && floatround(angle,floatround_round) < 67.50)
{
format(string,sizeof(string),"NE - %d",floatround(angle,floatround_round));
}
//--------------------------------------------------------------------------/
if(floatround(angle,floatround_round) > 67.50 && floatround(angle,floatround_round) < 113.50)
{
format(string,sizeof(string),"E - %d",floatround(angle,floatround_round));
}
//--------------------------------------------------------------------------/
if(floatround(angle,floatround_round) > 113.50 && floatround(angle,floatround_round) < 157.50)
{
format(string,sizeof(string),"SE - %d",floatround(angle,floatround_round));
}
//--------------------------------------------------------------------------/
if(floatround(angle,floatround_round) > 157.50 && floatround(angle,floatround_round) < 203.50)
{
format(string,sizeof(string),"S - %d",floatround(angle,floatround_round));
}
//--------------------------------------------------------------------------/
if(floatround(angle,floatround_round) > 203.50 && floatround(angle,floatround_round) < 247.50)
{
format(string,sizeof(string),"SW - %d",floatround(angle,floatround_round));
}
//--------------------------------------------------------------------------/
if(floatround(angle,floatround_round) > 247.50 && floatround(angle,floatround_round) < 293.50)
{
format(string,sizeof(string),"W - %d",floatround(angle,floatround_round));
}
//--------------------------------------------------------------------------/
if(floatround(angle,floatround_round) > 293.50 && floatround(angle,floatround_round) < 336.50)
{
format(string,sizeof(string),"W - %d",floatround(angle,floatround_round));
}
//--------------------------------------------------------------------------/
if(floatround(angle,floatround_round) > 336.50 && floatround(angle,floatround_round) < 23.50)
{
format(string,sizeof(string),"N - %d",floatround(angle,floatround_round));
}
TextDrawSetString(comp[playerid],string);
return 1;
}

