- Messages
- 1,451
Все взаимодействие с апи происходит через переменную api.
Названия функций и переменных чувствительны к регистру.
Для более развернутых примеров всегда можно обратиться к уже имеющимся плагинам.
Названия функций и переменных чувствительны к регистру.
Для более развернутых примеров всегда можно обратиться к уже имеющимся плагинам.
api.client.?
Результат | Функция | Аргументы | Описание |
---|---|---|---|
bool | IsConnected | нет | Подключен к серверу |
bool | IsInGame | нет | На сервере |
bool | IsSourceTV | нет | Является сурств и скорее всего смотрит демку |
bool | IsAlive | нет | Живой |
int | GetTeam | нет | Команда (0 вне команды, 1 спеки, 2 т, 3 кт) |
int | GetObserverMode | нет | Режим спектатора (0 нет, 1 камера смерти, 2 фиксированный, 3 первое лицо, 4 третье лицо, 5 свободный полет) |
int | GetIndex | нет | Индекс |
int | GetUserID | нет | Юзерайди |
int | GetVelocity | нет | Велосити |
JavaScript:
if (api.client.IsInGame())
{
console.log("игрок на сервере");
}
api.players.?
Все функции требуют индекс игрока в качестве аргумента.
Все функции требуют индекс игрока в качестве аргумента.
Результат | Функция | Аргументы | Описание |
---|---|---|---|
bool | IsConnected | индекс_игрока | Подключен |
bool | IsAlive | индекс_игрока | Живой |
bool | IsFakePlayer | индекс_игрока | Бот |
bool | IsSourceTV | индекс_игрока | Бот STV |
string | GetName | индекс_игрока | Имя |
string | GetClanTag | индекс_игрока | Клантег |
int | GetUserID | индекс_игрока | Юзерайди |
int | GetTeam | индекс_игрока | Команда |
int | GetScore | индекс_игрока | Фраги |
int | GetDeaths | индекс_игрока | Смерти |
int | GetPing | индекс_игрока | Пинг |
JavaScript:
let localPlayer = api.client.GetIndex();
if (api.players.IsConnected(localPlayer))
{
console.log("игрок", api.players.GetName(localPlayer), "подключен к серверу и имеет", api.players.GetScore(localPlayer), "фрагов")
}
api.server.?
Результат | Функция | Аргументы | Описание |
---|---|---|---|
string | GetAddress | нет | Полный айпи адрес |
string | GetName | нет | Название сервера |
string | GetMap | нет | Название карты |
api.config.?
Все конфиги хранятся в папке [game]\cstrike\javascript\configs и всегда имеют расширение json
Имя конфига может содержать только латиницу, цифры и символ нижнего подчеркивания, все остальные символы удаляются.
Все конфиги хранятся в папке [game]\cstrike\javascript\configs и всегда имеют расширение json
Имя конфига может содержать только латиницу, цифры и символ нижнего подчеркивания, все остальные символы удаляются.
Результат | Функция | Аргументы | Описание |
---|---|---|---|
bool | Exists | название_конфига | Существует |
string | Load | название_конфига | Загрузить |
bool | Save | название_конфига, конфиг | Сохранить |
JavaScript:
let configName = "test";
if (api.config.Exists(configName))
{
let configData = api.config.Load(configName);
let saveResult = api.config.Save(configName, configData);
if (!saveResult)
{
console.log(`конфиг ${configName} не сохранен`);
}
}
api.sounds.?
Результат | Функция | Аргументы | Описание |
---|---|---|---|
идентификатор | Play | путь, громкость от 0.0 до 1.0 (опционально) | Воспроизвести |
bool | Stop | идентификатор | Остановить |
bool | SetVolume | идентификатор, громкость от 0.0 до 1.0 | Задать громкость |
float | GetDuration | идентификатор | Получить длительность |
bool | IsPlaying | идентификатор | Все еще играет |
JavaScript:
var soundId = api.sounds.Play("hitsound.wav");
console.log("имеет длительность", api.sounds.GetDuration(soundId));
soundId = api.sounds.Play("hitsound2.wav", 0.1);
api.sounds.SetVolume(soundId, 1.0);
api.sounds.Stop(soundId);
api.cvar.?
Если планируется часто использовать какую-то определенную консольную переменную, то для оптимизации производительности предпочтительнее кешировать поиск переменных используя api.cvar.Find(cvar_name)
CvarObject
Если планируется часто использовать какую-то определенную консольную переменную, то для оптимизации производительности предпочтительнее кешировать поиск переменных используя api.cvar.Find(cvar_name)
Результат | Функция | Аргументы | Описание |
---|---|---|---|
bool | SetValue | имя_команды, любой | Задать значение |
string | GetValue | имя_команды | Получить значение |
bool | GetBool | имя_команды | Получить значение |
int | GetInt | имя_команды | Получить значение |
float | GetFloat | имя_команды | Получить значение |
CvarObject | Find | имя_команды | Найти переменную и вернуть объект |
CvarObject
Результат | Функция | Аргументы | Описание |
---|---|---|---|
bool | IsValid | нет | Квар валидный |
string | GetName | нет | Имя квара |
bool | SetValue | любой | Задать значение |
string | GetValue | нет | Получить значение |
bool | GetBool | нет | Получить значение |
int | GetInt | нет | Получить значение |
float | GetFloat | нет | Получить значение |
JavaScript:
api.cvar.SetValue("net_graph", 1);
api.cvar.SetValue("net_graph", "1");
var cvarObj = api.cvar.Find("net_graph");
if (cvarObj.IsValid())
{
console.log("квар найден", cvarObj.GetName(), "и имеет значение", cvarObj.GetValue());
}
api.command.?
Все команды получают префикс plugin_, если не имеют один из разрешенных префиксов.
В списке разрешенных префиксов находятся plugin_ и js_, которые вы можете указывать явно, например "js_test" заместо "test"
Имя команды может содержать только латиницу, цифры и символ нижнего подчеркивания, все остальные символы удаляются.
CommandObject
Все команды получают префикс plugin_, если не имеют один из разрешенных префиксов.
В списке разрешенных префиксов находятся plugin_ и js_, которые вы можете указывать явно, например "js_test" заместо "test"
Имя команды может содержать только латиницу, цифры и символ нижнего подчеркивания, все остальные символы удаляются.
Результат | Функция | Аргументы | Описание |
---|---|---|---|
CommandObject | Create | Название | Создать команду |
CommandObject
Результат | Функция | Аргументы | Описание |
---|---|---|---|
bool | IsValid | нет | Команда создалась |
string | GetName | нет | Название |
нет | SetCallback | Функция | Задать функцию для обработки |
JavaScript:
var commandObj = api.command.Create("test");
commandObj.SetCallback(commandCallback);
function commandCallback(args)
{
//args - лист
console.log("commandCallback:", args);
}
api.noesis.?
Для использования модели из плагина в документе используйте plugin.?
NoesisObject
NoesisViewmodelObject
Для использования модели из плагина в документе используйте plugin.?
Результат | Функция | Аргументы | Описание |
---|---|---|---|
NoesisObject | Create | нет | Создать панель |
NoesisObject
Результат | Функция | Аргументы | Описание |
---|---|---|---|
NoesisViewmodelObject | CreateViewModel | Функция | Создание модели взаимодействия документа с плагином |
bool | CreateConverter | Название, функция | Конвертор строк из документа ноезиса в плагин. В функцию приходит строка и нужно вернуть новую строку через возврат. Конвертор всегда создается глобально, поэтому используйте уникальные имена, иначе создание будет заблокировано другим плагином. Не рекомендуется использовать конвертор в документах, не связанных с плагином документа, в которых он был создан. Конвертор всегда находится в пространстве имен Js |
bool | LoadDocument | Путь документа | Загрузка документа |
bool | Activate | нет | Активация фокуса документа |
bool | Deactivate | нет | Деактивация фокуса документа |
bool | Reload | нет | Перезагрузка документа |
NoesisViewmodelObject
Результат | Функция | Аргументы | Описание |
---|---|---|---|
bool | CreateInt | Название, стандартное числовое значение | Создать переменную int |
bool | CreateUInt | Название, стандартное числовое значение | Создать переменную uint |
bool | CreateFloat | Название, стандартное числовое значение | Создать переменную float |
bool | CreateDouble | Название, стандартное числовое значение | Создать переменную double |
bool | CreateString | Название, стандартное string значение | Создать переменную string |
bool | CreateEvent | Название | Создать эвент |
JavaScript:
//создаем панель
var noesisObj = api.noesis.Create();
//всегда создаем конвертор перед загрузкой документа
noesisObj.CreateConverter("ToStringConverter", NoesisConverter);
//создаем viewmodel
var viewmodelObj = noesisObj.CreateViewModel(InitViewModel);
//только после создания модели загружаем документ
noesisObj.LoadDocument("test.xaml");
function NoesisConverter(value)
{
//выводим значение которое пришло и возвращаем измененное значение
console.log("[NoesisConverter]", value);
return "TEST_" + value + "_TEST";
}
function InitViewModel(obj)
{
obj.CreateInt("test1", 0);
obj.CreateUInt("test2", 0);
obj.CreateFloat("test3", 0);
obj.CreateDouble("test4", 0);
obj.CreateString("test5", "");
obj.CreateEvent("TestEvent");
}
//далее можем задать любые значения переменным для использования их в документе
viewmodelObj.test1 = 101;
viewmodelObj.test2 = 202;
viewmodelObj.test3 = 303;
viewmodelObj.test4 = 404;
viewmodelObj.test5 = 505;
//так можно вызвать эвент
viewmodelObj.TestEvent();
api.callback.?
Список каллбеков:
Результат | Функция | Аргументы | Описание |
---|---|---|---|
bool | Add | Название, функция | Добавить |
bool | Remove | Название, функция | Удалить |
JavaScript:
api.callback.Add("PlayerHit", PlayerHitCallback);
function PlayerHitCallback(obj)
{
if (obj.Enemy)
{
console.log("попал по противнику");
}
else
{
console.log("попал по союзнику");
}
if (obj.Headshot)
{
console.log("попал в голову");
}
}
Список каллбеков:
Название | Аргументы функции при вызове | Описание |
---|---|---|
BuildUserInfoCvars | BuildUserInfoCvarsObject | Подготовка списка setinfo команд перед отправкой на сервер |
DeathNoticeEvent | DeathNoticeEventObject | Событие уведомления о смерти |
JoinToServer | нет | Зашел на сервер |
DisconnectFromServer | DisconnectFromServerObject | Вышел с сервера |
PlayerHit | PlayerHitObject | Попал по игроку |
PlaySound | PlaySoundObject | Проигрывание кастомного звука с сервера |
ChatMessage | ChatMessageObject | Сообщение чата |
MapStart | нет | Начало карты |
MapEnd | нет | Конец карты |
RoundStart | нет | Начало раунда |
RoundEnd | нет | Конец раунда |
Результат | Функция | Аргументы | Описание |
---|---|---|---|
лист | GetList | нет | Получить список команд |
bool | AddOrSetValue | Название, значение | Добавить или установить значение команды |
bool | SetValue | Название, значение | Установить значение команды |
string | GetValue | Название | Получить значение команды |
bool | Remove | Название | Удалить команду |
Переменная | Описание |
---|---|
Attacker | Кто убил |
Victim | Кого убил |
Assister | Кто помог |
Weapon | Оружие |
Headshot | В голову |
Penetrated | Прострелом |
AssistedFlash | Кто помог флешкой |
Suicide | Игрок самоубился |
AttackerBlind | Кто убил был слепой |
Smoke | Через дым |
NoScope | Без снайперского прицела |
Переменная | Описание |
---|---|
Message | Причина выхода с сервера |
Переменная | Описание |
---|---|
Enemy | Противник |
Headshot | В голову |
Верните значение false чтобы отменить воспроизведение звука.
Важно понимать, что сюда попадают только нестандартные звуки, которые игрок качает по желанию с сервера.
Важно понимать, что сюда попадают только нестандартные звуки, которые игрок качает по желанию с сервера.
Переменная | Описание |
---|---|
Name | Имя звукового файла |
IsLocal | Локальный звук |
IsPlayer | Звук от игрока |
IsWorld | Звук от мира или карты |
Flags | Флаги звука |
Channel | Канал звука |
Volume | Громкость |
Результат | Функция | Аргументы | Описание |
---|---|---|---|
bool | SetVolume | Число от 0.0 до 1.0 | Задать громкость |
Верните значение false чтобы отменить отображение сообщения.
На серверах, где используется разукрашенный чат, может некорректно определяться сообщение от игрока.
На серверах, где используется разукрашенный чат, может некорректно определяться сообщение от игрока.
Результат | Функция | Аргументы | Описание |
---|---|---|---|
string | GetMessage | нет | Получить сообщение |
bool | SetMessage | Текст | Задать сообщение |
bool | IsRadio | нет | Радио сообщение |
bool | IsServer | нет | Серверное сообщение |
bool | IsSystem | нет | Системное сообщение |
bool | IsSay | нет | Сообщение от игрока |
Last edited: