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