Перейти к содержанию
Авторизация  
Maradonna

Команды /crb, /rub, /rrball.

Рекомендуемые сообщения

Maradonna

Решил добавить сюда. Команды добовляющие и ибирающие заграждения. Для гос.фракций.

в newnew UsedCom[MAX_PLAYERS];далее в define#define MAX_ROADBLOCKS 35далее в forwardforward SafeSetPlayerPos(playerid, Float:x, Float:y, Float:z);forward RemoveRoadblock(playerid);forward CommandLog(string[]);далее в stockstock CreateRoadblock(Object,Float:x,Float:y,Float:z,Float:Angle){    for(new i = 0; i < sizeof(Roadblocks); i++)  	{  	    if(Roadblocks[i][sCreated] == 0)  	    {            Roadblocks[i][sCreated] = 1;            Roadblocks[i][sX] = x;            Roadblocks[i][sY] = y;            Roadblocks[i][sZ] = z-0.7;            Roadblocks[i][sObject] = CreateObject(Object, x, y, z-0.9, 0, 0, Angle);	        return 1;  	    }  	}  	return 0;}//==============================================================================stock DeleteAllRoadblocks(playerid){    for(new i = 0; i < sizeof(Roadblocks); i++)  	{  	    if(IsPlayerInRangeOfPoint(playerid, 100, Roadblocks[i][sX], Roadblocks[i][sY], Roadblocks[i][sZ]))        {	  	    if(Roadblocks[i][sCreated] == 1)	  	    {	  	        Roadblocks[i][sCreated] = 0;	            Roadblocks[i][sX] = 0.0;	            Roadblocks[i][sY] = 0.0;	            Roadblocks[i][sZ] = 0.0;	            DestroyObject(Roadblocks[i][sObject]);	  	    }  	    }	}    return 0;}//==============================================================================stock DeleteClosestRoadblock(playerid){    for(new i = 0; i < sizeof(Roadblocks); i++)  	{  	    if(IsPlayerInRangeOfPoint(playerid, 5.0, Roadblocks[i][sX], Roadblocks[i][sY], Roadblocks[i][sZ]))        {  	        if(Roadblocks[i][sCreated] == 1)            {                Roadblocks[i][sCreated] = 0;                Roadblocks[i][sX] = 0.0;                Roadblocks[i][sY] = 0.0;                Roadblocks[i][sZ] = 0.0;                DestroyObject(Roadblocks[i][sObject]);                return 1;  	        }  	    }  	}    return 0;}далее в конце в publicpublic SafeSetPlayerPos(playerid, Float:x, Float:y, Float:z){	SetPlayerPos(playerid, x,y,z);	Streamer_UpdateEx(playerid,x,y,z);	return 1;}forward KillInstLoc6();далее в enumenum rInfo{    sCreated,    Float:sX,    Float:sY,    Float:sZ,    sObject,};new Roadblocks[MAX_ROADBLOCKS][rInfo];далее в где логи вашего сервера добовляетеpublic CommandLog(string[]){	new entry[256];	format(entry, sizeof(entry), "%srn",string);	new File:hFile;	hFile = fopen("logs/removeroadblock.log", io_append);	fwrite(hFile, entry);	fclose(hFile);}ну теперь в командыif(strcmp(cmd, "/crb", true) == 0 || strcmp(cmd, "/createroadblock", true) == 0)	{	    if(UsedCom[playerid]>0) return SendClientMessage(playerid, COLOR_WHITE, "Ввод команды разрешен раз в 1 секунду");	    if(IsPlayerConnected(playerid) && IsACop(playerid) || IsPlayerAdmin(playerid))     	{			tmp = strtok(cmdtext, idx);			if(!strlen(tmp))			{				SendClientMessage(playerid, COLOR_WHITE, "Используйте: /crb [???????? ??????????-?????????? ????? ID]");				SendClientMessage(playerid, COLOR_LIGHTBLUE, "????????? ?????????:");				SendClientMessage(playerid, COLOR_GRAD1, "| 1: ????? ??????????-?????????? ???? | 2: ??????? ??????????-?????????? ???? |");				SendClientMessage(playerid, COLOR_GRAD1, "| 3: ??????? ??????????-?????????? ???? | 4: ????? | 5: ?????? ????? |");				SendClientMessage(playerid, COLOR_GRAD1, "| 6: ????? ????? | 7: ????? ???????? ????? |");				return 1;			}            new rb = strval(tmp);            if (rb == 1)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(1459,plocx,plocy,plocz,ploca);		        format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(1).",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);				return 1;			}			else if (rb == 2)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(978,plocx,plocy,plocz+0.6,ploca);		        format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(2)",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);				return 1;			}			else if (rb == 3)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(981,plocx,plocy,plocz+0.9,ploca+180);		        format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(3)",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);		        SafeSetPlayerPos(playerid, plocx, plocy+1.3, plocz);				return 1;			}			else if (rb == 4)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(1238,plocx,plocy,plocz+0.2,ploca);		        format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(4)",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);				return 1;			}			else if (rb == 5)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(1425,plocx,plocy,plocz+0.6,ploca);		        format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(5)",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);				return 1;			}			else if (rb == 6)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(3265,plocx,plocy,plocz-0.5,ploca);		        format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(6)",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);				return 1;			}			else if (rb == 7)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(3091,plocx,plocy,plocz+0.5,ploca+180);		        format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(7)",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);				return 1;			}			new y, m, d;			new h,mi,s;			getdate(y,m,d);			gettime(h,mi,s);			format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [??????????? ???????] -> /createroadblock %d",d,m,y,h,mi,s,sendername, rb);			CommandLog(string);		}		UsedCom[playerid]=0;	    return 1;	}//==============================================================================	if (strcmp(cmd,"/rub",true) == 0 || strcmp(cmd, "/removeroadblock", true) == 0)	{	    if(UsedCom[playerid]>0) return SendClientMessage(playerid, COLOR_WHITE, "???? ??????? ???????? ??? ? 1 ???????");	    if(IsPlayerConnected(playerid) && IsACop(playerid) || PlayerInfo[playerid][pAdmin] >= 2)     	{        	DeleteClosestRoadblock(playerid);        	format(string,sizeof(string),"[????]: ?????? %s ????? ??????????-?????????? ????.",sendername);	        SendRadioMessage(1,COLOR_BLUE,string);	        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~r~Y€PA?!",3000,1);	        new y, m, d;			new h,mi,s;			getdate(y,m,d);			gettime(h,mi,s);			format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [??????????? ???????] -> /removeroadblock",d,m,y,h,mi,s,sendername);			CommandLog(string);		}		UsedCom[playerid]=0;	    return 1;	}//==============================================================================	if (strcmp(cmd,"/rrball",true) == 0 || strcmp(cmd, "/removeroadblockall", true) == 0)	{	    if(UsedCom[playerid]>0) return SendClientMessage(playerid, COLOR_WHITE, "???? ??????? ???????? ??? ? 1 ???????");	    if(IsPlayerConnected(playerid) && IsACop(playerid)  || PlayerInfo[playerid][pAdmin] >= 2)     	{			if(PlayerInfo[playerid][pRank] >= 5 || PlayerInfo[playerid][pAdmin] >= 2) // This being the default Chief rank in LA-RP change if neccesary.			{        		DeleteAllRoadblocks(playerid);        		format(string,sizeof(string),"[????]: ?????? %s ????? ??? ??????????-?????????? ??????.",sendername);	        	SendRadioMessage(1,COLOR_BLUE,string);	        	GameTextForPlayer(playerid,"~b~?OPO„?OE ?A‚PA„?E?…E ~r~Y€PA?!",3000,1);	        	new y, m, d;				new h,mi,s;				getdate(y,m,d);				gettime(h,mi,s);				format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [??????????? ???????] -> /removeroadblockall",d,m,y,h,mi,s,sendername);				CommandLog(string);			}		}		UsedCom[playerid]=0;	    return 1;	}

 Делал не по порядку. строго не судите. может кому то пригодится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Vladimirok

"??????????? ???????", Везде обнови  что-было написано.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
John_Smith

Не правильный заголовок. Исправь в коде то что в лог записывается. Даю сутки.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Maradonna

Не правильный заголовок. Исправь в коде то что в лог записывается. Даю сутки.

Почему то не могу изменить сообщение. Нету кнопки изменить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Maradonna

 

 

 Вот вообщем само сообщение не могу изменить вот команды.

if(strcmp(cmd, "/crb", true) == 0 || strcmp(cmd, "/createroadblock", true) == 0)	{	    if(UsedCom[playerid]>0) return SendClientMessage(playerid, COLOR_WHITE, "Ввод команды разрешен раз в 1 секунду");	    if(IsPlayerConnected(playerid) && IsACop(playerid) || IsPlayerAdmin(playerid))     	{			tmp = strtok(cmdtext, idx);			if(!strlen(tmp))			{				SendClientMessage(playerid, COLOR_WHITE, "Используйте: /crb [Дорожно контрольный-пропускной пункт ID]");				SendClientMessage(playerid, COLOR_LIGHTBLUE, "Доступные блокпосты:");				SendClientMessage(playerid, COLOR_GRAD1, "| 1: Малый контрольно пропускной рункт | 2: Средний контрольный пропускной пункт|");				SendClientMessage(playerid, COLOR_GRAD1, "| 3: Большой контрольный пропускной пункт | 4: Конус | 5: Объезд Войти|");				SendClientMessage(playerid, COLOR_GRAD1, "| 6: Будет Войти | 7: Линия закрытой Войти|");				return 1;			}            new rb = strval(tmp);            if (rb == 1)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(1459,plocx,plocy,plocz,ploca);		        format(string,sizeof(string),"[Штаб]: Офицер %s поставил контрольно пропускной(1).",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);				return 1;			}			else if (rb == 2)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(978,plocx,plocy,plocz+0.6,ploca);		        format(string,sizeof(string),"[Штаб]: Офицер %s поставил контрольно пропускной(2)",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);				return 1;			}			else if (rb == 3)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(981,plocx,plocy,plocz+0.9,ploca+180);		        format(string,sizeof(string),"[Штаб]: Офицер %s поставил контрольно пропускной(3)",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);		        SafeSetPlayerPos(playerid, plocx, plocy+1.3, plocz);				return 1;			}			else if (rb == 4)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(1238,plocx,plocy,plocz+0.2,ploca);		        format(string,sizeof(string),"[Штаб]: Офицер %s поставил контрольно пропускной(4)",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);				return 1;			}			else if (rb == 5)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(1425,plocx,plocy,plocz+0.6,ploca);		        format(string,sizeof(string),"[Штаб]: Офицер %s поставил контрольно пропускной(5)",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);				return 1;			}			else if (rb == 6)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(3265,plocx,plocy,plocz-0.5,ploca);		        format(string,sizeof(string),"[Штаб]: Офицер %s поставил контрольно пропускной(6)",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);				return 1;			}			else if (rb == 7)			{				PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);				new Float:plocx,Float:plocy,Float:plocz,Float:ploca;		        GetPlayerPos(playerid, plocx, plocy, plocz);		        GetPlayerFacingAngle(playerid,ploca);		        CreateRoadblock(3091,plocx,plocy,plocz+0.5,ploca+180);		        format(string,sizeof(string),"[Штаб]: Офицер %s поставил контрольно пропускной(7)",sendername);		        SendRadioMessage(1,COLOR_BLUE,string);		        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1);				return 1;			}			new y, m, d;			new h,mi,s;			getdate(y,m,d);			gettime(h,mi,s);			format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [Использовал команду] -> /createroadblock %d",d,m,y,h,mi,s,sendername, rb);			CommandLog(string);		}		UsedCom[playerid]=0;	    return 1;	}//==============================================================================	if (strcmp(cmd,"/rub",true) == 0 || strcmp(cmd, "/removeroadblock", true) == 0)	{	    if(UsedCom[playerid]>0) return SendClientMessage(playerid, COLOR_WHITE, "Ввод команды разрешен раз в 1 секунду");	    if(IsPlayerConnected(playerid) && IsACop(playerid) || PlayerInfo[playerid][pAdmin] >= 2)     	{        	DeleteClosestRoadblock(playerid);        	format(string,sizeof(string),"[Штаб]: Офицер %s Убрал контрольно пропускной пункт.",sendername);	        SendRadioMessage(1,COLOR_BLUE,string);	        GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~r~Y€PA?!",3000,1);	        new y, m, d;			new h,mi,s;			getdate(y,m,d);			gettime(h,mi,s);			format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [Использовал команду] -> /removeroadblock",d,m,y,h,mi,s,sendername);			CommandLog(string);		}		UsedCom[playerid]=0;	    return 1;	}//==============================================================================	if (strcmp(cmd,"/rrball",true) == 0 || strcmp(cmd, "/removeroadblockall", true) == 0)	{	    if(UsedCom[playerid]>0) return SendClientMessage(playerid, COLOR_WHITE, "Ввод команды разрешен раз в 1 секунду");	    if(IsPlayerConnected(playerid) && IsACop(playerid)  || PlayerInfo[playerid][pAdmin] >= 2)     	{			if(PlayerInfo[playerid][pRank] >= 5 || PlayerInfo[playerid][pAdmin] >= 2) // This being the default Chief rank in LA-RP change if neccesary.			{        		DeleteAllRoadblocks(playerid);        		format(string,sizeof(string),"[Штаб]: Офицер %s Убал все контрольно пропускные пункты.",sendername);	        	SendRadioMessage(1,COLOR_BLUE,string);	        	GameTextForPlayer(playerid,"~b~?OPO„?OE ?A‚PA„?E?…E ~r~Y€PA?!",3000,1);	        	new y, m, d;				new h,mi,s;				getdate(y,m,d);				gettime(h,mi,s);				format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [Использовал команду] -> /removeroadblockall",d,m,y,h,mi,s,sendername);				CommandLog(string);			}		}		UsedCom[playerid]=0;	    return 1;	}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Max_Mister

Скрин желательно-бы

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Maradonna

Скрин желательно-бы

Скрин желательно-бы

хорошо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Maradonna

хорошо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Maradonna

Изображение

Изображение

Изображение

Изображение

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
John_Smith

Закрыто.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.