Любой скрипт начинается с класса, унаследованного от Module. Атрибуты класса описывают, как модуль отображается в меню, а методы задают его поведение.
from rockstar import Module, event
class AutoSprint(Module):
name = "AutoSprint" # имя в меню
category = "Movement" # вкладка / категория
description = "Автоспринт при движении вперёд"
def on_enable(self):
# вызывается при включении модуля
self.notify(f"{self.name} включён")
def on_disable(self):
# вызывается при выключении
pass
@event("update")
def on_update(self):
# вызывается каждый игровой тик
player = self.client.player
if player.is_moving:
player.sprinting = TrueАтрибуты класса определяют, как модуль выглядит и ведёт себя в интерфейсе клиента:
| Атрибут | Описание |
|---|---|
name | Отображаемое имя модуля в меню. Обязательное. |
category | Категория: Combat, Movement, Render, Player, Misc. |
description | Краткое описание — показывается в подсказке. |
bind | Клавиша включения по умолчанию, например "R". |
Клиент вызывает методы модуля в предсказуемом порядке:
__init__ — один раз при загрузке скрипта. Здесь объявляют настройки.on_enable — каждый раз при включении модуля.@event) — пока модуль включён.on_disable — при выключении модуля.Настройки объявляются в __init__ и автоматически появляются в меню под модулем. Их значения сохраняются в конфиге пользователя.
def __init__(self):
super().__init__()
self.distance = self.add_slider("Дистанция", default=3.5, min=3.0, max=6.0)
self.silent = self.add_bool("Silent", default=True)
self.mode = self.add_mode("Режим", ["Smooth", "Instant"], default="Smooth")Доступ к значению — через .value. Подробнее о типах настроек — в разделе Настройки и бинды.