Вопросы по созданию скриптов
| |
dim1988 |
Дата: Воскресенье, 19.07.2009, 18:43 | Сообщение # 1 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Ответы на самые часто задаваемые вопросы
Как сохранить (компилировать) скрипт? Почему не следует использовать в клео скриптах глобальные переменные? Как узнать координаты мест, через какую прогу? Как поместить игрока в интерьер? Опкод, который открывает все дома в СА Запись в переменную ближайшего педа и проверка его модели Как заставить актёров ходить по определённым координатам Проверка нажатия определённой клавиши Пак пути с анимацией Как сделать так, чтоб 2 миссии следовали друг за другом? Как актёру дать оружие? Как создать транспорт Как создать жёлтый маркер для входа в интерьер? При компиляции выдаёт ошибку перехода на нулевой оффсет,что это и как исправить? Как транспорту присвоить определённый цвет? Что делать если пишет ожидалось 'x' параметров? Как написать цветной текст? Номера костей актёра Что такое gosub? Опкоды, связанные с созданием огня Как изменить оружие банд? Образец добавления в игру объектов Проверка нажатия клавиши в игре и список значений Путь или scmpath Как изменить цвет затемнения экрана? Как записать в переменную случайное число из интервала Список стилей боя Как привязать эффект к кости актёра? Как произвести действия, над педами, созданными игрой Как заменить модель игрока Как заставить актёра поднять руки, как при аресте Сброс анимации Как метнуть объект? Как из одного скрипта запустить другой?
+ файл от пользователя нашего сайта Absolute . Здесь перечислены все вопросы из этой этой темы и ответы на них. Скачать |
|
| |
Lost_forever |
Дата: Среда, 31.03.2010, 15:05 | Сообщение # 601 |
Скриптер
Группа: Проверенные
Сообщений: 705
Замечания: 0%
Статус: Offline |
СержантКели, это нужно не сюда писать было. оффтоп: Держи инсталлер
Forever |
|
| |
Lost_forever |
Дата: Среда, 31.03.2010, 15:08 | Сообщение # 602 |
Скриптер
Группа: Проверенные
Сообщений: 705
Замечания: 0%
Статус: Offline |
Quote (Rixer0) Lost_forever, у меня все равно не тратиться! Мб ты не скомпилировал?У меня всё тратиться как надо
Forever |
|
| |
TonyMontana |
Дата: Среда, 31.03.2010, 15:38 | Сообщение # 603 |
Скриптер
Группа: Проверенные
Сообщений: 30
Замечания: 0%
Статус: Offline |
Lost_forever, ммм... может кинуть тебе миссию эту?(только закончу ее то конца )
[url=http://www.weburan.ru][img]http://www.weburan.ru/img234/img234/2087/13112kf1.gif[/img][/url] |
|
| |
Lost_forever |
Дата: Среда, 31.03.2010, 15:52 | Сообщение # 604 |
Скриптер
Группа: Проверенные
Сообщений: 705
Замечания: 0%
Статус: Offline |
Rixer0, ну давай)
Forever |
|
| |
Empty |
Дата: Среда, 31.03.2010, 16:10 | Сообщение # 605 |
Группа: Проверенные
Сообщений: 26
Замечания: 0%
Статус: Offline |
Вводишь 00FE: 0.1 0.1 0.1 0.1 0.1 0.1 0.1 на место где должно быть условие и компилируеш. Запускаеш скриот и там после 00FE: программа сама напишет опкод, а значение 0.1 меняем на то что нужно (радиус, координаты и т.Д. |
|
| |
Sanya1990 |
Дата: Среда, 31.03.2010, 17:02 | Сообщение # 606 |
Группа: Проверенные
Сообщений: 86
Замечания: 0%
Статус: Offline |
Lost_forever, Никачается |
|
| |
dim1988 |
Дата: Среда, 31.03.2010, 18:59 | Сообщение # 607 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Empty, 00FE: 0.1 0.1 0.1 0.1 0.1 0.1 0.1 и так опкод. Просто после компиляции Сани билдер добавляет пояснительные надписи чтоб было понятнее, какой параметр что означает. Я могу вместо 072B: put_actor $ACTOR_OG_LOC into_car 36@ passengerseat 1 Написать просто 072B: $ACTOR_OG_LOC 36@ 1 и ничего от этого не изменится.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
Empty |
Дата: Среда, 31.03.2010, 21:20 | Сообщение # 608 |
Группа: Проверенные
Сообщений: 26
Замечания: 0%
Статус: Offline |
Ну так я это и инел в виду, просто у меня интернет с телефона, а подробности я не помню, только начало. А что выполняет 'gosub' знаете? |
|
| |
dim1988 |
Дата: Четверг, 01.04.2010, 13:50 | Сообщение # 609 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
gosub – это прыжок на другую метку, как jump, только с возвращением. Пример использования gosub @1 некий код 1 0A93: end_custom_thread :1 некий код 2 return т.е. сначала после gosub выполняется «некий код 2», потом когда скрипт доходит до return, он возвращается к той строке, которая была после gosub @1 и выполняется «некий код 1»
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
Sanya1990 |
Дата: Четверг, 01.04.2010, 20:49 | Сообщение # 610 |
Группа: Проверенные
Сообщений: 86
Замечания: 0%
Статус: Offline |
Какой опкод заставляет машишу двигатся?(не условие,а действие). |
|
| |
Lost_forever |
Дата: Четверг, 01.04.2010, 21:00 | Сообщение # 611 |
Скриптер
Группа: Проверенные
Сообщений: 705
Замечания: 0%
Статус: Offline |
СержантКели, 00A7: car 99@ drive_to 252@ 253@ 254@
Forever |
|
| |
Sanya1990 |
Дата: Четверг, 01.04.2010, 21:47 | Сообщение # 612 |
Группа: Проверенные
Сообщений: 86
Замечания: 0%
Статус: Offline |
Lost_forever, Мне надо чтоб машина в каторой сидит игрок ехала,а не определённая.И в личку мне ответь! ,а то здаётся мне что ты меня за идиота принимаешь.И я сейчас в тему,вопрос те в личку касается скриптов. |
|
| |
Lost_forever |
Дата: Четверг, 01.04.2010, 22:45 | Сообщение # 613 |
Скриптер
Группа: Проверенные
Сообщений: 705
Замечания: 0%
Статус: Offline |
СержантКели, занеси в переменную машину игрока и опкодом 00A7: car 99@ drive_to 252@ 253@ 254@ заставь её ехать куда нужно Quote (СержантКели) И в личку мне ответь! angry ,а то здаётся мне что ты меня за идиота принимаешь Такое сделать можно,но только если сделать под водой какой-нибудь объект по которому игрок будет ходить,или создавать объект под игроком.
Forever |
|
| |
Sanya1990 |
Дата: Четверг, 01.04.2010, 22:52 | Сообщение # 614 |
Группа: Проверенные
Сообщений: 86
Замечания: 0%
Статус: Offline |
Lost_forever, стоп.А как же машины,есть трейнер с функцией,чтоб машины ездели по воде,как это сделали?Может и так сделать скрипт. |
|
| |
Empty |
Дата: Пятница, 02.04.2010, 16:59 | Сообщение # 615 |
Группа: Проверенные
Сообщений: 26
Замечания: 0%
Статус: Offline |
Я на счет Actor.RemovePreferences (x@). Если его не писать, то тогда созданный стоит как вкопаный и безсмертный/идет кудато пешком игнорируя запрос на выполнение анимации. Но если вписать эту команду но не вписать wait (число) то игрок будет пропадать и появлятся каждую секунду. Так что делает эта команда? Обновляет игрока? И еще, есть ли команда чтобы пед поворачивал голову и смотрел на игрока? Или команда указывающая ему идти в указанные координаты преодолевая препятствия по дороге (как грувы бегают за героем когда он их нанимает)? |
|
| |
dim1988 |
Дата: Пятница, 02.04.2010, 18:09 | Сообщение # 616 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Quote (Empty) Но если вписать эту команду но не вписать wait (число) то игрок будет пропадать и появлятся каждую секунду. Ну так это ты так скрипт состряпал. Quote (Empty) Так что делает эта команда? Удаляет все сведения об актёре, т.е. он станет обычным пешеходом и над ним нельзя производить какие-либо действия. Quote (Empty) И еще, есть ли команда чтобы пед поворачивал голову и смотрел на игрока? Учись пользоваться поиском опкодов actor - актёр look - смотреть Вводим эти слова и получаем 05BF: AS_actor 66@ look_at_actor $PLAYER_ACTOR 30000 ms Quote (Empty) Или команда указывающая ему идти в указанные координаты преодолевая препятствия по дороге Нет, есть только коды, из-за которых актёр тупо прёт напрямик.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
crips |
Дата: Пятница, 02.04.2010, 19:16 | Сообщение # 617 |
Группа: Проверенные
Сообщений: 79
Замечания: 0%
Статус: Offline |
dim1988, помоги пожалуйста,тут скрипт типа миссии,но не могу сделать так что бы когда время таймера выйдет и СиДжей не будет в опр. координатах то будет написано миссия провалена, незнаю как и куда вставить,вот сам скрипт: Code Model.Load(#JETMAX) Model.Load(#JETMAX) Model.Load(#BMYBE) 038B: load_requested_models
:NONAME_16 wait 0 if Model.Available(#JETMAX) Model.Available(1598) Model.Available(#BMYBE) else_jump @NONAME_16 1@ = Car.Create(#JETMAX, 860.3172, -2159.867, -0.5324) $M1 = Object.Create(1598, 0.0, 0.0, 0.0) 0681: attach_object $M1 to_car 1@ with_offset 1.5 0.3 1.4 rotation 0.0 0.0 0.0 $ICON2 = Marker.CreateIconAndSphere(52, 860.3172, -2159.867, -0.5324) $MARK1 = Marker.CreateAboveObject($M1) $DRUG1 = Actor.Create(CivMale, #BMYBE, 860.5934, -2157.25, 2.3346) Actor.Angle($DRUG1) = 68.3 0605: actor $DRUG1 perform_animation_sequence "ENDCHAT_03" IFP_file "PED" 4.0 loop 1 0 0 1 time -1 // versionA
:NONAME_230 wait 0 if Actor.InCar($PLAYER_ACTOR, 1@) else_jump @NONAME_230 Marker.Disable($MARK1) Marker.Disable($ICON2) Actor.DestroyWithFade($DRUG1) $532 = 300000 014E: set_timer_to $532 type 1 // global_variable jump @NONAME_275
:NONAME_275 wait 0 if $ICON1 = Marker.CreateIconAndSphere(9, -2952.843, 497.9495, 0.0013) 0101: actor $PLAYER_ACTOR in_sphere -2952.843 497.9495 -1.0013 radius 10.0 10.0 100.0 sphere 1 stopped else_jump @NONAME_275 wait 0 01E3: show_text_1number_styled GXT 'M_PASSD' number 1 time 5000 style 1 // MЃCCЃ• Bѓ’O‚HEHA! Player.Money($PLAYER_CHAR) += 250000 Object.Destroy($M1) Marker.Disable($ICON1) marker.Disable($ICON1) wait 20000 jump @NONAME_16 |
|
| |
Lost_forever |
Дата: Пятница, 02.04.2010, 19:27 | Сообщение # 618 |
Скриптер
Группа: Проверенные
Сообщений: 705
Замечания: 0%
Статус: Offline |
crips, просто сделай проверку,если время истекло,то миссия провалена,вот: Code
Model.Load(#JETMAX) Model.Load(#BMYBE) 038B: load_requested_models
:NONAME_16 wait 0 if Model.Available(#JETMAX) Model.Available(1598) Model.Available(#BMYBE) else_jump @NONAME_16 1@ = Car.Create(#JETMAX, 860.3172, -2159.867, -0.5324) $M1 = Object.Create(1598, 0.0, 0.0, 0.0) 0681: attach_object $M1 to_car 1@ with_offset 1.5 0.3 1.4 rotation 0.0 0.0 0.0 $ICON2 = Marker.CreateIconAndSphere(52, 860.3172, -2159.867, -0.5324) $MARK1 = Marker.CreateAboveObject($M1) $DRUG1 = Actor.Create(CivMale, #BMYBE, 860.5934, -2157.25, 2.3346) Actor.Angle($DRUG1) = 68.3 0605: actor $DRUG1 perform_animation_sequence "ENDCHAT_03" IFP_file "PED" 4.0 loop 1 0 0 1 time -1 // versionA
:NONAME_230 wait 0 if Actor.InCar($PLAYER_ACTOR, 1@) else_jump @NONAME_230 Marker.Disable($MARK1) Marker.Disable($ICON2) Actor.DestroyWithFade($DRUG1) $532 = 300000 014E: set_timer_to $532 type 1 // global_variable if not $532 == 0 jf @Mission_Failed wait 0 $ICON1 = Marker.CreateIconAndSphere(9, -2952.843, 497.9495, 0.0013) jump @NONAME_275
:NONAME_275 wait 0 if 0101: actor $PLAYER_ACTOR in_sphere -2952.843 497.9495 -1.0013 radius 10.0 10.0 100.0 sphere 1 stopped else_jump @NONAME_275 wait 0 01E3: show_text_1number_styled GXT 'M_PASSD' number 1 time 5000 style 1 // MCC• Bƒ’O‚HEHA! Player.Money($PLAYER_CHAR) += 250000 Object.Destroy($M1) Marker.Disable($ICON1) marker.Disable($ICON1) wait 20000 jump @NONAME_16
:Mission_Failed wait 0 01E3: show_text_1number_styled GXT 'M_FAIL' number 2000 time 5000 style 1 Object.Destroy($M1) Marker.Disable($ICON1) marker.Disable($ICON1) end_thread
Forever |
|
| |
crips |
Дата: Пятница, 02.04.2010, 19:43 | Сообщение # 619 |
Группа: Проверенные
Сообщений: 79
Замечания: 0%
Статус: Offline |
Lost_forever, спасиб! |
|
| |
Sanya1990 |
Дата: Среда, 07.04.2010, 01:13 | Сообщение # 620 |
Группа: Проверенные
Сообщений: 86
Замечания: 0%
Статус: Offline |
Lost_forever, dim1988, Когда вы новые скрипты напишите?Я бы сам бы создал,но мозги у меня плывут от всего этого. |
|
| |
dim1988 |
Дата: Среда, 07.04.2010, 07:24 | Сообщение # 621 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Quote (СержантКели) Lost_forever, dim1988, Когда вы новые скрипты напишите?Я бы сам бы создал,но мозги у меня плывут от всего этого. Я 2 делаю, но они сложные, приходится повозиться
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
Lost_forever |
Дата: Среда, 07.04.2010, 15:08 | Сообщение # 622 |
Скриптер
Группа: Проверенные
Сообщений: 705
Замечания: 0%
Статус: Offline |
СержантКели, я щас делаю миссию GroveStreet4Life,c кат-сценами и т.д.
Forever |
|
| |
Sanya1990 |
Дата: Суббота, 10.04.2010, 01:01 | Сообщение # 623 |
Группа: Проверенные
Сообщений: 86
Замечания: 0%
Статус: Offline |
Наверника в скриптинге как и во всём програмировании есть сокращённые команды,поэтому я наверное разобратся не могу. |
|
| |
Colt_8 |
Дата: Воскресенье, 11.04.2010, 18:58 | Сообщение # 624 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
|Какой номер клавиши F ???|
Сообщение отредактировал Colt_8 - Воскресенье, 11.04.2010, 19:00 |
|
| |
Den_spb |
Дата: Воскресенье, 11.04.2010, 19:50 | Сообщение # 625 |
Мастер по скриптингу
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
70 |
|
| |
Colt_8 |
Дата: Воскресенье, 11.04.2010, 19:55 | Сообщение # 626 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Спасибо)
|
|
| |
dim1988 |
Дата: Воскресенье, 11.04.2010, 20:24 | Сообщение # 627 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Quote (Colt_8) |Какой номер клавиши F ???| Ты так и не будешь устанавливать версию 3.04? Всё как в каменном веке
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
Colt_8 |
Дата: Понедельник, 12.04.2010, 11:59 | Сообщение # 628 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
dim1988, я так и знал что ты это скажешь Нет, не хочу перемен, люблю свой третий
|
|
| |
Den_spb |
Дата: Понедельник, 12.04.2010, 18:31 | Сообщение # 629 |
Мастер по скриптингу
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
В третьей версии есть некоторые ошибки, в 3.04 они исправлены. К тому же в третьей версии нет функции конвертации имён моделей в ИД. |
|
| |
LikeBAX |
Дата: Пятница, 16.04.2010, 17:25 | Сообщение # 630 |
Группа: Проверенные
Сообщений: 152
Замечания: 0%
Статус: Offline |
Мне нужно сделать несколько маркеров около домов нескольких героев. Войдя в маркеры у CJ появляется новая одежда. На радаре ничего нет. Я пробовал сделать это таким скриптом: {$CLEO .cs} //-------------MAIN--------------- thread "JUMPER" wait 0 :JUMPER_14 wait 0 if Player.Defined($PLAYER_ACTOR) else_jump @JUMPER_14 if 00E1: player 0 pressed_key 0 00E1: player 0 pressed_key 1 else_jump @JUMPER_14 if 84AD: not actor $PLAYER_ACTOR in_water else_jump @JUMPER_14 wait 0 Player.SetClothes($PLAYER_CHAR, "CAPRED", "CAP", Hats) Player.SetClothes($PLAYER_CHAR, "HAIRGREEN", "HEAD", Head) Player.SetClothes($PLAYER_CHAR, "FIELD", "FIELD", Torso) Player.SetClothes($PLAYER_CHAR, "JEANSDENIM", "JEANS", Head) Player.SetClothes($PLAYER_CHAR, "HITOP", "HITOP", Shoes) Player.Build($PLAYER_CHAR) wait 40 Player.CanMove($PLAYER_CHAR) = True Actor.HasWeapon($PLAYER_ACTOR, 22) if else_jump @JUMPER_194 :JUMPER_194 jump @JUMPER_14 Но сани блидер выдает ошибку типо 5 компонентов, потому что в скрипте кторый я взял за основу их 3. Помогите плз сделать маркеры и убрать кнопки, т.е. игрок войдет в маркер и сразу у него будет другая одежда |
|
| |
|