- Регистрация
- 25 Фев 2018
- Сообщения
- 26
- Лучшие ответы
- 0
- Репутация
- 4
Доброго времени суток.
Решил создать мануал по статистике,хоть он и бесполезный,но может кому и пригодится.
Заключается он в следующем,что при вводе Skype/Bконтакте/Instagram,всё сохранится в статистку.
Делать буду на примере своего мода,по этому данные и загрузку меняйте на свои.
Решил создать мануал по статистике,хоть он и бесполезный,но может кому и пригодится.
Заключается он в следующем,что при вводе Skype/Bконтакте/Instagram,всё сохранится в статистку.
Делать буду на примере своего мода,по этому данные и загрузку меняйте на свои.
Для начала объявим переменные :
PHP:
enum player_data
{
pSkype[20],
pBkontakte[20],
pInstagram[20]
}
new pData[MAX_PLAYERS][player_data];
Теперь в public LoadPlayerAccount добавим загрузку этих данных :
PHP:
cache_get_field_content(0, "Skype", pData[playerid][pSkype], MySQL, 64);
cache_get_field_content(0, "Bkontakte", pData[playerid][pBkontakte], MySQL, 64);
cache_get_field_content(0, "Instagram", pData[playerid][pInstagram], MySQL, 64);
Теперь в public OnPlayerRegister :
PHP:
pData[playerid][pSkype] = 0;
pData[playerid][pBkontakte] = 0;
pData[playerid][pInstagram] = 0;
Далее в stock SavePlayer :
PHP:
format(str_q, sizeof str_q, "`Skype` = '%s',", pData[playerid][pSkype]), strcat(save_query, str_q);
format(str_q, sizeof str_q, "`Bkontakte` = '%s',", pData[playerid][pBkontakte]), strcat(save_query, str_q);
format(str_q, sizeof str_q, "`Instagram` = '%s',", pData[playerid][pInstagram]), strcat(save_query, str_q);
Теперь Сделаем Команду и Диалоги
Идём в public OnPlayerCommandText и добавляем следующее:
PHP:
if(strcmp(cmd, "/test", true) == 0){
new String[256];
strins(String,"Указать Skype\n",strlen(String));
strins(String,"Указать Instagram\n",strlen(String));
strins(String,"Указать [B]контакте\n",strlen(String));
ShowPlayerDialog(playerid,1605,DIALOG_STYLE_LIST,"Указать Данные",String,"Ок", "");
return 1;
}
Далее в public OnDialogResponse создадим диалоги:
PHP:
if(dialogid == 1605){
if(response){
if(listitem == 0){
new String[256];
strins(String,"Здесь вы можете указать ваш Skype\n",strlen(String));
ShowPlayerDialog(playerid,3777,DIALOG_STYLE_INPUT,"Skype",String,"Сохранить", "");}
if(listitem == 1){
new String[256];
strins(String,"Здесь вы можете указать ваш Вконтакте\n",strlen(String));
ShowPlayerDialog(playerid,3778,DIALOG_STYLE_INPUT,"Вконтакте",String,"Сохранить", "");}
if(listitem == 2){
new String[256];
strins(String,"Здесь вы можете указать ваш Instagram\n",strlen(String));
ShowPlayerDialog(playerid,3779,DIALOG_STYLE_INPUT,"Instagram",String,"Сохранить", "");}}}
Далее в этом же паблике,добавляем диалоги для сохранения
PHP:
if(dialogid == 3778){
if(!response) return SendClientMessage(playerid, -1, "Вы отказались");
if(!strlen(inputtext)) return SendClientMessage(playerid,COLOR_RED, " Вы не написали сообщение");
if(strlen(inputtext) > 50) return SendClientMessage(playerid,COLOR_RED, "Слишком длинное сообщение");
format(pData[playerid][pBkontakte], 32, inputtext);
SendClientMessage(playerid, -1, "[~ Аккаут ~] Ваш VK успешно сохранен");
return 1;}
if(dialogid == 3779){
if(!response) return SendClientMessage(playerid, -1, "Вы отказались");
if(!strlen(inputtext)) return SendClientMessage(playerid,COLOR_RED, " Вы не написали сообщение");
if(strlen(inputtext) > 50) return SendClientMessage(playerid,COLOR_RED, "Слишком длинное сообщение");
format(pData[playerid][pInstagram], 32, inputtext);
SendClientMessage(playerid, -1, "[~ Аккаут ~] Ваш Instagram успешно сохранен");
return 1;}
if(dialogid == 3777){
if(!response) return SendClientMessage(playerid, -1, "Вы отказались");
if(!strlen(inputtext)) return SendClientMessage(playerid,COLOR_RED, " Вы не написали сообщение");
if(strlen(inputtext) > 50) return SendClientMessage(playerid,COLOR_RED, "Слишком длинное сообщение");
format(pData[playerid][pSkype], 32, inputtext);
SendClientMessage(playerid, -1, "[~ Аккаут ~] Ваш Skype успешно сохранен");
return 1;}
Ну и последнее,идём в ShowStats и добавляем :
Это добавляем сразу после stock ShowStats(playerid,targetid){
PHP:
new bInsta[20];
if(pData[playerid][pInstagram] == 0){ bInsta = "Не указан"; }
else if(pData[playerid][pInstagram] == pData[playerid][pInstagram]){
format(bInsta,sizeof(bInsta), "%s", pData[playerid][pInstagram]);}
new bVK[40];
if(pData[playerid][pBkontakte] == 0){ bVK = "Не указан"; }
else if(pData[playerid][pBkontakte] == pData[playerid][pBkontakte]){
format(bVK,sizeof(bVK), "%s", pData[playerid][pBkontakte]);}
new bSkype[40];
if(pData[playerid][pSkype] == 0){ bSkype = "Не указан"; }
else if(pData[playerid][pSkype] == pData[playerid][pSkype]){
format(bSkype,sizeof(bSkype), "%s", pData[playerid][pSkype]);}
Ну и ниже этого добавим уже информацию :
PHP:
format(str,sizeof(str),"{ffffff}Skype: {FFFF00}%s\n",bSkype);
strcat(sctring,str);
format(str,sizeof(str),"{ffffff}Instagram: {FFFF00}%s\n",bInsta);
strcat(sctring,str);
format(str,sizeof(str),"{ffffff}[B]контакте: {FFFF00}%s\n",bVK);
strcat(sctring,str);
В базу данных добавим следующее:
PHP:
CREATE TABLE IF NOT EXISTS `accounts` (
`Skype` varchar(64) NOT NULL,
`Bkontakte` varchar(42) NOT NULL,
`Instagram` varchar(50) NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=cp1251 AUTO_INCREMENT=42 ;
На этом я хотел бы закончить.
Не нужно строго судить,как писал выше : Может кому и пригодится
Не нужно строго судить,как писал выше : Может кому и пригодится
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Будут вопросы,пишите в Skype ro100maloi55(НЕ РЕКЛАМА)