Помощь в программировании.
Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.

Помощь в программировании. PHP, HTTP, Java, Cleo, AMX.
 
ФорумПоследние изображенияПоискРегистрацияВход

 

 [Cleo] FAQ

Перейти вниз 
АвторСообщение
Admin
Мастер Программного Форума
Мастер Программного Форума
Admin


Сообщения : 35
Ваши Заработанные Очки : 10086
Репутация : 0
Дата регистрации : 2012-12-15
Возраст : 28
Откуда : Muravlenko

[Cleo] FAQ Empty
СообщениеТема: [Cleo] FAQ   [Cleo] FAQ Icon_minitimeСб Дек 15, 2012 2:22 pm

Чем отличается CLEO скрипт, от скриптов main.scm?
По большому счету отличий практически нет. CLEO – скрипты с расширением .cs не нуждаются в запуске, то есть они стартуют при запуске игры самостоятельно.
В CLEO – скриптах не рекомендуется использовать глобальные переменные, спокойно можно использовать только $ONMISSION, $PLAYER_ACTOR, $PLAYER_CHAR, а также локальные от 0@ до 31@. Так же нельзя использовать опкод 004E: end_thread.
Если Вам необходимо остановить Ваш CLEO – скрипт используйте опкод 0A93: end_custom_thread.

Есть ли шаблон для CLEO - скрипта?
Шаблоном для любого CLEO-скрипта может быть только одна строка
{$CLEO}
все остальное зависит от самого скрипта и его назначения.
{$CLEO} - директива компилятора, она сообщает компилятору о том, что скрипт нужно компилировать без заголовка.

Как написать простой CLEO-скрипт?
Для начала нужно определиться, что желаем увидеть в результате.

Допустим нам необходимо организовать парковку транспорта в определенном месте.
Для этого нет необходимости проверять существует ли игрок или нет, а так же нет необходимости организовывать бесконечный цикл. Почему пишем скрипт:


Код:
Код:
{$CLEO}
wait 0
014B: 0@ = init_parked_car_generator #MTBIKE color -1 -1 0 alarm 0 door_lock 0 0 10000 at 2470.5559 -1670.0945 12.1164 angle 196.6768
0A17: set_parked_car_generator 0@ flag 1
014C: set_parked_car_generator 0@ cars_to_generate_to 101

014B: 1@ = init_parked_car_generator #ADMIRAL color -1 -1 0 alarm 0 door_lock 0 0 10000 at 2476.3293 -1678.3358 13.338 angle 247.8133
0A17: set_parked_car_generator 1@ flag 1
014C: set_parked_car_generator 1@ cars_to_generate_to 101
// Таким образом можно организовать парковку до 32 авто
0A93: end_custom_thread

Если же есть необходимость, чтобы скрипт работал постоянно, то есть организовать бесконечный цикл,
поступаем следующим образом:



Код:
{$CLEO}
0000:

:HEALTH
0001: wait 0 ms
00D6: if
0256: player $PLAYER_CHAR defined
004D: jump_if_false @HEALTH
0226: 0@ = actor $PLAYER_ACTOR health
if
0019: 0@ > 25
jf @HEALTH_1
jump @HEALTH

:HEALTH_1
00A0: store_actor $PLAYER_ACTOR position_to 1@ 2@ 3@
018C: play_sound 1053 at 1@ 2@ 3@
wait 300
jump @HEALTH

0000: - опкод не обрабатываемый игрой, он нам нужен здесь лишь для того, чтобы не допустить возврат на первую метку скрипта.
Для чего это нужно делать читайте в Sanny Builder Help: CLEO 3 Code Library/FAQ по CLEO 3

Как запустить нужный мне CLEO – скрипт из другого CLEO – скрипта?
Для начала необходимо усвоить одно условие: все скрипты с расширением .cs запускаются при старте игры.
Если есть необходимость не запускать скрипт при старте игры, а запустить его при выполнении определенного условия в другом скрипте.
Для этого нужный нам скрипт необходимо компилировать с расширением отличным от .cs. Например с расширением .my.
Просто пропишите в директиве {$CLEO .my}.
Для примера напишем скрипт где будем проверять нажатие определенной клавиши, и если клавиша будет нажата запускаем другой скрипт.


Код:
{$CLEO}
0000:

:START
0001: wait 0 ms
00D6: if and
0256: player $PLAYER_CHAR defined
0AB0: key_pressed 53 // клавиша «5»
004D: jump_if_false @START
0A92: create_custom_thread "text.my"
0A93: end_custom_thread

Теперь пишем скрипт text.my, для наглядности выводим текст бокс

Код:
{$CLEO .my}
wait 0
03E5: show_text_box 'HELP101' // Respect can be earned be passing certain missions, killing rival gangs members, gaining territory and tagging.
0A93: end_custom_thread


сохраняем как text.txt а затем компилируем. У нас получилось два CLEO – скрипта START.cs и text.my. Все запускаем игру и при нажатии клавиши «5» наблюдаем работу скрипта text.my.
Вернуться к началу Перейти вниз
https://programmsupprot.profiforum.ru
 
[Cleo] FAQ
Вернуться к началу 
Страница 1 из 1
 Похожие темы
-
» [Cleo] Анимации
» [Cleo] CordMaster v3.0
» [Cleo] Создаем Меню
» [Cleo] Создаем ТП по маркерам
» [CLEO] Коды к клавишам

Права доступа к этому форуму:Вы не можете отвечать на сообщения
Помощь в программировании. :: Программирование для Gta, Sa:mp :: Cleo Программирование-
Перейти: