Ссылка на архив: yadi.sk/d/X7JO... Ещё видео "Мод с нуля": goo.gl/vMTnmK Оф. группа VK: pawnouroki Все свои вопросы можете задавать в комментариях) #pawno #pawn #модснуля #модысамп
Почему когда я захожу на сервер у меня не появляется меню регистрации вот код если надо new dialog[399+(-2+MAX_PLAYER_NAME)]; format(dialog, sizeof(dialog), "{FFFFFF}Уважаемый {01a1fb}%s{FFFFFF}, добро пожаловать на {01a1fb}Local Role Play{FFFFFF} \ Аккаунт с этим ником не зарегистрирован \ Для игры на сервере необходимо пройти регитрацию \ Придумайте сложный пароль для вашего будушего аккаунта \"Далее\" \ {ffd100}Примичание: \ \tПароль должен быть от 8-ми до 32-ух символов \ \tПароль должен состоять только из цифр и латинских символов любого регистра", player_info[playerid][NAME]); Леон ответь пожалуйста
Братан, Если ты не исправил то тогда, Где вот это строка static const fmt_query[] = "SELECT `id` FROM `accounts` WHERE `name` ='%s'"; Ты должен где у меня написано accounts это таблица, Ты должен свою туда написать и всё :)
Если у тебя какие то варнинги исправь их. Может ошибка в моде в этой строке static const fmt_query[] = "SELECT `id` FROM `users` WHERE `name` ='%s'"; 'users' это таблица в mysql ставишь как у тебя и всё должно работать
У меня проблема. Я ввожу пароль в строку и у меня пишет в чат текст о доступных символах в пароле. Что-то не так с проверкой латинских символов. Что - не могу понять, делаю все. как на видео
error 021: symbol already defined: "format" error 028: invalid subscript (not an array or too many subscripts): "strlen" warning 217: loose indentation warning 217: loose indentation error 027: invalid character constant warning 217: loose indentation error 029: invalid expression, assumed zero fatal error 107: too many error messages on one line #pawno #pawn #модснуля #модысамп
Сделал все как ты сказал, компилировал, а в игре окно регистрации не выходит, то есть компиляция без ошибок, а в игре окно регистрации не выходит, но я все правильно сделал
запрос в бд на аккаунт с onplayerconnect лучше убрать, так как к примеру на 0.3DL (0.3.8) onplayerconnect вызывается сразу, а потом загрузка моделей, будет не очень если диалог регистрации высветится ещё до их загрузки
и если снимаешь научись снимать .... прогу скачай или уреж видео что бы видно было что ты там пишешь ..... или линукс установи там вс епроще с монтажем....
У меня 500 человек онлайн он мне помог ты чипушила хватит его оскорблять норм челик и да зачем ты его просишь переименовать канал если это его решение он так назвал канал значит он так хочет
Kick(); вызывай в таймере, а так как отключить игрока легче чем прислать ему сообщение сервер сделает первым именно это, в итоге не будет показано сообщение, и не будет выполнено закрытие диалога
@@dimadembrovky7541 скопируй у меня этот текст этот ("SELECT `id` FROM `users` WHERE `name` = '%s'") и увидишь, что у тебя всё работает (Если тоже не помогло, значит у тебя где-то в другом месте ошибка или найди другой текст с таким же запросом)
36:25 Что делать если не проходять дальше на E-mail? new regex:rg_passwordcheck = regex_new("^[a-zA-Z0-9]{1,}&"); if(regex_check(inputtext, rg_passwordcheck)) { Тут диалог е-майла } else { Тут сообщение о ошибке! } Показывает только ошибку! ни как немогу понять.. вроде все написал как на видео. пишу 123456789 ошибка пишу asdf1234 ошибка пишу a35s4dBa35sdH4as3Ad5d4 ошибка!
так же смотри в сторону глобальных массивов, так ты будешь экономить память стека, и не придется вечно объявлять new string[]; и вечно подсчитывать ему символы сервер однопоточен, с глобальным массивом будет работать адекватно, не волнуйся
сервер работает в 1 поток, и выполняет код по порядку так что затупов и быть не может, на создание массивов каждый раз затрачивается время, а так он уже будет всегда создан, подсчитывать количество ячеек не придется, 5к поставить и уже хватит на всё, даже на длинные диалоги, про какую обработку ты пишешь хз
Этот спор может зайти далеко без решения, я думаю корректнее было бы предоставить тесты скорости с большой нагрузкой, а иначе разговаривать нет смысла...
Помогите пожалуйста я делал все как на видео даже перепроверял но в конце концов у меня не пишет не о какой ошибке то что не правильный пароль а сразу спавнит
После ввода корректного пароля сервер падает с ошибкой "AMX backtrace: [debug] #0 00000014 in public OnDialogResponse (0, 1, 1, -1, 429648) in elc.amx"" Как это понять и можно ли это пофиксить?) Заранее спасибо) UPD: Видимо где-то очепятался при создании диалога, скопировал диалог для ввода пароля (заменив параметры на диалог емайла) и всё заработало, хотя я до сих пор не смог найти очепятку... =_=
[15:10:27] [plugins/mysql] error #2013 while executing query "SELECT * FROM 'accounts' WHERE 'name' = John_Dolboeb ": Lost connection to MySQL server during query [15:10:53] [plugins/mysql] error #1064 while executing query "SELECT * FROM 'accounts' WHERE 'name' = John_Dolboeb ": You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''accounts' WHERE 'name' = John_Dolboeb' at line 1
Нифига не работает, компиляция варнингов и ошибок не дает, к БД подключено успешно, но все равно не появляется окно регистрации. Если что вот строки из мода (Мб я где-то ошибся) : public OnPlayerConnect(playerid) { GetPlayerName(playerid, player_info[playerid][NAME], MAX_PLAYER_NAME); static const fmt_query[] = "SELECT `id` FROM `users` WHERE `name` ='%s'"; new query[sizeof(fmt_query)+(-2+MAX_PLAYER_NAME)]; format(query, sizeof(query), fmt_query, player_info[playerid][NAME]); mysql_tquery(dbHandle, query, "CheckRegistration", "i", playerid); return 1; }
Ребята, нужна помошь, надеюсь тут кто то еще есть. Сделал все как на видео, но почему то при вводе правильного пароля все ровно вылазит ошибка по regex (именно по проверке на символы a-zA-Z0-9). Что это может быть, уже все проверил, не могу найти. Код прилагаю в комментах
Я все сделал правильно мод скомпилировался не было варнингов и эроров , но проверял на сервере не показывает диологовое окно ( к базе данных подключается )
Командный процессор будет Pawn.CMD, синтаксис у него похож на dc_cmd, ZCMD и подобные, но различия есть. О них подробнее расскажу как доберёмся до команд.
Насчёт быстрее поспорил бы, если ты быстроту сравниваешь при 100000 итераций, то где ты в сампе видел 100000 открытий диалога и его обработку?)0)0)) Мне лично пока удобней свитч, мне лишнее дрочево не нужно.
наоборот это удобно, и большое количество итераций делается дабы результат был виден в в мс, так как сервер не умеет считать микросекунды, и знаешь поговорку копейка рубль бережет, так и здесь, там где то медленный код, здесь медленные код и постепенно это превращается в снежный ком
Это удобно для модульности мода, в этом несомненно плюс. Поговорка правдивая, но полезешь ли ты на грязный пол ради 10 копеек?) Проиграть ~100ms (в тесте напомню на 100к итераций) это офигеть какая разница!1!!
Короче, если тут еще остались те, у кого не вылазит окно реги - проверяйте и исправляйте SQL запрос. У меня получилось так: "SELECT id FROM users WHERE name = '%s'" Все робит. На месте "users" ставьте название своей таблицы.
Братаны, Если вы не исправили то тогда, Где вот это строчка static const fmt_query[] = "SELECT `id` FROM `accounts` WHERE `name` ='%s'"; вы должены где у меня написано accounts это таблица, вы должены свою туда написать и всё :)
Братан, Если ты не исправил то тогда, Где вот это строка static const fmt_query[] = "SELECT `id` FROM `accounts` WHERE `name` ='%s'"; Ты должен где у меня написано accounts это таблица, Ты должен свою туда написать и всё :)