game/modules_data/stats_loc.php

161 lines
7.7 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
use Core\Db;
use Model\ActionModel;
use User\ItemsModel;
use User\StatsModel;
/* @var User $u */
if (!defined('GAME')) {
die();
}
$am = new ActionModel($u->info['id']);
$txt ??= '';
if (isset($_GET['getq'])) {
$zadID = !$am->getDailyQuest() ? mt_rand(1, 7) : 0;
$txt .= match ($zadID) {
1 => 'Говорят в городе завелись всякие Трупожоры. Пойди да убей двоих, порадуй бабушку.',
2 => 'Покажи на что способен! Поучаствуй в 10 хаотических поединках!',
3 => 'Необходимо исследовать для бабушки два любых подземелия, ей очень интересно что там внутри! Только гляди милок, пропуски не используй!',
4 => 'Сразись в хаотических поединках и получи 100 000 опыта!',
5 => 'Открой сундук Трупожора, порадуй бабушку!',
6 => 'Посети Излом Хаоса!',
7 => 'Выполни 3 любых задания в подземелиях! Бабушка будет очень довольна!',
8 => 'Сходи-ка милок в Башню Смерти! Да попробуй там свои силенки.',
default => 'Эх шустрый малец, получал задание уже сегодня! Завтра приходи, накормлю чем нибудь вкусным ну и задание дам!'
};
$txt = "<b>$txt</b>";
if ($zadID > 0) {
ActionModel::new($u->info, $zadID, 'day_quest');
sendSysChat($txt);
}
}
function sendSysChat($message): void
{
global $u;
$cmsg = new ChatMessage();
$cmsg->setRoom($u->info['room']);
$cmsg->setTo($u->info['login']);
$cmsg->setType(6);
$cmsg->setText($message);
(new Chat())->sendMsg($cmsg);
}
function giveDailyQuestPrize(): void
{
global $u;
Db::sql('update actions set vals = 0 where vars = ? and uid = ?', ['day_quest', $u->info['id']]);
Db::sql('update users_achiv set zb = zb + 1 where id = ?', [$u->info['id']]);
ItemsModel::addItem(10020, $u->info['id'], '|sudba=' . $u->info['login']);
StatsModel::addRepexpById($u->info['id'], 50); //Репутация +20
}
if (isset($_GET['putq'])) {
$test = $am->getDailyQuest();
if (!$test) {
$txt .= 'У тебя нет задания милок, не юли! Хоть бабушка плохо видит но бабушка хорошо помнит.';
} else {
$zadID = $test['vals'];
$finishedTasks = $am->getFinishedDailyQuestTasks($test['time']);
if ($zadID == 1) {
if ($finishedTasks['end_trup'] > 1) {
$txt .= 'Порадовал бабушку! Убил ипостата! Может на печи полежим? - Нет, ну держи жетончик!';
giveDailyQuestPrize();
} else {
$txt .= 'Победи в боях с Трупожором ' . $finishedTasks['end_trup'] . '/2.';
}
} elseif ($zadID == 2) {
if ($finishedTasks['end_xaot'] > 9) {
$txt .= 'Порадовал бабушку! Поучаствовал в боях! А точно покушать не хочешь? - Нет, ну держи жетончик!';
giveDailyQuestPrize();
} else {
$txt .= 'Участия в хаотах ' . $finishedTasks['end_xaot'] . '/10.';
}
} elseif ($zadID == 3) {
if ($finishedTasks['psh0'] > 1) {
$txt .= 'Порадовал бабушку! Хороший запах! А точно покушать не хочешь? - Нет, ну держи жетончик!';
giveDailyQuestPrize();
} else {
$txt .= 'Посещение Подземелий ' . $finishedTasks['psh0'] . '/2.';
}
} elseif ($zadID == 4) {
if (($u->info['exp'] - $test['val']) > 100000) {
$txt .= 'Порадовал бабушку! Подрос, подрос! держи жетончик!';
giveDailyQuestPrize();
} else {
$txt .= 'Получение ' . ($u->info['exp'] - $test['val']) . '/100 000 опыта.';
}
} elseif ($zadID == 5) {
if ($finishedTasks['trup_sun'] > 0) {
$txt .= 'Порадовал бабушку! Сундучек удачу принес? Нет? Ну держи жетончик!';
giveDailyQuestPrize();
} else {
$txt .= 'Открытие сундуков Трупожора 0/1';
}
} elseif ($zadID == 6) {
if ($finishedTasks['izlom'] > 0) {
$txt .= 'Порадовал бабушку! Так пахнет гарью и смертью Ммммм ... За это тебе жетончик!';
giveDailyQuestPrize();
} else {
$txt .= 'Посещение Излома Хаоса 0/1';
}
} elseif ($zadID == 7) {
if ($finishedTasks['win'] > 2) {
$txt .= 'Порадовал бабушку! Стало в мире светлее, но бабка как была слепая так и осталась... <br> Чуть не забыла жетончик!';
giveDailyQuestPrize();
} else {
$txt .= 'Выполни 3 задания в подземелиях. ' . $finishedTasks['win'] . '/3.';
}
}
sendSysChat("<b>$txt</b>");
}
}
$nowby = Db::getValue('select good from pay_operation where uid = ? and good > 0 order by good desc limit 1', [$u->info['id']]);
$repovo = $u->rep['rep3'] - $u->rep['rep3_buy'];
?>
Сила: <b><?= $u->stats['s1']; ?></b><br>
Ловкость:&nbsp;<b><?= $u->stats['s2']; ?></b><br>
Интуиция:&nbsp;<b><?= $u->stats['s3']; ?></b><br>
Выносливость:&nbsp;<b><?= $u->stats['s4']; ?></b><br>
Интеллект:&nbsp;<b><?= $u->stats['s5']; ?></b><br>
Мудрость:&nbsp;<b><?= $u->stats['s6']; ?></b><br>
<?php if ($u->info['level'] > 9 || $u->stats['s7'] != 0): ?>
Духовность:&nbsp;<b><?= $u->stats['s7']; ?></b><br>
<?php endif; ?>
<?php if ($u->info['ability'] > 0 || $u->info['skills'] > 0): ?>
<a href="/main.php?skills=1&side=1">+ Способности</a><br>
<?php endif; ?>
&nbsp;<br>
Опыт:&nbsp;<a href="/exp" target="_blank"><?= number_format($u->info['exp'], 0, ",", " ") ?></a><br>
Уровень:&nbsp;<?= $u->info['level']; ?><br>
Побед:&nbsp;<?= number_format($u->info['win'], 0, ",", " ") ?><br>
Поражений:&nbsp;<?= number_format($u->info['lose'], 0, ",", " ") ?><br>
Ничьих:&nbsp;<?= number_format($u->info['nich'], 0, ",", " ") ?><br>
Деньги:&nbsp;<b><?= $u->info['money'] ?> кр.</b>&nbsp;</br>
Деньги:&nbsp;<b style="color:green"><?= $u->info['money2'] ?> екр.</b><br>
<?php if (isset($u->stats['pbe']) && $u->stats['pbe'] > 0): ?>
<a href="/news/268/" target="_blank">Бонус покупателя:&nbsp;<?= $u->stats['pbe'] ?>&nbsp;уровень</a>
<?php if (date('d.m.Y') != date('d.m.Y', $nowby)): ?>
<span style="color: red"><br>(Совершите покупку ЕКР чтобы сохранить и увеличить бонус покупателя)</span>
<?php endif; ?>
<br>
<?php endif; ?>
<?php if ($u->rep['rep3'] >= 0): ?>
Воинственность:&nbsp;<b style="color:green"><?= $repovo; ?> ед.</b><br>
<?php endif; ?>
<br>
<?= $u->dayquest($u->info['id']) ?>