<?php require 'config.php'; $res = runsql("select UserID from ut_users"); while ($r = mysql_fetch_array($res)) { lock_rst($r[UserID]); $rst = read_rst($r[UserID]); $serialized = $rst[Gladiators]; $salary = 0; foreach ($rst[Gladiators] as $k => $gladiator) { //старение--------------------- if (round(date("d", mktime())) == 1) { $rst[Gladiators][$k][Age] = $rst[Gladiators][$k][Age] + 1; } //тренировка-------------------- $exp = expgained($rst, 1); if ($k == 103) { print "{$exp} -- "; exit; } if (strlen($exp)) { $rst[Gladiators][$k][Exp] = floor($rst[Gladiators][$k][Exp] + $exp); //print "$k=> ".$rst[Gladiators][$k][Exp]." = ".expgained($rst,1)."<br>"; $rst[Gladiators][$k][NextTrain] = 0; runsql("update ut_gladiators \nset \nExp='" . $rst[Gladiators][$k][Exp] . "',\nLevel='" . $rst[Gladiators][$k][Level] . "',\nTypeID='" . $rst[Gladiators][$k][TypeID] . "',\nRating='" . $rst[Gladiators][$k][Rating] . "',\nVit='" . $rst[Gladiators][$k][Vit] . "',\nDex='" . $rst[Gladiators][$k][Dex] . "',\nAcc='" . $rst[Gladiators][$k][Acc] . "',\nStr='" . $rst[Gladiators][$k][Str] . "',\nVit='" . $rst[Gladiators][$k][Vit] . "',\n\nWin='" . $rst[Gladiators][$k][Win] . "',\nTie='" . $rst[Gladiators][$k][Tie] . "',\nLose='" . $rst[Gladiators][$k][Lose] . "'\n\nwhere GladiatorID='{$k}'"); } if ($rst[Gladiators][$k][StatusID] > 1) { $salary += round($rst[Gladiators][$k][Price] / 10); } } $rst[TrainDate] = mktime();
$rst[Gladiators][$id][Vit] = $_GET['Vit']; $rst[Gladiators][$id][Dex] = $_GET['Dex']; $rst[Gladiators][$id][Acc] = $_GET['Acc']; $rst[Gladiators][$id][Str] = $_GET['Str']; $auth->rst = $rst; write_rst($auth->user, $rst); } unlock_rst($auth->user); header("Location:/xml/gladiators/train.php"); } require $site_path . "up.php"; require $site_path . "left.php"; $gladiator = $auth->rst[Gladiators][$id]; $k = $id; unset($serialized); $gladiator[Exp] = round($gladiator[Exp] + expgained($auth->rst)); $exp = $gladiator[Exp]; $q = select("select Level from ut_exp where Points<='{$exp}' order by Level desc limit 0,1"); $points = ($q[Level] - $gladiator[Level]) * 3; if ($id && $gladiator && $points > 0) { ?> <table border=0 bgcolor=#78746C cellspacing=1 cellpadding=4> <tr bgcolor=#545E61><td colspan=3><img align=absmiddle src=/images/types/<?php echo $gladiator[TypeID]; ?> .gif> <?php echo $gladiator[Name]; ?> [<?php
function get_gladiators($id, $mode) { global $type, $k, $site_path, $serialized, $lang, $sort; if ($mode == 2) { return true; } $file = fopen($site_path . "files/rst/{$id}.rst", "r"); $str = fread($file, filesize($site_path . "files/rst/{$id}.rst")); $str = substr($str, 39); fclose($file); $r = unserialize($str); $rst = $r; $serialized = $r[Gladiators]; foreach ($r[Gladiators] as $k => $v) { $serialized[$k][GladiatorID] = $k; $status = $r[Gladiators][$k][StatusID]; if (!$status) { $status = 1; } if ($status == 1) { $serialized[$k][Status] = "–аб"; } elseif ($status == 2) { $serialized[$k][Status] = "Ќаемник"; } elseif ($status == 3) { $serialized[$k][Status] = "–удиарий"; } //физа от времени последнего бо¤ и настройки $serialized[$k][Stamina] = get_stamina($serialized[$k][Stamina], $serialized[$k][PercentTrain], $r[Date]); $serialized[$k][Morale] = get_morale($serialized[$k][Morale], $r[Date]); $serialized[$k][Injury] = get_injury($serialized[$k][Stamina], $r[Date]); $serialized[$k][Gladiator] = "<a href=/gladiators/{$k}>" . $r[Gladiators][$k][Name] . " [" . $serialized[$k][Level] . "]" . "</a>"; if ($type == "gladiators/roster") { $serialized[$k][Gladiator] .= " <img src=/images/status/" . $status . ".gif title=\"" . $serialized[$k][Status] . "\" align=absmiddle width=15px height=15px>"; } if ($serialized[$k][Injury] > 0 && $type == "gladiators/roster") { $serialized[$k][Gladiator] = $serialized[$k][Gladiator] . " <img src=/images/icons/inj.gif width=11px height=11px title=“равма> <b>" . $serialized[$k][Injury] . "</b>"; } $serialized[$k][Gladiator] = "<nobr>" . $serialized[$k][Gladiator] . "</nobr>"; $serialized[$k][Salary] = round($serialized[$k][Price] / 10); if ($serialized[$k][Stamina] < 0) { $serialized[$k][Hits] = 0; } else { $serialized[$k][Hits] = round($serialized[$k][Stamina] * $serialized[$k][Vit] / 10); } $serialized[$k][FullHits] = round(100 * $serialized[$k][Vit] / 10); $serialized[$k][Health] = "<b>" . $serialized[$k][Hits] . "</b> (" . $serialized[$k][FullHits] . ")"; $p = 100 * $serialized[$k][Hits] / $serialized[$k][FullHits]; if ($p <= 0) { $b = 6; } elseif ($p <= 40) { $b = 5; } elseif ($p > 40 && $p <= 60) { $b = 4; } elseif ($p > 60 && $p <= 80) { $b = 3; } elseif ($p > 80 && $p <= 90) { $b = 2; } elseif ($p > 90 && $p <= 100) { $b = 1; } $serialized[$k][bar] = $b; $c = $serialized[$k][CountryID]; $q = select("select Name_{$lang} from ut_countries where CountryID='{$c}'"); $serialized[$k][Country] = $q[0]; $c = $serialized[$k][TypeID]; $q = select("select Name_{$lang} from ut_gladiator_types where TypeID='{$c}'"); $serialized[$k][TypeName] = $q[0]; if ($mode == 1) { $serialized[$k][NewPercentTrain] = $serialized[$k][PercentTrain]; if (!strlen($serialized[$k][NewPercentTrain])) { $serialized[$k][NewPercentTrain] = 0; $serialized[$k][PercentTrain] = 0; } $trained = expgained($r); if ($trained) { $serialized[$k][Exp] += floor($trained); } if (!$serialized[$k][Trainer]) { $serialized[$k][ExpRaise] = '</b>'; if ($serialized[$k][TypeID] == 8) { $num = 3; } elseif ($serialized[$k][TypeID] > 8) { $num = 5; } elseif ($serialized[$k][TypeID] < 8) { $num = 1; } $serialized[$k][ExpRaise] .= "<a href=/xml/residence/staff.php?id={$num}>"; $serialized[$k][ExpRaise] .= 'нан¤ть тренера</a>'; } $exp = $serialized[$k][Exp]; $q = select("select Points from ut_exp where Points>'{$exp}' order by Level asc limit 0,1"); $nextlevel = "{$q['0']}"; //print "$exp - $nextlevel<br>"; } $serialized[$k][ShowExp] = $serialized[$k][Exp]; $q = select("select Level from ut_exp where Points<='{$exp}' order by Level desc limit 0,1"); if ($q[Level] > $serialized[$k][Level]) { $serialized[$k][ShowExp] = "<a href=/xml/gladiators/level.php?id={$k}><u><b>" . floor($serialized[$k][ShowExp]) . "</b></u></a>"; } else { $serialized[$k][ShowExp] = "<b>" . floor($serialized[$k][ShowExp]) . "</b>"; } $serialized[$k][ShowExp] .= " (" . $nextlevel . ")"; } if ($sort) { if (strstr($sort, " ")) { $srt = substr($sort, 0, strpos($sort, " ")); } else { $srt = $sort; } if (strstr($sort, " desc")) { usort($serialized, array(new CompareByDesc(), $srt)); } else { usort($serialized, array(new CompareBy(), $srt)); } } return $serialized; }