Четверг, 25.04.2024, 04:30
Качественные скрипты, моды и дополнения для GTA без регистрации
Главная Регистрация Вход
Приветствую Вас, Гость · RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Форум » Игры серии ГТА » Скриптинг » Вопросы по созданию КЛЕО-скриптов (Вопросы по опкодам, кодингу и др.)
Вопросы по созданию КЛЕО-скриптов
OptimusДата: Вторник, 13.09.2011, 18:00 | Сообщение # 826
Группа: Заблокированные
Сообщений: 27
Статус: Offline
Den_spb, Попробую

Добавлено (12.09.2011, 21:22)
---------------------------------------------
Den_spb,С работало ,всё работает ,спасибо тебе

Добавлено (13.09.2011, 18:00)
---------------------------------------------
Привет всем!Я про скрипт Трансформаций,мне нужны советы как его улучшить что бы красиво смотрелось,В ЛС.

 
андрей1981Дата: Среда, 28.09.2011, 09:09 | Сообщение # 827
Группа: Пользователи
Сообщений: 12
Статус: Offline
хочу сделать чтобы у минигана был звук который подгружается из скрипта,


не работает

Добавлено (28.09.2011, 09:09)
---------------------------------------------
вот еще вариант, звук проигрывается, но нужно чтобы когда кнопку отжимаешь звук прекращался

 
Den_spbДата: Среда, 28.09.2011, 16:05 | Сообщение # 828
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (андрей1981)
не работает
Вероятно дело в этом:
Code
Audiostream.PerformAction(1@, PLAY)  
Audiostream.Loop(1@, 1)  
wait 0  
Audiostream.Release(1@)
После старта воспроизведения звук почти сразу выгружается. В результате воспроизведение останавливается.
Я бы предложил такой вариант кода:
Code
{$CLEO}
wait 0
while true
     wait 0
     if
         not player.Defined($player_char)
     then
         continue
     end
     if and
         02D8: actor $PLAYER_ACTOR current_weapon == 38  
         00E1: player 0 pressed_key 6
     then
         if
             0@ == 0
         then
             Audiostream.Load3D(1@, "CLEO\MUSIC03.MP3")
             repeat
                 wait 0
             until Audiostream.Load3D(1@, "CLEO\MUSIC03.MP3")
             Audiostream.PerformAction(1@, PLAY)  
             Audiostream.Loop(1@, 1)
             0@ = 1             
         end             
     else
         if  
             0@ == 1
         then
             Audiostream.PerformAction(1@, STOP)
             audiostream.Release(1@)
             0@ = 0
         end         
     end
end
 
444andrei444Дата: Четверг, 29.09.2011, 17:32 | Сообщение # 829
Группа: Проверенные
Сообщений: 15
Статус: Offline
у меня вопрос как создать поезд
06D8: 0@ = create_train_at 1961.1072 -1956.578 13.7526 type 15 direction 1 не работает. наверное надо модельку4 загрузить но я не знаю какую
 
андрей1981Дата: Четверг, 29.09.2011, 19:43 | Сообщение # 830
Группа: Пользователи
Сообщений: 12
Статус: Offline
скомпилировал

но чето не работает
 
Den_spbДата: Пятница, 30.09.2011, 02:35 | Сообщение # 831
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (444andrei444)
наверное надо модельку4 загрузить но я не знаю какую
Нужно предварительно загрузить модели вагонов, из которых состоит поезд данного типа. Стандартное распределение моделей приведено в справке SB: Документация по SCM - GTA SA - Типы поездов.
Поезд создаётся в точке одного из маршрутов, которая находится ближе остальных к месту, указанному в опкоде.

Quote (андрей1981)
но чето не работает
Надо заменить Load3D на Load в двух местах - тогда будет работать.
 
андрей1981Дата: Суббота, 01.10.2011, 15:41 | Сообщение # 832
Группа: Пользователи
Сообщений: 12
Статус: Offline
Den_spb спасибо огромное все работает
 
VitalДата: Суббота, 29.10.2011, 22:34 | Сообщение # 833
Группа: Проверенные
Сообщений: 206
Статус: Offline
Вот вопросик: как работать с уровнем шума?
Опкод 0855
0855: get_actor -1 noise_level_at 160@ 161@ 162@ store_to 166@
Я пробовал, но что-то тупило.
И как сделать отображение уровня шума, если имеется лишь опкод, определяющий его и записывающий в переменную?


SCRIPTER
 
Den_spbДата: Суббота, 29.10.2011, 22:42 | Сообщение # 834
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (Vital)
Я пробовал, но что-то тупило.
Я этим опкодом не пользовался. Посмотри, как он применяется в main.scm:
Code
Actor.StorePos($PLAYER_ACTOR, 160@, 161@, 162@)
if  
   79@ == 1  
jf @GUNS1_17130  
0855: get_actor -1 noise_level_at 160@ 161@ 162@ store_to 166@  
166@ *= 1.6
...


Quote (Vital)
И как сделать отображение уровня шума,
В main.scm это вроде делается так:
Code
04F7: status_text $BURGLARY_NOISE_I type 1 line 2 GXT 'BURG25' // global_variable  // ђ“M
 
ILYALIONДата: Воскресенье, 06.11.2011, 20:03 | Сообщение # 835
Группа: Проверенные
Сообщений: 325
Статус: Offline
Что означают последние две единицы в данном опкоде?
0AE2: 0@ = random_vehicle_near_point 0@ 1@ 2@ in_radius 10.0 find_next 1 pass_wrecked 1 //IF and SET

В опкоде 0431: car $Car car_passenger_seat_free 0 какие есть номера мест?

Этот опкод записывает координаты актёра в переменные?
00A0: store_actor $PLAYER_ACTOR position_to $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3


Сообщение отредактировал ILYALION - Воскресенье, 06.11.2011, 20:15
 
VitalДата: Воскресенье, 06.11.2011, 20:08 | Сообщение # 836
Группа: Проверенные
Сообщений: 206
Статус: Offline
Еще вопросик. Как полностью убрать банду из определенной зоны? Я пробовал так:
Code
076C: set_zone s$ZONE2 gang 0 density_to 0

(Я до этого сделал возможность самому ставить банды в зону, где находится игрок)
Банду я после этого не встречал, но цвет этой банды остался на карте.
Так как же полностью убрать банду из зоны? Чтобы ни цвета, ни мокрого места от нее не осталось, даже на карте.


SCRIPTER
 
kenkingДата: Понедельник, 07.11.2011, 10:57 | Сообщение # 837
Группа: Проверенные
Сообщений: 22
Статус: Offline
Quote (ILYALION)
Что означают последние две единицы в данном опкоде?
0AE2: 0@ = random_vehicle_near_point 0@ 1@ 2@ in_radius 10.0 find_next 1 pass_wrecked 1 //IF and SET

Последняя цифра - флаг, задающий пропуск взорванных машин (1 или true (истина) - взорванная машина пропускается, 0 или false (ложь) - не пропускается).
Предпоследняя цифра - флаг задающий поиск, начиная с последнего найденного этим опкодом (чтобы не натыкаться постоянно на одну и ту же машину при цикличном поиске). Значения аналогичны.

Quote (ILYALION)
В опкоде 0431: car $Car car_passenger_seat_free 0 какие есть номера мест?

0-2, можно поставить -1 (любое свободное место)

Quote (ILYALION)
Этот опкод записывает координаты актёра в переменные?
00A0: store_actor $PLAYER_ACTOR position_to $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3

да


Сообщение отредактировал kenking - Вторник, 08.11.2011, 09:42
 
ILYALIONДата: Понедельник, 07.11.2011, 12:26 | Сообщение # 838
Группа: Проверенные
Сообщений: 325
Статус: Offline
Пишу скрипт, в котором водители, едущие на дороге, запираются в своих машинах.
Code
{$CLEO}
wait 3000   
:start
wait 0  
if   
     Player.Defined($PLAYER_CHAR)
then
     if
         $ONMISSION == 0
     then
         00A0: store_actor $PLAYER_ACTOR position_to 1@ 2@ 3@  
         0AE2: 0@ = random_vehicle_near_point 1@ 2@ 3@ in_radius 200.0 find_next 1 pass_wrecked 1 //IF and SET
     end  
     if
         056E: 0@
         then
             if
                 8431:   not car 0@ passenger_seat_free 0
             then
                 car.DoorStatus(0@) = 2
             end
         end
     end
jump @start   
Но в игре все машины открыты. Почему?
 
KaZySДата: Понедельник, 07.11.2011, 13:53 | Сообщение # 839
Группа: Пользователи
Сообщений: 8
Статус: Offline
Den_spb, составь пожалуйста скрипт, который при нажатии на определёную кнопку будет отнимать 24хп у актёра..буду очень благодарен...
 
Den_spbДата: Понедельник, 07.11.2011, 16:46 | Сообщение # 840
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (ILYALION)
Пишу скрипт, в котором водители, едущие на дороге, запираются в своих машинах.

Думаю не работает потому, что неправильно оформлен поиск машин. Попробуй так:
Code
{$CLEO}
wait 0
while true
         wait 0
         if
             0AE2: 0@ = random_vehicle_near_point 0.0 0.0 0.0 in_radius 10000.0 find_next 0 pass_wrecked 1 //IF and SET
         then
             repeat
                 0441: 1@ = car 0@ model      
                 0AA7: call_function 0x4C5AA0 num_params 1 pop 1 1@ 1@ // isModelCar
                 if and
                     1@ == True
                     8431:   not car 0@ passenger_seat_free 0      
                 then
                     020A: set_car 0@ door_status_to 2      
                 end
             until 8AE2: not 0@ = random_vehicle_near_point 0.0 0.0 0.0 in_radius 10000.0 find_next 1 pass_wrecked 1 //IF and SE
         end          
end
Добавил проверку на то, что транспортное средство имеет модель автомобиля.

Quote (KaZyS)
Den_spb, составь пожалуйста скрипт, который при нажатии на определёную кнопку будет отнимать 24хп у актёра..буду очень благодарен...

Code
{$CLEO}
wait 0
while true
         wait 0
         if
             not player.Defined($player_char)
         then
             continue
         end
         0226: 0@ = actor $player_actor health
         if and
             0AB0: 8
             0@ >= 24
         then
             0@ -= 24
             0223: set_actor $player_actor health_to 0@
             repeat
                 wait 0
             until 8AB0: 8      
         end
end
В следующий раз читаем название темы, прежде чем писать.
 
Форум » Игры серии ГТА » Скриптинг » Вопросы по созданию КЛЕО-скриптов (Вопросы по опкодам, кодингу и др.)
Поиск: