spainFAN
Дебютант
Вот эти команды без диалога помогите переделать их на диалоге
/invite
/uninvite
/invite
Код:
if(strcmp(cmd, "/invite", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD2, "Используйте: /invite [playerid]");
new para1;
new ftext[25];
para1 = ReturnUser(tmp);
if (PlayerInfo[playerid][pLeader] >= 1)
{
if(IsPlayerConnected(para1))
{
if(para1 != INVALID_PLAYER_ID)
{
if (gTeam[para1]==TEAM_GREEN && PlayerInfo[para1][pMember] == 0 && PlayerInfo[para1][pFMember] == 255)
{
if(PlayerInfo[playerid][pLeader] == 1)
{
PlayerInfo[para1][pTeam] = 1; gTeam[para1] = 1; ftext = "Полиция"; ChosenSkin[para1] = 280; SetPlayerSkin(para1, 280);
}
else if(PlayerInfo[playerid][pLeader] == 2)
{
PlayerInfo[para1][pTeam] = 2; gTeam[para1] = 2; ftext = "ФБР"; ChosenSkin[para1] = 286; SetPlayerSkin(para1, 286);
}
else if(PlayerInfo[playerid][pLeader] == 3) { PlayerInfo[para1][pTeam] = 3; gTeam[para1] = 3; ftext = "Армия"; ChosenSkin[para1] = 287; SetPlayerSkin(para1, 287); }
else if(PlayerInfo[playerid][pLeader] == 4) { PlayerInfo[para1][pTeam] = 4; gTeam[para1] = 4; ftext = "Здравохранение"; ChosenSkin[para1] = 71; SetPlayerSkin(para1, 71); }
else if(PlayerInfo[playerid][pLeader] == 5) { PlayerInfo[para1][pTeam] = 5; gTeam[para1] = 5; ftext = "Итальянской мафии"; ChosenSkin[para1] = 290; SetPlayerSkin(para1, 290); }
else if(PlayerInfo[playerid][pLeader] == 6) { PlayerInfo[para1][pTeam] = 6; gTeam[para1] = 6; ftext = "Yakuza"; ChosenSkin[para1] = 121; SetPlayerSkin(para1, 121); }
else if(PlayerInfo[playerid][pLeader] == 7) { PlayerInfo[para1][pTeam] = 7; gTeam[para1] = 7; ftext = "Мэрия"; ChosenSkin[para1] = 59; SetPlayerSkin(para1, 59); }
else if(PlayerInfo[playerid][pLeader] == 8) { PlayerInfo[para1][pTeam] = 8; gTeam[para1] = 8; ftext = "Хитманы"; ChosenSkin[para1] = 127; SetPlayerSkin(para1, 127); }
else if(PlayerInfo[playerid][pLeader] == 9) { PlayerInfo[para1][pTeam] = 9; gTeam[para1] = 9; ftext = "Репортеры"; ChosenSkin[para1] = 188; SetPlayerSkin(para1, 188); }
else if(PlayerInfo[playerid][pLeader] == 10) { PlayerInfo[para1][pTeam] = 10; gTeam[para1] = 10; ftext = "Таксисты"; ChosenSkin[para1] = 255; SetPlayerSkin(para1, 255); }
else if(PlayerInfo[playerid][pLeader] == 11) { PlayerInfo[para1][pTeam] = 11; gTeam[para1] = 11; ftext = "Лицензеры"; ChosenSkin[para1] = 240; SetPlayerSkin(para1, 240); }
else if(PlayerInfo[playerid][pLeader] == 12) { PlayerInfo[para1][pTeam] = 12; gTeam[para1] = 12; ftext = "Flaming Cobra Gang"; ChosenSkin[para1] = 181; SetPlayerSkin(para1, 181); }/////
else if(PlayerInfo[playerid][pLeader] == 13) { PlayerInfo[para1][pTeam] = 13; gTeam[para1] = 13; ftext = "Русская мафия"; ChosenSkin[para1] = 112; SetPlayerSkin(para1, 112); }
else if(PlayerInfo[playerid][pLeader] == 14) { PlayerInfo[para1][pTeam] = 14; gTeam[para1] = 14; ftext = "Grove Street Gang"; ChosenSkin[para1] = 105; SetPlayerSkin(para1, 105); }
else if(PlayerInfo[playerid][pLeader] == 15) { PlayerInfo[para1][pTeam] = 15; gTeam[para1] = 15; ftext = "El Coronas Gang"; ChosenSkin[para1] = 114; SetPlayerSkin(para1, 114); }
else if(PlayerInfo[playerid][pLeader] == 16) { PlayerInfo[para1][pTeam] = 16; gTeam[para1] = 16; ftext = "The Ballas Gang"; ChosenSkin[para1] = 103; SetPlayerSkin(para1, 103); }
else if(PlayerInfo[playerid][pLeader] == 17) { PlayerInfo[para1][pTeam] = 17; gTeam[para1] = 17; ftext = "The Rife Gang"; ChosenSkin[para1] = 175; SetPlayerSkin(para1, 175); }
else if(PlayerInfo[playerid][pLeader] == 18) { PlayerInfo[para1][pTeam] = 18; gTeam[para1] = 18; ftext = "Los Santos Vagos Gang"; ChosenSkin[para1] = 108; SetPlayerSkin(para1, 108); }
else if(PlayerInfo[playerid][pLeader] == 19) { PlayerInfo[para1][pTeam] = 19; gTeam[para1] = 19; ftext = "Street Dogs"; ChosenSkin[para1] = 28; SetPlayerSkin(para1, 28); }
else if(PlayerInfo[playerid][pLeader] == 20) { PlayerInfo[para1][pTeam] = 20; gTeam[para1] = 20; ftext = "Колхоз"; ChosenSkin[para1] = 161; SetPlayerSkin(para1, 161); }
else { return 1; }
GetPlayerName(para1, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
PlayerInfo[para1][pMember] = PlayerInfo[playerid][pLeader];
PlayerInfo[para1][pRank] = 1;
printf("[ВНИМАНИЕ]: %s has invited %s to join %s.", sendername, giveplayer, ftext);
format(string, sizeof(string), "Вы были приглашены в (%s), лидером %s", ftext, sendername);
SendClientMessage(para1, COLOR_WHITE, string);
format(string, sizeof(string), "Вы приняли %s в %s.", giveplayer,ftext);
SendClientMessage(playerid, COLOR_WHITE, string);
SelectChar[para1] = 255;
SelectCharID[para1] = PlayerInfo[para1][pMember] ;
SelectCharPlace[para1] = 1;
PlayerInfo[para1][pModel] = ChosenSkin[para1];
PlayerInfo[para1][pChar] = ChosenSkin[para1];
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Этот игрок уже состоит в другой организации.");
return 1;
}
}
}//not connected
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "{ffffff}Вам не доступна эта функция");
}
}
return 1;
}
Код:
if(strcmp(cmd, "/uninvite", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD2, "{ffffff}Введите: /uninvite [playerid]");
new para1;
para1 = ReturnUser(tmp);
if(PlayerInfo[para1][pMember] == PlayerInfo[playerid][pLeader])
{
if(PlayerInfo[playerid][pLeader] >= 1)
{
if(IsPlayerConnected(para1))
{
if(para1 != INVALID_PLAYER_ID)
{
if(PlayerInfo[para1][pMember] > 0)
{
GetPlayerName(para1, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
printf("GameWorld: %s имеет незваный %s.", sendername, giveplayer);
format(string, sizeof(string), "* Вы изгнаны лидером %s из организации.", sendername);
SendClientMessage(para1, COLOR_LIGHTBLUE, string);
SendClientMessage(para1, COLOR_LIGHTBLUE, "* Теперь вы снова гражданский.");
gTeam[para1] = 3;
PlayerInfo[para1][pTeam] = 3;
PlayerInfo[para1][pMember] = 0;
PlayerInfo[para1][pRank] = 0;
PlayerInfo[para1][pChar] = 1;
MedicBill[para1] = 0;
PlayerInfo[para1][pJob] = 0;
PlayerInfo[para1][pContractTime] = 0;
new rand = random(sizeof(CIV));
SetSpawnInfo(para1, gTeam[para1], CIV[rand],0.0,0.0,0.0,0,0,0,0,0,0,0);
PlayerInfo[para1][pModel] = CIV[rand];
//SpawnPlayer(para1);
format(string, sizeof(string), "* Вы изгнали %s из своей банды/организации.", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "{ffffff}Вам не доступна эта функция");
}
}
else
{
SendClientMessage(playerid,COLOR_GREY," Этот игрок не в вашей фракции");
}
/////админу
if(PlayerInfo[playerid][pAdmin] >= 4) return SendClientMessage(playerid,COLOR_RED," {ffffff}Вам не доступна эта функция");
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "{ffffff}Введите: /uninvite [playerid]");
return 1;
}
new playa;
playa = ReturnUser(tmp);
new PName[MAX_PLAYER_NAME];
GetPlayerName(playerid,PName,sizeof(PName));
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "* Вы изгнали %s из банды/организации.", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* Администратор %s изгнал вас из банды/огранизации.", PName);
SendClientMessage(playa, COLOR_LIGHTBLUE, string);
gTeam[playa] = 3;
PlayerInfo[playa][pTeam] = 3;
PlayerInfo[playa][pMember] = 0;
PlayerInfo[playa][pRank] = 0;
PlayerInfo[playa][pChar] = 1;
new rand = random(sizeof(CIV));
SetSpawnInfo(playa, gTeam[playa], CIV[rand],0.0,0.0,0.0,0,0,0,0,0,0,0);
PlayerInfo[playa][pModel] = CIV[rand];
MedicBill[playa] = 0;
}
return 1;
}
