diff --git a/modules_data/titul.php b/modules_data/titul.php
index d7e866fd..e2171e70 100644
--- a/modules_data/titul.php
+++ b/modules_data/titul.php
@@ -7,11 +7,123 @@
if (!defined('GAME')) {
die();
}
-$sunduk1 = "i/titul/nagr1.gif";
-$sunduk2 = "i/titul/nagr2.gif";
-$sunduk3 = "i/titul/nagr3.gif";
-$sunduk4 = "i/titul/nagr4.gif";
-$sunduk5 = "i/titul/nagr5.gif";
+
+const TIERS = 'Ранги';
+const PRIZE = 'Награда';
+
+$achievement_data = [
+ 'zb' => [
+ 'quest' => 'Выполнить задания бабки.',
+ 'check' => ['Заданий', 5, 25, 50, 100, 250],
+ 'prize' => array_map(function ($int) {
+ return 'Жетон
успеха
' . $int;
+ }, [5, 20, 40, 60, 100]),
+ 'startlink' => 11
+ ],
+ 'vx' => [
+ 'quest' => 'Победить в хаотических боях.',
+ 'check' => ['Побед', 50, 300, 400, 500, 1000],
+ 'prize' => array_map(function ($int) {
+ return $int . 'екр.';
+ }, [25, 50, 75, 100, 200]),
+ 'startlink' => 21
+ ],
+ 'snt' => [
+ 'quest' => 'Открыть сундук трупожора.',
+ 'check' => ['Открытий', 5, 25, 50, 100, 250],
+ 'prize' => array_map(function ($int) {
+ return $int . 'екр.';
+ }, [10, 25, 50, 75, 200]),
+ 'startlink' => 31
+ ],
+ 'rp' => [
+ 'quest' => 'Получить руну при плавке плохих заготовок. [S]',
+ 'check' => ['Рун', 5, 10, 25, 50, 100],
+ 'prize' => array_map(function ($int) {
+ return 'Плохие
заготовки
' . $int;
+ }, [5, 7, 10, 12, 15]),
+ 'startlink' => 41
+ ],
+ 'rn' => [
+ 'quest' => 'Получить руну при плавке нормальных заготовок. [M]',
+ 'check' => ['Рун', 5, 10, 15, 25, 50],
+ 'prize' => array_map(function ($int) {
+ return 'Нормальные
заготовки
' . $int;
+ }, [5, 7, 9, 12, 15]),
+ 'startlink' => 51
+ ],
+ 'rb' => [
+ 'quest' => 'Получить руну при плавке идеальных заготовок. [L]',
+ 'check' => ['Рун', 2, 5, 8, 11, 15],
+ 'prize' => array_map(function ($int) {
+ return 'Идеальные
заготовки
' . $int;
+ }, [2, 4, 6, 10, 15]),
+ 'startlink' => 61
+ ],
+ 'pg' => [
+ 'quest' => 'Поучаствовать в героическом сражении.',
+ 'check' => ['Участий', 100, 200, 400, 600, 1000],
+ 'prize' => array_map(function ($int) {
+ return 'Жетон
успеха
' . $int;
+ }, [10, 20, 40, 60, 80]),
+ 'startlink' => 71
+ ],
+ 'bv' => [
+ 'quest' => 'Продать бабушке найденные вещи в пещере.',
+ 'check' => ['Продаж', 5, 25, 50, 100, 250],
+ 'prize' => array_map(function ($int) {
+ return $int . 'кр.';
+ }, [500, 1000, 2000, 4000, 5000]),
+ 'startlink' => 81
+ ],
+ 'kw' => [
+ 'quest' => 'Победить в клановой войне.',
+ 'check' => ['Побед', 5, 10, 15, 20, 25],
+ 'prize' => array_map(function ($int) {
+ return 'Свиток
кланового
опыта ' . $int;
+ }, [1, 2, 5, 10, 15]),
+ 'startlink' => 91
+ ],
+ 'pa' => [ # not implemented!
+ 'quest' => 'Получить покровительство Ангела.',
+ 'check' => ['Получено', 5, 25, 50, 100, 250],
+ 'prize' => null,
+ 'startlink' => null
+ ],
+ 'bs' => [
+ 'quest' => 'Победы в башне смерти.',
+ 'check' => ['Побед', 1, 5, 10, 50, 500],
+ 'prize' => array_map(function ($int) {
+ return $int . 'екр.';
+ }, [1, 5, 10, 50, 200]),
+ 'startlink' => 101
+ ],
+ 'trn' => [ # not implemented!
+ 'quest' => 'Победы в турнирах.',
+ 'check' => ['Побед', 25, 50, 100, 200, 500],
+ 'prize' => array_map(function ($int) {
+ return $int . 'екр.';
+ }, [25, 25, 25, 25, 50]),
+ 'startlink' => null
+ ],
+];
+
+function table($rows, $class = '', $fill = false)
+{
+ $c = '';
+ $max_rows = sizeof(max($rows));
+
+ foreach ($rows as $row) {
+ if ($fill && sizeof($row) < $max_rows) {
+ $row = array_merge($row, array_fill(0, $max_rows - sizeof($row), ''));
+ }
+
+ $c .= '
' . implode(' | ', $row) . ' |
';
+ }
+
+ return (!empty($class) ? "" : '' . PHP_EOL;
+}
+
$ai = $u->achivInf($u->info['id'], 1);
if (isset($_GET['nagr'])) {
if ( //Это надо переписать полностью. Эта проверка - сраный костыль.
@@ -435,580 +547,79 @@ if (isset($_GET['nagr'])) {
//-------------
mysql_query("INSERT INTO `chat` (`new`,`city`,`room`,`login`,`to`,`text`,`time`,`type`,`toChat`) VALUES ('1','" . $u->info['city'] . "','" . $u->info['room'] . "','','" . $u->info['login'] . "','" . $nagrtxt . "','-1','6','0')");
}
+function drawSunduk($nagr, $whatInside, $tier)
+{
+ echo vsprintf('',
+ [
+ "location.href='\main.php?titul&nagr=$nagr'",
+ "top.hi(this, 'Сундук $tier ранга
Содержит:
$whatInside', event, 2, 0, 1, 1, 'max-width:307px')",
+ "top.hic();",
+ "top.hic();",
+ "https://img.new-combats.com/i/titul/nagr$tier.gif"
+ ]);
+}
?>
-
-
-
+
+
+
+
+
+
+
Достижения
- $zd = 'zb'; ?>
- echo $ai['name' . $zd]; ?>
-Выполнить задания бабки.
-Сейчас у Вас Ранг: echo $ai['klas' . $zd]; ?>. Количество выполнений: echo $ai[$zd]; ?>
- = echo $ai['klasP' . $zd]; ?>%
-Выполнить задания бабки.
-
-
-
-
- Ранги |
- 1 |
- 2 |
- 3 |
- 4 |
- 5 |
-
-
- Заданий |
- 5 |
- 25 |
- 50 |
- 100 |
- 250 |
-
-
- Награда |
- Жетон успеха 5 |
- Жетон успеха 20 |
- Жетон успеха 40 |
- Жетон успеха 60 |
- Жетон успеха 100 |
-
-
-
-
-
-if ($ai['klas' . $zd] > $ai[$zd . '_n']) //Бабка задание
-{
- echo '
Награда:
';
- if ($ai[$zd . '_n'] == 0) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 1) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 2) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 3) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 4) {
- echo '';
+ $value) {
+ echo '' . $ai['name' . $key] . '
';
+ echo '' . $value[$key]['quest'] . '';
+ echo 'Сейчас у Вас Ранг: ' . $ai['klas' . $key] . '';
+ echo 'Количество выполнений: ' . $ai[$key] . ' =' . $ai['klasP' . $key] . '%';
+ echo table([
+ [TIERS, 1, 2, 3, 4, 5],
+ $value[$key]['check'],
+ array_merge([PRIZE], $value[$key]['prize'])
+ ], 'prizelist', true);
+ # If has new tier, AND only first 5 tiers AND prize is set.
+ if (
+ $ai['klas' . $key] > $ai[$key . '_n'] &&
+ in_array($ai[$key . '_n'], [0, 1, 2, 3, 4]) &&
+ !empty($value[$key]['prize']) &&
+ !empty($value[$key]['startlink'])
+ ) {
+ echo '
' . PRIZE . ':
';
+ drawSunduk(
+ $ai[$key . '_n'] + $value[$key]['startlink'],
+ $value[$key]['prize'][$ai[$key . '_n']],
+ $ai[$key . '_n'] + $value[$key]['startlink']
+ );
}
+ echo '
';
}
-?>
-
- $zd = 'vx'; ?>
- echo $ai['name' . $zd]; ?>
-Победить в хаотических боях.
-Сейчас у Вас Ранг: echo $ai['klas' . $zd]; ?>. Количество выполнений: echo $ai[$zd]; ?>
- = echo $ai['klasP' . $zd]; ?>%
-Победить в хаотических боях.
-
-
-
-
- Ранги |
- 1 |
- 2 |
- 3 |
- 4 |
- 5 |
-
-
- Побед |
- 50 |
- 300 |
- 400 |
- 500 |
- 1000 |
-
-
- Награда |
- 25 екр. |
- 50 екр. |
- 75 екр. |
- 100 екр. |
- 200 екр. |
-
-
-
-
-if ($ai['klas' . $zd] > $ai[$zd . '_n']) //Хаот задание
-{
- echo '
Награда:
';
- if ($ai[$zd . '_n'] == 0) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 1) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 2) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 3) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 4) {
- echo '';
- }
-}
-?>
-
- $zd = 'snt'; ?>
- echo $ai['name' . $zd]; ?>
-Открыть сундук трупожора.
-Сейчас у Вас Ранг: echo $ai['klas' . $zd]; ?>. Количество выполнений: echo $ai[$zd]; ?>
- = echo $ai['klasP' . $zd]; ?>%
-Открыть сундук трупожора.
-
-
-
-
- Ранги |
- 1 |
- 2 |
- 3 |
- 4 |
- 5 |
-
-
- Открытий |
- 5 |
- 25 |
- 50 |
- 100 |
- 250 |
-
-
- Награда |
- 10 екр. |
- 25 екр. |
- 50 екр. |
- 75 екр. |
- 200 екр. |
-
-
-
-
-if ($ai['klas' . $zd] > $ai[$zd . '_n']) //Сундук задание
-{
- echo '
Награда:
';
- if ($ai[$zd . '_n'] == 0) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 1) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 2) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 3) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 4) {
- echo '';
- }
-}
-?>
-
- $zd = 'rp'; ?>
- echo $ai['name' . $zd]; ?>
-Получить руну при плавке плохих заготовок. ( S руну )
-Сейчас у Вас Ранг: echo $ai['klas' . $zd]; ?>. Количество выполнений: echo $ai[$zd]; ?>
- = echo $ai['klasP' . $zd]; ?>%
-Получить руну при плавке плохих заготовок. ( S руну )
-
-
-
-
- Ранги |
- 1 |
- 2 |
- 3 |
- 4 |
- 5 |
-
-
- Рун |
- 5 |
- 10 |
- 25 |
- 50 |
- 100 |
-
-
- Награда |
- Плохие заготовки 5 |
- Плохие заготовки 7 |
- Плохие заготовки 10 |
- Плохие заготовки 12 |
- Плохие заготовки 15 |
-
-
-
-
-if ($ai['klas' . $zd] > $ai[$zd . '_n']) //S задание
-{
- echo '
Награда:
';
- if ($ai[$zd . '_n'] == 0) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 1) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 2) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 3) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 4) {
- echo '';
- }
-}
-?>
-
- $zd = 'rn'; ?>
- echo $ai['name' . $zd]; ?>
-Получить руну при плавке нормальных заготовок. ( M руну )
-Сейчас у Вас Ранг: echo $ai['klas' . $zd]; ?>. Количество выполнений: echo $ai[$zd]; ?>
- = echo $ai['klasP' . $zd]; ?>%
-Получить руну при плавке нормальных заготовок. ( M руну )
-
-
-
-
- Ранги |
- 1 |
- 2 |
- 3 |
- 4 |
- 5 |
-
-
- Рун |
- 5 |
- 10 |
- 15 |
- 25 |
- 50 |
-
-
- Награда |
- Нормальные заготовки 5 |
- Нормальные заготовки 7 |
- Нормальные заготовки 9 |
- Нормальные заготовки 12 |
- Нормальные заготовки 15 |
-
-
-
-
-if ($ai['klas' . $zd] > $ai[$zd . '_n']) //M задание
-{
- echo '
Награда:
';
- if ($ai[$zd . '_n'] == 0) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 1) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 2) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 3) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 4) {
- echo '';
- }
-}
-?>
-
- $zd = 'rb'; ?>
- echo $ai['name' . $zd]; ?>
-Получить руну при плавке идеальных заготовок. ( L руну )
-Сейчас у Вас Ранг: echo $ai['klas' . $zd]; ?>. Количество выполнений: echo $ai[$zd]; ?>
- = echo $ai['klasP' . $zd]; ?>%
-Получить руну при плавке идеальных заготовок. ( L руну )
-
-
-
-
- Ранги |
- 1 |
- 2 |
- 3 |
- 4 |
- 5 |
-
-
- Рун |
- 2 |
- 5 |
- 8 |
- 11 |
- 15 |
-
-
- Награда |
- Идеальные заготовки 2 |
- Идеальные заготовки 4 |
- Идеальные заготовки 6 |
- Идеальные заготовки 10 |
- Идеальные заготовки 15 |
-
-
-
-
-if ($ai['klas' . $zd] > $ai[$zd . '_n']) //L задание
-{
- echo '
Награда:
';
- if ($ai[$zd . '_n'] == 0) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 1) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 2) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 3) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 4) {
- echo '';
- }
-}
-?>
-
- $zd = 'pg'; ?>
- echo $ai['name' . $zd]; ?>
-Поучаствовать в героическом сражении.
-Сейчас у Вас Ранг: echo $ai['klas' . $zd]; ?>. Количество выполнений: echo $ai[$zd]; ?>
- = echo $ai['klasP' . $zd]; ?>%
-Поучаствовать в героическом сражении.
-
-
-
-
- Ранги |
- 1 |
- 2 |
- 3 |
- 4 |
- 5 |
-
-
- Участий |
- 100 |
- 200 |
- 400 |
- 600 |
- 1000 |
-
-
- Награда |
- Жетон Успеха 10 |
- Жетон Успеха 20 |
- Жетон Успеха 40 |
- Жетон Успеха 60 |
- Жетон Успеха 80 |
-
-
-
-
-if ($ai['klas' . $zd] > $ai[$zd . '_n']) //Героик задание
-{
- echo '
Награда:
';
- if ($ai[$zd . '_n'] == 0) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 1) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 2) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 3) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 4) {
- echo '';
- }
-}
-?>
-
- $zd = 'bv'; ?>
- echo $ai['name' . $zd]; ?>
-Продать бабушке найденные вещи в пещере.
-Сейчас у Вас Ранг: echo $ai['klas' . $zd]; ?>. Количество выполнений: echo $ai[$zd]; ?>
- = echo $ai['klasP' . $zd]; ?>%
-Продать бабушке найденные вещи в пещере.
-
-
-
-
- Ранги |
- 1 |
- 2 |
- 3 |
- 4 |
- 5 |
-
-
- Продаж |
- 5 |
- 25 |
- 50 |
- 100 |
- 250 |
-
-
- Награда |
- 500кр. |
- 1000кр. |
- 2000кр. |
- 4000кр. |
- 5000кр. |
-
-
-
-
-if ($ai['klas' . $zd] > $ai[$zd . '_n']) //Героик задание
-{
- echo '
Награда:
';
- if ($ai[$zd . '_n'] == 0) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 1) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 2) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 3) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 4) {
- echo '';
- }
-}
-?>
-
- $zd = 'kw'; ?>
- echo $ai['name' . $zd]; ?>
-Победить в клановой войне.
-Сейчас у Вас Ранг: echo $ai['klas' . $zd]; ?>. Количество выполнений: echo $ai[$zd]; ?>
- = echo $ai['klasP' . $zd]; ?>%
-Победить в клановой войне.
-
-
-
-
- Ранги |
- 1 |
- 2 |
- 3 |
- 4 |
- 5 |
-
-
- Побед |
- 5 |
- 25 |
- 50 |
- 100 |
- 250 |
-
-
- Награда |
- Свиток кланового опыта 1 |
- Свиток кланового опыта 2 |
- Свиток кланового опыта 5 |
- Свиток кланового опыта 10 |
- Свиток кланового опыта 15 |
-
-
-
-
-if ($ai['klas' . $zd] > $ai[$zd . '_n']) //Клан вар задание
-{
- echo '
Награда:
';
- if ($ai[$zd . '_n'] == 0) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 1) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 2) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 3) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 4) {
- echo '';
- }
-}
-?>
-
- $zd = 'pa'; ?>
- echo $ai['name' . $zd]; ?>
-Получить покровительство Ангела.
-Сейчас у Вас Ранг: echo $ai['klas' . $zd]; ?>. Количество выполнений: echo $ai[$zd]; ?>
- = echo $ai['klasP' . $zd]; ?>%
-Получить покровительство Ангела.
-
-
-
-
- Ранги |
- 1 |
- 2 |
- 3 |
- 4 |
- 5 |
-
-
- Побед |
- 5 |
- 25 |
- 50 |
- 100 |
- 250 |
-
-
- Награда |
- - |
- - |
- - |
- - |
- - |
-
-
-
-
- $zd = 'bs'; ?>
- echo $ai['name' . $zd]; ?>
-Победы в башне смерти.
-Сейчас у Вас Ранг: echo $ai['klas' . $zd]; ?>. Количество выполнений: echo $ai[$zd]; ?>
- = echo $ai['klasP' . $zd]; ?>%
-Получить покровительство Ангела.
-
-
-
-
- Ранги |
- 1 |
- 2 |
- 3 |
- 4 |
- 5 |
-
-
- Побед |
- 1 |
- 5 |
- 10 |
- 50 |
- 500 |
-
-
- Награда |
- 1 Екр. |
- 5 Екр. |
- 10 Екр. |
- 50 Екр. |
- 200 Екр. |
-
-
-
-if ($ai['klas' . $zd] > $ai[$zd . '_n']) //Хаот задание
-{
- echo '
Награда:
';
- if ($ai[$zd . '_n'] == 0) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 1) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 2) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 3) {
- echo '';
- } elseif ($ai[$zd . '_n'] == 4) {
- echo '';
- }
-}
-?>
-
-
-= '
' . $red ?>
\ No newline at end of file