- Регистрация
- 21 Июн 2018
- Сообщения
- 194
- Лучшие ответы
- 0
- Репутация
- 3
Здравствуйте, решил Вам выложить свою систему ДМ-Зон + топ убийств, которые я писал для своего мода.
Что используется?:
Ко всем new и define добавляем:
В массив Player/PlayerInfo:
В таблицу базы данных accounts/players добавляем новый параметр dm_zona_kill, а так же добавляем dm_zona_kill в загрузку аккаунта в моде
В любое место в моде, можно сразу же после всех new/stock:
В паблик OnPlayerDisconnect:
В паблик OnPlayerDeath: (connectionHandle - меняем на свою переменную подключения к базе данных)
Ко всем командам: (connectionHandle - меняем на свою переменную подключения к базе данных, Player[playeird][jail_time] меняем на свою переменную проверки на игрока в тюрьме, Player[playerid][Wanted] - меняем на свою переменную проверки звезд у игрока, AdminPlayer[playerid][admin_level] - меняем на свою проверку на уровень админки)
В паблик OnDialogResponse:
В одно секундный таймер: (if(GetPVarInt(i,!"AFK") >= 6) - заменяем на свою проверку на AFK).
В конец мода:
Что используется?:
- Pawn.CMD.
[*] MySQL r40+
Ко всем new и define добавляем:
PHP:
#define GRE "{808080}"
#define YAK "{D8F781}"
#define DGC "{98fc42}"
#define C_INF "{6d45b5}[Информация]: {FFFFFF}"
#define Message(%0,%1) SendClientMessage(%0, -1, %1)
new format_string[500];
#define send(%0,%1,%2,%3) format(format_string, sizeof(format_string),%2,%3) && SendClientMessage(%0, %1, format_string)
#define WHT "{FFFFFF}"
#define RED "{FF6347}"
new dm_zona_dplayers = 20,
dm_zona_time[MAX_PLAYERS],
bool:in_mini_game_dm[MAX_PLAYERS],
bool:dm_zona_start = false,
bool:dm_zona_hp[MAX_PLAYERS],
bool:dm_zona_dostup = false,
dm_zona_map = 1,
dm_zona_gun = 24,
dm_zona_players,
dm_zona_cash = 300,
dm_zona_prize
;
PHP:
new WeaponNames[][32] =
{
{"Unarmed (Fist)"}, // 0
{"Brass Knuckles"}, // 1
{"Golf Club"}, // 2
{"Night Stick"}, // 3
{"Knife"}, // 4
{"Baseball Bat"}, // 5
{"Shovel"}, // 6
{"Pool Cue"}, // 7
{"Katana"}, // 8
{"Chainsaw"}, // 9
{"Purple Dildo"}, // 10
{"Big White Vibrator"}, // 11
{"Medium White Vibrator"}, // 12
{"Small White Vibrator"}, // 13
{"Flowers"}, // 14
{"Cane"}, // 15
{"Grenade"}, // 16
{"Teargas"}, // 17
{"Molotov"}, // 18
{" "}, // 19
{" "}, // 20
{" "}, // 21
{"Colt 45"}, // 22
{"Colt 45 (Silenced)"}, // 23
{"Desert Eagle"}, // 24
{"Normal Shotgun"}, // 25
{"Sawnoff Shotgun"}, // 26
{"Combat Shotgun"}, // 27
{"Micro Uzi (Mac 10)"}, // 28
{"MP5"}, // 29
{"AK47"}, // 30
{"M4"}, // 31
{"Tec9"}, // 32
{"Country Rifle"}, // 33
{"Sniper Rifle"}, // 34
{"Rocket Launcher"}, // 35
{"Heat-Seeking Rocket Launcher"}, // 36
{"Flamethrower"}, // 37
{"Minigun"}, // 38
{"Satchel Charge"}, // 39
{"Detonator"}, // 40
{"Spray Can"}, // 41
{"Fire Extinguisher"}, // 42
{"Camera"}, // 43
{"Night Vision Goggles"}, // 44
{"Infrared Vision Goggles"}, // 45
{"Parachute"}, // 46
{"Fake Pistol"} // 47
};
PHP:
dm_zona_kill
В любое место в моде, можно сразу же после всех new/stock:
PHP:
static const Float:dm_zona_spawns_1[8][3] = {
{-1113.1654,1036.3516,1342.8997}, {-1085.9272,1092.7463,1343.8043},
{-1050.0660,1074.5396,1343.6787}, {-1025.4117,1030.4363,1342.4216},
{-990.2175,1089.6490,1342.9261}, {-1031.8003,1097.8247,1343.0424},
{-975.2753,1080.1589,1344.9797}, {-1133.0065,1037.5812,1345.7405}
};
static const Float:dm_zona_spawns_2[14][3] = {
{1093.1000,2078.9958,10.8203}, {1059.9731,2136.2161,10.8203},
{1085.1721,2080.1609,10.8203}, {1058.1635,2113.3674,10.8203},
{1087.0702,2097.8203,10.8203}, {1061.5137,2102.7705,10.8203},
{1076.6581,2124.1982,10.8203}, {1066.0292,2096.7593,10.8203},
{1062.3263,2088.0764,10.8203}, {1088.4138,2092.2185,15.3504},
{1071.9491,2081.2031,10.8203}, {1092.6129,2110.0356,15.3504},
{1087.5779,2079.4146,15.3504}, {1083.4116,2120.7212,15.3504}
};
static const Float:dm_zona_spawns_3[13][3] = {
{1722.9176,-1640.1487,20.2241}, {1709.4572,-1666.4033,23.7031},
{1706.0963,-1650.4434,20.2206}, {1711.3751,-1672.9849,27.2016},
{1705.1978,-1667.5499,20.2259}, {1712.0964,-1644.2849,27.2022},
{1715.9752,-1673.4958,20.2188}, {1730.2886,-1640.6260,27.2557},
{1733.3864,-1658.3081,23.7213}, {1733.5148,-1654.3784,27.2339},
{1727.8553,-1640.4235,23.7265}, {1728.6294,-1668.6842,27.1953},
{1712.3771,-1643.6705,23.6797}
};
static const Float:dm_zona_spawns_4[9][3] = {
{1306.3790,-13.1796,1001.0334}, {1265.8915,5.9480,1008.2578},
{1304.8861,-60.2498,1002.4977}, {1250.2515,5.8562,1008.2578},
{1283.3040,-56.9088,1002.5019}, {1261.9590,-63.6042,1002.4969},
{1260.4585,-43.9380,1001.0266}, {1253.0823,-26.2008,1001.0329},
{1258.9275,-10.9761,1001.0234}
};
static const Float:dm_zona_spawns_5[21][3] = {
{359.8879,186.6128,1008.3828}, {371.8593,172.7658,1014.1875},
{366.7436,213.0154,1008.3828}, {372.3076,184.5204,1014.1797},
{356.8564,207.1264,1008.3828}, {375.2129,192.0346,1014.1875},
{351.9062,196.9235,1008.3828}, {355.7465,176.4535,1014.1875},
{376.1720,182.0200,1008.3828}, {337.0713,163.7384,1014.1875},
{366.1848,161.2310,1008.3828}, {328.3865,162.7866,1014.1797},
{377.9940,163.6317,1014.1875}, {371.9886,153.5953,1015.9844},
{364.5349,163.5983,1019.9844}, {349.4185,164.0307,1025.7891},
{362.3849,193.9660,1019.9912}, {363.5948,155.8303,1025.7964},
{369.8141,175.3890,1019.9844}, {350.7717,164.2837,1019.9912},
{358.4794,162.4796,1025.7964}
};
static const Float:dm_zona_spawns_6[10][3] = {
{2175.6323,1577.7509,999.9684}, {2218.3118,1614.0970,999.9827},
{2181.7744,1590.7332,999.9777}, {2205.0493,1611.0280,999.9747},
{2187.7190,1578.2571,999.9675}, {2191.3894,1619.8719,999.9808},
{2211.9795,1589.0225,999.9772}, {2228.5701,1586.7268,999.9615},
{2220.9033,1552.4304,1004.7188}, {2224.4404,1611.3668,999.9734}
};
PHP:
public OnPlayerDisconnect
{
dm_zona_players--;
in_mini_game_dm[playerid] = false;
dm_zona_hp[playerid] = false;
}
PHP:
if(in_mini_game_dm[playerid] == true)
{
new sql_str[300];
in_mini_game_dm[playerid] = false;
dm_zona_players--;
dm_zona_hp[playerid] = false;
SetPlayerHealth(killerid, 100);
Player[killerid][dm_zona_kill]++;
mysql_format(connectionHandle, sql_str, sizeof(sql_str), "UPDATE `accounts` SET `dm_zona_kill` = '%d' WHERE `Name` = '%s'", Player[killerid][dm_zona_kill], Player[killerid][Name]);
mysql_tquery(connectionHandle, sql_str, "", "");
}
PHP:
CMD:dmtop(playerid)
{
return mysql_tquery(connectionHandle,"SELECT `Name`, `dm_zona_kill` FROM `accounts` WHERE `dm_zona_kill` > '1' ORDER BY `dm_zona_kill` DESC LIMIT 10", "show_dmtop", "d", playerid);
}
PHP:
CMD:dmzona(playerid)
{
if(dm_zona_start == false)
return Message(playerid,"{F31212}• "GRE"ДМ-Зона не открыта.");
if(dm_zona_dostup == true)
return Message(playerid,"{F31212}• "GRE"ДМ-Зона уже запущена.");
if(Player[playerid][jail_time] > 0)
return Message(playerid,"{F31212}• "GRE"Невозможно зайди на ДМ-зону будучи, в тюрьме.");
if(Player[playerid][Wanted] != 0)
return Message(playerid,"{F31212}• "GRE"Вы в розыске.");
if(in_mini_game_dm[playerid] == true)
return Message(playerid,"{F31212}• "GRE"Вы уже на находитесь на ДМ-Зоне.");
if(dm_zona_players == 20)
return Message(playerid,"{F31212}• "GRE"ДМ-Зона заполнена.");
if(GetPlayerVirtualWorld(playerid) != 0)
return Message(playerid,"{F31212}• "GRE"Вы находитесь в интерьере, выйдите на улицу.");
if(IsPlayerInAnyVehicle(playerid))
return Message(playerid, "{F31212}• "GRE"Покиньте транспортное средство.");
if(GetMoney(playerid) < dm_zona_cash)
return send(playerid, -1, "{F31212}• "GRE"Недостаточно игровой валюты, необходимо %d$.", dm_zona_cash);
if(dm_zona_players == dm_zona_dplayers)
return Message(playerid, "{F31212}• "GRE"На ДМ-Зоне не осталось свободных мест.");
switch(dm_zona_map)
{
case 1:
{
new
rand = random(sizeof(dm_zona_spawns_1))
;
SetPlayerServerPosEx(playerid, dm_zona_spawns_1[rand][0], dm_zona_spawns_1[rand][1], dm_zona_spawns_1[rand][2],0.0, 10, 10);
}
case 2:
{
new
rand = random(sizeof(dm_zona_spawns_2))
;
SetPlayerServerPosEx(playerid, dm_zona_spawns_2[rand][0], dm_zona_spawns_2[rand][1], dm_zona_spawns_2[rand][2],0.0, 0, 10);
}
case 3:
{
new
rand = random(sizeof(dm_zona_spawns_3))
;
SetPlayerServerPosEx(playerid, dm_zona_spawns_3[rand][0], dm_zona_spawns_3[rand][1], dm_zona_spawns_3[rand][2],0.0, 18, 10);
}
case 4:
{
new
rand = random(sizeof(dm_zona_spawns_4))
;
SetPlayerServerPosEx(playerid, dm_zona_spawns_4[rand][0], dm_zona_spawns_4[rand][1], dm_zona_spawns_4[rand][2],0.0, 18, 10);
}
case 5:
{
new
rand = random(sizeof(dm_zona_spawns_5))
;
SetPlayerServerPosEx(playerid, dm_zona_spawns_5[rand][0], dm_zona_spawns_5[rand][1], dm_zona_spawns_5[rand][2],0.0, 3, 10);
}
case 6:
{
new
rand = random(sizeof(dm_zona_spawns_6))
;
SetPlayerServerPosEx(playerid, dm_zona_spawns_6[rand][0], dm_zona_spawns_6[rand][1], dm_zona_spawns_6[rand][2],0.0, 1, 10);
}
}
SetPlayerArmour(playerid, 0);
SetPlayerHealth(playerid, 100);
TogglePlayerControllable(playerid, 0);
ResetPlayerWeapons(playerid);
SetPlayerColor(playerid,0xDC143C80);
SetMoney(playerid,-dm_zona_cash);
dm_zona_prize += dm_zona_cash;
dm_zona_players++;
in_mini_game_dm[playerid] = true;
return 1;
}
PHP:
CMD:zm(playerid, params[])
{
if(ADMIN_PLAYER[playerid][admin_level] < 1) return DostypErr(playerid);
ShowPlayerDialog(playerid, 446, DSL, !""DGC"[Меню зон]",!"\
"YAK"1) "WHT"Дм-зона (/dmzona)",!"Выбор",!"Закрыть");
return 1;
}
PHP:
case 1502: return 1;
case 446:
{
new
dm_zona_mapname[30]
;
switch(dm_zona_map)
{
case 1: dm_zona_mapname = "RC Battlefield";
case 2: dm_zona_mapname = "LV Warehouse";
case 3: dm_zona_mapname = "LS Atruim";
case 4: dm_zona_mapname = "Warehouse";
case 5: dm_zona_mapname = "Planning dept.";
case 6: dm_zona_mapname = "Catigula's bas.";
}
f(stringi, "\
"YAK"1) "WHT"Карта: "YAK"%s\n\
"YAK"2) "WHT"Оружие: "YAK"%s\n\
"YAK"3) "WHT"Входная плата: "YAK"%d$\n\
"YAK"4) "WHT"Мест: "YAK"%d.\n\
"WHT"- Открыть дм-зону\n\
"WHT"- Закрыть дм-зону\n\
"WHT"- Старт дм-зоны", dm_zona_mapname, WeaponNames[dm_zona_gun], dm_zona_cash, dm_zona_dplayers);
ShowPlayerDialogFix(playerid, 447, DSL, !""DGC"[ДМ-Зона (/dmzona)]", stringi, !"Выбор", !"Выход");
}
case 447:
{
if(!response) return 1;
switch(listitem)
{
case 0:
{
if(dm_zona_start == true)
return Message(playerid, "{F31212}• "GRE"ДМ-Зона уже открыта, редактирование запрещено.");
ShowPlayerDialogFix(playerid, 448, DSL, !""DGC"[Выбор карты]", !"\
"YAK"1) "WHT"RC Battlefield\n\
"YAK"2) "WHT"LV Warehouse\n\
"YAK"3) "WHT"LS Atruim\n\
"YAK"4) "WHT"Warehouse\n\
"YAK"5) "WHT"Planning dept.\n\
"YAK"6) "WHT"Catigula's bas.\n", !"Выбор", !"Закрыть");
}
case 1:
{
if(dm_zona_start == true)
return Message(playerid, "{F31212}• "GRE"ДМ-Зона уже открыта, редактирование запрещено.");
ShowPlayerDialogFix(playerid, 449, DSI, !""DGC"[Установка оружия]", !""WHT"Введите "YAK"ID "WHT"оружия в поле ниже:", !"Ввод", !"Закрыть");
}
case 2:
{
if(dm_zona_start == true)
return Message(playerid, "{F31212}• "GRE"ДМ-Зона уже открыта, редактирование запрещено.");
ShowPlayerDialogFix(playerid, 451, DSI, !""DGC"[Установка входной платы]", !""WHT"Введите входную плату "YAK"(от 50$ до 1500$)"WHT":", !"Ввод", !"Закрыть");
}
case 3:
{
if(dm_zona_start == true)
return Message(playerid, "{F31212}• "GRE"ДМ-Зона уже открыта, редактирование запрещено.");
ShowPlayerDialogFix(playerid, 466, DSI, !""DGC"[Установка мест]", !""WHT"Введите кол-во мест для входа "YAK"(от 2 до 20)"WHT":", !"Ввод", !"Закрыть");
}
case 4:
{
if(dm_zona_start == true)
return Message(playerid, "{F31212}• "GRE"ДМ-Зона уже открыта.");
new
dm_zona_mapname[30]
;
switch(dm_zona_map)
{
case 1: dm_zona_mapname = "RC Battlefield";
case 2: dm_zona_mapname = "LV Warehouse";
case 3: dm_zona_mapname = "LS Atruim";
case 4: dm_zona_mapname = "Warehouse";
case 5: dm_zona_mapname = "Planning dept.";
case 6: dm_zona_mapname = "Catigula's bas.";
}
dm_zona_start = true;
dm_zona_players = 0;
SetTimer("Start_MGame_DM", 1000*60, 0);
Message(playerid, ""C_INF"ДМ-Зона открыта.");
foreach(Player, i)
{
f(stringi,"\
"RED"[Mini-Game]: Открыт вход на ДМ-Зону | Карта: %s | Оружие: %s | Входная плата: %d$ | /dmzona - вход на ДМ-Зону.", dm_zona_mapname, WeaponNames[dm_zona_gun], dm_zona_cash);
Message(i, stringi);
}
}
case 5:
{
if(dm_zona_start == false)
return Message(playerid, "{F31212}• "GRE"ДМ-Зона не открыта.");
dm_zona_prize = 0;
dm_zona_dostup = false;
dm_zona_start = false;
dm_zona_players = 0;
Message(playerid, ""C_INF"ДМ-Зона закрыта.");
foreach(Player, i)
{
if(Player[playerid][pers_settings][1] == 1)
{
f(stringi,"\
"RED"[Mini-Game]: Вход на ДМ-Зону закрыт.");
Message(i, stringi);
}
}
foreach(Player, i)
{
if(in_mini_game_dm[i] == true)
{
SetPlayerHealth(i, 0);
in_mini_game_dm[i] = false;
Message(i, ""C_INF"ДМ-Зона закрыта.");
}
}
}
case 6:
{
if(dm_zona_start == false)
return Message(playerid, "{F31212}• "GRE"ДМ-Зона не открыта.");
if(dm_zona_dostup == true)
return Message(playerid, "{F31212}• "GRE"ДМ-Зона уже запущена.");
if(dm_zona_players == 0)
return Message(playerid, "{F31212}• "GRE"Недостаточно игроков для старта.");
foreach(Player, i)
{
if(in_mini_game_dm[i] == true)
{
Message(i, ""C_INF"ДМ-Зона запущена.");
dm_zona_time[i] = 6;
dm_zona_dostup = true;
}
}
}
}
}
case 466:
{
if(!response) return 1;
if(dm_zona_start == true)
return Message(playerid, "{F31212}• "GRE"ДМ-Зона уже открыта, редактирование запрещено.");
if(!strlen(inputtext))
return ShowPlayerDialogFix(playerid, 466, DSI, !""DGC"[Установка мест]", !""WHT"Введите кол-во мест для входа "YAK"(от 2 до 20)"WHT":", !"Ввод", !"Закрыть");
if(strfind(inputtext,"%",true)!=-1 || strfind(inputtext,"'",true)!=-1 || strfind(inputtext,"=",true)!=-1 || strfind(inputtext,"-",true)!=-1 || strfind(inputtext,"+",true)!=-1)
{
Message(playerid,"{F31212}• "GRE"Обнаружены запрещенные символы.");
ShowPlayerDialogFix(playerid, 466, DSI, !""DGC"[Установка мест]", !""WHT"Введите кол-во мест для входа "YAK"(от 2 до 20)"WHT":", !"Ввод", !"Закрыть");
return 1;
}
if(strval(inputtext) < 2 || strval(inputtext) > 20)
return ShowPlayerDialogFix(playerid, 466, DSI, !""DGC"[Установка мест]", !""WHT"Введите кол-во мест для входа "YAK"(от 2 до 20)"WHT":", !"Ввод", !"Закрыть");
send(playerid, -1, ""C_INF"Места на ДМ-Зоне установлены, установлено: %d.", strval(inputtext));
dm_zona_dplayers = strval(inputtext);
}
case 451:
{
if(!response) return 1;
if(dm_zona_start == true)
return Message(playerid, "{F31212}• "GRE"ДМ-Зона уже открыта, редактирование запрещено.");
if(!strlen(inputtext))
return ShowPlayerDialogFix(playerid, 451, DSI, !""DGC"[Установка входной платы]", !""WHT"Введите входную плату "YAK"(от 50$ до 1500$)"WHT":", !"Ввод", !"Закрыть");
if(strfind(inputtext,"%",true)!=-1 || strfind(inputtext,"'",true)!=-1 || strfind(inputtext,"=",true)!=-1 || strfind(inputtext,"-",true)!=-1 || strfind(inputtext,"+",true)!=-1)
{
Message(playerid,"{F31212}• "GRE"Обнаружены запрещенные символы.");
ShowPlayerDialogFix(playerid, 451, DSI, !""DGC"[Установка входной платы]", !""WHT"Введите входную плату "YAK"(от 50$ до 1.500$)"WHT":", !"Ввод", !"Закрыть");
return 1;
}
if(strval(inputtext) < 50 || strval(inputtext) > 1500)
return ShowPlayerDialogFix(playerid, 451, DSI, !""DGC"", !""WHT"Введите входную плату "YAK"(от 50$ до 1500$)"WHT":", !"Ввод", !"Закрыть"), Message(playerid, "{F31212}• "GRE"Входная плата от 50$ до 1.500$.");
send(playerid, -1, ""C_INF"Входная плата ДМ-Зоны установлено, входная плата: %s$.", ConvertCash(strval(inputtext)));
dm_zona_cash = strval(inputtext);
}
case 448:
{
if(!response) return 1;
if(dm_zona_start == true)
return Message(playerid, "{F31212}• "GRE"ДМ-Зона уже открыта, редактирование запрещено.");
switch(listitem)
{
case 0: dm_zona_map = 1, Message(playerid, ""C_INF"Карта ДМ-Зоны изменена на "YAK"RC Battlefield"WHT".");
case 1: dm_zona_map = 2, Message(playerid, ""C_INF"Карта ДМ-Зоны изменена на "YAK"LV Warehouse"WHT".");
case 2: dm_zona_map = 3, Message(playerid, ""C_INF"Карта ДМ-Зоны изменена на "YAK"LS Atruim"WHT".");
case 3: dm_zona_map = 4, Message(playerid, ""C_INF"Карта ДМ-Зоны изменена на "YAK"Warehouse"WHT".");
case 4: dm_zona_map = 5, Message(playerid, ""C_INF"Карта ДМ-Зоны изменена на "YAK"Planning dept."WHT".");
case 5: dm_zona_map = 6, Message(playerid, ""C_INF"Карта ДМ-Зоны изменена на "YAK"Catigula's bas."WHT".");
}
}
case 449:
{
if(!response) return 1;
if(dm_zona_start == true)
return Message(playerid, "{F31212}• "GRE"ДМ-Зона уже открыта, редактирование запрещено.");
if(!strlen(inputtext))
return ShowPlayerDialogFix(playerid, 449, DSI, !""DGC"", !""WHT"Введите "YAK"ID "WHT"оружия в поле ниже:", !"Ввод", !"Закрыть");
if(strfind(inputtext,"%",true)!=-1 || strfind(inputtext,"'",true)!=-1 || strfind(inputtext,"=",true)!=-1 || strfind(inputtext,"-",true)!=-1 || strfind(inputtext,"+",true)!=-1)
{
Message(playerid,"{F31212}• "GRE"Обнаружены запрещенные символы.");
ShowPlayerDialogFix(playerid, 449, DSI, !""DGC"[Установка оружия]", !""WHT"Введите "YAK"ID "WHT"оружия в поле ниже:", !"Ввод", !"Закрыть");
return 1;
}
send(playerid, -1, ""C_INF"Оружие ДМ-Зоны установлено, оружие: %s[ID: %d]", WeaponNames[strval(inputtext)], strval(inputtext));
dm_zona_gun = strval(inputtext);
}
PHP:
for(new i; i < MAX_PLAYERS; i++);
{
if(dm_zona_time[i] != 0 && dm_zona_start == true && in_mini_game_dm[i] == true)
{
dm_zona_time[i] --;
new str[15];
f(str, "~g~%d", dm_zona_time[i]);
GameTextForPlayer(i, str, 1100, 3);
PlayerPlaySound(i, 1056, 0.0, 0.0, 0.0);
if(dm_zona_time[i] == 0)
{
dm_zona_hp[i] = true;
TogglePlayerControllable(i, 1);
GameTextForPlayer(i, FixText("~g~GO GO GO"), 1000, 3);
PlayerPlaySound(i, 1057, 0.0, 0.0, 0.0);
SetPlayerHealth(i, 100);
GivePlayerWeapon(i, dm_zona_gun, 999);
}
}
if(dm_zona_dostup == true && dm_zona_start == true && dm_zona_players < 2)
{
new stringi[300];
if(in_mini_game_dm[i] == true)
{
Player[i][Money] += dm_zona_prize;
f(stringi, "{FF6347}[Mini-Game]: %s победил в ДМ-Зоне, он получает вознаграждение: %d$", Player[i][Name], dm_zona_prize);
MessageAll(stringi);
dm_zona_prize = 0;
dm_zona_start = false;
dm_zona_players = 0;
dm_zona_dostup = false;
in_mini_game_dm[i] = false;
SpawnPlayer(i);
}
}
}
PHP:
if(in_mini_game_dm[i] == true)
{
if(dm_zona_hp[i] == true)
{
new Float:HP;
GetPlayerHealth(i, HP);
SetPlayerHealth(i, HP-1);
}
if(GetPVarInt(i,!"AFK") >= 6)
{
SCM(i, 0xB0306000, "Вы были кикнуты за AFK на развлекательной зоне.");
Kick(i);
}
}
PHP:
publics Start_MGame_DM()
{
if(dm_zona_dostup == false && dm_zona_start == true)
{
if(dm_zona_players < 2)
{
foreach(Player, i)
{
Message(i, ""RED"[Mini-Game]: ДМ-Зона закрыта из-за недостаточного количества участников.");
if(in_mini_game_dm[i] == true)
{
SetPlayerHealth(i, 0);
in_mini_game_dm[i] = false;
Message(i, ""C_INF"ДМ-Зона закрыта.");
}
}
dm_zona_prize = 0;
dm_zona_dostup = false;
dm_zona_start = false;
dm_zona_players = 0;
}
else
{
foreach(Player, i)
{
if(in_mini_game_dm[i] == true)
{
dm_zona_time[i] = 6;
dm_zona_dostup = true;
}
}
}
}
return 1;
}
PHP:
publics show_dmtop(playerid)
{
new
rows,
name_player[32],
kill_player,
st[600],
st1[1000]
;
cache_get_row_count(rows);
if(rows)
{
for (new i = 0; i < rows; i ++)
{
cache_get_value_name(i, "Name", name_player, 32);
cache_get_value_name_int(i, "dm_zona_kill", kill_player);
f(st, "\
"YAK"%d) "WHT"%s "YAK"(Убийств: %s).\n", i + 1, name_player, kill_player);
strcat(st1,st,sizeof(st1));
}
f(st, "\
"WHT"\nВы убили: "YAK"%s.", Player[playerid][dm_zona_kill]);
strcat(st1,st,sizeof(st1));
ShowPlayerDialogFix(playerid, 1502, DSM, !""DGC"[Топ убийств на /dmzona]", st1, !"Закрыть", !"");
}
return 1;
}