Parašė jignas· 2013 Kov. 10 14:03:01
#1
Sveiki.
Iškilo pačiam problema su counter strike status žaidėjų atvaizdavimu (žaidėjas, fragai, laikas), tik daliai serverių atvaizduoja, o kitiem rodo daug langų kuriuose atvaizduojama 0
function getServerPlayers($serveraddress,$portnumber,$waittime) {
// Servercommand
$cmd="\xFF\xFF\xFF\xFFplayers\x00";
$serverdata=$this->getServerData($cmd,$serveraddress,$portnumber,$waittime);
// Check length of returned data, if < 5 something went wrong
if (strlen($serverdata)<5) return false;
// Check number of players to read data for
$players=ord($serverdata[5]);
// Strip OOB data and other stuff
$serverdata=substr($serverdata,7);
for ($i=1;$i<=$players;$i++) {
$playername =htmlspecialchars($this->getnextstring($serverdata));
$frags =$this->getnextfragvalue($serverdata);
$playtime =$this->getnextplaytime($serverdata);
$this->m_playerinfo[$i] =array("name"=>$playername,"frags"=>$frags,"time"=>$playtime);
}
// Sort players in fragorder
if ($players>1) usort($this->m_playerinfo,"fragsort");
return true;
}
Redagavo jignas· 2013 Kov. 10 14:03:48