Перейти к содержимому

Ice-Host


Добро пожаловать на пользовательский форум CR-MP.RU
Зарегистрируйтесь или авторизуйтесь на нашем форуме, чтобы получить доступ ко всем функциям.
Если у Вас уже имеется аккаунт, нажмите, чтобы войти.
Если у Вас нет аккаунта на нашем форуме, нажмите, чтобы перейти к регистрации. Возникли проблемы с регистрацией ? Обратитесь на почту admin@cr-mp.ru с вашей проблемой.
Фотография

Помогите исправить ошибку в команде /makeleader

- - - - - Вопрос crmp pawno команда

  • Закрытая тема Тема закрыта
Сообщений в теме: 10

#1
Golovin_17

Житель


Репутация: 0

Помогите исправить ошибку в команде!!!
Вожу команду /makeleader выдается фракция но 1 ранг
А как сделать чтобы выдавало лидерку?
 

	if(strcmp(cmd, "/makeleader", true) == 0)
	{
		if(IsPlayerConnected(playerid))
		{
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD2, "?????????: /??????? [playerid] [id]");
				return 1;
			}
			new para1;
			new level;
			para1 = strval(tmp);
			tmp = strtok(cmdtext, idx);
			level = strval(tmp);
			if(level > 25 || level < 0) { SendClientMessage(playerid, COLOR_GREY, "????? ??????? ??? ?????? ?? 0, ?? 24!"); return 1; }
			if(PlayerInfo[playerid][pAdmin] >= 8) //??? ??????????????
			{
				if (dostup[playerid] != 1)
				{
					ShowPlayerDialog(playerid,2934,DIALOG_STYLE_INPUT,"?????? ??????????????","??????? ?????? ?? ???????????????? ??????","??","??????");
					return 1;
				}
				if(IsPlayerConnected(para1))
				{
					if(para1 != INVALID_PLAYER_ID)
					{
						if(PlayerInfo[para1][pMember] > 0 || PlayerInfo[para1][pFMember] < 255)
						{
							SendClientMessage(playerid, COLOR_GREY, "*???? ????? ??? ??????? ?? ???????!");
							return 1;
						}
						GetPlayerName(para1, giveplayer, sizeof(giveplayer));
						GetPlayerName(playerid, sendername, sizeof(sendername));
						PlayerInfo[para1][pLeader] = level;
						format(string, sizeof(string), "* ??? ???? ?????? ???????! ??????? %s", sendername);
						SendClientMessage(para1, COLOR_LIGHTBLUE, string);
						format(string, sizeof(string), "* ?? ?????? ??????? %s %d.", giveplayer,level);
						SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
						if(level == 0) { PlayerInfo[para1][pChar] = 0; }
						else if(level == 1) { PlayerInfo[para1][pChar] = 288; } //?????
						else if(level == 2) { PlayerInfo[para1][pChar] = 295; } //???
						else if(level == 3) { PlayerInfo[para1][pChar] = 287; } //?????
						else if(level == 4) { PlayerInfo[para1][pChar] = 70; } //???
						else if(level == 5) { PlayerInfo[para1][pChar] = 113; } //La Cosa Nostra
						else if(level == 6) { PlayerInfo[para1][pChar] = 120; } //???
						else if(level == 7) { PlayerInfo[para1][pChar] = 147; } //?????????????
						else if(level == 8) { PlayerInfo[para1][pChar] = 294; } //???????
						else if(level == 9) { PlayerInfo[para1][pChar] = 113; } //????????
						else if(level == 10) { PlayerInfo[para1][pChar] = 61; } //??? ????
						else if(level == 11) { PlayerInfo[para1][pChar] = 171; } //????????? ?.??????
						else if(level == 12) { PlayerInfo[para1][pChar] = 270; }//??????????? ?????
						else if(level == 13) { PlayerInfo[para1][pChar] = 118; }//???
						else if(level == 14) { PlayerInfo[para1][pChar] = 277; }//Mara Salvatrucha
						else if(level == 15) { PlayerInfo[para1][pChar] = 111; }//?????? ?????
						else if(level == 16) { PlayerInfo[para1][pChar] = 102; }//???????
						else if(level == 17) { PlayerInfo[para1][pChar] = 67; }//??????? ???????
						else if(level == 18) { PlayerInfo[para1][pChar] = 46; }//???????????
						else if(level == 19) { PlayerInfo[para1][pChar] = 272; }//??????????? ??????
						else if(level == 20) { PlayerInfo[para1][pChar] = 126; } //???
						else if(level == 21) { PlayerInfo[para1][pChar] = 188; }//????? ??????
						else if(level == 22) { PlayerInfo[para1][pChar] = 21; } //???
						else if(level == 23) { PlayerInfo[para1][pChar] = 285; } //???????
						else if(level == 24) { PlayerInfo[para1][pChar] = 28; } //???????
						else if(level == 25) { PlayerInfo[para1][pChar] = 28; } //???????
						gTeam[para1] = 11;
						PlayerInfo[para1][pTeam] = 11;
						SetPlayerSkin(para1, PlayerInfo[para1][pChar]);
					}
				}//not connected
			}
			else
			{
				SendClientMessage(playerid, COLOR_GRAD1, "* ? ??? ??? ???? ?? ????????????? ???????! !");
			}
		}
		return 1;
	}

Lev_Elistratov (29 Январь 2017 - 12:20):
Нет активности 7 дней! Закрыто и перемещено в раздел "Архив Вопросов/Проблем"


#2
OlegDobritsa

Calm


Репутация: 18

Golovin_17, объясни нормально. Выдаёт же лидерку, а там уже лидер пускай сам себе выдаёт LVL. 



#3
SCRIPTMAN

Shapik


Репутация: 151

Смени раскладку на русскую и выложи. А так: 

PlayerInfo[para1][pRang] = ранг;


#4
Wеb

Скриптизер


Репутация: 190

Так и должно быть. Потом ты должен себя повысить через /giverank до нужного ранга.


Сообщение отредактировал Веб: 11 Январь 2017 - 19:38


#5
SCRIPTMAN

Shapik


Репутация: 151

,Да, но можно сделать ведь проще. 



#6
Alonso

YouTubep.


Репутация: 35

После каждого 
PlayerInfo[para1][pChar] = 120;
кидай

PlayerInfo[para1][pRank] = номер старшего ранга;



#7
Kapral

Аналитик по CRMP/SAMP


Репутация: 43
if(strcmp(cmd, "/makeleader", true) == 0)
	{
		if(IsPlayerConnected(playerid))
		{
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD2, "?????????: /makeleader [playerid] [id]");
				return 1;
			}
			new para1;
			new level;
			para1 = strval(tmp);
			tmp = strtok(cmdtext, idx);
			level = strval(tmp);
			if(level > 25 || level < 0) { SendClientMessage(playerid, COLOR_GREY, "????? ??????? ??? ?????? ?? 0, ?? 25!"); return 1; }
			if(PlayerInfo[playerid][pAdmin] >= 8) //??? ??????????????
			{
				if (dostup[playerid] != 1)
				{
					ShowPlayerDialog(playerid,2934,DIALOG_STYLE_INPUT,"?????? ??????????????","??????? ?????? ?? ???????????????? ??????","??","??????");
					return 1;
				}
				if(IsPlayerConnected(para1))
				{
					if(para1 != INVALID_PLAYER_ID)
					{
						if(PlayerInfo[para1][pMember] > 0 || PlayerInfo[para1][pFMember] < 255)
						{
							SendClientMessage(playerid, COLOR_GREY, "*???? ????? ??? ??????? ?? ???????!");
							return 1;
						}
						GetPlayerName(para1, giveplayer, sizeof(giveplayer));
						GetPlayerName(playerid, sendername, sizeof(sendername));
						PlayerInfo[para1][pLeader] = level;
						format(string, sizeof(string), "* ??? ???? ?????? ???????! ??????? %s", sendername);
						SendClientMessage(para1, COLOR_LIGHTBLUE, string);
						format(string, sizeof(string), "* ?? ?????? ??????? %s %d.", giveplayer,level);
						SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
						if(level == 0) { PlayerInfo[para1][pChar] = 0; } { PlayerInfo[para1][pRank] = 0; }
						else if(level == 1) { PlayerInfo[para1][pChar] = 288; } { PlayerInfo[para1][pRank] = 0; } //?????
						else if(level == 2) { PlayerInfo[para1][pChar] = 295; } //???
						else if(level == 3) { PlayerInfo[para1][pChar] = 287; } //?????
						else if(level == 4) { PlayerInfo[para1][pChar] = 70; } //???
						else if(level == 5) { PlayerInfo[para1][pChar] = 113; } //La Cosa Nostra
						else if(level == 6) { PlayerInfo[para1][pChar] = 120; } //???
						else if(level == 7) { PlayerInfo[para1][pChar] = 147; } //?????????????
						else if(level == 8) { PlayerInfo[para1][pChar] = 294; } //???????
						else if(level == 9) { PlayerInfo[para1][pChar] = 113; } //????????
						else if(level == 10) { PlayerInfo[para1][pChar] = 61; } //??? ????
						else if(level == 11) { PlayerInfo[para1][pChar] = 171; } //????????? ?.??????
						else if(level == 12) { PlayerInfo[para1][pChar] = 270; }//??????????? ?????
						else if(level == 13) { PlayerInfo[para1][pChar] = 118; }//???
						else if(level == 14) { PlayerInfo[para1][pChar] = 277; }//Mara Salvatrucha
						else if(level == 15) { PlayerInfo[para1][pChar] = 111; }//?????? ?????
						else if(level == 16) { PlayerInfo[para1][pChar] = 102; }//???????
						else if(level == 17) { PlayerInfo[para1][pChar] = 67; }//??????? ???????
						else if(level == 18) { PlayerInfo[para1][pChar] = 46; }//???????????
						else if(level == 19) { PlayerInfo[para1][pChar] = 272; }//??????????? ??????
						else if(level == 20) { PlayerInfo[para1][pChar] = 126; } //???
						else if(level == 21) { PlayerInfo[para1][pChar] = 188; }//????? ??????
						else if(level == 22) { PlayerInfo[para1][pChar] = 21; } //???
						else if(level == 23) { PlayerInfo[para1][pChar] = 285; } //???????
						else if(level == 24) { PlayerInfo[para1][pChar] = 28; } //???????
						else if(level == 25) { PlayerInfo[para1][pChar] = 28; } //???????
						gTeam[para1] = 11;
						PlayerInfo[para1][pTeam] = 11;
						SetPlayerSkin(para1, PlayerInfo[para1][pChar]);
					}
				}//not connected
			}
			else
			{
				SendClientMessage(playerid, COLOR_GRAD1, "* ? ??? ??? ???? ?? ????????????? ???????! !");
			}
		}
		return 1;
	}

Сделал пример выдачи ранга у первого лидера, смотри, делай так же. Вставляй ранг, и готово.



#8
Alonso

YouTubep.


Репутация: 35
Kapral, вообще-то
if(level == 0) { PlayerInfo[para1][pChar] = 0; PlayerInfo[para1][pRank] = 0; }

#9
Kapral

Аналитик по CRMP/SAMP


Репутация: 43

,раз умный, вставляй. 



#10
Alonso

YouTubep.


Репутация: 35
Golovin_17, если помогло кнопочка вопрос решен Kapral, просто тупить не надо, в твоем случае либо краш павн, либо ошибки.

#11
SCRIPTMAN

Shapik


Репутация: 151

Смотри. После каждого ида скина(pChar) вставляй PlayerInfo[para1][pRank] = ранг. Пример: 

if(level == 0) { PlayerInfo[para1][pChar] = 280; PlayerInfo[para1][pRank] = 5; }//level == 0 ид фракции, скорей всего это означает то, что это гражданин, pRang не вставляй! А вот если if(level == 1) и дальше. То вставляй так: if(level == 1) { PlayerInfo[para1][pChar] = 280; PlayerInfo[para1][pRank] = 5; }// level == 1, 1 - ид фракции, [pChar] = 280, 280 - ид скина, [pRank] == 5, 5 - ранг ради примера вставил. Кстати, если будет выдавать 17 еррор, скорей всего из-за этого: [pRank], тогда букву k замени на g. Так-как есть тут скриптеро-грамматики, которые толком русского не знают.

Написал конечно)))

,Тут твоя ошибка.  if(level == 0) - значит, что скорей всего он гражданин - пропускаем. А дальше, всё верно.







Темы с аналогичным тегами Вопрос, crmp, pawno, команда

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных


Место свободно Место свободно