Делаем новые миссии. CLEO - скрипты, cutscene, статьи, программы. Игровые новости.
 
1.7.13 15:52 |

Дополнительные команды

Раздел: Основы скриптинга | Автор: yelmi | Рейтинг: 0.00 (0) | Хитов 3616
INC - эта команда увеличивает значение переменной, переданной как первый параметр, на значение второго параметра. Второй параметр может не использоваться, тогда вместо него будет установлена 1.

Код:
Inc($IntVariable, $Value)
=
$IntVariable += $Value

Inc(1@)
=
1@ += 1


DEC - эта команда уменьшает значение переменной, переданной как первый параметр, на значение второго параметра. Второй параметр может не использоваться, тогда вместо него будет установлена 1.

Код:
Dec($IntVariable, $Value)
=
$IntVariable -= $Value

Dec(1@)
=
1@ -= 1


MUL - эта команда умножает значение переменной, переданной как первый параметр, на значение второго параметра.

Код:
Mul($IntVariable, $Value)
=
$IntVariable = $IntVariable * $Value


Второй параметр может не использоваться, тогда вместо него будет установлена 2.

Код:
Mul(1@)
=
1@ = 1@ * 2


DIV - эта команда делит значение переменной, переданной как первый параметр, на значение второго параметра.

Код:
Div($IntVariable, $Value)
=
$IntVariable = $IntVariable / $Value


Второй параметр может не использоваться, тогда вместо него будет установлена 2.

Код:
Div(1@)
=
1@ = 1@ / 2


(sys) ALLOC* - эта команда устанавливает адрес памяти для переменной. Должна использоваться только для переменных с ТЕКСТОВЫМИ именами. Для остальных адрес памяти устанавливается по их имени: переменная $40 всегда будет иметь ячейку памяти #40.

Код:
Alloc($MyVar, 40) - переменная $MyVar будет иметь адрес 40.


команды, обозначенные словом (sys), не отражаются в коде, а являются вспомогательными для компилятора.

SQR - эта команда вычисляет квадрат значения (вторую степень) переменной, переданной в качестве параметра.

Код:
sqr($var) 
=
$var *= $var


Тип переменной должен быть определен.

RANDOM - эта функция возвращает случайное число в интервале, указанном параметрами.

Код:
$rnd = random(1, $high)


Данную функцию можно использовать как для типа Integer, так и для типа Float. Выбор опкода будет зависеть от типа объявленной переменной, в которую записывается случайное значение ($rnd).

HEX..END

Данная конструкция предназначена для прямой записи шестнадцатиричных значений в SCM или IMG файл*. Например:

Код:
hex
04 00 02 0800 04 01
end


Это будет тоже самое, что

Код:
0004: $2 = 1


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

Код:
:get_offset
hex
04 00 02 $PLAYER_CHAR 01 @get_offset
end


Это будет тоже самое, что

Код:
0004: $PLAYER_CHAR = @get_offset


Также можно использовать в конструкции hex..end тип aDMA. Это удобно использовать для записи чисел. Число после знака & может быть как положительным, так и отрицательным; как в десятичном, так и в шестнадцатиричном формате.

Код:
hex
&1000 &-0xA33500
end


Также можно компилировать строковые значения. Для этого заключите слово в двойные кавычки ("...") и поставьте перед ними пробел.

Например,

Код:
hex
09 "Word1"span class="re4"> 20 "Word2"
end


Допускается написание только одного слова в кавычках. Для записи фразы оформите каждое слово в кавычки. Для компиляции пробела поставьте между словами число 20 (ASCII код символа пробел).

Рекомендуется только для опытных скриптеров. Любые ошибки повлекут невозможность последующего декомпилирования файла и чтения его игрой.

 

  1 2 3 4 5 6 7 8 9 10  

Родственные ссылки
» Другие статьи раздела Основы скриптинга
» Эта статья от пользователя yelmi

5 cамых читаемых статей из раздела Основы скриптинга:
» Работа со звуками в GTA San Andreas
» Директивы
» Контроль клавиатуры
» External Script – что это такое и как с ним работать?
» Панель, или список товаров. Часть II.

5 последних статей раздела Основы скриптинга:
» Директивы
» Дополнительные команды
» Ключевые слова
» Классы
» Циклы

¤ Перевести статью в страницу для печати
¤ Послать эту cтатью другу

MyArticles 0.6 beta for RUNCMS: by RunCms.ru


Реклама

Вверх     Вернуться на главную. Вход в Систему. Статьи. Скачать. Миссии. ФОРУМ Обратная связь.   
   
   
   
   
- Генерация страницы: 0.13 секунд -