Exemplo n.º 1
0
function ShowLeftMenu()
{
    global $xgp_root, $phpEx, $dpath, $game_config, $lang, $planetrow, $user, $lang;
    $parse = $lang;
    $parse['dpath'] = $dpath;
    $parse['avatar'] = $user['avatar'];
    $parse['version'] = VERSION;
    $parse['servername'] = $game_config['game_name'];
    $parse['forum_url'] = $game_config['forum_url'];
    $parse['user_rank'] = $user['total_rank'];
    $parse['opt_avata_data'] = $CurrentUser['avatar'];
    $parse['user_username'] = $user['username'];
    // Mod cuenta mensajes by shoek
    $MenSoporte = doquery("SELECT COUNT(*) as total FROM `{{table}}` WHERE `player_id` = '" . intval($CurrentUser['id']) . "' AND `status` = '2';", 'supp', true);
    if ($MenSoporte['total'] > 0) {
        $parse['NumSoporte'] = "(<a href=\"game.php?page=support\">" . $MenSoporte['total'] . "</a>)";
    }
    // Fin mod cuenta mensajes
    if ($_POST && $mode == "change") {
        // Array ( [db_character]
        $iduser = $user["id"];
        $avatar = $_POST["avatar"];
    }
    if (isset($planetrow['sprungtor']) && $planetrow['sprungtor'] > 0) {
        $parse['portal_link'] = "<tr><td><div align=\"center\"><a href='game.php?page=infos&gid=43' ><font color=\"green\">" . $lang['tech'][43] . "</font></a></div></td></tr>";
    }
    return parsetemplate(gettemplate('left_menu'), $parse);
}
Exemplo n.º 2
0
function login()
{
    include 'config.php';
    $link = opendb();
    if (isset($_POST["submit"])) {
        $query = doquery("SELECT * FROM {{table}} WHERE username='******' AND password='******' LIMIT 1", "users");
        if (mysql_num_rows($query) != 1) {
            die("Invalid username or password. Please go back and try again.");
        }
        $row = mysql_fetch_array($query);
        if (isset($_POST["rememberme"])) {
            $expiretime = time() + 31536000;
            $rememberme = 1;
        } else {
            $expiretime = 0;
            $rememberme = 0;
        }
        $cookie = $row["id"] . " " . $row["username"] . " " . md5($row["password"] . "--" . $dbsettings["secretword"]) . " " . $rememberme;
        setcookie("dkgame", $cookie, $expiretime, "/", "", 0);
        header("Location: index.php");
        die;
    }
    $page = gettemplate("login");
    $title = "Log In";
    display($page, $title, false, false, false, false);
}
Exemplo n.º 3
0
/**
 * adminmenu.php
 *
 * @version 1.2
 * @copyright 2008 By Chlorel for XNova
 * @copyright 2009 By MadnessRed for XNova Redesigned
 */
function ShowLeftMenu($cpage = 'x')
{
    global $lang;
    $qry = doquery("SELECT COUNT('error_id') as `errors` FROM {{table}}", 'errors', true);
    $errorscount = $qry['errors'];
    $qry = doquery("SELECT `id` FROM {{table}} WHERE `status` = 1 || `status` = 2 ;", 'supp');
    $ticketcount = mysql_num_rows($qry);
    $info = @file(XNOVAUKLINK . "info.php");
    if ($info[0] != VERSION . "\n") {
        $newversion = colourRed("(*)");
    }
    $adminpages = array('overview' => 'Overview ' . $newversion, 'config' => 'Configuration', 'edit' => 'Manage Users', 'errors' => 'Errors (' . $errorscount . ')', 'supp' => 'Tickets (' . $ticketcount . ')');
    getLang('menu');
    $parse = $lang;
    $parse['links'] = '';
    foreach ($adminpages as $get => $title) {
        $parse['links'] .= '
		<li class="menubutton_table">
			<span class="menu_icon">
		  		<img src="' . GAME_SKIN . '/img/navigation/navi_ikon_premium_b.gif" height="29" width="38" />
		  	</span>
			<a class="menubutton" href="./?page=admin&link=' . $get . '" title=\'' . $title . '\' tabindex="1">
				<span class="textlabel">' . $title . '</span>
			</a>
		</li>
		';
    }
    $Menu = parsetemplate(gettemplate('redesigned/adminmenu'), $parse);
    return $Menu;
}
Exemplo n.º 4
0
function sendnewpassword($email)
{
    $ExistMail = doquery("SELECT `email` FROM {{table}} WHERE `email` = '" . $email . "' LIMIT 1;", 'users', true);
    if (empty($ExistMail['email'])) {
        message('That address is not found !', 'Error');
    } else {
        $Caracters = "aazertyuiopqsdfghjklmwxcvbn���AZERTYUIOPQSDFGHJKLMWXCVBN���1234567890";
        $Count = strlen($Caracters);
        $NewPass = "";
        $Taille = 6;
        srand((double) microtime() * 1000000);
        for ($i = 0; $i < $Taille; $i++) {
            $CaracterBoucle = rand(0, $Count - 1);
            $NewPass = $NewPass . substr($Caracters, $CaracterBoucle, 1);
        }
        $Title = "Rogue Universe : Nytt l�senord";
        $Body = "H�r �r ditt nya l�senord : ";
        $Body .= $NewPass;
        mail($email, $Title, $Body);
        $NewPassSql = md5($NewPass);
        $QryPassChange = "UPDATE game_users SET ";
        $QryPassChange .= "`password` ='" . $NewPassSql . "' ";
        $QryPassChange .= "WHERE `email`='" . $email . "' LIMIT 1;";
        doquery($QryPassChange, 'users');
    }
}
Exemplo n.º 5
0
/**
 * This file is part of XNova:Legacies
 *
 * @license http://www.gnu.org/licenses/gpl-3.0.txt
 * @see http://www.xnova-ng.org/
 *
 * Copyright (c) 2009-2010, XNova Support Team <http://www.xnova-ng.org>
 * All rights reserved.
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 *
 *                                --> NOTICE <--
 *  This file is part of the core development branch, changing its contents will
 * make you unable to use the automatic updates manager. Please refer to the
 * documentation for further information about customizing XNova.
 *
 */
function MissionCaseStay($FleetRow)
{
    global $lang, $resource;
    if ($FleetRow['fleet_mess'] == 0) {
        if ($FleetRow['fleet_start_time'] <= time()) {
            $QryGetTargetPlanet = "SELECT * FROM {{table}} ";
            $QryGetTargetPlanet .= "WHERE ";
            $QryGetTargetPlanet .= "`galaxy` = '" . $FleetRow['fleet_end_galaxy'] . "' AND ";
            $QryGetTargetPlanet .= "`system` = '" . $FleetRow['fleet_end_system'] . "' AND ";
            $QryGetTargetPlanet .= "`planet` = '" . $FleetRow['fleet_end_planet'] . "' AND ";
            $QryGetTargetPlanet .= "`planet_type` = '" . $FleetRow['fleet_end_type'] . "';";
            $TargetPlanet = doquery($QryGetTargetPlanet, 'planets', true);
            $TargetUserID = $TargetPlanet['id_owner'];
            $TargetAdress = sprintf($lang['sys_adress_planet'], $FleetRow['fleet_end_galaxy'], $FleetRow['fleet_end_system'], $FleetRow['fleet_end_planet']);
            $TargetAddedGoods = sprintf($lang['sys_stay_mess_goods'], $lang['Metal'], pretty_number($FleetRow['fleet_resource_metal']), $lang['Crystal'], pretty_number($FleetRow['fleet_resource_crystal']), $lang['Deuterium'], pretty_number($FleetRow['fleet_resource_deuterium']));
            $TargetMessage = $lang['sys_stay_mess_start'] . "<a href=\"galaxy.php?mode=3&galaxy=" . $FleetRow['fleet_end_galaxy'] . "&system=" . $FleetRow['fleet_end_system'] . "\">";
            $TargetMessage .= $TargetAdress . "</a>" . $lang['sys_stay_mess_end'] . "<br />" . $TargetAddedGoods;
            SendSimpleMessage($TargetUserID, '', $FleetRow['fleet_start_time'], 5, $lang['sys_mess_qg'], $lang['sys_stay_mess_stay'], $TargetMessage);
            RestoreFleetToPlanet($FleetRow, false);
            doquery("DELETE FROM {{table}} WHERE `fleet_id` = '" . $FleetRow["fleet_id"] . "';", 'fleets');
        }
    } else {
        if ($FleetRow['fleet_end_time'] <= time()) {
            $TargetAdress = sprintf($lang['sys_adress_planet'], $FleetRow['fleet_start_galaxy'], $FleetRow['fleet_start_system'], $FleetRow['fleet_start_planet']);
            $TargetAddedGoods = sprintf($lang['sys_stay_mess_goods'], $lang['Metal'], pretty_number($FleetRow['fleet_resource_metal']), $lang['Crystal'], pretty_number($FleetRow['fleet_resource_crystal']), $lang['Deuterium'], pretty_number($FleetRow['fleet_resource_deuterium']));
            $TargetMessage = $lang['sys_stay_mess_back'] . "<a href=\"galaxy.php?mode=3&galaxy=" . $FleetRow['fleet_start_galaxy'] . "&system=" . $FleetRow['fleet_start_system'] . "\">";
            $TargetMessage .= $TargetAdress . "</a>" . $lang['sys_stay_mess_bend'] . "<br />" . $TargetAddedGoods;
            SendSimpleMessage($FleetRow['fleet_owner'], '', $FleetRow['fleet_end_time'], 5, $lang['sys_mess_qg'], $lang['sys_mess_fleetback'], $TargetMessage);
            RestoreFleetToPlanet($FleetRow, true);
            doquery("DELETE FROM {{table}} WHERE `fleet_id` = '" . $FleetRow["fleet_id"] . "';", 'fleets');
        }
    }
}
Exemplo n.º 6
0
/**
 * eco_get_build_data.php
 *
 * 1.0 - copyright (c) 2010 by Gorlum for http://supernova.ws
 * @version 1.0
 */
function eco_get_lab_max_effective_level(&$user, $lab_require)
{
    if (!$user['user_as_ally'] && !isset($user['laboratories_active'])) {
        $user['laboratories_active'] = array();
        $query = db_unit_list_laboratories($user['id']);
        while ($row = db_fetch($query)) {
            if (!eco_unit_busy($user, $row, UNIT_TECHNOLOGIES)) {
                $row += array(STRUC_LABORATORY => $level_lab = mrc_get_level($user, $row, STRUC_LABORATORY), STRUC_LABORATORY_NANO => $level_lab_nano = mrc_get_level($user, $row, STRUC_LABORATORY_NANO), 'laboratory_effective_level' => $level_lab * pow(2, $level_lab_nano));
                $user['laboratories_active'][$row['id']] = $row;
            }
        }
        uasort($user['laboratories_active'], 'eco_lab_sort_effectivness');
    }
    if (!isset($user['research_effective_level'][$lab_require])) {
        if ($user['user_as_ally']) {
            $lab_level = doquery("SELECT ally_members AS effective_level FROM {{alliance}} WHERE id = {$user['user_as_ally']} LIMIT 1", true);
        } else {
            $tech_intergalactic = mrc_get_level($user, false, TECH_RESEARCH) + 1;
            $lab_level['effective_level'] = 0;
            foreach ($user['laboratories_active'] as $data) {
                if ($tech_intergalactic <= 0) {
                    break;
                }
                if ($data[STRUC_LABORATORY] >= $lab_require) {
                    $lab_level['effective_level'] += $data['laboratory_effective_level'];
                    $tech_intergalactic--;
                }
            }
        }
        $user['research_effective_level'][$lab_require] = $lab_level['effective_level'] ? $lab_level['effective_level'] : 1;
    }
    return $user['research_effective_level'][$lab_require];
}
Exemplo n.º 7
0
function flt_get_fleets($condition, $phalanx = false)
{
    $fleet_db_list = array();
    if (!$condition) {
        $missile_query = $condition = 1;
    } elseif (is_array($condition)) {
        $missile_query = "\n      (fleet_start_galaxy = {$condition['galaxy']} AND fleet_start_system = {$condition['system']} AND fleet_start_planet = {$condition['planet']} AND fleet_start_type = {$condition['planet_type']})\n      OR\n      (fleet_end_galaxy = {$condition['galaxy']} AND fleet_end_system = {$condition['system']} AND fleet_end_planet = {$condition['planet']} AND fleet_end_type = {$condition['planet_type']})";
        $condition = "\n      (fleet_start_galaxy = {$condition['galaxy']} AND fleet_start_system = {$condition['system']} AND fleet_start_planet = {$condition['planet']} AND fleet_start_type = {$condition['planet_type']}" . ($phalanx ? '' : ' AND fleet_mess = 1') . ")\n      OR\n      (fleet_end_galaxy = {$condition['galaxy']} AND fleet_end_system = {$condition['system']} AND fleet_end_planet = {$condition['planet']} AND fleet_end_type = {$condition['planet_type']}" . ($phalanx ? '' : ' AND fleet_mess = 0') . ")";
    } else {
        $missile_query = "`fleet_owner` = '{$condition}' OR `fleet_target_owner` = '{$condition}'";
        $condition = $missile_query;
    }
    $sql_fleets = doquery("SELECT DISTINCT * FROM {{fleets}} WHERE {$condition};");
    while ($fleet = db_fetch($sql_fleets)) {
        $fleet_db_list[] = $fleet;
    }
    // Missile attack
    $sql_fleets = doquery("SELECT * FROM `{{iraks}}` WHERE {$missile_query};");
    while ($irak = db_fetch($sql_fleets)) {
        if ($irak['fleet_end_time'] >= SN_TIME_NOW) {
            $irak['fleet_start_type'] = PT_PLANET;
            $planet_start = db_planet_by_vector($irak, 'fleet_start_', false, 'name');
            $irak['fleet_id'] = -$irak['id'];
            $irak['fleet_mission'] = MT_MISSILE;
            $irak['fleet_array'] = UNIT_DEF_MISSILE_INTERPLANET . ",{$irak['fleet_amount']};";
            $irak['fleet_start_name'] = $planet_start['name'];
        }
        $fleet_db_list[] = $irak;
    }
    return $fleet_db_list;
}
Exemplo n.º 8
0
function chatmap()
{
    global $userrow;
    if (isset($_POST["submit"])) {
        extract($_POST);
        if ($fala == "") {
            header('Location: index.php');
            die;
        }
        $chatquery = doquery("SELECT * FROM {{table}} WHERE latitude='" . $userrow['latitude'] . "' AND longitude='" . $userrow['longitude'] . "' order by id", "chatmap");
        $i = 0;
        while ($chatrow = mysql_fetch_array($chatquery)) {
            $i += 1;
            if ($chatrow['id'] < $menorid || $menorid == "") {
                $menorid = $chatrow['id'];
            }
        }
        if ($i < 10) {
            $chatquery = doquery("INSERT INTO {{table}} (name, fala, latitude, longitude) VALUES ('" . $userrow['charname'] . "','{$fala}', '" . $userrow['latitude'] . "', '" . $userrow['longitude'] . "')", "chatmap");
        } else {
            $chatquery = doquery("DELETE FROM {{table}} WHERE id='" . $menorid . "' LIMIT 1", "chatmap");
            $chatquery = doquery("INSERT INTO {{table}} (name, fala, latitude, longitude) VALUES ('" . $userrow['charname'] . "','{$fala}', '" . $userrow['latitude'] . "', '" . $userrow['longitude'] . "')", "chatmap");
        }
    }
    //fim isset submit.
    header('Location: index.php');
    die;
}
Exemplo n.º 9
0
function sn_tpl_parse_fleet_db($fleet, $index, $user_data = false, &$result)
{
    global $lang, $user;
    if (!$user_data) {
        $user_data = $user;
    }
    if ($fleet['fleet_mess'] == 0 && $fleet['fleet_mission'] == MT_AKS) {
        $aks = doquery("SELECT * FROM {{aks}} WHERE id={$fleet['fleet_group']} LIMIT 1;", true);
    }
    $spy_level = $user['id'] == $fleet['fleet_owner'] ? 100 : GetSpyLevel($user);
    $result['fleet'] = isset($result['fleet']) ? $result['fleet'] : array();
    $result['fleet'] = array('NUMBER' => $index, 'ID' => $fleet['fleet_id'], 'OWNER' => $fleet['fleet_owner'], 'TARGET_OWNER' => $fleet['fleet_target_owner'], 'MESSAGE' => $fleet['fleet_mess'], 'MISSION' => $fleet['fleet_mission'], 'MISSION_NAME' => $lang['type_mission'][$fleet['fleet_mission']], 'ACS' => $aks['name'], 'AMOUNT' => $spy_level >= 4 ? pretty_number($fleet['fleet_amount']) . ($fleet['fleet_resource_metal'] + $fleet['fleet_resource_crystal'] + $fleet['fleet_resource_deuterium'] ? '+' : '') : '?', 'METAL' => $spy_level >= 8 ? $fleet['fleet_resource_metal'] : 0, 'CRYSTAL' => $spy_level >= 8 ? $fleet['fleet_resource_crystal'] : 0, 'DEUTERIUM' => $spy_level >= 8 ? $fleet['fleet_resource_deuterium'] : 0, 'START_TYPE_TEXT_SH' => $lang['sys_planet_type_sh'][$fleet['fleet_start_type']], 'START_COORDS' => "[{$fleet['fleet_start_galaxy']}:{$fleet['fleet_start_system']}:{$fleet['fleet_start_planet']}]", 'START_TIME_TEXT' => date(FMT_DATE_TIME, $fleet['fleet_end_time'] + SN_CLIENT_TIME_DIFF), 'START_LEFT' => floor($fleet['fleet_end_time'] + 1 - SN_TIME_NOW), 'START_URL' => uni_render_coordinates_href($fleet, 'fleet_start_', 3), 'START_NAME' => $fleet['fleet_start_name'], 'END_TYPE_TEXT_SH' => $lang['sys_planet_type_sh'][$fleet['fleet_end_type']], 'END_COORDS' => "[{$fleet['fleet_end_galaxy']}:{$fleet['fleet_end_system']}:{$fleet['fleet_end_planet']}]", 'END_TIME_TEXT' => date(FMT_DATE_TIME, $fleet['fleet_start_time'] + SN_CLIENT_TIME_DIFF), 'END_LEFT' => floor($fleet['fleet_start_time'] + 1 - SN_TIME_NOW), 'END_URL' => uni_render_coordinates_href($fleet, 'fleet_end_', 3), 'END_NAME' => $fleet['fleet_end_name'], 'STAY_TIME' => date(FMT_DATE_TIME, $fleet['fleet_end_stay'] + SN_CLIENT_TIME_DIFF), 'STAY_LEFT' => floor($fleet['fleet_end_stay'] + 1 - SN_TIME_NOW), 'OV_LABEL' => $fleet['ov_label'], 'EVENT_TIME_TEXT' => date(FMT_DATE_TIME, $fleet['event_time'] + SN_CLIENT_TIME_DIFF), 'OV_LEFT' => floor($fleet['event_time'] + 1 - SN_TIME_NOW), 'OV_THIS_PLANET' => $fleet['ov_this_planet']);
    $ship_list = explode(';', $fleet['fleet_array']);
    if ($spy_level >= 6) {
        foreach ($ship_list as $ship_record) {
            if ($ship_record) {
                $ship_data = explode(',', $ship_record);
                if ($spy_level >= 10) {
                    $single_ship_data = get_ship_data($ship_data[0], $user_data);
                    $result['ships'][$ship_data[0]] = array('ID' => $ship_data[0], 'NAME' => $lang['tech'][$ship_data[0]], 'AMOUNT' => $ship_data[1], 'AMOUNT_TEXT' => pretty_number($ship_data[1]), 'CONSUMPTION' => $single_ship_data['consumption'], 'SPEED' => $single_ship_data['speed'], 'CAPACITY' => $single_ship_data['capacity']);
                } else {
                    $result['ships'][$ship_data[0]] = array('ID' => $ship_id++, 'NAME' => $lang['tech'][UNIT_SHIPS], 'AMOUNT' => $ship_data[1], 'AMOUNT_TEXT' => pretty_number($ship_data[1]), 'CONSUMPTION' => 0, 'SPEED' => 0, 'CAPACITY' => 0);
                }
            }
        }
    }
    return $result;
}
Exemplo n.º 10
0
function MipAttack($NbreMip, $IDAversaire)
{
    $TechnoArme = doquery("SELECT * FROM {{table}} WHERE `id`='" . $user['id'] . "'", "users");
    $InfoAdversaire = doquery("SELECT * FROM {{table}} WHERE `id`='" . $IDAversaire . "'", "planets", true);
    $PuissanceAttaque = $NbreMip * 12000 * (1.05 * $TechnoArme['military_tech']);
    $TableauDeDefense = array(401 => array('shield' => 20), 402 => array('shield' => 25), 403 => array('shield' => 100), 404 => array('shield' => 200), 405 => array('shield' => 500), 406 => array('shield' => 300), 407 => array('shield' => 2000), 408 => array('shield' => 2000));
    $DefenseAdversaire = array(401 => $InfoAdversaire['misil_launcher'], 402 => $InfoAdversaire['small_laser'], 403 => $InfoAdversaire['big_laser'], 404 => $InfoAdversaire['gauss_canyon'], 405 => $InfoAdversaire['ionic_canyon'], 406 => $InfoAdversaire['buster_canyon'], 407 => $InfoAdversaire['small_protection_shield'], 408 => $InfoAdversaire['big_protection_shield']);
    while ($PuissanceAttaque > 20) {
        $RandomDefense = rand(401, 408);
        $SelectionDefense = $DefenseAdversaire[$RandomDefense];
        if ($SelectionDefense > 0) {
            if ($PuissanceAttaque > $SelectionDefense * $TableauDeDefense[$RandomDefense]) {
                $PuissanceAttaque = $PuissanceAttaque - $SelectionDefense * $TableauDeDefense[$RandomDefense];
                $DefenseAdversaire[$RandomDefense] = $DefenseAdversaire[$RandomDefense] - 1;
            }
        }
    }
    $SqlDefenseur = "UPDATE {{table}} SET ";
    $SqlDefenseur .= "`small_laser`='" . $DefenseAdversaire[402] . "', ";
    $SqlDefenseur .= "`big_laser`='" . $DefenseAdversaire[403] . "', ";
    $SqlDefenseur .= "`gauss_canyon`='" . $DefenseAdversaire[404] . "', ";
    $SqlDefenseur .= "`ionic_canyon`='" . $DefenseAdversaire[405] . "', ";
    $SqlDefenseur .= "`buster_canyon`='" . $DefenseAdversaire[406] . "', ";
    $SqlDefenseur .= "`small_protection_shield`='" . $DefenseAdversaire[407] . "', ";
    $SqlDefenseur .= "`big_protection_shield`='" . $DefenseAdversaire[408] . "' ";
    $SqlDefenseur .= " WHERE `id`='" . $IDAversaire . "'";
    doquery($SqlDefenseur, 'planets');
}
Exemplo n.º 11
0
function sn_db_perform($table, $values, $type = 'insert', $options = false)
{
    $mass_perform = false;
    $field_set = '';
    $value_set = '';
    switch ($type) {
        case 'delete':
            $query = 'DELETE FROM';
            break;
        case 'insert':
            $query = 'INSERT INTO';
            if (isset($options['__multi'])) {
                // Here we generate mass-insert set
                break;
            }
        case 'update':
            if (!$query) {
                $query = 'UPDATE';
            }
            foreach ($values as $field => &$value) {
                $value_type = gettype($value);
                if ($value_type == 'string') {
                    $value = "'" . db_escape($value) . "'";
                }
                $value = "`{$field}` = {$value}";
            }
            $field_set = 'SET ' . implode(', ', $values);
            break;
    }
    $query .= " {$table} {$field_set}";
    return doquery($query);
}
Exemplo n.º 12
0
function ShowLeftMenu($Level, $Template = 'left_menu')
{
    global $lang, $dpath, $game_config;
    includeLang('leftmenu');
    $MenuTPL = gettemplate($Template);
    $InfoTPL = gettemplate('serv_infos');
    $parse = $lang;
    $parse['lm_tx_serv'] = $game_config['resource_multiplier'];
    $parse['lm_tx_game'] = $game_config['game_speed'] / 2500;
    $parse['lm_tx_fleet'] = $game_config['fleet_speed'] / 2500;
    $parse['lm_tx_queue'] = MAX_FLEET_OR_DEFS_PER_ROW;
    $SubFrame = parsetemplate($InfoTPL, $parse);
    $parse['server_info'] = $SubFrame;
    $parse['XNovaRelease'] = VERSION;
    $parse['dpath'] = $dpath;
    $parse['forum_url'] = $game_config['forum_url'];
    $parse['mf'] = "Hauptframe";
    $rank = doquery("SELECT `total_rank` FROM {{table}} WHERE `stat_code` = '1' AND `stat_type` = '1' AND `id_owner` = '" . $user['id'] . "';", 'statpoints', true);
    $parse['user_rank'] = $rank['total_rank'];
    if ($Level > 0) {
        $parse['ADMIN_LINK'] = "\r\n\t\t<tr>\r\n\t\t\t<td colspan=\"2\"><div><a href=\"admin/leftmenu.php\"><font color=\"lime\">" . $lang['user_level'][$Level] . "</font></a></div></td>\r\n\t\t</tr>";
    } else {
        $parse['ADMIN_LINK'] = "";
    }
    $parse['servername'] = $game_config['game_name'];
    $Menu = parsetemplate($MenuTPL, $parse);
    return $Menu;
}
Exemplo n.º 13
0
 function sendnewpassword($mail)
 {
     global $lang;
     $ExistMail = doquery("SELECT `email` FROM {{table}} WHERE `email` = '" . $mail . "' LIMIT 1;", 'users', true);
     if (empty($ExistMail['email'])) {
         message($lang['mail_not_exist'], "index.php?page=lostpassword", 2, false, false);
     } else {
         $Caracters = "aazertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN1234567890";
         $Count = strlen($Caracters);
         $NewPass = "";
         $Taille = 6;
         srand((double) microtime() * 1000000);
         for ($i = 0; $i < $Taille; $i++) {
             $CaracterBoucle = rand(0, $Count - 1);
             $NewPass = $NewPass . substr($Caracters, $CaracterBoucle, 1);
         }
         $Title = $lang['mail_title'];
         $Body = "Hallo ShadoX,\n\n";
         $Body .= "dein Passwort für " . $game_config['game_name'] . " lautet:\n\n";
         $Body .= $NewPass . "\n\n";
         $Body .= "Du kannst dich damit unter " . REGURL . " einloggen.\n\n";
         $Body .= "Wir verschicken Passwörter nur an die von dir im Spiel angegebenen Mailadressen. Solltest du diese Mail nicht angefordert haben kannst du sie also einfach ignorieren.\n\n";
         $Body .= "Wir wünschen dir weiterhin viel Erfolg beim Spielen von " . $game_config['game_name'] . "!\n\n";
         $Body .= "Dein " . $game_config['game_name'] . "-Team\n\n";
         mymail($mail, $Title, $Body, ADMINEMAIL);
         $NewPassSql = md5($NewPass);
         $QryPassChange = "UPDATE {{table}} SET ";
         $QryPassChange .= "`password` ='" . $NewPassSql . "' ";
         $QryPassChange .= "WHERE `email`='" . $mail . "' LIMIT 1;";
         doquery($QryPassChange, 'users');
     }
 }
Exemplo n.º 14
0
/**
 * PM.php
 *
 * @version 1.1
 * @copyright 2009 by MadnessRed for XNova Redeisgned
 */
function PM($to, $from, $message, $subject = '', $sender = '', $type = 0)
{
    //Add the message to the databas (xnova code) with a bit of security modification
    $QryInsertMessage = "INSERT INTO {{table}} SET ";
    $QryInsertMessage .= "`message_owner` = '" . idstring($to) . "', ";
    $QryInsertMessage .= "`message_sender` = '" . idstring($from) . "', ";
    $QryInsertMessage .= "`message_text` = '" . mysql_real_escape_string(addslashes($message)) . "', ";
    $QryInsertMessage .= "`message_subject` = '" . mysql_escape_string(addslashes($subject)) . "', ";
    $QryInsertMessage .= "`message_from` = '" . mysql_real_escape_string(addslashes($sender)) . "', ";
    $QryInsertMessage .= "`message_type` = '" . idstring($type) . "', ";
    $QryInsertMessage .= "`message_time` = '" . time() . "';";
    doquery($QryInsertMessage, 'messages');
    //Get the target
    $target = doquery("SELECT `id`,`messages` FROM {{table}} WHERE `id` = '" . idstring($to) . "' LIMIT 1 ;", 'users', true);
    //Set messages of this type to +1
    if (strlen($target['messages']) == 0) {
        $target['messages'] = '0,0,0,0,0,0';
    }
    $messages = explode(",", $target['messages'], 6);
    if ($type < 0 || $time > 5) {
        $type = 5;
    }
    $messages[$type] += 1;
    $newmessages = implode(",", $messages);
    //$newmessages = $messages[0].",".$messages[1].",".$messages[2].",".$messages[3].",".$messages[4].",".$messages[5];
    doquery("UPDATE {{table}} SET `messages` = '" . $newmessages . "', `menus_update` = '" . time() . "' WHERE `id` = '" . $target['id'] . "' LIMIT 1 ;", 'users');
}
Exemplo n.º 15
0
function ShowTopKB()
{
    global $lang;
    //anzeige der Top 100 Liste
    includeLang('INGAME');
    $parse = $lang;
    $RowsTPL = gettemplate('topkb/topkb_rows');
    $top = doquery("SELECT * FROM {{table}} ORDER BY gesamtunits DESC LIMIT 100;", 'topkb');
    $a = 0;
    while ($data = mysql_fetch_array($top)) {
        $a++;
        $timedeut = date("D d M H:i:s", $data['time']);
        $user1 = doquery("SELECT * FROM {{table}} WHERE username='******';", 'users', true);
        if ($data['fleetresult'] == "a" and $user1['hof'] == 1) {
            $bloc['top_fighters'] = "<a href=\"javascript:f('topkbuser.php?mode=" . $data['rid'] . "', '');\"><font color=\"green\">" . $data['angreifer'] . "</font><b> VS </b><font color=\"red\">" . $data['defender'] . "</font></a>";
        } else {
            if ($data['fleetresult'] == "r" and $user1['hof'] == 1) {
                $bloc['top_fighters'] = "<a href=\"javascript:f('topkbuser.php?page=showtopkb&mode=" . $data['rid'] . "', '');\"><font color=\"red\">" . $data['angreifer'] . "</font><b> VS </b><font color=\"green\">" . $data['defender'] . "</font></a>";
            } else {
                if ($data['fleetresult'] == "w" and $user1['hof'] == 1) {
                    $bloc['top_fighters'] = "<a href=\"javascript:f('topkbuser.php?mode=" . $data['rid'] . "', '');\">" . $data['angreifer'] . "<b> VS </b>" . $data['defender'] . "</a>";
                }
            }
        }
        $bloc['top_rank'] = $a;
        $bloc['top_time'] = $timedeut;
        $bloc['top_units'] = pretty_number($data['gesamtunits']);
        $bloc['underrow'] = $lang['grata'] . "test";
        //  date("r", $data['time']);
        $parse['top_list'] .= parsetemplate($RowsTPL, $bloc);
    }
    display(parsetemplate(gettemplate('topkb/topkb'), $parse), false);
}
Exemplo n.º 16
0
function ShowImperiumPage($CurrentUser)
{
    global $lang, $resource, $reslist, $dpath;
    $planetsrow = doquery("\r\n\tSELECT `id`,`name`,`galaxy`,`system`,`planet`,`planet_type`,\r\n\t`image`,`field_current`,`field_max`,`metal`,`metal_perhour`,\r\n\t`crystal`,`crystal_perhour`,`deuterium`,`deuterium_perhour`,\r\n\t`energy_used`,`energy_max`,`metal_mine`,`crystal_mine`,`deuterium_sintetizer`,\r\n\t`solar_plant`,`fusion_plant`,`robot_factory`,`nano_factory`,`hangar`,`metal_store`,\r\n\t`crystal_store`,`deuterium_store`,`laboratory`,`terraformer`,`ally_deposit`,`silo`,\r\n\t`small_ship_cargo`,`big_ship_cargo`,`light_hunter`,`heavy_hunter`,`crusher`,`battle_ship`,\r\n\t`colonizer`,`recycler`,`spy_sonde`,`bomber_ship`,`solar_satelit`,`destructor`,`dearth_star`,\r\n\t`battleship`,`supernova`,`misil_launcher`,`small_laser`,`big_laser`,`gauss_canyon`,`ionic_canyon`,\r\n\t`buster_canyon`,`small_protection_shield`,`planet_protector`,`big_protection_shield`,`interceptor_misil`,\r\n\t`interplanetary_misil`, `mondbasis`, `phalanx`, `sprungtor` FROM {{table}} WHERE `id_owner` = '" . $CurrentUser['id'] . "' AND `destruyed` = 0;", 'planets');
    $parse = $lang;
    $planet = array();
    while ($p = mysql_fetch_array($planetsrow)) {
        $planet[] = $p;
    }
    $parse['mount'] = count($planet) + 1;
    foreach ($planet as $p) {
        $datat = array('<a href="game.php?page=overview&cp=' . $p['id'] . '&amp;re=0"><img src="' . $dpath . 'planeten/small/s_' . $p['image'] . '.jpg" border="0" height="80" width="80"></a>', $p['name'], "[<a href=\"game.php?page=galaxy&mode=3&galaxy={$p['galaxy']}&system={$p['system']}\">{$p['galaxy']}:{$p['system']}:{$p['planet']}</a>]", $p['field_current'] . '/' . $p['field_max'], '<a href="game.php?page=resources&cp=' . $p['id'] . '&amp;re=0&amp;planettype=' . $p['planet_type'] . '">' . pretty_number($p['metal']) . '</a> / ' . pretty_number($p['metal_perhour']), '<a href="game.php?page=resources&cp=' . $p['id'] . '&amp;re=0&amp;planettype=' . $p['planet_type'] . '">' . pretty_number($p['crystal']) . '</a> / ' . pretty_number($p['crystal_perhour']), '<a href="game.php?page=resources&cp=' . $p['id'] . '&amp;re=0&amp;planettype=' . $p['planet_type'] . '">' . pretty_number($p['deuterium']) . '</a> / ' . pretty_number($p['deuterium_perhour']), pretty_number($p['energy_max'] - $p['energy_used']) . ' / ' . pretty_number($p['energy_max']));
        $f = array('file_images', 'file_names', 'file_coordinates', 'file_fields', 'file_metal', 'file_crystal', 'file_deuterium', 'file_energy');
        for ($k = 0; $k < 8; $k++) {
            $data['text'] = $datat[$k];
            $parse[$f[$k]] .= parsetemplate(gettemplate('empire/empire_row'), $data);
        }
        foreach ($resource as $i => $res) {
            $data['text'] = $p[$resource[$i]] == 0 && $CurrentUser[$resource[$i]] == 0 ? '-' : (in_array($i, $reslist['build']) ? "<a href=\"game.php?page=buildings&cp={$p['id']}&amp;re=0&amp;planettype={$p['planet_type']}\">{$p[$resource[$i]]}</a>" : (in_array($i, $reslist['tech']) ? "<a href=\"game.php?page=buildings&mode=research&cp={$p['id']}&amp;re=0&amp;planettype={$p['planet_type']}\">{$CurrentUser[$resource[$i]]}</a>" : (in_array($i, $reslist['fleet']) ? "<a href=\"game.php?page=buildings&mode=fleet&cp={$p['id']}&amp;re=0&amp;planettype={$p['planet_type']}\">{$p[$resource[$i]]}</a>" : (in_array($i, $reslist['defense']) ? "<a href=\"game.php?page=buildings&mode=defense&cp={$p['id']}&amp;re=0&amp;planettype={$p['planet_type']}\">{$p[$resource[$i]]}</a>" : '-'))));
            $r[$i] .= parsetemplate(gettemplate('empire/empire_row'), $data);
        }
    }
    $m = array('build', 'tech', 'fleet', 'defense');
    $n = array('building_row', 'technology_row', 'fleet_row', 'defense_row');
    for ($j = 0; $j < 4; $j++) {
        foreach ($reslist[$m[$j]] as $a => $i) {
            $data['text'] = $lang['tech'][$i];
            $parse[$n[$j]] .= "<tr>" . parsetemplate(gettemplate('empire/empire_row'), $data) . $r[$i] . "</tr>";
        }
    }
    return display(parsetemplate(gettemplate('empire/empire_table'), $parse), false);
}
Exemplo n.º 17
0
 function sendnewpassword($mail)
 {
     global $lang;
     $ExistMail = doquery("SELECT `email` FROM {{table}} WHERE `email` = '" . $mail . "' LIMIT 1;", 'users', true);
     if (empty($ExistMail['email'])) {
         message($lang['mail_not_exist'], "index.php?modo=claveperdida", 2, false, false);
     } else {
         $Caracters = "aazertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN1234567890";
         $Count = strlen($Caracters);
         $NewPass = "";
         $Taille = 6;
         srand((double) microtime() * 1000000);
         for ($i = 0; $i < $Taille; $i++) {
             $CaracterBoucle = rand(0, $Count - 1);
             $NewPass = $NewPass . substr($Caracters, $CaracterBoucle, 1);
         }
         $Title = $lang['mail_title'];
         $Body = $lang['mail_text'];
         $Body .= $NewPass;
         mail($mail, $Title, $Body);
         $NewPassSql = md5($NewPass);
         $QryPassChange = "UPDATE {{table}} SET ";
         $QryPassChange .= "`password` ='" . $NewPassSql . "' ";
         $QryPassChange .= "WHERE `email`='" . $mail . "' LIMIT 1;";
         doquery($QryPassChange, 'users');
     }
 }
Exemplo n.º 18
0
 public function CheckAbandonPlanetState(&$planet)
 {
     if ($planet['destruyed'] <= time()) {
         doquery("DELETE FROM {{table}} WHERE `id_planet` = '" . intval($planet['id']) . "' LIMIT 1;", 'galaxy');
         doquery("DELETE FROM {{table}} WHERE `id` = " . intval($planet['id']) . "", 'planets');
     }
 }
Exemplo n.º 19
0
function ShowGalaxyRows($Galaxy, $System)
{
    global $lang, $planetcount, $CurrentRC, $dpath, $user;
    $Result = "";
    for ($Planet = 1; $Planet < 16; $Planet++) {
        unset($GalaxyRowPlanet);
        unset($GalaxyRowMoon);
        unset($GalaxyRowava);
        unset($GalaxyRowPlayer);
        unset($GalaxyRowAlly);
        $GalaxyRow = doquery("SELECT * FROM {{table}} WHERE `galaxy` = '" . $Galaxy . "' AND `system` = '" . $System . "' AND `planet` = '" . $Planet . "';", 'galaxy', true);
        $Result .= "\n";
        $Result .= "<tr>";
        // Depart de ligne
        if ($GalaxyRow) {
            // Il existe des choses sur cette ligne de planete
            if ($GalaxyRow["id_planet"] != 0) {
                $GalaxyRowPlanet = doquery("SELECT * FROM {{table}} WHERE `id` = '" . $GalaxyRow["id_planet"] . "';", 'planets', true);
                if ($GalaxyRowPlanet['destruyed'] != 0 and $GalaxyRowPlanet['id_owner'] != '' and $GalaxyRow["id_planet"] != '') {
                    CheckAbandonPlanetState($GalaxyRowPlanet);
                } else {
                    $planetcount++;
                    $GalaxyRowPlayer = doquery("SELECT * FROM {{table}} WHERE `id` = '" . $GalaxyRowPlanet["id_owner"] . "';", 'users', true);
                }
                if ($GalaxyRow["id_luna"] != 0) {
                    $GalaxyRowMoon = doquery("SELECT * FROM {{table}} WHERE `id` = '" . $GalaxyRow["id_luna"] . "';", 'lunas', true);
                    if ($GalaxyRowMoon["destruyed"] != 0) {
                        CheckAbandonMoonState($GalaxyRowMoon);
                    }
                }
                if ($GalaxyRowPlanet['id_owner'] != 0) {
                    $GalaxyRowUser = doquery("SELECT * FROM {{table}} WHERE `id` = '" . $GalaxyRowPlanet['id_owner'] . "';", 'users', true);
                } else {
                    $GalaxyRowUser = array();
                }
            }
        }
        $Result .= "\n";
        $Result .= GalaxyRowPos($Planet, $GalaxyRow);
        $Result .= "\n";
        $Result .= GalaxyRowPlanet($GalaxyRow, $GalaxyRowPlanet, $GalaxyRowPlayer, $Galaxy, $System, $Planet, 1);
        $Result .= "\n";
        $Result .= GalaxyRowPlanetName($GalaxyRow, $GalaxyRowPlanet, $GalaxyRowPlayer, $Galaxy, $System, $Planet, 1);
        $Result .= "\n";
        $Result .= GalaxyRowMoon($GalaxyRow, $GalaxyRowMoon, $GalaxyRowPlayer, $Galaxy, $System, $Planet, 3);
        $Result .= "\n";
        $Result .= GalaxyRowDebris($GalaxyRow, $GalaxyRowPlanet, $GalaxyRowPlayer, $Galaxy, $System, $Planet, 2);
        $Result .= "\n";
        $Result .= GalaxyRowava($GalaxyRow, $GalaxyRowPlanet, $GalaxyRowPlayer, $Galaxy, $System, $Planet, 0);
        $Result .= "\n";
        $Result .= GalaxyRowUser($GalaxyRow, $GalaxyRowPlanet, $GalaxyRowPlayer, $Galaxy, $System, $Planet, 0);
        $Result .= "\n";
        $Result .= GalaxyRowAlly($GalaxyRow, $GalaxyRowPlanet, $GalaxyRowPlayer, $Galaxy, $System, $Planet, 0);
        $Result .= "\n";
        $Result .= GalaxyRowActions($GalaxyRow, $GalaxyRowPlanet, $GalaxyRowPlayer, $Galaxy, $System, $Planet, 0);
        $Result .= "\n";
        $Result .= "</tr>";
    }
    return $Result;
}
Exemplo n.º 20
0
function flt_mission_colonize(&$mission_data)
{
    $fleet_row =& $mission_data['fleet'];
    $src_user_row =& $mission_data['src_user'];
    global $lang;
    $TargetAdress = sprintf($lang['sys_adress_planet'], $fleet_row['fleet_end_galaxy'], $fleet_row['fleet_end_system'], $fleet_row['fleet_end_planet']);
    $fleet_array = sys_unit_str2arr($fleet_row['fleet_array']);
    $TheMessage = $lang['sys_colo_no_colonizer'];
    if ($fleet_array[SHIP_COLONIZER] >= 1) {
        $TheMessage = $lang['sys_colo_notfree'];
        if (!$mission_data['dst_planet'] || empty($mission_data['dst_planet'])) {
            $iPlanetCount = get_player_current_colonies($src_user_row);
            // Can we colonize more planets?
            $TheMessage = $lang['sys_colo_maxcolo'];
            if ($iPlanetCount < get_player_max_colonies($src_user_row)) {
                // Yes, we can colonize
                $TheMessage = $lang['sys_colo_badpos'];
                $NewOwnerPlanet = uni_create_planet($fleet_row['fleet_end_galaxy'], $fleet_row['fleet_end_system'], $fleet_row['fleet_end_planet'], $fleet_row['fleet_owner'], "{$lang['sys_colo_defaultname']} {$iPlanetCount}", false, array('user_row' => $src_user_row));
                if ($NewOwnerPlanet) {
                    $TheMessage = $lang['sys_colo_arrival'] . $TargetAdress . $lang['sys_colo_allisok'];
                    msg_send_simple_message($fleet_row['fleet_owner'], '', $fleet_row['fleet_start_time'], MSG_TYPE_SPY, $lang['sys_colo_mess_from'], $lang['sys_colo_mess_report'], $TheMessage);
                    $fleet_array[SHIP_COLONIZER]--;
                    $fleet_row['fleet_amount']--;
                    $fleet_row['fleet_array'] = sys_unit_arr2str($fleet_array);
                    return RestoreFleetToPlanet($fleet_row, false);
                }
            }
        }
    }
    doquery("UPDATE `{{fleets}}` SET `fleet_mess` = '1' WHERE `fleet_id` = '{$fleet_row['fleet_id']}' LIMIT 1;");
    msg_send_simple_message($fleet_row['fleet_owner'], '', $fleet_row['fleet_start_time'], MSG_TYPE_SPY, $lang['sys_colo_mess_from'], $lang['sys_colo_mess_report'], "{$lang['sys_colo_arrival']}{$TargetAdress}{$TheMessage}");
    return CACHE_FLEET;
}
Exemplo n.º 21
0
function SendSimpleMessage($Owner, $Sender, $Time, $Type, $From, $Subject, $Message)
{
    global $messfields;
    if ($Time == '') {
        $Time = time();
    }
    if ($Sender == '') {
        $Sender = 0;
    }
    $QryInsertMessage = "INSERT INTO {{table}} SET ";
    $QryInsertMessage .= "`message_owner` = '" . $Owner . "', ";
    $QryInsertMessage .= "`message_sender` = '" . $Sender . "', ";
    $QryInsertMessage .= "`message_time` = '" . $Time . "', ";
    $QryInsertMessage .= "`message_type` = '" . $Type . "', ";
    $QryInsertMessage .= "`message_from` = '" . addslashes($From) . "', ";
    $QryInsertMessage .= "`message_subject` = '" . addslashes($Subject) . "', ";
    $QryInsertMessage .= "`message_text` = '" . addslashes($Message) . "';";
    doquery($QryInsertMessage, 'messages');
    $QryUpdateUser = "******";
    $QryUpdateUser .= "`" . $messfields[$Type] . "` = `" . $messfields[$Type] . "` + 1, ";
    $QryUpdateUser .= "`" . $messfields[100] . "` = `" . $messfields[100] . "` + 1 ";
    $QryUpdateUser .= "WHERE ";
    $QryUpdateUser .= "`id` = '" . $Owner . "';";
    doquery($QryUpdateUser, 'users');
}
Exemplo n.º 22
0
function CheckAbandonPlanetState(&$planet)
{
    if ($planet['destruyed'] <= time()) {
        doquery("DELETE FROM {{table}} WHERE id={$planet['id']}", 'planets');
        doquery("UPDATE {{table}} SET id_planet=0 WHERE id_planet={$planet['id']}", 'galaxy');
    }
}
Exemplo n.º 23
0
function DeleteSelectedUser($UserID)
{
    $TheUser = doquery("SELECT * FROM {{table}} WHERE `id` = '" . $UserID . "';", 'users', true);
    if ($TheUser['ally_id'] != 0) {
        $TheAlly = doquery("SELECT * FROM {{table}} WHERE `id` = '" . $TheUser['ally_id'] . "';", 'alliance', true);
        $TheAlly['ally_members'] -= 1;
        if ($TheAlly['ally_members'] > 0) {
            doquery("UPDATE {{table}} SET `ally_members` = '" . $TheAlly['ally_members'] . "' WHERE `id` = '" . $TheAlly['id'] . "';", 'alliance');
        } else {
            doquery("DELETE FROM {{table}} WHERE `id` = '" . $TheAlly['id'] . "';", 'alliance');
            doquery("DELETE FROM {{table}} WHERE `stat_type` = '2' AND `id_owner` = '" . $TheAlly['id'] . "';", 'statpoints');
        }
    }
    doquery("DELETE FROM {{table}} WHERE `stat_type` = '1' AND `id_owner` = '" . $UserID . "';", 'statpoints');
    $ThePlanets = doquery("SELECT * FROM {{table}} WHERE `id_owner` = '" . $UserID . "';", 'planets');
    while ($OnePlanet = mysql_fetch_assoc($ThePlanets)) {
        if ($OnePlanet['planet_type'] == 1) {
            doquery("DELETE FROM {{table}} WHERE `galaxy` = '" . $OnePlanet['galaxy'] . "' AND `system` = '" . $OnePlanet['system'] . "' AND `planet` = '" . $OnePlanet['planet'] . "';", 'galaxy');
        } elseif ($OnePlanet['planet_type'] == 3) {
            doquery("DELETE FROM {{table}} WHERE `galaxy` = '" . $OnePlanet['galaxy'] . "' AND `system` = '" . $OnePlanet['system'] . "' AND `lunapos` = '" . $OnePlanet['planet'] . "';", 'lunas');
        }
        doquery("DELETE FROM {{table}} WHERE `id` = '" . $OnePlanet['id'] . "';", 'planets');
    }
    doquery("DELETE FROM {{table}} WHERE `message_sender` = '" . $UserID . "';", 'messages');
    doquery("DELETE FROM {{table}} WHERE `message_owner` = '" . $UserID . "';", 'messages');
    doquery("DELETE FROM {{table}} WHERE `owner` = '" . $UserID . "';", 'notes');
    doquery("DELETE FROM {{table}} WHERE `fleet_owner` = '" . $UserID . "';", 'fleets');
    //doquery ( "DELETE FROM {{table}} WHERE `id_owner1` = '" . $UserID . "';", 'rw' );
    //doquery ( "DELETE FROM {{table}} WHERE `id_owner2` = '" . $UserID . "';", 'rw' );
    doquery("DELETE FROM {{table}} WHERE `sender` = '" . $UserID . "';", 'buddy');
    doquery("DELETE FROM {{table}} WHERE `owner` = '" . $UserID . "';", 'buddy');
    doquery("DELETE FROM {{table}} WHERE `id` = '" . $UserID . "';", 'users');
    doquery("UPDATE `{{table}}` SET `config_value` = `config_value` - '1' WHERE `config_name` = 'users_amount' LIMIT 1 ;", "config");
}
Exemplo n.º 24
0
/**
 * This file is part of XNova:Legacies
 *
 * @license http://www.gnu.org/licenses/gpl-3.0.txt
 * @see http://www.xnova-ng.org/
 *
 * Copyright (c) 2009-2010, XNova Support Team <http://www.xnova-ng.org>
 * All rights reserved.
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 *
 *                                --> NOTICE <--
 *  This file is part of the core development branch, changing its contents will
 * make you unable to use the automatic updates manager. Please refer to the
 * documentation for further information about customizing XNova.
 *
 */
function sendnewpassword($mail)
{
    $ExistMail = doquery("SELECT `email` FROM {{table}} WHERE `email` = '" . $mail . "' LIMIT 1;", 'users', true);
    if (empty($ExistMail['email'])) {
        message('L\'adresse n\'existe pas !', 'Erreur');
    } else {
        //Caractere qui seront contenus dans le nouveau mot de passe
        $Caracters = "aazertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN1234567890";
        $Count = strlen($Caracters);
        $NewPass = "";
        $Taille = 6;
        srand((double) microtime() * 1000000);
        for ($i = 0; $i < $Taille; $i++) {
            $CaracterBoucle = rand(0, $Count - 1);
            $NewPass = $NewPass . substr($Caracters, $CaracterBoucle, 1);
        }
        //Et un nouveau mot de passe tout chaud ^^
        //On va maintenant l'envoyer au destinataire
        $Title = "XNova : Nouveau mot de passe";
        $Body = "Voici votre nouveau mot de passe : ";
        $Body .= $NewPass;
        mail($mail, $Title, $Body);
        //Email envoy�, maintenant place au changement dans la BDD
        $NewPassSql = md5($NewPass);
        $QryPassChange = "UPDATE {{table}} SET ";
        $QryPassChange .= "`password` ='" . $NewPassSql . "' ";
        $QryPassChange .= "WHERE `email`='" . $mail . "' LIMIT 1;";
        doquery($QryPassChange, 'users');
    }
}
Exemplo n.º 25
0
function RestoreFleetToPlanet($FleetRow, $Start = true)
{
    global $resource;
    $FleetRecord = explode(";", $FleetRow['fleet_array']);
    $QryUpdFleet = "";
    foreach ($FleetRecord as $Item => $Group) {
        if ($Group != '') {
            $Class = explode(",", $Group);
            $QryUpdFleet .= "`" . $resource[$Class[0]] . "` = `" . $resource[$Class[0]] . "` + '" . $Class[1] . "', \n";
        }
    }
    $QryUpdatePlanet = "UPDATE {{table}} SET ";
    if ($QryUpdFleet != "") {
        $QryUpdatePlanet .= $QryUpdFleet;
    }
    $QryUpdatePlanet .= "`metal` = `metal` + '" . $FleetRow['fleet_resource_metal'] . "', ";
    $QryUpdatePlanet .= "`crystal` = `crystal` + '" . $FleetRow['fleet_resource_crystal'] . "', ";
    $QryUpdatePlanet .= "`deuterium` = `deuterium` + '" . $FleetRow['fleet_resource_deuterium'] . "', ";
    $QryUpdatePlanet .= "`tachyon` = `tachyon` + '" . $FleetRow['fleet_resource_tachyon'] . "' ";
    $QryUpdatePlanet .= "WHERE ";
    if ($Start == true) {
        $QryUpdatePlanet .= "`galaxy` = '" . $FleetRow['fleet_start_galaxy'] . "' AND ";
        $QryUpdatePlanet .= "`system` = '" . $FleetRow['fleet_start_system'] . "' AND ";
        $QryUpdatePlanet .= "`planet` = '" . $FleetRow['fleet_start_planet'] . "' AND ";
        $QryUpdatePlanet .= "`planet_type` = '" . $FleetRow['fleet_start_type'] . "' ";
    } else {
        $QryUpdatePlanet .= "`galaxy` = '" . $FleetRow['fleet_end_galaxy'] . "' AND ";
        $QryUpdatePlanet .= "`system` = '" . $FleetRow['fleet_end_system'] . "' AND ";
        $QryUpdatePlanet .= "`planet` = '" . $FleetRow['fleet_end_planet'] . "' AND ";
        $QryUpdatePlanet .= "`planet_type` = '" . $FleetRow['fleet_end_type'] . "' ";
    }
    $QryUpdatePlanet .= "LIMIT 1;";
    doquery($QryUpdatePlanet, 'planets');
}
Exemplo n.º 26
0
function GetBuildingTime($user, $planet, $Element)
{
    global $pricelist, $resource, $reslist, $game_config;
    $level = $planet[$resource[$Element]] ? $planet[$resource[$Element]] : $user[$resource[$Element]];
    if (in_array($Element, $reslist['build'])) {
        $cost_metal = floor($pricelist[$Element]['metal'] * pow($pricelist[$Element]['factor'], $level));
        $cost_crystal = floor($pricelist[$Element]['crystal'] * pow($pricelist[$Element]['factor'], $level));
        $time = ($cost_crystal + $cost_metal) / $game_config['game_speed'] * (1 / ($planet[$resource['14']] + 1)) * pow(0.5, $planet[$resource['15']]);
        $time = floor($time * 60 * 60 * (1 - $user['rpg_constructeur'] * CONSTRUCTEUR));
    } elseif (in_array($Element, $reslist['tech'])) {
        $cost_metal = floor($pricelist[$Element]['metal'] * pow($pricelist[$Element]['factor'], $level));
        $cost_crystal = floor($pricelist[$Element]['crystal'] * pow($pricelist[$Element]['factor'], $level));
        $intergal_lab = $user[$resource[123]];
        if ($intergal_lab < 1) {
            $lablevel = $planet[$resource['31']];
        } else {
            $limite = $intergal_lab + 1;
            $inves = doquery("SELECT laboratory FROM {{table}} WHERE id_owner='" . $user['id'] . "' ORDER BY laboratory DESC limit " . $limite . "", 'planets');
            $lablevel = 0;
            while ($row = mysql_fetch_array($inves)) {
                $lablevel += $row['laboratory'];
            }
        }
        $time = ($cost_metal + $cost_crystal) / $game_config['game_speed'] / (($lablevel + 1) * 2);
        $time = floor($time * 60 * 60 * (1 - $user['rpg_scientifique'] * SCIENTIFIQUE));
    } elseif (in_array($Element, $reslist['defense'])) {
        $time = ($pricelist[$Element]['metal'] + $pricelist[$Element]['crystal']) / $game_config['game_speed'] * (1 / ($planet[$resource['21']] + 1)) * pow(1 / 2, $planet[$resource['15']]);
        $time = floor($time * 60 * 60 * (1 - ($user['rpg_general'] * GENERAL + $user['rpg_defenseur'] * DEFENSEUR)));
    } elseif (in_array($Element, $reslist['fleet'])) {
        $time = ($pricelist[$Element]['metal'] + $pricelist[$Element]['crystal']) / $game_config['game_speed'] * (1 / ($planet[$resource['21']] + 1)) * pow(1 / 2, $planet[$resource['15']]);
        $time = floor($time * 60 * 60 * (1 - ($user['rpg_general'] * GENERAL + $user['rpg_technocrate'] * TECHNOCRATE)));
    }
    return $time;
}
Exemplo n.º 27
0
/**
 * BuildFlyingFleetTable.php
 *
 * @version 1
 * @copyright 2008 By Chlorel for XNova
 */
function BuildFlyingFleetTable()
{
    global $lang;
    $TableTPL = gettemplate('admin/fleet_rows');
    $FlyingFleets = doquery("SELECT * FROM {{table}} ORDER BY `fleet_end_time` ASC;", 'fleets');
    while ($CurrentFleet = mysql_fetch_assoc($FlyingFleets)) {
        $FleetOwner = doquery("SELECT `username` FROM {{table}} WHERE `id` = '" . $CurrentFleet['fleet_owner'] . "';", 'users', true);
        $TargetOwner = doquery("SELECT `username` FROM {{table}} WHERE `id` = '" . $CurrentFleet['fleet_target_owner'] . "';", 'users', true);
        $Bloc['Id'] = $CurrentFleet['fleet_id'];
        $Bloc['Mission'] = CreateFleetPopupedMissionLink($CurrentFleet, $lang['type_mission'][$CurrentFleet['fleet_mission']], '');
        $Bloc['Mission'] .= "<br>" . ($CurrentFleet['fleet_mess'] == 1 ? "R" : "A");
        $Bloc['Fleet'] = CreateFleetPopupedFleetLink($CurrentFleet, $lang['tech'][200], '');
        $Bloc['St_Owner'] = "[" . $CurrentFleet['fleet_owner'] . "]<br>" . $FleetOwner['username'];
        $Bloc['St_Posit'] = "[" . $CurrentFleet['fleet_start_galaxy'] . ":" . $CurrentFleet['fleet_start_system'] . ":" . $CurrentFleet['fleet_start_planet'] . "]<br>" . ($CurrentFleet['fleet_start_type'] == 1 ? "[P]" : ($CurrentFleet['fleet_start_type'] == 2 ? "D" : "L")) . "";
        $Bloc['St_Time'] = date('G:i:s d/n/Y', $CurrentFleet['fleet_start_time']);
        if (is_array($TargetOwner)) {
            $Bloc['En_Owner'] = "[" . $CurrentFleet['fleet_target_owner'] . "]<br>" . $TargetOwner['username'];
        } else {
            $Bloc['En_Owner'] = "";
        }
        $Bloc['En_Posit'] = "[" . $CurrentFleet['fleet_end_galaxy'] . ":" . $CurrentFleet['fleet_end_system'] . ":" . $CurrentFleet['fleet_end_planet'] . "]<br>" . ($CurrentFleet['fleet_end_type'] == 1 ? "[P]" : ($CurrentFleet['fleet_end_type'] == 2 ? "D" : "L")) . "";
        if ($CurrentFleet['fleet_mission'] == 15) {
            $Bloc['Wa_Time'] = date('G:i:s d/n/Y', $CurrentFleet['fleet_stay_time']);
        } else {
            $Bloc['Wa_Time'] = "";
        }
        $Bloc['En_Time'] = date('G:i:s d/n/Y', $CurrentFleet['fleet_end_time']);
        $table .= parsetemplate($TableTPL, $Bloc);
    }
    return $table;
}
Exemplo n.º 28
0
function GetBuildingTime($user, $planet, $Element, $destroy = false)
{
    global $pricelist, $resource, $reslist, $game_config;
    //Get the cost
    $cost = GetBuildingPrice($user, $planet, $Element, true, $destroy, false);
    $cost = $cost['metal'] + $cost['crystal'];
    if (in_array($Element, $reslist['build'])) {
        // For buildings
        $time = $cost / $game_config['game_speed'] * (1 / ($planet[$resource['14']] + 1)) * pow(0.5, $planet[$resource['15']]);
        $time = floor($time * 60 * 60);
        //Else if its a research
    } elseif (in_array($Element, $reslist['tech'])) {
        // For research
        //Intergalactic Research Network
        $lablevel = $planet[$resource['31']];
        //If we have IRN
        if ($user[$resource[123]] > 0) {
            $empire = doquery("SELECT `" . $resource['31'] . "` FROM {{table}} WHERE `id_owner` ='" . $user['id'] . "' AND `id` <>'" . $user['current_planet'] . "' ORDER BY `" . $resource['31'] . "` DESC LIMIT 0 , " . $user[$resource[123]] . " ;", 'planets');
            //Loop through colonies
            while ($colonie = mysql_fetch_array($empire)) {
                //Add there lab level to combined lab level
                $lablevel += $colonie[$resource['31']];
            }
        }
        //IRN
        $time = $cost / $game_config['game_speed'] / (($lablevel + 1) * 2);
        $time = floor($time * 60 * 60);
    } elseif (in_array($Element, $reslist['defense']) || in_array($Element, $reslist['fleet'])) {
        // For shipyard / defense
        $time = $cost / $game_config['game_speed'] * (1 / ($planet[$resource['21']] + 1)) * pow(1 / 2, $planet[$resource['15']]);
        $time = floor($time * 60 * 60);
    }
    return $time;
}
Exemplo n.º 29
0
function upd_log_version_update()
{
    global $new_version;
    doquery('START TRANSACTION;');
    upd_add_more_time();
    upd_log_message("Detected outdated version {$new_version}. Upgrading...");
}
Exemplo n.º 30
0
function checkcookies()
{
    include 'config.php';
    $row = false;
    if (isset($_COOKIE["dkgame"])) {
        // COOKIE FORMAT:
        // {ID} {USERNAME} {PASSWORDHASH} {REMEMBERME}
        $theuser = explode(" ", $_COOKIE["dkgame"]);
        $query = doquery("SELECT * FROM {{table}} WHERE username='******'1']}'", "users");
        if (mysql_num_rows($query) != 1) {
            die("Cookie inválido (Erro 1). Por favor apague os cookies do seu navegador e logue novamente.");
        }
        $row = mysql_fetch_array($query);
        if ($row["id"] != $theuser[0]) {
            die("Cookie inválido (Erro 2). Por favor apague os cookies do seu navegador e logue novamente.");
        }
        if (md5($row["password"] . "--" . $dbsettings["secretword"]) !== $theuser[2]) {
            die("Cookie inválido (Erro 3). Por favor apague os cookies do seu navegador e logue novamente.");
        }
        // If we've gotten this far, cookie should be valid, so write a new one.
        $newcookie = implode(" ", $theuser);
        if ($theuser[3] == 1) {
            $expiretime = time() + 31536000;
        } else {
            $expiretime = 0;
        }
        setcookie("dkgame", $newcookie, $expiretime, "/", "", 0);
        $onlinequery = doquery("UPDATE {{table}} SET onlinetime=NOW() WHERE id='{$theuser['0']}' LIMIT 1", "users");
    }
    return $row;
}