AltoAngelo
Новичок
Сама команда /invite
Диалог с ответом:
Проблема в неизменении параметра pMember. pRank нормально меняется, а pMember - как был равен 0, так и остался ему равен.
В чём здесь ошибка и почему у принимаемого игрока не изменяется pMember?
P.S. Это всё, из чего состоит команда(не считая gPlayerLogged) . Может ещё что-то должно быть?
PHP:
CMD:invite(playerid,params[])
{
new ftext[32], string[180];
if(sscanf(params, "u",params[0])) return SendClientMessage(playerid, COLOR_WHITE, "Ââåäèòå: /invite [ID èãðîêà]");
if(gPlayerLogged[params[0]] == 0) return SendClientMessage(playerid, COLOR_RED1, "Íåâåðíûé ID èãðîêà!");
if(Player[params[0]][pMember] > 0) return SCM(playerid,COLOR_RED1,"Èãðîê óæå ñîñòîèò âî ôðàêöèè!");
if(Player[playerid][pRank] <= 8) return SCM(params[1],COLOR_RED1,"Âû íå ìîæåòå íèêîãî ïðèíèìàòü!");
SetPVarInt(playerid, "Inviter", Player[playerid][pMember]);
if(Player[playerid][pRank] >= 9)
{
if(Player[playerid][pMember] == 1){ ftext = "Grove Street"; }
else if(Player[playerid][pMember] == 2){ ftext = "Ballas Gang"; }
format(string,sizeof(string),"Âû ïðåäëîæèëè %s[%d] âñòóïèòü âî ôðàêöèþ.",Player[playerid][pSendername]);
SCM(playerid,COLOR_WHITE,string);
format(string,sizeof(string),"Èãðîê %s[%d] ïðèãëàñèë Âàñ âñòóïèòü âî ôðàêöèþ ""'%s'""",Player[playerid][pSendername],ftext);
SPD(params[0],10,DSM,"Ïðèãëàøåíèå",string,"Ïðèíÿòü","Îòêàç");
}
return 1;
}
PHP:
case 10:
{
if(response)
{
Player[playerid][pMember] = GetPVarInt(playerid, "Inviter");
Player[playerid][pRank] = 1;
SCM(playerid,COLOR_GREEN,"Âû ïðèíÿëè ïðèãëàøåíèå.");
new plname[MAX_PLAYER_NAME], str[64];
GetPlayerName(playerid, plname, sizeof(plname));
format(str, sizeof(str), "%s ïðèíÿë ïðèãëàøåíèå.", plname);
SCM(GetPVarInt(playerid,"Invite"), COLOR_GREEN, str);
DeletePVar(playerid, "Invite");
}
else
{
//
}
}
В чём здесь ошибка и почему у принимаемого игрока не изменяется pMember?
P.S. Это всё, из чего состоит команда(не считая gPlayerLogged) . Может ещё что-то должно быть?
