public function get_continents() { $this->doInitStats(); $continents = !$this->error && is_array($this->stack['a']) ? @$this->stack['a'] : null; if (is_array($continents)) { $this->note = $this->analyse_continents($continents); $this->output("LoU get continents: " . implode(", " . LoU::get_continent_abbr(), $continents)); $this->notify(); } return true; }
} $receivers = $redis->SDIFF("{$settler_key}:{$alliance_key}:{$continent_key}:residents", "{$settler_key}:{$alliance_key}:nomail"); // find 'settler:continent:10:settlers:123:123' name $settler_pattern = "{$settler_key}:{$alliance_key}:{$continent_key}:settlers:"; $settler_keys = $redis->clearKey($redis->Keys("{$settler_pattern}*"), "/{$settler_pattern}/"); // clear up '123:123' name if (is_array($settler_keys)) { foreach ($settler_keys as $key) { if ($name = $redis->get("{$settler_pattern}{$key}")) { if (!in_array($name, $receivers) && !$redis->sIsMember("{$settler_key}:{$alliance_key}:nomail", $name)) { $receivers[] = $name; } } } } $bot->log('IGM: send ' . count($receivers) . ' messages to ' . LoU::get_continent_abbr() . $continent); $bot->igm->send(implode(';', $receivers), "? {$bot->lou->get_continent_abbr()}{$continent} {$pos} {$lawless}siedeln", "{$bot->lou->get_continent_abbr()}{$continent} - {$lawless}[coords]{$pos}[/coords] - [player]{$data['user']}[/player]"); } else { $settler = $redis->get("{$settler_key}:{$alliance_key}:{$continent_key}:settlers:{$pos}"); $lawless = $redis->sIsMember("{$continent_key}:lawless", $pos) ? 'LL ' : ''; $settletime = date('d.m.Y H:i:s', time() - (SETTLERTTL - $redis->TTL("{$settler_key}:{$alliance_key}:{$continent_key}:settlers:{$pos}"))); if ($settler != $data['user']) { $message = "[player]{$settler}[/player] siedelt auf {$continent_name} {$lawless}[coords]{$pos}[/coords] seit: {$settletime}"; } else { if ($data["channel"] == ALLYIN) { $message = "{$data['user']}, du siedelst schon auf {$continent_name} {$lawless}[coords]{$pos}[/coords] seit: {$settletime}"; } else { $message = "Du siedelst schon auf {$continent_name} {$lawless}[coords]{$pos}[/coords] seit: {$settletime}"; } } }