Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
JS-скрипт[Part 1] All about UI elements in onetap crack (for newbies)
UI.AddCheckbox("checkbox_name");
var enabled = UI.GetValue("Script items" , "checkbox_name");
//Если чекбокс активен, enabled будет true, иначе, false.
//Взаимодействие:
UI.AddLabel("true") //текст в меню "true"
UI.AddLabel("false") //текст в меню "false"
function menu()
{
var enabled = UI.GetValue("Script items" , "checkbox_name");
//Выносим сюда, потому-что мы будем получать значение только после перезагрузки скрипта, а в функции которую мы зарегистрировали под каллбек Draw, переменная enabled будет бесконечно меняться.
UI.SetVisible("Script items", "true", enabled) //Если у нас активен чекбокс, то мы видим текст "true", иначе мы не будем видеть.
UI.SetVisible("Script items", "false", !enabled) //оператор ! значит "не", тоесть нам не надо писать enabled == false а просто !enabled. Если у нас не активен чекбокс, то мы видем текст "false", иначе мы не будем видеть.
}
Cheat.RegisterCallback("Draw", "menu") //мы регистрируем нашу функцию под каллбек "Draw"
Не проще было хотя-бы так расписать?
UI.AddCheckbox("checkbox_name");
var enabled = UI.GetValue("Script items" , "checkbox_name");
//Если чекбокс активен, enabled будет true, иначе, false
И так со всем остальным
Я хотел сделать все максимально подробно и с примерами, которые может проверить каждый, жаль что lightshot не захватывает игру, так бы еще прикрепил скриншоты.
Я хотел сделать все максимально подробно и с примерами, которые может проверить каждый, жаль что lightshot не захватывает игру, так бы еще прикрепил скриншоты.
Ну для того, чтобы понять что здесь происходит нужно знать хотя бы основы языка JavaScript (learn.javascript.ru - хороший учебник для новичков, учился там же) и английский язык на уровне средней школы.
В этом посте я расскажу подробно о UI классе в кряке вантапа. В UI классе присутствует 18 методов, 9 из которых это сами элементы, 8 из них это взаимодействие с этими элементами и последний метод можно отнести к прочее, поговорим о нем ниже.
(Все элементы которые добавляются с помощью UI класса находятся в меню вантапа по пути Misc - JAVASCRIPT - Script items)
Сначала пройдемся по самим UI элементам, а после по взаимодействию с ними, и так начнем: UI.AddCheckbox('Checkbox_name') - Самый используемый элемент в меню. Имеет 2 состояния - enabled (true) и disabled (false), что позволяет нам понимать, нужно ли выполнять функцию или нет. Принимает в себя один аргумент - строку, содержащую название самого Checkbox-a.
Добавим его следующим образом:
JavaScript:
UI.AddCheckbox('Our checkbox')
UI.AddHotkey('Hotkey_name') - Один из важнейших элементов в меню. Так же имеет 2 состояния - enabled (true) и disabled (false), позволяет нам определить, активирован ли бинд или нет. Принимает в себя один аргумент - строку, содержащую название Hotkey-я.
Добавим его следующим образом:
JavaScript:
UI.AddHotkey('Our hotkey')
UI.AddSliderInt('Int_slider_name', min_int_value, max_int_value) - Слайдер с целыми числами. Имеет количество состояний которое зависит от чисел, указанных в диапазоне слайдера. Позволяет нам узнать число, выставленное пользователем. Принимает в себя 3 аргумента - строку (название слайдера), минимальное целое число слайдера и максимальное целое число слайдера.
Добавим его так:
JavaScript:
UI.AddSliderInt('Our int slider', 0, 10)
UI.AddSliderFloat('float_slider_name', min_float_value, max_float_value) - Все то же самое что и UI.AddSliderInt(Int_slider_name, min_int_value, max_int_value), только принимает в себя не целые, а дробные числа.
Добавим его так:
JavaScript:
UI.AddSliderFloat('Our float slider', 0.0, 10.0)
UI.AddColorPicker('Colorpicker_name') - Колорпикер (Инструмент выбора цвета). Позволяет нам узнать цвет, выбранный пользователем. Принимает в себя один аргумент - строку (название колорпикера).
Добавим так:
JavaScript:
UI.AddColorPicker('Our colorpicker')
UI.AddDropdown('Dropdown_name', ['1st variant', '2nd variant', ..., '55th variant']) - Выпадающий список с возможностью выбрать один из предложенных вариантов.
Позволяет узнать, какой вариант выбрал пользователь в выпадающем списке. Принимает в себя 2 варианта - строку (название выпадающего списка) и массив с произвольным кол-вом вариантов состоящий из строк.
Добавим его так:
UI.AddMultiDropdown('Multidropdown_name', ['1st variant', '2nd variant', ..., '55th variant']) - Выпадающий список с возможностью выбрать несколько из предложенных вариантов. Позволяет узнать, какие варианты выбрал пользователь в выпадающем списке. Принимает в себя 2 варианта - строку (название выпадающего списка) и массив с произвольным кол-вом вариантов состоящий из строк.
Добавим так:
UI.AddTextbox('Textbox_name') - Textbox, в него можно вписывать текст. Позволяет узнать текст, вписанный в него. Принимает в себя один аргумент - строку (название текстбокса)
Добавим его так:
JavaScript:
UI.AddTextbox('Our textbox')
UI.AddLabel('Label name') - Просто строка в меню, можно использовать как описание функции. Принимает в себя один аргумент - строку (название label-а).
Добавим так:
JavaScript:
UI.AddLabel('Our label')
С самими элементами в UI классе мы разобрались, давайте перейдем к методам.
(На этом моменте я понял что я ебнулся, пишу этот пост в 2:08, это пиздец товарищи (@try harder спокойной ночи)) UI.GetValue(path, 'object_name') - Метод, позволяющий получить значение того или иного элемента в меню. Принимает в себя два аргумента - Путь (может состоять из нескольких строк) и название самого объекта (checkbox, slider, etc.), тоже строка.
Пример синтаксиса такой:
Давайте разберем этот метод для каждого элемента:
Для Checkbox:
Пропишем такой код:
JavaScript:
const state = UI.GetValue('Rage', 'GENERAL', 'General', 'Enabled') //Создаем переменную и записываем в нее состояние слайдера.
Cheat.Print(state.toString()) //Выводит это состояние в консоль
Этот код будет получать значение чекбокса Enabled и выводить его в консоль.
В случае если чекбокс активирован, то код выведет в консоль 1 (что можно расценивать как true).
В случае если чекбокс не активирован, то код выведет в консоль 0 (что можно расценивать как false)
Вот пример, как привязать чекбокс к любому действию:
JavaScript:
UI.AddCheckbox('Checkbox') //Создаем чекбокс
if (UI.GetValue('Script items', 'Checkbox')) { //Проверяем, активен ли чекбокс
//Code body //Если да - тело условя начнет выполняться
}
//Если нет - тело условия НЕ будет выполняться
Для Slider (Для SliderInt и SliderFloat): Напишем такой код:
JavaScript:
UI.AddSliderInt('Our slider int', 0, 10) //Создаем наш слайдер
const a = UI.GetValue('Script items', 'Our slider int') //Записываем в переменную значение из слайдера
Cheat.Print(a.toString()) //Выводим в консоль это значение
Он будет выводить в консоль значение от 0 до 10, т.е. то значение, которое выставлено в слайдер.
Работает как для SliderInt, так и для SliderFloat одинаково.
Для Dropdown:
Опять же, напишем такой код:
JavaScript:
UI.AddDropdown('Our dropdown', ['1', '2', '3']) //Создаем выпадающий список
const a = UI.GetValue('Script items', 'Our dropdown') //Заносим его значение в переменную
Cheat.Print(a.toString()) //Выводим это значение в консоль
Он выведет нам в консоль индекс активированного варианта из массива с вариантами.
Например, если активирован 1, скрипт выведет 0, если активирован 2 то 1 и т.д.
Вот пример использования:
JavaScript:
UI.AddDropdown('Tab', ['Rage', 'Anti-Aim', 'Visual', 'Misc']) //Создаем выпадающий список
if (UI.GetValue('Script items', 'Tab') == 0/*0 its index*/) { //Проверяем, включен ли в выпадающем списке именно RAGE
//Тело условия
}
Этот код будет выводить цифры в консоль, но какие же?
Если мы активируем ТОЛЬКО первый аргумент - выведет 1, если мы активируем 1 и 2 то выведет 3, активируем 1, 2 и 3 - выведет 7.
Так как же узнать какой элемент активен, а какой нет?
Для Multidropdown-ов нужно использовать такой синтаксис (просто пример):
JavaScript:
UI.AddMultiDropdown('Our multidropdown', ['1', '2', '3', '4']) //Создаем наш мультидропдаун
const dropdown = UI.GetValue('Script items', 'Our multidropdown') //Заносим его в переменную
zeroIndexEnabled = dropdown & (1 << 0 /*0 its index*/) ? true : false //Создаем переменную, где проверяем, активен ли нулевой индекс или нет
Cheat.Print(zeroIndexEnabled.toString()) //Выводим в консоль переменную с проверкой индекса.
Если активирован нулевой индекс (первый вариант) то в консоль выведет true, иначе false. UI.GetValue() Можно использовать только для вышеперечисленных объектов, перейдем к другим методам получения информации.
UI.IsHotkeyActive(path, 'object_name')
Этот метод используется только для получения состояния Hotkey-я.
Напишем следующее:
JavaScript:
UI.AddHotkey('Our hotkey') //Создаем Hotkey
const a = UI.IsHotkeyActive('Script items', 'Our hotkey') //Заносим его значение в переменную
Cheat.Print(a.toString()) //Выводим это значение в консоль
Если Hotkey активен, то скрипт выведет в консоль 1, иначе 0.
Вот более детальный пример:
JavaScript:
UI.AddHotkey('Damage override') //Создаем Hotkey
if (UI.IsHotkeyActive('Damage override')) { //Делаем проверку на то, активирован ли Hotkey
//Тело условия
}
UI.GetString(path, 'object_name')
Этот метод используется только для получения текста из Textbox-а.
Напишем такой код:
JavaScript:
UI.AddTextbox('Our textbox') //Создаем Textbox
const a = UI.GetString('Script items', 'Our textbox') //Записываем его значение в переменную
Cheat.Print(a) //Выводим это значение в консоль
Этот код выведет в консоль текст, написанный в текстбоксе.
Так-же более детальный пример
JavaScript:
UI.AddTextbox('Name') //Создаем текстбокс
if (UI.GetString('Script items', 'Name') == 'dfrnz') { //Делаем проверку на то, вписан ли в текстбокс dfrnz
Cheat.Print('Hello dfrnz!') //Выводим в консоль если условие выполнилось
}
UI.GetColor(path, 'object_name')
Этот метод используется только для получения цвета из Colorpicker-а.
Используем такой код:
JavaScript:
UI.AddColorPicker('Our colorpicker') //Создаем колорпикер
const a = UI.GetColor('Script items', 'Our colorpicker') //Записываем его значение в переменную
Cheat.Print(a.toString()) //Выводим это значение в консоль
Этот код выведет нам строку из RGBA чисел.
Это были все методы получения информации из элементов меню. Давайте теперь посмотрим как их выставлять. UI.SetValue(path, 'object_name') Метод, позволяющий выставлять значение в тот или иной элемент в меню. Принимает в себя 3 аргумента - Путь (может состоять из нескольких строк), название самого объекта (checkbox, slider, etc. (тоже строка)) и значение, которое будет установлено.
Пример синтаксиса
А этот включит рейджбот
Давайте сделаем уже какой нибудь хороший код, где можно будет понять взаимодействие получения значения элементов из меню и их "выставление" в меню
JavaScript:
UI.AddHotkey('ping spike on key') //Создаем Hotkey в меню
function a() { //Напишем функцию
if (UI.IsHotkeyActive('Script items', 'ping spike on key')) { //Делаем проверку на активность Hotkey-я
UI.SetValue('Misc', 'Miscellaneous', 'Extended backtracking', 1) //Если он активен, выставим значение Extended backtracking-а 1
}
}
Cheat.RegisterCallback('CreateMove', 'a') //Делаем callback
Этот код будет делать чекбокс Extended backtracking активным если активен Hotkey ping spike on key. Надеюсь все понятно.
Для Slider (Для SliderInt и SliderFloat):
Этот код будет работать одинаково как для SliderInt, так и для SliderFloat:
Этим куском кода мы выставляем значение из нашего слайдера в слайдер Thirdperson.
Для Dropdown:
Чтобы выставить определенное значение в ОБЫЧНЫЙ дропдаун, напишем такой код:
JavaScript:
UI.AddDropdown('Our dropdown', ['1', '2', '3', '4'])
[CODE=javascript]UI.AddDropdown('Tab', ['Rage', 'Anti-Aim', 'Visual', 'Misc']) //Создаем дродаун
UI.AddCheckbox('Set rage tab!') //Создаем чекбокс
if (UI.GetValue('Script items', 'Set rage tab!')) { //Делаем проверку на то, активирован ли чекбокс
UI.SetValue('Script items', 'Tab', 0) //Если условие верно - выставляем дропдауну значение 0, т.е. Rage
}
UI.SetValue('Script items', 'Our dropdown', 0)[/CODE]
Этим мы выставили значение нашего дропдауна на 1, т.е. на нулевой индекс.
Для Multidropdown:
Тут все немного сложнее, давайте для начала напишем легкий код:
Такой код активирует '1' в этом мультидропдауне
Но если мы напишем вместо 0 цифру 4, то в мультидропдауне активируется '3'.
Короче, чтобы сделать элемент в мультидропдауне активным, пропишем следующее:
JavaScript:
UI.AddMultiDropdown('Our dropdown', ['1', '2', '3', '4', '5']) //Создадим мультидропдаун
const dropdown = UI.GetValue('Script items', 'Our dropdown') //Занесем его значение в переменную
const static = 1 << 0 /*0 its index*/ //Определим, какой индекс нужно сделать активным
UI.SetValue('Script items', 'Our dropdown', dropdown | static ) //Сделаем его активным
Этот код делает активным нулевой индекс.
Чтобы сделать элемент в мультидропдауне НЕ активным, напишем следующее.
JavaScript:
UI.AddMultiDropdown('Our dropdown', ['1', '2', '3', '4', '5']) //Создадим мультидропдаун
const dropdown = UI.GetValue('Script items', 'Our dropdown') //Занесем его значение в переменную
const static = 1 << 0 /*0 its index*/ //Определимся с индексом
UI.SetValue('Script items', 'Our dropdown', dropdown &~ static ) //Сделаем этот индекс НЕ активным.
Этот код делать нулевой индекс в мультидропдауне не активным.
Можно даже написать функцию, которая будет автоматически выставлять нужные нам значения:
Запустив кусок этого кода, скрипт сделает Doubletap активным.
UI.SetColor(path, 'object name', value) - Метод позволяет выставлять определенный цвет в колорпикер
Пример:
JavaScript:
UI.AddColorPicker('Colorpicker') //Создаем колорпикер
UI.SetColor('Script items', 'Colorpicker', [255,255,255,255]) //Выставим в этот колорпикер белый цвет
Этот кусок кода создает колорпикер и выставляет в него белый цвет.
На этом вроде бы все, но есть еще два метода класса UI, это
UI.SetEnabled(path, 'object_name', value) - Метод позволяет скрыть элемент в меню. Принимает в себя 3 аргумента - путь, название объекта, и значение.
Покажу наглядно что оно делает:
JavaScript:
UI.AddCheckbox('Checkbox') //Создаем чекбокс
UI.AddSliderInt('Slider', 0, 130) //Создаем Слайдер
function a() { //Пишем функцию
if (UI.GetValue('Script items', 'Checkbox')) { //Делаем проверку на то, активен ли чекбокс или нет
UI.SetEnabled('Script items', 'Slider', 0) //Если активен - скрываем слайдер в меню
} else {
UI.SetEnabled('Script items', 'Slider', 1) //Если НЕ активен - снова делаем слайдер видимым в меню
}
}
Cheat.RegisterCallback('Draw', 'a') //Добавим колбек
Если активирован чекбокс "Checkbox", то Slider скрывается, если нет - появляется.
UI.IsMenuOpen() - Метод позволяет узнать, открыто ли меню.
Code:
JavaScript:
const a = UI.IsMenuOpen() //Заносим в переменную состояние меню
Cheat.Print(a.toString()) //Выводим это состояние в консоль
если меню открыто - выведет в консоль true, иначе false.
На этом вроде бы все. Я искренне надеюсь что это поможет кому-нибудь, ибо я писал это 4 часа ночью.
Жду объективную критику и указание на ошибки.
Могу написать еще несколько таких постов про разные классы по типу Entity и детально разобрать их (возможно со скринами), если это кому-нибудь понадобиться...
Ну для того, чтобы понять что здесь происходит нужно знать хотя бы основы языка JavaScript (learn.javascript.ru - хороший учебник для новичков, учился там же) и английский язык на уровне средней школы.
В этом посте я расскажу подробно о UI классе в кряке вантапа. В UI классе присутствует 18 методов, 9 из которых это сами элементы, 8 из них это взаимодействие с этими элементами и последний метод можно отнести к прочее, поговорим о нем ниже.
(Все элементы которые добавляются с помощью UI класса находятся в меню вантапа по пути Misc - JAVASCRIPT - Script items)
Сначала пройдемся по самим UI элементам, а после по взаимодействию с ними, и так начнем: UI.AddCheckbox('Checkbox_name') - Самый используемый элемент в меню. Имеет 2 состояния - enabled (true) и disabled (false), что позволяет нам понимать, нужно ли выполнять функцию или нет. Принимает в себя один аргумент - строку, содержащую название самого Checkbox-a.
Добавим его следующим образом:
JavaScript:
UI.AddCheckbox('Our checkbox')
UI.AddHotkey('Hotkey_name') - Один из важнейших элементов в меню. Так же имеет 2 состояния - enabled (true) и disabled (false), позволяет нам определить, активирован ли бинд или нет. Принимает в себя один аргумент - строку, содержащую название Hotkey-я.
Добавим его следующим образом:
JavaScript:
UI.AddHotkey('Our hotkey')
UI.AddSliderInt('Int_slider_name', min_int_value, max_int_value) - Слайдер с целыми числами. Имеет количество состояний которое зависит от чисел, указанных в диапазоне слайдера. Позволяет нам узнать число, выставленное пользователем. Принимает в себя 3 аргумента - строку (название слайдера), минимальное целое число слайдера и максимальное целое число слайдера.
Добавим его так:
JavaScript:
UI.AddSliderInt('Our int slider', 0, 10)
UI.AddSliderFloat('float_slider_name', min_float_value, max_float_value) - Все то же самое что и UI.AddSliderInt(Int_slider_name, min_int_value, max_int_value), только принимает в себя не целые, а дробные числа.
Добавим его так:
JavaScript:
UI.AddSliderFloat('Our float slider', 0.0, 10.0)
UI.AddColorPicker('Colorpicker_name') - Колорпикер (Инструмент выбора цвета). Позволяет нам узнать цвет, выбранный пользователем. Принимает в себя один аргумент - строку (название колорпикера).
Добавим так:
JavaScript:
UI.AddColorPicker('Our colorpicker')
UI.AddDropdown('Dropdown_name', ['1st variant', '2nd variant', ..., '55th variant']) - Выпадающий список с возможностью выбрать один из предложенных вариантов.
Позволяет узнать, какой вариант выбрал пользователь в выпадающем списке. Принимает в себя 2 варианта - строку (название выпадающего списка) и массив с произвольным кол-вом вариантов состоящий из строк.
Добавим его так:
UI.AddMultiDropdown('Multidropdown_name', ['1st variant', '2nd variant', ..., '55th variant']) - Выпадающий список с возможностью выбрать несколько из предложенных вариантов. Позволяет узнать, какие варианты выбрал пользователь в выпадающем списке. Принимает в себя 2 варианта - строку (название выпадающего списка) и массив с произвольным кол-вом вариантов состоящий из строк.
Добавим так:
UI.AddTextbox('Textbox_name') - Textbox, в него можно вписывать текст. Позволяет узнать текст, вписанный в него. Принимает в себя один аргумент - строку (название текстбокса)
Добавим его так:
JavaScript:
UI.AddTextbox('Our textbox')
UI.AddLabel('Label name') - Просто строка в меню, можно использовать как описание функции. Принимает в себя один аргумент - строку (название label-а).
Добавим так:
JavaScript:
UI.AddLabel('Our label')
С самими элементами в UI классе мы разобрались, давайте перейдем к методам.
(На этом моменте я понял что я ебнулся, пишу этот пост в 2:08, это пиздец товарищи (@try harder спокойной ночи)) UI.GetValue(path, 'object_name') - Метод, позволяющий получить значение того или иного элемента в меню. Принимает в себя два аргумента - Путь (может состоять из нескольких строк) и название самого объекта (checkbox, slider, etc.), тоже строка.
Пример синтаксиса такой:
Давайте разберем этот метод для каждого элемента:
Для Checkbox:
Пропишем такой код:
JavaScript:
const state = UI.GetValue('Rage', 'GENERAL', 'General', 'Enabled') //Создаем переменную и записываем в нее состояние слайдера.
Cheat.Print(state.toString()) //Выводит это состояние в консоль
Этот код будет получать значение чекбокса Enabled и выводить его в консоль.
В случае если чекбокс активирован, то код выведет в консоль 1 (что можно расценивать как true).
В случае если чекбокс не активирован, то код выведет в консоль 0 (что можно расценивать как false)
Вот пример, как привязать чекбокс к любому действию:
JavaScript:
UI.AddCheckbox('Checkbox') //Создаем чекбокс
if (UI.GetValue('Script items', 'Checkbox')) { //Проверяем, активен ли чекбокс
//Code body //Если да - тело условя начнет выполняться
}
//Если нет - тело условия НЕ будет выполняться
Для Slider (Для SliderInt и SliderFloat): Напишем такой код:
JavaScript:
UI.AddSliderInt('Our slider int', 0, 10) //Создаем наш слайдер
const a = UI.GetValue('Script items', 'Our slider int') //Записываем в переменную значение из слайдера
Cheat.Print(a.toString()) //Выводим в консоль это значение
Он будет выводить в консоль значение от 0 до 10, т.е. то значение, которое выставлено в слайдер.
Работает как для SliderInt, так и для SliderFloat одинаково.
Для Dropdown:
Опять же, напишем такой код:
JavaScript:
UI.AddDropdown('Our dropdown', ['1', '2', '3']) //Создаем выпадающий список
const a = UI.GetValue('Script items', 'Our dropdown') //Заносим его значение в переменную
Cheat.Print(a.toString()) //Выводим это значение в консоль
Он выведет нам в консоль индекс активированного варианта из массива с вариантами.
Например, если активирован 1, скрипт выведет 0, если активирован 2 то 1 и т.д.
Вот пример использования:
JavaScript:
UI.AddDropdown('Tab', ['Rage', 'Anti-Aim', 'Visual', 'Misc']) //Создаем выпадающий список
if (UI.GetValue('Script items', 'Tab') == 0/*0 its index*/) { //Проверяем, включен ли в выпадающем списке именно RAGE
//Тело условия
}
Этот код будет выводить цифры в консоль, но какие же?
Если мы активируем ТОЛЬКО первый аргумент - выведет 1, если мы активируем 1 и 2 то выведет 3, активируем 1, 2 и 3 - выведет 7.
Так как же узнать какой элемент активен, а какой нет?
Для Multidropdown-ов нужно использовать такой синтаксис (просто пример):
JavaScript:
UI.AddMultiDropdown('Our multidropdown', ['1', '2', '3', '4']) //Создаем наш мультидропдаун
const dropdown = UI.GetValue('Script items', 'Our multidropdown') //Заносим его в переменную
zeroIndexEnabled = dropdown & (1 << 0 /*0 its index*/) ? true : false //Создаем переменную, где проверяем, активен ли нулевой индекс или нет
Cheat.Print(zeroIndexEnabled.toString()) //Выводим в консоль переменную с проверкой индекса.
Если активирован нулевой индекс (первый вариант) то в консоль выведет true, иначе false. UI.GetValue() Можно использовать только для вышеперечисленных объектов, перейдем к другим методам получения информации.
UI.IsHotkeyActive(path, 'object_name')
Этот метод используется только для получения состояния Hotkey-я.
Напишем следующее:
JavaScript:
UI.AddHotkey('Our hotkey') //Создаем Hotkey
const a = UI.IsHotkeyActive('Script items', 'Our hotkey') //Заносим его значение в переменную
Cheat.Print(a.toString()) //Выводим это значение в консоль
Если Hotkey активен, то скрипт выведет в консоль 1, иначе 0.
Вот более детальный пример:
JavaScript:
UI.AddHotkey('Damage override') //Создаем Hotkey
if (UI.IsHotkeyActive('Damage override')) { //Делаем проверку на то, активирован ли Hotkey
//Тело условия
}
UI.GetString(path, 'object_name')
Этот метод используется только для получения текста из Textbox-а.
Напишем такой код:
JavaScript:
UI.AddTextbox('Our textbox') //Создаем Textbox
const a = UI.GetString('Script items', 'Our textbox') //Записываем его значение в переменную
Cheat.Print(a) //Выводим это значение в консоль
Этот код выведет в консоль текст, написанный в текстбоксе.
Так-же более детальный пример
JavaScript:
UI.AddTextbox('Name') //Создаем текстбокс
if (UI.GetString('Script items', 'Name') == 'dfrnz') { //Делаем проверку на то, вписан ли в текстбокс dfrnz
Cheat.Print('Hello dfrnz!') //Выводим в консоль если условие выполнилось
}
UI.GetColor(path, 'object_name')
Этот метод используется только для получения цвета из Colorpicker-а.
Используем такой код:
JavaScript:
UI.AddColorPicker('Our colorpicker') //Создаем колорпикер
const a = UI.GetColor('Script items', 'Our colorpicker') //Записываем его значение в переменную
Cheat.Print(a.toString()) //Выводим это значение в консоль
Этот код выведет нам строку из RGBA чисел.
Это были все методы получения информации из элементов меню. Давайте теперь посмотрим как их выставлять. UI.SetValue(path, 'object_name') Метод, позволяющий выставлять значение в тот или иной элемент в меню. Принимает в себя 3 аргумента - Путь (может состоять из нескольких строк), название самого объекта (checkbox, slider, etc. (тоже строка)) и значение, которое будет установлено.
Пример синтаксиса
А этот включит рейджбот
Давайте сделаем уже какой нибудь хороший код, где можно будет понять взаимодействие получения значения элементов из меню и их "выставление" в меню
JavaScript:
UI.AddHotkey('ping spike on key') //Создаем Hotkey в меню
function a() { //Напишем функцию
if (UI.IsHotkeyActive('Script items', 'ping spike on key')) { //Делаем проверку на активность Hotkey-я
UI.SetValue('Misc', 'Miscellaneous', 'Extended backtracking', 1) //Если он активен, выставим значение Extended backtracking-а 1
}
}
Cheat.RegisterCallback('CreateMove', 'a') //Делаем callback
Этот код будет делать чекбокс Extended backtracking активным если активен Hotkey ping spike on key. Надеюсь все понятно.
Для Slider (Для SliderInt и SliderFloat):
Этот код будет работать одинаково как для SliderInt, так и для SliderFloat:
Этим куском кода мы выставляем значение из нашего слайдера в слайдер Thirdperson.
Для Dropdown:
Чтобы выставить определенное значение в ОБЫЧНЫЙ дропдаун, напишем такой код:
JavaScript:
UI.AddDropdown('Our dropdown', ['1', '2', '3', '4'])
[CODE=javascript]UI.AddDropdown('Tab', ['Rage', 'Anti-Aim', 'Visual', 'Misc']) //Создаем дродаун
UI.AddCheckbox('Set rage tab!') //Создаем чекбокс
if (UI.GetValue('Script items', 'Set rage tab!')) { //Делаем проверку на то, активирован ли чекбокс
UI.SetValue('Script items', 'Tab', 0) //Если условие верно - выставляем дропдауну значение 0, т.е. Rage
}
UI.SetValue('Script items', 'Our dropdown', 0)[/CODE]
Этим мы выставили значение нашего дропдауна на 1, т.е. на нулевой индекс.
Для Multidropdown:
Тут все немного сложнее, давайте для начала напишем легкий код:
Такой код активирует '1' в этом мультидропдауне
Но если мы напишем вместо 0 цифру 4, то в мультидропдауне активируется '3'.
Короче, чтобы сделать элемент в мультидропдауне активным, пропишем следующее:
JavaScript:
UI.AddMultiDropdown('Our dropdown', ['1', '2', '3', '4', '5']) //Создадим мультидропдаун
const dropdown = UI.GetValue('Script items', 'Our dropdown') //Занесем его значение в переменную
const static = 1 << 0 /*0 its index*/ //Определим, какой индекс нужно сделать активным
UI.SetValue('Script items', 'Our dropdown', dropdown | static ) //Сделаем его активным
Этот код делает активным нулевой индекс.
Чтобы сделать элемент в мультидропдауне НЕ активным, напишем следующее.
JavaScript:
UI.AddMultiDropdown('Our dropdown', ['1', '2', '3', '4', '5']) //Создадим мультидропдаун
const dropdown = UI.GetValue('Script items', 'Our dropdown') //Занесем его значение в переменную
const static = 1 << 0 /*0 its index*/ //Определимся с индексом
UI.SetValue('Script items', 'Our dropdown', dropdown &~ static ) //Сделаем этот индекс НЕ активным.
Этот код делать нулевой индекс в мультидропдауне не активным.
Можно даже написать функцию, которая будет автоматически выставлять нужные нам значения:
Запустив кусок этого кода, скрипт сделает Doubletap активным.
UI.SetColor(path, 'object name', value) - Метод позволяет выставлять определенный цвет в колорпикер
Пример:
JavaScript:
UI.AddColorPicker('Colorpicker') //Создаем колорпикер
UI.SetColor('Script items', 'Colorpicker', [255,255,255,255]) //Выставим в этот колорпикер белый цвет
Этот кусок кода создает колорпикер и выставляет в него белый цвет.
На этом вроде бы все, но есть еще два метода класса UI, это
UI.SetEnabled(path, 'object_name', value) - Метод позволяет скрыть элемент в меню. Принимает в себя 3 аргумента - путь, название объекта, и значение.
Покажу наглядно что оно делает:
JavaScript:
UI.AddCheckbox('Checkbox') //Создаем чекбокс
UI.AddSliderInt('Slider', 0, 130) //Создаем Слайдер
function a() { //Пишем функцию
if (UI.GetValue('Script items', 'Checkbox')) { //Делаем проверку на то, активен ли чекбокс или нет
UI.SetEnabled('Script items', 'Slider', 0) //Если активен - скрываем слайдер в меню
} else {
UI.SetEnabled('Script items', 'Slider', 1) //Если НЕ активен - снова делаем слайдер видимым в меню
}
}
Cheat.RegisterCallback('Draw', 'a') //Добавим колбек
Если активирован чекбокс "Checkbox", то Slider скрывается, если нет - появляется.
UI.IsMenuOpen() - Метод позволяет узнать, открыто ли меню.
Code:
JavaScript:
const a = UI.IsMenuOpen() //Заносим в переменную состояние меню
Cheat.Print(a.toString()) //Выводим это состояние в консоль
если меню открыто - выведет в консоль true, иначе false.
На этом вроде бы все. Я искренне надеюсь что это поможет кому-нибудь, ибо я писал это 4 часа ночью.
Жду объективную критику и указание на ошибки.
Могу написать еще несколько таких постов про разные классы по типу Entity и детально разобрать их (возможно со скринами), если это кому-нибудь понадобиться...