Цитата(strikerman @ 18.3.2015, 16:44)

Эту функцию достаточно добавить в текущий плагин, в любое место.
Или её надо "прикрутить" переприсвоив какието переменные?
Тебе надо посмотреть кодировку utf8, какой префикс у русских букв, там они могут быть в десятичной или шестнадцатеричной системе, нужно перевести префикс в двоичную и ты будешь знать каждый бит 1 или 0 в байте префикса, и сравнивать.
В примере если первый бит 1, а второй 0 то значит юникод, но там скорее всего префикс байт занимает, то есть 8 битов, а символ два байта, то есть шаг цикла + 2 и снова попадаешь на префикс, а сравнивать лучше не 2 бита а 8 если префикс на 8 бит.
Код:
#include <amxmodx>
new _running
#define _is_running(%1) (_running & 1<<%1)
public plugin_init()
register_plugin("UTF Nick Delete", "1.0", "Valer4")
public client_infochanged(id)
{
static i, a, len, buffer[128], b
a = 0
get_user_info(id, "name", buffer, 127)
len = sizeof(buffer)
for(i = 0; i < len; i += 2) // если два байта 1 символ
{
_running = buffer[i]
if(_is_running(1))
a ++
if(!_is_running(2))
a ++
if(_is_running(3))
a ++
if(!_is_running(4))
a ++
if(_is_running(5))
a ++
if(!_is_running(6))
a ++
if(_is_running(7))
a ++
if(!_is_running(8))
a ++
if(a > 7)
b ++
}
if(b == len)
set_user_info(id, "name", "bydew_bez_nika)")
}
Правильно расставить восклицательные знаки только осталось.
Отредактировал: Valer4, - 18.3.2015, 17:01