Вопросы

Kirya_812
Новичок

у меня возник вопрос с командой /setleader. Но при заходе на сервер команда не работает. я думаю что она не работает из-за последней команды.

Можете помочь сделать так что - бы она работала ? (закодирована)

 

Спойлер

CMD:setleader(playerid, params[])
{
	if(GetString(GetName(playerid), NAME_DEVELOPER_ONE))
	{
		if(AdminLogged[playerid] == false) return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
		if(sscanf(params, "u", params[0])) return SendClientMessage(playerid, COLOR_LIME, "Èíôîðìàöèÿ: {ffffff}/setleader [id èãðîêà]");
		if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, COLOR_GREY, PlayerIsNotOnline);
		if(PlayerLogged[params[0]] == false) return SendClientMessage(playerid, COLOR_GREY, PlayerIsNotAuthorized);
		if(IsPlayerInAnyVehicle(params[0])) return SendClientMessage(playerid, COLOR_GREY, "Èãðîê íå äîëæåí íàõîäèòüñÿ â òðàíñïîðòå!");
		if(PI[params[0]][pLevel] < 3) return SendClientMessage(playerid, COLOR_GREY, "Ó èãðîêà íåòó 3 óðîâíÿ!");
		if((PI[params[0]][pAdmin] >= 1 && PI[params[0]][pAdmin] <= 5) && PI[playerid][pAdmin] != 6) return SendClientMessage(playerid, COLOR_GREY, "Àäìèíèñòðàòîðà íåëüçÿ ñòàâèòü íà ïîñò ëèäåðà!");
		if(PI[playerid][pAdmin] != 6 && PI[params[0]][pAdmin] == 6) return SendClientMessage(playerid, COLOR_GREY, "Àäìèíèñòðàòîðà íåëüçÿ ñòàâèòü íà ïîñò ëèäåðà!");
		if(PI[params[0]][pTempLeader]) return SendClientMessage(playerid, COLOR_GREY, "Ñíà÷àëà ñíèìèòå ñ ñåáÿ ïðàâà âðåìåííîãî ëèäåðà!");
		if(PI[params[0]][pLeader])
		{
			LeaveFractionPlayer(params[0]);
			SendMes(playerid, COLOR_BLUE, "Âû ñíÿëè %s ñ äîëæíîñòè ëèäåðà îðãàíèçàöèè",GetName(params[0]));
			SendMes(params[0], COLOR_BLUE, "Àäìèíèñòðàòîð %s ñíÿë âàñ ñ äîëæíîñòè ëèäåðà îðãàíèçàöèè", GetName(playerid));
		}
		else
		{
			if(PI[params[0]][pLeader] > 0) return SendClientMessage(playerid, COLOR_GREY, "Èãðîê ëèäåð äðóãîé îðãàíèçàöèè!");
			if(PI[params[0]][pMember] > 0) return SendClientMessage(playerid, COLOR_GREY, "Èãðîê íàõîäèòüñÿ â äðóãîé îðãàíèçàöèè!");
			new str[90], str2[600];
			for(new i = 1; i < MAX_FRACTIONS; i++)
			{
				format(str, sizeof(str), "¹%i - %s\n", i, Fraction_Name[i]);
				strcat(str2, str);
			}
			SetPVarInt(playerid, "actplayerid", params[0]);
			ShowPlayerDialog(playerid, D_FRACMENU, 2, "{ffcc00}Îðãàíèçàöèè", str2, "Ïðèíÿòü", "Îòìåíà");
		}
	}
	else SendClientMessage(playerid, COLOR_WHITE, "Êîìàíäà íå îáíàðóæåíà! Èñïîëüçóéòå {FFCC00}/menu {FFFFFF}äëÿ ïðîñìîòðà êîìàíä");
	return 1;
}

 

 

Отредактировано пользователем Shakoladka

Заметка от Shakoladka , создано

Код больше 10-ти строк нужно брать не только под тег "Код", ну а и еще под спойлер, как это сделать можно узнать тут

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


Ссылка на сообщение

2 ответа на этот вопрос

  • 0
m1n1vv
Свой человек

Скорей всего это связано с выходом за пределы массива и у тебя нет краш детектора

Спойлер

CMD:setleader(playerid, params[])
{
	if (!GetString(GetName(playerid), NAME_DEVELOPER_ONE))
		return SendClientMessage(playerid, COLOR_WHITE, !"Êîìàíäà íå îáíàðóæåíà! Èñïîëüçóéòå {FFCC00}/menu {FFFFFF}äëÿ ïðîñìîòðà êîìàíä");
	if(!AdminLogged[playerid])
		return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
	if (isnull(params))
		return SendClientMessage(playerid, COLOR_LIME, "Èíôîðìàöèÿ: {ffffff}/setleader [id èãðîêà]");

	new
		id = strval(params);
		
	if (!IsPlayerConnected(id))
		return SendClientMessage(playerid, COLOR_GREY, PlayerIsNotOnline);
	if (!PlayerLogged[id])
		return SendClientMessage(playerid, COLOR_GREY, PlayerIsNotAuthorized);
	if (IsPlayerInAnyVehicle(id))
		return SendClientMessage(playerid, COLOR_GREY, !"Èãðîê íå äîëæåí íàõîäèòüñÿ â òðàíñïîðòå!");
	if (PI[id][pLevel] < 3)
		return SendClientMessage(playerid, COLOR_GREY, !"Ó èãðîêà íåòó 3 óðîâíÿ!");
	if (!(1 <= PI[id][pAdmin] <= 5) && PI[playerid][pAdmin] != 6)
		return SendClientMessage(playerid, COLOR_GREY, !"Àäìèíèñòðàòîðà íåëüçÿ ñòàâèòü íà ïîñò ëèäåðà!");
	if (PI[playerid][pAdmin] != 6 && PI[id][pAdmin] == 6)
		return SendClientMessage(playerid, COLOR_GREY, !"Àäìèíèñòðàòîðà íåëüçÿ ñòàâèòü íà ïîñò ëèäåðà!");

	if (PI[id][pLeader])
	{
		LeaveFractionPlayer(id);
		SendMes(playerid, COLOR_BLUE, "Âû ñíÿëè %s ñ äîëæíîñòè ëèäåðà îðãàíèçàöèè", GetName(id));
		SendMes(id, COLOR_BLUE, "Àäìèíèñòðàòîð %s ñíÿë âàñ ñ äîëæíîñòè ëèäåðà îðãàíèçàöèè", GetName(playerid));
	}
	else
	{
		if(PI[id][pLeader] > 0)
			return SendClientMessage(playerid, COLOR_GREY, !"Èãðîê ëèäåð äðóãîé îðãàíèçàöèè!");
		if(PI[id][pMember] > 0)
			return SendClientMessage(playerid, COLOR_GREY, !"Èãðîê íàõîäèòüñÿ â äðóãîé îðãàíèçàöèè!");

		static
			str[90],
			str2[600];

		for (new i = 0; i < MAX_FRACTIONS; i++)
		{
			format(str, sizeof(str), "¹%i - %s\n", i+1, Fraction_Name[i]);
			strcat(str2, str);
		}
		SetPVarInt(playerid, "actplayerid", id);
		ShowPlayerDialog(playerid, D_FRACMENU, 2, "{ffcc00}Îðãàíèçàöèè", str2, "Ïðèíÿòü", "Îòìåíà");
		str2[0] = EOS;
	}

	return 1;
}

 

 

Отредактировано пользователем m1n1vv

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


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

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

  • Похожий контент

    • Дебилойд
      От Дебилойд
      Здравствуйте!
      Мы ищем талантливого 3D-моделлера в команду нашего CRMP-проекта!
      Что нужно будет делать:
      Моделировать и адаптировать автомобили.
      Создавать и настраивать скины (модели персонажей).
      Большим плюсом будет:
      Умение создавать качественные и оптимизированные интерьеры.
      Если вы хотите стать частью нашей команды и развивать проект вместе с нами, пишите в ЛС. Ждем ваши портфолио!
    • LORDIKUS
      От LORDIKUS
      Уважаемые участники форума - всех приветствую, кто перешел в беседу моей темы обсуждения. В настоящее время у меня зарождается огромное желание и мысль создать собственный CR:MP проект, но столкнулся с единственной проблемой - с отсутствием команды людей, у которых будет искреннее желание ежедневно вкладывать свой труд на разработку проекта. Особого опыта в скриптинге, маппинге, дизайне или в моделировании у меня не имеется, поэтому такой критерий как опыт в определенной сфере для желающих вступить в команду я не рассматриваю. Так как проект не открыт и находится на начальной стадии создания, мое сотрудничество выстраивается на некоммерческой основе (без выплаты за проделанную работу и труд), однако я не собираюсь отрицать высокую ценность вложенного командой труд — труд, особенно на первой стадии разработки я рассматриваю превыше всего. После открытия проекта в зависимости от коммерции и чистой прибыли каждый участник будет получать настоящую выплату, однако это также может убить еще значительное время. Мне нужна команда, которая проявит искренний интерес в создании общего между командой CR:MP проекта, пожертвует свое время, а также вложит собственный труд благодаря заработанным навыкам. Если вас заинтересовала данная тема обсуждения, пожалуйста, свяжитесь со мной по любым возможным и удобным для вас контактам связи ниже. Спасибо всем, кто зашел в мою беседу!

      🔗 Спец. Связь:
      — DISCORD: https://discord.com/users/1452715348196589691 (перейти по ссылке и добавить в друзья) ИЛИ _shin833_ (ввести никнейм и отправить запрос дружбы)
      — VK: https://vk.com/shin833
      — TG: https://t.me/s_hin833
    • KodBi
      От KodBi
      шапка
      по одиночке работают
      нужны оба