Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 4 из 4
  1. #1
    Аватар для Straik32423
    Пользователь

    Статус
    Оффлайн
    Регистрация
    16.06.2015
    Адрес
    Ростов-на-Дону, Россия
    Сообщений
    23
    Репутация:
    1 ±

    Ошибка с регистрацией mxINI

    Привет! Пытался создать регистрацию, так как не очень опытен, нашел на одном форуме по pawn (другом) систему регистрации. Я ее немного переделал под себя, но при спавне мне не выдаются ни хп, ни деньги, ни броня, ни скин. Мне просто выдает 0 хп, 0 брони и столько же денег. Такое происходит даже если пароль введен неверно. Что делать, подскажите, пожалуйста!
    Код:
    	if(dialogid == 2) // Регистрация
    	{
    	    if(!strlen(inputtext)) return SPD(playerid, 2, DSI, "Регистрация", "Добро пожаловать на LoL Role Play.\nЭтот аккаунт не зарегистрирован, введите Ваш пароль в окошко ниже:", "Регистрация", "Выход");
    	    if(response)
    		{
    		    new pName[MAX_PLAYER_NAME]; new account[128];
    		    GetPlayerName(playerid, pName, sizeof(pName));
    		    format(account,sizeof(account), "users/%s.ini",pName);
    		    if(fexist(account)) return SPD(playerid, 3, DSI, "Авторизация", "Здравствуйте! Ваш аккаунт зарегистрирован.\nВведите Ваш пароль в окошко:", "Ок", "Выход");
    		    new iniFile = ini_createFile(account);
    		    if(iniFile < 0) ini_openFile(account);
    		    {
    		        ini_setString(iniFile, "Pass", inputtext);
    		        ini_setInteger(iniFile, "Money", 500);
    		        ini_setFloat(iniFile, "Heal", 100.0);
    		        ini_setFloat(iniFile, "Armour", 100.0);
    		        ini_setInteger(iniFile, "Skin", 294);
    		        ini_closeFile(iniFile);
    		        SPD(playerid, 3, DSI, "Авторизация", "Здравствуйте! Ваш аккаунт зарегистрирован.\nВведите Ваш пароль в окошко:", "Ок", "Выход");
    			}
    		}
    		else
    		{
    		    Kick(playerid);
    		    return 1;
    		}
    	}
    	if(dialogid == 3) // Авторизация
    	{
    	    if(!strlen(inputtext)) return SPD(playerid, 3, DSI, "Авторизация", "Здравствуйте! Ваш аккаунт зарегистрирован.\nВведите Ваш пароль в окошко:", "Ок", "Выход");
    	    if(response)
    	    {
    	        new pName[MAX_PLAYER_NAME]; new password[64]; new account[128];
    	        GetPlayerName(playerid, pName, sizeof(pName));
    	        format(account, sizeof(account), "%s.ini", pName);
    	        if(IsPlayerNPC(playerid)) return 1;
    	        new iniFile = ini_openFile(account);
    	        ini_getString(iniFile, "Pass", password);
    	        if(!strcmp(inputtext, password, true))
    	        {
    	            ini_getInteger(iniFile, "Money", PlayerInfo[playerid][Money]);
    	            ini_getFloat(iniFile, "Heal", PlayerInfo[playerid][Heal]);
    	            ini_getFloat(iniFile, "Armour", PlayerInfo[playerid][Armour]);
    	            ini_closeFile(iniFile);
    	            SpawnPlayer(playerid);
    				SetPlayerHealth(playerid, PlayerInfo[playerid][Heal]);
    				SetPlayerArmour(playerid, PlayerInfo[playerid][Armour]);
    				GivePlayerMoney(playerid, PlayerInfo[playerid][Money]);
    				return 1;
    			}
    			else
    			{
    			    SCM(playerid, COLOR_RED, "Пароль неверный, повторите попытку");
    			    SPD(playerid, 3, DSI, "Авторизация", "Здравствуйте! Ваш аккаунт зарегистрирован.\nВведите Ваш пароль в окошко:", "Ок", "Выход");
    			    return 1;
    			}
    		}
    		else
    		{
    		    Kick(playerid);
    		    return 1;
    		}

  2. #2
    Аватар для Osetin
    •Администратор•

    Статус
    Оффлайн
    Регистрация
    26.03.2013
    Адрес
    ♔Osetia, Vladikavkaz♔
    Сообщений
    3,432
    Репутация:
    1093 ±

  3. #3
    Аватар для Sp1ke
    Пользователь

    Статус
    Оффлайн
    Регистрация
    01.03.2015
    Сообщений
    245
    Репутация:
    55 ±
    Цитата Сообщение от Straik32423 Посмотреть сообщение
    Привет! Пытался создать регистрацию, так как не очень опытен, нашел на одном форуме по pawn (другом) систему регистрации. Я ее немного переделал под себя, но при спавне мне не выдаются ни хп, ни деньги, ни броня, ни скин. Мне просто выдает 0 хп, 0 брони и столько же денег. Такое происходит даже если пароль введен неверно. Что делать, подскажите, пожалуйста!
    Код:
    	if(dialogid == 2) // Регистрация
    	{
    	    if(!strlen(inputtext)) return SPD(playerid, 2, DSI, "Регистрация", "Добро пожаловать на LoL Role Play.\nЭтот аккаунт не зарегистрирован, введите Ваш пароль в окошко ниже:", "Регистрация", "Выход");
    	    if(response)
    		{
    		    new pName[MAX_PLAYER_NAME]; new account[128];
    		    GetPlayerName(playerid, pName, sizeof(pName));
    		    format(account,sizeof(account), "users/%s.ini",pName);
    		    if(fexist(account)) return SPD(playerid, 3, DSI, "Авторизация", "Здравствуйте! Ваш аккаунт зарегистрирован.\nВведите Ваш пароль в окошко:", "Ок", "Выход");
    		    new iniFile = ini_createFile(account);
    		    if(iniFile < 0) ini_openFile(account);
    		    {
    		        ini_setString(iniFile, "Pass", inputtext);
    		        ini_setInteger(iniFile, "Money", 500);
    		        ini_setFloat(iniFile, "Heal", 100.0);
    		        ini_setFloat(iniFile, "Armour", 100.0);
    		        ini_setInteger(iniFile, "Skin", 294);
    		        ini_closeFile(iniFile);
    		        SPD(playerid, 3, DSI, "Авторизация", "Здравствуйте! Ваш аккаунт зарегистрирован.\nВведите Ваш пароль в окошко:", "Ок", "Выход");
    			}
    		}
    		else
    		{
    		    Kick(playerid);
    		    return 1;
    		}
    	}
    	if(dialogid == 3) // Авторизация
    	{
    	    if(!strlen(inputtext)) return SPD(playerid, 3, DSI, "Авторизация", "Здравствуйте! Ваш аккаунт зарегистрирован.\nВведите Ваш пароль в окошко:", "Ок", "Выход");
    	    if(response)
    	    {
    	        new pName[MAX_PLAYER_NAME]; new password[64]; new account[128];
    	        GetPlayerName(playerid, pName, sizeof(pName));
    	        format(account, sizeof(account), "%s.ini", pName);
    	        if(IsPlayerNPC(playerid)) return 1;
    	        new iniFile = ini_openFile(account);
    	        ini_getString(iniFile, "Pass", password);
    	        if(!strcmp(inputtext, password, true))
    	        {
    	            ini_getInteger(iniFile, "Money", PlayerInfo[playerid][Money]);
    	            ini_getFloat(iniFile, "Heal", PlayerInfo[playerid][Heal]);
    	            ini_getFloat(iniFile, "Armour", PlayerInfo[playerid][Armour]);
    	            ini_closeFile(iniFile);
    	            SpawnPlayer(playerid);
    				SetPlayerHealth(playerid, PlayerInfo[playerid][Heal]);
    				SetPlayerArmour(playerid, PlayerInfo[playerid][Armour]);
    				GivePlayerMoney(playerid, PlayerInfo[playerid][Money]);
    				return 1;
    			}
    			else
    			{
    			    SCM(playerid, COLOR_RED, "Пароль неверный, повторите попытку");
    			    SPD(playerid, 3, DSI, "Авторизация", "Здравствуйте! Ваш аккаунт зарегистрирован.\nВведите Ваш пароль в окошко:", "Ок", "Выход");
    			    return 1;
    			}
    		}
    		else
    		{
    		    Kick(playerid);
    		    return 1;
    		}
    Попробуй просто установить значение переменной, а после напиши сток для сохранения и пропиши его в конце регистрации.

  4. #4
    Аватар для gangzone.ini
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.06.2014
    Сообщений
    651
    Репутация:
    106 ±
    OnPlayerSpawn:
    PHP код:
    SetPlayerHealth(playeridPlayerInfo[playerid][Heal]);
    SetPlayerArmour(playeridPlayerInfo[playerid][Armour]); 
    Загрузка аккаунта:
    PHP код:
    ResetPlayerMoney(playerid);
    GivePlayerMoney(playeridPlayerInfo[playerid][Money]); 
    Последний раз редактировалось gangzone.ini; 20.06.2015 в 01:12.

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •