-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathleave_table.php
150 lines (127 loc) · 6.01 KB
/
leave_table.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
<?php
session_start();
require_once("global.php");
require_once("show_table_games.php");
require_once("chat.php");
require_once("modules/mysql.php");
if ( (isset($_SESSION['id_user'])) && (isset($_REQUEST['id_gt'])) ) {
$id_user=$_SESSION['id_user'];
$id_gt=$_REQUEST['id_gt'];
$DBlink=connectdb();
if (!$DBlink) {
die("Не могу соединиться с базой данных");
}else {
$query='SELECT * FROM users WHERE ((id_user='.$id_user.'))';
$result=mysql_query($query);
$row=mysql_fetch_array($result);
if ($row['id_gt']==0) {
die("Вы не можете выйти из-за стола, вы за ним и не сидите");
}
$query1="UPDATE users SET id_gt=0, u_bonus=0, u_level=1, u_gold=0
WHERE (id_user=".$id_user.")";
$result1=mysql_query($query1);
if (mysql_error($DBlink)!="") {
die("Неудалось выйти из-за стола столу\n");
}
//Получаем параметы игрового стола
$query="SELECT * FROM game_tables JOIN users ON (game_tables.creator=users.login) WHERE (game_tables.id_gt=".$id_gt.")";
$result=mysql_query($query);
$row=mysql_fetch_array($result);
$table_name=$row['name'];//узнаем имя стола
$creator=$row['id_user'];//узнаем имя создателя стола
//Изменяем количество игроков за игровым столом и передаем ход создателю стола
$query2='SELECT COUNT(*) FROM users WHERE ((id_gt='.$id_gt.' ))';
$result2=mysql_query($query2);
$row2 = mysql_fetch_array($result2);
$num_user=$row2[0];
$query="UPDATE game_tables SET num_user=".$num_user.", active_user=".$creator."
WHERE (id_gt=".$id_gt.")";
$result=mysql_query($query);
if (mysql_error($DBlink)!="") {
die("Неудалось присоединиться к столу\n");
}
//Делаем запрос сколько карт у игрока в руке
$query='SELECT * FROM cards_of_user WHERE (id_user='.$id_user.')';
$result=mysql_query($query);
if (mysql_num_rows($result)!=0){
//Узнаем номер последней карты в дискарде на данном игровом столе
$query1="SELECT MAX(num_d) AS num_d
FROM discards
WHERE (id_gt=".$id_gt.")";
$result1=mysql_query($query1);
$row1=mysql_fetch_array($result1);
$num_dump=$row1['num_d']+1;
//Перебираем по очеред все карты игрока в руке
while($row=mysql_fetch_array($result)){
//Добавляем карту в дискард из руки
$query2="INSERT INTO discards VALUES(NULL,".$num_dump.",".$row['id_card'].",".$id_gt.")";
$result2=mysql_query($query2);
$num_dump=$num_dump+1;
}
}
//Удаляем карты из рук
$query="DELETE FROM cards_of_user WHERE (id_user=".$id_user.")";
$result=mysql_query($query);
if (mysql_error($DBLink)!="") {
die("Ошибка 2 Неудалось удалить карты игрока\n");
}
//Делаем запрос сколько карт у игрока в шмотках
$query='SELECT * FROM carried_items WHERE (id_user='.$id_user.')';
$result=mysql_query($query);
if (mysql_num_rows($result)!=0){
//Перебираем по очеред все карты игрока в его шмотках
while($row=mysql_fetch_array($result)){
//Добавляем карту в дискард из шмоток
$query2="INSERT INTO discards VALUES(NULL,".$num_dump.",".$row['id_card'].",".$id_gt.")";
$result2=mysql_query($query2);
$num_dump=$num_dump+1;
}
}
//Удаляем карты из шмоток
$query="DELETE FROM carried_items WHERE (id_user=".$id_user.")";
$result=mysql_query($query);
if (mysql_error($DBLink)!="") {
die("Ошибка 3 Неудалось удалить карты игрока\n");
}
//Делаем запрос есть ли у игрока статистика
$query='SELECT * FROM statistic_game WHERE ( (id_gt='.$id_gt.') AND (id_user='.$id_user.'))';
$result=mysql_query($query);
if (mysql_num_rows($result)>0){
//Удаляем статистику игрока
$query='DELETE FROM statistic_game WHERE ( (id_gt='.$id_gt.') AND (id_user='.$id_user.'))';
$result=mysql_query($query);
if (mysql_error($DBLink)!="") {
die("Ошибка 3 Неудалось удалить карты игрока\n");
}
//Меняем количество игроков за столом в статистике
$query='UPDATE statistic_game SET num_user='.$num_user.' WHERE (id_gt='.$id_gt.')';
$result=mysql_query($query);
if (mysql_error($DBLink)!="") {
die("Ошибка 1: Неудалось изменить статистику игры");
}
}
$message='ВНИМАНИЕ!<B> '.$_SESSION['login'].' </B> ПОКИНУЛ ИГРУ, все его карты из рук и шмотки отправлены в сброс, а ход передан создателю стола';
$login = $_SESSION["login"];
$id_user = $_SESSION["id_user"];
$time = time();
$message = substr($message,0,320);
$type=1;//Систсемное сообщение
$mysql->sql_query("INSERT INTO gamechat VALUES ('$time', ".$id_gt.", '$id_user', '$login', '$message', $type )");
//Сбрасываем все параметры игрока характерезуюшие его игровой стол
if (isset($_SESSION['init'])){
unset($_SESSION['init']);
}
if (isset($_SESSION['id_gt'])){
unset($_SESSION['id_gt']);
}
if (isset($_SESSION['table_name'])){
unset($_SESSION['table_name']);
}
if (isset($_SESSION['control_level'])){
unset($_SESSION['control_level']);
}
mysql_close($DBlink);
}
}else{
}
?>