Is now fixed
Couldn't explain precisely how/why, but I think the following code could
PHP Code:
endRound(roundwinner, cam, offset)
{
...
else if(roundwinner == "axis")
{
doRoundcam = true;
game["axisscore"]++;
setTeamScore("axis", game["axisscore"]);
players = getentarray("player", "classname");
for(i = 0; i < players.size; i++)
{
lpGuid = players[i] getGuid();
if((isdefined(players[i].pers["team"])) && (players[i].pers["team"] == "axis"))
winners = (winners + ";" + lpGuid + ";" + players[i].name);
else if((isdefined(players[i].pers["team"])) && (players[i].pers["team"] == "allies"))
losers = (losers + ";" + lpGuid + ";" + players[i].name);
}
logPrint("W;axis" + winners + "\n");
logPrint("L;allies" + losers + "\n");
}
if (doRoundcam)
{
printf("######### sd: endRound: doRoundcam \n");
level roundCam(cam, roundwinner, offset);
}
else
{
wait 7;
}
...
level notify("restarting");
map_restart(true);
}
roundCam(cam, roundwinner, offset)
{
if (!isdefined(cam) || !isdefined(roundwinner) || !isdefined(offset))
{
wait(3);
return;
}
delay = 2;
wait(delay);
...
viewers = 0;
players = getentarray("player", "classname");
for (i = 0; i < players.size; i++)
{
player = players[i];
if (isdefined(player.killcam) || (player.archivetime > 0))
{
// Already running killcam, stop it
player notify("spawned");
wait(0.05);
player.spectatorclient = -1;
player.archivetime = 0;
}
player thread maps\mp\gametypes\_killcam::roundcam(cam, delay, text, offset);
viewers++;
}
if (viewers)
{
level waittill("roundcam_ended");
}
else
{
wait(3 - delay);
}
}