<?php $ugamela_root_path = './'; include($ugamela_root_path . 'extension.inc'); include($ugamela_root_path . 'common.'.$phpEx); includeLang('stat'); $dpath = (!$user["dpath"]) ? DEFAULT_SKINPATH : $user["dpath"]; $parse = $lang; // // Formulario donde se muestran los diferentes tipos de categoria // y los rangos // $parse['who'] = ' (($who == "player") ? " SELECTED" : "").'>Gracz (($who == "ally") ? " SELECTED" : "").'>Sojusz'; $parse['type'] = ' (($type == "pts") ? " SELECTED" : "").'>Punkty (($type == "flt") ? " SELECTED" : "").'>Floty (($type == "res") ? " SELECTED" : "").'>Badania'; $parse['start'] = ' (($start == "1") ? " SELECTED" : "").'>1-100 (($start == "101") ? " SELECTED" : "").'>101-200 (($start == "201") ? " SELECTED" : "").'>201-300 (($start == "301") ? " SELECTED" : "").'>301-400 (($start == "401") ? " SELECTED" : "").'>401-500 (($start == "501") ? " SELECTED" : "").'>501-600 (($start == "601") ? " SELECTED" : "").'>601-700 (($start == "701") ? " SELECTED" : "").'>701-800 (($start == "801") ? " SELECTED" : "").'>801-900 (($start == "901") ? " SELECTED" : "").'>901-1000 (($start == "1001") ? " SELECTED" : "").'>1001-1100 (($start == "1101") ? " SELECTED" : "").'>1101-1200 (($start == "1201") ? " SELECTED" : "").'>1201-1300 (($start == "1301") ? " SELECTED" : "").'>1301-1400 (($start == "1401") ? " SELECTED" : "").'>1401-1500'; // // Parece que fuera ayer, que solo el juego era una fachada. // Bueno, Here we go! // if($who == "ally"){ $parse['body_table'] = parsetemplate(gettemplate('stat_alliancetable_header'), $parse); //pequeďż˝ fix para prevenir desastres //pequeĂąa condicion //Realizamos la quiery en la table de jugadores $query = doquery('SELECT * FROM {{table}} ORDER BY ally_points DESC LIMIT '.($start).',100','alliance'); $start++; $parse['body_values'] = '';//en caso de que no hubieran datos... $parse['data'] = $game_config['stats']; $parse['ally_rank'] = $start; $parse['ally_rankplus'] = '*'; $parse['ally_mes'] = ''; $parse['ally_members'] = $row['ally_members']; if($type == "res"){ $ally_points = $row['ally_points_tech']; }elseif($type == "flt"){ $ally_points = $row['ally_points_fleet']; }else{ } $parse['ally_points'] = pretty_number($ally_points); $parse['body_values'] .= parsetemplate(gettemplate('stat_alliancetable'), $parse); $start++; } } else{ $parse['body_table'] = parsetemplate(gettemplate('stat_playertable_header'), $parse); //pequeďż˝ fix para prevenir desastres //pequeĂąa condicion //Realizamos la quiery en la table de jugadores if($type == "res"){ $query = doquery('SELECT * FROM {{table}} ORDER BY points_tech DESC LIMIT '.$start.',100','users'); }elseif($type == "flt"){ $query = doquery('SELECT * FROM {{table}} ORDER BY points_fleet DESC LIMIT '.$start.',100','users'); }else{ $query = doquery('SELECT * FROM {{table}} ORDER BY points_points DESC LIMIT '.$start.',100','users'); } $start++; $parse['data'] = $game_config['stats']; $parse['body_values'] = '';//en caso de que no hubieran datos... $playername_rank = $row['username']; $rank_old = $row['rank_old']; // $query_rank = doquery("UPDATE {{table}} SET `rank_old`='{$rank_old}' WHERE `username` = '{$playername_rank}'" ,"users"); $parse['player_rank'] = $start; $rank_new = $start; $ranking = $rank_old - $rank_new; if ($ranking == "0") { $parse['player_rankplus'] = "0"; } if ($ranking < "0") { $parse['player_rankplus'] = "$ranking"; } if ($ranking > "0") { $parse['player_rankplus'] = "+$ranking"; } // $query_rank = doquery("UPDATE {{table}} SET `rank`='{$start}' WHERE `username` = '{$playername_rank}'" ,"users"); //$parse['player_rankplus'] = '*'; $parse['player_name'] = $row['username']; $parse['player_mes'] = '<a href="messages.php?mode=write&id='.$row['id'].'"> <imgsrc="'.$dpath.'img/m.gif" border="0" alt="Napisz Wiadomość" /></a>'; $parse['player_alliance'] = $row['ally_name']; if($type == "res"){ $parse['player_points'] = pretty_number($row['points_tech']); }elseif($type == "flt"){ $parse['player_points'] = pretty_number($row['points_fleet']); }else{ $parse['player_points'] = pretty_number($row['points_points']/1000); } $parse['body_values'] .= parsetemplate(gettemplate('stat_playertable'), $parse); $start++; } } $page = parsetemplate(gettemplate('stat_body'), $parse); display($page,$lang['Resources']); // // bueno, no se pudo hacer mucho que digamos ... // // Created by Perberos. All rights reversed Š 2006 ?>
Kod jaki odpowiada (moim zdaniem) za wyliczenia wartości sojuszu to:
<?php f($who == "ally"){ $parse['body_table'] = parsetemplate(gettemplate('stat_alliancetable_header'), $parse); //pequeďż˝ fix para prevenir desastres //pequeĂąa condicion //Realizamos la quiery en la table de jugadores $query = doquery('SELECT * FROM {{table}} ORDER BY ally_points DESC LIMIT '.($start).',100','alliance'); $start++; $parse['body_values'] = '';//en caso de que no hubieran datos... $parse['data'] = $game_config['stats']; $parse['ally_rank'] = $start; $parse['ally_rankplus'] = '?'; //';
$parse['ally_members'] = $row['ally_members']; if($type == "res"){ $ally_points = $row['ally_points_tech']; }elseif($type == "flt"){ $ally_points = $row['ally_points_fleet']; }else{ } $parse['ally_points'] = pretty_number($ally_points); $parse['body_values'] .= parsetemplate(gettemplate('stat_alliancetable'), $parse); $start++; } } else{ $parse['body_table'] = parsetemplate(gettemplate('stat_playertable_header'), $parse); ?>
Wartości [ally_members] [ally_points] [ally_points_flee] są wartościami z bazy danych. Są znacząco większe od tych jakie powinn być. Blędy są w naliczaniu punkty ogólnych, floty oraz badaniach.
UWAGA: Wartości punktów pojedyńczych graczy są liczone prawidłowo.
-------------------------
do PHP są odpowiednie znaczniki BBCode
a nie tylko [code] do wszystkiego
~Cienki1980