Example #1
0
$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);
Example #2
0
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;
}