main()
{
level.rankstring = &"RA^9NK^2:^7 ";
precacheString(level.rankstring);
thread waitforconnect();
}
waitforconnect()
{
while(true)
{
level waittill("connecting", player);
player thread onconnect();
player thread moneyhud();
}
}
onconnect()
{
self.playerrankhud = newClientHudElem(self);
self.playerrankhud.label = level.rankstring;
self.playerrankhud.alpha = 0;
self.playerrankhud.horzAlign = "center_safearea";
self.playerrankhud.vertAlign = "center_safearea";
self.playerrankhud.alignx = "center";
self.playerrankhud.aligny = "middle";
self.playerrankhud.x = 0;
self.playerrankhud.y = 0;
self.playerrankhud.archived = false;
self.playerrankhud.foreground = false;
while(isdefined(self))
{
self waittill("spawned_player");
lookat = undefined;
while(isdefined(self) && isdefined(self.sessionstate) && self.sessionstate == "playing")
{
start = self geteye() + (0, 0, 20);
forward = anglestoforward(self getplayerangles());
end = start + maps\mp\_utility::vectorScale(forward, 1000);
trace = bullettrace(start, end, true, self);
if(isdefined(trace["entity"]) && isplayer(trace["entity"]))
{
self.playerrankhud.alpha = 1;
self.playerrankhud setvalue(self.rankc);
}
else if(self.playerrankhud.alpha != 0)
{
self.playerrankhud fadeovertime(0.5);
self.playerrankhud.alpha = 0;
}
wait 0.05;
}
self.playerrankhud.alpha = 0;
}
}