Kommunauty
Connexion
Inscription

Une suggestion


mexo Messages : 96

Bonjour à tous.

Voila, je veut faire une peu le même principe pour les colonisations que pour les expéditions.

En gros, quand on colonise une planète on peut trouver des vaisseaux abandonner ou autres.

J'ai réellement besoin de votre aide SVP pour faire cela. J’essaie de me baser avec le codage des éxpéditions je n'y arrive vraiment pas.

Besoin d'un gros coup de main svp ... Merci

dimanche 16 mars 2014

Homer Messages : 1877

Salut,

alors ça peut être tout simple

Dans la partie du code qui s'occupe de créer une planète (CreateOnePlanetRecord.php )

Tu peux rajouter un code qui génére de la flotte en fonction de ce que tu veux (techno, point ect...)

jeudi 20 mars 2014

Tomas117 Messages : 433

En reprenant le code de l'expedition(unepartie de la fonction), cela marcherai ou il faut faire un code complètement différent ?

car je ne sais pas trop quoi modifier dans le code des expe, j'ai pomper :

global $pricelist, $db, $reslist, $LANG, $CONFIG;

foreach($reslist['fleet'] as $ID)

{

$Expowert[$ID] = ($pricelist[$ID]['metal'] + $pricelist[$ID]['crystal'] + $pricelist[$ID]['norio']) / 1000;

}

$Expowert[202] = 12;

$Expowert[203] = 47;

$Expowert[204] = 12;

$Expowert[205] = 110;

$Expowert[206] = 47;

$Expowert[207] = 160;

$farray = explode(";", $this->_fleet['fleet_array']);

$FleetPoints = 0;

$FleetCapacity = 0;

foreach ($farray as $Item => $Group)

{

if (empty($Group)) continue;

$Class = explode (",", $Group);

$FleetCount[$Class[0]] = $Class[1];

$FleetCapacity += $Class[1] * $pricelist[$Class[0]]['capacity'];

$FleetPoints += $Class[1] * $Expowert[$Class[0]];

}

$FleetCapacity -= $this->_fleet['fleet_resource_metal'] + $this->_fleet['fleet_resource_crystal'] + $this->_fleet['fleet_resource_deuterium'] + $this->_fleet['fleet_resource_darkmatter'] + $this->_fleet['fleet_resource_norio'];

$GetEvent = mt_rand(1, 9);

switch($GetEvent)

{

case 1:

default:

$FindSize = mt_rand(0, 100);

if(10 < $FindSize) {

$Size = mt_rand(10, 50);

$Message = $LNG['sys_expe_found_ships_1_'.mt_rand(1,4)];

$MaxFound = 300000;

} elseif(0 < $FindSize && 10 >= $FindSize) {

$Size = mt_rand(52, 100);

$Message = $LNG['sys_expe_found_ships_2_'.mt_rand(1,2)];

$MaxFound = 600000;

} elseif(0 == $FindSize) {

$Size = mt_rand(102, 200);

$Message = $LNG['sys_expe_found_ships_3_'.mt_rand(1,2)];

$MaxFound = 1200000;

}

$StatFactor = $db->countquery("SELECT MAX(total_points) FROM `".STATPOINTS."` WHERE `stat_type` = 1 AND `universe` = '".$this->_fleet['fleet_universe']."';");

$MaxPoints = ($StatFactor < 5000000) ? 4500 : 6000;

$FoundShips = max(round($Size * min($FleetPoints, $MaxPoints)), 10000);

$FoundShipMess = "";

$NewFleetArray = "";

$LNG += $LANG->GetUserLang($this->_fleet['fleet_owner'], array('TECH'));

$Found = array();

foreach($reslist['fleet'] as $ID)

{

if(!isset($FleetCount[$ID]) || $ID == 208 || $ID == 209 || $ID == 214)

continue;

$MaxFound = floor($FoundShips / ($pricelist[$ID]['metal'] + $pricelist[$ID]['crystal'] + $pricelist[$ID]['norio']));

if($MaxFound <= 0)

continue;

$Count = mt_rand(0, $MaxFound);

if($Count <= 0)

#if($MaxFound <= 0)

continue;

$Found[$ID] += $Count;

$FoundShips -= $Count * ($pricelist[$ID]['metal'] + $pricelist[$ID]['crystal'] + $pricelist[$ID]['norio']);

$FoundShipMess .= '<br>'.$LNG['tech'][$ID].': '.pretty_number($Count);

if($FoundShips <= 0)

break;

}

foreach($FleetCount as $ID => $Count)

$NewFleetArray .= $ID.",".floattostring($Count + $Found[$ID]).";";

$Message .= $FoundShipMess;

$this->UpdateFleet('fleet_array', $NewFleetArray);

$this->UpdateFleet('fleet_amount', array_sum($FleetCount));

break;

SendSimpleMessage($this->_fleet['fleet_owner'], 0, $this->_fleet['fleet_end_stay'], 15, $LNG['sys_mess_tower'], $LNG['sys_expe_report'], $Message);

$this->UpdateFleet('fleet_mess', 1);

$this->SaveFleet();

Je pense que c'est la la partie plus interessante

jeudi 20 mars 2014

Homer Messages : 1877

tu peux t'en inspirer en effet

vendredi 21 mars 2014

Tomas117 Messages : 433

s'aurai tu a peux près ce qu'il faut modifier ou ajoute ?

vendredi 21 mars 2014

Homer Messages : 1877

en gros, il faut généré une flotte aléatoire, pour ça tu peux t'inspirer de mon bot d'attaque qui génère une flotte

ensuite, lors de la création de la planète, tu rajoute les vaisseaux dans la requête, c'est tout, 2 étages

vendredi 21 mars 2014

Tomas117 Messages : 433

mon bot d'attaque

Tu l'as quelque part ?

samedi 22 mars 2014

Homer Messages : 1877

cherche sur le forum

dimanche 23 mars 2014

mexo Messages : 96

roh

dimanche 23 mars 2014

Tomas117 Messages : 433

Je n'ai pas trouvé avec la fonction recherche en tapant bot ataque, ou bot , ou attaque

lundi 24 mars 2014

Page suivante »