コード例 #1
0
ファイル: self_destruct.php プロジェクト: thekabal/tki
$stmt->bindParam(':email', $_SESSION['username']);
$stmt->execute();
$playerinfo = $stmt->fetch(PDO::FETCH_ASSOC);
if (array_key_exists('sure', $_GET)) {
    $sure = $_GET['sure'];
}
if (!isset($sure)) {
    echo "<font color=red><strong>" . $langvars['l_die_rusure'] . "</strong></font><br><br>";
    echo "Please Note: You will loose all your Planets if you Self-Destruct!.<br>\n";
    echo "<a href='main.php'>" . $langvars['l_die_nonono'] . "</a> " . $langvars['l_die_what'] . "<br><br>";
    echo "<a href=self_destruct.php?sure=1>" . $langvars['l_yes'] . "!</a> " . $langvars['l_die_goodbye'] . "<br><br>";
} elseif ($sure == 1) {
    echo "<font color=red><strong>" . $langvars['l_die_check'] . "</strong></font><br><br>";
    echo "Please Note: You will loose all your Planets if you Self-Destruct!.<br>\n";
    echo "<a href='main.php'>" . $langvars['l_die_nonono'] . "</a> " . $langvars['l_die_what'] . "<br><br>";
    echo "<a href=self_destruct.php?sure=2>" . $langvars['l_yes'] . "!</a> " . $langvars['l_die_goodbye'] . "<br><br>";
} elseif ($sure == 2) {
    echo $langvars['l_die_count'] . "<br>";
    echo $langvars['l_die_vapor'] . "<br><br>";
    $langvars['l_die_please'] = str_replace("[logout]", "<a href='logout.php'>" . $langvars['l_logout'] . "</a>", $langvars['l_die_please']);
    echo $langvars['l_die_please'] . "<br>";
    Tki\Character::kill($pdo_db, $playerinfo['ship_id'], $langvars, $tkireg, true);
    Tki\Bounty::cancel($pdo_db, $playerinfo['ship_id']);
    Tki\AdminLog::writeLog($pdo_db, LOG_ADMIN_HARAKIRI, "{$playerinfo['character_name']}|" . $request->server->get('REMOTE_ADDR') . "");
    Tki\PlayerLog::WriteLog($pdo_db, $playerinfo['ship_id'], LOG_HARAKIRI, $request->server->get('REMOTE_ADDR'));
    echo "Due to nobody looking after your Planets, all your Planets have reduced into dust and ruble. Your Planets are no more.<br>\n";
} else {
    echo $langvars['l_die_exploit'] . "<br><br>";
}
Tki\Text::gotomain($pdo_db, $lang);
Tki\Footer::display($pdo_db, $lang, $tkireg, $template);
コード例 #2
0
ファイル: check_mines.php プロジェクト: thekabal/tki
 } else {
     // Direct hit
     echo $langvars['l_chm_youlostallyourshields'] . "<br>";
     $mines_left = $mines_left - $playershields;
     if ($playerinfo['armor_pts'] >= $mines_left) {
         $langvars['l_chm_yourarmorhitforminesdmg'] = str_replace("[chm_mines_left]", $mines_left, $langvars['l_chm_yourarmorhitforminesdmg']);
         echo $langvars['l_chm_yourarmorhitforminesdmg'] . "<br>";
         $result2 = $db->Execute("UPDATE {$db->prefix}ships SET armor_pts = armor_pts - ?, ship_energy = 0, dev_minedeflector = 0 WHERE ship_id = ?", array($mines_left, $playerinfo['ship_id']));
         Tki\Db::LogDbErrors($pdo_db, $result2, __LINE__, __FILE__);
         if ($playerinfo['armor_pts'] == $mines_left) {
             echo $langvars['l_chm_yourhullisbreached'] . "<br>";
         }
     } else {
         // BOOM
         $pod = $playerinfo['dev_escapepod'];
         Tki\PlayerLog::WriteLog($pdo_db, $playerinfo['ship_id'], LOG_SHIP_DESTROYED_MINES, "{$sector}|{$pod}");
         $langvars['l_chm_hewasdestroyedbyyourmines'] = str_replace("[chm_playerinfo_character_name]", $playerinfo['character_name'], $langvars['l_chm_hewasdestroyedbyyourmines']);
         $langvars['l_chm_hewasdestroyedbyyourmines'] = str_replace("[chm_sector]", $sector, $langvars['l_chm_hewasdestroyedbyyourmines']);
         Tki\SectorDefense::messageDefenseOwner($pdo_db, $sector, $langvars['l_chm_hewasdestroyedbyyourmines']);
         echo $langvars['l_chm_yourshiphasbeendestroyed'] . "<br><br>";
         // Survival
         if ($playerinfo['dev_escapepod'] == "Y") {
             $rating = round($playerinfo['rating'] / 2);
             echo $langvars['l_chm_luckescapepod'] . "<br><br>";
             $resx = $db->Execute("UPDATE {$db->prefix}ships SET hull=0, engines=0, power=0, sensors=0, computer=0, beams=0, torp_launchers=0, torps=0, armor=0, armor_pts=100, cloak=0, shields=0, sector=0, ship_organics=0, ship_ore=0, ship_goods=0, ship_energy=?, ship_colonists=0, ship_fighters=100, dev_warpedit=0, dev_genesis=0, dev_beacon=0, dev_emerwarp=0, dev_escapepod='N', dev_fuelscoop='N', dev_minedeflector=0, on_planet='N', rating=?, cleared_defenses=' ', dev_lssd='N' WHERE ship_id=?", array($tkireg->start_energy, $rating, $playerinfo['ship_id']));
             Tki\Db::LogDbErrors($pdo_db, $resx, __LINE__, __FILE__);
             Tki\Bounty::cancel($pdo_db, $playerinfo['ship_id']);
         } else {
             // Or they lose!
             Tki\Bounty::cancel($pdo_db, $playerinfo['ship_id']);
             Tki\Character::kill($pdo_db, $playerinfo['ship_id'], $langvars, $tkireg, false);
コード例 #3
0
ファイル: teams.php プロジェクト: thekabal/tki
         $teamdesc = trim(htmlentities($teamdesc, ENT_HTML5, 'UTF-8'));
         if (Tki\Team::validateTeam($pdo_db, $teamname, $teamdesc, $playerinfo['ship_id']) === false) {
             echo "<span style='color:#f00;'>Team Edit Failed</span><br>Sorry you have either entered an invalid Team name or Team Description.<br>\n";
             echo "<br><br><a href=\"teams.php\">" . $langvars['l_clickme'] . "</a> " . $langvars['l_team_menu'] . ".<br><br>";
             break;
         }
         $res = $db->Execute("UPDATE {$db->prefix}teams SET team_name = ?, description = ? WHERE id = ?;", array($teamname, $teamdesc, $whichteam));
         Tki\Db::LogDbErrors($pdo_db, $res, __LINE__, __FILE__);
         echo $langvars['l_team_team'] . " <strong>" . $teamname . "</strong> " . $langvars['l_team_hasbeenr'] . "<br><br>";
         // Adding a log entry to all members of the renamed team
         $result_team_name = $db->Execute("SELECT ship_id FROM {$db->prefix}ships WHERE team = ? AND ship_id <> ?;", array($whichteam, $playerinfo['ship_id']));
         Tki\Db::LogDbErrors($pdo_db, $result_team_name, __LINE__, __FILE__);
         Tki\PlayerLog::WriteLog($pdo_db, $playerinfo['ship_id'], LOG_TEAM_RENAME, $teamname);
         while (!$result_team_name->EOF) {
             $teamname_array = $result_team_name->fields;
             Tki\PlayerLog::WriteLog($pdo_db, $teamname_array['ship_id'], LOG_TEAM_M_RENAME, $teamname);
             $result_team_name->MoveNext();
         }
     }
     echo "<br><br><a href=\"teams.php\">" . $langvars['l_clickme'] . "</a> " . $langvars['l_team_menu'] . ".<br><br>";
     break;
 default:
     if ($playerinfo['team'] == 0) {
         echo $langvars['l_team_notmember'];
         Tki\Team::displayInviteInfo($langvars, $playerinfo, $invite_info);
     } else {
         if ($playerinfo['team'] < 0) {
             $playerinfo['team'] = -$playerinfo['team'];
             $result = $db->Execute("SELECT * FROM {$db->prefix}teams WHERE id = ?;", array($playerinfo['team']));
             Tki\Db::LogDbErrors($pdo_db, $result, __LINE__, __FILE__);
             $whichteam = $result->fields;
コード例 #4
0
ファイル: planet.php プロジェクト: thekabal/tki
            if ($ownership !== null) {
                echo "{$ownership}<p>";
            }
            if ($planetinfo['owner'] != 0) {
                Tki\Score::updateScore($pdo_db, $planetinfo['owner'], $tkireg, $playerinfo);
            }
            if ($planetinfo['owner'] != 0) {
                $sql = "SELECT character_name FROM ::prefix::ships WHERE ship_id=:ship_id LIMIT 1";
                $stmt = $pdo_db->prepare($sql);
                $stmt->bindParam(':ship_id', $planetinfo['owner']);
                $stmt->execute();
                $planetowner = $stmt->fetch(PDO::FETCH_ASSOC);
            } else {
                $planetowner = $langvars['l_planet_noone'];
            }
            Tki\PlayerLog::WriteLog($pdo_db, $playerinfo['ship_id'], LOG_PLANET_CAPTURED, "{$planetinfo['colonists']}|{$planetinfo['credits']}|{$planetowner}");
        } elseif ($command == "capture" && ($planetinfo['owner'] == 0 || $planetinfo['defeated'] == 'Y')) {
            echo $langvars['l_planet_notdef'] . "<br>";
            $resx = $db->Execute("UPDATE {$db->prefix}planets SET defeated='N' WHERE planet_id = ?;", array($planetinfo['planet_id']));
            Tki\Db::LogDbErrors($pdo_db, $resx, __LINE__, __FILE__);
        } else {
            echo $langvars['l_command_no'] . "<br>";
        }
    }
} else {
    echo $langvars['l_planet_none'] . "<p>";
}
if ($command !== null) {
    echo "<br><a href=planet.php?planet_id={$planet_id}>" . $langvars['l_clickme'] . "</a> " . $langvars['l_toplanetmenu'] . "<br><br>";
}
if ($tkireg->allow_ibank) {
コード例 #5
0
ファイル: attack.php プロジェクト: thekabal/tki
         Tki\Db::LogDbErrors($pdo_db, $update3, __LINE__, __FILE__);
         $armor_lost = $playerinfo['armor_pts'] - $playerarmor;
         $fighters_lost = $playerinfo['ship_fighters'] - $playerfighters;
         $energy = $playerinfo['ship_energy'];
         $update3b = $db->Execute("UPDATE {$db->prefix}ships SET ship_energy = ?, ship_fighters = ship_fighters - ?, armor_pts = armor_pts - ?, torps = torps - ?, " . "turns = turns - 1, turns_used = turns_used + 1, rating = rating - ? " . "WHERE ship_id = ?;", array($energy, $fighters_lost, $armor_lost, $playertorpnum, $rating_change, $playerinfo['ship_id']));
         Tki\Db::LogDbErrors($pdo_db, $update3b, __LINE__, __FILE__);
         echo $langvars['l_att_ylost'] . " " . $armor_lost . " " . $langvars['l_armorpts'], $fighters_lost . " " . $langvars['l_fighters'], $langvars['l_att_andused'] . " " . $playertorpnum . " " . $langvars['l_torps'] . ".<br>";
     }
 } else {
     $langvars['l_att_stilship'] = str_replace("[name]", $targetinfo['character_name'], $langvars['l_att_stilship']);
     echo $langvars['l_att_stilship'] . "<br>";
     $rating_change = round($targetinfo['rating'] * 0.1);
     $armor_lost = $targetinfo['armor_pts'] - $targetarmor;
     $fighters_lost = $targetinfo['ship_fighters'] - $targetfighters;
     $energy = $targetinfo['ship_energy'];
     Tki\PlayerLog::WriteLog($pdo_db, $targetinfo['ship_id'], LOG_ATTACKED_WIN, "{$playerinfo['character_name']}|{$armor_lost}|{$fighters_lost}");
     $update4 = $db->Execute("UPDATE {$db->prefix}ships SET ship_energy = ?, ship_fighters = ship_fighters - ?, armor_pts = armor_pts - ?, " . "torps = torps - ? WHERE ship_id = ?;", array($energy, $fighters_lost, $armor_lost, $targettorpnum, $targetinfo['ship_id']));
     Tki\Db::LogDbErrors($pdo_db, $update4, __LINE__, __FILE__);
     $armor_lost = $playerinfo['armor_pts'] - $playerarmor;
     $fighters_lost = $playerinfo['ship_fighters'] - $playerfighters;
     $energy = $playerinfo['ship_energy'];
     $update4b = $db->Execute("UPDATE {$db->prefix}ships SET ship_energy = ?, ship_fighters = ship_fighters - ?, armor_pts = armor_pts - ?, torps = torps - ?, " . "turns = turns - 1, turns_used = turns_used + 1, rating = rating - ? " . "WHERE ship_id = ?;", array($energy, $fighters_lost, $armor_lost, $playertorpnum, $rating_change, $playerinfo['ship_id']));
     Tki\Db::LogDbErrors($pdo_db, $update4b, __LINE__, __FILE__);
     echo $langvars['l_att_ylost'] . " " . $armor_lost . " " . $langvars['l_armorpts'], $fighters_lost . " " . $langvars['l_fighters'], $langvars['l_att_andused'] . " " . $playertorpnum . " " . $langvars['l_torps'] . ".<br><br>";
 }
 if ($playerarmor < 1) {
     echo $langvars['l_att_yshiplost'] . "<br><br>";
     if ($playerinfo['dev_escapepod'] == "Y") {
         $rating = round($playerinfo['rating'] / 2);
         echo $langvars['l_att_loosepod'] . "<br><br>";
         $resx = $db->Execute("UPDATE {$db->prefix}ships SET hull = 0, engines = 0, power = 0, sensors = 0, computer = 0, beams = 0, torp_launchers = 0, torps = 0, " . "armor = 0, armor_pts = 100, cloak = 0, shields = 0, sector = 0, ship_organics = 0, ship_ore = 0, ship_goods = 0, ship_energy = ?, " . "ship_colonists = 0, ship_fighters = 100, dev_warpedit = 0, dev_genesis = 0, dev_beacon = 0, dev_emerwarp = 0, dev_escapepod = 'N', " . "dev_fuelscoop = 'N', dev_minedeflector = 0, on_planet = 'N', rating = ?, dev_lssd = 'N' " . "WHERE ship_id = ?", array($tkireg->start_energy, $rating, $playerinfo['ship_id']));
コード例 #6
0
ファイル: sched_tow.php プロジェクト: thekabal/tki
//  You should have received a copy of the GNU Affero General Public License
//  along with this program.  If not, see <http://www.gnu.org/licenses/>.
//
// File: sched_tow.php
echo "<strong>ZONES</strong><br><br>";
echo "Towing bigger players out of restricted zones...";
$num_to_tow = 0;
do {
    $res = $db->Execute("SELECT ship_id,character_name,hull,sector,{$db->prefix}universe.zone_id,max_hull FROM {$db->prefix}ships,{$db->prefix}universe,{$db->prefix}zones WHERE sector=sector_id AND {$db->prefix}universe.zone_id={$db->prefix}zones.zone_id AND max_hull<>0 AND (({$db->prefix}ships.hull + {$db->prefix}ships.engines + {$db->prefix}ships.computer + {$db->prefix}ships.beams + {$db->prefix}ships.torp_launchers + {$db->prefix}ships.shields + {$db->prefix}ships.armor)/7) >max_hull AND ship_destroyed='N'");
    Tki\Db::LogDbErrors($pdo_db, $res, __LINE__, __FILE__);
    if ($res) {
        $num_to_tow = $res->RecordCount();
        echo "<br>{$num_to_tow} players to tow:<br>";
        while (!$res->EOF) {
            $row = $res->fields;
            echo "...towing {$row['character_name']} out of {$row['sector']} ...";
            $newsector = random_int(0, (int) $max_sectors - 1);
            echo " to sector {$newsector}.<br>";
            $query = $db->Execute("UPDATE {$db->prefix}ships SET sector = ?, cleared_defenses=' ' WHERE ship_id=?", array($newsector, $row['ship_id']));
            Tki\Db::LogDbErrors($pdo_db, $query, __LINE__, __FILE__);
            Tki\PlayerLog::WriteLog($pdo_db, $row['ship_id'], LOG_TOW, "{$row['sector']}|{$newsector}|{$row['max_hull']}");
            Tki\LogMove::writeLog($pdo_db, $row['ship_id'], $newsector);
            $res->MoveNext();
        }
    } else {
        echo "<br>No players to tow.<br>";
    }
} while ($num_to_tow);
echo "<br>";
$multiplier = 0;
// No need to run this again
コード例 #7
0
ファイル: scan.php プロジェクト: thekabal/tki
            $roll = random_int(1, 100);
            if ($roll < $success) {
                $sc_dev_emerwarp = round($targetinfo['dev_emerwarp'] * $sc_error / 100);
                echo "<td>{$sc_dev_emerwarp}</td></tr>";
            } else {
                echo "<td>???</td></tr>";
            }
            echo "<tr><td>" . $langvars['l_escape_pod'] . ":</td>";
            $roll = random_int(1, 100);
            if ($roll < $success) {
                echo "<td>{$targetinfo['dev_escapepod']}</td></tr>";
            } else {
                echo "<td>???</td></tr>";
            }
            echo "<tr><td>" . $langvars['l_fuel_scoop'] . ":</td>";
            $roll = random_int(1, 100);
            if ($roll < $success) {
                echo "<td>" . $targetinfo['dev_fuelscoop'] . "</td></tr>";
            } else {
                echo "<td>???</td></tr>";
            }
            echo "</table><br>";
            Tki\PlayerLog::WriteLog($pdo_db, $targetinfo['ship_id'], LOG_SHIP_SCAN, "{$playerinfo['character_name']}");
        }
        $resx = $db->Execute("UPDATE {$db->prefix}ships SET turns = turns - 1, turns_used = turns_used + 1 WHERE ship_id=?", array($playerinfo['ship_id']));
        Tki\Db::LogDbErrors($pdo_db, $resx, __LINE__, __FILE__);
    }
}
echo "<br><br>";
Tki\Text::gotomain($pdo_db, $lang);
Tki\Footer::display($pdo_db, $lang, $tkireg, $template);
コード例 #8
0
ファイル: sched_planets.php プロジェクト: thekabal/tki
$res = $db->Execute("SELECT * FROM {$db->prefix}planets WHERE owner > 0");
Tki\Db::LogDbErrors($pdo_db, $res, __LINE__, __FILE__);
// We are now using transactions to off load the SQL stuff in full to the Database Server.
$result = $db->Execute("START TRANSACTION");
Tki\Db::LogDbErrors($pdo_db, $result, __LINE__, __FILE__);
while (!$res->EOF) {
    $row = $res->fields;
    $production = floor(min($row['colonists'], $colonist_limit) * $colonist_production_rate);
    $organics_production = floor($production * $organics_prate * $row['prod_organics'] / 100.0);
    // - ($production * $organics_consumption);
    $organics_production -= floor($production * $organics_consumption);
    if ($row['organics'] + $organics_production < 0) {
        $organics_production = -$row['organics'];
        $starvation = floor($row['colonists'] * $starvation_death_rate);
        if ($row['owner'] && $starvation >= 1) {
            Tki\PlayerLog::WriteLog($pdo_db, $row['owner'], LOG_STARVATION, "{$row['sector_id']}|{$starvation}");
        }
    } else {
        $starvation = 0;
    }
    $ore_production = floor($production * $ore_prate * $row['prod_ore'] / 100.0);
    $goods_production = floor($production * $goods_prate * $row['prod_goods'] / 100.0);
    $energy_production = floor($production * $energy_prate * $row['prod_energy'] / 100.0);
    $reproduction = floor(($row['colonists'] - $starvation) * $colonist_reproduction_rate);
    if ($row['colonists'] + $reproduction - $starvation > $colonist_limit) {
        $reproduction = $colonist_limit - $row['colonists'];
    }
    $total_percent = $row['prod_organics'] + $row['prod_ore'] + $row['prod_goods'] + $row['prod_energy'];
    if ($row['owner']) {
        $fighter_production = floor($production * $fighter_prate * $row['prod_fighters'] / 100.0);
        $torp_production = floor($production * $torpedo_prate * $row['prod_torp'] / 100.0);
コード例 #9
0
ファイル: sched_degrade.php プロジェクト: thekabal/tki
    Tki\Db::LogDbErrors($pdo_db, $res2, __LINE__, __FILE__);
    if ($res2->EOF) {
        $resa = $db->Execute("UPDATE {$db->prefix}sector_defense SET quantity = quantity - GREATEST(ROUND(quantity * ?),1) WHERE defense_id = ? AND quantity > 0;", array($defense_degrade_rate, $row['defense_id']));
        Tki\Db::LogDbErrors($pdo_db, $resa, __LINE__, __FILE__);
        $degrade_rate = $defense_degrade_rate * 100;
        Tki\PlayerLog::WriteLog($pdo_db, $row['ship_id'], LOG_DEFENSE_DEGRADE, $row['sector_id'] . "|" . $degrade_rate);
    } else {
        $energy_required = round($row['quantity'] * $energy_per_fighter);
        $res4 = $db->Execute("SELECT IFNULL(SUM(energy),0) AS energy_available FROM {$db->prefix}planets WHERE (owner = ? OR (team = ? AND ? <> 0)) AND sector_id = ?", array($row['ship_id'], $sched_playerinfo['team'], $sched_playerinfo['team'], $row['sector_id']));
        Tki\Db::LogDbErrors($pdo_db, $res4, __LINE__, __FILE__);
        $planet_energy = $res4->fields;
        $energy_available = $planet_energy['energy_available'];
        echo "available {$energy_available}, required {$energy_required}.";
        if ($energy_available > $energy_required) {
            while (!$res2->EOF) {
                $degrade_row = $res2->fields;
                $resb = $db->Execute("UPDATE {$db->prefix}planets SET energy = energy - GREATEST(ROUND(? * (energy / ?)),1)  WHERE planet_id = ?", array($energy_required, $energy_available, $degrade_row['planet_id']));
                Tki\Db::LogDbErrors($pdo_db, $resb, __LINE__, __FILE__);
                $res2->MoveNext();
            }
        } else {
            $resc = $db->Execute("UPDATE {$db->prefix}sector_defense SET quantity = quantity - GREATEST(ROUND(quantity * ?),1) WHERE defense_id = ?;", array($defense_degrade_rate, $row['defense_id']));
            Tki\Db::LogDbErrors($pdo_db, $resc, __LINE__, __FILE__);
            $degrade_rate = $defense_degrade_rate * 100;
            Tki\PlayerLog::WriteLog($pdo_db, $row['ship_id'], LOG_DEFENSE_DEGRADE, $row['sector_id'] . "|" . $degrade_rate);
        }
    }
    $res->MoveNext();
}
$resx = $db->Execute("DELETE FROM {$db->prefix}sector_defense WHERE quantity <= 0");
Tki\Db::LogDbErrors($pdo_db, $resx, __LINE__, __FILE__);
コード例 #10
0
ファイル: sched_apocalypse.php プロジェクト: thekabal/tki
if ($reccount > 200) {
    $chance = 7;
    // Increase the chance it will happen if we have lots of planets meeting the criteria
}
$affliction = random_int(1, (int) $chance);
// The chance something bad will happen
if ($doomsday && $affliction < 3 && $reccount > 0) {
    $i = 1;
    $targetnum = random_int(1, (int) $reccount);
    while (!$doomsday->EOF) {
        if ($i == $targetnum) {
            $targetinfo = $doomsday->fields;
            break;
        }
        $i++;
        $doomsday->MoveNext();
    }
    if ($affliction == 1) {
        echo "The horsmen release the Space Plague!<br>.";
        $resx = $db->Execute("UPDATE {$db->prefix}planets SET colonists = ROUND (colonists - colonists * ?) WHERE planet_id = ?;", array($space_plague_kills, $targetinfo['planet_id']));
        Tki\Db::LogDbErrors($pdo_db, $resx, __LINE__, __FILE__);
        $logpercent = round($space_plague_kills * 100);
        Tki\PlayerLog::WriteLog($pdo_db, $targetinfo['owner'], LOG_SPACE_PLAGUE, "{$targetinfo['name']}|{$targetinfo['sector_id']}|{$logpercent}");
    } else {
        echo "The horsemen release a Plasma Storm!<br>.";
        $resy = $db->Execute("UPDATE {$db->prefix}planets SET energy = 0 WHERE planet_id = ?;", array($targetinfo['planet_id']));
        Tki\Db::LogDbErrors($pdo_db, $resy, __LINE__, __FILE__);
        Tki\PlayerLog::WriteLog($pdo_db, $targetinfo['owner'], LOG_PLASMA_STORM, "{$targetinfo['name']}|{$targetinfo['sector_id']}");
    }
}
echo "<br>";
コード例 #11
0
ファイル: sector_fighters.php プロジェクト: thekabal/tki
$langvars['l_sf_sendlog'] = str_replace("[lost]", $fighterslost, $langvars['l_sf_sendlog']);
$langvars['l_sf_sendlog'] = str_replace("[sector]", $sector, $langvars['l_sf_sendlog']);
Tki\Sectordefense::messagedefenseOwner($pdo_db, $sector, $langvars['l_sf_sendlog']);
Tki\PlayerLog::WriteLog($pdo_db, $playerinfo['ship_id'], LOG_DEFS_DESTROYED_F, "{$fighterslost}|{$sector}");
$armor_lost = $playerinfo['armor_pts'] - $playerarmor;
$fighters_lost = $playerinfo['ship_fighters'] - $playerfighters;
$energy = $playerinfo['ship_energy'];
$update4b = $db->Execute("UPDATE {$db->prefix}ships SET ship_energy = ?, ship_fighters = ship_fighters - ?, armor_pts = armor_pts - ?, torps = torps - ? WHERE ship_id = ?;", array($energy, $fighters_lost, $armor_lost, $playertorpnum, $playerinfo['ship_id']));
Tki\Db::LogDbErrors($pdo_db, $update4b, __LINE__, __FILE__);
$langvars['l_sf_lreport'] = str_replace("[armor]", $armor_lost, $langvars['l_sf_lreport']);
$langvars['l_sf_lreport'] = str_replace("[fighters]", $fighters_lost, $langvars['l_sf_lreport']);
$langvars['l_sf_lreport'] = str_replace("[torps]", $playertorpnum, $langvars['l_sf_lreport']);
echo $langvars['l_sf_lreport'] . "<br><br>";
if ($playerarmor < 1) {
    echo $langvars['l_sf_shipdestroyed'] . "<br><br>";
    Tki\PlayerLog::WriteLog($pdo_db, $playerinfo['ship_id'], LOG_DEFS_KABOOM, "{$sector}|{$playerinfo['dev_escapepod']}");
    $langvars['l_sf_sendlog2'] = str_replace("[player]", $playerinfo['character_name'], $langvars['l_sf_sendlog2']);
    $langvars['l_sf_sendlog2'] = str_replace("[sector]", $sector, $langvars['l_sf_sendlog2']);
    Tki\Sectordefense::messagedefenseOwner($pdo_db, $sector, $langvars['l_sf_sendlog2']);
    if ($playerinfo['dev_escapepod'] == 'Y') {
        $rating = round($playerinfo['rating'] / 2);
        echo $langvars['l_sf_escape'] . "<br><br>";
        $resx = $db->Execute("UPDATE {$db->prefix}ships SET hull = 0, engines = 0, power = 0, sensors = 0, computer = 0, beams = 0, torp_launchers = 0, torps = 0, armor = 0, armor_pts = 100, cloak = 0, shields = 0, sector = 0, ship_organics = 0, ship_ore = 0, ship_goods = 0, ship_energy = ?, ship_colonists = 0, ship_fighters = 100, dev_warpedit = 0, dev_genesis = 0, dev_beacon = 0, dev_emerwarp = 0, dev_escapepod = 'N', dev_fuelscoop = 'N', dev_minedeflector = 0, on_planet = 'N', rating = ?, cleared_defenses=' ', dev_lssd = 'N' WHERE ship_id = ?;", array($tkireg->start_energy, $rating, $playerinfo['ship_id']));
        Tki\Db::LogDbErrors($pdo_db, $resx, __LINE__, __FILE__);
        Tki\Bounty::cancel($pdo_db, $playerinfo['ship_id']);
        $ok = 0;
        Tki\Text::gotomain($pdo_db, $lang);
        die;
    } else {
        Tki\Bounty::cancel($pdo_db, $playerinfo['ship_id']);
        Tki\Character::kill($pdo_db, $playerinfo['ship_id'], $langvars, $tkireg, false);
コード例 #12
0
ファイル: check_fighters.php プロジェクト: thekabal/tki
     $fighterstoll = $total_sector_fighters * $fighter_price * 0.6;
     if ($playerinfo['credits'] < $fighterstoll) {
         echo $langvars['l_chf_notenoughcreditstoll'] . "<br>";
         echo $langvars['l_chf_movefailed'] . "<br>";
         // Undo the move
         $resx = $db->Execute("UPDATE {$db->prefix}ships SET sector=? WHERE ship_id=?;", array($playerinfo['sector'], $playerinfo['ship_id']));
         Tki\Db::LogDbErrors($pdo_db, $resx, __LINE__, __FILE__);
         $ok = 0;
     } else {
         $tollstring = number_format($fighterstoll, 0, $langvars['local_number_dec_point'], $langvars['local_number_thousands_sep']);
         $langvars['l_chf_youpaidsometoll'] = str_replace("[chf_tollstring]", $tollstring, $langvars['l_chf_youpaidsometoll']);
         echo $langvars['l_chf_youpaidsometoll'] . "<br>";
         $resx = $db->Execute("UPDATE {$db->prefix}ships SET credits=credits - {$fighterstoll} WHERE ship_id = ?;", array($playerinfo['ship_id']));
         Tki\Db::LogDbErrors($pdo_db, $resx, __LINE__, __FILE__);
         Tki\Toll::distribute($pdo_db, $sector, $fighterstoll, $total_sector_fighters);
         Tki\PlayerLog::WriteLog($pdo_db, $playerinfo['ship_id'], LOG_TOLL_PAID, "{$tollstring}|{$sector}");
         $ok = 1;
     }
     break;
 case "sneak":
     $resx = $db->Execute("UPDATE {$db->prefix}ships SET cleared_defenses = ' ' WHERE ship_id = ?;", array($playerinfo['ship_id']));
     Tki\Db::LogDbErrors($pdo_db, $resx, __LINE__, __FILE__);
     $success = Tki\Scan::success($fighters_owner['sensors'], $playerinfo['cloak']);
     if ($success < 5) {
         $success = 5;
     }
     if ($success > 95) {
         $success = 95;
     }
     $roll = random_int(1, 100);
     if ($roll < $success) {