Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Вопрос про format.

Статус
В этой теме нельзя размещать новые ответы.

helloWorld

Дебютант
Доброго времени суток!
Возникла такая проблема. Пишу команду /invite на zcmd. Использую format для добавления информации о названии фракции и нике игрока, который приглашает.
Все компилируется без ошибок, но в игре при вводе команды выдает, что якобы команды не существует (это я прописал в public OnPlayerCommandPerformed), хотя до ввода ID игрока подсказка о пропущенном ID отображается.

PHP:
public OnPlayerCommandPerformed(playerid, cmdtext[], success) {
	if(!success) return SendClientMessage(playerid, COLOR_ERROR, "Ошибка: Такой команды не существует. Используйте /help.");
	return 1;
}
Сам код команды:

PHP:
CMD:invite(playerid, params[]){
	if(!IsAbleToInvite(playerid)) return SendClientMessage(playerid, COLOR_ERROR, "Ошибка: Вам недоступна данная возможность");
	new targetid;
	if(sscanf(params, "d", targetid)) return SendClientMessage(playerid, COLOR_ERROR, "Введите: /invite [id игрока]");
	else if(targetid == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_ERROR, "Ошибка: Данный игрок не онлайн.");
	else if(PlayerInfo[targetid][pLogged] == 0) return SendClientMessage(playerid, COLOR_ERROR, "Ошибка: Данный игрок не авторизован.");
	else if(PlayerInfo[targetid][pLevel] < 2) return SendClientMessage(playerid, COLOR_ERROR, "Ошибка: Игрок еще не достиг 2 уровня.");
	else if(PlayerInfo[targetid][pLeader] > 0) return SendClientMessage(playerid, COLOR_ERROR, "Ошибка: Лидера нельзя принимать в организацию.");
	else if(IsPlayerInAnyVehicle(targetid)) return SendClientMessage(playerid, COLOR_ERROR, "Ошибка: Игрок не должен находиться в транспорте.");
	else if(!IsPlayerStream(3.0, playerid, targetid, 1)) return SendClientMessage(playerid, COLOR_ERROR, "Ошибка: Вы слишком далеко от игрока.");
	new string[256];
	format(string, sizeof(string), "Вы предлагаете %s трудоустроиться в вашу организацию.", PlayerInfo[targetid][pName]);
	SendClientMessage(playerid, COLOR_BLUE, string);
	format(string, sizeof(string), "%s %s предлагает вам трудоустроиться в %s\n\nВы согласны?", FractionRang[PlayerInfo[playerid][pMember]][PlayerInfo[playerid][pRang]], PlayerInfo[playerid][pName], FractionName[PlayerInfo[playerid][pMember]]);
	ShowPlayerDialog(targetid, 29, 0, "{2ac1fc}Вступление в организацию", string, "Да", "Нет");
	SetPVarInt(targetid, "offerfractionid", PlayerInfo[playerid][pMember]);
	SetPVarInt(targetid, "offerplayer", playerid);
	SetPVarInt(playerid, "actplayerid", targetid);
	return 1;
}

Я уверен на ~70% в том, что ошибка возникает из-за format, потому что без него команда может работать.
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу