game/modules_data/moder/teleport-cometome.php

82 lines
4.8 KiB
PHP
Raw Normal View History

2022-06-06 21:30:34 +00:00
<?
if (!defined('GAME')) {
die();
}
$action = $_POST['cometome'];
$toUser = mysql_real_escape_string($_POST['logingo']);
if (!isset($u->info['room']) OR !isset($u->info['id']) OR $toUser == '') {
if($toUser == '') {
2023-01-10 16:29:32 +00:00
$uer = 'Персонаж "' . $toUser . '" не найден.';
} else $uer = 'Режим "' . $action . '" не найден.';
2022-06-06 21:30:34 +00:00
} else {
if ($u->info['admin'] > 0) {
$uu = mysql_fetch_array(mysql_query('SELECT * FROM `users` WHERE `login` = "'.$toUser.'" LIMIT 1'));
$uus = mysql_fetch_array(mysql_query('SELECT * FROM `stats` WHERE `id` = "'.$uu['id'].'" LIMIT 1'));
if (isset($uu['id'])) {
if ($uu['id'] == $u->info['id']) {
2023-01-10 16:29:32 +00:00
$uer = 'Вы не можете телепортировать себя к себе, у вас нет раздвоения личности! Если не согласы - обратитесь к психиатру! СРОЧНО! ';
2022-06-06 21:30:34 +00:00
} elseif ($uu['admin'] > 0 && $u->info['admin'] == 0) {
2023-01-10 16:29:32 +00:00
$uer = 'Вы не можете телепортировать Ангелов к себе.';
2022-06-06 21:30:34 +00:00
} elseif (floor($uu['align']) == $a && $uu['align'] > $u->info['align'] && $u->info['admin'] == 0) {
2023-01-10 16:29:32 +00:00
$uer = 'Вы не можете телепортировать старших по званию';
2022-06-06 21:30:34 +00:00
} elseif ($u->info['battle'] == 0 && $action == 'to-fight') {
2023-01-10 16:29:32 +00:00
$uer = 'Вы не можете переместить игрока, поединка не существует.';
2022-06-06 21:30:34 +00:00
} elseif ($u->info['dnow'] == 0 && $action == 'to-dungeon') {
2023-01-10 16:29:32 +00:00
$uer = 'Вы не можете переместить игрока, вы не в подземелье.';
2022-06-06 21:30:34 +00:00
} elseif ($uu['city'] != $u->info['city'] && $u->info['admin'] == 0) {
2023-01-10 16:29:32 +00:00
$uer = 'Персонаж находится в другом городе';
2022-06-06 21:30:34 +00:00
} else {
2023-01-10 16:29:32 +00:00
/* Если перемещаем в комнату - выбрасываем с поединка и\или подземелья. */
2022-06-06 21:30:34 +00:00
if($action =='to-room' && $uus['dnow']){
mysql_query('UPDATE `stats` SET `dnow` = "0" WHERE `id` = "' . $uu['id'] . '" LIMIT 1');
}
if($action =='to-room' && $uu['battle']){
mysql_query('UPDATE `users` SET `battle` = "0" WHERE `id` = "' . $uu['id'] .'" LIMIT 1');
}
2023-01-10 16:29:32 +00:00
/* Переносим игрока по действию: В комнату, В комнату и поединок, В комнату подземелья*/
2022-06-06 21:30:34 +00:00
if ($action == 'to-room') {
$upd = mysql_query('UPDATE `users` SET `city` = "'.$u->info['city'].'", `room` = "'.$u->info['room'].'" WHERE `id` = "'.$uu['id'].'" LIMIT 1');
} elseif ($action == 'to-fight') {
$upd = mysql_query('UPDATE `users` SET `city` = "' . $u->info['city'] . '",`room` = "' . $u->info['room'] . '",`battle` = "' . $u->info['battle'] . '" WHERE `id` = "' . $uu['id'] .'" LIMIT 1');
$upd_d = mysql_query('UPDATE `stats` SET `team` = "' . $u->info['team'] . '" WHERE `id` = "' . $uu['id'] . '" LIMIT 1');
if ($u->info['dnow'] > 0) {
$upd_d = mysql_query('UPDATE `stats` SET `x` = "' . $u->info['x'] . '",`y` = "' . $u->info['y'] . '",`s` = "' . $u->info['s'] . '",`dnow` = "' . $u->info['dnow'] . '" WHERE `id` = "' . $uu['id'] . '" LIMIT 1');
}
} elseif ($action == 'to-dungeon') {
$upd = mysql_query('UPDATE `users` SET `city` = "' . $u->info['city'] . '",`room` = "' . $u->info['room'] . '" WHERE `id` = "' . $uu['id'] . '" LIMIT 1');
$upd_d = mysql_query('UPDATE `stats` SET `x` = "' . $u->info['x'] . '",`y` = "' . $u->info['y'] . '",`s` = "' . $u->info['s'] . '",`dnow` = "' . $u->info['dnow'] . '" WHERE `id` = "' . $uu['id'] . '" LIMIT 1');
} else {
2023-01-10 16:29:32 +00:00
$uer = 'Ошибка, действие не выбрано.';
2022-06-06 21:30:34 +00:00
$upd = false;
}
if ($upd) {
if ($upd_d) $dngo = true;
2023-01-10 16:29:32 +00:00
if ($u->info['sex'] == 1) $sx = 'а'; else $sx = '';
$rtxt = '[img[items/teleport-cometome.gif]] ' . $rang . ' &quot;' . $u->info['cast_login'] . '&quot; телепортировал' . $sx . ' персонажа &quot;' . $uu['login'] . '&quot; к себе в ' . ($action == 'to-fight' ? "поединок" . ($dngo == true ? " и пещеру." : "") : ($action == 'to-dungeon' ? "подземелье" : "комнату")) . '.';
2023-01-28 02:24:37 +00:00
$cmsg = new ChatMessage();
$cmsg->setCity($u->info['city']);
$cmsg->setRoom($u->info['room']);
$cmsg->setText($rtxt);
$cmsg->setType(6);
$cmsg->setTypeTime(1);
(new Chat())->sendMsg($cmsg);
2022-06-06 21:30:34 +00:00
2023-01-10 16:29:32 +00:00
$uer = 'Вы успешно телепортировали к себе персонажа "' . $uu['login'] . '" в <b>' . ($action == 'to-fight' ? "поединок" : ($action == 'to-dungeon' ? "подземелье" : "комнату")) . '</b>.';
2022-06-06 21:30:34 +00:00
} else {
2023-01-10 16:29:32 +00:00
$uer = 'Не удалось использовать данное заклятие';
2022-06-06 21:30:34 +00:00
}
}
} else {
2023-01-10 16:29:32 +00:00
$uer = 'Персонаж не найден в этом городе';
2022-06-06 21:30:34 +00:00
}
} else {
2023-01-10 16:29:32 +00:00
$uer = 'Заклинание, только для администрации';
2022-06-06 21:30:34 +00:00
}
}
?>