GTA: San Andreas Туториалы Любой

Пишем свой первый CLEO-скрипт на деньги и спавн авто

LISKOV ⏱ 1 мин 👁 14 💬 0

Хочешь почувствовать себя богом Сан-Андреаса? В этом уроке мы создадим скрипт, который по нажатию одной клавиши выдаст тебе $500 000 и заспавнит…

Хочешь почувствовать себя богом Сан-Андреаса? В этом уроке мы создадим скрипт, который по нажатию одной клавиши выдаст тебе $500 000 и заспавнит топовый Infernus прямо перед тобой.

Что нам понадобится:

  1. Sanny Builder 3 — основной инструмент для написания и компиляции кода.
  2. Библиотека CLEO 4 — должна быть установлена в папку с игрой.

Шаг 1: Подготовка

Открой Sanny Builder. Создай новый файл (Ctrl+N) и убедись, что в нижнем правом углу выбран режим «San Andreas».

Шаг 2: Пишем код

Скопируй этот код полностью. Я снабдил каждую строку подробным комментарием, чтобы ты понимал, что происходит «под капотом».

// ЗАГОЛОВОК СКРИПТА
// Директива говорит компилятору, что это внешний скрипт для библиотеки CLEO
{$CLEO .cs}

// ОБЪЯВЛЕНИЕ КОНСТАНТ
// Мы выносим значения сюда, чтобы их было легко менять в будущем
const
    MONEY_AMOUNT = 500000 // Сумма денег ($500 000)
    CAR_MODEL_ID = 411      // ID модели Infernus
    TRIGGER_KEY = 77         // Код клавиши 'M' (в формате Virtual Key)
end

// ОСНОВНОЙ ЦИКЛ СКРИПТА
:MAIN_LOOP
// Обязательная задержка 0 мс. 
// Без неё скрипт будет выполняться слишком быстро и игра просто вылетит
wait 0 

// Проверка: игрок вообще существует и загружен?
if
    Player.Defined(0)
jf @MAIN_LOOP // Если нет, прыгаем в начало цикла и ждем

// Проверка: нажата ли наша клавиша TRIGGER_KEY (M)
if
    0AB0: key_pressed TRIGGER_KEY
then
    // Защита от "дребезга": ждем, пока игрок отпустит кнопку,
    // чтобы скрипт не сработал 100 раз за секунду
    while 0AB0: key_pressed TRIGGER_KEY
        wait 0
    end

    // --- БЛОК 1: ДЕНЬГИ ---
    // Добавляем указанную сумму к текущему балансу игрока
    Player.Money(0) += MONEY_AMOUNT
    // Выводим уведомление в левый верхний угол (как в миссиях)
    03E5: show_text_lowpriority "GETTING PAID!" time 2000 

    // --- БЛОК 2: СПАВН МАШИНЫ ---
    // 1. Получаем текущие координаты игрока
    // 1@, 2@, 3@ — это временные переменные для координат X, Y, Z
    04C4: store_actor $PLAYER_ACTOR position_to 1@ 2@ 3@
    
    // 2. Смещаем координату X чуть вперед, чтобы машина не заспавнилась внутри игрока
    1@ += 3.0 

    // 3. Загружаем 3D-модель в оперативную память
    0247: load_model CAR_MODEL_ID
    
    // Ждем, пока модель полностью загрузится (обязательно!)
    while not 0248: model CAR_MODEL_ID available
        wait 0
    end

    // 4. Создаем машину на подготовленных координатах
    // $MY_CAR — переменная, в которую сохраняется ссылка на созданную тачку
    00A5: $MY_CAR = create_car CAR_MODEL_ID at 1@ 2@ 3@
    
    // Поворачиваем машину носом к игроку для удобства
    0175: set_car $MY_CAR z_angle_to_actor $PLAYER_ACTOR 

    // 5. Выгружаем модель из памяти, она нам больше не нужна
    0249: release_model CAR_MODEL_ID

    // Пишем сообщение об успехе
    03E5: show_text_lowpriority "INFERNUS SPWANED!" time 2000
end

// Бесконечный повтор цикла
jump @MAIN_LOOP

Шаг 3: Компиляция

  1. Нажми F7 (или иконку шестеренки) в Sanny Builder.
  2. Программа предложит сохранить файл. Сохрани его под любым именем (например, MoneyAndCar.cs) прямо в папку GTA San Andreas/CLEO/.

Шаг 4: Тест в игре

Запускай игру, выходи на улицу и жми клавишу M. Если всё сделано правильно, ты услышишь звук зачисления денег, а перед тобой материализуется спорткар.


Разбор важных команд (Опкодов):

  • 0AB0: Универсальная команда проверки нажатия любой клавиши.
  • 0247 / 0248: Золотое правило — никогда не спавни объект, пока не убедишься, что его модель загружена в память. Это причина 90% вылетов модов.
  • 00A5: Главная команда для создания любого транспорта.

Поделиться
ВКонтакте Telegram
Автор материала
LISKOV
7 материалов на сайте
или чтобы комментировать
Статистика сайта
📰 6 новостей
📖 7 статей
📦 0 файлов
💬 0 тем форума
👥 3 участников
0 онлайн