Example #1
0
    } else {
        if ($blt == 9) {
            $game->out('
			<tr>
				<td ' . $style . '>
					' . overlib($BUILDING_NAME[$game->player['user_race']][12], $BUILDING_DESCRIPTION[$game->player['user_race']][12]) . '
				</td>
				<td align=center ' . $style . '>
					<b>(' . $game->planet['building_13'] . ')</b>
				</td>
			</tr>');
        } else {
            $game->out('
			<tr>
				<td ' . $style . '>
					' . overlib($BUILDING_NAME[$game->player['user_race']][$blt - 1], $BUILDING_DESCRIPTION[$game->player['user_race']][$blt - 1]) . '
				</td>
				<td align=center ' . $style . '>
					<b>(' . $game->planet['building_' . $blt . ''] . ')</b>
				</td>
			</tr>');
        }
    }
}
$game->out('</table></fieldset>');
$game->out('<fieldset><legend><span class="sub_caption2">' . constant($game->sprache("TEXT51")) . ':</span></legend>
<table border=0 width=210>');
for ($t = 0; $t < 6; $t++) {
    $style = $t < 5 ? 'style="border-bottom-color:A0A0A0; border-bottom-style:dotted; border-bottom-width:1px"' : '';
    $game->out('
		<tr>
         $sql = 'SELECT timestamp FROM starsystems_details sd INNER JOIN planets p USING ( system_id )
                 WHERE p.planet_id = ' . $fleet['dest'] . ' AND sd.user_id = ' . $game->player['user_id'];
         if (($_temp = $db->queryrow($sql)) == true && !empty($_temp['timestamp'])) {
             $system_known = true;
         }
     }
     if ($system_known) {
         $dest_name = addslashes($fleet['dest_planet_name']);
         $dest_owner = !empty($fleet['dest_owner_id']) ? constant($game->sprache("TEXT72")) . ' <b>' . $fleet['dest_owner_name'] . '</b>' : constant($game->sprache("TEXT73"));
         $dest_class = strtoupper($fleet['dest_planet_type']);
     } else {
         $dest_name = '&#171;' . constant($game->sprache("TEXT56")) . '&#187;';
         $dest_owner = constant($game->sprache("TEXT72")) . ' <b>&#171;' . constant($game->sprache("TEXT56")) . '&#187;</b>';
         $dest_class = '&#171;' . constant($game->sprache("TEXT77")) . '&#187;';
     }
     $dest_planet_str = overlib($game->get_sector_name($fleet['dest_sector_id']) . ':' . $game->get_system_cname($fleet['dest_system_x'], $fleet['dest_system_y']) . ':' . ($fleet['dest_distance_id'] + 1), '<b>' . $dest_name . '</b><br>' . $dest_owner . '<br>' . constant($game->sprache("TEXT74")) . ' <b>' . $dest_class . '</b>', parse_link('a=tactical_cartography&planet_id=' . encode_planet_id($fleet['dest'])));
     $ticks_left = $fleet['move_finish'] - $ACTUAL_TICK;
     if ($ticks_left < 0) {
         $ticks_left = 0;
     }
     $location_str = $start_planet_str . ' -> ' . $dest_planet_str . ' (' . ($i < 10 ? '<b id="timer' . $i . '" title="time1_' . ($ticks_left * TICK_DURATION * 60 + $NEXT_TICK) . '_type2_2">&nbsp;</b>' : '<b>' . format_time($ticks_left * TICK_DURATION) . '</b>') . ')';
     ++$i;
 } else {
     $sql = 'UPDATE ship_fleets
             SET planet_id = ' . $game->player['user_capital'] . ',
                 move_id = 0
             WHERE fleet_id = ' . $fleet['fleet_id'];
     if (!$db->query($sql)) {
         message(DATABASE_ERROR, 'Could not update fleets location data');
     }
     $INVALID_FLEET_POSITION = true;
Example #3
0
    function load_active_planet()
    {
        global $db;
        if ($this->player['user_auth_level'] == STGC_BOT) {
            $this->planet = array('planet_id' => 99999, 'planet_name' => $game->player['user_name'] . '&acute;s Home', 'system_id' => 99999, 'system_name' => 'Bot-Land', 'system_x' => -1, 'system_y' => -1, 'system_global_x' => -1, 'system_global_y' => -1, 'sector_id' => 999, 'planet_type' => 'x', 'planet_owner' => $game->player['user_id'], 'planet_owned_date' => 0, 'planet_distance_id' => -1, 'planet_distance_px' => -1, 'planet_covered_distance' => 0, 'planet_current_x' => -1, 'planet_current_y' => -1, 'planet_points' => 99999, 'planet_thumb' => '', 'research_1' => 999, 'research_2' => 999, 'research_3' => 999, 'research_4' => 999, 'research_5' => 999, 'resource_1' => -1, 'resource_2' => -1, 'resource_3' => -1, 'resource_4' => -1, 'add_1' => -1, 'add_2' => -1, 'add_3' => -1, 'add_4' => -1, 'recompute_static' => 0, 'max_resources' => -1, 'max_worker' => -1, 'max_units' => -1, 'building_1' => 999, 'building_2' => 999, 'building_3' => 999, 'building_4' => 999, 'building_5' => 999, 'building_6' => 999, 'building_7' => 999, 'building_8' => 999, 'building_9' => 999, 'building_10' => 999, 'building_11' => 999, 'building_12' => 999, 'unit_1' => -1, 'unit_2' => -1, 'unit_3' => -1, 'unit_4' => -1, 'unit_5' => -1, 'unit_6' => -1, 'workermine_1' => 0, 'workermine_2' => 0, 'workermine_3' => 0, 'catresearch_1' => 0, 'catresearch_2' => 0, 'catresearch_3' => 0, 'catresearch_4' => 0, 'catresearch_5' => 0, 'catresearch_6' => 0, 'catresearch_7' => 0, 'catresearch_8' => 0, 'catresearch_9' => 0, 'catresearch_10' => 0, 'unittrainid_1' => -1, 'unittrainid_2' => -1, 'unittrainid_3' => -1, 'unittrainid_4' => -1, 'unittrainid_5' => -1, 'unittrainid_6' => -1, 'unittrainid_7' => -1, 'unittrainid_8' => -1, 'unittrainid_9' => -1, 'unittrainid_10' => -1, 'unittrain_actual' => -1, 'unittrainid_nexttime' => -1);
        }
        $order[0] = ' planet_name ASC';
        $order[1] = ' planet_points DESC';
        $order[2] = ' planet_owned_date ASC';
        $order[3] = ' sector_id ASC, system_id ASC';
        $order[4] = ' ((unit_1*2+unit_2*3+unit_3*4+unit_4*4)/min_security_troops) ASC';
        $order[5] = ' planet_type ASC';
        $order[6] = ' planet_altname ASC';
        $sql = 'SELECT planet_id, planet_name, planet_owner
		        FROM planets
		        WHERE planet_owner = ' . $this->player['user_id'] . ' ORDER BY ' . $order[$this->option_retr('planetlist_order')];
        unset($this->player['planets']);
        if (!($q_planets = $db->query($sql))) {
            message(DATABASE_ERROR, 'Could not query users planet data');
        }
        while ($_planet = $db->fetchrow($q_planets)) {
            $this->player['planets'][] = $_planet;
        }
        if (empty($this->player['planets'])) {
            // User cannot choose quadrant
            if (USER_CHOOSE_QUADRANT == 0) {
                // Random quadrant and no type selection
                $this->set_planet(0, '');
                message(GENERAL, constant($this->sprache("NEWPLANET1")) . ' <i>' . $this->player['user_name'] . '</i> ' . constant($this->sprache("NEWPLANET2")));
            } else {
                global $RACE_DATA;
                $race = $RACE_DATA[$this->player['user_race']][0];
                // Count players of player's race on each quadrant
                $tips = array();
                for ($quad = 1; $quad < 5; $quad++) {
                    $text = '';
                    for ($race = 0; $race < 13; $race++) {
                        // Skip Borg, Q and 29th Humans races
                        if ($race == 6 || $race == 7 || $race == 12) {
                            continue;
                        }
                        $sql = 'SELECT user_id FROM planets, user
						        WHERE planet_owner = user_id AND
						              user_race=' . $race . ' AND
						              user_auth_level < ' . STGC_DEVELOPER . ' AND
						              CEIL(sector_id / 81) = ' . $quad . '
						              GROUP BY user_id';
                        if (!($q_players = $db->query($sql))) {
                            message(DATABASE_ERROR, 'Could not query users data');
                        }
                        $players = 0;
                        while ($_player = $db->fetchrow($q_players)) {
                            $players++;
                        }
                        $text .= $RACE_DATA[$race][0] . ': ' . $players . '<br>';
                    }
                    $tips[$quad] = overlib(constant($this->sprache("NUM_PLAYERS")), $text);
                }
                echo '
				<html>
				<head>
				<title>Frontline Combat :: Choosing Quadrant</title>
				<style type="text/css">
				<!--
				a:link    { font-family: Arial,serif; font-size: 10px; text-decoration: none; color: #CCCCCC; }
				a:visited { font-family: Arial,serif; font-size: 10px; text-decoration: none; color: #CCCCCC; }
				a:hover   { font-family: Arial,serif; font-size: 10px; text-decoration: none; color: #FFFFFF; }
				a:active  { font-family: Arial,serif; font-size: 10px; text-decoration: none; color: #CCCCCC; }

				td { font-family: Arial,serif; font-size: 12px; color: #FFFFFF; }

				input.button, input.button_nosize, input.field, input.field_nosize, textarea, select
				{ color: #959595; font-family: Verdana; font-size: 10px; background-color: #000000; border: 1px solid #959595; }

				//-->
				</style>

				<script type="text/javascript" language="JavaScript" src="' . $this->player['user_jspath'] . 'overlib.js"></script>

				</head>

				<body bgcolor="#000000" background="../gfx/template_bg.jpg">
				<div id="overDiv" style="Z-INDEX: 1000; VISIBILITY: hidden; POSITION: absolute"></div>
				<table bgcolor="#000025" width="500" align="center" cellspacing="4" cellpadding="4" style="border: 1px solid #C0C0C0;">
				<tr>
					<td><span style="font-size: 14px; font-weight: bold;">Frontline Combat :: System-Announcement</span></td>
				</tr>
				</table>
				<table bgcolor="#000025" width="500" align="center" cellspacing="4" cellpadding="4" style="border-left: 1px solid #C0C0C0; border-bottom: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;">
				<tr>
					<td>' . constant($this->sprache("NEWPLANET1")) . ' <i>' . $this->player['user_name'] . '</i>.<br>
					' . constant($this->sprache("NEWPLANET3")) . '<br><br>
					<form action="index.php" method="POST">
					<table>
					<tr>
						<td>' . constant($this->sprache("TCLASS")) . '</td>
						<td>&nbsp;</td>
						<td><input type="radio" name="type" value="m" checked> M</td>
					</tr>
					<tr>
						<td></td>
						<td>&nbsp;</td>
						<td><input type="radio" name="type" value="o"> O</td>
					</tr>
					</table><br>
					<table>
					<tr><td>' . constant($this->sprache("STARTPOINT")) . '</td><td>&nbsp;</td><td><input type="radio" name="quadrant" value="0" checked> ' . constant($this->sprache("RANDOM")) . '</td></tr>
					<tr><td>&nbsp;</td><td>&nbsp;</td><td><input type="radio" name="quadrant" value="1"> ' . constant($this->sprache("GAMMAQ")) . '</td><td>' . $tips[1] . '</td></tr>
					<tr><td>&nbsp;</td><td>&nbsp;</td><td><input type="radio" name="quadrant" value="2"> ' . constant($this->sprache("DELTAQ")) . '</td><td>' . $tips[2] . '</td></tr>
					<tr><td>&nbsp;</td><td>&nbsp;</td><td><input type="radio" name="quadrant" value="3"> ' . constant($this->sprache("ALPHAQ")) . '</td><td>' . $tips[3] . '</td></tr>
					<tr><td>&nbsp;</td><td>&nbsp;</td><td><input type="radio" name="quadrant" value="4"> ' . constant($this->sprache("BETAQ")) . '</td><td>' . $tips[4] . '</td></tr>
					</table>
					<br><center>
					<input type="submit" name="set_planet" value="' . constant($this->sprache("COLONIZE")) . '" class="button">
					</center>
					</form></td>
				</tr>
				</table>
				</body>
				</html>
				';
                exit;
            }
        }
        $sql = 'SELECT planets.*,
		               starsystems.system_name, starsystems.system_x, starsystems.system_y, starsystems.system_global_x, starsystems.system_global_y
		        FROM planets, starsystems
		        WHERE planets.planet_id = ' . $this->player['active_planet'] . ' AND
		              starsystems.system_id = planets.system_id';
        if (($active_planet = $db->queryrow($sql)) === false) {
            message(DATABASE_ERROR, 'Could not query active planet data');
        }
        if (empty($active_planet) || $active_planet['planet_owner'] != $this->player['user_id']) {
            $sql = 'SELECT planets.*,
			               starsystems.system_name, starsystems.system_x, starsystems.system_y, starsystems.system_global_x, starsystems.system_global_y
			        FROM planets, starsystems
			        WHERE planets.planet_owner = ' . $this->player['user_id'] . ' AND
			              starsystems.system_id = planets.system_id
			        ORDER BY planets.planet_owned_date
			        LIMIT 0, 1';
            if (($active_planet = $db->queryrow($sql)) === false) {
                message(DATABASE_ERROR, 'Could not query users first planet data');
            }
            $sql = 'UPDATE user
			        SET active_planet = ' . $active_planet['planet_id'] . '
			        WHERE user_id = ' . $this->player['user_id'];
            if (!$db->query($sql)) {
                message(DATABASE_ERROR, 'Could not update user active data');
            }
        }
        $this->player['user_planets'] = count($this->player['planets']);
        $this->init_planet($active_planet);
    }