bUrbin
Ученик
как добавить проверку в принятие игрока во фракцию.
допустим если лидер полиции пытается принять игрока, а у игрока [pDip][0] == 0) return scm(playerid,cc, "У игрока нет головы");
а если лидер новостей пытается принять , а у игрока [pDip][2] == 0) return scm(playerid,cc, "У игрока нет глаз");
вот мне нужно такую проверку только на некоторые фракции (госки) а другие (банды/мафии) без этой проверки.
вот мой инвайт
допустим если лидер полиции пытается принять игрока, а у игрока [pDip][0] == 0) return scm(playerid,cc, "У игрока нет головы");
а если лидер новостей пытается принять , а у игрока [pDip][2] == 0) return scm(playerid,cc, "У игрока нет глаз");
вот мне нужно такую проверку только на некоторые фракции (госки) а другие (банды/мафии) без этой проверки.
вот мой инвайт
PHP:
CMD:invite(playerid, params[])
{
if(PlayerLogged[playerid] == 0) return true;
// if(PlayerInfo[playerid][pRank] < 9) return SendClientMessage(playerid, COLOR_WHITE, "Функция доступна с 9 ранга и выше!");
if(PlayerInfo[playerid][pLeader] > 0 || PlayerInfo[playerid][pMember] > 0 && strcmp(PlayerInfo[playerid][pSendername],FracInfo[PlayerInfo[playerid][pMember]][fAssistant],true) == 0)
{
if(PlayerInfo[playerid][pLeader] == 0) if(FracInfo[PlayerInfo[playerid][pMember]][fHelper][0] == 0) return SendClientMessage(playerid, COLOR_GREY, YouCanNot);
if(sscanf(params, "i", params[0])) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /invite [id игрока]");
if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, COLOR_GREY, TPLAYEROFFLINE);
if(PlayerLogged[params[0]] == 0) return SendClientMessage(playerid, COLOR_GREY, TPLAYERNLOGGED);
if(PlayerInfo[params[0]][pLeader] > 0) return SendClientMessage(playerid, COLOR_GREY, "Игрок лидер другой организации!");
if(PlayerInfo[params[0]][pMember] > 0) return SendClientMessage(playerid, COLOR_GREY, "Игрок находиться в другой организации!");
if(IsPlayerInAnyVehicle(params[0])) return SendClientMessage(playerid, COLOR_GREY, "Игрок не должен находиться в транспорте!");
if(!IsPlayerInRangeOfPlayer(8.0, playerid, params[0])) return SendClientMessage(playerid, COLOR_GREY, "Игрок слишком далеко!");
SendMes(playerid,COLOR_BLUE,"Вы предложили %s присоединиться в вашу организацию",sendername(params[0]));
format(totalstring,128,"%s %s предлагает вам присоединиться к \"%s\"\n\nВы согласны?",FracRank[PlayerInfo[playerid][pMember]][PlayerInfo[playerid][pRank]], PlayerInfo[playerid][pSendername], FracInfo[PlayerInfo[playerid][pMember]][fName]);
SendMes(params[0],COLOR_BLUE,"%s %s предлагает вам присоединиться к \"%s\"",FracRank[PlayerInfo[playerid][pMember]][PlayerInfo[playerid][pRank]], PlayerInfo[playerid][pSendername], FracInfo[PlayerInfo[playerid][pMember]][fName]);
SetPVarInt(params[0], "PlayerInvite", playerid);
ResetWeapon(params[0]);
SPD(params[0], D_INVITEFRAC, 0, "Фракция",totalstring,"Да","Нет");
}
else SCM(playerid, COLOR_GREY, YouCanNot);
return true;
}
PHP:
case D_INVITEFRAC:
{
new playerd = GetPVarInt(playerid, "PlayerInvite");
if(response)
{
PlayerInfo[playerid][pMember] = PlayerInfo[playerd][pMember];
SendMes(playerid,COLOR_BLUE,"Вы присоединились к организации \"%s\"",FracInfo[PlayerInfo[playerd][pMember]][fName]);
SendMes(playerd,COLOR_BLUE,"%s принял предложение присоединиться к \"%s\"",PlayerInfo[playerid][pSendername], FracInfo[PlayerInfo[playerd][pMember]][fName]);
PlayerInfo[playerid][pRank] = 1;
PlayerInfo[playerid][pJob] = 0;
SelectCharID[playerid] = PlayerInfo[playerid][pMember];
PlayerInfo[playerid][pChar] = 0;
SelectCharPlace[playerid] = 0;
ClothesRound[playerid] = 0;
return true;
}
else SendMes(playerd,COLOR_BLUE,"%s отклонил предложение присоединиться к \"%s\"",PlayerInfo[playerid][pSendername], FracInfo[PlayerInfo[playerd][pLeader]][fName]);
DeletePVar(playerid, "PlayerInvite");
}
