Narut
Новичок
как сделать команду /call в диалоге тоесть выбивает диалог чел набирает номер в диалоге нажимает ок и телефон звонит
код команды
код команды
PHP:
if(strcmp(cmd, "/call", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD2, "Подсказка: /call [phonenumber]");
if(PhoneOnline[playerid] == 1) return SendClientMessage(playerid, COLOR_GRAD2, "Ваш мобильный выключен! Прежде чем звонить - включите его! (/togphone)");
if(PlayerInfo[playerid][pJailed] > 0) return SendClientMessage(playerid, COLOR_GRAD2, "У вас отобрали телефон на время заключения.");
if(PlayerInfo[playerid][pPnumber] == 0) return SendClientMessage(playerid, COLOR_GRAD2, "У вас нет мобильного телефона телефона.");
if(PlayerCuffed[playerid] > 0) return SendClientMessage(playerid, COLOR_GRAD2, "Вы не можете позвонить, т.к. у вас заняты руки!");
if(PlayerInfo[playerid][pTA] <= 0) return SendClientMessage(playerid, COLOR_GRAD1, "Ваш номер заблокирован. Вам необходимо пополнить баланс в 24\7");
if(Mobile[playerid] != 255) return SendClientMessage(playerid, COLOR_GRAD2, "Вы уже звоните!");
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s нaбupaeт нoмep.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
new phonenumb = strval(tmp);
SetPlayerSpecialAction ( playerid , SPECIAL_ACTION_USECELLPHONE );
if(phonenumb == 911)
{
SendClientMessage(playerid, COLOR_ALLDEPT, "ДИСПЕТЧЕР: Кого вы хотите вызвать? полицию (02) или медика (03) ");
Mobile[playerid] = 911;
return true;
}
if(phonenumb == PlayerInfo[playerid][pPnumber])
{
SendClientMessage(playerid, COLOR_GRAD2, "** Абонент занят **");
SetTimerEx("HidePhone",2000,0,"i",Float:playerid);
return true;
}
for(new i; i <= maxPlayerID; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pPnumber] == phonenumb && phonenumb != 0)
{
giveplayerid = i;
Mobile[playerid] = giveplayerid; //caller connecting
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PhoneOnline[giveplayerid] > 0)
{
SendClientMessage(playerid, COLOR_GREY, "** Абонент недоступен **");
SetTimerEx("HidePhone",2000,0,"i",Float:playerid);
return true;
}
if(PlayerInfo[giveplayerid][pJailed] > 0)
{
SendClientMessage(playerid, COLOR_GREY, "** Абонент недоступен **");
SetTimerEx("HidePhone",2000,0,"i",Float:playerid);
return true;
}
if (Mobile[giveplayerid] == 255)
{
format(string, sizeof(string), " Ваш телефон зазвонил, введите (/Pickup) Вызывает: %d", PlayerInfo[playerid][pPnumber]); //modif
// format(string, sizeof(string), "Baш мoбuльнuk звoнuт. Aбoнeнт: %s", sendername);
SendClientMessage(giveplayerid, COLOR_YELLOW2, string);
GetPlayerName(giveplayerid, sendername, sizeof(sendername));
RingTone[giveplayerid] = 10;
format(string, sizeof(string), "** У %s звонит телефон.", sendername);
ProxDetector(30.0, i, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
CellTime[playerid] = 1;
return true;
}
}
}
}
}
}
SendClientMessage(playerid, COLOR_GRAD2, "** Абонент занят **");
SetTimerEx("HidePhone",2000,0,"i",Float:playerid);
}
return true;
}
