#1 Re: Вопросы по скриптингу » Один вопрос » 21-06-2018 10:23

Kim

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

#2 Re: Вопросы по скриптингу » Один вопрос » 13-06-2018 18:16

Kim
wmysterio wrote:
Kim wrote:

Еще раз помощь нужна, пишу вот так: 4@ = Actor.Create(24,#SFR1,-2443.4973, 501.8636, 30.0928). При этом создается два актера сразу.

Сам по себе он не создаёт несколько актёров. Скорее всего дубликат скрипта есть. По коду легче будет понять где что пошло не так. Покажите этот код, будем разгребать проблему smile

А, все! Я нашел ошибку, спасибо за помощь!

#3 Re: Вопросы по скриптингу » Один вопрос » 13-06-2018 16:01

Kim

Еще раз помощь нужна, пишу вот так: 4@ = Actor.Create(24,#SFR1,-2443.4973, 501.8636, 30.0928). При этом создается два актера сразу.

#4 Re: Вопросы по скриптингу » Один вопрос » 13-06-2018 14:21

Kim
wmysterio wrote:
kim wrote:

как написать скрипт на смену скина при загрузке?

Что-то типа этого:

:CJ_MODL
thread 'JC_MODL'
Model.Load(#WMYDRUG)  
038B: load_requested_models 
09C7: change_player $PLAYER_CHAR model_to #WMYDRUG
Model.Destroy(#WMYDRUG)

:CJ_MODL_CKECK
wait 0  
if
82F2:   not actor $PLAYER_ACTOR model == #WMYDRUG
jf @CJ_MODL_CKECK
jump @CJ_MODL

Если пишется в MAIN.SCM, то не забываем запустить поток.

Блин, спасибо вам огромное.

#5 Re: Вопросы по скриптингу » Один вопрос » 13-06-2018 11:27

Kim
wmysterio wrote:
Kim wrote:

После сохранения скин остается, а после загрузки - нет.

Игрок создаётся при загрузке/новой игры со моделью #NULL. Вы можете сменить скин, но не можете его сохранить. Нужно отдельный поток/внешний скрипт, который делал бы автоматическое изменения скина на нужный.

Kim wrote:

При запуске новой игры он идет сначала, а если загрузить игру через сохранение, то откуда будет начинаться скрипт?

Вас это не должно беспокоить smile Там реализована своя система сохранения. Просто пишите код так, как будто скрипты будут выполняться за один подход.

О, великий мастер, как написать скрипт на смену скина при загрузке? Помогите ((

#6 Re: Вопросы по скриптингу » Один вопрос » 13-06-2018 08:37

Kim
Nikita592 wrote:
Kim wrote:

Очень серьезный вопрос от меня: меняю опкодом 09C7 скин CJ, но после сохранения и дальнейшней загрузки скин снова меняется на стандартный CJ-я, как это исправить?

Проверить опкодом 03D9 завершено ли сохранение, после изменить скин.

Мне нужно, чтобы скин менялся, когда загружается сохранение, а не делается сохранение. После сохранения скин остается, а после загрузки - нет.

#7 Re: Вопросы по скриптингу » Один вопрос » 12-06-2018 19:58

Kim

Очень серьезный вопрос от меня: меняю опкодом 09C7 скин CJ, но после сохранения и дальнейшней загрузки скин снова меняется на стандартный CJ-я, как это исправить?

#8 Re: Вопросы по скриптингу » Один вопрос » 12-06-2018 14:42

Kim
Nikita592 wrote:

Он будет работать сначала.

В начале main стоит создание игрока, помещение его в определенные координаты и начало 0 миссии, это тоже все будет выполняться после загрузки сохранения?

#9 Re: Вопросы по скриптингу » Один вопрос » 12-06-2018 13:16

Kim
wmysterio wrote:
Kim wrote:

Можно подробнее как так сделать?

Можете почитать статью RRR-файлы в GTA SA на моём сайте. Там я более-менее рассказал как делать RRR-файлы. Маршрут будет гарантировать, что транспорт будет ехать строго по указанному маршруту.

Я надеюсь, вам не надоели мои вопросы. Такое назрело спросить: как работает main.scm? При запуске новой игры он идет сначала, а если загрузить игру через сохранение, то откуда будет начинаться скрипт?

#10 Re: Вопросы по скриптингу » Один вопрос » 10-06-2018 15:01

Kim
Nikita592 wrote:

Вроде с помощью путей автомобилей такой параметр задаётся. Иначе говоря, с помощью RRR файлов.

Можно подробнее как так сделать?

#11 Re: Вопросы по скриптингу » Один вопрос » 09-06-2018 13:04

Kim

Такой вопрос появился: в миссиях машины едут прямо очень аккуратно, как заставить их ехать так же? Я слышал, что так можно заставить ехать даже лодку.

#12 Re: Вопросы по скриптингу » Не работает код » 04-12-2017 12:06

Kim
wmysterio wrote:
Kim wrote:

То есть скрипт должен работать 3 секунды

wait в этом случае не гарантирует Вам, что пройдут реальные 3 секунды. Будет погрешность в любом случае ( часто колосальная ). Вообще для таких случаев лучше использовать переменные-таймеры ( хотя не обязательно ):

{$CLEO .cs}
32@ = 0 // чистим таймер

:Main_Loop
wait 0
if
32@ > 3000 // нужно примерно рассчитать когда будет 3 реальных секунды
then
jump @Main_Loop_end
end

// здесь мутим воду...

jump @Main_Loop

:Main_Loop_end
0A93: end_custom_thread

Такое задавайте в общих вопросах, как Вы изначально сделали. Мне пришлось удалить пост из за этого )

Ооо, спасибо огромное! Чтобы я делал без вас.

#13 Вопросы по скриптингу » Не работает код » 04-12-2017 11:20

Kim
Replies: 2

Нужна помощь, господа!
Через цикл увеличиваю переменную 1@ до тех пор, пока она не равна 3000, но вот в чём беда: переменная не увеличивается больше 1,

{$CLEO .cs}
:Main
wait 0
int 1@
1@ = 0
:Loop
wait 1
1@++
if 1@ >= 3000
then
      0A93: end_custom_thread
end
jump @Loop

То есть скрипт должен работать 3 секунды, но работает бесконечно. Можно убедиться, вписав в цикл вывод текста, текст выводится бесконечно.

#14 Re: Вопросы по скриптингу » Один вопрос » 23-07-2017 08:50

Kim
Asind wrote:
Kim wrote:

Как заставить актёров, сидящих в транспорте атаковать врагов(ну или СЖ)? Не по опкоду, в которому актёр стреляет в координаты, а скажем как в миссии, где от Русских с BS на байке уходишь, в коде миссии ничего такого не нашёл, сделал тестовую миссию, но враги просто сидят.

Вроде как Wmysterio делал гайд по использованию турелей на RU-SCRIPT.3DN.RU, и там в конце скрипта говорилось о возможности заставить актёра1 убивать актёра2.

Я даже ссылку нашёл: ссылка

Спасибо, но в таких миссиях не использовался режим турели, а актёра садили в машину скажем опкодом 01C8: 0@ = create_actor_pedtype 23 model #SPECIAL01 in_car 35@ passenger_seat 0

#15 Re: Вопросы по скриптингу » Один вопрос » 17-07-2017 19:24

Kim

Как заставить актёров, сидящих в транспорте атаковать врагов(ну или СЖ)? Не по опкоду, в которому актёр стреляет в координаты, а скажем как в миссии, где от Русских с BS на байке уходишь, в коде миссии ничего такого не нашёл, сделал тестовую миссию, но враги просто сидят.

#16 Re: Вопросы по скриптингу » Компиляция » 01-07-2017 15:36

Kim

В начале, как уже сказано выше, нужно написать {$CLEO .cs}, если хочешь файл .cm пиши {$CLEO .cm}. Пробел обязательно надо ставить.

#17 Re: Вопросы по скриптингу » Один вопрос » 25-06-2017 18:28

Kim
trashmas wrote:

в клео только локальные переменные от 0@ до 31@ включительно на каждый поток юзаются
32 и 33 - это динамические переменные таймеры

Спасибо ещё раз.

#19 Re: Вопросы по скриптингу » Один вопрос » 24-06-2017 10:01

Kim
trashmas wrote:
Kim wrote:

Есть проблема, когда я использую опкод 0633 для актёра, который сидит на пассажирском месте игра вылетает. Какой же опкод для этого использовать?

ты бы код показал что ли

0633: AS_actor 31@ exit_car //31 на водительском,
0633: AS_actor 32@ exit_car
0633: AS_actor 33@ exit_car

#20 Re: Вопросы по скриптингу » Один вопрос » 22-06-2017 15:47

Kim
wmysterio wrote:

Какой же опкод для этого использовать?

Может покажете как Вы его используете? Мы не телепаты smile

А как же ещё его использовать? smile 0633: AS_actor 1@ exit_car. Ещё использовал 05CD: AS_actor 1@ exit_Car 2@, тоже вылетает, не вылетает если на вод. месте только

#21 Re: Вопросы по скриптингу » Один вопрос » 22-06-2017 09:16

Kim

Есть проблема, когда я использую опкод 0633 для актёра, который сидит на пассажирском месте игра вылетает. Какой же опкод для этого использовать?

#22 Re: Вопросы по скриптингу » Один вопрос » 21-06-2017 12:23

Kim

Спасибо, но мне нужно как на 4:49. Это ведь режим турели для актёра?

#23 Re: Вопросы по скриптингу » Один вопрос » 21-06-2017 10:36

Kim

Вопрос, как сделать так, как в миссии Воссоеденение Семей с вертолётом, где спецнзовцы были прикреплены в вертушке?

#25 Re: Вопросы по скриптингу » Один вопрос » 19-06-2017 08:08

Kim

[/code]Скорее всего нужно было посадить актёра 4@ в машину 3@. Если не помогло, то попробуйте использовать опкоды 00A7 или 02C2 в место 05D1.[/quote]
Я уже разобрался, спасибо, только вот есть опкод, чтобы сделать актёра смелым? Т.е чтобы он не пригибался постоянно из-за выстрелов?

Board footer

Powered by FluxBB