You are not logged in.
Я пишу скрипт цель которого закрывать гараж перекраски если игрок имеет розыск и имеет на хвосте копов. Это значит что гараж должен будет оставаться открытым если игрок имеет звезды розыска, но рядом нет копов. Пока что я видимо не понимаю какой-то принцип у гаражей и поэтому выходят стандартные надписи после сброса розыска. Текущий код в main.scm-е:
:ROGA thread 'ROGA' wait 0 00D6: if 0256: player 0 defined jf @ROGA while true wait 0 if 010F: player $PLAYER_CHAR wanted_level > 0 then 0361: close_garage $SPRAYSHOP1 0361: close_garage $72 0361: close_garage $93 else 0360: open_garage $SPRAYSHOP1 //Эти переменные стандартные, т.е. эта переменная у гаража покраски Портленда 0360: open_garage $72 //Стаунтона 0360: open_garage $93 //и Шорсайд-велла end end :ROGA2 0054: store_player $PLAYER_CHAR position_to 0@ 5@ 6@ repeat wait 0 if 0AE1: 7@ = random_actor_near_point 0@ 5@ 6@ in_radius 35.0 find_next 0 pass_deads 1 jf @ROGA until 8AE1: 7@ = random_actor_near_point 0@ 5@ 6@ in_radius 35.0 find_next 1 pass_deads 1 end_thread
Пока что главная проблема в том что выходят стандартные надписи после перекраски машин.
Last edited by Remca12 (09-01-2021 16:29)
Offline
Скрипт переписан, в части цикла, но осталась проблема: после сброса розыска надпись выводится в независимости от того где машина. А как мне активировать гараж именно тогда когда машина в гараже покраски и сброшен розыск ?
while true wait 0 if 0256: player 0 defined then if 010F: player 0 wanted_level > 0 then 02FA: garage $SPRAYSHOP1 change_to_type 1 02FA: garage $72 change_to_type 1 02FA: garage $93 change_to_type 1 repeat wait 0 until 810F: not player 0 wanted_level > 0 02FA: garage $SPRAYSHOP1 change_to_type 5 02FA: garage $72 change_to_type 5 02FA: garage $93 change_to_type 5 end end end
Offline
Проверить то, что машина находится в гараже можно путем обычной проверки координат. Гаражей в гта3 всего 3, поэтому много кода это не потребует.
float portland_x1 = 0.0 // подставить правильные координаты гаража float portland_y1 = 0.0 float portland_x2 = 0.0 float portland_x2 = 0.0 float staunton_x1 = 0.0 float staunton_y1 = 0.0 float staunton_x2 = 0.0 float staunton_x2 = 0.0 if 810F: player 0 wanted_level <= 0 then if 00B0: car 0@ 0 portland_x1 portland_y1 portland_x2 portland_y2 then // машина в гараже портланда else if 00B0: car 0@ 0 staunton_x1 staunton_y1 staunton_x2 staunton_y2 then // машина в гараже стэнтон else // проверка на шорсайд end end end
Offline