Вопросы

Когда отвечаю на все вопросы, то перекидавает заново на авторизацию

Спойлер

case dCreateAccount:
		{
		    if(!response)
		    {
		        SCM(playerid, -1, "Регистрация отменена. Для выхода с сервера используйте /q(uit)");

		        Kick(playerid);

		        return 1;
		    }

      		for(new i = strlen(inputtext)-1; i != -1; i--)
	        {
	            switch(inputtext[i])
	            {
	                case '0'..'9', 'а'..'я', 'a'..'z', 'А'..'Я', 'A'..'Z': continue;
	                default: return SPD(playerid, dCreateAccount, DIALOG_STYLE_INPUT, "Регистрация", "Ошибка. Использовать возможно только латинские буквы и цифры\n{FFFFFF}Введите пароль от аккаунта для того, чтоб продолжить игру:", "Вход", "Выход");
	            }
	        }

		    new password_length = strlen(inputtext);

		    if(!password_length)
			    return SPD(playerid, dCreateAccount, DIALOG_STYLE_INPUT, "Регистрация", erorreg1, "Далее", "Отмена");

		    else if(password_length < 4)
			    return SPD(playerid, dCreateAccount, DIALOG_STYLE_INPUT, "Регистрация", erorreg2, "Далее", "Отмена");

			else if(password_length > 20)
			    return SPD(playerid, dCreateAccount, DIALOG_STYLE_INPUT, "Регистрация", erorreg3, "Далее", "Отмена");

			else
			{
			    format(pInfo[playerid][pPass], 30, "%s", inputtext);

			    SPD(playerid, dCreateAccount + 1, DIALOG_STYLE_INPUT, "Электронная почта", mailtext, "Далее", "Отмена");
			}
		}

		case dCreateAccount + 1:
		{
			if(!response)
			{
			    SCM(playerid, -1, "Регистрация отменена. Для выхода с сервера используйте /q(uit)");

		        Kick(playerid);

		        return 1;
			}

			new length = strlen(inputtext);

			if(!length)
			    return SPD(playerid, dCreateAccount + 1, DIALOG_STYLE_INPUT, "Электронная почта", mailtext, "Далее", "Отмена");

			if(length < 4)
			    return SPD(playerid, dCreateAccount + 1, DIALOG_STYLE_INPUT, "Электронная почта", mailtext, "Далее", "Отмена");

			for(new idx; idx < length; idx ++)
			{
			    switch(inputtext[idx])
			    {
			        case '0'..'9', 'a'..'z', 'A'..'Z', '@', '.', '_', '-': continue;
			        default: return SPD(playerid, dCreateAccount + 1, DIALOG_STYLE_INPUT, "Электронная почта", #C_GRAY "Ошибка: {FFFFFF}EMail-адрес не соответствует эталону\n\n" mailtext, "Далее", "Отмена");
			    }
			}

			if(strfind(inputtext, "@") == -1)
			{
			    return SPD(playerid, dCreateAccount + 1, DIALOG_STYLE_INPUT, "Электронная почта", #C_GRAY "Ошибка: {FFFFFF}EMail-адрес не соответствует эталону\n\n" mailtext, "Далее", "Отмена");
			}

			format(pInfo[playerid][pMail], 25, "%s", inputtext);

			SetPVarInt(playerid, "ucp_question_id", 0);

			format:str_big( #C_GRAY "UCP Регистрация / Вопрос №%d\n\n{ffffff}%s", GetPVarInt(playerid, "ucp_question_id") + 1, ucp_questions[GetPVarInt(playerid, "ucp_question_id")]);
			SPD(playerid, dCreateAccount + 2, DIALOG_STYLE_INPUT, "UCP Регистрация", str_big, "Далее", "Отмена");
		}

		case dCreateAccount + 2:
		{
			new question_id = GetPVarInt(playerid, "ucp_question_id"),
				bool: right_type = false;

			switch(inputtext[0])
			{
			    case '0'..'9': right_type = true;
			}

			if(response && right_type)
			{
			    pInfo[playerid][pUcpData][question_id] = ucp_answers[question_id] == strval(inputtext) ? 1 : 0;

			    SetPVarInt(playerid, "ucp_question_id", question_id + 1);

			    if(question_id + 1 == 10)
			    {
			        new answers = 0;

			        for(new idx; idx < sizeof ucp_questions; idx ++)
			            if(pInfo[playerid][pUcpData][idx] == 1) answers ++;

					if(answers >= 7)
			        {
				        SCM(playerid, -1, "UCP Регистрация завершена");

				        mysql_format:str_big("INSERT INTO `" #DB_ACCOUNTS "` (Name, Pass, Mail, UcpData) VALUES ('%s', '%s', '%s', '%d|%d|%d|%d|%d|%d|%d|%d|%d|%d')", pInfo[playerid][pName], pInfo[playerid][pPass], pInfo[playerid][pMail],
						pInfo[playerid][pUcpData][0],pInfo[playerid][pUcpData][1],pInfo[playerid][pUcpData][2],pInfo[playerid][pUcpData][3],pInfo[playerid][pUcpData][4],
						pInfo[playerid][pUcpData][5],pInfo[playerid][pUcpData][6],pInfo[playerid][pUcpData][7],pInfo[playerid][pUcpData][8],pInfo[playerid][pUcpData][9]);
						mysql_function_query(mysql_connect_ID, str_big, false, "", "");
                        CheckNickname(playerid);
			            mysql_format:str_small( "SELECT ID, Ban, Pass FROM `" #DB_ACCOUNTS "` WHERE `Name` = '%s' LIMIT 1", pInfo[playerid][pName]);
						mysql_tquery( mysql_connect_ID, str_small, "OnPlayerFind", "i", playerid );
					}
					else
					{
					    SCM(playerid, 0xFF5533FF, "Вы не набрали нужного количества правильных ответов");
					    SCM(playerid, 0xFFCC00FF, "Регистрация отменена");

						Kick(playerid);

						return 1;
					}

					return 1;
			    }
			}

            format:str_big( #C_GRAY "UCP Регистрация / Вопрос №%d\n\n{ffffff}%s", GetPVarInt(playerid, "ucp_question_id") + 1, ucp_questions[GetPVarInt(playerid, "ucp_question_id")]);
			SPD(playerid, dCreateAccount + 2, DIALOG_STYLE_INPUT, "UCP Регистрация", str_big, "Далее", "Отмена");
		}

	    case dRegister:
	    {
            if(!response)
			{
				pInfo[playerid][pChart][0]=1;
				new year, month, day;
				getdate(year, month, day);
				new RegIp[16];
				GetPlayerIp(playerid, RegIp, 16);
				mysql_format:str_small("UPDATE `" #DB_ACCOUNTS "` SET `Chart` = '%d|%d|%d|%d' WHERE `Name` = '%s'",pInfo[playerid][pChart][0],pInfo[playerid][pChart][1],pInfo[playerid][pChart][2],pInfo[playerid][pChart][3],pInfo[playerid][pName]), mysql_function_query(mysql_connect_ID, str_small, false, "", "");
				mysql_format:str_small("UPDATE `" #DB_ACCOUNTS "` SET `Regdate` = '%d|%d|%d' WHERE `Name` = '%s'",day,month,year,pInfo[playerid][pName]), mysql_function_query(mysql_connect_ID, str_small, false, "", "");
				mysql_format:str_small("UPDATE `" #DB_ACCOUNTS "` SET `Regip` = '%s' WHERE `ID` = '%d'", RegIp, pInfo[playerid][pID]);
				mysql_function_query(mysql_connect_ID, str_small, false, "", "");
				SCM(playerid,-1,"Вы выбрали женский пол своему персонажу");
				return SPD(playerid,dRegister+1,list,"Выберите расу вашего","" #C_GRAY "1. {ffffff}Европеец\n" #C_GRAY "2. {ffffff}Латиноамериканец\n" #C_GRAY "3. {ffffff}Африканец\n" #C_GRAY "4. {ffffff}Азиат","Ок","");

			}

			pInfo[playerid][pChart][0]=2;
			SCM(playerid,-1,"Вы выбрали мужской пол своему персонажу");
			mysql_format:str_small("UPDATE `" #DB_ACCOUNTS "` SET `pInvSlotsKol` = '0|0|0|0|0|0|0|0|0|0' WHERE `Name` = '%s'",pInfo[playerid][pName]), mysql_function_query(mysql_connect_ID, str_small, false, "", "");
			mysql_format:str_small("UPDATE `" #DB_ACCOUNTS "` SET `Chart` = '%d|%d|%d|%d' WHERE `Name` = '%s'",pInfo[playerid][pChart][0],pInfo[playerid][pChart][1],pInfo[playerid][pChart][2],pInfo[playerid][pChart][3],pInfo[playerid][pName]), mysql_function_query(mysql_connect_ID, str_small, false, "", "");
			mysql_format:str_small("UPDATE `" #DB_ACCOUNTS "` SET `pInvSlots` = '0|0|0|0|0|0|0|0|0|0' WHERE `Name` = '%s'",pInfo[playerid][pName]), mysql_function_query(mysql_connect_ID, str_small, false, "", "");
			return SPD(playerid,dRegister+1,list,"Выберите расу вашего","" #C_GRAY "1. {ffffff}Европеец\n" #C_GRAY "2. {ffffff}Латиноамериканец\n" #C_GRAY "3. {ffffff}Африканец\n" #C_GRAY "4. {ffffff}Азиат","Ок","");
	    }

        case dRegister+1:
	    {
            if(!response) return Kick(playerid);
            pInfo[playerid][pChart][2]=listitem;
            mysql_format:str_small("UPDATE `" #DB_ACCOUNTS "` SET `pInvSlotsKol` = '0|0|0|0|0|0|0|0|0|0' WHERE `Name` = '%s'",pInfo[playerid][pName]), mysql_function_query(mysql_connect_ID, str_small, false, "", "");
            mysql_format:str_small("UPDATE `" #DB_ACCOUNTS "` SET `Chart` = '%d|%d|%d|%d' WHERE `Name` = '%s'",pInfo[playerid][pChart][0],pInfo[playerid][pChart][1],pInfo[playerid][pChart][2],pInfo[playerid][pChart][3],pInfo[playerid][pName]), mysql_function_query(mysql_connect_ID, str_small, false, "", "");
			mysql_format:str_small("UPDATE `" #DB_ACCOUNTS "` SET `pInvSlots` = '0|0|0|0|0|0|0|0|0|0' WHERE `Name` = '%s'",pInfo[playerid][pName]), mysql_function_query(mysql_connect_ID, str_small, false, "", "");
            SetPVarInt(playerid,"skinchange",1);
			SpawnPlayer(playerid);
		}

 

 

Поделиться сообщением


Ссылка на сообщение

6 ответов на этот вопрос

  • 0

А где собственно сами переходы на диалоги вопросов? И сами case на вопросы ? 

Отредактировано пользователем LilPokemon

Поделиться сообщением


Ссылка на сообщение
  • 0

@LilPokemon case дал, а вопросы вот:
 

Спойлер

new ucp_questions[10][1024] =
{
	"Может ли администрация помочь в отыгровке каких-либо незначительных \"условных\" персонажей,\n\
	посредствам команды \"/do\" или же полноценной отыгровки за какого-либо вымышленного персонажа?\n\n\
	Варианты ответа:\n\
	\t1. Администрация имеет на это полное право.\n\
	\t2. Может, если это будет делать Главный Администратор.\n\
	\t3. Администрации полностью запрещено принимать участие в RP-процессе.\n\nОтвет:", // 1
	
	"Разрешена ли провокация полиции на погоню?\n\n\
	Варианты ответа:\n\
	\t1. Провокация без причины строго запрещена.\n\
	\t2. Провокация разрешена, если имеется весомая на то причина.\n\
	\t3. Провокация полиции разрешена только для криминальных персонажей.\n\nОтвет:", // 1
	
	"Как нужно общаться в местах большого скопления людей?\n\n\
	Варианты ответа:\n\
	\t1. Необходимо использовать только /w чат (шепот). Все остальное остается как было.\n\
	\t2. Необходимо разговаривать шепотом и отыгрывать все через /ame.\n\
	\t3. В людных местах запрещено писать в /do, но при этом необходимо общаться только шепотом и отыгрывать все через /ame.\n\
	\t4. Разрешено также писать в простой чат и отыгрывать через /me.\n\nОтвет:", // 3
	
	"Что такое PowerGaming?\n\n\
	Варианты ответа:\n\
	\t1. Игра в свою пользу.\n\
	\t2. Завышение физических и психологических/моральных качеств персонажа.\n\
	\t3. Игра в свою пользу, не давая шанса другой стороне переломить ситуацию.\n\
	\t4. Верны все варианты.\n\nОтвет:", // 3
	
	"Можно ли писать в IC чаты со включенным Caps Lock'ом?\n\n\
	Варианты ответа:\n\
	\t1. Написание слов в IC чат большими буквами запрещено. За это могут дать мут.\n\
	\t2. Разрешено использовать CAPS во всех чатах, кроме шёпота.\n\
	\t3. Разрешено только для усиления эмоций персонажа.\n\nОтвет:", // 3
	
	"Как должна проходить драка между двумя игроками?\n\n\
	Варианты ответа:\n\
	\t1. Драка начинается с мелкой отыгровки и продолжается без неё.\n\
	\t2. Драка начинается с мелкой отыгровки и до конца сопровождается отыгровкой.\n\
	\t3. Драку можно начать и продолжать без какой-либо отыгровки.\n\nОтвет:", // 1
	
	"Какое использование действий/реплик IC запрещено?\n\n\
	Варианты ответа:\n\
	\t1. /me поправляет свои наручные часы и осматривает неизвестного рядом с автомобилем.\n\
	\t2. Действие в локальный чат без реплики: *вытаскивает вазу из тумбочки и\n\tвливает внутрь немного воды, после оставляет в ней свежие розы*\n\
	\t3. [Хриплый голос]: Давно не виделись, Фрэнки.\n\nОтвет:", // 2
	
	"Соблюдается ли на сервере ПДД?\n\n\
	Варианты ответа:\n\
	\t1. Да, я обязан соблюдать все нормы ПДД.\n\
	\t2. Соблюдение ПДД зависит только от моей роли.\n\
	\t3. Членам организованных преступных группировок разрешено игнорировать ПДД.\n\
	\t4. Да, я должен соблюдать все правила, но есть исключение в виде разрешенного проезда на красный сигнал светофора.\n\nОтвет:", // 1
	
	"Какой вариант отыгровки является верным?\n\n\
	Варианты ответа:\n\
	\t1. /me Иван робко посмотрел на Екатерину и улыбнулся\n\
	\t2. /me сделал угрюмую гремассу и начал активно мыть пол [1/3]\n\
	\t3. /me сунул руку в карман штанов и вытащил из него свой старенький портсигар\n\
	\t4. /me сел на стул\n\
	\t5. Нет правильного ответа\n\nОтвет:", // 3
	
	"Какова политика сервера по отношению ограблений?\n\n\
	Варианты ответа:\n\
	\t1. Ограбить игрока можно не более чем на 10.000 рублей,\n\tс разрешения администрации можно совершить афёру не более чем на 300.000 рублей.\n\
	\t2. Ограбить игрока можно не более чем на 5.000 рублей,\n\tс разрешения администрации можно совершить афёру не более чем на 500.000 рублей.\n\
	\t3. Ограбить игрока можно не более чем на 10.000 рублей,\n\tс разрешения администрации можно совершить афёру не более чем на 500.000 рублей.\n\
	\t4. Ограбление игрока можно совершить на всю сумму, которую он имеет с собой.\n\tАферы только с разрешения администрации и не более чем на 500.000 рублей.\n\nОтвет:" // 3
};

new ucp_answers[sizeof ucp_questions] =
{
	1, 1, 3, 3, 3, 1, 2, 1, 3, 3
};

 

 

Поделиться сообщением


Ссылка на сообщение
  • 0

Приветствую, у меня был мод Exciting Roleplay, попробуй те поменять БД была такая же ошибка.

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Danil Baranov  не помогло

Поделиться сообщением


Ссылка на сообщение
  • 0

Ещё раз приветствую, скажи те откуда вы взяли данный мод?

 

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • dante34538
      От dante34538
      Группа ВКонтакте : vk.com/always_mobile
      В группе в описание находятся ссылки на сайт,а так-же на форум
      Добавляй наш IP-Aдрес в избранное: one.always-rp.9ab.ru:1177

      Запуск сервера планируется 28 апреля.

      На сервере имеется один город Los Santos,если онлайн будет повышаться буду открывать LV,SF и фракции добавлять в эти города.

      Будем стараться реализовывать все предложения

      Надеюсь на вашу поддержку, думаю что-то да и получится.

      (В скором времени будет сделан лаунчер и клиент на Android)

      Информация о проекте:
       
      Мод проекта в некоторых местах будет напоминать Samp RolePlay,но это не значит, что делается фулл копия Samp Rp, нет!
       
      На проекте делаются свои системы и они уже есть там, но некоторые функции систем напоминают Samp Rp

      Скриншоты проекта(мода) опубликовываются в группе ВКонтакте, так-же на форуме
       
      После открытия мы начнём делать свои обновления(именно свои!) и будем переписывать системы мода
    • gooding
      От gooding


      Скачать файл ELITE RP | МОД БОНУСНОГО ПРОЕКТА
      Доброго времени суток, уважаемые читатели, я выставил на продажу мод ELITE RP !
      Что же в этом моде уникального?
      - Работы из реальной жизни. (Яндекс Еда  CDEK  Инкассатор)
      - Кланы. (Тиктокеры, Блоггеры, Хамы, Министры, Звери, Сосиски, Сладкие, Ублюдки, Цари и Прокуроры)
      - Радужный, Мигающий клист.
      - Донат-плюшки.
      - Неон на автомобиль, Supreme-наклейка.
      - Брони-транспорт.
      - Кейсы. (SILVER, MEGA, SUPER)
      - ДМ-зона.
      - Эксклюзивные аксессуары.
      - Lamborgini Gold.
      - Новые мафии. (ОПГ)
      - Привилегии для машины. (10.000 HP, телепортация личного транспорта)
      - Система банкоматов.
      - Таксопарки. (VIP-класса и Business)
      - Уникальная система управления личным транспортом. (/cars)
      - Новая система казино.
      - Свой маппинг.
      И многое другое!

      Мод будет дополняться!
      Добавил gooding Добавлено 20.04.2024 Категория Моды Автор gooding  
    • tivan666ban
      От tivan666ban
      Скажите пожалуйста почему этот код(знаю что ещё не допиленный) 
      выдаёт эти ошибки