Вопросы по созданию скриптов
| |
dim1988 |
Дата: Воскресенье, 19.07.2009, 18:43 | Сообщение # 1 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Ответы на самые часто задаваемые вопросы
Как сохранить (компилировать) скрипт? Почему не следует использовать в клео скриптах глобальные переменные? Как узнать координаты мест, через какую прогу? Как поместить игрока в интерьер? Опкод, который открывает все дома в СА Запись в переменную ближайшего педа и проверка его модели Как заставить актёров ходить по определённым координатам Проверка нажатия определённой клавиши Пак пути с анимацией Как сделать так, чтоб 2 миссии следовали друг за другом? Как актёру дать оружие? Как создать транспорт Как создать жёлтый маркер для входа в интерьер? При компиляции выдаёт ошибку перехода на нулевой оффсет,что это и как исправить? Как транспорту присвоить определённый цвет? Что делать если пишет ожидалось 'x' параметров? Как написать цветной текст? Номера костей актёра Что такое gosub? Опкоды, связанные с созданием огня Как изменить оружие банд? Образец добавления в игру объектов Проверка нажатия клавиши в игре и список значений Путь или scmpath Как изменить цвет затемнения экрана? Как записать в переменную случайное число из интервала Список стилей боя Как привязать эффект к кости актёра? Как произвести действия, над педами, созданными игрой Как заменить модель игрока Как заставить актёра поднять руки, как при аресте Сброс анимации Как метнуть объект? Как из одного скрипта запустить другой?
+ файл от пользователя нашего сайта Absolute . Здесь перечислены все вопросы из этой этой темы и ответы на них. Скачать |
|
| |
dim1988 |
Дата: Среда, 09.12.2009, 18:29 | Сообщение # 211 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Quote / 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 200 if Player.Defined($PLAYER_CHAR) else_jump @NONAME_2 Actor.PutAt($PLAYER_ACTOR, 213.2739, 1873.185, 13.147) wait 0 04ED: load_animation "TANK" Model.Load(#BFYST) 038B: load_requested_models :NONAME_61 wait 0 if and 04EE: animation "TANK" loaded Model.Available(#BFYST) else_jump @NONAME_61 wait 0 Player.WantedLevel($PLAYER_CHAR) = 0 1@ = Actor.Create(4, #BFYST, 219.1166, 1854.542, 12.8887) 2@ = Actor.Create(4, #BFYST, 248.3244, 1859.195, 14.084) 3@ = Actor.Create(4, #BFYST, 245.5754, 1866.608, 8.765) 4@ = Actor.Create(4, #BFYST, 267.8169, 1839.3, 6.5053) 5@ = Actor.Create(4, #BFYST, 214.9897, 1822.788, 6.4141) 6@ = Actor.Create(4, #BFYST, 249.2108, 1815.423, 7.5547) 7@ = Actor.Create(4, #BFYST, 249.2108, 1815.423, 7.5547) 8@ = Actor.Create(4, #BFYST, 251.9097, 1826.74, 4.7109) 9@ = Actor.Create(4, #BFYST, 290.8543, 1815.406, 1.007 10@ = Actor.Create(4, #BFYST, 261.6675, 1816.417 , 1.007 0245: set_actor 1@ walk_style_to "DRUNKMAN" 0245: set_actor 2@ walk_style_to "DRUNKMAN" 0245: set_actor 3@ walk_style_to "DRUNKMAN" 0245: set_actor 4@ walk_style_to "DRUNKMAN" 0245: set_actor 5@ walk_style_to "DRUNKMAN" 0245: set_actor 6@ walk_style_to "DRUNKMAN" 0245: set_actor 7@ walk_style_to "DRUNKMAN" 0245: set_actor 8@ walk_style_to "DRUNKMAN" 0245: set_actor 9@ walk_style_to "DRUNKMAN" 0245: set_actor 10@ walk_style_to "DRUNKMAN" 05F5: AS_actor 1@ goto_point 214.7782 1872.266 13.1406 mode 4 -1 ms // versionB 05F5: AS_actor 2@ goto_point 239.4915 1859.843 14.084 mode 4 -1 ms // versionB 05F5: AS_actor 3@ goto_point 255.8514 1867.245 8.765 mode 4 -1 ms // versionB 0643: set_AS_pack 11@ loop 1 0754: define_new_animation_path 0755: add_animation_path_3D_coord 239.4915 1859.843 14.084 animation "ROADCROSS" IFP_file "PED" 0755: add_animation_path_3D_coord 255.8514 1867.245 8.765 animation "ROADCROSS" IFP_file "PED" 0817: assign_actor 1@ to_animation_path_with_walk_mode 4 route_mode 3 0817: assign_actor 2@ to_animation_path_with_walk_mode 4 route_mode 3 0817: assign_actor 3@ to_animation_path_with_walk_mode 4 route_mode 3 0817: assign_actor 4@ to_animation_path_with_walk_mode 4 route_mode 3 0817: assign_actor 5@ to_animation_path_with_walk_mode 4 route_mode 3 0817: assign_actor 6@ to_animation_path_with_walk_mode 4 route_mode 3 0817: assign_actor 7@ to_animation_path_with_walk_mode 4 route_mode 3 0817: assign_actor 8@ to_animation_path_with_walk_mode 4 route_mode 3 0817: assign_actor 9@ to_animation_path_with_walk_mode 4 route_mode 3 0817: assign_actor 10@ to_animation_path_with_walk_mode 4 route_mode 3 :NONAME_477 wait 0 if and 0104: actor $PLAYER_ACTOR near_actor 1@ radius 5.0 5.0 1.0 sphere 0 09ED: actor $PLAYER_ACTOR is_within_field_of_view_actor 1@ else_jump @DRAGONS2 :RAGONS2 wait 0 if and 0104: actor $PLAYER_ACTOR near_actor 2@ radius 5.0 5.0 1.0 sphere 0 09ED: actor $PLAYER_ACTOR is_within_field_of_view_actor 2@ else_jump @DRAGONS3 :RAGONS3 wait 0 if and 0104: actor $PLAYER_ACTOR near_actor 3@ radius 5.0 5.0 1.0 sphere 0 09ED: actor $PLAYER_ACTOR is_within_field_of_view_actor 3@ else_jump @DRAGONS4 :RAGONS4 wait 0 if and 0104: actor $PLAYER_ACTOR near_actor 4@ radius 5.0 5.0 1.0 sphere 0 09ED: actor $PLAYER_ACTOR is_within_field_of_view_actor 4@ else_jump @DRAGONS5 :DRAGONS5 wait 0 if and 0104: actor $PLAYER_ACTOR near_actor 5@ radius 5.0 5.0 1.0 sphere 0 09ED: actor $PLAYER_ACTOR is_within_field_of_view_actor 5@ else_jump @DRAGONS6 :DRAGONS6 wait 0 if and 0104: actor $PLAYER_ACTOR near_actor 6@ radius 5.0 5.0 1.0 sphere 0 09ED: actor $PLAYER_ACTOR is_within_field_of_view_actor 6@ else_jump @DRAGONS7 :DRAGONS7 wait 0 if and 0104: actor $PLAYER_ACTOR near_actor 7@ radius 5.0 5.0 1.0 sphere 0 09ED: actor $PLAYER_ACTOR is_within_field_of_view_actor 7@ else_jump @DRAGONS8 :DRAGONS8 wait 0 if and 0104: actor $PLAYER_ACTOR near_actor 8@ radius 5.0 5.0 1.0 sphere 0 09ED: actor $PLAYER_ACTOR is_within_field_of_view_actor 8@ else_jump @DRAGONS9 :DRAGONS9 wait 0 if and 0104: actor $PLAYER_ACTOR near_actor 9@ radius 5.0 5.0 1.0 sphere 0 09ED: actor $PLAYER_ACTOR is_within_field_of_view_actor 9@ else_jump @DRAGONS10 :DRAGONS10 wait 0 if and 0104: actor $PLAYER_ACTOR near_actor 10@ radius 5.0 5.0 1.0 sphere 0 09ED: act or $PLAYER_ACTOR is_within_field_of_view_actor 10@ else_jump @DRAGONS3 0639: AS_actor 2@ rotate_to_actor $PLAYER_ACTOR 04C4: store_coords_to 11@ 12@ 13@ from_actor $PLAYER_ACTOR with_offset 0.0 0.4 0.6 Camera.SetPosition(11@, 12@, 13@, 0.0, 0.0, 0.0) Camera.OnPed(2@, 15, 2) 0669: $SPRAYCAN = attach_particle "SPRAYCAN" to_actor 2@ with_offset 0.0 0.0 0.6 flag 1 064C: make_particle $SPRAYCAN visible Player.CanMove($PLAYER_CHAR) = False wait 2000 Player.CanMove($PLAYER_CHAR) = True Camera.Shake(600) 0650: destroy_particle $SPRAYCAN Camera.Restore_WithJumpCut wait 1000000 :NONAME_667 wait 0 if Player.WantedLevel($PLAYER_CHAR) > 0 else_jump @NONAME_477 Player.WantedLevel($PLAYER_CHAR) = 0 jump @NONAME_477 :NONAME_477 wait 0 if and 0104: actor $PLAYER_ACTOR near_actor 1@ radius 5.0 5.0 1.0 sphere 0 09ED: actor $PLAYER_ACTOR is_within_field_of_view_actor 1@ else_jump @DRAGONS2
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
helsing |
Дата: Среда, 09.12.2009, 18:34 | Сообщение # 212 |
Группа: Проверенные
Сообщений: 29
Замечания: 0%
Статус: Offline |
дак ты ничего не изменил |
|
| |
dim1988 |
Дата: Среда, 09.12.2009, 19:51 | Сообщение # 213 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Как это не изменил? Там куча ошибок была, я всё исправил. Теперь не должно вылетать.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
helsing |
Дата: Среда, 09.12.2009, 20:06 | Сообщение # 214 |
Группа: Проверенные
Сообщений: 29
Замечания: 0%
Статус: Offline |
Спасибо, ща не вылетает, но при загрузке игры я появляюсь в пустоте, а кода новую начинаеш то все ок??? |
|
| |
dim1988 |
Дата: Среда, 09.12.2009, 21:41 | Сообщение # 215 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Попробуй в этой строке Actor.PutAt($PLAYER_ACTOR, 213.2739, 1873.185, 13.147) заменить координату Z на более высокую, например 14.147
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
helsing |
Дата: Четверг, 10.12.2009, 12:31 | Сообщение # 216 |
Группа: Проверенные
Сообщений: 29
Замечания: 0%
Статус: Offline |
Не помогло((( |
|
| |
dim1988 |
Дата: Четверг, 10.12.2009, 17:03 | Сообщение # 217 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Ну попробуй сделать ожидание подольше, например wait 1500
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
helsing |
Дата: Четверг, 10.12.2009, 17:33 | Сообщение # 218 |
Группа: Проверенные
Сообщений: 29
Замечания: 0%
Статус: Offline |
Не помогло |
|
| |
Colt_8 |
Дата: Четверг, 10.12.2009, 23:39 | Сообщение # 219 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Давайте я что-то кому-то помогу!
Сообщение отредактировал Colt_8 - Четверг, 10.12.2009, 23:43 |
|
| |
Den_spb |
Дата: Воскресенье, 13.12.2009, 12:39 | Сообщение # 220 |
Мастер по скриптингу
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
helsing, если игрок появляется в пустоте, значит он телепортирован в незагруженный интерьер. |
|
| |
crips |
Дата: Воскресенье, 13.12.2009, 18:35 | Сообщение # 221 |
Группа: Проверенные
Сообщений: 79
Замечания: 0%
Статус: Offline |
помогите плизззз,как сделать что бы при нажатии клавиши скрипт завершал свою работу, просто у меня салют бьёт в 23:00 и нужно ево прекратить в 01:00 |
|
| |
Colt_8 |
Дата: Воскресенье, 13.12.2009, 20:29 | Сообщение # 222 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
ну делаешь новый лаэбл. там условие если нажата клавиша если нет то прыгаем снова на этот лэйбл если да то действие прекращается если ты используешь эффект салюта то пишешь команду destroy
|
|
| |
crips |
Дата: Понедельник, 14.12.2009, 15:14 | Сообщение # 223 |
Группа: Проверенные
Сообщений: 79
Замечания: 0%
Статус: Offline |
dim1988, я решил попробовать написать миссию,для начала хочу просто сделать перевоз груза из одной точки в другую,как можно это сделать,какие опкоды,статьи читал |
|
| |
dim1988 |
Дата: Понедельник, 14.12.2009, 16:11 | Сообщение # 224 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Как, создай грузовик, создай красный маркер, сделай проверку на нахождение грузовика в этом маркере, если проверка выполнена - миссия закончена.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
LikeBAX |
Дата: Вторник, 15.12.2009, 13:59 | Сообщение # 225 |
Группа: Проверенные
Сообщений: 152
Замечания: 0%
Статус: Offline |
СРОЧНО! dim1988, помоги нам плиз. Я и ninja97 создают мод Tale About A Racer (предыстория GTA SA о гонщике Моргане). Нам нужен скриптер чтобы подправить сюжет скриптера Жорика который видно ушел из GTA модов. Там не очень много - надо только чуть подправить скрипт и сделать еще несколько миссии. Ты нам очень поможешь, и если хочешь, можешь вступить в команду. CLEO тоже понадобится. Если согласен, заходи на rcr.clan.su там все объясним - и что делать, и сюжет. p.s. Я думаю, ты и с main*ом можешь работать.
Сообщение отредактировал SkyG - Вторник, 15.12.2009, 14:00 |
|
| |
dim1988 |
Дата: Вторник, 15.12.2009, 14:48 | Сообщение # 226 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Ну если что-то подправить, это ещё ладно, но создавать новые миссии очень долго и запарно, а именно этим я сейчас и занят, поэтому времени на другие проекты нет. И с мэйном как-то не получается, не удаётся его компилировать.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
LikeBAX |
Дата: Вторник, 15.12.2009, 19:58 | Сообщение # 227 |
Группа: Проверенные
Сообщений: 152
Замечания: 0%
Статус: Offline |
ну просто мейн подправишь, OK? А скомпилировать успеется. И миссии тоже. Заходи на rcr.clan.su там на миничате напиши что ты есть, затем я тебе в личку напишу что делать, если не сильно занят конечно. |
|
| |
Colt_8 |
Дата: Вторник, 15.12.2009, 20:38 | Сообщение # 228 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Ну вот я миссии делаю. Всё нормально! Ни чё не запарно! Я кстатит готовлю пак 2.
|
|
| |
dim1988 |
Дата: Среда, 16.12.2009, 12:19 | Сообщение # 229 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Quote (Colt_8) Всё нормально! Ни чё не запарно! Не запарно, а потом глядишь – вылетает! Надо ж всё продумать и сделать качественно, учесть все варианты развития событий, сделать соответствующие проверки. Особенно если хочешь делать для мэйна. Да и вообще это долго.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
LikeBAX |
Дата: Среда, 16.12.2009, 22:12 | Сообщение # 230 |
Группа: Проверенные
Сообщений: 152
Замечания: 0%
Статус: Offline |
dim1988, так поможешь? не миссии тогда уж просто вне миссий подправить |
|
| |
dim1988 |
Дата: Среда, 16.12.2009, 22:24 | Сообщение # 231 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
SkyG, если тебе надо, обращайся на моём сайте. Можешь даже тему создать о своём моде. Например здесь. Там скажи, что тебе надо, может ещё кто-то поможет
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
Colt_8 |
Дата: Воскресенье, 20.12.2009, 02:01 | Сообщение # 232 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Quote (dim1988) вылетает! Надо ж всё продумать и сделать качественно, Да! В первом паке я сделал как новичек, потомучто это первые мои миссии и я их ещё летом делал! Я не был тогда ещё продвинутым скриптом))))Добавлено (20.12.2009, 02:01) --------------------------------------------- У меня 3 вопроса: Когда ставлю этот опкод,: Code 00FF: actor $PLAYER_ACTOR sphere 1 in_sphere $x $Y $Z radius 2.0 2.0 2.0 on_foot то маркер видно, только один раз! Почему? Почему актёр не фотографирует, когда я ставлю этот опкод?: Code 04C5: actor 2@ photographed Каким опкодом можно заставить камеру двигаться из точки в точку? И с какой скоростью?
|
|
| |
dim1988 |
Дата: Воскресенье, 20.12.2009, 09:02 | Сообщение # 233 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Quote (Colt_8) то маркер видно, только один раз! Почему? Не понял проблему. Как это 1 раз? Ну вообще-то этот код используется вместе с кодами, создающими сферу, например 03BC: 2@ = create_sphere_at -124.9905 -1914.604 18.8931 radius 3.0 Quote (Colt_8) Почему актёр не фотографирует, когда я ставлю этот опкод?: Я не пробовал этот код, но думаю чтоб заставить актёра фоткать, надо ему дать фотоаппарат и заставить «Стрелять» кодом 0668: AS_actor 1@ rotate_and_shoot_at 2@ 3@ 4@ -1 ms Quote (Colt_8) Каким опкодом можно заставить камеру двигаться из точки в точку? И с какой скоростью? По-моему эти команды Camera.SetPosition(-33.4274, 2341.693, 24.1406, 0.0, 0.0, 0.0) Camera.PointAt(-38.2486, 2340.783, 24.1347, 1) 0460: set_camera_transverse_delay 0.0 time 3000 Скорость полёта зависит от времени.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
crips |
Дата: Воскресенье, 20.12.2009, 11:37 | Сообщение # 234 |
Группа: Проверенные
Сообщений: 79
Замечания: 0%
Статус: Offline |
dim1988, я в городе расставил машины,но игра быстро вылетает,играю минут 5 и вылетает ставил опкодом Code 014B: $C1 = init_parked_car_generator #SULTAN color 61 61 61 alarm 0 door_lock 0 0 40000 at 629.23 -2607.85 7.51 angle 360 014C: set_parked_car_generator $C1 cars_to_generate_to 101 Просто машины очень нужно,но вылетает |
|
| |
dim1988 |
Дата: Воскресенье, 20.12.2009, 11:42 | Сообщение # 235 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Ну замени глобальные переменные на локальные. И что у тебя в конце скрипта?
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
Colt_8 |
Дата: Воскресенье, 20.12.2009, 13:15 | Сообщение # 236 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Quote (dim1988) 0668: AS_actor 1@ rotate_and_shoot_at 2@ 3@ 4@ -1 ms Quote (dim1988) Спасибо))) Не понял проблему. Как это 1 раз? Ну вообще-то этот код используется вместе с кодами, Я поставил сферу, захожу в игру, она есть! Второй раз захожу в игру уже нет самой сферы, а функция выполняется! Quote (dim1988) 03BC: 2@ = create_sphere_at -124.9905 -1914.604 18.8931 radius 3.0 А как убрать? Quote (dim1988) 0460: set_camera_transverse_delay 0.0 time 3000 А что означают эти цыфры delay 0.0 ti
|
|
| |
dim1988 |
Дата: Воскресенье, 20.12.2009, 14:07 | Сообщение # 237 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Quote (Colt_8) А как убрать? 03BD: destroy_sphere 2@ Quote (Colt_8) А что означают эти цыфры delay 0.0 ti не знаю, но их нельзя менять. Так в справке сказано.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
crips |
Дата: Воскресенье, 20.12.2009, 15:32 | Сообщение # 238 |
Группа: Проверенные
Сообщений: 79
Замечания: 0%
Статус: Offline |
Quote (dim1988) Ну замени глобальные переменные на локальные. хорошо,попробую Quote (dim1988) И что у тебя в конце скрипта? 0A93: end_custom_thread ---------------------------- А кто нибудь знает ещё анимацию,где человек лежит и держится за живот |
|
| |
Colt_8 |
Дата: Воскресенье, 20.12.2009, 16:28 | Сообщение # 239 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Quote (dim1988) 03BD: destroy_sphere 2@ А в моём коде нет перменной!
Сообщение отредактировал Colt_8 - Воскресенье, 20.12.2009, 16:28 |
|
| |
dim1988 |
Дата: Воскресенье, 20.12.2009, 16:45 | Сообщение # 240 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Quote (crips) А кто нибудь знает ещё анимацию,где человек лежит и держится за живот Вот, может что-то из этого Quote Анимации из файла "CRACK" "CRCKIDLE4" - актер лежит на спине, ему плохо "CRCKIDLE3" - актер сидит, ему плохо "CRCKIDLE2" - актер лежит на боку, ему плохо "CRCKIDLE1" - актер сидит, ему плохо, тип2 "CRCKDETH4" - актер сидит, потом ложится на бок (как-будто без сознания) "CRCKDETH3" - актер сидит, потом ложится на спину (как-будто без сознания) "CRCKDETH2" - актер лежит, его бьет дрожь, и он теряет сознание "CRCKDETH1" - актер сидит, потом теряет сознание
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
|