WIP: перед введенимем класса Fighter.php

This commit is contained in:
2024-01-06 00:14:35 +02:00
parent 07f905ef64
commit a2c658166d
67 changed files with 5555 additions and 7135 deletions

View File

@@ -1,6 +1,7 @@
<?php
use Core\Db;
use Model\ActionModel;
use User\ItemsModel;
use User\StatsModel;
@@ -10,58 +11,34 @@ if (!defined('GAME')) {
die();
}
$am = new ActionModel($u->info['id']);
$txt ??= '';
if (isset($_GET['getq'])) {
$test = mysql_fetch_array(
mysql_query('SELECT * FROM `actions` WHERE `uid` = ' . $u->info['id'] . ' AND `vars`= \'day_quest\'')
);
if (!isset($test['id'])) {
$zadID = rand(1, 7);
if ($u->info['level'] == 8 && $zadID == 6) {
$zadID = 2;
}
if ($u->info['level'] > 11 && $zadID == 4) {
$zadID = 2;
}
if ($u->info['level'] > 11 && $zadID == 1) {
$zadID = 2;
}
} else {
$zadID = 0;
}
if ($zadID == 1) {
$txt .= '<b>Говорят в Capital City завелись всякие Трупожоры. Пойди да убей их дважды, порадуй бабушку</b>';
} elseif ($zadID == 2) {
$txt .= '<b>Покажи на что способен! Поучаствуй в 10 хаотических поединках!</b>';
} elseif ($zadID == 3) {
$txt .= '<b>Необходимо исследовать для бабушки два любых подземелия, ей очень интересно что там внутри! Только гляди милок, пропуски не используй!</b>';
} elseif ($zadID == 4) {
$txt .= '<b>Сразись в хаотических поединках и получи 100 000 опыта!</b>';
} elseif ($zadID == 5) {
$txt .= '<b>Открой сундук Трупожора, порадуй бабушку!</b>';
} elseif ($zadID == 6) {
$txt .= '<b>Посети Излом Хаоса!</b>';
} elseif ($zadID == 7) {
$txt .= '<b>Выполни 3 любых задания в подземелиях!Бабушка будет очень довольна!</b>';
} elseif ($zadID == 8) {
$txt .= '<b>Сходи ка милок в Башню Смерти! Да попробуй как там свои силенки.</b>';
} else {
$txt .= '<b>Эх шустрый малец, получал задание уже сегодня! Завтра приходи, накормлю чем нибудь вкусным ну и задание дам!</b>';
}
$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) {
mysql_query(
'INSERT INTO `actions`(`uid`, `time`, `city`, `room`, `vars`, `ip`, `vals`, `val`) VALUES (' . $u->info['id'] . ',unix_timestamp(),\'capitalcity\',421,\'day_quest\',\'\',' . $zadID . ',' . $u->info['exp'] . ')'
);
ActionModel::new($u->info, $zadID, 'day_quest');
sendSysChat($txt);
}
}
function sendSysChat($message)
function sendSysChat($message): void
{
global $u;
$cmsg = new ChatMessage();
$cmsg->setCity($u->info['city']);
$cmsg->setRoom($u->info['room']);
$cmsg->setTo($u->info['login']);
$cmsg->setType(6);
@@ -69,132 +46,76 @@ function sendSysChat($message)
(new Chat())->sendMsg($cmsg);
}
function giveDailyQuestPrize()
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']]);
if ($u->info['level'] < 12) {
ItemsModel::addItem(10020, $u->info['id'], '|sudba=' . $u->info['login']);
} else {
ItemsModel::addItem(6470, $u->info['id'], '|sudba=' . $u->info['login']);
}
ItemsModel::addItem(10020, $u->info['id'], '|sudba=' . $u->info['login']);
StatsModel::addRepexpById($u->info['id'], 50); //Репутация +20
}
if (isset($_GET['putq'])) {
$test = mysql_fetch_array(
mysql_query('SELECT * FROM `actions` WHERE `uid` = ' . $u->info['id'] . ' AND `vars`= \'day_quest\'')
);
if (!isset($test['id'])) {
$txt .= '<b style="color: red">У тебя нет задания милок, не юли! Хоть бабушка плохо видит но бабушка хорошо помнит.</b>';
$test = $am->getDailyQuest();
if (!$test) {
$txt .= 'У тебя нет задания милок, не юли! Хоть бабушка плохо видит но бабушка хорошо помнит.';
} else {
$zadID = $test['vals'];
$finishedTasks = $am->getFinishedDailyQuestTasks($test['time']);
if ($zadID == 1) {
$check = mysql_query(
'SELECT * FROM `actions` WHERE `uid` = ' . $u->info['id'] . ' AND `vars`= \'end_trup\' AND `time` > ' . $test['time']
);
$i = 0;
while ($pl = mysql_fetch_array($check)) {
$i++;
}
if ($i > 1) {
$txt .= '<b>Порадовал бабушку! Убил ипостата! Может на печи полежим? - Нет, ну держи жетончик!</b>';
if ($finishedTasks['end_trup'] > 1) {
$txt .= 'Порадовал бабушку! Убил ипостата! Может на печи полежим? - Нет, ну держи жетончик!';
giveDailyQuestPrize();
} else {
$txt .= '<b>Победи в боях с Трупожором ' . $i . '/2</b>';
$txt .= 'Победи в боях с Трупожором ' . $finishedTasks['end_trup'] . '/2.';
}
} elseif ($zadID == 2) {
$check = mysql_query(
'SELECT * FROM `actions` WHERE `uid` = ' . $u->info['id'] . ' AND `vars`= \'end_xaot\' AND `time` > ' . $test['time']
);
$i = 0;
while ($pl = mysql_fetch_array($check)) {
$i++;
}
if ($i > 9) {
$txt .= '<b>Порадовал бабушку! Поучаствовал в боях! А точно покушать не хочешь? - Нет, ну держи жетончик!</b>';
if ($finishedTasks['end_xaot'] > 9) {
$txt .= 'Порадовал бабушку! Поучаствовал в боях! А точно покушать не хочешь? - Нет, ну держи жетончик!';
giveDailyQuestPrize();
} else {
$txt .= '<b>Участия в хаотах ' . $i . '/10</b>';
$txt .= 'Участия в хаотах ' . $finishedTasks['end_xaot'] . '/10.';
}
} elseif ($zadID == 3) {
$check = mysql_query(
'SELECT * FROM `actions` WHERE `uid` = ' . $u->info['id'] . ' AND `vars`= \'psh0\' AND `time` > ' . $test['time']
);
$i = 0;
while ($pl = mysql_fetch_array($check)) {
$i++;
}
if ($i > 1) {
$txt .= '<b>Порадовал бабушку! Хороший запах! А точно покушать не хочешь? - Нет, ну держи жетончик!</b>';
if ($finishedTasks['psh0'] > 1) {
$txt .= 'Порадовал бабушку! Хороший запах! А точно покушать не хочешь? - Нет, ну держи жетончик!';
giveDailyQuestPrize();
} else {
$txt .= '<b>Посещение Подземелий ' . $i . '/2</b>';
$txt .= 'Посещение Подземелий ' . $finishedTasks['psh0'] . '/2.';
}
} elseif ($zadID == 4) {
if (($u->info['exp'] - $test['val']) > 100000) {
$txt .= '<b>Порадовал бабушку! Подрос,Подрос! держи жетончик!</b>';
$txt .= 'Порадовал бабушку! Подрос, подрос! держи жетончик!';
giveDailyQuestPrize();
} else {
$txt .= '<b>Получение ' . ($u->info['exp'] - $test['val']) . '/100 000 опыта</b>';
$txt .= 'Получение ' . ($u->info['exp'] - $test['val']) . '/100 000 опыта.';
}
} elseif ($zadID == 5) {
$check = mysql_query(
'SELECT * FROM `actions` WHERE `uid` = ' . $u->info['id'] . ' AND `vars`= \'trup_sun\' AND `time` > ' . $test['time']
);
$i = 0;
while ($pl = mysql_fetch_array($check)) {
$i++;
}
if ($i > 0) {
$txt .= '<b>Порадовал бабушку! Сундучек удачу принес? Нет? Ну держи жетончик!</b>';
if ($finishedTasks['trup_sun'] > 0) {
$txt .= 'Порадовал бабушку! Сундучек удачу принес? Нет? Ну держи жетончик!';
giveDailyQuestPrize();
} else {
$txt .= '<b>Открытие сундуков Трупожора 0/1</b>';
$txt .= 'Открытие сундуков Трупожора 0/1';
}
} elseif ($zadID == 6) {
$check = mysql_query(
'SELECT * FROM `actions` WHERE `uid` = ' . $u->info['id'] . ' AND `vars`= \'izlom\' AND `time` > ' . $test['time']
);
$i = 0;
while ($pl = mysql_fetch_array($check)) {
$i++;
}
if ($i > 0) {
$txt .= '<b>Порадовал бабушку! Так пахнет гарью и смертью Ммммм ... За это тебе жетончик!</b>';
if ($finishedTasks['izlom'] > 0) {
$txt .= 'Порадовал бабушку! Так пахнет гарью и смертью Ммммм ... За это тебе жетончик!';
giveDailyQuestPrize();
} else {
$txt .= '<b>Посещение Излома Хаоса 0/1</b>';
$txt .= 'Посещение Излома Хаоса 0/1';
}
} elseif ($zadID == 7) {
$check = mysql_query(
'SELECT * FROM `actions` WHERE `uid` = ' . $u->info['id'] . ' AND `vals`= \'win\' AND `time` > ' . $test['time']
);
$i = 0;
while ($pl = mysql_fetch_array($check)) {
$i++;
}
if ($i > 2) {
$txt .= '<b>Порадовал бабушку! Стало в мире светлее, но бабка как была слепая так и осталась... <br> Чуть не забыла жетончик!</b>';
if ($finishedTasks['win'] > 2) {
$txt .= 'Порадовал бабушку! Стало в мире светлее, но бабка как была слепая так и осталась... <br> Чуть не забыла жетончик!';
giveDailyQuestPrize();
} else {
$txt .= '<b>Выполни 3 задания в подземелиях. ' . $i . '/3 </b>';
$txt .= 'Выполни 3 задания в подземелиях. ' . $finishedTasks['win'] . '/3.';
}
} elseif ($zadID == 8) {
$txt .= '<b>Участие в башне смерти 0.1</b>';
} else {
$txt .= '<b style="color: red">Эх шустрый малец, получал задание уже сегодня! Завтра приходи накормлю чем нибудь вкусным ну и задание дам!</b>';
}
sendSysChat($txt);
sendSysChat("<b>$txt</b>");
}
}
@@ -213,7 +134,7 @@ $repovo = $u->rep['rep3'] - $u->rep['rep3_buy'];
Духовность:&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>
<a href="/main.php?skills=1&side=1">+ Способности</a><br>
<?php endif; ?>
&nbsp;<br>
@@ -225,7 +146,7 @@ $repovo = $u->rep['rep3'] - $u->rep['rep3_buy'];
Деньги:&nbsp;<b><?= $u->info['money'] ?> кр.</b>&nbsp;</br>
Деньги:&nbsp;<b style="color:green"><?= $u->info['money2'] ?> екр.</b><br>
<?php if ($u->stats['pbe'] > 0): ?>
<?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>