Перейти к содержанию

Запрет на создание "левых" ников


Рекомендуемые сообщения

  • 3 недели спустя...

Можно уточнить? Запрет идёт на создание ников вобще содержащих разноязыкове симолы или чтобы в каждом отдельном слова?(Тоесть возможно создание ника Snow Слон)

Ссылка на комментарий
Поделиться на другие сайты

  • 3 недели спустя...

Тут

if((name>='А' && name<='я') || name=='Ё' || name=='ё'){ if(charname_flag==2) return -1; charname_flag = 1;

} else if(name>='A' && name<='z'){ if(charname_flag==1) return -1; charname_flag = 2; } }

В конце } лишняя.

Изменено пользователем GmDen
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

// Check Authorised letters/symbols in the name of the character
if( char_name_option == 1 )
{ // only letters/symbols in char_name_letters are authorised
for( i = 0; i < NAME_LENGTH && name[i]; i++ )
if( strchr(char_name_letters, name[i]) == NULL )
return -2;
}

меняем на:


// Check Authorised letters/symbols in the name of the character
if( char_name_option == 1 )
{ // only letters/symbols in char_name_letters are authorised
for(i=0; i<NAME_LENGTH && name[i]; i++)
{
if(strchr(char_name_letters,name[i])==NULL)
return -2;
if((name[i]>='А' && name[i]<='я') || name[i]=='Ё' || name[i]=='ё')
{
if(charname_flag==2)
return -1;
charname_flag = 1;
}
else if(name[i]>='A' && name[i]<='z')
{
if(charname_flag==1)
return -1;
charname_flag = 2;
}
}
}

P.S. Agasper забыл заключить свои if-ы в блок for-а.

Изменено пользователем Functor
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

Functor , произвел данную замену. Все вродебы заработало. Но вот ники игроков у которых в именах есть сочетание букв разных языков теперь попросту не видны. пустое пятно) Что посоветуете?

Ссылка на комментарий
Поделиться на другие сайты

PhoeniX, функция в которой мы производили модификацию кода(check_char_name), используется в двух местах.

1. При создании персонажа.

2. При переименовании персонажа.

Как я понял, у Вас проблемы с существующими персонажами, которые были созданы еще до применения модификации. Если все верно, то данная модификация никаким образом не может дать такой эффект. Перепроверьте еще раз все внимательно ;)

  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

В данный момент у меня стоит такой кусок кода в файле char.c

// Check Authorised letters/symbols in the name of the character
if( char_name_option == 1 )
{ // only letters/symbols in char_name_letters are authorised
for(i=0; i<NAME_LENGTH && name[i]; i++)
{
if(strchr(char_name_letters,name[i])==NULL)
return -2;
if((name[i]>='А' && name[i]<='я') || name[i]=='Ё' || name[i]=='ё')
{
if(charname_flag==2)
return -1;
charname_flag = 1;
}
else if(name[i]>='A' && name[i]<='z')
{
if(charname_flag==1)
return -1;
charname_flag = 2;
}
}
}

Ссылка на комментарий
Поделиться на другие сайты

Давайте поступим по другому. Вы убираете код модификации, сохраняете изменения, компилируете сервер и смотрите на результат. После чего отпишитесь.

Ссылка на комментарий
Поделиться на другие сайты

Попробывал. Ники у персонажа остались белыми пятнами. Когда пытаюсь зайти ним пишет "This character will be bloked to use until"

И теперь воще не хочет создавать чаром. Пише что создание чаров отклонено О_0

Ссылка на комментарий
Поделиться на другие сайты

Я был прав. Модификация тут не причем.

Очень похоже на несоответствие версии пакетов. Проверьте PACKETVER в mmo.h и packet_db_ver в packet_db.txt.

Ссылка на комментарий
Поделиться на другие сайты

Хм..она действительно менялась. В данный момент на сервере тестируется введение реневал клиента. Не знал что оно взаимосвязано. Спасибо. Восстановлю старую пакет дб и дефине в ммо.х и протестирую и отпишусь.

  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

  • 4 года спустя...
  • 4 недели спустя...
×
×
  • Создать...
Яндекс.Метрика