Ejemplo n.º 1
0
function vessel_show_table_row($vessel_id, $href_url, $show_species = "NO")
{
    assert(is_numeric($vessel_id));
    assert(!empty($href_url));
    global $_GALAXY;
    global $_CONFIG;
    // Get information
    $vessel = vessel_get_vessel($vessel_id);
    $vesseltype = vessel_get_vesseltype($vessel_id);
    $planet = anomaly_get_anomaly($vessel['planet_id']);
    $race = user_get_race($vessel['user_id']);
    $img = "explore.jpg";
    $type = "Unknown Type";
    if ($vesseltype['type'] == VESSEL_TYPE_EXPLORE) {
        $img = "explore.jpg";
        $type = $vesseltype['name'];
    }
    if ($vesseltype['type'] == VESSEL_TYPE_TRADE) {
        $img = "trade.jpg";
        $type = $vesseltype['name'];
    }
    if ($vesseltype['type'] == VESSEL_TYPE_BATTLE) {
        $img = "battle.jpg";
        $type = $vesseltype['name'];
    }
    $tmp['image'] = $_CONFIG['IMAGE_URL'] . $_GALAXY['image_dir'] . "/ships/" . $img;
    $tmp['href'] = $href_url . "?cmd=" . encrypt_get_vars("showvid") . "&vid=" . encrypt_get_vars($vessel['id']);
    $tmp['name'] = $vessel['name'];
    $tmp['type'] = $type;
    $tmp['status'] = vessel_get_current_status($vessel_id, true);
    $tmp['status_nohref'] = vessel_get_current_status($vessel_id, false);
    $tmp['distance'] = $vessel['distance'];
    $tmp['angle'] = $vessel['angle'];
    $tmp['race'] = $race;
    return $tmp;
}
Ejemplo n.º 2
0
function choose_vessel($user_id)
{
    global $_GALAXY;
    echo "<table align=center border=1>";
    echo "<tr><th>Name</th><th>Impulse</th><th>Warp</th><th>Status</th></tr>";
    $result = sql_query("SELECT g.* FROM g_vessels AS g, s_vessels AS s WHERE g.user_id=" . $user_id . " AND g.created=1 AND g.vessel_id = s.id ORDER BY s.type, g.id");
    while ($vessel = sql_fetchrow($result)) {
        // We can only upgrade if we are near a vessel station.
        if ($vessel['status'] != "ORBIT") {
            $nocando = 1;
        } else {
            // Check if we have a spacedock or vessel construction station
            $surface = planet_get_surface($vessel['planet_id']);
            $buildings = csl($surface['csl_building_id']);
            $vesseltype = vessel_get_vesseltype($vessel['id']);
            $nocando = 0;
            if ($vesseltype['type'] == VESSEL_TYPE_BATTLE and !in_array(BUILDING_VESSEL_STATION, $buildings)) {
                $nocando = 1;
            }
            if ($vesseltype['type'] != VESSEL_TYPE_BATTLE and !in_array(BUILDING_SPACEDOCK, $buildings)) {
                $nocando = 1;
            }
        }
        if ($nocando == 0) {
            $status = "Nearby a vessel or docking station";
            $upgrade = 1;
        } else {
            $status = "Not in the vicinity of a vessel station";
            $upgrade = 0;
        }
        echo "<tr>";
        if ($upgrade == 1) {
            echo "<td>&nbsp;<img alt=Active src=" . $_CONFIG['URL'] . $_GALAXY['image_dir'] . "/general/active.gif>&nbsp;<a href=vesselupgrade.php?vid=" . encrypt_get_vars($vessel['id']) . ">" . $vessel['name'] . "</a>&nbsp;</td>";
        } else {
            echo "<td>&nbsp;<img alt=Inactive src=" . $_CONFIG['URL'] . $_GALAXY['image_dir'] . "/general/inactive.gif>&nbsp;" . $vessel['name'] . "</a>&nbsp;</td>";
        }
        echo "<td>&nbsp;Impulse: " . $vessel['impulse'] . "% &nbsp;</td>";
        echo "<td>&nbsp;Warp: ";
        printf("%.1f", $vessel['warp'] / 10);
        echo "&nbsp;</td>";
        echo "<td>&nbsp;{$status}&nbsp;</td>";
        echo "</tr>";
    }
    echo "</table>";
}
Ejemplo n.º 3
0
function vessel_show_vessel_details($vessel_id)
{
    assert(is_numeric($vessel_id));
    global $_GALAXY;
    $vessel = vessel_get_vessel($vessel_id);
    $vesseltype = vessel_get_vesseltype($vessel_id);
    $status = vessel_get_current_status($vessel_id, "VESSEL_GETSTATUS_SHOW_HYPERLINKS");
    print_image($_CONFIG['URL'] . $_CONFIG['URL'] . $_GALAXY['image_dir'] . "/vessels/" . $vesseltype['image'] . ".jpg");
    echo "<table align=center border=0>";
    echo "<tr class=wb><th colspan=2>Global Information</th></tr>";
    echo "<tr class=bl><td>&nbsp;Name&nbsp;</td>";
    echo "<td>" . $vessel['name'] . "</td></tr>";
    echo "<tr class=bl><td>&nbsp;Impulse / Max&nbsp;</td>";
    echo "<td>" . $vessel['impulse'] . " / " . $vesseltype['max_impulse'] . "</td></tr>";
    echo "<tr class=bl><td>&nbsp;Warp / Max&nbsp;</td>";
    echo "<td>" . number_format($vessel['warp'] / 10, 1) . " / " . number_format($vesseltype['max_warp'] / 10, 1) . "</td></tr>";
    echo "<tr class=bl><td>&nbsp;Status&nbsp;</td>";
    echo "<td>" . $status . "</td></tr>";
    echo "<tr class=bl><td>&nbsp;Location&nbsp;</td>";
    echo "<td>" . $vessel['distance'] . "/" . $vessel['angle'] . "</td></tr>";
    list($extra_attack, $extra_defense) = vessel_calc_extra_attack_and_defense_points($vessel_id);
    echo "<tr class=bl><td>&nbsp;A / D / S&nbsp;</td>";
    echo "<td>" . $vessel['cur_attack'] . "<sup>(+" . $extra_attack . ")</sup> / " . $vessel['cur_defense'] . "<sup>(+" . $extra_defense . ")</sup> / " . $vessel['cur_strength'] . " (" . $vessel['max_strength'] . ")</td></tr>";
    echo "</table>";
    //  echo "</td></tr>";
    //  echo "</table>";
    echo "<br><br>";
}
Ejemplo n.º 4
0
function vessel_select_automatic($vessel_id)
{
    assert(is_numeric($vessel_id));
    $vessel = vessel_get_vessel($vessel_id);
    $vesseltype = vessel_get_vesseltype($vessel_id);
    // Get all sectors that we own
    $result = sql_query("SELECT * FROM g_sectors WHERE user_id=" . $vessel['user_id']);
    $sectors = csl_create_array($result, "csl_sector_id");
    //  if ($vessel['sector_id'] == 0) {
    //    $src_sector['distance'] = $vessel['distance'];
    //    $src_sector['angle'] = $vessel['angle'];
    //  } else {
    //    $result = sql_query ("SELECT * FROM s_sectors WHERE id=".$vessel['sector_id']);
    //    $src_sector = sql_fetchrow ($result);
    //  }
    form_start();
    echo "<table align=center>";
    echo "  <tr><th>Select destination</th></tr>";
    echo "  <tr><td>";
    echo "    <select name=did>";
    echo "      <option value=" . encrypt_get_vars(0) . ">Hold at current position</option>";
    // Only show unknown planets when the vesseltype is exploration
    $ut = 'N';
    if ($vesseltype['type'] == VESSEL_TYPE_EXPLORE) {
        $ut = 'Y';
    }
    // First, show the planets of the current sector, if applicable
    if ($vessel['sector_id'] != 0) {
        show_sector($vessel_id, $ut);
    }
    // Create a hash with all sectors
    $i = 0;
    foreach ($sectors as $sector_id) {
        if ($sector_id != $vessel['sector_id']) {
            if ($vessel['warp'] != 0) {
                $sector = sector_get_sector($sector_id);
                $ticks = calc_sector_ticks($sector['distance'], $sector['angle'], $vessel['distance'], $vessel['angle'], $vessel['warp']);
                if ($ticks == 0) {
                    $ticks = 1;
                }
                $options[$i]['ticks'] = $ticks;
                $options[$i]['str'] = "<option value=" . encrypt_get_vars("S" . $sector['id']) . ">" . $sector['name'] . " ({$ticks} ticks)</option>";
            }
        }
        $i++;
    }
    // Sort the hash on ticks, and print it accordingly
    uasort($options, "vessel_move_cmp");
    foreach ($options as $line) {
        echo $line['str'];
    }
    echo "    </select>";
    echo "  </td></tr>";
    echo "  <tr align=center><td><input type=submit name=submit value='Fly to destination'></td></tr>";
    echo "</table>";
    echo "<input type=hidden name=vid value=" . encrypt_get_vars($vessel_id) . ">";
    echo "<input type=hidden name=cmd value=" . encrypt_get_vars("goauto") . ">";
    form_end();
    echo "<br>";
}