This commit is contained in:
2023-11-02 15:57:39 +02:00
parent a14232a899
commit def933dca4
51 changed files with 8866 additions and 12429 deletions

View File

@@ -1,7 +1,7 @@
<?php
$log_text = array();
$log_text[0] = array(); //для муж.
$log_text = [];
$log_text[0] = []; //для муж.
//R1
$log_text[0][1][0] = 'вспомнил что-то важное';
$log_text[0][1][1] = 'высморкался';
@@ -174,7 +174,7 @@ $log_text[0][14][2] = 'мертв!';
$log_text[0][14][3] = 'убит!';
$log_text[0][14][4] = 'проиграл бой!';
$log_text[1] = array(); //для жен.
$log_text[1] = []; //для жен.
//R1
$log_text[1][1][0] = 'вспомнила что-то важное';
$log_text[1][1][1] = 'высморкалась';
@@ -356,11 +356,6 @@ $log_text[0][15][2] = 'потратил свой ход на прием';
$log_text[1][15][2] = 'потратила свой ход на прием';
//Приемы / приемы
$log_text[0][16][0] = 'использовал';
$log_text[1][16][0] = 'использовала';
@@ -390,8 +385,8 @@ $log_text[0][18][0] = '{u1}, вспомнив слова своего сэнсе
$log_text[1][18][0] = '{u1}, вспомнив слова своего сэнсея, из последних сил применила прием &quot;{pr}&quot; на {u2}.';
//Текст приемов (муж) (магические) (урон)
$log_text[0][19][0] = '{u1}, победив страх, решил поразить {u2} заклятьем &quot;{pr}&quot;';
$log_text[0][19][1] = '{u1} наконец сфокусировал свое внимание на поединке и наколдовал &quot;{pr}&quot; на {u2}';
$log_text[0][19][0] = '{u1}, победив страх, решил поразить {u2} заклятьем &quot;{pr}&quot;';
$log_text[0][19][1] = '{u1} наконец сфокусировал свое внимание на поединке и наколдовал &quot;{pr}&quot; на {u2}';
$log_text[0][19][2] = '{u1} нарисовав вокруг себя несколько рун, призвал заклятье &quot;{pr}&quot; на {u2}';
$log_text[0][19][3] = '{u1} догадавшись, что пришло время показать себя, произнес заклятье &quot;{pr}&quot; на {u2}';
$log_text[0][19][4] = '{u1} с испугу произнес, первое пришедшее на ум, заклятье &quot;{pr}&quot; на {u2}';
@@ -407,8 +402,8 @@ $log_text[0][20][4] = '{u1} <вырезано цензурой> от перен
$log_text[0][20][5] = '{u1} пытался превратить {u2} в табуретку при помощи заклинания &quot;{pr}&quot;... но ничего не вышло';
//Текст приемов (муж) (магические) (на себя)
$log_text[0][21][0] = '{u1}, победив страх, решил поразить всех и наколдовал &quot;{pr}&quot;';
$log_text[0][21][1] = '{u1} наконец сфокусировал свое внимание на поединке и наколдовал &quot;{pr}&quot;';
$log_text[0][21][0] = '{u1}, победив страх, решил поразить всех и наколдовал &quot;{pr}&quot;';
$log_text[0][21][1] = '{u1} наконец сфокусировал свое внимание на поединке и наколдовал &quot;{pr}&quot;';
$log_text[0][21][2] = '{u1} нарисовав вокруг себя несколько рун, призвал заклятье &quot;{pr}&quot;';
$log_text[0][21][3] = '{u1} догадавшись, что пришло время показать себя, произнес заклятье &quot;{pr}&quot;';
$log_text[0][21][4] = '{u1} с испугу произнес, первое пришедшее на ум, заклятье &quot;{pr}&quot;';
@@ -416,8 +411,8 @@ $log_text[0][21][5] = '{u1} впал в транс и начал бормота
$log_text[0][21][6] = '{u1} очнулся от медитации, и призвал заклятье &quot;{pr}&quot;';
//Текст приемов (жен) (магические) (урон)
$log_text[1][19][0] = '{u1}, победив страх, решила поразить {u2} заклятьем &quot;{pr}&quot;';
$log_text[1][19][1] = '{u1} наконец сфокусировала свое внимание на поединке и наколдовала &quot;{pr}&quot; на {u2}';
$log_text[1][19][0] = '{u1}, победив страх, решила поразить {u2} заклятьем &quot;{pr}&quot;';
$log_text[1][19][1] = '{u1} наконец сфокусировала свое внимание на поединке и наколдовала &quot;{pr}&quot; на {u2}';
$log_text[1][19][2] = '{u1} нарисовав вокруг себя несколько рун, призвала заклятье &quot;{pr}&quot; на {u2}';
$log_text[1][19][3] = '{u1} догадавшись, что пришло время показать себя, произнесла заклятье &quot;{pr}&quot; на {u2}';
$log_text[1][19][4] = '{u1} с испугу произнесла, первое пришедшее на ум, заклятье &quot;{pr}&quot; на {u2}';
@@ -433,12 +428,11 @@ $log_text[1][20][4] = '{u1} <вырезано цензурой> от перен
$log_text[1][20][5] = '{u1} пыталась превратить {u2} в табуретку при помощи заклинания &quot;{pr}&quot;... но ничего не вышло';
//Текст приемов (жен) (магические) (на себя)
$log_text[1][21][0] = '{u1}, победив страх, решила поразить всех и наколдовала &quot;{pr}&quot;';
$log_text[1][21][1] = '{u1} наконец сфокусировала свое внимание на поединке и наколдовала &quot;{pr}&quot;';
$log_text[1][21][0] = '{u1}, победив страх, решила поразить всех и наколдовала &quot;{pr}&quot;';
$log_text[1][21][1] = '{u1} наконец сфокусировала свое внимание на поединке и наколдовала &quot;{pr}&quot;';
$log_text[1][21][2] = '{u1} нарисовав вокруг себя несколько рун, призвала заклятье &quot;{pr}&quot;';
$log_text[1][21][3] = '{u1} догадавшись, что пришло время показать себя, произнесла заклятье &quot;{pr}&quot;';
$log_text[1][21][4] = '{u1} с испугу произнесла, первое пришедшее на ум, заклятье &quot;{pr}&quot;';
$log_text[1][21][5] = '{u1} впала в транс и начала бормотать заклятие &quot;{pr}&quot;';
$log_text[1][21][6] = '{u1} очнулась от медитации, и призвала заклятье &quot;{pr}&quot;';
?>

View File

@@ -1,52 +1,35 @@
<?php
use Core\Config;
use Core\Db;
session_start();
$tm = microtime();
$tm = explode(' ', $tm);
$tm = $tm[0] + $tm[1];
$tm = microtime(true);
if (!isset($CRON_CORE)) {
require_once('../../_incl_data/__config.php');
}
if (isset($_GET['cron_core'])) {
function getIPblock()
{
return isset($_SERVER['HTTP_X_REAL_IP']) ? $_SERVER['HTTP_X_REAL_IP'] : $_SERVER['REMOTE_ADDR'];
}
}
if (!isset($CRON_CORE)) {
define('GAME', true);
require_once('../../_incl_data/class/__db_connect.php');
}
function e($t)
function e($t): void
{
(new Chat())->debug($t, true);
}
if (isset($_GET['cron_core'])) {
if (isset($_GET['cron_core'])) { // что ты такое?
$id = [
'id' => $_GET['uid'],
'pass' => $_GET['pass'],
];
if (md5($id['id'] . '_brfCOreW@!_' . $id['pass']) == $_GET['cron_core']) {
$uzr = mysql_fetch_array(
mysql_query(
'SELECT `id`,`login`,`pass` FROM `users` WHERE `id` = "' . mysql_real_escape_string(
$id['id']
) . '" AND `pass` = "' . mysql_real_escape_string($id['pass']) . '" LIMIT 1'
)
);
if (isset($uzr['id'])) {
$CRON_CORE = true;
$_COOKIE['login'] = $uzr['login'];
//$_COOKIE['pass'] = $uzr['pass'];
$_POST['id'] = 'reflesh';
}
unset($uzr);
$CRON_CORE = true;
$_COOKIE['login'] = User::getLoginById($id['id']);
$_POST['id'] = 'reflesh';
}
}
@@ -58,241 +41,236 @@ if (!isset($CRON_CORE)) {
header('Pragma: no-cache');
}
if (($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest' || isset($CRON_CORE)) && (isset($_POST['atack'], $_POST['block']) || (isset($_POST['id']) && $_POST['id'] == 'reflesh') || isset($_POST['usepriem']) || isset($_POST['useitem']))) {
if (
$_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest' && !isset($CRON_CORE) ||
!isset($_POST['atack'], $_POST['block']) && (!isset($_POST['id']) || $_POST['id'] != 'reflesh') && !isset($_POST['usepriem']) && !isset($_POST['useitem'])
) {
return;
}
unset($tm);
$js = '';
$u = User::start();
$magic = new Magic();
$priem = new Priems();
if ($u->info['battle'] == 0) {
$btl_last = mysql_fetch_array(
mysql_query(
'SELECT `id`,`battle` FROM `battle_users` WHERE `uid` = "' . $u->info['id'] . '" AND `finish` = "0" LIMIT 1'
)
);
if (isset($btl_last['id']) && $u->info['battle'] == 0) {
echo '<script>document.getElementById(\'teams\').style.display=\'none\';var battleFinishData = "' . $u->info['battle_text'] . '";</script>';
$u->info['battle'] = $btl_last['id'];
$u->info['battle_lsto'] = true;
mysql_query(
'UPDATE `stats` SET `battle_text` = "",`last_b`="0" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1'
);
mysql_query('UPDATE `battle_users` SET `finish` = 1 WHERE `uid` = "' . $u->info['id'] . '"');
echo '<script>alert("Поединок для вас завершился.");location.href="main.php?finish=1";</script>';
}
}
if (!isset($CRON_CORE) && (!isset($u->info['id']) || ($u->info['joinIP'] == 1 && $u->info['ip'] != $_SERVER['HTTP_X_REAL_IP']))) {
die($c['exit']);
}
function json_fix_cyr($json_str)
{
return $json_str;
}
$u->stats = $u->getStats($u->info['id'], 0);
if (!isset($CRON_CORE) && $u->info['online'] < time() - 30) {
mysql_query(
"UPDATE `users` SET `online`='" . time() . "',`timeMain`='" . time(
) . "' WHERE `id`='" . $u->info['id'] . "' LIMIT 1"
);
}
$btl = new Battle();
require_once('log_text.php');
$btl->is = $u->is;
$btl->items = $u->items;
$btl->info = $btl->battleInfo($u->info['battle']);
if (!isset($btl->info['id'])) {
if ($u->info['battle'] == -1) {
//завершаем поединок
$upd = mysql_query(
'UPDATE `users` SET `battle` = "0",`online` = "' . time(
) . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1'
);
if (!$upd) {
if (!isset($CRON_CORE)) {
die('Ошибка завершения поединка.');
}
} else {
echo '<script>location="main.php";</script>';
}
} else {
mysql_query('UPDATE `users` SET `battle` = "0" WHERE `battle` = "' . $u->info['battle'] . '" LIMIT 100');
if (!isset($CRON_CORE)) {
die('<script>location="main.php";</script>');
}
}
} else {
//получаем массив с игроками в бою
$btl->teamsTake();
if (isset($_POST['useitem']) && $btl->testUsersLive()) {
$magic->useItems((int)$_POST['useitem']);
if ($u->error != '') {
echo '<div style="color: red; font-weight: bold; text-align: center">' . $u->error . '</div>';
}
}
//заносим удары,приемы,эффекты и т.д.
//удар
if (isset($_POST['atack']) && isset($_POST['block'])) {
$btl->addAtack();
}
//прием
if (isset($_POST['usepriem']) && $btl->testUsersLive() && isset($btl->users[$btl->uids[$u->info['enemy']]])) {
$priem->pruse($_POST['usepriem']);
}
//используем заклятие / пирожки
//проводим действия (удары, использование приемов, если есть возможность нанести удар или использовать прием)
$btl->testActions();
//авто-смена противника, либо просто смена противника
if ($u->stats['hpNow'] >= 1) {
//ручная смена
if (isset($_POST['smn']) && $_POST['smn'] != 'none') {
/* ---------------- */
$uidz = mysql_fetch_array(
mysql_query(
'SELECT `id`,`inUser` FROM `users` WHERE `login` = "' . mysql_real_escape_string(
$_POST['smn']
) . '" AND `battle` = "' . $u->info['battle'] . '" LIMIT 1'
)
);
if ($uidz['inUser'] > 0) {
$uidz['id'] = $uidz['inUser'];
}
$rsm = $btl->smena($uidz['id'], false);
if ($rsm != 1) {
echo '<font color=red><center><b>' . $rsm . '</b></center></font>';
}
unset($rsm);
$js .= 'smena_login = \'none\';';
}
//авто-смена
if ($u->info['enemy'] == 0 || $btl->stats[$btl->uids[$u->info['enemy']]]['hpNow'] <= 0 || isset($btl->ga[$u->info['id']][$u->info['enemy']])) {
$btl->autoSmena();
}
} else {
$btl->mainStatus = 3;
}
//получаем данные о поединке
//получаем данные о логе боя
//Если бой сыгран - завершаем
if (!isset($_POST['usepriem'])) {
$btl->testFinish();
}
if ($btl->info['team_win'] == -1) {
$js .= $btl->genTeams($u->info['id']);
} else {
$btl->mainStatus = 3;
$btl->e = $u->btl_txt;
}
if ($btl->info['id'] == $u->info['lider']) {
$js .= '$("#btn_down_img3").show();$("#btn_down_img4").show();';
} else {
$js .= '$("#btn_down_img3").hide();$("#btn_down_img4").hide();';
}
if (!isset($CRON_CORE)) {
$js .= $btl->myInfo($u->info['id'], 1);
//выводим данные
if ($btl->e != '') {
echo '<font color="red"><center><b>' . $btl->e . '</b></center></font>';
}
if (isset($btl->ga[$u->info['id']][$u->info['enemy']])) {
if ($u->info['hpNow'] >= 1) {
$btl->mainStatus = 2;
}
} else {
if ($u->info['enemy'] != 0 && $btl->info['team_win'] == -1 && $u->info['hpNow'] >= 1) {
$js .= $btl->myInfo($u->info['enemy'], 2);
}
}
if ($btl->info['izlom'] > 0) {
$js .= 'volna(' . (1 + $btl->info['izlomRoundSee']) . ');';
}
$i = 1;
while ($i <= 7) {
if ($btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] < 0) {
$btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] = 0;
}
if ($btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] > 25 && $i < 7) {
$btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] = 25;
}
$i++;
}
$atk1 = 0;
$rsys = '';
if ($rsys != '') {
$js .= $rsys;
}
unset($rsys);
if (isset($btl->ga[$u->info['enemy']][$u->info['id']])) {
$atk1 = 1;
}
}
$rehtml = '';
if (!isset($CRON_CORE)) {
$js .= '$("#priems").html("' . $priem->seeMy(2) . '");';
$jslog = $btl->lookmLog();
$jslog .= $btl->lookLog();
if ($jslog != '') {
$js = $jslog . $js;
}
unset($jslog);
$tmr = round(($btl->info['timeout'] / 60), 2);
$dtxtn = '';
$rehtml .= '<script type="text/javascript">eatk=' . $atk1 . ';
$("#nabito").html("' . (floor($btl->users[$btl->uids[$u->info['id']]]['battle_yron'])) . $dtxtn . '");
$("#expmaybe").html("' . (floor($btl->users[$btl->uids[$u->info['id']]]['battle_exp'])) . '");
$("#timer_out").html("' . $tmr . '");
$(\'#pers_magic\').html("' . $u->btlMagicList() . '");
g_iCount = 30;
noconnect = 15;
connect = 1;
$("#go_btn").show();
$("#reflesh_btn").show();
za = ' . (0 + $btl->stats[$btl->uids[$u->info['id']]]['zona']) . '; genZoneAtack();
zb = ' . (0 + $btl->testZonbVis()) . '; genZoneBlock();
refleshPoints();
tactic(1,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic1']) . ');
tactic(2,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic2']) . ');
tactic(3,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic3']) . ');
tactic(4,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic4']) . ');
tactic(5,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic5']) . ');
tactic(6,' . (0 + floor($btl->users[$btl->uids[$u->info['id']]]['tactic6'])) . ');
smnpty=' . (0 + $u->info['smena']) . ';
mainstatus(' . $btl->mainStatus . ');
tactic(7,"' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic7']) . '");
smena_alls = "0";
ggcode="' . $code . '";
' . $js . '
</script>';
echo($rehtml);
if ($btl->cached) {
$btl->clear_cache_start();
}
unset($atk1);
}
echo '<script>ggcode="' . $code . '";if(t057!=null){clearTimeout(t057);}</script>';
unset($tm);
$js = '';
$u = User::start();
$magic = new Magic();
$priem = new Priems();
if ($u->info['battle'] == 0) {
$btlLastId = Db::getValue('select id from battle_users where uid = ? and finish = 0 limit 1', [$u->info['id']]);
if ($btlLastId) {
echo "<script>document.getElementById('teams').style.display='none'; var battleFinishData = '{$u->info['battle_text']}';</script>";
$u->info['battle'] = $btlLastId;
$u->info['battle_lsto'] = true;
Db::sql("update stats set battle_text = '', last_b = 0 where id = ?", [$u->info['id']]);
Db::sql('update battle_users set finish = 1 where uid = ?', [$u->info['id']]);
echo '<script>alert("Поединок для вас завершился.");location.href="main.php?finish=1";</script>';
}
}
if (!isset($CRON_CORE) && (!isset($u->info['id']) || ($u->info['joinIP'] == 1 && $u->info['ip'] != $_SERVER['HTTP_X_REAL_IP']))) {
die(Config::get('exit'));
}
$u->stats = $u->getStats($u->info['id']);
if (!isset($CRON_CORE) && $u->info['online'] < time() - 30) {
Db::sql('update users set online = unix_timestamp(), timeMain = unix_timestamp() where id = ?', [$u->info['id']]);
}
$error = fn(string $str): string => '<div style="color: red; text-align: center; font-weight: bold;">' . $str . '</div>';
$btl = new Battle();
require_once('log_text.php');
$btl->is = $u->is;
$btl->items = $u->items;
$btl->info = $btl->battleInfo($u->info['battle']);
if (!isset($btl->info['id'])) {
if ($u->info['battle'] == -1) {
//завершаем поединок
Db::sql('update users set battle = 0, online = unix_timestamp() where id = ?', [$u->info['id']]);
exit('<script>location="main.php";</script>');
} else {
Db::sql('update users set battle = 0 where battle = ?', [$u->info['battle']]);
if (!isset($CRON_CORE)) {
exit('<script>location="main.php";</script>');
}
}
} else {
//получаем массив с игроками в бою
$btl->teamsTake();
if (isset($_POST['useitem']) && $btl->testUsersLive()) {
$magic->useItems((int)$_POST['useitem']);
if ($u->error != '') {
echo $error($u->error);
}
}
//заносим удары,приемы,эффекты и т.д.
//удар
if (isset($_POST['atack']) && isset($_POST['block'])) {
$btl->addAtack();
}
//прием
if (isset($_POST['usepriem']) && $btl->testUsersLive() && isset($btl->users[$btl->uids[$u->info['enemy']]])) {
$priem->pruse($_POST['usepriem']);
}
//используем заклятие / пирожки
//не используем? О_о
//проводим действия (удары, использование приемов, если есть возможность нанести удар или использовать прием)
$btl->testActions();
//авто-смена противника, либо просто смена противника
if ($u->stats['hpNow'] < 1) {
$btl->mainStatus = 3;
} else {
//ручная смена
if (isset($_POST['smn']) && $_POST['smn'] != 'none') {
/* ---------------- */
$uidz = Db::getValue('select if(inUser > 0, inUser, id) as id from users where login = ? and battle = ?', [$_POST['smn'], $u->info['battle']]);
$rsm = $btl->smena($uidz);
if ($rsm != 1) {
echo $error($rsm);
}
unset($rsm);
$js .= 'smena_login = \'none\';';
}
//авто-смена
if (
$u->info['enemy'] == 0 ||
$btl->stats[$btl->uids[$u->info['enemy']]]['hpNow'] <= 0 ||
isset($btl->ga[$u->info['id']][$u->info['enemy']])
) {
$btl->autoSmena();
}
}
//получаем данные о поединке
//получаем данные о логе боя
//Если бой сыгран - завершаем
if (!isset($_POST['usepriem'])) {
$btl->testFinish();
}
if ($btl->info['team_win'] == -1) {
$js .= $btl->genTeams($u->info['id']);
} else {
$btl->mainStatus = 3;
$btl->e = $u->btl_txt;
}
if ($btl->info['id'] == $u->info['lider']) {
$js .= '$("#btn_down_img3").show();$("#btn_down_img4").show();';
} else {
$js .= '$("#btn_down_img3").hide();$("#btn_down_img4").hide();';
}
if (!isset($CRON_CORE)) {
$js .= $btl->myInfo($u->info['id'], 1);
//выводим данные
if ($btl->e != '') {
echo $error($btl->e);
}
if (
isset($btl->ga[$u->info['id']][$u->info['enemy']]) &&
$u->info['hpNow'] >= 1
) {
$btl->mainStatus = 2;
} elseif (
$u->info['enemy'] != 0 &&
$btl->info['team_win'] == -1 &&
$u->info['hpNow'] >= 1
) {
$js .= $btl->myInfo($u->info['enemy'], 2);
}
if ($btl->info['izlom'] > 0) {
$js .= 'volna(' . (1 + $btl->info['izlomRoundSee']) . ');';
}
$i = 1;
while ($i <= 7) {
if ($btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] < 0) {
$btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] = 0;
}
if ($btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] > 25 && $i < 7) {
$btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] = 25;
}
$i++;
}
$js .= '$("#priems").html("' . $priem->seeMy(2) . '");';
$jslog = $btl->lookmLog() . $btl->lookLog();
if ($jslog != '') {
$js = $jslog . $js;
}
unset($jslog);
$atk1 = isset($btl->ga[$u->info['enemy']][$u->info['id']]) ? 1 : 0;
$nabito = floor($btl->users[$btl->uids[$u->info['id']]]['battle_yron']);
$expmaybe = floor($btl->users[$btl->uids[$u->info['id']]]['battle_exp']);
$tmr = round(($btl->info['timeout'] / 60), 2);
$persMagic = $u->btlMagicList();
$za = (int)$btl->stats[$btl->uids[$u->info['id']]]['zona'];
$zb = (int)$btl->testZonbVis();
$tactic1 = (int)$btl->users[$btl->uids[$u->info['id']]]['tactic1'];
$tactic2 = (int)$btl->users[$btl->uids[$u->info['id']]]['tactic2'];
$tactic3 = (int)$btl->users[$btl->uids[$u->info['id']]]['tactic3'];
$tactic4 = (int)$btl->users[$btl->uids[$u->info['id']]]['tactic4'];
$tactic5 = (int)$btl->users[$btl->uids[$u->info['id']]]['tactic5'];
$tactic6 = (int)$btl->users[$btl->uids[$u->info['id']]]['tactic6'];
$tactic7 = (int)$btl->users[$btl->uids[$u->info['id']]]['tactic7'];
$smnpty = (int)$u->info['smena'];
$mainstatus = $btl->mainStatus;
$ggcode = PassGen::new();
echo <<<HTML
<script>
eatk = $atk1;
$('#nabito').html('$nabito');
$('#expmaybe').html('$expmaybe');
$('#timer_out').html('$tmr');
$('#pers_magic').html('$persMagic');
g_iCount = 30;
noconnect = 15;
connect = 1;
$('#go_btn').show();
$('#reflesh_btn').show();
za = '$za'; genZoneAtack();
zb = '$zb'; genZoneBlock();
refleshPoints();
tactic(1,'$tactic1');
tactic(2,'$tactic2');
tactic(3,'$tactic3');
tactic(4,'$tactic4');
tactic(5,'$tactic5');
tactic(6,'$tactic6');
smnpty='$smnpty';
mainstatus('$mainstatus')
tactic(7,'$tactic7');
smena_alls = '0';
ggcode='$ggcode';
$js
</script>
HTML;
if ($btl->cached) {
$btl->clear_cache_start();
}
unset($atk1);
}
echo '<script>ggcode="' . PassGen::new() . '";if(t057!=null){clearTimeout(t057);}</script>';
}

View File

@@ -8,254 +8,251 @@ function e($t)
$_POST['id'] = 'reflesh';
//
if (isset($_POST['atack'], $_POST['block']) || isset($_POST['usepriem']) || isset($_POST['useitem'])) {
if (!isset($_POST['atack'], $_POST['block']) && !isset($_POST['usepriem']) && !isset($_POST['useitem'])) {
return;
}
session_start();
$tm = microtime();
$tm = explode(' ', $tm);
$tm = $tm[0] + $tm[1];
session_start();
$tm = microtime();
$tm = explode(' ', $tm);
$tm = $tm[0] + $tm[1];
unset($tm);
$js = '';
unset($tm);
$js = '';
if ($u->info['battle'] == 0) {
$btl_last = mysql_fetch_array(
mysql_query(
'SELECT `id`,`battle` FROM `battle_users` WHERE `uid` = "' . $u->info['id'] . '" AND `finish` = "0" LIMIT 1'
)
if ($u->info['battle'] == 0) {
$btl_last = mysql_fetch_array(
mysql_query(
'SELECT `id`,`battle` FROM `battle_users` WHERE `uid` = "' . $u->info['id'] . '" AND `finish` = "0" LIMIT 1'
)
);
if (isset($btl_last['id']) && $u->info['battle'] == 0) {
echo '<script>document.getElementById(\'teams\').style.display=\'none\';var battleFinishData = "' . $u->info['battle_text'] . '";</script>';
$u->info['battle'] = $btl_last['id'];
$u->info['battle_lsto'] = true;
mysql_query(
'UPDATE `stats` SET `battle_text` = "",`last_b`="0" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1'
);
if (isset($btl_last['id']) && $u->info['battle'] == 0) {
echo '<script>document.getElementById(\'teams\').style.display=\'none\';var battleFinishData = "' . $u->info['battle_text'] . '";</script>';
$u->info['battle'] = $btl_last['id'];
$u->info['battle_lsto'] = true;
mysql_query(
'UPDATE `stats` SET `battle_text` = "",`last_b`="0" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1'
);
mysql_query('UPDATE `battle_users` SET `finish` = 1 WHERE `uid` = "' . $u->info['id'] . '"');
echo '<script>alert("Поединок для вас завершился.");location.href="main.php?finish=1";</script>';
}
}
if (!isset($CRON_CORE)) {
if (!isset($u->info['id']) || ($u->info['joinIP'] == 1 && $u->info['ip'] != $_SERVER['HTTP_X_REAL_IP'])) {
die($c['exit']);
}
}
function json_fix_cyr($json_str)
{
return $json_str;
}
if (!isset($CRON_CORE)) {
if ($u->info['online'] < time() - 30) {
mysql_query(
"UPDATE `users` SET `online`='" . time() . "',`timeMain`='" . time(
) . "' WHERE `id`='" . $u->info['id'] . "' LIMIT 1"
);
}
}
$btl->is = $u->is;
$btl->items = $u->items;
$btl->info = $btl->battleInfo($u->info['battle']);
if (!isset($btl->info['id'])) {
if ($u->info['battle'] == -1) {
//завершаем поединок
$upd = mysql_query(
'UPDATE `users` SET `battle` = "0",`online` = "' . time(
) . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1'
);
if (!$upd) {
if (!isset($CRON_CORE)) {
die('Ошибка завершения поединка.');
}
} else {
echo '<script>location="main.php";</script>';
}
} else {
mysql_query('UPDATE `users` SET `battle` = "0" WHERE `battle` = "' . $u->info['battle'] . '" LIMIT 100');
if (!isset($CRON_CORE)) {
die('<script>location="main.php";</script>');
}
}
} else {
//получаем массив с игроками в бою
$btl->teamsTake();
if (isset($_POST['useitem']) && $btl->testUsersLive() == true) {
$magic->useItems((int)$_POST['useitem']);
if ($u->error != '') {
echo '<font color=red><center><b>' . $u->error . '</b></center></font>';
}
}
//заносим удары,приемы,эффекты и т.д.
//удар
if (isset($_POST['atack']) && isset($_POST['block'])) {
$btl->addAtack();
}
//прием
if (isset($_POST['usepriem']) && $btl->testUsersLive() == true) {
$priem->pruse($_POST['usepriem']);
}
//используем заклятие / пирожки
//проводим действия (удары, использование приемов, если есть возможность нанести удар или использовать прием)
$btl->testActions();
//авто-смена противника, либо просто смена противника
if ($u->stats['hpNow'] >= 1) {
//ручная смена
if (isset($_POST['smn']) && $_POST['smn'] != 'none') {
/* ---------------- */
$uidz = mysql_fetch_array(
mysql_query(
'SELECT `id`,`inUser` FROM `users` WHERE `login` = "' . mysql_real_escape_string(
$_POST['smn']
) . '" AND `battle` = "' . $u->info['battle'] . '" LIMIT 1'
)
);
if ($uidz['inUser'] > 0) {
$uidz['id'] = $uidz['inUser'];
}
$rsm = $btl->smena($uidz['id'], false);
if ($rsm != 1) {
echo '<font color=red><center><b>' . $rsm . '</b></center></font>';
}
unset($rsm);
$js .= 'smena_login = \'none\';';
}
//авто-смена
if ($u->info['enemy'] == 0 || $btl->stats[$btl->uids[$u->info['enemy']]]['hpNow'] <= 0 || isset($btl->ga[$u->info['id']][$u->info['enemy']])) {
$btl->autoSmena();
}
} else {
$btl->mainStatus = 3;
}
//получаем данные о поединке
//получаем данные о логе боя
//Если бой сыгран - завершаем
if (!isset($_POST['usepriem'])) {
$btl->testFinish();
}
if ($btl->info['team_win'] == -1) {
$js .= $btl->genTeams($u->info['id']);
} else {
$btl->mainStatus = 3;
$btl->e = $u->btl_txt;
}
if (!isset($CRON_CORE)) {
$js .= $btl->myInfo($u->info['id'], 1);
//выводим данные
if ($btl->e != '') {
echo '<font color="red"><center><b>' . $btl->e . '</b></center></font>';
}
if (isset($btl->ga[$u->info['id']][$u->info['enemy']])) {
if ($u->info['hpNow'] >= 1) {
$btl->mainStatus = 2;
}
} else {
if ($u->info['enemy'] != 0 && $btl->info['team_win'] == -1 && $u->info['hpNow'] >= 1) {
$js .= $btl->myInfo($u->info['enemy'], 2);
}
}
if ($btl->info['izlom'] > 0) {
$js .= 'volna(' . (1 + $btl->info['izlomRoundSee']) . ');';
}
$i = 1;
while ($i <= 7) {
if ($btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] < 0) {
$btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] = 0;
}
if ($btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] > 25 && $i < 7) {
$btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] = 25;
}
$i++;
}
$atk1 = 0;
if (!isset($CRON_CORE)) {
$rsys = '';
}
if ($rsys != '') {
$js .= $rsys;
}
unset($rsys);
if (isset($btl->ga[$u->info['enemy']][$u->info['id']])) {
$atk1 = 1;
}
}
$rehtml = '';
if (!isset($CRON_CORE)) {
$js .= '$("#priems").html("' . $priem->seeMy(2) . '");';
$jslog = $btl->lookmLog();
$jslog .= $btl->lookLog();
if ($jslog != '') {
$js .= 'top.btlclearlog();' . $jslog;
}
unset($jslog);
//}
$rehtml .= '<script type="text/javascript">var battle = ' . (0 + $btl->info['id']) . ';top.cb_statusTest();eatk=' . $atk1 . ';
if(document.getElementById("nabito")!=undefined)
{
document.getElementById("nabito").innerHTML = "' . (floor(
$btl->users[$btl->uids[$u->info['id']]]['battle_yron']
)) . '";
}
if(document.getElementById("expmaybe")!=undefined)
{
document.getElementById("expmaybe").innerHTML = "' . (floor(
$btl->users[$btl->uids[$u->info['id']]]['battle_exp']
)) . '";
}
if(document.getElementById("timer_out")!=undefined)
{
document.getElementById("timer_out").innerHTML = "' . round(($btl->info['timeout'] / 60), 2) . '";
}
$(\'#pers_magic\').html("' . $u->btlMagicList() . '");
g_iCount = 30;
noconnect = 15;
connect = 1;
if(document.getElementById("go_btn")!=undefined)
{
document.getElementById("go_btn").disabled = "";
}
if(document.getElementById("reflesh_btn")!=undefined)
{
document.getElementById("reflesh_btn").disabled = "";
}
za = ' . (0 + $btl->stats[$btl->uids[$u->info['id']]]['zona']) . '; genZoneAtack();
zb = ' . (0 + $btl->testZonbVis()) . '; genZoneBlock();
refleshPoints();
tactic(1,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic1']) . ');
tactic(2,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic2']) . ');
tactic(3,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic3']) . ');
tactic(4,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic4']) . ');
tactic(5,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic5']) . ');
tactic(6,' . (0 + floor($btl->users[$btl->uids[$u->info['id']]]['tactic6'])) . ');
smnpty=' . (0 + $u->info['smena']) . ';
mainstatus(' . $btl->mainStatus . ');
tactic(7,"' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic7']) . '");
smena_alls = "0";
ggcode="' . $code . '";
' . $js . '
</script>';
echo($rehtml);
if ($btl->cached == true) {
$btl->clear_cache_start();
}
unset($atk1);
}
echo '<script>ggcode="' . $code . '";if(t057!=null){clearTimeout(t057);}</script>';
mysql_query('UPDATE `battle_users` SET `finish` = 1 WHERE `uid` = "' . $u->info['id'] . '"');
echo '<script>alert("Поединок для вас завершился.");location.href="main.php?finish=1";</script>';
}
}
?>
if (!isset($CRON_CORE)) {
if (!isset($u->info['id']) || ($u->info['joinIP'] == 1 && $u->info['ip'] != $_SERVER['HTTP_X_REAL_IP'])) {
die($c['exit']);
}
}
function json_fix_cyr($json_str)
{
return $json_str;
}
if (!isset($CRON_CORE)) {
if ($u->info['online'] < time() - 30) {
mysql_query(
"UPDATE `users` SET `online`='" . time() . "',`timeMain`='" . time() . "' WHERE `id`='" . $u->info['id'] . "' LIMIT 1"
);
}
}
$btl->is = $u->is;
$btl->items = $u->items;
$btl->info = $btl->battleInfo($u->info['battle']);
if (!isset($btl->info['id'])) {
if ($u->info['battle'] == -1) {
//завершаем поединок
$upd = mysql_query(
'UPDATE `users` SET `battle` = "0",`online` = "' . time() . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1'
);
if (!$upd) {
if (!isset($CRON_CORE)) {
die('Ошибка завершения поединка.');
}
} else {
echo '<script>location="main.php";</script>';
}
} else {
mysql_query('UPDATE `users` SET `battle` = "0" WHERE `battle` = "' . $u->info['battle'] . '" LIMIT 100');
if (!isset($CRON_CORE)) {
die('<script>location="main.php";</script>');
}
}
} else {
//получаем массив с игроками в бою
$btl->teamsTake();
if (isset($_POST['useitem']) && $btl->testUsersLive() == true) {
$magic->useItems((int)$_POST['useitem']);
if ($u->error != '') {
echo '<font color=red><center><b>' . $u->error . '</b></center></font>';
}
}
//заносим удары,приемы,эффекты и т.д.
//удар
if (isset($_POST['atack']) && isset($_POST['block'])) {
$btl->addAtack();
}
//прием
if (isset($_POST['usepriem']) && $btl->testUsersLive() == true) {
$priem->pruse($_POST['usepriem']);
}
//используем заклятие / пирожки
//проводим действия (удары, использование приемов, если есть возможность нанести удар или использовать прием)
$btl->testActions();
//авто-смена противника, либо просто смена противника
if ($u->stats['hpNow'] >= 1) {
//ручная смена
if (isset($_POST['smn']) && $_POST['smn'] != 'none') {
/* ---------------- */
$uidz = mysql_fetch_array(
mysql_query(
'SELECT `id`,`inUser` FROM `users` WHERE `login` = "' . mysql_real_escape_string(
$_POST['smn']
) . '" AND `battle` = "' . $u->info['battle'] . '" LIMIT 1'
)
);
if ($uidz['inUser'] > 0) {
$uidz['id'] = $uidz['inUser'];
}
$rsm = $btl->smena($uidz['id'], false);
if ($rsm != 1) {
echo '<font color=red><center><b>' . $rsm . '</b></center></font>';
}
unset($rsm);
$js .= 'smena_login = \'none\';';
}
//авто-смена
if ($u->info['enemy'] == 0 || $btl->stats[$btl->uids[$u->info['enemy']]]['hpNow'] <= 0 || isset($btl->ga[$u->info['id']][$u->info['enemy']])) {
$btl->autoSmena();
}
} else {
$btl->mainStatus = 3;
}
//получаем данные о поединке
//получаем данные о логе боя
//Если бой сыгран - завершаем
if (!isset($_POST['usepriem'])) {
$btl->testFinish();
}
if ($btl->info['team_win'] == -1) {
$js .= $btl->genTeams($u->info['id']);
} else {
$btl->mainStatus = 3;
$btl->e = $u->btl_txt;
}
if (!isset($CRON_CORE)) {
$js .= $btl->myInfo($u->info['id'], 1);
//выводим данные
if ($btl->e != '') {
echo '<font color="red"><center><b>' . $btl->e . '</b></center></font>';
}
if (isset($btl->ga[$u->info['id']][$u->info['enemy']])) {
if ($u->info['hpNow'] >= 1) {
$btl->mainStatus = 2;
}
} else {
if ($u->info['enemy'] != 0 && $btl->info['team_win'] == -1 && $u->info['hpNow'] >= 1) {
$js .= $btl->myInfo($u->info['enemy'], 2);
}
}
if ($btl->info['izlom'] > 0) {
$js .= 'volna(' . (1 + $btl->info['izlomRoundSee']) . ');';
}
$i = 1;
while ($i <= 7) {
if ($btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] < 0) {
$btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] = 0;
}
if ($btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] > 25 && $i < 7) {
$btl->users[$btl->uids[$u->info['id']]]['tactic' . $i] = 25;
}
$i++;
}
$atk1 = 0;
if (!isset($CRON_CORE)) {
$rsys = '';
}
if ($rsys != '') {
$js .= $rsys;
}
unset($rsys);
if (isset($btl->ga[$u->info['enemy']][$u->info['id']])) {
$atk1 = 1;
}
}
$rehtml = '';
if (!isset($CRON_CORE)) {
$js .= '$("#priems").html("' . $priem->seeMy(2) . '");';
$jslog = $btl->lookmLog();
$jslog .= $btl->lookLog();
if ($jslog != '') {
$js .= 'top.btlclearlog();' . $jslog;
}
unset($jslog);
//}
$rehtml .= '<script type="text/javascript">var battle = ' . (0 + $btl->info['id']) . ';top.cb_statusTest();eatk=' . $atk1 . ';
if(document.getElementById("nabito")!=undefined)
{
document.getElementById("nabito").innerHTML = "' . (floor(
$btl->users[$btl->uids[$u->info['id']]]['battle_yron']
)) . '";
}
if(document.getElementById("expmaybe")!=undefined)
{
document.getElementById("expmaybe").innerHTML = "' . (floor(
$btl->users[$btl->uids[$u->info['id']]]['battle_exp']
)) . '";
}
if(document.getElementById("timer_out")!=undefined)
{
document.getElementById("timer_out").innerHTML = "' . round(($btl->info['timeout'] / 60), 2) . '";
}
$(\'#pers_magic\').html("' . $u->btlMagicList() . '");
g_iCount = 30;
noconnect = 15;
connect = 1;
if(document.getElementById("go_btn")!=undefined)
{
document.getElementById("go_btn").disabled = "";
}
if(document.getElementById("reflesh_btn")!=undefined)
{
document.getElementById("reflesh_btn").disabled = "";
}
za = ' . (0 + $btl->stats[$btl->uids[$u->info['id']]]['zona']) . '; genZoneAtack();
zb = ' . (0 + $btl->testZonbVis()) . '; genZoneBlock();
refleshPoints();
tactic(1,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic1']) . ')
tactic(2,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic2']) . ')
tactic(3,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic3']) . ')
tactic(4,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic4']) . ')
tactic(5,' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic5']) . ')
tactic(6,' . (0 + floor($btl->users[$btl->uids[$u->info['id']]]['tactic6'])) . ')
smnpty=' . (0 + $u->info['smena']) . ';
mainstatus(' . $btl->mainStatus . ')
tactic(7,"' . (0 + $btl->users[$btl->uids[$u->info['id']]]['tactic7']) . '");
smena_alls = "0";
ggcode="' . $code . '";
' . $js . '
</script>';
echo($rehtml);
if ($btl->cached == true) {
$btl->clear_cache_start();
}
unset($atk1);
}
echo '<script>ggcode="' . $code . '";if(t057!=null){clearTimeout(t057);}</script>';
}