Solaris
Новичок
D:\Server SAMP\My Gamemode\gamemodes\TestRP.pwn(729) : warning 209: function "OnDialogResponse" should return a value
Весь паблик OnDialogResponse
Как исправить?(
---------- Post added at 20:28 ---------- Previous post was at 19:21 ----------
АП!(10 символов)
Весь паблик OnDialogResponse
PHP:
//=========================== Регистрция ===========================
if(dialogid == 1) //Регистрация
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Регистрация", "Вы должны зарегистрироваться! \nВведите ваш пароль:", "Ок", "");
if(response) //проверка на кнопку "ОК" и на нажатие Enter'а
{
new PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid,PlayerName,sizeof(PlayerName)); //узнаем ник
new account[128];
format(account,sizeof(account),"players/%s.ini",PlayerName);//ищем акк
if(fexist(account)) return ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT, "Авторизация", "Вы должны авторизоваться! \nВведите ваш пароль:", "LOGIN", ""); //если акк уже существует, то логиним игрока
new iniFile = ini_createFile(account); //создаем акк
if(iniFile < 0) ini_openFile (account); //если файл пустой, то...
{
ini_setString(iniFile,"Пароль",inputtext); //запишем пароль и закодируем его
ini_setInteger(iniFile, "Money", 5000); // Запишем кол-во денег в файл.
ini_setFloat(iniFile, "Heal", 50.0); // Запишем кол-во жизней в файл.
ini_setInteger(iniFile, "Member", 0); //
ini_setInteger(iniFile,"Mats",0);
ini_closeFile(iniFile); //закроем файл
SetPVarInt(playerid, "Logged", 0); //создаем переменную авторизации
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT, "Авторизация", "Вы должны авторизоваться! \nВведите ваш пароль:", "LOGIN", ""); //теперь после регистрации, мы дадим игроку залогиниться
}
}
else //Проверка на вторую кнопку, но ее то мы не указали. Но если нажать Esc, то мы не регаемся. Так что мы ставим проверку на нажатие Esc'ейпа
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Регистрация", "Вы должны зарегистрироваться! \nВведите ваш пароль:", "Ок", "");
}
}
if(dialogid == 2)
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT, "Авторизация", "Вы должны авторизоваться! \nВведите ваш пароль:", "LOGIN", ""); //если игрок не введет пароль, то игрок мог обойти регу. Но с этой проверкой это исключается
if(response) // проверка на кнопку "ОК" и Enter
{
new PlayerName[MAX_PLAYER_NAME], password[64];
GetPlayerName(playerid,PlayerName,sizeof(PlayerName));
new account[128];
format(account,sizeof(account),"players/%s.ini",PlayerName);
if(IsPlayerNPC(playerid))return 1;
new iniFile = ini_openFile(account);
ini_getString(iniFile, "Пароль",password); // Узнаём пароль аккаунта.
if(!strcmp(inputtext, password, true))
{
ini_getInteger(iniFile, "Money", Player[playerid][pMoney]); // Запишем кол-во денег в переменную.
ini_getFloat(iniFile, "Heal", Player[playerid][pHeal]); // Запишем кол-во жизней в переменную.
ini_getInteger(iniFile, "Member", Player[playerid][pMember]);
ini_getInteger(iniFile,"Leader", Player[playerid][pLeader]);
ini_getInteger(iniFile,"Mats",Player[playerid][pMats]);
SetPlayerHealth(playerid, Player[playerid][pHeal]);
GivePlayerMoney(playerid, Player[playerid][pMoney]);
ini_closeFile(iniFile);
OnPlayerSpawn(playerid);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_SYSTEM, "System: Неверный пароль!");
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Авторизация", "Вы должны авторизоваться! \nВведите ваш пароль:", "Ок", "");
return 1;
}
}
else //Если нажать Esc, то...
{
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Авторизация", "Вы должны авторизоваться! \nВведите ваш пароль:", "Ок", ""); // не даем игроку обойти авторизацию и показываем ему снова окно авторизации
}
}
return 1;
}
if(dialogid == 3) //Опять же ID диалога замените на свой
{
if(response)
{
switch(listitem)
{
case 0:{ //кнопка в диалоге самая первая
if(Player[playerid][pMats] < 40) return SendClientMessage(playerid, -1, "У Вас недостаточно материалов для создания Deagle!");
GivePlayerWeapon(playerid, 24, 50); //выдаем пушку
Player[playerid][pMats] -= 40; //отнимаем материалы
RemovePlayerAttachedObject(playerid,6); //удаляем обьекты
RemovePlayerAttachedObject(playerid,7);
RemovePlayerAttachedObject(playerid,8);
SendClientMessage(playerid,0x33CC33, "Вы создали Пистолет DEAGLE");}
case 1:{
if(Player[playerid][pMats] < 100) return SendClientMessage(playerid, -1, "У Вас недостаточно материалов для создания АК-47");
GivePlayerWeapon(playerid, 30, 140);
Player[playerid][pMats] -= 100;
RemovePlayerAttachedObject(playerid,6);
RemovePlayerAttachedObject(playerid,7);
RemovePlayerAttachedObject(playerid,8);
SendClientMessage(playerid,0x33CC33, "Вы создали АК-47!"); }
case 2:{
if(Player[playerid][pMats] < 95) return SendClientMessage(playerid, -1, "У Вас недостаточно материалов для создания Дробовика!");
GivePlayerWeapon(playerid, 25, 30);
Player[playerid][pMats] -= 95;
RemovePlayerAttachedObject(playerid,6);
RemovePlayerAttachedObject(playerid,7);
RemovePlayerAttachedObject(playerid,8);
SendClientMessage(playerid,0x33CC33, "Вы создали Дробовик!");
}
}
else
{
return 1;
}
}
Как исправить?(
---------- Post added at 20:28 ---------- Previous post was at 19:21 ----------
АП!(10 символов)
Последнее редактирование:
