Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Выбор пола при регистрации

Статус
В этой теме нельзя размещать новые ответы.

Disro

Дебютант
Здравствуйте мои дорогии! :)
Подскажите как к регистрации сделать выбор пола?
Регистрация <mxINI>

Вод сам код регистрации:

Начало:
////============================================================================//
#include <a_samp>
//============================================================================//
#include <mxINI>
//============================================================================//
new PAccount[MAX_PLAYERS];// Есть аккаунт, или нет
new gPlayerLogged[MAX_PLAYERS];
//============================================================================//
forward SavePlayers(playerid);
//============================================================================//
enum pInfo
{
pPass[64],
pMoney,
Float:pHeal,
};
//============================================================================//
new Player[MAX_PLAYERS][pInfo];
//============================================================================//
public OnGameModeInit()
{
SetTimer("SaveAccounts", 1000*60*5, true);
return 1;
}

public OnPlayerRequestClass
if(PAccount[playerid] == 1)// Если аккаунт есть
{
ShowPlayerDialog(playerid,1,DIALOG_STYLE_PASSWORD,"Вход ","Здравствуйте!\nВы зарегистрированы на сервере.\nПожалуйста авторизируйтесь!\n\n{EC1515}Внимание!\n{EC1515}Никому не сообщайте свой пароль для безопасности!","Ввод","");// Показываем диалог входа в игру. Стиль диалога выставляем на ввод текста.
}
else// Если аккаунта нет
{
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Регистрация ","Аккаунт не зарегистрирован!\nДля регистрации введите пароль и нажмите ввод.\n\nЧтобы пароль был надёжным, в нём должны содержать:\n -Цыфры\n -Строчные и заглавные буквы латинского алфавита.\n\n{EC1515}Внимание!\n{EC1515}Никому не сообщайте свой пароль!","Ввод","");// Показываем диалог регистрации. Стиль диалога выставляем на ввод текста.
}
if(gPlayerLogged[playerid] == 1)
{
SpawnPlayer(playerid);
}

public OnPlayerConnect
new playername[MAX_PLAYER_NAME];// Масив для имени игрока
new string[128];// Путь до папки с именем игрока
GetPlayerName(playerid,playername,sizeof(playername));// Узнаём имя игрока
format(string,sizeof(string),"players/%s.ini", playername);// Путь к файлу с аккаунтом
if(fexist(string))// Проверка на файл, если он есть то выполняется следующее действие.
{
PAccount[playerid] = 1;// Аккаунт есть
}
else// Если файла с именем нет, то выполняется это действие.
{
PAccount[playerid] = 0;// Аккаунта нет

public OnDialogResponse
if(dialogid == 1)// Ид диалога Для Логина
{
if(response)// Если игрок нажал первую кнопку входа
{
if(!strlen(inputtext))// Если окно ввода пустое, выводим диалог снова
{
ShowPlayerDialog(playerid,1,DIALOG_STYLE_PASSWORD,"Вход ","Здравствуйте!\nВы зарегистрированы на сервере.\nПожалуйста авторизируйтесь!\n\n{EC1515}Внимание!\n{EC1515}Никому не сообщайте свой пароль для безопасности!","Ввод","");// Показываем диалог входа в игру.
return 1;
}
new pass[64];// Масив с паролем
strmid(pass,inputtext,0,strlen(inputtext),64);// Считываем текст с диалога
OnPlayerLogin(playerid,pass);// Запускаем паблик входа
}
else// Если игрок нажал Esc, вернём ему диалог
{
ShowPlayerDialog(playerid,1,DIALOG_STYLE_PASSWORD,"Вход","Здравствуйте!\nВы зарегистрированы на сервере.\nПожалуйста авторизируйтесь!\n\n{EC1515}Внимание!\n{EC1515}Никому не сообщайте свой пароль для безопасности!","Ввод","");// Показываем диалог входа в игру.
}
}
if(dialogid == 2)// Ид диалога для регистрации
{
if(response)// Если игрок нажал первую кнопку
{
if(!strlen(inputtext))// Если окно ввода пустое, выводим диалог снова
{
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Регистрация ","Аккаунт не зарегистрирован!\nДля регистрации введите пароль и нажмите ввод.\n\nЧтобы пароль был надёжным, в нём должны содержать:\n -Цыфры\n -Строчные и заглавные буквы латинского алфавита.\n\n{EC1515}Внимание!\n{EC1515}Никому не сообщайте свой пароль!","Ввод","");// Показываем диалог регистрации.
return 1;
}
new pass[64];// Масив с паролем
strmid(pass,inputtext,0,strlen(inputtext),64);// Считываем текст с диалога
OnPlayerRegister(playerid,pass);// Запускаем паблик регистрации
}
else// Если игрок нажал Esc, вернём ему диалог
{
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Регистрация","Аккаунт не зарегистрирован!\nДля регистрации введите пароль и нажмите ввод.\n\nЧтобы пароль был надёжным, в нём должны содержать:\n -Цыфры\n -Строчные и заглавные буквы латинского алфавита.\n\n{EC1515}Внимание!\n{EC1515}Никому не сообщайте свой пароль!","Ввод","");// Показываем диалог регистрации.
}
}

public OnPlayerRegister
if(IsPlayerConnected(playerid))// Проверка на подключение игрока
{
new string[64];// Масив с путём для файла
new playername[MAX_PLAYER_NAME];// Масив для получения имени игрока
new playersip[64];
GetPlayerName(playerid, playername, sizeof(playername));// Получаем Имя игрока
GetPlayerIp(playerid,playersip,sizeof(playersip));
format(string,sizeof(string), "players/%s.ini", playername);// Добавляем имя игрока, в путь для сохранения
new iniFile = ini_createFile(string);// Создаём файл с именем игрока в папке players
if(iniFile < 0)// Если Файла нет
{
iniFile = ini_openFile(string);// Открываем
}
if(iniFile >= 0)// Если файл есть
{
strmid(Player[playerid][pPass],password,0,strlen(password),255);// Присваиваем масиву pPass, значение password[]
ini_setString(iniFile,"Pass",Player[playerid][pPass]);// Записываем пароль игрока в файл
ini_setFloat(iniFile, "Heal", 50.0);
ini_setInteger(iniFile,"Money",300);
ini_closeFile(iniFile);// Закрываем файл
ShowPlayerDialog(playerid,1,DIALOG_STYLE_PASSWORD,"Вход","Здравствуйте!\nВы зарегистрированы на сервере.\nПожалуйста авторизируйтесь!\n\n{EC1515}Внимание!\n{EC1515}Никому не сообщайте свой пароль для безопасности!","Ввод","");// Показываем диалог входа в игру.
}
}


public OnPlayerLogin(playerid,password[])
{
if(IsPlayerConnected(playerid))// Проверка на подключение игрока
{
new string[64];// Масив с путём для файла
new pass[64];// Масив с паролем
new playername[MAX_PLAYER_NAME];// Масив для получения имени игрока
GetPlayerName(playerid, playername, sizeof(playername));// Получаем Имя игрока
format(string,sizeof(string), "players/%s.ini", playername);// Добавляем имя игрока, в путь для загрузки
new iniFile = ini_openFile(string);// Открываем файл
ini_getString(iniFile,"Pass",pass,64);// Загружаем пароль
if(strcmp(pass,password,true) == 0)// Если введёный пароль, соответсвует паролю при регистрации, то загружаем акк
{
ini_getString(iniFile,"Pass",Player[playerid][pPass],64);// Загружаем пароль
ini_getFloat(iniFile, "Heal", Player[playerid][pHeal]);
ini_getInteger(iniFile,"Money",Player[playerid][pMoney]);
SetPlayerHealth(playerid, Player[playerid][pHeal]); //Теперь выдадим игроку хп
GivePlayerMoney(playerid, Player[playerid][pMoney]); //И денег
ini_closeFile(iniFile);// Закрываем файл
}
else// Если пароль не верен..
{
ini_closeFile(iniFile);// Закрываем файл
ShowPlayerDialog(playerid,1,DIALOG_STYLE_PASSWORD,"Вход ","Здравствуйте!\nВы зарегистрированы на сервере.\nПожалуйста авторизируйтесь!\n\n{EC1515}Внимание!\n{EC1515}Никому не сообщайте свой пароль для безопасности!","Ввод","");// Показываем диалог входа в игру.
return 1;
}
gPlayerLogged[playerid] = 1;
SpawnPlayer(playerid);// Спавним игрока
}


stock SavePlayer(playerid)
new string[64];// Масив с путём для файла
new playername[MAX_PLAYER_NAME];// Масив для получения имени игрока
new Float:heal;
GetPlayerName(playerid, playername, sizeof(playername));// Получаем Имя игрока
format(string, sizeof(string), "players/%s.ini", playername);// Добавляем имя игрока, в путь для сохранения
new iniFile = ini_openFile(string);// Открываем файл по тому пути который указали.
ini_setString(iniFile,"Pass",Player[playerid][pPass]);// Записываем пароль игрока в файл
ini_setFloat(iniFile,"Heal",heal);
ini_setInteger(iniFile,"Money",GetPlayerMoney(playerid));
ini_closeFile(iniFile);// Закрываем файл
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу