Скриптер
Участник
Пользователь
- Сообщения
- 494
- Реакции
- 344
- Помог
- 11 раз(а)
Georg,
Переменная в enumeration
Функция
То есть значение это не надо получать через функцию
Проблема была в том, что при получении указателя указывается имя квара, а у тебя там было не понятно что вообще.
Не так:
А вот так:
Это я просто указал на ошибку. Для работы с кварами типа bind_pcvar_* такая работа с кварами не имеет места быть.
Конечный вариант.
После старта сервера (через несколько секунд, когда вызовется форвард OnConfigsExecuted) выведется в консоль сервера значение квара.
Переменная в enumeration
CVAR_LIGHTING_NORMAL_ROUND
у тебя в данном случае целочисленного типа, а должна быть строкой.Функция
bind_pcvar_string
сразу запишет в переменную (в данном случае в CvarEffLighting[CVAR_LIGHTING_NORMAL_ROUND]
) значение квара. При автоматическом создании конфига значение будет считываться с указанного в исходнике, в дальнейшем уже с самого конфига.То есть значение это не надо получать через функцию
get_pcvar_string
, оно уже будет в переменной.Проблема была в том, что при получении указателя указывается имя квара, а у тебя там было не понятно что вообще.
Не так:
get_cvar_pointer(CvarEffLighting[CVAR_LIGHTING_NORMAL_ROUND])
А вот так:
get_cvar_pointer("lighting_normal_round")
Это я просто указал на ошибку. Для работы с кварами типа bind_pcvar_* такая работа с кварами не имеет места быть.
Конечный вариант.
После старта сервера (через несколько секунд, когда вызовется форвард OnConfigsExecuted) выведется в консоль сервера значение квара.
Код:
#include <amxmodx>
enum CVARS{
CVAR_LIGHTING_NORMAL_ROUND[8]
}
new CvarEffLighting[CVARS]
public plugin_init()
{
bind_pcvar_string(
create_cvar(
"lighting_normal_round", "c", FCVAR_NONE,
.description = "Map lighting [a-darkest // z-brightest // ''-default // 0-disabled]",
.has_min = false, .min_val = 0.0,
.has_max = false, .max_val = 0.0
), CvarEffLighting[CVAR_LIGHTING_NORMAL_ROUND], charsmax(CvarEffLighting[CVAR_LIGHTING_NORMAL_ROUND])
);
AutoExecConfig(true);
}
public OnConfigsExecuted()
{
server_print("Cvar 'lighting_normal_round' = [%s]", CvarEffLighting[CVAR_LIGHTING_NORMAL_ROUND]);
}
Последнее редактирование: