uid = User::start()->info['id']; $this->login = User::start()->info['login']; $this->room = User::start()->info['room']; $this->exp = User::start()->info['exp']; $this->am = new ActionModel($this->uid); } private function getQuest(): array { return $this->am::get(["uid = $this->uid", 'vars = ' . self::ACT], 'val, vals, time'); } private function sendSysChat(string $message): void { $cmsg = new ChatMessage(); $cmsg->setRoom($this->room); $cmsg->setTo($this->login); $cmsg->setType(6); $cmsg->setText($message); (new Chat())->sendMsg($cmsg); } public function get(): void { $questId = $this->getQuest() ? 0 : mt_rand(1, 7); $this->status .= match ($questId) { 1 => 'Говорят в городе завелись всякие Трупожоры. Пойди да убей двоих, порадуй бабушку.', 2 => 'Покажи на что способен! Поучаствуй в 10 хаотических поединках!', 3 => 'Необходимо исследовать для бабушки два любых подземелия, ей очень интересно что там внутри! Только гляди милок, пропуски не используй!', 4 => 'Сразись в хаотических поединках и получи 100 000 опыта!', 5 => 'Открой сундук Трупожора, порадуй бабушку!', 6 => 'Посети Излом Хаоса!', 7 => 'Выполни 3 любых задания в подземелиях! Бабушка будет очень довольна!', 8 => 'Сходи-ка милок в Башню Смерти! Да попробуй там свои силенки.', default => 'Эх шустрый малец, получал задание уже сегодня! Завтра приходи, накормлю чем нибудь вкусным ну и задание дам!' }; $this->status = "$this->status"; if ($questId) { $this->am::new(['id' => $this->uid, 'room' => $this->room], $questId, self::ACT); $this->sendSysChat($this->status); } } public function getControl(): string { $test = ActionModel::getOne(["uid = $this->uid", 'vars = ' . self::ACT], 'vals'); $q = [ '1' => 'Убийство Трупожоров', '2' => 'Победы в хаотических боях', '3' => 'Спуск в Подземелия', '4' => 'Набрать в хаотических поединках 100 000 Опыта', '5' => 'Открыть Сундук Трупожора', '6' => 'Посетить Излом Хаоса', '7' => 'Сдача 3 заданий в пещерах', '8' => 'Поучаствовать в Башне Смерти', ]; $n = $test ? "Сдать задание
" . $q[$test['vals']] : "Получить задание"; return "$n"; } private function givePrize(): void { Db::sql('update actions set vals = 0 where vars = ? and uid = ?', [self::ACT, $this->uid]); Db::sql('update users_achiv set zb = zb + 1 where id = ?', [$this->uid]); ItemsModel::addItem(10020, $this->uid, '|sudba=' . $this->login); StatsModel::addRepexpById($this->uid, 50); //Репутация +20 } public function getStatus(): void { $quest = $this->getQuest(); if (!$quest) { $this->status = 'У тебя нет задания милок, не юли! Хоть бабушка плохо видит но бабушка хорошо помнит.'; return; } $questId = $quest['vals']; $finishedTasks = $this->am->getFinishedDailyQuestTasks($quest['time']); $happy = 'Порадовал бабушку! '; switch ($questId) { case 1: if ($finishedTasks['end_trup'] > 1) { $this->status = $happy . 'Убил ипостата! Может на печи полежим? - Нет, ну держи жетончик!'; $this->givePrize(); } else { $this->status = 'Победи в боях с Трупожором ' . $finishedTasks['end_trup'] . '/2.'; } break; case 2: if ($finishedTasks['end_xaot'] > 9) { $this->status = $happy . 'Поучаствовал в боях! А точно покушать не хочешь? - Нет, ну держи жетончик!'; $this->givePrize(); } else { $this->status = 'Участия в хаотах ' . $finishedTasks['end_xaot'] . '/10.'; } break; case 3: if ($finishedTasks['psh0'] > 1) { $this->status = $happy . 'Хороший запах! А точно покушать не хочешь? - Нет, ну держи жетончик!'; $this->givePrize(); } else { $this->status = 'Посещение Подземелий ' . $finishedTasks['psh0'] . '/2.'; } break; case 4: if (($this->exp - $quest['val']) > 100000) { $this->status = $happy . 'Подрос, подрос! держи жетончик!'; $this->givePrize(); } else { $this->status = 'Получение ' . ($this->exp - $quest['val']) . '/100 000 опыта.'; } break; case 5: if ($finishedTasks['trup_sun'] > 0) { $this->status = $happy . 'Сундучек удачу принес? Нет? Ну держи жетончик!'; $this->givePrize(); } else { $this->status = 'Открытие сундуков Трупожора 0/1'; } break; case 6: if ($finishedTasks['izlom'] > 0) { $this->status = $happy . 'Так пахнет гарью и смертью Ммммм ... За это тебе жетончик!'; $this->givePrize(); } else { $this->status = 'Посещение Излома Хаоса 0/1'; } break; case 7: if ($finishedTasks['win'] > 2) { $this->status = $happy . 'Стало в мире светлее, но бабка как была слепая так и осталась...
Чуть не забыла жетончик!'; $this->givePrize(); } else { $this->status = 'Выполни 3 задания в подземелиях. ' . $finishedTasks['win'] . '/3.'; } break; } $this->sendSysChat("$this->status"); } }; if (isset($_GET['getq'])) { $dailyQuest->get(); } if (isset($_GET['putq'])) { $dailyQuest->getStatus(); } $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']; ?> Сила: stats['s1']; ?>
Ловкость: stats['s2']; ?>
Интуиция: stats['s3']; ?>
Выносливость: stats['s4']; ?>
Интеллект: stats['s5']; ?>
Мудрость: stats['s6']; ?>
info['level'] > 9 || $u->stats['s7'] != 0): ?> Духовность: stats['s7']; ?>
info['ability'] > 0 || $u->info['skills'] > 0): ?> + Способности

Опыт: info['exp'], 0, ",", " ") ?>
Уровень: info['level']; ?>
Побед: info['win'], 0, ",", " ") ?>
Поражений: info['lose'], 0, ",", " ") ?>
Ничьих: info['nich'], 0, ",", " ") ?>
Деньги: info['money'] ?> кр. 
Деньги: info['money2'] ?> екр.
stats['pbe']) && $u->stats['pbe'] > 0): ?> Бонус покупателя: stats['pbe'] ?> уровень
(Совершите покупку ЕКР чтобы сохранить и увеличить бонус покупателя)

rep['rep3'] >= 0): ?> Воинственность:  ед.

getControl() ?>