battles/group_arena.php

271 lines
13 KiB
PHP
Raw Normal View History

2018-01-28 16:40:49 +00:00
<?php
session_start();
if(!isset($_SESSION['uid'])) { die(); }
include('functions.php');
$error = '';
function login($uid) {
$user = mysql_fetch_array(mysql_query('SELECT `id`, `login`, `align`, `level`, `klan` FROM `users` WHERE `id` = "'.mysql_real_escape_string($uid).'" LIMIT 1'));
if(isset($user['id'])) {
$align_img = '<img src="i/align_'.($user['align']?$user['align']:0).'.gif" /> ';
if($user['klan'] != '') {
$clan = mysql_fetch_array(mysql_query('SELECT `id`, `name` FROM `clans` WHERE `id` = "'.$user['klan'].'" LIMIT 1'));
$clan_img = '<img title="'.$clan['name'].'" src="i/klan/'.$clan['name'].'.gif" /> ';
} else {
$clan_img = '';
}
$r = $align_img.$clan_img.' <b>'.$user['login'].' ['.$user['level'].']</b><a href="http://capitalcity.old-dark.ru/inf.php?id='.$user['id'].'" target="_blank"><img src="http://capitalcity.old-dark.ru/i/inf.gif" /></a>';
} else {
$r = 'Место свободно';
}
return $r;
}
function form_start($uid) {
$r = ''; $go = '';
if($uid > 0) {
$user = mysql_fetch_array(mysql_query('SELECT `id`, `login`, `align`, `level`, `klan`, `zayrist` FROM `users` WHERE `id` = "'.$uid.'" LIMIT 1'));
if(isset($user['id'])) {
if($user['zayrist']) {
$zv = mysql_fetch_array(mysql_query('SELECT `id`, `name`, `uid1`, `uid2`, `uid3` FROM `group_ristal` WHERE `id` = "'.$user['zayrist'].'" LIMIT 1'));
if(isset($zv['id'])) {
$r .= '<form method="POST">';
if($zv['uid1'] == $user['id']) {
$go = '<input type="submit" name="startZv" value="Начать поход" /> / ';
}
for($i = 1; $i <= 3; $i++) {
$nick .= login($zv['uid'.$i]).', ';
}
$nc = rtrim($nick, ', ');
$r .= '<table style="padding-top: 25px;"><tr><td>Ваша группа («'.$zv['name'].'»): '.$nc.' '.$go.'<input type="submit" name="leaveZv" value="Покинуть заявку" /></td></tr></table>';
$r .= '</form>';
} else {
$user['zayrist'] = 0;
mysql_query('UPDATE `users` SET `zayrist` = "'.$user['zayrist'].'" WHERE `id` = "'.$user['id'].'" LIMIT 1');
}
}
}
}
return $r;
}
function forms($level) {
$r = '<br /></br />';
$sp = mysql_query('SELECT `id`, `name`, `pass`, `comment`, `uid1`, `uid2`, `uid3` FROM `group_ristal` WHERE `level` = "'.(int)$level.'" ORDER BY `id` DESC');
if(mysql_num_rows($sp) > 0) {
while($pl = mysql_fetch_array($sp)) {
$i = 1;
while($i <= 3) {
$nick .= login($pl['uid'.$i]).', ';
$i++;
}
$nc = rtrim($nick, ', ');
$r .= '<table><tr><td>Группа («'.$pl['name'].'»): '.$nc.' <input type="hidden" name="zvId" value="'.$pl['id'].'" /> <input type="submit" name="gotoZv" value="Вступить в заявку" /></td></tr></table>';
}
} else {
$r .= '<i>Заявок вашего уровня нет</i>';
}
unset($sp, $pl, $nick, $nc, $i);
return $r;
}
if(isset($_POST['buyFirst'])) {
if(isset($user['id'])) {
if($user['money'] >= 5) {
$Firts = mysql_fetch_array(mysql_query('SELECT `id` FROM `inventory` WHERE `type` = 200 AND `name` = "Фамильный Герб" AND `owner` = "'.$user['id'].'" LIMIT 1'));
if(isset($Firts['id'])) {
$error = 'У Вас уже есть Фамильный Герб';
} else {
$Second = mysql_fetch_array(mysql_query('SELECT `id` FROM `inventory` WHERE `type` = 200 AND `name` = "Фамильный Герб (х2)" AND `owner` = "'.$user['id'].'" LIMIT 1'));
if(isset($Second['id'])) {
$error = 'У Вас уже есть Фамильный Герб';
} else {
$user['money'] -= 5;
mysql_query('UPDATE `users` SET `money` = "'.$user['money'].'" WHERE `id` = "'.$user['id'].'" LIMIT 1');
takeshopitem(1930, 'shop', '', '', 0, 0, $user['id'], 1, '', 0);
mysql_query("INSERT INTO `delo` (`author`, `pers`, `text`, `type`, `date`) VALUES ('0', '{$user['id']}', '\"".$user['login']."\" купил Фамильный Герб за 5кр.', '1', '".time()."')");
$error = 'Вы купили Фамильный Герб';
}
}
} else {
$error = 'Недостаточно средств';
}
} else {
$error = 'Вы не авторизированы';
}
}
if(isset($_POST['buySecond'])) {
if(isset($user['id'])) {
if($user['money'] >= 15) {
$Firts = mysql_fetch_array(mysql_query('SELECT `id` FROM `inventory` WHERE `type` = 200 AND `name` = "Фамильный Герб" AND `owner` = "'.$user['id'].'" LIMIT 1'));
if(isset($Firts['id'])) {
$error = 'У Вас уже есть Фамильный Герб';
} else {
$Second = mysql_fetch_array(mysql_query('SELECT `id` FROM `inventory` WHERE `type` = 200 AND `name` = "Фамильный Герб (х2)" AND `owner` = "'.$user['id'].'" LIMIT 1'));
if(isset($Second['id'])) {
$error = 'У Вас уже есть Фамильный Герб';
} else {
$user['money'] -= 15;
mysql_query('UPDATE `users` SET `money` = "'.$user['money'].'" WHERE `id` = "'.$user['id'].'" LIMIT 1');
takeshopitem(1931, 'shop', '', '', 0, 0, $user['id'], 1, '', 0);
mysql_query("INSERT INTO `delo` (`author`, `pers`, `text`, `type`, `date`) VALUES ('0', '{$user['id']}', '\"".$user['login']."\" купил Фамильный Герб (x2) за 15кр.', '1', '".time()."')");
$error = 'Вы купили Фамильный Герб (x2)';
}
}
} else {
$error = 'Недостаточно средств';
}
} else {
$error = 'Вы не авторизированы';
}
}
if($_POST['addZayavka']) {
if(isset($user['id'])) {
$name = mysql_real_escape_string($_POST['nameZv']);
$pass = mysql_real_escape_string($_POST['passZv']);
$comment = mysql_real_escape_string($_POST['commentZv']);
$zv = mysql_fetch_array(mysql_query('SELECT `id` FROM `group_ristal` WHERE `id` = "'.$user['zayrist'].'" LIMIT 1'));
if($user['zayrist'] > 0 && isset($zv['id'])) {
$error = 'Вы уже состоите в заявке';
} elseif(strlen($name) > 15) {
$error = 'Название может состоять максимум из 15 символов';
} elseif(strlen($name) < 3) {
$error = 'Название может состоять минимум из 3 символов';
} elseif(strlen($pass) > 6) {
$error = 'Пароль может состоять максимум из 6 символов';
} elseif(strlen($comment) > 20) {
$error = 'Комментарий может состоять максимум из 20 символов';
} else {
mysql_query('INSERT INTO `group_ristal` (`name`, `pass`, `comment`, `time`, `uid1`) VALUES ("'.$name.'", "'.$pass.'", "'.$comment.'", "'.time().'", "'.$user['id'].'")');
$user['zayrist'] = mysql_insert_id();
mysql_query('UPDATE `users` SET `zayrist` = "'.$user['zayrist'].'" WHERE `id` = "'.$user['id'].'" LIMIT 1');
$error = 'Заявка создана';
}
} else {
$error = 'Вы не авторизированы';
}
}
if(isset($_POST['leaveZv'])) {
if($user['zayrist'] > 0) {
$zv = mysql_fetch_array(mysql_query('SELECT `id`, `uid1`, `uid2`, `uid3` FROM `group_ristal` WHERE `id` = "'.$user['zayrist'].'" LIMIT 1'));
if(isset($zv['id'])) {
$i = 1; $j = 3; $k = 0; $h = 0;
while($i <= 3) {
if($k == 0 && $zv['uid'.$i] != $user['id']) {
$k = $zv['uid'.$i];
$h = $i;
}
$i++;
}
$i = 1;
while($i <= 3) {
if($zv['uid'.$i] == $user['id']) {
if($i > 1) {
$zv['uid'.$i] = 0;
} else {
$zv['uid'.$i] = $k;
$zv['uid'.$h] = 0;
}
}
if($zv['uid'.$i] == 0) {
$j--;
}
$i++;
}
if($j < 1) {
mysql_query('DELETE FROM `group_ristal` WHERE `id` = "'.$zv['id'].'" LIMIT 1');
$error = 'Заявка была удалена<br />';
$user['zayrist'] = 0;
mysql_query('UPDATE `users` SET `zayrist` = "'.$user['zayrist'].'" WHERE `id` = "'.$user['id'].'" LIMIT 1');
} else {
mysql_query('UPDATE `group_ristal` SET `uid1` = "'.$zv['uid1'].'", `uid2` = "'.$zv['uid2'].'", `uid3` = "'.$zv['uid3'].'" WHERE `id` = "'.$zv['id'].'" lIMIT 1');
$user['zayrist'] = 0;
mysql_query('UPDATE `users` SET `zayrist` = "'.$user['zayrist'].'" WHERE `id` = "'.$user['id'].'" LIMIT 1');
$error = 'Вы покинули заявку<br />';
}
unset($zv);
}
}
}
if($_GET['exit'] == 1) {
mysql_query('UPDATE `users`,`online` SET `users`.`room` = 2702, `online`.`room` = 2702 WHERE `users`.`id` = "'.$user['id'].'" AND `online`.`id` = "'.$user['id'].'"');
header('Location: city.php');
}
?>
2019-09-24 15:47:58 +00:00
<html lang="ru">
2018-01-28 16:40:49 +00:00
<head>
2019-09-24 15:47:58 +00:00
<title></title>
<meta charset="UTF-8" />
2018-01-28 16:40:49 +00:00
<link rel="stylesheet" href="css/main.css" />
<script>function growl(title, color, message, stycky) { if(!stycky) { stycky = false; } if(!color) { color = 'Red'; } $.jGrowl(message, { header: '<img src="/i/jgrowl_moover.png" class="jgrowl-moover" title="Передвинуть" style="cursor: pointer;" /> <font style="color: '+color+';">'+title+'</font>', sticky: stycky, glue: 'before' }); }</script>
2019-01-16 17:45:30 +00:00
<script>function shows() {
const clas = $("#alt").attr('class');
$("#mkgrp").toggle(); if(clas == 'show') { $("#alt").attr('class','hide'); $("#alt").text('Скрыть ...'); } else { $("#alt").attr('class','show'); $("#alt").text('Создать группу'); } }</script>
2018-01-28 16:40:49 +00:00
<style>body { background-image: url('i/r240_1.jpg'); background-repeat: no-repeat; background-position: top right; }</style>
</head>
2019-09-24 15:47:58 +00:00
<body >
<table class="allzeroes">
<tr>
2018-01-28 16:40:49 +00:00
<td>
<div align=center>
<h3>Турниры: Групповые сражения.</h3>
2019-09-24 15:47:58 +00:00
<b>Внимание! В боях этой локации разрешается использовать свитки "Восстановления энергии" номиналом не более 180НР!</b><br /><br />
2018-01-28 16:40:49 +00:00
<span style="color: Red;"><b>Внимание! При старте группового турнира руны автоматически будут сняты с персонажа. <br />Проверьте, что ваши вещи после снятия рун не упадут, и не забудьте надеть руны после выхода из локации!</b></span>
</div>
<? if($user['zayrist'] == 0) { ?><div align=left><h4>Принять участие в турнире:</h4></div><a onclick="shows();" href="#" class="show" id="alt">Создать группу</a><br /><? echo forms($user['level']); } else { echo form_start($user['id']); } ?>
<div id="mkgrp" style="display: none;">
<fieldset style="text-align: justify; width: 250px; max-width: 250px; height: 100px; max-height: 100px; margin-top: 15px;">
<form method="post">
Название: <input type="text" name="nameZv" size="20" /><br />
Комментарий: <input type="text" name="commentZv" size="15" /><br />
Пароль: <input type="text" name="passZv" size="10" /><br /><br />
<input type="submit" name="addZayavka" value="Создать группу" />
</form>
</fieldset>
</div>
<div align="left"><p>&nbsp;</p><h4>Победители 10-ти предыдущих турниров: <span id="levelCheck"><?=$user['level'];?></span>-е уровни </h4></div>
<div id="rate"></div>
</td>
2019-09-24 15:47:58 +00:00
<td align=right><button onclick="location.href='city.php?zaliv'">Вернуться</button><br /><br />
2018-01-28 16:40:49 +00:00
<form method="POST">
<input type="submit" value="Купить «Фамильный Герб» 5 кр." style="background-color: #A9AFC0;" name="buyFirst" />
<input type="submit" value="Купить «Фамильный Герб (х2)» 15 кр." style="background-color: #A9AFC0;" name="buySecond" />
</form>
</td>
</tr>
</table>
<div id="response"></div>
<script>
$(function() {
2019-01-16 17:45:30 +00:00
let level =;
$('#rate').load('ajax/rate_ruins.php?level='+level);
2018-01-28 16:40:49 +00:00
$.jGrowl.defaults.closerTemplate = '<div style="text-align: center; cursor: pointer;"><b>[ Закрыть ]</b></div>';
$.jGrowl.defaults.closeTemplate = '<img src="i/clear.gif" alt="x" title="Закрыть" />';
$('body').delegate('div#jGrowl .jgrowl-moover', 'click', function() {
2019-01-16 17:45:30 +00:00
const j = $(this).closest('div#jGrowl');
const c = j.hasClass('top-right') ? 'top-left' : 'top-right';
j.removeClass('top-left top-right').addClass(c);
2018-01-28 16:40:49 +00:00
});
$("#rate").on("click", "a", function(e) {
2019-01-16 17:45:30 +00:00
const level = $(this).attr("id");
$('#rate').load('ajax/rate_ruins.php?level='+level);
2018-01-28 16:40:49 +00:00
});
});
</script>
<?if($error != '') { echo "<script>growl('Внимание', 'Red', '$error');</script>"; } ?>
</body>
2019-09-24 15:47:58 +00:00
</html>