Рефакторинг яваскриптов.
This commit is contained in:
+56
-54
@@ -247,7 +247,7 @@ class Battle
|
||||
|
||||
/**
|
||||
* @param int|null $experience
|
||||
* @param bool $hardcore поединок с гарантированной травмой
|
||||
* @param bool $hardcore поединок с гарантированной травмой
|
||||
* @return array|int[]
|
||||
*/
|
||||
public static function getType(?int $experience, bool $hardcore = false): array
|
||||
@@ -365,10 +365,10 @@ class Battle
|
||||
|
||||
Db::sql(
|
||||
'update stats set last_hp = ?, tactic7 = ? where id = ?', [
|
||||
$this->users[$this->uids[$uid]]['last_hp'],
|
||||
$this->users[$this->uids[$uid]]['tactic7'],
|
||||
$uid,
|
||||
]
|
||||
$this->users[$this->uids[$uid]]['last_hp'],
|
||||
$this->users[$this->uids[$uid]]['tactic7'],
|
||||
$uid,
|
||||
]
|
||||
);
|
||||
|
||||
return (int)$hp;
|
||||
@@ -1139,9 +1139,9 @@ JS;
|
||||
|
||||
/**
|
||||
* @param array $botLogins
|
||||
* @param int $counter
|
||||
* @param int $obr
|
||||
* @param int $unique для совместимости с непонятным вызовом User->addAction
|
||||
* @param int $counter
|
||||
* @param int $obr
|
||||
* @param int $unique для совместимости с непонятным вызовом User->addAction
|
||||
* при вызове уникального монстра.
|
||||
* @return void
|
||||
*/
|
||||
@@ -1231,14 +1231,14 @@ JS;
|
||||
/** Осторожно! Подключаются файлы!!!
|
||||
* Трогать очень осторожно. Этот шайтан как-то проверяет приёмы на враге
|
||||
* и рассчитывает урон учитывая и эти приёмы тоже.
|
||||
* @param int $uid1
|
||||
* @param int $uid2
|
||||
* @param int $priem
|
||||
* @param int $uid1
|
||||
* @param int $uid2
|
||||
* @param int $priem
|
||||
* @param $yron
|
||||
* @param int $profil
|
||||
* @param int $profil
|
||||
* @param bool $stabil
|
||||
* @param bool $test
|
||||
* @param int $inlog
|
||||
* @param int $inlog
|
||||
* @return float|int|mixed
|
||||
*/
|
||||
public function testYronPriem(
|
||||
@@ -1250,7 +1250,8 @@ JS;
|
||||
bool $stabil,
|
||||
bool $test = false,
|
||||
int $inlog = 0
|
||||
): mixed {
|
||||
): mixed
|
||||
{
|
||||
|
||||
/**
|
||||
* profil = {
|
||||
@@ -1524,7 +1525,7 @@ JS;
|
||||
$jstext = json_encode($log['text']);
|
||||
$jsvars = json_encode($log['vars']);
|
||||
|
||||
$js = "add_log({$log['id']},0,$jstext,{$log['id_hod']},0,0,$jsvars)" . $js;
|
||||
$js = "add_log({$log['id']},$jstext,{$log['id_hod']},$jsvars)" . $js;
|
||||
}
|
||||
|
||||
Db::sql('update stats set alog = ? where id = ?', [$u->info['alog'], $u->info['id']]);
|
||||
@@ -1588,7 +1589,7 @@ JS;
|
||||
$jstext = json_encode($log['text']);
|
||||
$jsvars = json_encode($log['vars']);
|
||||
|
||||
$js = "add_mlog({$log['id']},0,$jstext,{$log['id_hod']},0,0,$jsvars)" . $js;
|
||||
$js = "add_mlog({$log['id']},$jstext,{$log['id_hod']},$jsvars)" . $js;
|
||||
}
|
||||
|
||||
Db::sql('update stats set mlog = ? where id = ?', [$u->info['mlog'], $u->info['id']]);
|
||||
@@ -1917,17 +1918,6 @@ JS;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Массово встречается в подключаемых файлах приёмов.
|
||||
* @param array $arr
|
||||
* @return void
|
||||
* @deprecated
|
||||
*/
|
||||
public function add_log(array $arr): void
|
||||
{
|
||||
Log::add($arr);
|
||||
}
|
||||
|
||||
private function botAtack($uid, $pl, $tp): void
|
||||
{
|
||||
$testAttack = Db::getValue('select count(id) from battle_act where battle = ? and uid1 in (?,?) and uid2 in(?,?) and uid1 != uid2', [$this->i->id, $pl, $uid, $pl, $uid]) === 0;
|
||||
@@ -1960,8 +1950,6 @@ JS;
|
||||
}
|
||||
}
|
||||
|
||||
//Используем приемы
|
||||
|
||||
public function startAtack($id): void
|
||||
{
|
||||
global $u, $priem;
|
||||
@@ -2410,12 +2398,14 @@ JS;
|
||||
Db::sql('delete from battle_act where id = ?', [$id]);
|
||||
}
|
||||
|
||||
//Используем приемы
|
||||
|
||||
/** Осторожно! Подключаются файлы!!!
|
||||
* @param array $pl
|
||||
* @param array $pl
|
||||
* @param $u1
|
||||
* @param int $t
|
||||
* @param int $t
|
||||
* @param int|array $u2
|
||||
* @param string $rznm
|
||||
* @param string $rznm
|
||||
* @return void
|
||||
*/
|
||||
public function delPriem(
|
||||
@@ -2424,7 +2414,8 @@ JS;
|
||||
int $t = 1,
|
||||
int|array $u2 = 0,
|
||||
string $rznm = 'Очиститься Кровью'
|
||||
): void {
|
||||
): void
|
||||
{
|
||||
global $u, $priem;
|
||||
if (!isset($pl['priem']['id']) || isset($this->del_val['eff'][$pl['priem']['id']])) {
|
||||
return;
|
||||
@@ -2481,8 +2472,6 @@ JS;
|
||||
$this->stats[$this->uids[$pl['uid']]] = $u->getStats($pl['uid'], 0, 0, false, false, true);
|
||||
}
|
||||
|
||||
//Повторная проверка приемов
|
||||
|
||||
/**
|
||||
* Расчет количества блоков и противников?
|
||||
* @param $uid
|
||||
@@ -2561,7 +2550,7 @@ JS;
|
||||
}
|
||||
}
|
||||
|
||||
//Проверка действия приема
|
||||
//Повторная проверка приемов
|
||||
|
||||
/**
|
||||
* Магия предметов?
|
||||
@@ -2594,7 +2583,7 @@ JS;
|
||||
}
|
||||
}
|
||||
|
||||
//Проверка урона приемов
|
||||
//Проверка действия приема
|
||||
|
||||
private function newRazmen($id): array
|
||||
{
|
||||
@@ -2615,6 +2604,8 @@ JS;
|
||||
return $at;
|
||||
}
|
||||
|
||||
//Проверка урона приемов
|
||||
|
||||
private function usersTestAtack($id, $uid1, $uid2): array
|
||||
{
|
||||
$r = [];
|
||||
@@ -2678,8 +2669,6 @@ JS;
|
||||
return $r;
|
||||
}
|
||||
|
||||
//Наносим удар между игроками
|
||||
|
||||
public function priemsRazmen(array|int $id, array|string $at): void
|
||||
{
|
||||
if ($at == 'fast') {
|
||||
@@ -2731,6 +2720,8 @@ JS;
|
||||
}
|
||||
}
|
||||
|
||||
//Наносим удар между игроками
|
||||
|
||||
/** Осторожно! Подключаются файлы!!!
|
||||
* @param $id
|
||||
* @param $at
|
||||
@@ -2952,10 +2943,6 @@ JS;
|
||||
return $at;
|
||||
}
|
||||
|
||||
|
||||
//Расчет типа удара от оружия
|
||||
//Расчет урона от оружия
|
||||
|
||||
public function testPogB($uid, $yr, $pliid, $test = 0)
|
||||
{
|
||||
$checktuman = Db::getValue('select count(id) from eff_users where uid = ? and v2 in (273,286,287,288)', [$uid]) == 0; //проверка на туманный образ
|
||||
@@ -3056,6 +3043,8 @@ JS;
|
||||
return $yr2;
|
||||
}
|
||||
|
||||
|
||||
//Расчет типа удара от оружия
|
||||
//Расчет урона от оружия
|
||||
|
||||
/**
|
||||
@@ -3223,8 +3212,7 @@ JS;
|
||||
return $at;
|
||||
}
|
||||
|
||||
|
||||
//Расчет защиты
|
||||
//Расчет урона от оружия
|
||||
|
||||
public function yhod_user($uid1, $uid2, $type)
|
||||
{
|
||||
@@ -3285,7 +3273,8 @@ JS;
|
||||
return $r;
|
||||
}
|
||||
|
||||
//Расчет защиты (магия)
|
||||
|
||||
//Расчет защиты
|
||||
|
||||
/**
|
||||
* Добавляем опыт \ нанесенный урон.
|
||||
@@ -3444,6 +3433,8 @@ JS;
|
||||
}
|
||||
}
|
||||
|
||||
//Расчет защиты (магия)
|
||||
|
||||
private function clearCache($uid): void
|
||||
{
|
||||
if ($uid <= 0 || isset($this->uclearc[$uid])) {
|
||||
@@ -3868,7 +3859,6 @@ JS;
|
||||
return '{' . $a . 'x' . $id . 'x' . $rnd . '}';
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Свиток спасения.
|
||||
*
|
||||
@@ -3995,7 +3985,8 @@ JS;
|
||||
$hodID,
|
||||
$tm1 = 0,
|
||||
$tm2 = 0
|
||||
): void {
|
||||
): void
|
||||
{
|
||||
$time = time();
|
||||
if ($tm1 == 0) {
|
||||
$tm1 = isset($this->atacks[$id]) ? $this->atacks[$id]['time'] : $time;
|
||||
@@ -4029,8 +4020,6 @@ JS;
|
||||
Log::add($mas);
|
||||
}
|
||||
|
||||
//Расчет МФ
|
||||
|
||||
/**
|
||||
* Возращаем зоны блока?
|
||||
* @param $uid1
|
||||
@@ -4047,6 +4036,8 @@ JS;
|
||||
}
|
||||
}
|
||||
|
||||
//Расчет МФ
|
||||
|
||||
private function saveStats($uid): void
|
||||
{
|
||||
Stats::saveBattleStats($this->stats[$this->uids[$uid]], $uid);
|
||||
@@ -4117,8 +4108,6 @@ JS;
|
||||
return $result ?: [];
|
||||
}
|
||||
|
||||
//Действия бота (атака)
|
||||
|
||||
/**
|
||||
* Смерть от пропуска ходов. Включается в конфиге.
|
||||
* @param int $id
|
||||
@@ -4151,7 +4140,7 @@ JS;
|
||||
}
|
||||
}
|
||||
|
||||
//Проверяем удары, приемы, свитки, зверей
|
||||
//Действия бота (атака)
|
||||
|
||||
private function addNewAtack(User $u): void
|
||||
{
|
||||
@@ -4237,7 +4226,7 @@ JS;
|
||||
|
||||
}
|
||||
|
||||
//Действия бота
|
||||
//Проверяем удары, приемы, свитки, зверей
|
||||
|
||||
private function botAct($uid): bool
|
||||
{
|
||||
@@ -4254,6 +4243,19 @@ JS;
|
||||
return $r;
|
||||
}
|
||||
|
||||
//Действия бота
|
||||
|
||||
/**
|
||||
* Массово встречается в подключаемых файлах приёмов.
|
||||
* @param array $arr
|
||||
* @return void
|
||||
* @deprecated
|
||||
*/
|
||||
public function add_log(array $arr): void
|
||||
{
|
||||
Log::add($arr);
|
||||
}
|
||||
|
||||
/**
|
||||
* Запись выбранных ударов и блоков в массив $this->uAtc.
|
||||
* Технически это сеттер.
|
||||
|
||||
+30
-30
@@ -108,7 +108,7 @@ class Priems
|
||||
|
||||
/** используем прием каждый ход
|
||||
* @param Battle $btl
|
||||
* @param array $eff
|
||||
* @param array $eff
|
||||
* @return bool
|
||||
*/
|
||||
public function hodUsePriem(Battle $btl, array $eff): bool
|
||||
@@ -466,11 +466,11 @@ class Priems
|
||||
/**
|
||||
* Новая функция магического заклинания с приёма.
|
||||
* Работает с числовыми приёмами в папке [priem].
|
||||
* @param int $attackerId кто использует приём
|
||||
* @param int $defenderId на кого использует приём
|
||||
* @param float $damage базовый урон приёма
|
||||
* @param string $damageType тип урона (стихия?) приходит строкой, и конвертируется функцией.
|
||||
* @param bool $hasCritical флаг, что приём МОЖЕТ критовать
|
||||
* @param int $attackerId кто использует приём
|
||||
* @param int $defenderId на кого использует приём
|
||||
* @param float $damage базовый урон приёма
|
||||
* @param string $damageType тип урона (стихия?) приходит строкой, и конвертируется функцией.
|
||||
* @param bool $hasCritical флаг, что приём МОЖЕТ критовать
|
||||
* @return array [0|damage] int урон, [1|crit] bool был ли крит, [2|miss] bool был ли промах, [3|miss_type] int тип промаха (всегда = 2).
|
||||
* @author Insallah
|
||||
*/
|
||||
@@ -786,7 +786,8 @@ class Priems
|
||||
$krituet = true,
|
||||
$heal = 0,
|
||||
$namenew = null
|
||||
) {
|
||||
)
|
||||
{
|
||||
$trawm_off = false;
|
||||
global $btl;
|
||||
if ($namenew != null) {
|
||||
@@ -965,8 +966,7 @@ class Priems
|
||||
);
|
||||
|
||||
//заносим в лог боя
|
||||
$vLog = 'time1=' . time(
|
||||
) . '||s1=' . $btl->users[$btl->uids[$usu]]['sex'] . '||t1=' . $btl->users[$btl->uids[$usu]]['team'] . '||login1=' . $btl->users[$btl->uids[$usu]]['login'] . '||s2=' . $btl->users[$btl->uids[$uen]]['sex'] . '||t2=' . $btl->users[$btl->uids[$uen]]['team'] . '||login2=' . $btl->users[$btl->uids[$uen]]['login'] . '';
|
||||
$vLog = 'time1=' . time() . '||s1=' . $btl->users[$btl->uids[$usu]]['sex'] . '||t1=' . $btl->users[$btl->uids[$usu]]['team'] . '||login1=' . $btl->users[$btl->uids[$usu]]['login'] . '||s2=' . $btl->users[$btl->uids[$uen]]['sex'] . '||t2=' . $btl->users[$btl->uids[$uen]]['team'] . '||login2=' . $btl->users[$btl->uids[$uen]]['login'] . '';
|
||||
$mas1 = [
|
||||
'time' => time(),
|
||||
'battle' => $btl->i->id,
|
||||
@@ -1579,13 +1579,13 @@ class Priems
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $uid на кого кастуем
|
||||
* @param int $pr id приема
|
||||
* @param int $uid на кого кастуем
|
||||
* @param int $pr id приема
|
||||
* @param int|string $data дата, если -1, то добавляем дату3
|
||||
* @param int $d2
|
||||
* @param int $d2
|
||||
* @param $tm
|
||||
* @param int $h ход
|
||||
* @param int $uu id юзера который использовал
|
||||
* @param int $h ход
|
||||
* @param int $uu id юзера который использовал
|
||||
* @param $max
|
||||
* @param $bj
|
||||
* @param $tp
|
||||
@@ -1614,7 +1614,8 @@ class Priems
|
||||
$noupdatebtl = 0,
|
||||
$noplus = 0,
|
||||
$pname = null
|
||||
) {
|
||||
)
|
||||
{
|
||||
global $btl;
|
||||
//$pl = mysql_fetch_assoc(mysql_query('SELECT * FROM `priems` WHERE `id` = ' . (int)$pr));
|
||||
$pl = Db::getRow('select * from priems where id = ?', [$pr]);
|
||||
@@ -1732,8 +1733,8 @@ class Priems
|
||||
|
||||
/** Получает строку data c шаблонной записью типа add_m11=2*{lvl1} и конвертирует в реальную строку.
|
||||
* <br>Шаблон: <br>lvl1 = $uid[level] <br>ts5 = $uid[s5] <br>mpAll = $uid[mpAll]
|
||||
* @param string $pl строка в формате data
|
||||
* @param int $uid пользователь, параметры которого используются для подставки в шаблон.
|
||||
* @param string $pl строка в формате data
|
||||
* @param int $uid пользователь, параметры которого используются для подставки в шаблон.
|
||||
* @return string строка в формате data с развёрнутыми шаблонами.
|
||||
*/
|
||||
public function redate($pl, $uid)
|
||||
@@ -1981,8 +1982,7 @@ class Priems
|
||||
} else {
|
||||
//бьем противника с пропуском хода
|
||||
mysql_query(
|
||||
'INSERT INTO `battle_act` (`battle`,`uid1`,`uid2`,`time`,`out1`,`type`,`tpo1`) VALUES ("' . $btl->i->id . '","' . $this->u->info['id'] . '","' . $this->u->info['enemy'] . '","' . time(
|
||||
) . '","1","1","2")'
|
||||
'INSERT INTO `battle_act` (`battle`,`uid1`,`uid2`,`time`,`out1`,`type`,`tpo1`) VALUES ("' . $btl->i->id . '","' . $this->u->info['id'] . '","' . $this->u->info['enemy'] . '","' . time() . '","1","1","2")'
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -2086,11 +2086,11 @@ class Priems
|
||||
);
|
||||
if ($upd) {
|
||||
TrainingManager::getInstance()
|
||||
->addPoint(
|
||||
'my_user_fourth_quest', function (TrainingManager $manager) {
|
||||
$manager->store();
|
||||
}
|
||||
);
|
||||
->addPoint(
|
||||
'my_user_fourth_quest', function (TrainingManager $manager) {
|
||||
$manager->store();
|
||||
}
|
||||
);
|
||||
$this->u->info['priems'] = $p;
|
||||
}
|
||||
} else {
|
||||
@@ -2172,7 +2172,7 @@ class Priems
|
||||
/**
|
||||
* Летит в js, двойные кавычки не использовать.
|
||||
* @param array $pl
|
||||
* @param int $id
|
||||
* @param int $id
|
||||
* @return array
|
||||
*/
|
||||
private function priemInfo(array $pl, int $id = -1): array
|
||||
@@ -2281,11 +2281,11 @@ class Priems
|
||||
$cl = 'href="javascript:void(0);" onClick="top.priemOnUser(' . $i . ',1,\'' . $pl['name'] . '\',\'' . $oninuser . '\',\'' . $pl['img'] . '\');"';
|
||||
unset($oninuser);
|
||||
} else {
|
||||
$cl = 'href="javascript:void(0);" onClick="usepriem(' . $i . ',1,\'' . $pl['img'] . '\');"';
|
||||
$cl = 'href="javascript:void(0);" onClick="usepriem(' . $i . ');"';
|
||||
}
|
||||
} elseif ($pl['type'] == 2) {
|
||||
//длительное
|
||||
$cl = 'href="javascript:void(0);" onClick="usepriem(' . $i . ',1,\'' . $pl['img'] . '\');"';
|
||||
$cl = 'href="javascript:void(0);" onClick="usepriem(' . $i . ');"';
|
||||
} elseif ($pl['type'] == 3) {
|
||||
$cl = 'href="javascript:void(0);" onClick="alert(\'Возможно используем?\');"';
|
||||
}
|
||||
@@ -2328,7 +2328,7 @@ class Priems
|
||||
1
|
||||
);
|
||||
if (!isset($use_lst['id'])) {
|
||||
$pr .= '<a onMouseOver="top.hi(this,\'<b>Выпустить зверя</b><Br>Ваш зверь вмешивается в поединок. Можно применять один раз за бой.\',event,3,0,1,1,\'width:240px\');" onMouseOut="top.hic();" onMouseDown="top.hic();" href="javascript:void(0);" onClick="usepriem(100500,1,\'\');"><img style="margin-top:1px; margin-left:3px;" src="//img.new-combats.tech/i/eff/pet_unleash.gif" width="40" height="25" /></a>';
|
||||
$pr .= '<a onMouseOver="top.hi(this,\'<b>Выпустить зверя</b><Br>Ваш зверь вмешивается в поединок. Можно применять один раз за бой.\',event,3,0,1,1,\'width:240px\');" onMouseOut="top.hic();" onMouseDown="top.hic();" href="javascript:void(0);" onClick="usepriem(100500);"><img style="margin-top:1px; margin-left:3px;" src="//img.new-combats.tech/i/eff/pet_unleash.gif" width="40" height="25" /></a>';
|
||||
} else {
|
||||
$pr .= '<img onMouseOver="top.hi(this,\'<b>Выпустить зверя</b><Br>Ваш зверь вмешивается в поединок. Можно применять один раз за бой.\',event,3,0,1,1,\'width:240px\');" onMouseOut="top.hic();" onMouseDown="top.hic();" style="margin-top:1px; margin-left:2px;" class="nopriemuse" src="//img.new-combats.tech/i/eff/pet_unleash.gif" width="40" height="25" />';
|
||||
}
|
||||
@@ -2787,7 +2787,7 @@ class Priems
|
||||
* Конечный damage после множителей делится на 5 и пишется в БД (atgm=).
|
||||
* Файлы: 33, 56, 57, 58, 59, 60.
|
||||
* @param $id
|
||||
* @param array $pl массив значений из БД priems.
|
||||
* @param array $pl массив значений из БД priems.
|
||||
* @param Battle $btl
|
||||
* @return void
|
||||
*/
|
||||
@@ -2819,7 +2819,7 @@ class Priems
|
||||
* Если есть одинаковые статы из них выбирается случайный.
|
||||
* Файл:267, приём 268. Понимай как хочешь.
|
||||
* @param $id
|
||||
* @param array $pl
|
||||
* @param array $pl
|
||||
* @param Battle $btl
|
||||
* @return void
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user