• 0
Skidson

Баг с предложением

Вопросы

Здравствуйте. У меня такой баг, когда игрока приглашают во фракцию , ему могут отправить хоть 10 таких предложений после чего , у него нажимая на N будут вылезать сообщения , что он отказался, можно ли сделать как-то лимит предложений, т.е. одно предложение и пока пользователь не откажется или не согласится другие не могут предлагать? Весь код могу предоставить если надо, просто новичок, просьба подробно объяснить.

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


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

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

  • 0

скиньте код

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


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

Код чего именно? @keyl1337

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

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


Ссылка на сообщение
  • 0
7 часов назад, Skidson сказал:

Код чего именно? @keyl1337

Код команды, что за странные вопросы? Ты вроде бы создал тему "Баг с предложением", ну вот скинь код

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


Ссылка на сообщение
  • 0
25 минут назад, Santa_Claus сказал:

Код команды, что за странные вопросы? Ты вроде бы создал тему "Баг с предложением", ну вот скинь код

CMD:invite(playerid, params[])
{
	if(IsAbleToInvite(playerid))
	{
		new targetid;
		if(sscanf(params, "u", targetid)) return SendClientMessage(playerid, COLOR_LIME, "Информация: {ffffff}/invite [id игрока]");
		else if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED, "Такого игрока нет");
		else if(PlayerLogged[targetid] == false) return SendClientMessage(playerid, COLOR_RED, "Игрок не ввел пароль!");
		else if(PI[targetid][pLeader] > 0) return SendClientMessage(playerid, COLOR_RED, "Игрок лидер другой организации!");
		else if(PI[targetid][pMember] > 0) return SendClientMessage(playerid, COLOR_RED, "Игрок находится в другой организации!");
		else if(PI[targetid][pWarn] > 0) return SendClientMessage(playerid, COLOR_RED, "У игрока предупреждение!");
		else if(IsPlayerInAnyVehicle(targetid)) return SendClientMessage(playerid, COLOR_RED, "Игрок не должен находится в транспорте!");
		else if(!IsPlayerInRangeOfPlayer(8.0, playerid, targetid)) return SendClientMessage(playerid, COLOR_RED, "Игрок слишком далеко!");
		else if(PI[targetid][pLevel] < 2) return SendClientMessage(playerid, COLOR_RED, "У игрока нету 2 уровня!");
		else if(IsACop(playerid) && !PI[targetid][pVoennik]) return SCM(playerid, COLOR_RED, "У игрока нет военного билета!");
  		SendMes(playerid, COLOR_BLUE, "Вы предложили %s вступить в \"%s\"", GetName(targetid), Fraction_Name[PI[playerid][pMember]]);
		SendMes(targetid, COLOR_BLUE, "%s %s предлагает Вам вступить в \"%s\"", Fraction_Rang[PI[playerid][pMember]][PI[playerid][pRank]], GetName(playerid), Fraction_Name[PI[playerid][pMember]]);
		SCM(targetid, COLOR_WHITE, "{FFFFFF}Нажмите {03c03c}Y {FFFFFF}чтобы согласиться или {ff7518}N {FFFFFF}для отказа");
		SetPVarInt(targetid, "KeyInvite", 1);
		SetPVarInt(targetid, "offerfractionid", PI[playerid][pMember]);
		SetPVarInt(targetid, "offerplayer", playerid);
		SetPVarInt(playerid, "actplayerid", targetid);
	}
	return 1;
}

 

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


Ссылка на сообщение
  • 0
CMD:invite(playerid, params[])
{
	if(IsAbleToInvite(playerid))
	{
		new targetid;
		if(sscanf(params, "u", targetid)) return SendClientMessage(playerid, COLOR_LIME, "Информация: {ffffff}/invite [id игрока]");
		else if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED, "Такого игрока нет");
		else if(PlayerLogged[targetid] == false) return SendClientMessage(playerid, COLOR_RED, "Игрок не ввел пароль!");
		else if(PI[targetid][pLeader] > 0) return SendClientMessage(playerid, COLOR_RED, "Игрок лидер другой организации!");
		else if(PI[targetid][pMember] > 0) return SendClientMessage(playerid, COLOR_RED, "Игрок находится в другой организации!");
		else if(PI[targetid][pWarn] > 0) return SendClientMessage(playerid, COLOR_RED, "У игрока предупреждение!");
		else if(IsPlayerInAnyVehicle(targetid)) return SendClientMessage(playerid, COLOR_RED, "Игрок не должен находится в транспорте!");
		else if(!IsPlayerInRangeOfPlayer(8.0, playerid, targetid)) return SendClientMessage(playerid, COLOR_RED, "Игрок слишком далеко!");
		else if(PI[targetid][pLevel] < 2) return SendClientMessage(playerid, COLOR_RED, "У игрока нету 2 уровня!");
		else if(IsACop(playerid) && !PI[targetid][pVoennik]) return SCM(playerid, COLOR_RED, "У игрока нет военного билета!");
      	if (GetPVarInt(playerid, "actplayerid") == true)
        {
            SendClientMessage(playerid, -1, "This player has a invite");
        }
  		SendMes(playerid, COLOR_BLUE, "Вы предложили %s вступить в \"%s\"", GetName(targetid), Fraction_Name[PI[playerid][pMember]]);
		SendMes(targetid, COLOR_BLUE, "%s %s предлагает Вам вступить в \"%s\"", Fraction_Rang[PI[playerid][pMember]][PI[playerid][pRank]], GetName(playerid), Fraction_Name[PI[playerid][pMember]]);
		SCM(targetid, COLOR_WHITE, "{FFFFFF}Нажмите {03c03c}Y {FFFFFF}чтобы согласиться или {ff7518}N {FFFFFF}для отказа");
		SetPVarInt(targetid, "KeyInvite", 1);
		SetPVarInt(targetid, "offerfractionid", PI[playerid][pMember]);
		SetPVarInt(targetid, "offerplayer", playerid);
		SetPVarInt(playerid, "actplayerid", targetid);
	}
	return 1;
}

чек, может сработает ;3

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

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


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

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