$form_width = 170; require $engine_path . "cls/auth/session.php"; $act = "select"; $type = "gladiators/train"; if ($user && checkpriv("control/support", "")) { setvar('user', $user); } else { setvar('user', $auth->user); } if ($step) { lock_rst($auth->user); $do = 0; $auth->rst = update_exp($auth->rst); $auth->rst = update_health($auth->rst); foreach ($_POST['GladiatorID'] as $k => $v) { if (!(get_injury($auth->rst[Gladiators][$v][Injury], $auth->rst[Date]) > 0)) { $_POST['NewPercentTrain'][$k] = round($_POST['NewPercentTrain'][$k]); if ($_POST['NewPercentTrain'][$k] >= 0 && $_POST['NewPercentTrain'][$k] <= 100 && is_numeric($_POST['NewPercentTrain'][$k])) { if ($auth->rst[Gladiators][$v][PercentTrain] != $_POST['NewPercentTrain'][$k]) { $auth->rst[Gladiators][$v][PercentTrain] = $_POST['NewPercentTrain'][$k]; $do = 1; } } else { $error = 1; } } } if (!$error && $do) { write_rst($auth->user, $auth->rst); } unlock_rst($auth->user);
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; }