Added full source code
This commit is contained in:
commit
33f8586698
1377 changed files with 123808 additions and 0 deletions
admin
109
admin/cg_step8.php
Normal file
109
admin/cg_step8.php
Normal file
|
@ -0,0 +1,109 @@
|
|||
<?php
|
||||
|
||||
set_magic_quotes_runtime(false);
|
||||
|
||||
session_start();
|
||||
if (!is_array($_SESSION['lw_new_game']) || !$_SESSION['lw_new_game']['do_it_now'] || !$_SESSION['lw_new_game']['started']) {
|
||||
echo "Sorry, can't do that.";
|
||||
exit(0);
|
||||
}
|
||||
|
||||
require_once("config.inc");
|
||||
|
||||
function makeCTFParams() {
|
||||
$cnx = __dbConnect();
|
||||
if (!$cnx) {
|
||||
print "<b>DATABASE CONNECTION ERROR</b>";
|
||||
exit(1);
|
||||
}
|
||||
$query = pg_query("SELECT * FROM main.ctf_map_def ORDER BY name");
|
||||
if (!$query) {
|
||||
print "<b>DATABASE ERROR</b>";
|
||||
exit(1);
|
||||
}
|
||||
|
||||
$ctfMaps = array();
|
||||
while ($r = pg_fetch_assoc($query)) {
|
||||
$ctfMaps[$r['id']] = $r;
|
||||
$query2 = pg_query("SELECT COUNT(*) FROM main.ctf_map_layout WHERE map={$r['id']} AND spawn_here");
|
||||
if (!$query2) {
|
||||
print "<b>DATABASE ERROR</b>";
|
||||
exit(1);
|
||||
}
|
||||
list($ctfMaps[$r['id']]['players']) = pg_fetch_array($query2);
|
||||
pg_free_result($query2);
|
||||
}
|
||||
pg_free_result($query);
|
||||
pg_close($cnx);
|
||||
|
||||
$map = $ctfMaps[$_SESSION['lw_new_game']['ctfmap']];
|
||||
$cParams = $_SESSION['lw_new_game']['ctfparams'];
|
||||
|
||||
$params = array(
|
||||
'usemap' => $map['id'],
|
||||
'maxplayers' => $map['players'],
|
||||
'norealloc' => 1,
|
||||
'partialtechs' => 0,
|
||||
'lockalliances' => $map['alliances'],
|
||||
'alliancecap' => 0,
|
||||
'victory' => 2,
|
||||
'novacation' => 1
|
||||
);
|
||||
|
||||
foreach ($cParams as $p => $v) {
|
||||
$params[$p] = $v;
|
||||
}
|
||||
|
||||
return $params;
|
||||
}
|
||||
|
||||
|
||||
$ns = $_SESSION['lw_new_game']['found_id'];
|
||||
$newConfig = "\t\t<!-- Game added automatically by the game creation tool -->\n"
|
||||
. "\t\t<Game id=\"$ns\" version=\"beta5\" namespace=\"$ns\" text=\""
|
||||
. $_SESSION['lw_new_game']['name'] . "\" public=\"0\" canjoin=\"0\">\n"
|
||||
. "\t\t\t<!-- Game parameters -->\n";
|
||||
|
||||
if ($_SESSION['lw_new_game']['game_type'] == 'c') {
|
||||
$_SESSION['lw_new_game']['params'] = makeCTFParams();
|
||||
}
|
||||
|
||||
foreach ($_SESSION['lw_new_game']['params'] as $p => $v) {
|
||||
$newConfig .= "\t\t\t<Param name=\"$p\" value=\"$v\" />\n";
|
||||
}
|
||||
$newConfig .= "\n"
|
||||
. "\t\t\t<!-- Description -->\n"
|
||||
. "\t\t\t<Description lang=\"en\">\n"
|
||||
. "\t\t\t\t" . $_SESSION['lw_new_game']['descr'] . "\n"
|
||||
. "\t\t\t</Description>\n\n"
|
||||
. "\t\t\t<!-- Ticks -->\n\n";
|
||||
|
||||
require_once("cg_ticks_schedule.inc");
|
||||
$ticks = __computeTicks($_SESSION['lw_new_game']['ft_y'],
|
||||
$_SESSION['lw_new_game']['ft_m'], $_SESSION['lw_new_game']['ft_d'],
|
||||
$_SESSION['lw_new_game']['speed'], $_SESSION['lw_new_game']['shift_ticks']);
|
||||
|
||||
foreach ($ticks as $tid => $data) {
|
||||
$time = $data[1];
|
||||
$time = ($time - ($secs = $time % 60)) / 60;
|
||||
$time = ($time - ($mins = $time % 60)) / 60;
|
||||
$newConfig .= "\t\t\t<!-- \"$tid\" tick: first tick " . gmstrftime("%H:%M:%S on %Y-%m-%d", $data[0])
|
||||
. ", interval {$time}h, {$mins}min, {$secs}s -->\n"
|
||||
. "\t\t\t<Tick script=\"$tid\" first=\"{$data[0]}\" interval=\"{$data[1]}\" />\n";
|
||||
}
|
||||
$newConfig .= "\t\t</Game>\n";
|
||||
|
||||
$file = fopen($aConfig['ctrlPath'] . "/config.$ns.xml", "w");
|
||||
fwrite($file, $newConfig);
|
||||
fclose($file);
|
||||
|
||||
$op = array(
|
||||
"pc" => 70,
|
||||
"text" => "Merging configuration",
|
||||
"delay" => 1,
|
||||
"to" => "cg_step9.php"
|
||||
);
|
||||
|
||||
include('cg_operation.inc');
|
||||
|
||||
?>
|
Loading…
Add table
Add a link
Reference in a new issue