function SendNotActivated()
{
    global $GlobalUser;
    $unitab = LoadUniverse();
    $uni = $unitab['num'];
    echo "<html>\n";
    echo " <head>\n";
    echo "  <link rel='stylesheet' type='text/css' href='css/default.css' />\n";
    echo "  <link rel='stylesheet' type='text/css' href='css/formate.css' />\n";
    echo "  <link rel=\"stylesheet\" type=\"text/css\" href=\"formate.css\" />\n";
    echo "  <link rel=\"stylesheet\" type=\"text/css\" href=\"css/combox.css\">\n";
    echo "  <meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\" />\n";
    echo "  <title>Вселенная {$uni} ОГейм</title>\n";
    echo " </head>\n\n";
    echo " <body>\n";
    echo "  <center><font size=\"3\"><b>\n";
    echo "    <br /><br />\n";
    echo "    <font color=\"#FF0000\">Произошла ошбка</font>\n";
    echo "    <br /><br />\n";
    echo "    Эта функция доступна только после активации аккаунта.    \n";
    echo "    <br /><br />\n";
    echo "    Error-ID: 123456  </b></font></center>\n\n";
    echo " </body>\n";
    echo "</html>\n\n";
}
Esempio n. 2
0
function SetUniParam($speed, $fspeed, $acs, $fid, $did, $defrepair, $defrepair_delta, $galaxies, $systems, $rapid, $moons, $freeze, $lang)
{
    global $db_prefix;
    global $GlobalUni;
    $query = "UPDATE " . $db_prefix . "uni SET lang='" . $lang . "', freeze={$freeze}, speed={$speed}, fspeed={$fspeed}, acs={$acs}, fid={$fid}, did={$did}, defrepair={$defrepair}, defrepair_delta={$defrepair_delta}, galaxies={$galaxies}, systems={$systems}, rapid={$rapid}, moons={$moons}";
    dbquery($query);
    $GlobalUni = LoadUniverse();
}
Esempio n. 3
0
loca_add("menu", $GlobalUni['lang']);
if (key_exists('cp', $_GET)) {
    SelectPlanet($GlobalUser['player_id'], intval($_GET['cp']));
}
$GlobalUser['aktplanet'] = GetSelectedPlanet($GlobalUser['player_id']);
$now = time();
UpdateQueue($now);
$aktplanet = GetPlanet($GlobalUser['aktplanet']);
$aktplanet = ProdResources($aktplanet, $aktplanet['lastpeek'], $now);
UpdatePlanetActivity($aktplanet['planet_id']);
UpdateLastClick($GlobalUser['player_id']);
PageHeader("messages");
// *******************************************************************
$MAXMSG = 25;
// Количество сообщений на странице.
$uni = LoadUniverse();
DeleteExpiredMessages($GlobalUser['player_id']);
// Удалить сообщения которые хранятся дольше 24 часов.
// Заголовок таблицы
echo "<!-- CONTENT AREA -->\n";
echo "<div id='content'>\n";
echo "<center>\n";
//echo "GET: "; print_r ($_GET); echo "<br>";
//echo "POST: "; print_r ($_POST); echo "<br>";
if (method() === "POST") {
    //print_r ($_POST);
    $player_id = $GlobalUser['player_id'];
    if ($_POST['deletemessages'] === "deleteall") {
        DeleteAllMessages($player_id);
    } else {
        $result = EnumMessages($GlobalUser['player_id'], $MAXMSG);
Esempio n. 4
0
function va($subject)
{
    $num_arg = func_num_args();
    $pattern = array();
    for ($i = 1; $i < $num_arg; $i++) {
        $pattern[$i - 1] = "/#{$i}/";
        $replace[$i - 1] = func_get_arg($i);
    }
    return preg_replace($pattern, $replace, $subject);
}
// Соединиться с базой данных
dbconnect($db_host, $db_user, $db_pass, $db_name);
dbquery("SET NAMES 'utf8';");
dbquery("SET CHARACTER SET 'utf8';");
dbquery("SET SESSION collation_connection = 'utf8_general_ci';");
$GlobalUni = LoadUniverse();
if (!$GlobalUni['freeze']) {
    echo "<html><head><meta http-equiv='refresh' content='0;url={$StartPage}' /></head><body></body>";
    ob_end_flush();
    die;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title><?php 
echo loca("MAINTAIN_TITLE");
?>
</title>
    <style type="text/css" >
Esempio n. 5
0
loca_add("techlong", $GlobalUser['lang']);
loca_add("jumpgate", $GlobalUser['lang']);
if (key_exists('cp', $_GET)) {
    SelectPlanet($GlobalUser['player_id'], intval($_GET['cp']));
}
$GlobalUser['aktplanet'] = GetSelectedPlanet($GlobalUser['player_id']);
$now = time();
UpdateQueue($now);
$aktplanet = GetPlanet($GlobalUser['aktplanet']);
$aktplanet = ProdResources($aktplanet, $aktplanet['lastpeek'], $now);
UpdatePlanetActivity($aktplanet['planet_id']);
UpdateLastClick($GlobalUser['player_id']);
$session = $_GET['session'];
$fleetmap = array(215, 214, 213, 211, 210, 209, 208, 207, 206, 205, 204, 203, 202);
// ***************************************************************************************
$unitab = LoadUniverse();
$speed = $unitab['speed'];
$drepair = $unitab['defrepair'];
function rgnum($num)
{
    if ($num < 0) {
        return "<font color=\"#FF0000\">" . nicenum($num) . "</font>";
    } else {
        if ($num > 0) {
            return "<font color=\"#00FF00\">" . nicenum($num) . "</font>";
        } else {
            return nicenum($num);
        }
    }
}
function rapidIn($gid, $n)
Esempio n. 6
0
function Login($login, $pass, $passmd = "", $from_validate = 0)
{
    global $db_prefix, $db_secret;
    $unitab = LoadUniverse();
    $uni = $unitab['num'];
    if ($player_id = CheckPassword($login, $pass, $passmd)) {
        // Пользователь заблокирован?
        $user = LoadUser($player_id);
        if ($user['banned']) {
            UpdateLastClick($player_id);
            // Обновить активность пользователя, чтобы можно было продлять удаление.
            echo "<html><head><meta http-equiv='refresh' content='0;url=" . hostname() . "game/reg/errorpage.php?errorcode=3&arg1={$uni}&arg2={$login}&arg3=" . $user['banned_until'] . "' /></head><body></body>";
            ob_end_flush();
            exit;
        }
        $lastlogin = time();
        // Создать приватную сессию.
        $prsess = md5($login . $lastlogin . $db_secret);
        // Создать публичную сессию
        $sess = substr(md5($prsess . sha1($pass) . $db_secret . $lastlogin), 0, 12);
        // Записать приватную сессию в кукисы и обновить БД.
        setcookie("prsess_" . $player_id . "_" . $uni, $prsess, time() + 24 * 60 * 60, "/");
        $query = "UPDATE " . $db_prefix . "users SET lastlogin = {$lastlogin}, session = '" . $sess . "', private_session = '" . $prsess . "' WHERE player_id = {$player_id}";
        dbquery($query);
        // Записать IP-адрес.
        $ip = $_SERVER['REMOTE_ADDR'];
        $query = "UPDATE " . $db_prefix . "users SET ip_addr = '" . $ip . "' WHERE player_id = {$player_id}";
        dbquery($query);
        //echo "ID пользователя: $player_id<br>Приватная сессия: $prsess<br>Публичная сессия: $sess<br>IP-адрес: $ip";
        // Выбрать Главную планету текущей.
        $query = "SELECT * FROM " . $db_prefix . "users WHERE session = '" . $sess . "'";
        $result = dbquery($query);
        $user = dbarray($result);
        SelectPlanet($player_id, $user['hplanetid']);
        // Задание глобальной отгрузки игроков, чистки виртуальных ПО, чистки уничтоженных планет, пересчёт статистики альянсов и прочие глобальные события
        AddReloginEvent();
        AddCleanDebrisEvent();
        AddCleanPlanetsEvent();
        AddCleanPlayersEvent();
        AddRecalcAllyPointsEvent();
        // Задание пересчёта очков игрока.
        AddUpdateStatsEvent();
        AddRecalcPointsEvent($player_id);
        setcookie('ogamelang', $user['lang'], time() + 60 * 60 * 24 * 9999, "/");
        // Редирект на Обзор Главной планеты.
        header("Location: " . hostname() . "game/index.php?page=overview&session=" . $sess . "&lgn=1");
        echo "<html><head><meta http-equiv='refresh' content='0;url=" . hostname() . "game/index.php?page=overview&session=" . $sess . "&lgn=1' /></head><body></body>";
        LogIPAddress($ip, $player_id);
    } else {
        header("Location: " . hostname() . "game/reg/errorpage.php?errorcode=2&arg1={$uni}&arg2={$login}");
        echo "<html><head><meta http-equiv='refresh' content='0;url=" . hostname() . "game/reg/errorpage.php?errorcode=2&arg1={$uni}&arg2={$login}' /></head><body></body>";
    }
    ob_end_flush();
    exit;
}
function Admin_Users()
{
    global $session;
    global $db_prefix;
    global $GlobalUser;
    global $FleetMissionList;
    $now = time();
    $resmap = array(106, 108, 109, 110, 111, 113, 114, 115, 117, 118, 120, 121, 122, 123, 124, 199);
    $unitab = LoadUniverse();
    $speed = $unitab['speed'];
    // Обработка POST-запроса.
    if (method() === "POST" && $GlobalUser['admin'] >= 2) {
        if (key_exists('player_id', $_GET)) {
            $player_id = intval($_GET['player_id']);
        } else {
            $player_id = 0;
        }
        if (key_exists('action', $_GET) && $player_id) {
            $action = $_GET['action'];
        } else {
            $action = "";
        }
        if ($action === "update") {
            $query = "UPDATE " . $db_prefix . "users SET ";
            foreach ($resmap as $i => $gid) {
                $query .= "r{$gid} = " . intval($_POST["r{$gid}"]) . ", ";
            }
            if ($_POST['deaktjava'] === "on") {
                $query .= "disable = 1, disable_until = " . ($now + 7 * 24 * 60 * 60) . ", ";
            } else {
                $query .= "disable = 0, ";
            }
            if ($_POST['vacation'] === "on") {
                $query .= "vacation = 1, vacation_until = " . ($now + 2 * 24 * 60 * 60 / $speed) . ", ";
            } else {
                $query .= "vacation = 0, ";
            }
            if ($_POST['banned'] !== "on") {
                $query .= "banned = 0, ";
            }
            if ($_POST['noattack'] !== "on") {
                $query .= "noattack = 0, ";
            }
            $query .= "pemail = '" . $_POST['pemail'] . "', ";
            $query .= "email = '" . $_POST['email'] . "', ";
            $query .= "admin = '" . $_POST['admin'] . "', ";
            $query .= "validated = " . ($_POST['validated'] === "on" ? 1 : 0) . ", ";
            $query .= "sniff = " . ($_POST['sniff'] === "on" ? 1 : 0) . ", ";
            $query .= "debug = " . ($_POST['debug'] === "on" ? 1 : 0) . ", ";
            $query .= "dm = '" . intval($_POST['dm']) . "', ";
            $query .= "dmfree = '" . intval($_POST['dmfree']) . "', ";
            $query .= "sortby = '" . intval($_POST['settings_sort']) . "', ";
            $query .= "sortorder = '" . intval($_POST['settings_order']) . "', ";
            $query .= "skin = '" . $_POST['dpath'] . "', ";
            $query .= "useskin = " . ($_POST['design'] === "on" ? 1 : 0) . ", ";
            $query .= "deact_ip = " . ($_POST['deact_ip'] === "on" ? 1 : 0) . ", ";
            $query .= "maxspy = '" . intval($_POST['spio_anz']) . "', ";
            $query .= "maxfleetmsg = '" . intval($_POST['settings_fleetactions']) . "' ";
            $query .= " WHERE player_id={$player_id};";
            dbquery($query);
            $qname = array('CommanderOff', 'AdmiralOff', 'EngineerOff', 'GeologeOff', 'TechnocrateOff');
            foreach ($qname as $i => $qcmd) {
                $days = intval($_POST[$qcmd]);
                if ($days > 0) {
                    RecruitOfficer($player_id, $qcmd, $days * 24 * 60 * 60);
                }
            }
        }
        if ($action === "create_planet") {
            $g = $_POST['g'];
            if ($g === "") {
                $g = 1;
            }
            $s = $_POST['s'];
            if ($s === "") {
                $s = 1;
            }
            $p = $_POST['p'];
            if ($p === "") {
                $p = 1;
            }
            if (!HasPlanet($g, $s, $p)) {
                $planet_id = CreatePlanet($g, $s, $p, $_GET['player_id']);
                $query = "UPDATE " . $db_prefix . "planets SET mprod = 0, kprod = 0, dprod = 0 WHERE planet_id = " . $planet_id;
                dbquery($query);
            }
        }
    }
    // Обработка GET-запроса.
    if (method() === "GET" && $GlobalUser['admin'] >= 2) {
        if (key_exists('player_id', $_GET)) {
            $player_id = intval($_GET['player_id']);
        } else {
            $player_id = 0;
        }
        if (key_exists('action', $_GET) && $player_id) {
            $action = $_GET['action'];
        } else {
            $action = "";
        }
        $now = time();
        if ($action === "recalc_stats") {
            RecalcStats($player_id);
            RecalcRanks();
        }
        if ($action === "reactivate") {
            ReactivateUser($player_id);
        }
        if ($action === "bot_start") {
            StartBot($player_id);
        }
        if ($action === "bot_stop") {
            StopBot($player_id);
        }
    }
    if (key_exists("player_id", $_GET)) {
        // Информация об игроке
        InvalidateUserCache();
        $user = LoadUser(intval($_GET['player_id']));
        ?>

    <?php 
        echo AdminPanel();
        ?>

    <table>
    <form action="index.php?page=admin&session=<?php 
        echo $session;
        ?>
&mode=Users&action=update&player_id=<?php 
        echo $user['player_id'];
        ?>
" method="POST" >
    <tr><td class=c><?php 
        echo AdminUserName($user);
        ?>
</td><td class=c>Настройки</td><td class=c>Исследования</td></tr>

        <th valign=top><table>
            <tr><th>ID</th><th><?php 
        echo $user['player_id'];
        ?>
</th></tr>
            <tr><th>Дата регистрации</th><th><?php 
        echo date("Y-m-d H:i:s", $user['regdate']);
        ?>
</th></tr>
            <tr><th>Альянс</th><th>
<?php 
        if ($user['ally_id']) {
            $ally = LoadAlly($user['ally_id']);
            echo "[" . $ally['tag'] . "] " . $ally['name'];
        }
        ?>
</th></tr>
            <tr><th>Дата вступления</th><th>
<?php 
        if ($user['ally_id']) {
            echo date("Y-m-d H:i:s", $user['joindate']);
        }
        ?>
</th></tr>
            <tr><th>Постоянный адрес</th><th><input type="text" name="pemail" maxlength="100" size="20" value="<?php 
        echo $user['pemail'];
        ?>
" /></th></tr>
            <tr><th>Временный адрес</th><th><input type="text" name="email" maxlength="100" size="20" value="<?php 
        echo $user['email'];
        ?>
" /></th></tr>
            <tr><th>Удалить игрока</th><th><input type="checkbox" name="deaktjava"  <?php 
        echo IsChecked($user, "disable");
        ?>
/>
      <?php 
        if ($user['disable']) {
            echo date("Y-m-d H:i:s", $user['disable_until']);
        }
        ?>
</th></tr>
            <tr><th>Режим отпуска</th><th><input type="checkbox" name="vacation"  <?php 
        echo IsChecked($user, "vacation");
        ?>
/>
      <?php 
        if ($user['vacation']) {
            echo date("Y-m-d H:i:s", $user['vacation_until']);
        }
        ?>
</th></tr>
            <tr><th>Заблокирован</th><th><input type="checkbox" name="banned"  <?php 
        echo IsChecked($user, "banned");
        ?>
/>
      <?php 
        if ($user['banned']) {
            echo date("Y-m-d H:i:s", $user['banned_until']);
        }
        ?>
</th></tr>
            <tr><th>Бан атак</th><th><input type="checkbox" name="noattack"  <?php 
        echo IsChecked($user, "noattack");
        ?>
/>
      <?php 
        if ($user['noattack']) {
            echo date("Y-m-d H:i:s", $user['noattack_until']);
        }
        ?>
</th></tr>
            <tr><th>Последний вход</th><th><?php 
        echo date("Y-m-d H:i:s", $user['lastlogin']);
        ?>
</th></tr>
            <tr><th>Активность</th><th>
<?php 
        $now = time();
        echo date("Y-m-d H:i:s", $user['lastclick']);
        if ($now - $user['lastclick'] < 60 * 60) {
            echo " (" . floor(($now - $user['lastclick']) / 60) . " min)";
        }
        ?>
</th></tr>
            <tr><th>IP адрес</th><th><a href="http://nic.ru/whois/?query=<?php 
        echo $user['ip_addr'];
        ?>
" target=_blank><?php 
        echo $user['ip_addr'];
        ?>
</a></th></tr>
            <tr><th>Активирован</th><th><input type="checkbox" name="validated" <?php 
        echo IsChecked($user, "validated");
        ?>
 /> <a href="index.php?page=admin&session=<?php 
        echo $session;
        ?>
&mode=Users&action=reactivate&player_id=<?php 
        echo $user['player_id'];
        ?>
">выслать пароль</a></th></tr>
            <tr><th>Главная планета</th><th>
<?php 
        $planet = GetPlanet($user['hplanetid']);
        echo "[" . $planet['g'] . ":" . $planet['s'] . ":" . $planet['p'] . "] <a href=\"index.php?page=admin&session={$session}&mode=Planets&cp=" . $planet['planet_id'] . "\">" . $planet['name'] . "</a>";
        ?>
</th></tr>
            <tr><th>Текущая планета</th><th>
<?php 
        $planet = GetPlanet($user['aktplanet']);
        echo "[" . $planet['g'] . ":" . $planet['s'] . ":" . $planet['p'] . "] <a href=\"index.php?page=admin&session={$session}&mode=Planets&cp=" . $planet['planet_id'] . "\">" . $planet['name'] . "</a>";
        ?>
</th></tr>
            <tr><th>Права</th><th>
   <select name="admin">
     <option value="0" <?php 
        echo IsSelected($user, "admin", 0);
        ?>
>Пользователь</option>
     <option value="1" <?php 
        echo IsSelected($user, "admin", 1);
        ?>
>Оператор</option>
     <option value="2" <?php 
        echo IsSelected($user, "admin", 2);
        ?>
>Администратор</option>
   </select>
</th></tr>
            <tr><th>Включить слежение</th><th><input type="checkbox" name="sniff" <?php 
        echo IsChecked($user, "sniff");
        ?>
 /></th></tr>
            <tr><th>Отладочная информация</th><th><input type="checkbox" name="debug" <?php 
        echo IsChecked($user, "debug");
        ?>
 /></th></tr>

<?php 
        if (IsBot($user['player_id'])) {
            ?>
            <tr><th colspan=2><a href="index.php?page=admin&session=<?php 
            echo $session;
            ?>
&mode=Users&action=bot_stop&player_id=<?php 
            echo $user['player_id'];
            ?>
" >[Остановить бота]</a></th></tr>
<?php 
        } else {
            ?>
            <tr><th colspan=2><a href="index.php?page=admin&session=<?php 
            echo $session;
            ?>
&mode=Users&action=bot_start&player_id=<?php 
            echo $user['player_id'];
            ?>
" >[Запустить бота]</a></th></tr>
<?php 
        }
        ?>
        </table></th>

        <th valign=top><table>
            <tr><th>Сортировка планет</th><th>
   <select name="settings_sort">
    <option value="0" <?php 
        echo IsSelected($user, "sortby", 0);
        ?>
 >порядку колонизации</option>
    <option value="1" <?php 
        echo IsSelected($user, "sortby", 1);
        ?>
 >координатам</option>
    <option value="2" <?php 
        echo IsSelected($user, "sortby", 2);
        ?>
 >алфавиту</option>
   </select>
</th></tr>
            <tr><th>Порядок сортировки</th><th>
   <select name="settings_order">
     <option value="0" <?php 
        echo IsSelected($user, "sortorder", 0);
        ?>
>по возрастанию</option>
     <option value="1" <?php 
        echo IsSelected($user, "sortorder", 1);
        ?>
>по убыванию</option>
   </select>
</th></tr>
            <tr><th>Скин</th><th><input type=text name="dpath" maxlength="80" size="40" value="<?php 
        echo $user['skin'];
        ?>
" /></th></tr>
            <tr><th>Использовать скин</th><th><input type="checkbox" name="design" <?php 
        echo IsChecked($user, "useskin");
        ?>
 /></th></tr>
            <tr><th>Декативировать проверку IP</th><th><input type="checkbox" name="deact_ip" <?php 
        echo IsChecked($user, "deact_ip");
        ?>
 /></th></tr>
            <tr><th>Количество зондов</th><th><input type="text" name="spio_anz" maxlength="2" size="2" value="<?php 
        echo $user['maxspy'];
        ?>
" /></th></tr>
            <tr><th>Количество сообщений флота</th><th><input type="text" name="settings_fleetactions" maxlength="2" size="2" value="<?php 
        echo $user['maxfleetmsg'];
        ?>
" /></th></tr>

            <tr><th colspan=2>&nbsp</th></tr>
            <tr><td class=c colspan=2>Статистика</td></tr>
            <tr><th>Очки (старые)</th><th><?php 
        echo nicenum($user['oldscore1'] / 1000);
        ?>
 / <?php 
        echo nicenum($user['oldplace1']);
        ?>
</th></tr>
            <tr><th>Флот (старые)</th><th><?php 
        echo nicenum($user['oldscore2']);
        ?>
 / <?php 
        echo nicenum($user['oldplace2']);
        ?>
</th></tr>
            <tr><th>Исследования (старые)</th><th><?php 
        echo nicenum($user['oldscore3']);
        ?>
 / <?php 
        echo nicenum($user['oldplace3']);
        ?>
</th></tr>
            <tr><th>Очки</th><th><?php 
        echo nicenum($user['score1'] / 1000);
        ?>
 / <?php 
        echo nicenum($user['place1']);
        ?>
</th></tr>
            <tr><th>Флот</th><th><?php 
        echo nicenum($user['score2']);
        ?>
 / <?php 
        echo nicenum($user['place2']);
        ?>
</th></tr>
            <tr><th>Исследования</th><th><?php 
        echo nicenum($user['score3']);
        ?>
 / <?php 
        echo nicenum($user['place3']);
        ?>
</th></tr>
            <tr><th>Дата старой статистики</th><th><?php 
        echo date("Y-m-d H:i:s", $user['scoredate']);
        ?>
</th></tr>
            <tr><th colspan=2><a href="index.php?page=admin&session=<?php 
        echo $session;
        ?>
&mode=Users&action=recalc_stats&player_id=<?php 
        echo $user['player_id'];
        ?>
" >[Пересчитать статистику]</a></th></tr>

            <tr><th colspan=2>&nbsp</th></tr>
            <tr><td class=c colspan=2>Офицеры</td></tr>
            <tr><th colspan=2><table><tr>
<?php 
        $oname = array('Командир ОГейма', 'Адмирал', 'Инженер', 'Геолог', 'Технократ');
        $odesc = array('', '<font size=1 color=skyblue>&amp;nbsp;Макс. кол-во флотов +2</font>', '<font size=1 color=skyblue>Сокращает вдвое потери в обороне+10% больше энергии</font>', '<font size=1 color=skyblue>+10% доход от шахты</font>', '<font size=1 color=skyblue>+2 уровень шпионажа, 25% меньше времени на исследования</font>');
        $qname = array('CommanderOff', 'AdmiralOff', 'EngineerOff', 'GeologeOff', 'TechnocrateOff');
        $imgname = array('commander', 'admiral', 'ingenieur', 'geologe', 'technokrat');
        $now = time();
        foreach ($qname as $i => $qcmd) {
            $end = GetOfficerLeft($user['player_id'], $qname[$i]);
            $img = "";
            if ($end <= $now) {
                $img = "_un";
                $days = "";
            } else {
                $d = ($end - $now) / (60 * 60 * 24);
                if ($d > 0) {
                    $days = "&lt;font color=lime&gt;Активен&lt;/font&gt; ещё " . ceil($d) . " д.";
                }
            }
            echo "    <td align='center' width='35' class='header'>\n";
            echo "\t<img border='0' src='img/" . $imgname[$i] . "_ikon" . $img . ".gif' width='32' height='32' alt='" . $oname[$i] . "'\n";
            echo "\tonmouseover=\"return overlib('<center><font size=1 color=white><b>" . $days . "<br>" . $oname[$i] . "</font><br>" . $odesc[$i] . "<br></b></center>', LEFT, WIDTH, 150);\" onmouseout='return nd();'>\n";
            echo "    </td> <td><input type=\"text\" name=\"" . $qname[$i] . "\" size=\"3\" /></td>\n\n";
        }
        ?>
        </tr></table></th></tr>

            <tr><th colspan=2><i>Чтобы продлить офицера укажите необходимое количество дней в полях ввода</i></th></tr>

        </table></th>

        <th valign=top><table>
<?php 
        foreach ($resmap as $i => $gid) {
            echo "<tr><th>" . loca("NAME_{$gid}") . "</th><th><input type=\"text\" size=3 name=\"r{$gid}\" value=\"" . $user["r{$gid}"] . "\" /></th></tr>\n";
        }
        ?>
        <tr><th>Найденная Тёмная Материя</th><th><input type="text" size=5 name="dmfree" value="<?php 
        echo $user['dmfree'];
        ?>
" /></th></tr>
        <tr><th>Покупная Тёмная Материя</th><th><input type="text" size=5 name="dm" value="<?php 
        echo $user['dm'];
        ?>
" /></th></tr>
        </table></th>
    <tr><th colspan=3><input type="submit" value="Сохранить" /></th></tr>
    </form>
    </table>

    <br>
    <table> 
    <form action="index.php?page=admin&session=<?php 
        echo $session;
        ?>
&mode=Users&action=create_planet&player_id=<?php 
        echo $user['player_id'];
        ?>
" method="POST" >
    <tr><td class=c colspan=20>Список планет</td></tr>
    <tr>
<?php 
        $query = "SELECT * FROM " . $db_prefix . "planets WHERE owner_id = '" . intval($_GET['player_id']) . "' ORDER BY g ASC, s ASC, p ASC, type DESC";
        $result = dbquery($query);
        $rows = dbrows($result);
        $counter = 0;
        while ($rows--) {
            $p = dbarray($result);
            ?>
    <td> <img src="<?php 
            echo GetPlanetSmallImage("../evolution/", $p);
            ?>
" width="32px" height="32px"></td>
    <td> <a href="index.php?page=admin&session=<?php 
            echo $session;
            ?>
&mode=Planets&cp=<?php 
            echo $p['planet_id'];
            ?>
"> <?php 
            echo $p['name'];
            ?>
 </a>
            [<a href="index.php?page=galaxy&session=<?php 
            echo $session;
            ?>
&galaxy=<?php 
            echo $p['g'];
            ?>
&system=<?php 
            echo $p['s'];
            ?>
"><?php 
            echo $p['g'];
            ?>
:<?php 
            echo $p['s'];
            ?>
:<?php 
            echo $p['p'];
            ?>
</a>] </td>
<?php 
            $counter++;
            if ($counter > 9) {
                $counter = 0;
                echo "</tr>\n<tr>\n";
            }
        }
        ?>
    </tr>
    <tr><td colspan=20> Координаты: <input name="g" size=2> <input name="s" size=2> <input name="p" size=2> <input type="submit" value="Создать планету"></td></tr>
    </form>
    </table>

    <br>
    <table>

<?php 
        if ($_GET['action'] === 'fleetlogs') {
            echo "<tr><td class=c colspan=12>Логи полётов</td></tr>\n";
            if ($_GET['from'] == 1) {
                $result = FleetlogsFromPlayer($user['player_id'], $FleetMissionList[$_GET['mission']]);
            } else {
                $result = FleetlogsToPlayer($user['player_id'], $FleetMissionList[$_GET['mission']]);
            }
            $anz = $rows = dbrows($result);
            echo "<tr><td class=c>N</td> <td class=c>Таймер</td> <td class=c>Задание</td> <td class=c>Отправлен</td> <td class=c>Прибывает</td><td class=c>Время полёта</td> <td class=c>Старт</td> <td class=c>Цель</td> <td class=c>Флот</td> <td class=c>Ресурсы на планете</td> <td class=c>Груз</td> <td class=c>САБ</td> </tr>\n";
            $bxx = 1;
            while ($rows--) {
                $fleet_obj = dbarray($result);
                $fleet_price = FleetPrice($fleet_obj);
                $points = $fleet_price['points'];
                $fpoints = $fleet_price['fpoints'];
                $style = "";
                if ($points >= 100000000) {
                    if ($fleet_obj['mission'] <= 2) {
                        $style = " style=\"background-color: FireBrick;\" ";
                    } else {
                        $style = " style=\"background-color: DarkGreen;\" ";
                    }
                }
                ?>
        <tr <?php 
                echo $style;
                ?>
 >

        <th <?php 
                echo $style;
                ?>
 > <?php 
                echo $bxx;
                ?>
 </th>

        <th <?php 
                echo $style;
                ?>
 >
<?php 
                echo "<table><tr {$style} ><th {$style} ><div id='bxx" . $bxx . "' title='" . ($fleet_obj['end'] - $now) . "' star='" . $fleet_obj['start'] . "'> </th>";
                echo "<tr><th {$style} >" . date("d.m.Y H:i:s", $fleet_obj['end']) . "</th></tr></table>";
                ?>
        </th>
        <th <?php 
                echo $style;
                ?>
 >
<?php 
                echo FleetlogsMissionText($fleet_obj['mission']);
                ?>
        </th>
        <th <?php 
                echo $style;
                ?>
 ><?php 
                echo date("d.m.Y", $fleet_obj['start']);
                ?>
 <br> <?php 
                echo date("H:i:s", $fleet_obj['start']);
                ?>
</th>
        <th <?php 
                echo $style;
                ?>
 ><?php 
                echo date("d.m.Y", $fleet_obj['end']);
                ?>
 <br> <?php 
                echo date("H:i:s", $fleet_obj['end']);
                ?>
</th>
        <th <?php 
                echo $style;
                ?>
 >
<?php 
                echo "<nobr>" . BuildDurationFormat($fleet_obj['flight_time']) . "</nobr><br>";
                echo "<nobr>" . $fleet_obj['flight_time'] . " сек.</nobr>";
                ?>
        </th>
        <th <?php 
                echo $style;
                ?>
 >
<?php 
                echo "[" . $fleet_obj['origin_g'] . ":" . $fleet_obj['origin_s'] . ":" . $fleet_obj['origin_p'] . "]";
                $u = LoadUser($fleet_obj['owner_id']);
                echo " <br>" . AdminUserName($u);
                ?>
        </th>
        <th <?php 
                echo $style;
                ?>
 >
<?php 
                echo "[" . $fleet_obj['target_g'] . ":" . $fleet_obj['target_s'] . ":" . $fleet_obj['target_p'] . "]";
                $u = LoadUser($fleet_obj['target_id']);
                echo " <br>" . AdminUserName($u);
                ?>
        </th>
        <th <?php 
                echo $style;
                ?>
 >
<?php 
                $fleetmap = array(202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215);
                foreach ($fleetmap as $i => $gid) {
                    $amount = $fleet_obj["ship" . $gid];
                    if ($amount > 0) {
                        echo loca("NAME_{$gid}") . ":" . nicenum($amount) . " ";
                    }
                }
                ?>
        </th>
        <th <?php 
                echo $style;
                ?>
 >
<?php 
                $total = $fleet_obj['pm'] + $fleet_obj['pk'] + $fleet_obj['pd'];
                if ($total > 0) {
                    echo "М: " . nicenum($fleet_obj['pm']) . "<br>";
                    echo "К: " . nicenum($fleet_obj['pk']) . "<br>";
                    echo "Д: " . nicenum($fleet_obj['pd']);
                } else {
                    echo "-";
                }
                ?>
        </th>
        <th <?php 
                echo $style;
                ?>
 >
<?php 
                $total = $fleet_obj['m'] + $fleet_obj['k'] + $fleet_obj['d'];
                if ($total > 0) {
                    echo "М: " . nicenum($fleet_obj['m']) . "<br>";
                    echo "К: " . nicenum($fleet_obj['k']) . "<br>";
                    echo "Д: " . nicenum($fleet_obj['d']);
                } else {
                    echo "-";
                }
                ?>
        </th>
        <th <?php 
                echo $style;
                ?>
 >
<?php 
                if ($fleet_obj['union_id']) {
                    echo $fleet_obj['union_id'];
                } else {
                    echo "-";
                }
                ?>
        </th>

        </tr>
<?php 
                $bxx++;
            }
            echo "<script language=javascript>anz={$anz};t();</script>\n";
        } else {
            ?>

    <tr><td class=c colspan=3>Логи полётов</td></tr>
    <tr><td>Задание</td><td>от <?php 
            echo $user['oname'];
            ?>
</td><td>на <?php 
            echo $user['oname'];
            ?>
</td></tr>
    <tr><td>Все</td><td><?php 
            echo LinkFleetsFrom($user, 0);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 0);
            ?>
</td></tr>
    <tr><td>Атака</td><td><?php 
            echo LinkFleetsFrom($user, 1);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 1);
            ?>
</td></tr>
    <tr><td>Совместная атака</td><td><?php 
            echo LinkFleetsFrom($user, 2);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 2);
            ?>
</td></tr>
    <tr><td>Транспорт</td><td><?php 
            echo LinkFleetsFrom($user, 3);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 3);
            ?>
</td></tr>
    <tr><td>Оставить</td><td><?php 
            echo LinkFleetsFrom($user, 4);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 4);
            ?>
</td></tr>
    <tr><td>Держаться</td><td><?php 
            echo LinkFleetsFrom($user, 5);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 5);
            ?>
</td></tr>
    <tr><td>Шпионаж</td><td><?php 
            echo LinkFleetsFrom($user, 6);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 6);
            ?>
</td></tr>
    <tr><td>Колонизировать</td><td><?php 
            echo LinkFleetsFrom($user, 7);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 7);
            ?>
</td></tr>
    <tr><td>Переработать</td><td><?php 
            echo LinkFleetsFrom($user, 8);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 8);
            ?>
</td></tr>
    <tr><td>Уничтожить</td><td><?php 
            echo LinkFleetsFrom($user, 9);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 9);
            ?>
</td></tr>
    <tr><td>Экспедиция</td><td><?php 
            echo LinkFleetsFrom($user, 15);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 15);
            ?>
</td></tr>
    <tr><td>Ракетная атака</td><td><?php 
            echo LinkFleetsFrom($user, 20);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 20);
            ?>
</td></tr>
    <tr><td>Атака (САБ)</td><td><?php 
            echo LinkFleetsFrom($user, 21);
            ?>
</td><td><?php 
            echo LinkFleetsTo($user, 21);
            ?>
</td></tr>
    </table>

<?php 
        }
        ?>

<?php 
    } else {
        $query = "SELECT * FROM " . $db_prefix . "users ORDER BY regdate DESC LIMIT 25";
        $result = dbquery($query);
        AdminPanel();
        echo "    </th> \n";
        echo "   </tr> \n";
        echo "</table> \n";
        echo "Новые пользователи:<br>\n";
        echo "<table>\n";
        echo "<tr><td class=c>Дата регистрации</td><td class=c>Главная планета</td><td class=c>Имя игрока</td></tr>\n";
        $rows = dbrows($result);
        while ($rows--) {
            $user = dbarray($result);
            $hplanet = GetPlanet($user['hplanetid']);
            echo "<tr><th>" . date("Y-m-d H:i:s", $user['regdate']) . "</th>";
            echo "<th>[" . $hplanet['g'] . ":" . $hplanet['s'] . ":" . $hplanet['p'] . "] <a href=\"index.php?page=admin&session={$session}&mode=Planets&cp=" . $hplanet['planet_id'] . "\">" . $hplanet['name'] . "</a></th>";
            echo "<th>" . AdminUserName($user) . "</th></tr>\n";
        }
        echo "</table>\n";
        ?>

    <br>
    <table>
<?php 
        $when = time() - 24 * 60 * 60;
        $query = "SELECT * FROM " . $db_prefix . "users WHERE lastclick >= {$when} ORDER BY oname ASC";
        $result = dbquery($query);
        $rows = dbrows($result);
        ?>
    <tr><td class=c>Активные за последние 24 часа (<?php 
        echo $rows;
        ?>
)</td></tr>
    <tr><td>
<?php 
        $first = true;
        while ($rows--) {
            $user = dbarray($result);
            if ($first) {
                $first = false;
            } else {
                echo ", ";
            }
            echo AdminUserName($user);
        }
        ?>
    </td></tr>
    </table>

<?php 
    }
    // Поиск пользователей
}
Esempio n. 8
0
function GetHoldingFleets($planet_id)
{
    global $db_prefix;
    $uni = LoadUniverse();
    // ограничить количество флотов настройками вселенной
    $max = max(0, $uni['acs'] * $uni['acs'] - 1);
    $query = "SELECT * FROM " . $db_prefix . "fleet WHERE mission = 205 AND target_planet = {$planet_id} LIMIT {$max}";
    $result = dbquery($query);
    return $result;
}
Esempio n. 9
0
function Admin_Uni()
{
    global $db_prefix;
    global $GlobalUser;
    global $session;
    $now = time();
    if (method() === "POST" && $GlobalUser['admin'] >= 2) {
        if (key_exists('news_upd', $_POST)) {
            if ($_POST['news_upd'] > 0) {
                UpdateNews($_POST['news1'], $_POST['news2'], $_POST['news_upd']);
            }
        }
        if ($_POST['news_off'] === "on") {
            DisableNews();
        }
        $rapid = $_POST['rapid'] === "on" ? 1 : 0;
        $moons = $_POST['moons'] === "on" ? 1 : 0;
        $freeze = $_POST['freeze'] === "on" ? 1 : 0;
        SetUniParam($_POST['speed'], $_POST['fspeed'], $_POST['acs'], $_POST['fid'], $_POST['did'], $_POST['defrepair'], $_POST['defrepair_delta'], $_POST['galaxies'], $_POST['systems'], $rapid, $moons, $freeze);
        // Включить принудительное РО активным игрокам, если вселенная ставится на паузу.
        if ($freeze) {
            $days7 = $now - 7 * 24 * 60 * 60;
            $query = "UPDATE " . $db_prefix . "users SET vacation = 1, vacation_until = " . $now . " WHERE lastclick >= {$days7}";
            dbquery($query);
        }
        //print_r ( $_POST );
    }
    $unitab = LoadUniverse();
    ?>

<?php 
    echo AdminPanel();
    ?>

<table >
<form action="index.php?page=admin&session=<?php 
    echo $session;
    ?>
&mode=Uni" method="POST" >
<tr><td class=c colspan=2>Настройки Вселенной <?php 
    echo $unitab['num'];
    ?>
</td></tr>
<tr><th>Дата открытия</th><th><?php 
    echo date("Y-m-d H:i:s", $unitab['startdate']);
    ?>
</th></tr>
<tr><th>Количество игроков</th><th><?php 
    echo $unitab['usercount'];
    ?>
</th></tr>
<tr><th>Максимальное количество игроков</th><th><input type="text" name="maxusers" maxlength="10" size="10" value="<?php 
    echo $unitab['maxusers'];
    ?>
" /></th></tr>
<tr><th>Количество галактик</th><th><input type="text" name="galaxies" maxlength="3" size="3" value="<?php 
    echo $unitab['galaxies'];
    ?>
" /></th></tr>
<tr><th>Количество систем в галактике</th><th><input type="text" name="systems" maxlength="3" size="3" value="<?php 
    echo $unitab['systems'];
    ?>
" /></th></tr>

  <tr>
   <th>Ускорение игры</th>
   <th>
   <select name="speed">
     <option value="1" <?php 
    echo UniIsSelected($unitab['speed'], 1);
    ?>
>1x</option>
     <option value="2" <?php 
    echo UniIsSelected($unitab['speed'], 2);
    ?>
>2x</option>
     <option value="3" <?php 
    echo UniIsSelected($unitab['speed'], 3);
    ?>
>3x</option>
     <option value="4" <?php 
    echo UniIsSelected($unitab['speed'], 4);
    ?>
>4x</option>
     <option value="5" <?php 
    echo UniIsSelected($unitab['speed'], 5);
    ?>
>5x</option>
     <option value="6" <?php 
    echo UniIsSelected($unitab['speed'], 6);
    ?>
>6x</option>
     <option value="7" <?php 
    echo UniIsSelected($unitab['speed'], 7);
    ?>
>7x</option>
     <option value="8" <?php 
    echo UniIsSelected($unitab['speed'], 8);
    ?>
>8x</option>
     <option value="9" <?php 
    echo UniIsSelected($unitab['speed'], 9);
    ?>
>9x</option>
     <option value="10" <?php 
    echo UniIsSelected($unitab['speed'], 10);
    ?>
>10x</option>
   </select>
   </th>
 </tr>

  <tr>
   <th>Ускорение флота</th>
   <th>
   <select name="fspeed">
     <option value="1" <?php 
    echo UniIsSelected($unitab['fspeed'], 1);
    ?>
>1x</option>
     <option value="2" <?php 
    echo UniIsSelected($unitab['fspeed'], 2);
    ?>
>2x</option>
     <option value="3" <?php 
    echo UniIsSelected($unitab['fspeed'], 3);
    ?>
>3x</option>
     <option value="4" <?php 
    echo UniIsSelected($unitab['fspeed'], 4);
    ?>
>4x</option>
     <option value="5" <?php 
    echo UniIsSelected($unitab['fspeed'], 5);
    ?>
>5x</option>
     <option value="6" <?php 
    echo UniIsSelected($unitab['fspeed'], 6);
    ?>
>6x</option>
     <option value="7" <?php 
    echo UniIsSelected($unitab['fspeed'], 7);
    ?>
>7x</option>
     <option value="8" <?php 
    echo UniIsSelected($unitab['fspeed'], 8);
    ?>
>8x</option>
     <option value="9" <?php 
    echo UniIsSelected($unitab['fspeed'], 9);
    ?>
>9x</option>
     <option value="10" <?php 
    echo UniIsSelected($unitab['fspeed'], 10);
    ?>
>10x</option>
   </select>
   </th>
 </tr>

  <tr>
   <th>Флот в обломки</th>
   <th>
   <select name="fid">
     <option value="0" <?php 
    echo UniIsSelected($unitab['fid'], 0);
    ?>
>0%</option>
     <option value="10" <?php 
    echo UniIsSelected($unitab['fid'], 10);
    ?>
>10%</option>
     <option value="20" <?php 
    echo UniIsSelected($unitab['fid'], 20);
    ?>
>20%</option>
     <option value="30" <?php 
    echo UniIsSelected($unitab['fid'], 30);
    ?>
>30%</option>
     <option value="40" <?php 
    echo UniIsSelected($unitab['fid'], 40);
    ?>
>40%</option>
     <option value="50" <?php 
    echo UniIsSelected($unitab['fid'], 50);
    ?>
>50%</option>
     <option value="60" <?php 
    echo UniIsSelected($unitab['fid'], 60);
    ?>
>60%</option>
     <option value="70" <?php 
    echo UniIsSelected($unitab['fid'], 70);
    ?>
>70%</option>
     <option value="80" <?php 
    echo UniIsSelected($unitab['fid'], 80);
    ?>
>80%</option>
     <option value="90" <?php 
    echo UniIsSelected($unitab['fid'], 90);
    ?>
>90%</option>
     <option value="100" <?php 
    echo UniIsSelected($unitab['fid'], 100);
    ?>
>100%</option>
   </select>
   </th>
 </tr>

  <tr>
   <th>Оборона в обломки</th>
   <th>
   <select name="did">
     <option value="0" <?php 
    echo UniIsSelected($unitab['did'], 0);
    ?>
>0%</option>
     <option value="10" <?php 
    echo UniIsSelected($unitab['did'], 10);
    ?>
>10%</option>
     <option value="20" <?php 
    echo UniIsSelected($unitab['did'], 20);
    ?>
>20%</option>
     <option value="30" <?php 
    echo UniIsSelected($unitab['did'], 30);
    ?>
>30%</option>
     <option value="40" <?php 
    echo UniIsSelected($unitab['did'], 40);
    ?>
>40%</option>
     <option value="50" <?php 
    echo UniIsSelected($unitab['did'], 50);
    ?>
>50%</option>
     <option value="60" <?php 
    echo UniIsSelected($unitab['did'], 60);
    ?>
>60%</option>
     <option value="70" <?php 
    echo UniIsSelected($unitab['did'], 70);
    ?>
>70%</option>
     <option value="80" <?php 
    echo UniIsSelected($unitab['did'], 80);
    ?>
>80%</option>
     <option value="90" <?php 
    echo UniIsSelected($unitab['did'], 90);
    ?>
>90%</option>
     <option value="100" <?php 
    echo UniIsSelected($unitab['did'], 100);
    ?>
>100%</option>
   </select>
   </th>
 </tr>

<tr><th>Восстановление обороны</th><th>
<input type="text" name="defrepair" maxlength="3" size="3" value="<?php 
    echo $unitab['defrepair'];
    ?>
" /> +/-
<input type="text" name="defrepair_delta" maxlength="3" size="3" value="<?php 
    echo $unitab['defrepair_delta'];
    ?>
" /> %
</th></tr>

<tr><th>Приглашенных игроков в САБ</th><th><input type="text" name="acs" maxlength="3" size="3" value="<?php 
    echo $unitab['acs'];
    ?>
" /> (макс. <?php 
    echo $unitab['acs'] * $unitab['acs'];
    ?>
 флотов)</th></tr>

<tr><th>Скорострел</th><th><input type="checkbox" name="rapid"  <?php 
    echo UniIsChecked($unitab['rapid']);
    ?>
 /></th></tr>
<tr><th>Луны и Звёзды Смерти</th><th><input type="checkbox" name="moons" <?php 
    echo UniIsChecked($unitab['moons']);
    ?>
 /></th></tr>
<tr><th>Новость 1</th><th><input type="text" name="news1" maxlength="99" size="20" value="<?php 
    echo $unitab['news1'];
    ?>
" /></th></tr>
<tr><th>Новость 2</th><th><input type="text" name="news2" maxlength="99" size="20" value="<?php 
    echo $unitab['news2'];
    ?>
" /></th></tr>
<?php 
    if ($now > $unitab['news_until']) {
        echo "<tr><th>Продлить новость</th><th><input type=\"text\" name=\"news_upd\" maxlength=\"3\" size=\"3\" value=\"0\" /> дн.</th></tr>\n";
    } else {
        echo "<tr><th>Показывать новость до</th><th>" . date("Y-m-d H:i:s", $unitab['news_until']) . " <input type=\"checkbox\" name=\"news_off\"  /> убрать</th></tr>\n";
    }
    ?>
<tr><th>Поставить вселенную на паузу</th><th><input type="checkbox" name="freeze"  <?php 
    echo UniIsChecked($unitab['freeze']);
    ?>
 /></th></tr>
<tr><th colspan=2><input type="submit" value="Сохранить" /></th></tr>

</form>
</table>

<?php 
}
Esempio n. 10
0
function CreateHomePlanet($player_id)
{
    global $db_prefix;
    $ss = 15;
    $uni = LoadUniverse();
    $ppg = $ss * $uni['systems'];
    // количество планет в галактике
    $sg = 1;
    // стартовая галактика для регистрации
    $planet = array();
    for ($i = 0; $i < ($sg - 1) * $ppg; $i++) {
        $planet[$i] = 1;
    }
    for ($i; $i < $uni['galaxies'] * $ppg; $i++) {
        $planet[$i] = 0;
    }
    $query = "SELECT * FROM " . $db_prefix . "planets WHERE g >= {$sg} AND p <= {$ss} AND type <> 10002 ORDER BY g, s, p";
    $result = dbquery($query);
    $rows = dbrows($result);
    while ($rows--) {
        $destination = dbarray($result);
        $d = ($destination['g'] - 1) * $ppg + ($destination['s'] - 1) * $ss + $destination['p'] - 1;
        $planet[$d] = 1;
    }
    $d = ($sg - 1) * $ppg;
    while ($d < $ppg * 9) {
        $g = floor($d / $ppg) + 1;
        $dd = $d - ($g - 1) * $ppg;
        $s = floor($dd / $ss) + 1;
        $p = $dd % $ss + 1;
        if (!$planet[floor($d)] && $g >= 1 && $p > 3 && $p < 13) {
            return CreatePlanet($g, $s, $p, $player_id, 0);
        }
        $d += 1.3;
    }
    Error("No more planets!!!");
}
Esempio n. 11
0
function ExpeditionBattle($fleet_id, $pirates, $level, $when)
{
    global $db_prefix;
    global $GlobalUni;
    $fleetmap = array(202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215);
    $defmap = array(401, 402, 403, 404, 405, 406, 407, 408);
    $a_result = array(0 => "combatreport_ididattack_iwon", 1 => "combatreport_ididattack_ilost", 2 => "combatreport_ididattack_draw");
    global $db_host, $db_user, $db_pass, $db_name, $db_prefix;
    $a = array();
    $d = array();
    $unitab = LoadUniverse();
    $fid = $unitab['fid'];
    $did = $unitab['did'];
    $rf = $unitab['rapid'];
    // *** Союзные атаки не должны вступать битву. Игнорировать их.
    $f = LoadFleet($fleet_id);
    // *** Сгенерировать исходные данные
    // Список атакующих
    $anum = 0;
    $a[0] = LoadUser($f['owner_id']);
    $a[0]['fleet'] = array();
    foreach ($fleetmap as $i => $gid) {
        $a[0]['fleet'][$gid] = abs($f["ship{$gid}"]);
    }
    $start_planet = GetPlanet($f['start_planet']);
    $a[0]['g'] = $start_planet['g'];
    $a[0]['s'] = $start_planet['s'];
    $a[0]['p'] = $start_planet['p'];
    $a[0]['id'] = $fleet_id;
    $a[0]['points'] = $a[0]['fpoints'] = 0;
    $anum++;
    // Список обороняющихся
    $dnum = 0;
    $d[0] = LoadUser(99999);
    if ($pirates) {
        $d[0]['oname'] = "Piraten";
        $d[0]['r109'] = max(0, $a[0]['r109'] - 3);
        $d[0]['r110'] = max(0, $a[0]['r110'] - 3);
        $d[0]['r111'] = max(0, $a[0]['r111'] - 3);
    } else {
        $d[0]['oname'] = "Aliens";
        $d[0]['r109'] = $a[0]['r109'] + 3;
        $d[0]['r110'] = $a[0]['r110'] + 3;
        $d[0]['r111'] = $a[0]['r111'] + 3;
    }
    $d[0]['fleet'] = array();
    $d[0]['defense'] = array();
    foreach ($fleetmap as $i => $gid) {
        // Определить состав флота пиратов / чужих
        if ($pirates) {
            // Пиратский флот, Округление состава флота вниз.
            // Нормальный - 30% +/- 3% от количества кораблей вашего флота + 5 ЛИ
            // Сильный - 50% +/- 5% от количества кораблей вашего флота + 3 Крейсера
            // Оч. Сильный - 80% +/- 8% от количества кораблей вашего флота + 2 Линка
            if ($a[0]['fleet'][$gid] > 0) {
                if ($level == 0) {
                    $ratio = mt_rand(27, 33) / 100;
                } else {
                    if ($level == 1) {
                        $ratio = mt_rand(45, 55) / 100;
                    } else {
                        if ($level == 2) {
                            $ratio = mt_rand(72, 88) / 100;
                        }
                    }
                }
                $d[0]['fleet'][$gid] = floor($a[0]['fleet'][$gid] * $ratio);
            } else {
                $d[0]['fleet'][$gid] = 0;
            }
        } else {
            // Флот Чужих, Округление состава флота вверх.
            // Нормальный - 40% +/- 4% от количества кораблей вашего флота + 5 ТИ
            // Сильный - 60% +/- 6% от количества кораблей вашего флота + 3 Линейки
            // Оч. Сильный - 90% +/- 9% от количества кораблей вашего флота + 2 Уника
            if ($a[0]['fleet'][$gid] > 0) {
                if ($level == 0) {
                    $ratio = mt_rand(36, 44) / 100;
                } else {
                    if ($level == 1) {
                        $ratio = mt_rand(54, 66) / 100;
                    } else {
                        if ($level == 2) {
                            $ratio = mt_rand(81, 99) / 100;
                        }
                    }
                }
                $d[0]['fleet'][$gid] = ceil($a[0]['fleet'][$gid] * $ratio);
            } else {
                $d[0]['fleet'][$gid] = 0;
            }
        }
    }
    if ($pirates) {
        if ($level == 0) {
            $d[0]['fleet'][204] += 5;
        } else {
            if ($level == 1) {
                $d[0]['fleet'][206] += 3;
            } else {
                if ($level == 2) {
                    $d[0]['fleet'][207] += 2;
                }
            }
        }
    } else {
        if ($level == 0) {
            $d[0]['fleet'][205] += 5;
        } else {
            if ($level == 1) {
                $d[0]['fleet'][215] += 3;
            } else {
                if ($level == 2) {
                    $d[0]['fleet'][213] += 2;
                }
            }
        }
    }
    foreach ($defmap as $i => $gid) {
        $d[0]['defense'][$gid] = 0;
    }
    $target_planet = GetPlanet($f['target_planet']);
    $d[0]['g'] = $target_planet['g'];
    $d[0]['s'] = $target_planet['s'];
    $d[0]['p'] = $target_planet['p'];
    $d[0]['id'] = $target_planet['planet_id'];
    $d[0]['points'] = $d[0]['fpoints'] = 0;
    $dnum++;
    $source .= "Rapidfire = {$rf}\n";
    $source .= "FID = {$fid}\n";
    $source .= "DID = {$did}\n";
    $source .= "Attackers = " . $anum . "\n";
    $source .= "Defenders = " . $dnum . "\n";
    foreach ($a as $num => $attacker) {
        $source .= "Attacker" . $num . " = (<" . $attacker['oname'] . "> ";
        $source .= $attacker['id'] . " ";
        $source .= $attacker['g'] . " " . $attacker['s'] . " " . $attacker['p'] . " ";
        $source .= $attacker['r109'] . " " . $attacker['r110'] . " " . $attacker['r111'] . " ";
        foreach ($fleetmap as $i => $gid) {
            $source .= $attacker['fleet'][$gid] . " ";
        }
        $source .= ")\n";
    }
    foreach ($d as $num => $defender) {
        $source .= "Defender" . $num . " = (<" . $defender['oname'] . "> ";
        $source .= $defender['id'] . " ";
        $source .= $defender['g'] . " " . $defender['s'] . " " . $defender['p'] . " ";
        $source .= $defender['r109'] . " " . $defender['r110'] . " " . $defender['r111'] . " ";
        foreach ($fleetmap as $i => $gid) {
            $source .= $defender['fleet'][$gid] . " ";
        }
        foreach ($defmap as $i => $gid) {
            $source .= $defender['defense'][$gid] . " ";
        }
        $source .= ")\n";
    }
    $battle = array(null, $source, "", "", $when);
    $battle_id = AddDBRow($battle, "battledata");
    $bf = fopen("battledata/battle_" . $battle_id . ".txt", "w");
    fwrite($bf, $source);
    fclose($bf);
    // *** Передать данные боевому движку
    $arg = "\"battle_id={$battle_id}\"";
    system($unitab['battle_engine'] . " {$arg}");
    // *** Обработать выходные данные
    $battleres = file_get_contents("battleresult/battle_" . $battle_id . ".txt");
    $res = unserialize($battleres);
    // Определить исход битвы.
    if ($res['result'] === "awon") {
        $battle_result = 0;
    } else {
        if ($res['result'] === "dwon") {
            $battle_result = 1;
        } else {
            $battle_result = 2;
        }
    }
    // Рассчитать общие потери (учитывать дейтерий и восстановленную оборону)
    $aloss = $dloss = 0;
    $loss = CalcLosses($a, $d, $res, array());
    $a = $loss['a'];
    $d = $loss['d'];
    $aloss = $loss['aloss'];
    $dloss = $loss['dloss'];
    // Сгенерировать боевой доклад.
    loca_add("battlereport", $GlobalUni['lang']);
    loca_add("technames", $GlobalUni['lang']);
    $text = ShortBattleReport($res, $when);
    // Разослать сообщения
    $mailbox = array();
    // Если флот уничтожен за 1 или 2 раунда - не показывать лог боя для атакующих.
    if (count($res['rounds']) <= 2 && $battle_result == 1) {
        $text = "Контакт с флотом потерян. <br> Это означает, что его уничтожили первым же залпом <!--A:{$aloss},W:{$dloss}-->";
    }
    foreach ($a as $i => $user) {
        if ($mailbox[$user['player_id']] == true) {
            continue;
        }
        $bericht = SendMessage($user['player_id'], "Командование флотом", "Боевой доклад", $text, 6, $when);
        MarkMessage($user['player_id'], $bericht);
        $subj = "<a href=\"#\" onclick=\"fenster(\\'index.php?page=bericht&session={PUBLIC_SESSION}&bericht={$bericht}\\', \\'Bericht_Kampf\\');\" ><span class=\"" . $a_result[$battle_result] . "\">Боевой доклад [" . $target_planet['g'] . ":" . $target_planet['s'] . ":" . $target_planet['p'] . "] (V:" . nicenum($dloss) . ",A:" . nicenum($aloss) . ")</span></a>";
        SendMessage($user['player_id'], "Командование флотом", $subj, "", 2, $when);
        $mailbox[$user['player_id']] = true;
    }
    // Обновить лог боевого доклада
    $subj = "<a href=\"#\" onclick=\"fenster(\\'index.php?page=admin&session={PUBLIC_SESSION}&mode=BattleReport&bericht={$battle_id}\\', \\'Bericht_Kampf\\');\" ><span class=\"" . $a_result[$battle_result] . "\">Боевой доклад [" . $target_planet['g'] . ":" . $target_planet['s'] . ":" . $target_planet['p'] . "] (V:" . nicenum($dloss) . ",A:" . nicenum($aloss) . ")</span></a>";
    $query = "UPDATE " . $db_prefix . "battledata SET title = '" . $subj . "', report = '" . $text . "' WHERE battle_id = {$battle_id};";
    dbquery($query);
    // Почистить старые боевые доклады
    $ago = $when - 2 * 7 * 24 * 60 * 60;
    $query = "DELETE FROM " . $db_prefix . "battledata WHERE date < {$ago};";
    dbquery($query);
    // Модифицировать флот
    WritebackBattleResultsExpedition($a, $d, $res);
    // Изменить статистику игроков
    foreach ($a as $i => $user) {
        AdjustStats($user['player_id'], $user['points'], $user['fpoints'], 0, '-');
    }
    RecalcRanks();
    // Чистим промежуточные данные боевого движка
    unlink("battledata/battle_" . $battle_id . ".txt");
    unlink("battleresult/battle_" . $battle_id . ".txt");
    return $battle_result;
}
Esempio n. 12
0
function Admin_BattleSim()
{
    global $session;
    global $db_prefix;
    global $GlobalUser;
    $fleetmap = array(202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215);
    $defmap = array(401, 402, 403, 404, 405, 406, 407, 408);
    $unitab = LoadUniverse();
    $rf = $unitab['rapid'];
    $fid = $unitab['fid'];
    $did = $unitab['did'];
    $debug = false;
    $maxslot = $unitab['acs'] * $unitab['acs'];
    $BattleReport = "";
    $aloss = $dloss = 0;
    // --------------------------------------------------------------------------------------------------------------------------
    // Обработка POST-запроса.
    if (method() === "POST" && $GlobalUser['admin'] >= 2) {
        //print_r ( $_POST );
        //echo "<hr>";
        // Сформировать список атакующих и обороняющихся
        $a = array();
        $d = array();
        $anum = intval($_POST['anum']);
        $dnum = intval($_POST['dnum']);
        // Атакующие
        for ($i = 0; $i < $anum; $i++) {
            if ($_POST["a" . $i . "_weap"] === "") {
                $_POST["a" . $i . "_weap"] = 0;
            }
            if ($_POST["a" . $i . "_shld"] === "") {
                $_POST["a" . $i . "_shld"] = 0;
            }
            if ($_POST["a" . $i . "_armor"] === "") {
                $_POST["a" . $i . "_armor"] = 0;
            }
            $a[$i]['r109'] = intval($_POST["a" . $i . "_weap"]);
            $a[$i]['r110'] = intval($_POST["a" . $i . "_shld"]);
            $a[$i]['r111'] = intval($_POST["a" . $i . "_armor"]);
            $a[$i]['oname'] = "Attacker{$i}";
            $a[$i]['g'] = mt_rand(1, 9);
            $a[$i]['s'] = mt_rand(1, 499);
            $a[$i]['p'] = mt_rand(1, 15);
            $a[$i]['fleet'] = array();
            foreach ($fleetmap as $n => $gid) {
                if ($_POST["a" . $i . "_{$gid}"] === "") {
                    $_POST["a" . $i . "_{$gid}"] = 0;
                }
                $a[$i]['fleet'][$gid] = intval($_POST["a" . $i . "_{$gid}"]);
            }
        }
        // Обороняющиеся
        for ($i = 0; $i < $dnum; $i++) {
            if ($_POST["d" . $i . "_weap"] === "") {
                $_POST["d" . $i . "_weap"] = 0;
            }
            if ($_POST["d" . $i . "_shld"] === "") {
                $_POST["d" . $i . "_shld"] = 0;
            }
            if ($_POST["d" . $i . "_armor"] === "") {
                $_POST["d" . $i . "_armor"] = 0;
            }
            $d[$i]['r109'] = intval($_POST["d" . $i . "_weap"]);
            $d[$i]['r110'] = intval($_POST["d" . $i . "_shld"]);
            $d[$i]['r111'] = intval($_POST["d" . $i . "_armor"]);
            $d[$i]['oname'] = "Defender{$i}";
            $d[$i]['g'] = mt_rand(1, 9);
            $d[$i]['s'] = mt_rand(1, 499);
            $d[$i]['p'] = mt_rand(1, 15);
            $d[$i]['fleet'] = array();
            foreach ($fleetmap as $n => $gid) {
                if ($_POST["d" . $i . "_{$gid}"] === "") {
                    $_POST["d" . $i . "_{$gid}"] = 0;
                }
                $d[$i]['fleet'][$gid] = intval($_POST["d" . $i . "_{$gid}"]);
            }
            $d[$i]['defense'] = array();
            foreach ($defmap as $n => $gid) {
                if ($_POST["d" . $i . "_{$gid}"] === "") {
                    $_POST["d" . $i . "_{$gid}"] = 0;
                }
                $d[$i]['defense'][$gid] = intval($_POST["d" . $i . "_{$gid}"]);
            }
        }
        // Симулировать битву
        $battle_result = 0;
        if ($_POST['debug'] === "on") {
            $debug = true;
        } else {
            $debug = false;
        }
        if ($_POST['rapid'] === "on") {
            $rf = true;
        } else {
            $rf = 0;
        }
        if ($_POST['fid'] === "") {
            $fid = 0;
        } else {
            $fid = intval($_POST['fid']);
        }
        if ($_POST['did'] === "") {
            $did = 0;
        } else {
            $did = intval($_POST['did']);
        }
        $BattleReport = SimBattle($a, $d, $rf, $fid, $did, $debug, &$battle_result, &$aloss, &$dloss);
    }
    // --------------------------------------------------------------------------------------------------------------------------
    // Таблица ввода параметров симуляции.
    function getval($name)
    {
        if ($_POST[$name] != "") {
            return "value=\"" . $_POST[$name] . "\" ";
        }
    }
    function getval2($arr, $id)
    {
        if ($_POST[$arr][$id] != 0) {
            return "value=\"" . $_POST[$arr][$id] . "\" ";
        } else {
            return "";
        }
    }
    ?>

<script language="JavaScript">

var maxslot = <?php 
    echo $maxslot;
    ?>
;

function toint (num)
{
    if ( typeof (num) == "undefined" ) num = 0;
    return parseInt (num);
}

// Пересчитать количество атакующих и обороняющихся.
function RecalcAttackersDefendersNum ()
{
    var anum = dnum = 1;
    var fleet = [ 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215 ];
    var defense = [ 401, 402, 403, 404, 405, 406, 407, 408 ];

    for ( n=0; n<maxslot; n++ )        // Атакующие
    {
        sum = 0;
        for (var i in fleet) {
            value = toint (document.getElementById ( "a"+n+"_" + fleet[i] ).value);
            if ( value ) sum += value;
        }
        if ( sum > 0 ) anum = n + 1;
    }

    for ( n=0; n<maxslot; n++ )        // Обороняющиеся
    {
        sum = 0;
        for (var i in fleet) {
            value = toint (document.getElementById ( "d"+n+"_" + fleet[i] ).value);
            if ( value ) sum += value;
        }
        for (var i in defense) {
            value = toint (document.getElementById ( "d"+n+"_" + defense[i] ).value);
            if ( value ) sum += value;
        }
        if ( sum > 0 ) dnum = n + 1;
    }

    document.getElementById ( "anum" ).value = anum;
    document.getElementById ( "dnum" ).value = dnum;
    //alert ( "Атакующих : " + anum + ", Обороняющихся : " + dnum );
}

// При смене слота - занести данные из массива слотов в ячейки ввода
function OnChangeSlot (attacker)
{
    var fleet = [ 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215 ];
    var defense = [ 401, 402, 403, 404, 405, 406, 407, 408 ];

    if (attacker) {
        slot = document.simForm.aslot.value - 1;
        for (var i in fleet) {
            value = toint (document.getElementById ( "a"+slot+"_" + fleet[i] ).value);
            if (value) document.getElementById ( "a_" + fleet[i] ).value = value;
            else document.getElementById ( "a_" + fleet[i] ).value = "";
        }
    }
    else {
        slot = document.simForm.dslot.value - 1;
        for (var i in fleet) {
            value = toint (document.getElementById ( "d"+slot+"_" + fleet[i] ).value);
            if ( value ) document.getElementById ( "d_" + fleet[i] ).value = value;
            else document.getElementById ( "d_" + fleet[i] ).value = "";
        }
        for (var i in defense) {
            value = toint (document.getElementById ( "d"+slot+"_" + defense[i] ).value);
            if (value) document.getElementById ( "d_" + defense[i] ).value = value;
            else document.getElementById ( "d_" + defense[i] ).value = "";
        }
    }
}

// При изменении ячейки - внести данные из неё в массив слотов
function OnChangeValue (attacker, id)
{
    if (attacker) {
        slot = document.simForm.aslot.value - 1;
        document.getElementById ( "a"+slot+"_" + id ).value = document.getElementById ( "a_" + id ).value;
    }
    else {
        slot = document.simForm.dslot.value - 1;
        document.getElementById ( "d"+slot+"_" + id ).value = document.getElementById ( "d_" + id ).value;
    }

    RecalcAttackersDefendersNum ();
}

RecalcAttackersDefendersNum ();

</script>

<?php 
    echo AdminPanel();
    ?>

<table cellpadding=0 cellspacing=0>
<form name="simForm" action="index.php?page=admin&session=<?php 
    echo $session;
    ?>
&mode=BattleSim" method="POST" >

<?php 
    for ($n = 0; $n < $maxslot; $n++) {
        foreach ($fleetmap as $i => $gid) {
            echo "<input type=\"hidden\" id=\"a" . $n . "_{$gid}\" name=\"a" . $n . "_{$gid}\" value=\"0\"> \n";
        }
        foreach ($fleetmap as $i => $gid) {
            echo "<input type=\"hidden\" id=\"d" . $n . "_{$gid}\" name=\"d" . $n . "_{$gid}\" value=\"0\"> \n";
        }
        foreach ($defmap as $i => $gid) {
            echo "<input type=\"hidden\" id=\"d" . $n . "_{$gid}\" name=\"d" . $n . "_{$gid}\" value=\"0\"> \n";
        }
        echo "<input type=\"hidden\" id=\"a" . $n . "_weap\" name=\"a" . $n . "_weap\" size=2 > <input type=\"hidden\" id=\"a" . $n . "_shld\" name=\"a" . $n . "_shld\" size=2 > <input type=\"hidden\" id=\"a" . $n . "_armor\" name=\"a" . $n . "_armor\" size=2 > \n";
        echo "<input type=\"hidden\" id=\"d" . $n . "_weap\" name=\"d" . $n . "_weap\" size=2 > <input type=\"hidden\" id=\"d" . $n . "_shld\" name=\"d" . $n . "_shld\" size=2 > <input type=\"hidden\" id=\"d" . $n . "_armor\" name=\"d" . $n . "_armor\" size=2 > \n";
    }
    ?>

<input type="hidden" id="anum" name="anum" value="1" />
<input type="hidden" id="anum" name="dnum" value="1" />

<tr>        <td class=c>Атакующий</td>                <td class=c>Оборояющийся</td>  </tr>

<tr> 
<td> Вооружение: <input id="a_weap" size=2 > Щиты: <input id="a_shld" size=2 > Броня: <input id="a_armor" size=2 ></td>   
<td> Вооружение: <input id="d_weap" size=2 > Щиты: <input id="d_shld" size=2 > Броня: <input id="d_armor" size=2 ></td>   
</tr>

        <tr> <th valign=top>
        <table>
<?php 
    echo "<tr><td class=c><b>Флот</b></td> ";
    if ($maxslot > 0) {
        echo "<td>Слот: <select name=\"aslot\" onchange=\"OnChangeSlot(1);\">\n";
        for ($n = 1; $n <= $maxslot; $n++) {
            echo "<option value=\"{$n}\">{$n}</option>\n";
        }
        echo "</select> </td> ";
    }
    echo " </tr>\n";
    foreach ($fleetmap as $i => $gid) {
        ?>
           <tr><td> <?php 
        echo loca("NAME_{$gid}");
        ?>
 </td> <td> <input id="a_<?php 
        echo $gid;
        ?>
" size=5  onKeyUp="OnChangeValue(1, <?php 
        echo $gid;
        ?>
);"> </td> </tr>
<?php 
    }
    ?>

<tr><td colspan=2> 
<table>
<tr><td class=c colspan=2>Настройки</td></tr>
<tr><td>Отладочная информация</td><td><input type="checkbox" name="debug" <? if($debug) echo "checked"; ?> ></td></tr>
<tr><td>Скорострел</td><td><input type="checkbox" name="rapid" <? if($rf) echo "checked"; ?> ></td></tr>
<tr><td>Флот в обломки</td><td><input name="fid" size=3 value="<?php 
    echo $fid;
    ?>
"> </td></tr>
<tr><td>Оборона в обломки</td><td><input name="did" size=3 value="<?php 
    echo $did;
    ?>
"></td></tr>
</table>
</td></tr>

        </table>
        </th>

        <th valign=top>
        <table>
<?php 
    echo "<tr><td class=c><b>Флот</b></td>";
    if ($maxslot > 0) {
        echo "<td>Слот: <select name=\"dslot\" onchange=\"OnChangeSlot(0);\">\n";
        for ($n = 1; $n <= $maxslot; $n++) {
            echo "<option value=\"{$n}\">{$n}</option>\n";
        }
        echo "</select> </td> ";
    }
    echo "</tr>\n";
    foreach ($fleetmap as $i => $gid) {
        ?>
           <tr><td> <?php 
        echo loca("NAME_{$gid}");
        ?>
 </td> <td> <input id="d_<?php 
        echo $gid;
        ?>
" size=5 onKeyUp="OnChangeValue(0, <?php 
        echo $gid;
        ?>
);"> </td> </tr>
<?php 
    }
    echo "<tr><td class=c><b>Оборона</b></td></tr>\n";
    foreach ($defmap as $i => $gid) {
        ?>
           <tr><td> <?php 
        echo loca("NAME_{$gid}");
        ?>
 </td> <td> <input id="d_<?php 
        echo $gid;
        ?>
" size=5 onKeyUp="OnChangeValue(0, <?php 
        echo $gid;
        ?>
);"> </td> </tr>
<?php 
    }
    ?>
        </table>
        </th></tr>

<tr><td colspan=2><center><input type="submit" value="Начать бой"></center></td></tr>
</form>
</table>

<?php 
    if ($BattleReport !== "") {
        $a_result = array(0 => "combatreport_ididattack_iwon", 1 => "combatreport_ididattack_ilost", 2 => "combatreport_ididattack_draw");
        $bericht = SendMessage($GlobalUser['player_id'], "Командование флотом", "Боевой доклад", $BattleReport, 6);
        MarkMessage($GlobalUser['player_id'], $bericht);
        $subj = "<a href=\"#\" onclick=\"fenster('index.php?page=bericht&session={$session}&bericht={$bericht}', 'Bericht_Kampf');\" ><span class=\"" . $a_result[$battle_result] . "\">Боевой доклад [" . $d[0]['g'] . ":" . $d[0]['s'] . ":" . $d[0]['p'] . "] (V:" . nicenum($dloss) . ",A:" . nicenum($aloss) . ")</span></a>";
        echo "{$subj}<br>";
    }
    ?>

<?php 
}
Esempio n. 13
0
function InvalidSessionPage()
{
    global $GlobalUser;
    $unitab = LoadUniverse();
    $uni = $unitab['num'];
    $error = array(null, $GlobalUser['player_id'], $_SERVER['REMOTE_ADDR'], $_SERVER['HTTP_USER_AGENT'], $_SERVER['REQUEST_URI'], 'Сессия недействительна.', time());
    $id = AddDBRow($error, 'errors');
    echo "<html> <head>\n";
    echo "  <link rel='stylesheet' type='text/css' href='css/default.css' />\n";
    echo "  <link rel='stylesheet' type='text/css' href='css/formate.css' />\n";
    echo "  <meta http-equiv='content-type' content='text/html; charset=UTF-8' />\n";
    echo "  <title>Вселенная {$uni} ОГейм</title>\n";
    echo " </head>\n";
    echo " <body>\n";
    echo "  <center><font size='3'><b>    <br /><br />\n";
    echo "    <font color='#FF0000'>Произошла ошибка</font>\n";
    echo "    <br /><br />\n";
    echo "    Сессия недействительна.<br/><br/>Это может быть вызвано несколькими причинами: \n";
    echo "<br>- Вы несколько раз зашли в один и тот же аккаунт; \n";
    echo "<br>- Ваш ай-пи адрес изменился с момента последнего входа; \n";
    echo "<br>- Вы пользуетесь интернетом через AOL или прокси. Отключите проверку ай-пи в меню \"Настройки\" в Вашем аккаунте.    \n";
    echo "    <br /><br />\n";
    echo "    Error-ID: " . $id . "  </b></font></center> </body></html>\n";
}