Ошибка при компиляции.

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
181
Реакции
18
Помог
8 раз(а)
Ошибка
//AMXXPC compile.exe
// by the AMX Mod X Dev Team


//// Ping_Control.sma
//
// C:\Users\Artjom\Desktop\scripting\Ping_Control.sma(33) : warning 233: symbol
"client_disconnect" is marked as deprecated: Use client_disconnected() instead.
//
// Header size: 556 bytes
// Code size: 2464 bytes
// Data size: 2564 bytes
// Stack/heap size: 16384 bytes
// Total requirements: 21968 bytes
//
// 1 Warning.
// Done.
//
// Compilation Time: 0,16 sec
// ----------------------------------------

Press enter to exit ...
Компилятор
Локальный
Amx Mod X
1.9.0
Исходный код
#include <amxmodx>

#define ACCESS_LEVEL_IMMUNITY (ADMIN_MENU|ADMIN_LEVEL_H) // Уровень доступа позволяющий пропускать проверку на пинг.
#define MAX_ALLOWED_PING 100 // Максимально допустимый пинг, превышение этого значения выкидывает игрока с сервера.
#define MAX_FLUX 30 // Максимальные скачки пинга, если привышение то выкидывает с сервера
#define MAX_ALLOWED_LOSS 20 // Максимально допустимая потеря пакетов loss, превышение этого значения выкидывает игрока с сервера.
#define MAX_WARNING_CHECK 3 // Количество предупреждений после которых последует наказание.
#define INTERVAL_CHECK 10.0 // Интервал между проверками, чем меньше значение, тем больше нагрузка на сервер.
#define CHECK_COUNT MAX_WARNING_CHECK + 3 // Количество проверок определенного игрока ( снижаем и без того маленькую нагрузку xD )

#define is_immunity(%0) ((get_user_flags(%0) & ACCESS_LEVEL_IMMUNITY) || is_user_bot(%0) || is_user_hltv(%0))

#define get_bit(%1,%2) (%1 & (1 << (%2 & 31)))
#define set_bit(%1,%2) %1 |= (1 << (%2 & 31))
#define clr_bit(%1,%2) %1 &= ~(1 << (%2 & 31))

new g_iWarning[33], g_iCountCheck[33], g_iLastPing[33], g_iBitValid;

public plugin_init()
{
register_plugin("Ping Control", "1.31", "neygomon");
set_task(INTERVAL_CHECK, "PingCheck", .flags = "b");
}

public client_putinserver(id)
{
if(is_immunity(id)) return;
set_bit(g_iBitValid, id);
g_iWarning[id] = g_iCountCheck[id] = 0;
}

public client_disconnect(id)
clr_bit(g_iBitValid, id);

public PingCheck()
{
static i, iPing, iLoss, players[32], pcount;
get_players(players, pcount, "ch")

for(i=0; i < pcount; i++)
{
if(!get_bit(g_iBitValid, players[i])) continue;
if(++g_iCountCheck[players[i]] < CHECK_COUNT)
{
get_user_ping(players[i], iPing, iLoss)

if(iPing >= MAX_ALLOWED_PING || iLoss > MAX_ALLOWED_LOSS || abs(iPing - g_iLastPing[players[i]]) > MAX_FLUX)
{
if(++g_iWarning[players[i]] >= MAX_WARNING_CHECK)
{
static name[32]; get_user_name(players[i], name, charsmax(name));
ChatColor("^1[^4PingControl^1] ^3%s ^1был удален с сервера за плохое соединение!", name);
server_cmd("kick #%d ^"Вы были кикнуты из-за плохого соединения^"", get_user_userid(players[i]));
}
}
else if(g_iWarning[players[i]]) g_iWarning[players[i]]--;
g_iLastPing[players[i]] = iPing;
}
}
}

stock ChatColor(const szMessage[], any:...)
{
static pnum, players[32], szMsg[190], IdMsg;
vformat(szMsg, charsmax(szMsg), szMessage, 2);

if(!IdMsg) IdMsg = get_user_msgid("SayText");

get_players(players, pnum, "ch");

for(new i; i < pnum; i++)
{
message_begin(MSG_ONE, IdMsg, .player = players[i]);
write_byte(players[i]);
write_string(szMsg);
message_end();
}
}
Выдаёт ошибку при компиляции плагина.
 
В этой теме было размещено решение! Перейти к решению.
Сообщения
2,827
Реакции
1,662
Помог
75 раз(а)
Krenko, Перевод "// 1 Warning." - предупреждение

faa25713ff.png

Код:
-public client_disconnect(id)
+public client_disconnected(id)
 
Сообщения
23
Реакции
2
Приветствую!
Помогите пожалуйста выровнять код.

Ошибка при компиляции:
warning 217: loose indentation

Собственно он:
Код:
#include <amxmodx>
 #define REASON "Please, Change name! Wrong symbols! (#/\@+&)"
 public plugin_init() {
register_plugin("Name Rules","1.1","Wonder edit by SwInGeR")
}
// пороверка при конекте игрока
public client_connect(id) {
validate_username(id)
return PLUGIN_CONTINUE
}

// пороверка при смене ника в игре
public client_infochanged(id) {
  new newname[32], oldname[32]
  get_user_info(id, "name", newname,31)
  get_user_name(id,oldname,31)
 
if (!equal(oldname,newname)){
  validate_username(id)
}

return PLUGIN_CONTINUE
}


public validate_username(id) {
new name[32],i,tmp[2]
new restsymbols[]="/\$#@+&"
//get_user_name(id,name,32)
get_user_info(id, "name", name,31)
new userid = get_user_userid(id)

// Проверка на длинну ника до 25 символов
if (strlen(name) > 25){
server_cmd("kick #%d ^"Long nickname! Change it! Max symbols 25^"",userid)
return PLUGIN_CONTINUE
}

for (i=0;i<strlen(restsymbols);i++){
copy(tmp,1,restsymbols[i])
if (contain(name,tmp) >= 0){
server_cmd("kick #%d ^"%s^"",userid,REASON)
return PLUGIN_CONTINUE
}

}

return PLUGIN_CONTINUE
}
 
Сообщения
2,143
Реакции
1,223
Помог
44 раз(а)
best101,
Код:
#include <amxmodx>

public plugin_init() register_plugin("Name Rules", "1.1", "Wonder edit by SwInGeR");

// пороверка при конекте игрока
public client_connect(id) {
    validate_username(id);
    return PLUGIN_CONTINUE;
}

// пороверка при смене ника в игре
public client_infochanged(id) {
    new newname[32], oldname[32];
    get_user_info(id, "name", newname, 31);
    get_user_name(id, oldname, 31);

    if(!equal(oldname,newname)) validate_username(id);
    return PLUGIN_CONTINUE;
}

public validate_username(id) {
    new name[32], i, tmp[2];
    new restsymbols[] = "/\$#@+&";
    get_user_info(id, "name", name, 31);
    new userid = get_user_userid(id);

    // Проверка на длинну ника до 25 символов
    if(strlen(name) > 25) {
        server_cmd("kick #%d Long nickname! Change it! Max symbols 25", userid);
        return PLUGIN_CONTINUE;
    }

    for(i = 0; i < strlen(restsymbols); i++) {
        copy(tmp, 1, restsymbols[i]);
        if(contain(name, tmp) >= 0) {
            server_cmd("kick #%d Please, Change name! Wrong symbols! (#/\@+&)", userid);
            return PLUGIN_CONTINUE;
        }
    }
    return PLUGIN_CONTINUE;
}
 
Сообщения
23
Реакции
2
Minni, Благодарю! Скомпилил без ошибки.

Для wopox1337: извиняюсь. Так понял, что вы указали размещать подобные сообщения в теме "Флудилка"...
Мне показалось именно этот раздел для данной проблемы... Сори, если не так.
 
Последнее редактирование:
Сообщения
2,713
Реакции
2,995
Помог
59 раз(а)
Так понял, что вы указали размещать подобные сообщения в теме "Флудилка"...
Мне показалось именно этот раздел для данной проблемы... Сори, если не так.
https://dev-cs.ru/forums/compile-errors/ - в этом разделе решаются индивидуальные проблемы с компилированием плагинов. Не иначе.
 
Статус
В этой теме нельзя размещать новые ответы.

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу