Kommunauty
Connexion
Inscription

[Problème] Astrophysique


SnakeFear Messages : 112

Bonjour ,

Alors voila, ca fait deux semaines que j'ai un problème sur l'astrophysique et je n'arrive pas à le résoudre. J'aimerais donc un peu d'aide

En effet la Technologie Astrophysique permet de faire une colonie tous les deux niveaux et malheureusement cette fonction ne marche pas du tout. On peut faire toute les colonies sans avoir développé cette dernière.

J'ai chercher dans le fichier includes\Constants.php et je penser que ca venais de :

define('PLANETS_PER_TECH' 		  , 1);	

J'ai mis la valeurs à 2, mais j''ai toujours le problème.

Ensuite j'ai trouver le fichier includes\classes\missions\MissionCaseColonisation.php

<?php



class MissionCaseColonisation extends MissionFunctions
{
function __construct($Fleet)
{
$this->_fleet = $Fleet;
}

function TargetEvent()
{
global $db, $resource, $LANG;
$iPlanetCount = $db->countquery("SELECT count(*) FROM ".PLANETS." WHERE `id_owner` = '". $this->_fleet['fleet_owner'] ."' AND `planet_type` = '1' AND `destruyed` = '0';");
$iGalaxyPlace = $db->countquery("SELECT count(*) AS plani FROM ".PLANETS." WHERE `id` = '".$this->_fleet['fleet_end_id']."';");
$Player = $db->uniquequery("SELECT `lang`, `authlevel`, `".$resource[124]."` FROM ".USERS." WHERE `id` = '".$this->_fleet['fleet_owner']."';");
$LNG = $LANG->GetUserLang($Player['lang']);
$MaxPlanets = MaxPlanets($Player[$resource[124]]);
if ($iGalaxyPlace != 0)
{
$TheMessage = sprintf($LNG['sys_colo_notfree'], GetTargetAdressLink($this->_fleet, ''));
$this->UpdateFleet('fleet_mess', 1);
}
elseif($iPlanetCount >= $MaxPlanets)
{
$TheMessage = sprintf($LNG['sys_colo_maxcolo'] , GetTargetAdressLink($this->_fleet, ''), $MaxPlanets);
$this->UpdateFleet('fleet_mess', 1);
}
else
{
require_once(ROOT_PATH.'includes/functions/CreateOnePlanetRecord.php');
$NewOwnerPlanet = CreateOnePlanetRecord($this->_fleet['fleet_end_galaxy'], $this->_fleet['fleet_end_system'], $this->_fleet['fleet_end_planet'], $this->_fleet['fleet_universe'], $this->_fleet['fleet_owner'], $LNG['fcp_colony'], false, $Player['authlevel']);
if($NewOwnerPlanet === false)
{
$TheMessage = sprintf($LNG['sys_colo_badpos'], GetTargetAdressLink($this->_fleet, ''));
$this->UpdateFleet('fleet_mess', 1);
}
else
{
$this->_fleet['fleet_end_id'] = $NewOwnerPlanet;
$TheMessage = sprintf($LNG['sys_colo_allisok'], GetTargetAdressLink($this->_fleet, ''));
$this->StoreGoodsToPlanet();
if ($this->_fleet['fleet_amount'] == 1) {
$this->KillFleet();
} else {
$CurrentFleet = explode(";", $this->_fleet['fleet_array']);
$NewFleet     = '';
foreach ($CurrentFleet as $Item => $Group)
{
if (empty($Group)) continue;

$Class = explode (",", $Group);
if ($Class[0] == 208 && $Class[1] > 1)
$NewFleet  .= $Class[0].",".($Class[1] - 1).";";
elseif ($Class[0] != 208 && $Class[1] > 0)
$NewFleet  .= $Class[0].",".$Class[1].";";
}
$this->UpdateFleet('fleet_array', $NewFleet);
$this->UpdateFleet('fleet_amount', ($this->_fleet['fleet_amount'] - 1));
$this->UpdateFleet('fleet_resource_metal', 0);
$this->UpdateFleet('fleet_resource_crystal', 0);
$this->UpdateFleet('fleet_resource_deuterium', 0);
$this->UpdateFleet('fleet_resource_norio', 0);
$this->UpdateFleet('fleet_mess', 1);
}
}
}
SendSimpleMessage($this->_fleet['fleet_owner'], 0, $this->_fleet['fleet_start_time'], 4, $LNG['sys_colo_mess_from'], $LNG['sys_colo_mess_report'], $TheMessage);
$this->SaveFleet();
}

function EndStayEvent()
{
return;
}

function ReturnEvent()
{
$this->RestoreFleet();
}
}
?>

J'ai vue que dans les les premières lignes il y avait :

		$Player			= $db->uniquequery("SELECT `lang`, `authlevel`, `".$resource[124]."` FROM ".USERS." WHERE `id` = '".$this->_fleet['fleet_owner']."';");
$LNG = $LANG->GetUserLang($Player['lang']);
$MaxPlanets = MaxPlanets($Player[$resource[124]]);

Et le chiffre 124 est bien l'identification de la technologie astrophysique.

Donc voila je suis vraiment embêter, avais vous d'autre piste ?

Je suis sur Xnova 5.9

Merci à tous de votre aide et de votre patience,

Bonne journée

jeudi 1 aout 2013

Homer Messages : 1862

Tu peux avoir autant de planète que tu veux ou pas ? parce qu'en faite tu as 3 constantes qui servent au planètes :

// NUMBER OF PLANETS THAT MAY HAVE A PLAYER WITHOUT TECHNO
define('STANDART_PLAYER_PLANETS'  , 2);

// MAXIMAL PLANETS ( -1 = unlimited )
define('MAX_PLANETS'              , 15);

// ADDED PLANET PRO 2 TECH LEVELS
define('PLANETS_PER_TECH'   , 1);

Et le nombre de planètes max en fonction de la techno c'est 1 planètes par techno, dans la à partir de la 3eme technologie car les 2 premières sont offerte, en gros, il faut retirer 2 niveau d'astro pour avoir ton nombre de planète max (Niveau astro 9 -> 7 planètes colonisables (1 + 6)) si tu met 2 en valeurs ça donne tu aura le droit à 12 planètes si jme trompe pas

jeudi 1 aout 2013

SnakeFear Messages : 112
// NUMBER OF PLANETS THAT MAY HAVE A PLAYER WITHOUT TECHNO
define('STANDART_PLAYER_PLANETS'  , 9);

// MAXIMAL PLANETS ( -1 = unlimited )
define('MAX_PLANETS'              , 10);

// ADDED PLANET PRO 2 TECH LEVELS
define('PLANETS_PER_TECH'   , 1);

Ah ca viens de :

// NOMBRE(NUMÉRO) DE PLANÈTES QUI PEUVENT AVOIR UN ACTEUR(JOUEUR) SANS TECHNO

Dit toi j'ai tout traduis sauf celle ci ... Donc je vais mettre à deux . Merci dieu homer c'est tout simple et j'ai fait le boulet , je te jure j'ai tout traduis et comme par magie cette ligne est apparue dans mon fichier quand j'ai lu ton topic

Merci , vraiment merci !

jeudi 1 aout 2013

Homer Messages : 1862

boulay

jeudi 1 aout 2013

SnakeFear Messages : 112

On m'appelle ?

TOPIC A FERMER

Encore merci

jeudi 1 aout 2013

Répondre Pour répondre, tu dois d'abord t'inscrire rapidement sur Kommunauty. Rejoins-nous vite !