You are not logged in.
Всем прет!
Может кто сказать как это с помощью клео скриптинга сделать, или какие опкоды для этого нужны?
Вот что именно - http://www.youtube.com/watch?v=DCuhlsfM3Go
Last edited by PoMu4 (21-09-2008 20:14)
Offline
В общем вот он сабжект:
034E: move_object 0@ to 1@ 2@ 3@ speed 13@ 16@ 19@ flag 1
Судя по описанию, он должен двигать объект 0@ в точку с компонентами скорости 13@ 16@ 19@ по осям координат X Y и Z. Но есть одна нестыковка: в майне он используется в качестве проверки, т.е по сути является каким-то логическим оператором и возвращает значение булева типа: True или False.
Например открытие пневматических дверей в миссии "Черный проект" осуществляется так:
if 034E: move_object $OBJECT_M_A51_BLASTDOORR to 219.941 1874.571 13.903 speed 0.1 0.0 0.0 flag 0 jf @MAF4_14346
и
if 034E: move_object $OBJECT_M_A51_BLASTDOORL to 207.842 1874.571 13.903 speed 0.1 0.0 0.0 flag 0 jf @MAF4_14419
Существует и обратный ему опкод:
834E: not move_object $2658 to 1903.383 967.62 15.438 speed 0.0 0.0 0.05 flag 0
Двигать объекты с этим опкодом у меня не получилось - может кто-то знает как сделать так чтобы получилось, а?:cry:
Offline
@Alien - ставь опкод в цикл все будет работать:
{$CLEO} 0A24: enable_military_zones_wanted_level 1 0@ = Object.Create(3095, 268.664, 1884.06, 15.925) 034D: rotate_object 0@ from_angle 90.0 to_angle 90.0 flag 0 Actor.PutAt($PLAYER_ACTOR, 271.2008, 1884.6787, 19.029) while true wait 0 034E: move_object 0@ to 276.14 1884.06 15.924 speed 0.05 0.0 0.0 flag 0 end
Offline
пнятненько, щас заценю...
Offline
У меня возникло 2 вопроса:
1. Существует ли опкод наподобие 06D7 (включение и отключение траффика поездов в ГТА СА), чтобы в нем можно было изменять частоту появления поездов?
2. При декомпиляции скрипта с помощью СБ 3.04 возникает сообщение об ошибке: "Неизвестный опкод 4A6D по адресу 9175". Известен ли кому такой опкод? И ещё: я вписал в консоли команду ignore unknown, но при попытке декомпиляции снова вылетает та же ошибка. Что можете посоветовать в такой ситуации?
Offline
угу у мну тоже эта консоль не работает - пишу и ничего...
А ты попробуй в файле SASCM строчку 0A6D: ... поменять на 4A6D: ...
Offline
2. При декомпиляции скрипта с помощью СБ 3.04 возникает сообщение об ошибке: "Неизвестный опкод 4A6D по адресу 9175". Известен ли кому такой опкод? И ещё: я вписал в консоли команду ignore unknown, но при попытке декомпиляции снова вылетает та же ошибка. Что можете посоветовать в такой ситуации?
вместо ввода команд в консоль можно использовать прямое переключение нужных опций. Для этого есть специальная кнопка справа от кнопки запуска игры.
Если ты пытаешься декомпилировать CLEO-скрипт, то кроме IGNORE_UNKNOWN нужно включить опцию SKIP_SCM_HEADER
И ни в коем случае не надо менять никакие INI файлы. В том скрипте скорее всего используются продвинутые методы кодинга с использованием hex-вставок. Там нет новых опкодов.
Offline
Спасибо, помогло. Скрипт удалось декомпилировать. Там действительно используется hex..end.
Хотел ещё узнать: "09CF: set_train $Train flag 0 - задаёт поезду флаги". Что значит "флаги"?
Last edited by Den_spb (24-11-2008 14:56)
Offline
Флаг - это специальная переменная или часть какой-то структуры. Флаг отвечает за переключение чего-либо. Это как лампочка - включил - горит / выключил - хмм, не горит. Если флаг равен 1, то что-то начинает работать, если флаг равен 0 - что-то отключено. Самый яркий пример:
02AB: set_actor 2@ immunities BP 0 FP 0 EP 1 CP 1 MP 0
здесь флаги, которые отвечают за иммунитеты.
09CF выставляет какой-то флаг для поезда, но неизвестно какой (везде, где в описании опкода написано flag, там значение неизвестно).
Offline
Есть ли опкод или группа опкодов при помощи которых в переменную записывается сколько метров пройдено CJ с загрузки сохраненки?
Offline
напишите опкод, чтобы можно было водителем стрелять из тачки, но не драйв бай. А еще опкод, чтобы стрелять из любого оружия из тачки.
Offline
Народ!
Ведь есть спец. опкод для загрузки анимации из файла PED.ifp?
Я не могу его найти.
Сделайте плиз простенький скрипт, чтоб, при нажатии на кнопку(скажите какую), проигрывалась анима из файла PED.ifp.=)
В стандартной справке Санни Билдера нет такого примера(мол догадывайтесь сами=().
Offline
Такой вопрос: с помощью этого опкода можно намертво скрепить два транспорта:
0683: attach_car $Car_1 to_car $Car_2 at_offset 0.0 -4.6 0.65 rotation 0.0 0.0 0.0
А как их потом обратно расцепить?
0684: detach_car 208@ 20.0 180.0 0.0 collision_detection 0
Попробуй=)
GIMS developer
Offline
Опкоды
04E5: object $714 near_point -277.999 614.19 radius 25.0 25.0 flag 0 04E6: object $3335 near_point $3367 $3368 $3369 radius 3.5 3.5 3.5 flag 1
по идее должны проверять нахождение объекта в определённой точке, но у меня why-то не работает:(
Зато откуда-то появляется маркер в этих координатах:rolleyes:
А что означают эти флаги? зачем они?
Поправьте меня если я ошибаюсь
только вежливо :)
Offline
народ, по поводу опкода 034E:
этот черт двигает объект только в одном направлении,
допустим я делаю двери лифта, цикл в вайле как выше, у меня двери раздвигаются (открываются) по X, но и по идее значение движения по X одной из дверей должно быть отрицательно, ну он сцук двигает всегда положительно, поэтому одна дверь открывается , вторая на на ее место двигается, и так до бесконечности,тк она не может достичь нужныж ей координат (при открытой двери они меньши, а опкод увеличивает их, игронит отрицание в speed по полной), мож кто че посоветует?
и чего вообще флаг контроирует? его изменение на 1 ничем не помогло.
вот кусок рабочего кода
while true wait 0 034E: move_object $ObjectLEFTDoor to 2134.714 $Lift_LeftDoorPointy $LiftPointDownZ speed 0.05 0.0 0.0 flag 0 034E: move_object $ObjectRIGHTDoor to 2132.535 $Lift_LeftDoorPointy $LiftPointDownZ speed -0.05 0.0 0.0 flag 0 end
Offline
Каким опкодом можно заставить одну машину ехать за другой? В частности я пользуюсь этим скриптом, и опкоды 07F8, 05F1, 05F2 не работают.
Специально для тех, кто не умеет читать по английски. Мой ник читается как "ГИР"!!!
Народная мудрость:
Прежде чем задавать вопросы,ПОЧИТАЙ СПРАВКУ!!!!
Offline
to Gyr
используй вот этот хитрый опкод, раскрывающий свои секреты.
06E1: AS_actor 0@ using_car 1@ target_car 2@ with_order 0 max_speed 0.0 traffic_flag 0
ну тут все понятно, order значит, конкретная позиция относительно тачки, нужную сам ищи.
да единственный момент, должен быть актер, который поведет тачку - 0@.
удачи...
I know everything and nothing...
Offline
используй вот этот хитрый опкод, раскрывающий свои секреты.
06E1: AS_actor 0@ using_car 1@ target_car 2@ with_order 0 max_speed 0.0 traffic_flag 0
не годится. Мне нужно, что-бы машина ехала впритык нужной, а этот опкод пускает её по стандартным путям траффика, и по бездорожью моя машина преследовать не хочет, а едет в обход, по дороге.
Специально для тех, кто не умеет читать по английски. Мой ник читается как "ГИР"!!!
Народная мудрость:
Прежде чем задавать вопросы,ПОЧИТАЙ СПРАВКУ!!!!
Offline
to Gyr
так я понял, тебе нужно, чтобы тачка ехала, игнорируя все пути, просто тупо следовала, так я понимаю.
тогда делай так, вначале отсчитывай вот это
0407: store_coords_to 0@ 1@ 2@ from_car 3@ with_offset 0.0 -6.0 0.0 //от тачки за которой надо следовать получаем координаты на 6.0 единиц назад от тачки, можешь брать другое значение
далее прописывай следующее
00AF: set_car 4@ driver_behaviour_to 9 //тачка которая следует получает поведение игнорировать пути
00AF: set_car 4@ driver_behaviour_to 8 //либо вот этот вариант
00A7: car 4@ drive_to 0@ 1@ 2@ //тачка которая следует начинает ехать туда
можешь до этого указать max_speed, ignore_traffic flag.
I know everything and nothing...
Offline
Каков предел значений для опкодов
01EB: set_traffic_density_multiplier_to 10.0 00AE: set_car 6@ traffic_behaviour_to 3 03DE: set_pedestrians_density_multiplier_to 10.0
?
Специально для тех, кто не умеет читать по английски. Мой ник читается как "ГИР"!!!
Народная мудрость:
Прежде чем задавать вопросы,ПОЧИТАЙ СПРАВКУ!!!!
Offline
У меня вопрос какой опкод для того что бы сесть в тачку пассажиром?) И какая проверка есть "сидит ли игрок на пассажирском месте"?
Offline