CLEO: Структура любого скрипта

Моддинг GTA. Инструкции по моддингу в GTA.
Сообщение
Автор
Аватара пользователя
Не в сети
Михаил
Автор темы
Администратор
    • Подробная инфа
      • Сообщения: 4419
        Возраст: 22
        Зарегистрирован: 25 окт 2011, 16:29
        Благодарил (а): 104 раза
        Поблагодарили: 308 раз
        Награды: 20
        Репутация: 258
        Любимая игра: GTA IV
        Любимый мод GTA: S.A. GTA IV
        Фанат игры: L.A. Noire
        Откуда: Омск
        :
        За заслуги Писатель Эксперт GTA 5 Фотограф Режиссер Файл Менеджер Старый знакомый 1 Место в Конкурсе 2 Место в Конкурсе

#1 Сообщение Михаил » 16 ноя 2011, 02:57

CLEO: Структура любого скрипта

Итак, в этом уроке мы разберём структуру любого CLEO-скрипта, также скачайте Sanny Builder по этой ссылке: здесь.
Итак, пример CLEO-скрипта (он создаёт возле ворот зоны 69 маркер перемещающий игрока внутрь):
// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .CS}

//-------------MAIN---------------
0000: NOP

:NONAME_2
wait 0
if
0101: actor $PLAYER_ACTOR in_sphere 214.0 1875.957 13.1406 radius 1.5 1.5 10.5 sphere 1 stopped
else_jump @NONAME_2
select_interior 0
0860: link_actor $PLAYER_ACTOR to_interior 0
Actor.PutAt($PLAYER_ACTOR, 214.0, 1870.319, 13.1406)
fade 1 13
wait 2000
jump @NONAME_2

К любой строчке можно добавлять комментарий (по правилам C++), выглядит это так:
:NONAME_2 //название потока
wait 0 //ждать 0 милисекунд
if //если
0101: actor $PLAYER_ACTOR in_sphere 214.0 1875.957 13.1406 radius 1.5 1.5 10.5 sphere 1 stopped //игрок остановится в маркере радиусом 1.5 1.5 10.5 находящемся в координатах 214.0 1875.957 13.1406
else_jump @NONAME_2 //иначе вернутся к началу потока
select_interior 0 //если игрок встал в маркер
0860: link_actor $PLAYER_ACTOR to_interior 0 //то переместить его
Actor.PutAt($PLAYER_ACTOR, 214.0, 1870.319, 13.1406) //переместить его в эту точку
fade 1 13
wait 2000 //ждать две секундыjump @NONAME_2 //вернутся к началу потока
Как мы видим скрипт достаточно короткий, хотя создаёт маркер и перемещает игрока с одной точки в другую. А теперь рассмотрим теоретическую структуру скрипта:
{$cleo .cs} //Даём понять Sanny Builder, что это именно CLEO-скрипт
//----------------------------------Main-------------------------------
0000:nop
:potock //открывает поток, слово стоящее после двоеточия называется меткой
wait 0 //задержка, её нужно делать Число может быть не более 20000 (20 секунд)
//здесь находится код скрипта
NNNN: //Здесь находится опкод, их может быть несколько (где N - символ (цифра или буква)). Список опкодов можно посмотреть в справке Sanny Buildera.
wait 2000 //задержка перед концом скрипта
end_thread // Завершает скрипт, можно также использовать эту команду: jump @potok

После того, как закончили написание скрипта, сохраняем его с расширением .cs в папку CLEO. На этом всё. В следующем уроке: CLEO: пикапы оружия


Автор: © Михаил


Вернуться в «Modding GTA»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость