public function CommandBroadcast($id, $command) { $servers = ServerList::getList(); $message = join(" ", $command); foreach ($servers as $server) { ServerList::getServerRCon($server)->say($message, array(), FALSE); } }
public function RoutineMessages() { // We browse all servers $servers = ServerList::getList(); foreach ($servers as $serv) { $server = ServerList::getServer($serv); $rcon = ServerList::getServerRCon($serv); $_messages = $server->get('msgs'); $count = count($_messages); if ($this->config[$serv]['Active'] and $count) { $_lasttime = $server->get('lasttime'); $_lastmsg = $server->get('lastmsg'); $time = time(); if ($time >= $_lasttime + $this->config[$serv]['EverySeconds']) { $last = end($_messages); $first = reset($_messages); $msg = $first; // If $_lastmsg is at the end of $_messages, we take the first value of $_messages if ($last !== $_lastmsg) { $while = TRUE; while ($while) { if ($msg == $_lastmsg) { $while = FALSE; } $msg = next($_messages); } } $rcon->say($msg, array(), FALSE); $server->set('lastmsg', $msg); $server->set('lasttime', $time); } } } }
/** Destroy function. Unloads the plugin properly. * This function cleans properly the plugin when it is unloaded. * * \return Nothing. */ public function destroy() { //We browse all servers $servers = ServerList::getList(); foreach ($servers as $serv) { $server = ServerList::getServer($serv); $rcon = ServerList::getServerRCon($serv); $rcon->say("Stats stopped by plugin unload."); $server->set('stats', NULL); $server->set('statsConfig', NULL); $server->set('awards', NULL); $server->set('ratioList', NULL); $server->set('disableStatsReset', NULL); } }
public function IrcUrt($pseudo, $channel, $cmd, $message) { $server = LeelaBotIrc::nameOfServer($cmd[1]); if ($server !== false) { $rcon = ServerList::getServerRCon($server); $serverlist = ServerList::getList(); if (in_array($cmd[1], $serverlist)) { $envoi = explode(' ', $message[2], 3); $i = 2; } else { $envoi = explode(' ', $message[2], 2); $i = 1; } if (isset($envoi[$i])) { $rcon->say('^4IRC : <$nick> $message', array('nick' => $pseudo, 'message' => LeelaBotIrc::standardize(rtrim($envoi[$i])))); } } }
public function IrcReload($pseudo, $channel, $cmd, $message) { $server = LeelaBotIrc::nameOfServer($cmd[1], FALSE); if ($server !== false) { $rcon = ServerList::getServerRCon($server); $rcon->reload(); } }
public function RoutineWarns() { // We browse all servers $servers = ServerList::getList(); foreach ($servers as $serv) { $server = ServerList::getServer($serv); $rcon = ServerList::getServerRCon($serv); $_warns = $server->get('warns'); if (count($_warns)) { foreach ($_warns as $player => $warns) { if ($warns['num'] >= $this->config['WarnsKick'] && time() >= $warns['last'] + $this->config['SecondsBeforeKick']) { $rcon->tell($player, 'You have $warns warnings. You will be kicked', array('warns' => $warns['num'])); $this->_clearWarn($player, $server); $rcon->kick($player); } } } } }