shape1
shape2
shape3
shape4
shape7
shape8

/alcotest для полиции


dKingstone

Новичок
Пользователь
02.01.2016
6
8
0
Всем привет сегодня хочу дать вам команду алкотест! Скринов нету так-как на себе нельзя проверить!

Вот код

Код:
if(strcmp(cmd,"/alcotest",true)==0)
    {
        if(IsPlayerConnected(playerid))
	    {
	    if(!IsACop(playerid))
     	{
      		SendClientMessage(playerid, COLOR_GREY, "Вы не сотрудник полиции!");
      		return 1;
     	}
		tmp = strtok(cmdtext, idx);
		if(!strlen(tmp))
		{
			SendClientMessage(playerid, COLOR_ISPOLZUY, "Используйте: /alcotest [ид игрока]");
			return 1;
		}
		giveplayerid = ReturnUser(tmp);
		if(IsPlayerConnected(giveplayerid))
		{
			if(giveplayerid != INVALID_PLAYER_ID)
			{
				    if (ProxDetectorS(8.0, playerid, giveplayerid))
					{
					    if(giveplayerid == playerid){SendClientMessage(playerid, COLOR_GREY, "Вы не можете провести тест самому себе!");return 1;}
					    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
						GetPlayerName(playerid, sendername, sizeof(sendername));
					    new text1[20];
					    if(PlayerDrunk[giveplayerid] > 1) { text1 = "пьян"; } else { text1 = "трезв"; }
					    format(string, sizeof(string), "|__________ Тест %s на алкогольное опьянение __________|", giveplayer);
				        SendClientMessage(playerid, COLOR_WHITE, string);
				        format(string, sizeof(string), "Результат теста: Водитель %s", text1);
						SendClientMessage(playerid, COLOR_GREY, string);
						format(string, sizeof(string), "* %s проводит тест %s на алкогольное опьянение", sendername ,giveplayer);
						ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
					}
					else
					{
					    SendClientMessage(playerid, COLOR_GREY, "Игрок далеко от вас!");
					    return 1;
					}
				}
			}
	        else
	        {
	            SendClientMessage(playerid, COLOR_GREY, "Игрок не в сети!");
	            return 1;
	        }
		}
	    return 1;
 	}
 
Последнее редактирование модератором:

Batka1337

Хацкер-программист
Пользователь
08.12.2014
363
154
0
26
Чутка изменил, для удобства 
 

Код:
if(strcmp(cmd,"/alcotest",true)==0)
{
if(!IsPlayerConnected(playerid)) return true;
if(!IsACop(playerid) return SendClientMessage(playerid, COLOR_GREY, "Вы не сотрудник полиции!");
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_ISPOLZUY, "Используйте: /alcotest [ид игрока]");
giveplayerid = ReturnUser(tmp);
if(giveplayerid == INVALID_PLAYER_ID || !IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid, COLOR_GREY, "Игрок не в сети!");
if(!ProxDetectorS(8.0, playerid, giveplayerid)) return SendClientMessage(playerid, COLOR_GREY, "Игрок далеко от вас!");
if(giveplayerid == playerid) return SendClientMessage(playerid, COLOR_GREY, "Вы не можете провести тест самому себе!");
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new text1[20];
if(PlayerDrunk[giveplayerid] > 1) text1 = "пьян";
else text1 = "трезв";
format(string, sizeof(string), "|__________ Тест %s на алкогольное опьянение __________|", giveplayer);
SendClientMessage(playerid, COLOR_WHITE, string);
format(string, sizeof(string), "Результат теста: Водитель %s", text1);
SendClientMessage(playerid, COLOR_GREY, string);
format(string, sizeof(string), "* %s проводит тест %s на алкогольное опьянение", sendername ,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return true;
}
 

JoKeR2020

Гуру
Пользователь
26.11.2014
1 800
4
321
0
@Batka1337, это удобство?! :D Она стала только меньше, и не читабельной.

Не знаю, как кому, но для меня она стала читабельной.

Код:
if(strcmp(cmd,"/alcotest",true)==0)
{
	if(!IsPlayerConnected(playerid)) return true;
	if(!IsACop(playerid)
		return SendClientMessage(playerid, COLOR_GREY, "Вы не сотрудник полиции!");
	tmp = strtok(cmdtext, idx);
	if(!strlen(tmp))
		return SendClientMessage(playerid, COLOR_ISPOLZUY, "Используйте: /alcotest [ид игрока]");
	
	giveplayerid = ReturnUser(tmp);
	
	if(giveplayerid == INVALID_PLAYER_ID || !IsPlayerConnected(giveplayerid))
		return SendClientMessage(playerid, COLOR_GREY, "Игрок не в сети!");
	if(!ProxDetectorS(8.0, playerid, giveplayerid))
		return SendClientMessage(playerid, COLOR_GREY, "Игрок далеко от вас!");
	if(giveplayerid == playerid)
		return SendClientMessage(playerid, COLOR_GREY, "Вы не можете провести тест самому себе!");
	
	GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
	GetPlayerName(playerid, sendername, sizeof(sendername));
	
	new text1[20];
	text1 = (PlayerDrunk[giveplayerid] > 1)?("пьян"):("трезв");
	
	format(string, sizeof(string), "|__________ Тест %s на алкогольное опьянение __________|", giveplayer);
	SendClientMessage(playerid, COLOR_WHITE, string);
	format(string, sizeof(string), "Результат теста: Водитель %s", text1);
	SendClientMessage(playerid, COLOR_GREY, string);
	format(string, sizeof(string), "* %s проводит тест %s на алкогольное опьянение", sendername ,giveplayer);
	ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
	return true;
}
 
Последнее редактирование модератором:

Alim260302

Новичок
Пользователь
18.03.2017
2
4
0
19
А можно для DCCMD

Дополнение к сообщению:

А можно для DCCMD

 

noname_idk

Гуру
Пользователь
19.07.2015
4 046
7
787
0
Скриптер
@Alim260302,  

Код:
CMD:alcotest(playerid, params[])
{
	if(sscanf(params, "u", params[0]))
		return SendClientMessage(playerid, 0xFF0000FF, "Используйте: /alcotest [ид игрока]");
	if(params[0] == INVALID_PLAYER_ID)
		return true;
	if(params[0] == playerid)
		return SendClientMessage(playerid, 0xFF0000FF, "Вы не можете провести тест самому себе!");
	if(ProxDetectorS(8.0, playerid, params[0])
		return SendClientMessage(playerid, 0xFF0000FF, "Игрок далеко от вас!");
	new sendername[MAX_PLAYER_NAME], sendername2[MAX_PLAYER_NAME];
	GetPlayerName(playerid, sendername, sizeof(sendername));
	GetPlayerName(params[0], sendername2, sizeof(sendername2));
	static const fmt_string[] = "|__________ Тест %s на алкогольное опьянение __________|";
	new string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)];
	format(string, sizeof(string), fmt_string, sendername2);
	SendClientMessage(playerid, 0xFF0000FF, string);
	format(string, sizeof(string), "Результат теста: Водитель %s", (PlayerIDrunk[params[0] > 1) ? "пьян" : "трезв");
	SendClientMessage(playerid, 0xFF0000FF, string);
	static const fmt_string2[] = "* %s проводит тест %s на алкогольное опьянение";
	new string2[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)+(-2+MAX_PLAYER_NAME)];
	format(string2, sizeof(string2), fmt_string, sendername, sendername2);
	ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
	return true;
}
 

operskoy

Новичок
Пользователь
27.06.2022
3
0
0
Игрок
@Alim260302,

Код:
CMD:alcotest(playerid, params[])
{
    if(sscanf(params, "u", params[0]))
        return SendClientMessage(playerid, 0xFF0000FF, "Используйте: /alcotest [ид игрока]");
    if(params[0] == INVALID_PLAYER_ID)
        return true;
    if(params[0] == playerid)
        return SendClientMessage(playerid, 0xFF0000FF, "Вы не можете провести тест самому себе!");
    if(ProxDetectorS(8.0, playerid, params[0])
        return SendClientMessage(playerid, 0xFF0000FF, "Игрок далеко от вас!");
    new sendername[MAX_PLAYER_NAME], sendername2[MAX_PLAYER_NAME];
    GetPlayerName(playerid, sendername, sizeof(sendername));
    GetPlayerName(params[0], sendername2, sizeof(sendername2));
    static const fmt_string[] = "|__________ Тест %s на алкогольное опьянение __________|";
    new string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)];
    format(string, sizeof(string), fmt_string, sendername2);
    SendClientMessage(playerid, 0xFF0000FF, string);
    format(string, sizeof(string), "Результат теста: Водитель %s", (PlayerIDrunk[params[0] > 1) ? "пьян" : "трезв");
    SendClientMessage(playerid, 0xFF0000FF, string);
    static const fmt_string2[] = "* %s проводит тест %s на алкогольное опьянение";
    new string2[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)+(-2+MAX_PLAYER_NAME)];
    format(string2, sizeof(string2), fmt_string, sendername, sendername2);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    return true;
}
C:\Users\Кирилл\Desktop\СЛИВ МОДА RADMIR CRMP КАНАЛ ЗЕР\gamemodes\zername.pwn(51889) : error 017: undefined symbol "ProxDetectorS"
C:\Users\Кирилл\Desktop\СЛИВ МОДА RADMIR CRMP КАНАЛ ЗЕР\gamemodes\zername.pwn(51890) : error 001: expected token: ")", but found "return"
C:\Users\Кирилл\Desktop\СЛИВ МОДА RADMIR CRMP КАНАЛ ЗЕР\gamemodes\zername.pwn(51898) : error 017: undefined symbol "PlayerIDrunk"
C:\Users\Кирилл\Desktop\СЛИВ МОДА RADMIR CRMP КАНАЛ ЗЕР\gamemodes\zername.pwn(51898) : warning 215: expression has no effect
C:\Users\Кирилл\Desktop\СЛИВ МОДА RADMIR CRMP КАНАЛ ЗЕР\gamemodes\zername.pwn(51898) : error 001: expected token: ";", but found "]"
C:\Users\Кирилл\Desktop\СЛИВ МОДА RADMIR CRMP КАНАЛ ЗЕР\gamemodes\zername.pwn(51898) : error 029: invalid expression, assumed zero
C:\Users\Кирилл\Desktop\СЛИВ МОДА RADMIR CRMP КАНАЛ ЗЕР\gamemodes\zername.pwn(51898) : fatal error 107: too many error messages on one line

Compilation aborted.

Pawn compiler 3.10.8 Copyright (c) 1997-2006, ITB CompuPhase


6 Errors.