/** * @brief Calculates distance between 2 coordinates. * * @param[in] string $a, $b Coordinates ('g:s:p') * 'g1:s1:p1'->'g2:s2:p2' : normal distance calcul * ':s1:p1'->'x:s2:p2 : distance between system/planet (only system is ':s1:') * '::p1'->'x:x:p2 : distance between planet * @param[in] array $user_techno List of techno ('RC','RI','PH', only these are checked) * @param[in] string $class User class ($user_data['user_class']=array('user_class'=>'COL'/GEN/EXP/none)) * @param[in] array $server_config Info of universe ('num_of_galaxies','num_of_systems','donutGalaxy','donutSystem' only these are checked) default 9/499/1/1 * @return array(int 'distance','type') [default=O,'p'], type='g' for between galaxy, 's' for between system and 'p' for between a sub-system */ function ogame_fleet_distance($a, $b, $user_techno=null, $class='none', $server_config=null); //Exemples d'utilisations : $distance = ogame_fleet_distance($coord_from, $coord_to, $server_config); switch ($distance['type']) { case 'g': //between galaxy //faire quelque chose avec $distance['distance'] pour une distance entre galaxies break; case 's': //between system (so inside same galaxy) //faire quelque chose avec $distance['distance'] pour une distance entre systèmes d'une même galaxie break; case 'p': //between sub-system (so in same galaxy and same system) if ($distance['distance'] === 0) { // to moon/cdr //faire quelque chose avec $distance['distance'] pour une distance sur la même planète (lune ou cdr) } else { //to other planet in same system //faire quelque chose avec $distance['distance'] pour une distance entre planète d'un même sous-système } break; default: break; }