drifter-dron Дата: Воскресенье, 13.11.2011, 18:19:17 | Сообщение # 4
Группа: Пользователи
Сообщений: 477
вверх мода: Code
new ReceiverID[MAX_PLAYERS]; new PMfrom[MAX_PLAYERS]; new reply[MAX_PLAYERS]; new Float:X; new Float:Y; new Float:Z;
в public OnPlayerConnect Code
reply[playerid] = 0;
в public OnDialogResponse Code
ReceiverID[playerid] = strval(inputtext); PMfrom[ReceiverID[playerid]] = playerid; new s1[264],s2[264],name[24]; if(dialogid == 777) { if(response == 1) { GetPlayerPos(ReceiverID[playerid], Float:X,Float:Y,Float:Z); SetPlayerPos(playerid,X+1,Y+1,Z+1); return 1; } if(response == 2) { ShowPlayerDialog(playerid,756,DIALOG_STYLE_INPUT,"Система личных сообщений","Введите текст сообщения:","Отправить","Отмена"); } } if(dialogid == 755) { ReceiverID[playerid] = strval(inputtext); ShowPlayerDialog(playerid,756,DIALOG_STYLE_INPUT,"Система личных сообщений","Введите текст сообщения:","Отправить","Отмена"); return 1; } if(dialogid == 756) { if(response == 1) { if(reply[playerid] == 0) { GetPlayerName(playerid, name, sizeof(name)); format(s1, sizeof(s1), "У вас новое сообщение %s\n\n%s",name,inputtext); format(s2, sizeof(s2), "Новое сообщение %s (%d)",name,playerid); ShowPlayerDialog(ReceiverID[playerid],757,DIALOG_STYLE_MSGBOX,s2,s1,"Ответ","Закрыть"); PlayerPlaySound(ReceiverID[playerid], 1052, 0.0, 0.0, 0.0); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); } else if(reply[playerid] == 1) { PMfrom[ReceiverID[playerid]] = playerid; GetPlayerName(playerid, name, sizeof(name)); format(s1, sizeof(s1), "Вы получили новое сообщение от %s\n\n%s",name,inputtext); format(s2, sizeof(s2), "Новое сообщение %s (%d)",name,playerid); ShowPlayerDialog(PMfrom[playerid],757,DIALOG_STYLE_MSGBOX,s2,s1,"Ответ","Закрыть"); reply[playerid] = 0; PlayerPlaySound(PMfrom[playerid], 1052, 0.0, 0.0, 0.0); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); } } return 1; } if(dialogid == 757) { if(response == 1) { ShowPlayerDialog(playerid,756,DIALOG_STYLE_INPUT,"Система личных сообщений","Введите текст сообщения:","Готово","Отмена"); reply[playerid] = 1; return 1; } }
в public OnPlayerClickPlayer Code
ShowPlayerDialog(playerid,777,DIALOG_STYLE_LIST,"Меню Tab","Телепортироваться к нему\nОтправить сообщение","Ок","Отмена");
и где-нибуть повыше, можно после всех new define и forward но не в паблике: Code
stock GetPlayerID(const Name[]) { for(new i; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { new pName[MAX_PLAYER_NAME]; GetPlayerName(i, pName, sizeof(pName)); if(strcmp(Name, pName, true)==0) { return i; } } } return -1; }
На этом всё) тебе остаётся выпрямить строчки))
Пишу любые несложные скрипты)) Обращайтесь.. Цена: от 10 рублей))
Сообщение вверх мода: Code
new ReceiverID[MAX_PLAYERS]; new PMfrom[MAX_PLAYERS]; new reply[MAX_PLAYERS]; new Float:X; new Float:Y; new Float:Z;
в public OnPlayerConnect Code
reply[playerid] = 0;
в public OnDialogResponse Code
ReceiverID[playerid] = strval(inputtext); PMfrom[ReceiverID[playerid]] = playerid; new s1[264],s2[264],name[24]; if(dialogid == 777) { if(response == 1) { GetPlayerPos(ReceiverID[playerid], Float:X,Float:Y,Float:Z); SetPlayerPos(playerid,X+1,Y+1,Z+1); return 1; } if(response == 2) { ShowPlayerDialog(playerid,756,DIALOG_STYLE_INPUT,"Система личных сообщений","Введите текст сообщения:","Отправить","Отмена"); } } if(dialogid == 755) { ReceiverID[playerid] = strval(inputtext); ShowPlayerDialog(playerid,756,DIALOG_STYLE_INPUT,"Система личных сообщений","Введите текст сообщения:","Отправить","Отмена"); return 1; } if(dialogid == 756) { if(response == 1) { if(reply[playerid] == 0) { GetPlayerName(playerid, name, sizeof(name)); format(s1, sizeof(s1), "У вас новое сообщение %s\n\n%s",name,inputtext); format(s2, sizeof(s2), "Новое сообщение %s (%d)",name,playerid); ShowPlayerDialog(ReceiverID[playerid],757,DIALOG_STYLE_MSGBOX,s2,s1,"Ответ","Закрыть"); PlayerPlaySound(ReceiverID[playerid], 1052, 0.0, 0.0, 0.0); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); } else if(reply[playerid] == 1) { PMfrom[ReceiverID[playerid]] = playerid; GetPlayerName(playerid, name, sizeof(name)); format(s1, sizeof(s1), "Вы получили новое сообщение от %s\n\n%s",name,inputtext); format(s2, sizeof(s2), "Новое сообщение %s (%d)",name,playerid); ShowPlayerDialog(PMfrom[playerid],757,DIALOG_STYLE_MSGBOX,s2,s1,"Ответ","Закрыть"); reply[playerid] = 0; PlayerPlaySound(PMfrom[playerid], 1052, 0.0, 0.0, 0.0); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); } } return 1; } if(dialogid == 757) { if(response == 1) { ShowPlayerDialog(playerid,756,DIALOG_STYLE_INPUT,"Система личных сообщений","Введите текст сообщения:","Готово","Отмена"); reply[playerid] = 1; return 1; } }
в public OnPlayerClickPlayer Code
ShowPlayerDialog(playerid,777,DIALOG_STYLE_LIST,"Меню Tab","Телепортироваться к нему\nОтправить сообщение","Ок","Отмена");
и где-нибуть повыше, можно после всех new define и forward но не в паблике: Code
stock GetPlayerID(const Name[]) { for(new i; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { new pName[MAX_PLAYER_NAME]; GetPlayerName(i, pName, sizeof(pName)); if(strcmp(Name, pName, true)==0) { return i; } } } return -1; }
На этом всё) тебе остаётся выпрямить строчки)) Автор - drifter-dron Дата добавления - 13.11.2011 в 18:19:17