Ilya_Mayor 0 Опубликовано 5 января, 2018 Ищу команду /sms по номеру телефона Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ArtDes17 3 Опубликовано 5 января, 2018 (изменено) else if(strcmp(cmd, "/sms", true) == 0) { GetPlayerName(playerid, sendername, sizeof(sendername)); if(PhoneOnline[playerid] > 0) return SendClientMessage(playerid, 0x99999FF, "Ваш телефон отключен"); if(PlayerInfo[playerid][pMobile] <= 0) { format(string, sizeof(string), "На Вашем счету недостаточно средств"); SendClientMessage(playerid, COLOR_GRAD, string); return 1; } GetPlayerName(playerid, sendername, sizeof(sendername)); tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, 0xCECECEFF, "Используйте: /sms [номер телефона] [сообщение]"); new phonenumb = strval(tmp); for(new i = 0; i < MAX_PLAYERS; 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) return SendClientMessage(playerid, 0x99999FF, "Не удается отправить сообщение. Телефон абонента недоступен"); GetPlayerName(giveplayerid, sendername, sizeof(sendername)); new length = strlen(cmdtext); new result[512]; while ((idx < length) && (cmdtext[idx] <= ' ')) { idx++; } new offset = idx; while ((idx < length) && ((idx - offset) < (sizeof(result) - 1))) { result[idx - offset] = cmdtext[idx]; idx++; } result[idx - offset] = EOS; if(!strlen(result)) return SendClientMessage(playerid, 0xCECECEFF, "Используйте: /sms [номер телефона] [сообщение]"); new moy = PlayerInfo[playerid][pPnumber]; new tvoy = PlayerInfo[giveplayerid][pPnumber]; PlayerInfo[playerid][pMobile] -= 5; format(string, sizeof(string), "SMS: %s | Получатель: %s [т.%d]", result, giveplayerid, tvoy); SendClientMessage(playerid, 0xFFFF00FF, string); format(string, sizeof(string), "SMS: %s | Отправитель: %s [т.%d]", playerid, giveplayerid, moy); SendClientMessage(giveplayerid, 0xFFFF00FF, string); format(string, sizeof(string), "~w~sms~n~~y~-5$"); GameTextForPlayer(i, string, 5000, 6); return 1; } } } } else { SendClientMessage(playerid, 0x999999FF, "Телефон находится вне зоны доступа"); return 1; } } } Изменено 5 января, 2018 пользователем EgasVegas Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Alonso 82 Опубликовано 5 января, 2018 (изменено) Пишу с браузера, за ошибки сори. cmd:sms(playerid, params[]) { new text[256], string[512]; if(Есть ли у игрока телефон) return SendClientMessage(playerid, -1, "{008000}У Вас нет телефона, купи его на CR-MP.RU/FORUM!"); if(sscanf(params, "ds", params[0], text)) return SendClientMessage(playerid, -1, "{008000}/sms Номер текст"); for(new i = 0; i < MAX_PLAYERS; i++) { if(Переменная телефона игрока (не playerid, а i) != params[0]) continue; format(string, 256, "{008000}[SMS] Абонент: %d | Текст: %s", номер того кто отправил, text); SendClientMessage(i, -1, string); return 1; } SendClientMessage(playerid, -1, "Абонент вне зоны действия сети"); return 1; } должно работать Изменено 5 января, 2018 пользователем Alonso 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты