Example #1
0
function create_escape_pod($target)
{
    global $db_name, $GAME_VARS, $cw, $st;
    $rand_star = random_system_num();
    //make a random system number up.
    $ship_stats = load_ship_types(2);
    //load ship data for EP (class = 2)
    dbn("insert into {$db_name}_ships (ship_name, login_id, shipclass, class_name, class_name_abbr, fighters, max_fighters, max_shields, armour, max_armour, cargo_bays, mine_rate_metal, mine_rate_fuel, move_turn_cost, location, config,clan_id) values ('Escape Pod', '{$target['login_id']}', '2', '{$ship_stats['name']}', '{$ship_stats['class_abbr']}', '{$ship_stats['fighters']}', '{$ship_stats['max_fighters']}', '{$ship_stats['max_shields']}', '{$ship_stats['max_armour']}', '{$ship_stats['max_armour']}', '{$ship_stats['cargo_bays']}', '{$ship_stats['mine_rate_metal']}', '{$ship_stats['mine_rate_fuel']}', '{$ship_stats['move_turn_cost']}', '{$rand_star}', '{$ship_stats['config']}', '{$target['clan_id']}')");
    $ship_id = mysql_insert_id();
    //get users explored state.
    if (!isset($target['explored_sys']) && $GAME_VARS['uv_explored'] == 0) {
        db2("select explored_sys from {$db_name}_users where login_id = '{$target['login_id']}'");
        $temp_exp_1 = dbr2(1);
        $target['explored_sys'] = $temp_exp_1['explored_sys'];
        unset($temp_exp_1);
        explore_sys($target, $rand_star);
        scramble_explored($target);
    }
    dbn("update {$db_name}_users set ship_id ='{$ship_id}' where login_id = '{$target['login_id']}'");
    $target['location'] = $rand_star;
    $target['ship_id'] = $ship_id;
    return $target;
}
function black_hole($user, $star)
{
    global $db_name, $user_ship;
    $bh_text = "Attention ! Attention ! Un trou noir a été détecté dans le systéme <b{$star['star_id']}</b>.<br />Vous manquez de peu d'être aspiré dedans mais vous parvenez à vous échapper au dernier moment. Vous prenez la fuite mais votre flotte à été dispersée dans la galaxie !";
    db("select count(star_id) from {$db_name}_stars");
    $total1 = dbr();
    $total = $total1[0];
    if ($user_ship['ship_id']) {
        $n_text = "";
        db2("select ship_id,shields,fighters,ship_name from {$db_name}_ships where fleet_id = '{$user_ship['fleet_id']}' and location = '{$user_ship['location']}' && login_id = '{$user['login_id']}'");
        while ($tow_ship = dbr2()) {
            $rand_star = random_system_num();
            dbn("update {$db_name}_ships set location = '{$rand_star}', mine_mode=0 where ship_id = {$tow_ship['ship_id']}");
            $totaldefs = $tow_ship['shields'] + $tow_ship['fighters'];
            if ($totaldefs > 9) {
                $damtodo = round($totaldefs / 100 * 5);
                $damtodo2 = $damtodo;
                $shield_damage = $damtodo;
                if ($shield_damage > $tow_ship['shields']) {
                    $shield_damage = $tow_ship['shields'];
                }
                $damtodo -= $shield_damage;
                dbn("update {$db_name}_ships set fighters = fighters - {$damtodo}, shields = shields - {$shield_damage} where ship_id = '{$tow_ship['ship_id']}'");
                $n_text .= "<br />The <b class=b1>{$tow_ship['ship_name']}</b> took <b>{$damtodo2}</b> damage and was thrown to system #<b>{$rand_star}</b>.";
            }
        }
        $rand_star = mt_rand(2, $total);
        if ($star['star_id'] == $rand_star) {
            if ($rand_star != $total) {
                $rand_star++;
            } else {
                $rand_star = $rand_star - 1;
            }
        }
        dbn("update {$db_name}_ships set location = {$rand_star}, mine_mode=0 where ship_id = {$user_ship['ship_id']}");
        $totaldefs = $user_ship['shields'] + $user_ship['fighters'];
        if ($totaldefs > 9) {
            $damtodo = round($totaldefs / 100 * 5);
            $damtodo2 = $damtodo;
            $shield_damage = $damtodo;
            if ($shield_damage > $user_ship['shields']) {
                $shield_damage = $user_ship['shields'];
            }
            $damtodo -= $shield_damage;
            dbn("update {$db_name}_ships set fighters = fighters - {$damtodo}, shields = shields - {$shield_damage} where ship_id = '{$user_ship['ship_id']}'");
            $m_text .= "<p />The <b class=b1>{$user_ship['ship_name']}</b> took <b>{$damtodo2}</b> damage and was thrown to system #<b>{$rand_star}</b>.";
            $user_ship['shields'] -= $shield_damage;
            $user_ship['fighters'] -= $damtodo;
        }
        $bh_text .= $m_text;
        if (!empty($n_text)) {
            $bh_text .= "<p />Reports from the rest of the Fleet Follow:<br />";
            $bh_text .= $n_text;
        }
        $tow_ship = $user_ship;
        dbn("update {$db_name}_users set location = {$rand_star} where login_id = '{$user['login_id']}'");
        dbn("update {$db_name}_ships set location = {$rand_star} where ship_id = '{$user['ship_id']}'");
    }
    post_news("Mayday, Mayday. Ici le capitaine <b class=b1>{$user['login_name']}</b>. Nous avons rencontré un trou noir...... *crackle* ..... besoin d'aide.... *static*", "random_event, ship");
    print_page("Location", $bh_text);
}