[MTA]MaPeR5518 Дата: Суббота, 06.08.2011, 03:08:29 | Сообщение # 2
Группа: Пользователи
Сообщений: 181
:headbang: :headbang: Code
#include <Dini> #pragma dynamic 150000 #define LOGIN 1 #define REG 2 #define LOGIN_ERROR 3 #define REG_ERROR 4 enum pInfo { Kills, Deaths, bool:LoggedIn } new Player[MAX_PLAYERS][pInfo];
OnPlayerConnect Code
new fileH[64], named[24]; GetPlayerName(playerid,named,24); format(fileH,64,"%s.ini",named); if(!dini_Exists(fileH)) ShowPlayerRegisterDialog(playerid); else ShowPlayerLoginDialog(playerid);
OnDialogResponse Code
switch(dialogid) { case REG: { switch(response) { case 0: return ShowPlayerRegisterDialog(playerid); case 1: return CreateAccount(playerid,inputtext); } } case LOGIN: { switch(response) { case 0: return Kick(playerid); case 1: return LoadAccount(playerid,inputtext); } } case LOGIN_ERROR: { switch(response) { default: return ShowPlayerLoginDialog(playerid); } } case REG_ERROR: { switch(response) { default: return ShowPlayerRegisterDialog(playerid); } } }
OnPlayerDisconnect Code
SaveAccount(playerid);
в OnPlayerDeath Code
Player[killerid][Kills]++; Player[playerid][Deaths]++; SetPlayerScore(killerid,Player[killerid][Kills]);
Code
stock CreateAccount(playerid,password[]) { if(!strlen(password) || strlen(password) < 5 || strlen(password) > 20) return ShowPlayerDialog(playerid,REG_ERROR,DIALOG_STYLE_MSGBOX,"Ошибка","Неверный формат пароля","Ок","Отмена"); new file[64], name[24]; GetPlayerName(playerid,name,24); format(file,64,"%s.ini",name); if(dini_Exists(file)) return ShowPlayerLoginDialog(playerid); dini_Create(file); dini_Set(file,"Password",password); dini_IntSet(file,"Kills",0); dini_IntSet(file,"Deaths",0); Player[playerid][LoggedIn] = true; SendClientMessage(playerid,0xAFAFAFAA,"Вы зарегистрировались и автоиатически залогинелись"); return 1; } stock LoadAccount(playerid,password[]) { new file[64], name[24]; GetPlayerName(playerid,name,24); if(!strlen(password) || strlen(password) < 5 || strlen(password) > 20) return ShowPlayerDialog(playerid,LOGIN_ERROR,DIALOG_STYLE_MSGBOX,"Ошибка","Неверный формат пароля","Ок","Отмена"); format(file,64,"%s.ini",name); if(!dini_Exists(file)) return ShowPlayerRegisterDialog(playerid); new temp[256]; temp = dini_Get(file,"Password"); if(strcmp(temp,password,false) == -1) return ShowPlayerDialog(playerid,LOGIN_ERROR,DIALOG_STYLE_MSGBOX,"Ошибка","Неверный пароль","Ок","Отмена"); Player[playerid][Kills] = dini_Int(file,"Kills"); Player[playerid][Deaths] = dini_Int(file,"Deaths"); Player[playerid][LoggedIn] = true; SendClientMessage(playerid,0xAFAFAFAA,"Вы успешно вошли"); return 1; } stock SaveAccount(playerid) { new file[64], name[24]; GetPlayerName(playerid,name,24); format(file,64,"%s.ini",name); if(!dini_Exists(file)) return 1; dini_IntSet(file,"Kills",Player[playerid][Kills]); dini_IntSet(file,"Deaths",Player[playerid][Deaths]); Player[playerid][LoggedIn] = false; return 1; } stock ShowPlayerRegisterDialog(playerid) return ShowPlayerDialog(playerid,REG,DIALOG_STYLE_INPUT,"Регистрация","Введите свой будущий пароль в поле снизу","Ок","Отмена"); stock ShowPlayerLoginDialog(playerid) return ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_INPUT,"Логин","Введите пароль от своего аккаунта в поле снизу","Ок","Отмена");
+++=)
Ничто не останавливает полет мысли программиста , как компилятор! + не помешает
Сообщение отредактировал [MTA]MaPeR5518 - Суббота, 06.08.2011, 03:09:02
Сообщение :headbang: :headbang: Code
#include <Dini> #pragma dynamic 150000 #define LOGIN 1 #define REG 2 #define LOGIN_ERROR 3 #define REG_ERROR 4 enum pInfo { Kills, Deaths, bool:LoggedIn } new Player[MAX_PLAYERS][pInfo];
OnPlayerConnect Code
new fileH[64], named[24]; GetPlayerName(playerid,named,24); format(fileH,64,"%s.ini",named); if(!dini_Exists(fileH)) ShowPlayerRegisterDialog(playerid); else ShowPlayerLoginDialog(playerid);
OnDialogResponse Code
switch(dialogid) { case REG: { switch(response) { case 0: return ShowPlayerRegisterDialog(playerid); case 1: return CreateAccount(playerid,inputtext); } } case LOGIN: { switch(response) { case 0: return Kick(playerid); case 1: return LoadAccount(playerid,inputtext); } } case LOGIN_ERROR: { switch(response) { default: return ShowPlayerLoginDialog(playerid); } } case REG_ERROR: { switch(response) { default: return ShowPlayerRegisterDialog(playerid); } } }
OnPlayerDisconnect Code
SaveAccount(playerid);
в OnPlayerDeath Code
Player[killerid][Kills]++; Player[playerid][Deaths]++; SetPlayerScore(killerid,Player[killerid][Kills]);
Code
stock CreateAccount(playerid,password[]) { if(!strlen(password) || strlen(password) < 5 || strlen(password) > 20) return ShowPlayerDialog(playerid,REG_ERROR,DIALOG_STYLE_MSGBOX,"Ошибка","Неверный формат пароля","Ок","Отмена"); new file[64], name[24]; GetPlayerName(playerid,name,24); format(file,64,"%s.ini",name); if(dini_Exists(file)) return ShowPlayerLoginDialog(playerid); dini_Create(file); dini_Set(file,"Password",password); dini_IntSet(file,"Kills",0); dini_IntSet(file,"Deaths",0); Player[playerid][LoggedIn] = true; SendClientMessage(playerid,0xAFAFAFAA,"Вы зарегистрировались и автоиатически залогинелись"); return 1; } stock LoadAccount(playerid,password[]) { new file[64], name[24]; GetPlayerName(playerid,name,24); if(!strlen(password) || strlen(password) < 5 || strlen(password) > 20) return ShowPlayerDialog(playerid,LOGIN_ERROR,DIALOG_STYLE_MSGBOX,"Ошибка","Неверный формат пароля","Ок","Отмена"); format(file,64,"%s.ini",name); if(!dini_Exists(file)) return ShowPlayerRegisterDialog(playerid); new temp[256]; temp = dini_Get(file,"Password"); if(strcmp(temp,password,false) == -1) return ShowPlayerDialog(playerid,LOGIN_ERROR,DIALOG_STYLE_MSGBOX,"Ошибка","Неверный пароль","Ок","Отмена"); Player[playerid][Kills] = dini_Int(file,"Kills"); Player[playerid][Deaths] = dini_Int(file,"Deaths"); Player[playerid][LoggedIn] = true; SendClientMessage(playerid,0xAFAFAFAA,"Вы успешно вошли"); return 1; } stock SaveAccount(playerid) { new file[64], name[24]; GetPlayerName(playerid,name,24); format(file,64,"%s.ini",name); if(!dini_Exists(file)) return 1; dini_IntSet(file,"Kills",Player[playerid][Kills]); dini_IntSet(file,"Deaths",Player[playerid][Deaths]); Player[playerid][LoggedIn] = false; return 1; } stock ShowPlayerRegisterDialog(playerid) return ShowPlayerDialog(playerid,REG,DIALOG_STYLE_INPUT,"Регистрация","Введите свой будущий пароль в поле снизу","Ок","Отмена"); stock ShowPlayerLoginDialog(playerid) return ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_INPUT,"Логин","Введите пароль от своего аккаунта в поле снизу","Ок","Отмена");
+++=)Автор - [MTA]MaPeR5518 Дата добавления - 06.08.2011 в 03:08:29