TheArtemMaps
Новичок
- 27
- 0
Если честно, не нашел ничего что могло бы вызвать рывки или кривое передвижение. Со стороны кода не вижу особых изъянов или костылей, хоть он и собран судя по всему под cleo 3. Можешь подробнее рассказать, что происходит?Скажите мне пожалуйста как сделать плавное движение самолета? А то он дергается как хрен знает что. И какая часть скрипта отвечает за его перемещение? Вот скрипт:
Самолёт летает по всем трём городам, но проблема в том что он не плавно передвигается, а рывками. Хотелось бы что бы он плавно летел. Кдео 3? Не думаю. У меня все скрипты под 4 только. Бывает он долетает до гаража у сан фиерро, потом пошел сбой и он начинает плавно лететь вверх без остановки.Если честно, не нашел ничего что могло бы вызвать рывки или кривое передвижение. Со стороны кода не вижу особых изъянов или костылей, хоть он и собран судя по всему под cleo 3. Можешь подробнее рассказать, что происходит?
Такой синтаксис я видел только в 3-м клео...Кдео 3? Не думаю. У меня все скрипты под 4 только
Car.Create(8@, 593, 0@, 1@, 2@)
Car.Angle(8@) = 3@
Car.LockInCurrentPosition(8@, True)
Marker.CreateAboveCar(3@, 8@)
Object.Init(12@, 593, 0.0, 0.0, 0.0)
Object.Angle(12@) = 3@
Model.Destroy(593)
Actor.SetImmunities(10@, True, True, True, True, True)
Через Carrec, можно это как то сделать?Такой синтаксис я видел только в 3-м клео...
Ну да ни суть. Я проверил в одиночке твои слова, не совсем тоже самое наблюдаю. Но принципиальных отличий нет, передвигается он у меня тоже странно. Советую проверить логику построения маршрута, особенно Z-координаты, ибо у тебя точки отсчета статика а z вычисляется динамически. Также у тебя некоторые переменные сами себя перезаписывают, стоило бы для каждого действия иметь свои личные выделенные переменные. Возможно в этом и ошибка, нужно тестить.CLEO:Car.Create(8@, 593, 0@, 1@, 2@) Car.Angle(8@) = 3@ Car.LockInCurrentPosition(8@, True) Marker.CreateAboveCar(3@, 8@) Object.Init(12@, 593, 0.0, 0.0, 0.0) Object.Angle(12@) = 3@ Model.Destroy(593) Actor.SetImmunities(10@, True, True, True, True, True)
Не самый хороший способЧерез Carrec, можно это как то сделать?
Хорошо, тогда как по другому?Не самый хороший способ
Смотря какой эффект ты ожидаешь от своей работы. Если судить по коду, то каждый кадр это дело себе обновляет маршрут, и это с элементами рандома, что для стабильной работы нот гуд. Есть (как по мне) лишние проверки, а также циклы которые и могут поломать логику работы. Я бы сел да занялся его полной доработкой, но боюсь займет тонну времени :(Хорошо, тогда как по другому?
{$CLEO .cs}
0000: NOP
:Begin
wait 0
077E: get_active_interior_to $ACTIVE_INTERIOR
if or
not $ACTIVE_INTERIOR == 0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 877.9877 -28.3817 63.1953 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2025.451 997.5287 10.8203 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -694.6745 956.7463 12.2547 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -2025.7168 157.9236 29.0391 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -2037.8574 -2525.165 30.625 radius 60.0 60.0 60.0
then
jump @Begin
else
0005: 4@ = 1374.0687
0005: 5@ = -1889.2344
0005: 6@ = 612.8045
0005: 7@ = -1295.6091
if and
0154: actor $PLAYER_ACTOR in_zone 'LA'
00A3: actor $PLAYER_ACTOR sphere 0 in_rectangle_cornerA 4@ 5@ cornerB 6@ 7@
then
Model.Load(#DODO)
Model.Load(1573)
038B: load_requested_models
jump @Create
else
0005: 4@ = -2697.0837
0005: 5@ = 374.9268
0005: 6@ = -2114.3589
0005: 7@ = 1189.8759
if and
0154: actor $PLAYER_ACTOR in_zone 'SF'
00A3: actor $PLAYER_ACTOR sphere 0 in_rectangle_cornerA 4@ 5@ cornerB 6@ 7@
then
Model.Load(#DODO)
Model.Load(1573)
038B: load_requested_models
jump @Create
else
0005: 4@ = 1574.1027
0005: 5@ = 2159.2104
0005: 6@ = 2486.0554
0005: 7@ = 1407.873
if and
0154: actor $PLAYER_ACTOR in_zone 'VE'
00A3: actor $PLAYER_ACTOR sphere 0 in_rectangle_cornerA 4@ 5@ cornerB 6@ 7@
jf @Begin
Model.Load(#DODO)
Model.Load(1573)
038B: load_requested_models
jump @Create
end
end
end
:Create
wait 0
if and
Model.Available(#DODO)
Model.Available(1573)
jf @Create
0208: 0@ = random_float_in_ranges 4@ 6@
0208: 1@ = random_float_in_ranges 5@ 7@
02CE: 2@ = ground_z_at 0@ 1@ 1000.0
0009: 2@ += 100.0
0208: 3@ = random_float_in_ranges 0.0 360.0
Car.Create(8@, #DODO, 0@, 1@, 2@)
Car.Angle(8@) = 3@
Car.LockInCurrentPosition(8@) = True
Object.Init(12@, 1573, 0.0, 0.0, 0.0)
Object.Angle(12@) = 3@
0681: attach_object 12@ to_car 8@ with_offset 0.0 -1.0 -1.9 rotation 0.0 0.0 0.0
Model.Destroy(#DODO)
Model.Destroy(1573)
0560: create_random_actor_in_car 8@ handle_as 10@
Actor.SetImmunities(10@, 1, 1, 1, 1, 1)
0209: 13@ = random_int_in_ranges 0 4
if
13@ == 1
then
13@ = Audiostream.Load3D("cleo\sound\vc_dodo1.wav")
Audiostream.PerformAction(13@, PLAY)
0ABC: set_audiostream 13@ volume 4.0
Audiostream.Loop(13@, 1)
Audiostream.LinkToCar(13@, 8@)
02D4: car 8@ turn_off_engine
else
if
13@ == 2
then
13@ = Audiostream.Load3D("cleo\sound\vc_dodo2.wav")
Audiostream.PerformAction(13@, PLAY)
0ABC: set_audiostream 13@ volume 4.0
Audiostream.Loop(13@, 1)
Audiostream.LinkToCar(13@, 8@)
02D4: car 8@ turn_off_engine
end
end
jump @Variable
:Variable
wait 0
0004: 19@ = 0
0208: 3@ = random_float_in_ranges -0.1 0.1
if or
-0.05 > 3@
3@ > 0.05
jf @Variable
jump @If
:Fly
wait 0
0407: store_coords_to 0@ 1@ 32@ from_car 8@ with_offset 0.0 0.15 0.0
0407: store_coords_to 14@ 15@ 16@ from_car 8@ with_offset 6.0 -0.25 1.0
0407: store_coords_to 17@ 18@ 16@ from_car 8@ with_offset -6.0 -0.25 1.0
if
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 0@ 1@ 2@ radius 60.0 60.0 60.0
then
04D5: create_corona_at 14@ 15@ 16@ radius 1.0 type 1 flare 2 RGB 255 255 255
04D5: create_corona_at 17@ 18@ 16@ radius 1.0 type 1 flare 2 RGB 255 255 255
end
0008: 19@ += 1
if
not 19@ > 45
then
0407: store_coords_to 20@ 21@ 22@ from_car 8@ with_offset 0.0 -6.6 1.9
if
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 0@ 1@ 2@ radius 60.0 60.0 60.0
then
04D5: create_corona_at 20@ 21@ 22@ radius 0.6 type 1 flare 0 RGB 255 0 0
end
else
if
19@ > 90
then
0004: 19@ = 0
end
end
Car.PutAt(8@, 0@, 1@, 2@)
9@ = Car.Angle(8@)
005B: 9@ += 3@
Car.Angle(8@) = 9@
jump @If
:If
if and
8495: not car 8@ burning
not Car.Wrecked(8@)
jf @End2
if or
0202: actor $PLAYER_ACTOR near_car 8@ radius 400.0 400.0 sphere 0
00A3: actor $PLAYER_ACTOR sphere 0 in_rectangle_cornerA 4@ 5@ cornerB 6@ 7@
jf @End
077E: get_active_interior_to $ACTIVE_INTERIOR
if or
not $ACTIVE_INTERIOR == 0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 877.9877 -28.3817 63.1953 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2025.451 997.5287 10.8203 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -694.6745 956.7463 12.2547 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -2025.7168 157.9236 29.0391 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -2037.8574 -2525.165 30.625 radius 60.0 60.0 60.0
jf @Fly
jump @End
:End
wait 0
Audiostream.Release(13@)
Object.Destroy(12@)
Actor.RemoveReferences(10@)
Car.RemoveReferences(8@)
jump @Begin
:End2
wait 0
Car.LockInCurrentPosition(8@) = False
jump @End3
:End3
wait 0
11@ = Player.WantedLevel($PLAYER_CHAR)
if
11@ < 2
jf @End
0008: 11@ += 1
Player.WantedLevel($PLAYER_CHAR) = 11@
jump @End3
Спасибо огромное!!! Теперь он плавный!!! Скажи пожалуйста, где тут стрчоки кода, которые отвечают за скорост передвижения, и координаты передвижения.Смотря какой эффект ты ожидаешь от своей работы. Если судить по коду, то каждый кадр это дело себе обновляет маршрут, и это с элементами рандома, что для стабильной работы нот гуд. Есть (как по мне) лишние проверки, а также циклы которые и могут поломать логику работы. Я бы сел да занялся его полной доработкой, но боюсь займет тонну времени :(
Я нашел похоже более хорошую версию твоего скрипта. Тут есть хороший алгоритм полета, и скорее всего более адекватный чем твой. Посмотри, может быть тебе стоит использовать базу этого скрипта в своей поделке?
CLEO:{$CLEO .cs} 0000: NOP :Begin wait 0 077E: get_active_interior_to $ACTIVE_INTERIOR if or not $ACTIVE_INTERIOR == 0 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 877.9877 -28.3817 63.1953 radius 60.0 60.0 60.0 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2025.451 997.5287 10.8203 radius 60.0 60.0 60.0 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -694.6745 956.7463 12.2547 radius 60.0 60.0 60.0 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -2025.7168 157.9236 29.0391 radius 60.0 60.0 60.0 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -2037.8574 -2525.165 30.625 radius 60.0 60.0 60.0 then jump @Begin else 0005: 4@ = 1374.0687 0005: 5@ = -1889.2344 0005: 6@ = 612.8045 0005: 7@ = -1295.6091 if and 0154: actor $PLAYER_ACTOR in_zone 'LA' 00A3: actor $PLAYER_ACTOR sphere 0 in_rectangle_cornerA 4@ 5@ cornerB 6@ 7@ then Model.Load(#DODO) Model.Load(1573) 038B: load_requested_models jump @Create else 0005: 4@ = -2697.0837 0005: 5@ = 374.9268 0005: 6@ = -2114.3589 0005: 7@ = 1189.8759 if and 0154: actor $PLAYER_ACTOR in_zone 'SF' 00A3: actor $PLAYER_ACTOR sphere 0 in_rectangle_cornerA 4@ 5@ cornerB 6@ 7@ then Model.Load(#DODO) Model.Load(1573) 038B: load_requested_models jump @Create else 0005: 4@ = 1574.1027 0005: 5@ = 2159.2104 0005: 6@ = 2486.0554 0005: 7@ = 1407.873 if and 0154: actor $PLAYER_ACTOR in_zone 'VE' 00A3: actor $PLAYER_ACTOR sphere 0 in_rectangle_cornerA 4@ 5@ cornerB 6@ 7@ jf @Begin Model.Load(#DODO) Model.Load(1573) 038B: load_requested_models jump @Create end end end :Create wait 0 if and Model.Available(#DODO) Model.Available(1573) jf @Create 0208: 0@ = random_float_in_ranges 4@ 6@ 0208: 1@ = random_float_in_ranges 5@ 7@ 02CE: 2@ = ground_z_at 0@ 1@ 1000.0 0009: 2@ += 100.0 0208: 3@ = random_float_in_ranges 0.0 360.0 Car.Create(8@, #DODO, 0@, 1@, 2@) Car.Angle(8@) = 3@ Car.LockInCurrentPosition(8@) = True Object.Init(12@, 1573, 0.0, 0.0, 0.0) Object.Angle(12@) = 3@ 0681: attach_object 12@ to_car 8@ with_offset 0.0 -1.0 -1.9 rotation 0.0 0.0 0.0 Model.Destroy(#DODO) Model.Destroy(1573) 0560: create_random_actor_in_car 8@ handle_as 10@ Actor.SetImmunities(10@, 1, 1, 1, 1, 1) 0209: 13@ = random_int_in_ranges 0 4 if 13@ == 1 then 13@ = Audiostream.Load3D("cleo\sound\vc_dodo1.wav") Audiostream.PerformAction(13@, PLAY) 0ABC: set_audiostream 13@ volume 4.0 Audiostream.Loop(13@, 1) Audiostream.LinkToCar(13@, 8@) 02D4: car 8@ turn_off_engine else if 13@ == 2 then 13@ = Audiostream.Load3D("cleo\sound\vc_dodo2.wav") Audiostream.PerformAction(13@, PLAY) 0ABC: set_audiostream 13@ volume 4.0 Audiostream.Loop(13@, 1) Audiostream.LinkToCar(13@, 8@) 02D4: car 8@ turn_off_engine end end jump @Variable :Variable wait 0 0004: 19@ = 0 0208: 3@ = random_float_in_ranges -0.1 0.1 if or -0.05 > 3@ 3@ > 0.05 jf @Variable jump @If :Fly wait 0 0407: store_coords_to 0@ 1@ 32@ from_car 8@ with_offset 0.0 0.15 0.0 0407: store_coords_to 14@ 15@ 16@ from_car 8@ with_offset 6.0 -0.25 1.0 0407: store_coords_to 17@ 18@ 16@ from_car 8@ with_offset -6.0 -0.25 1.0 if 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 0@ 1@ 2@ radius 60.0 60.0 60.0 then 04D5: create_corona_at 14@ 15@ 16@ radius 1.0 type 1 flare 2 RGB 255 255 255 04D5: create_corona_at 17@ 18@ 16@ radius 1.0 type 1 flare 2 RGB 255 255 255 end 0008: 19@ += 1 if not 19@ > 45 then 0407: store_coords_to 20@ 21@ 22@ from_car 8@ with_offset 0.0 -6.6 1.9 if 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 0@ 1@ 2@ radius 60.0 60.0 60.0 then 04D5: create_corona_at 20@ 21@ 22@ radius 0.6 type 1 flare 0 RGB 255 0 0 end else if 19@ > 90 then 0004: 19@ = 0 end end Car.PutAt(8@, 0@, 1@, 2@) 9@ = Car.Angle(8@) 005B: 9@ += 3@ Car.Angle(8@) = 9@ jump @If :If if and 8495: not car 8@ burning not Car.Wrecked(8@) jf @End2 if or 0202: actor $PLAYER_ACTOR near_car 8@ radius 400.0 400.0 sphere 0 00A3: actor $PLAYER_ACTOR sphere 0 in_rectangle_cornerA 4@ 5@ cornerB 6@ 7@ jf @End 077E: get_active_interior_to $ACTIVE_INTERIOR if or not $ACTIVE_INTERIOR == 0 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 877.9877 -28.3817 63.1953 radius 60.0 60.0 60.0 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2025.451 997.5287 10.8203 radius 60.0 60.0 60.0 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -694.6745 956.7463 12.2547 radius 60.0 60.0 60.0 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -2025.7168 157.9236 29.0391 radius 60.0 60.0 60.0 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -2037.8574 -2525.165 30.625 radius 60.0 60.0 60.0 jf @Fly jump @End :End wait 0 Audiostream.Release(13@) Object.Destroy(12@) Actor.RemoveReferences(10@) Car.RemoveReferences(8@) jump @Begin :End2 wait 0 Car.LockInCurrentPosition(8@) = False jump @End3 :End3 wait 0 11@ = Player.WantedLevel($PLAYER_CHAR) if 11@ < 2 jf @End 0008: 11@ += 1 Player.WantedLevel($PLAYER_CHAR) = 11@ jump @End3
Да, ты прав.Коорды это с 18 по 21 строку и соответствующие им же ниже. За плавность тут отвечает 108я строка, но могу ошибаться.
Кстати, не знаешь, есть ли скрипт, который записывает координаты передвижения в файл? Либо как по другому сделать свои координаты для DODO?Коорды это с 18 по 21 строку и соответствующие им же ниже. За плавность тут отвечает 108я строка, но могу ошибаться.
Нужно самому клепать файл, который выводит на экран коорды в реальном времени. Ну и затем уже записывать их в свой скрипт, наверно.Кстати, не знаешь, есть ли скрипт, который записывает координаты передвижения в файл?
// This file was decompiled using SASCM.ini published on 2020-11-11
{$CLEO .cs}
script_name 'PETROL'
stream_custom_script "A3C.S"
:PETROL_21
wait 0
077E: get_active_interior_to $ACTIVE_INTERIOR
if and
Player.Defined($PLAYER_CHAR)
Actor.Driving($PLAYER_ACTOR)
84C8: not actor $PLAYER_ACTOR driving_flying_vehicle
84A7: not actor $PLAYER_ACTOR driving_boat
89AE: not actor $PLAYER_ACTOR driving_train
jf @PETROL_21
if and
not Actor.DrivingVehicleType($PLAYER_ACTOR, #BIKE)
not Actor.DrivingVehicleType($PLAYER_ACTOR, #BMX)
not Actor.DrivingVehicleType($PLAYER_ACTOR, #MTBIKE)
not $ONMISSION == 1
$ACTIVE_INTERIOR == 0
jf @PETROL_21
if or
856E: not car 0@ defined
not Actor.InCar($PLAYER_ACTOR, 0@)
jf @PETROL_268
0@ = Actor.CurrentCar($PLAYER_ACTOR)
06A3: get_car 0@ mass_to 2@
0087: 5@ = 2@ // (float)
2@ *= 0.0005
2@ += 0.2703
5@ *= 0.0246
5@ += 7.6923
5@ /= 10.0
0092: 5@ = float 5@ to_integer
0093: 5@ = integer 5@ to_float
5@ *= 10.0
0087: 4@ = 5@ // (float)
4@ /= 4.0
0208: 10@ = random_float_in_ranges 4@ 5@
:PETROL_268
wait 0
077E: get_active_interior_to $ACTIVE_INTERIOR
if and
Player.Defined($PLAYER_CHAR)
Actor.Driving($PLAYER_ACTOR)
Actor.InCar($PLAYER_ACTOR, 0@)
not Car.Wrecked(0@)
not $ONMISSION == 1
$ACTIVE_INTERIOR == 0
jf @PETROL_21
if and
81AB: not car 0@ sphere 0 in_rectangle_cornerA 2123.381 928.5721 cornerB 2106.851 911.447 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA 2156.116 2755.251 cornerB 2139.349 2740.35 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA 2194.875 2484.607 cornerB 2210.604 2466.627 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA 1587.391 2205.624 cornerB 1604.394 2191.314 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA -1690.471 409.2204 cornerB -1661.258 417.7699 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA -2406.91 965.6361 cornerB -2415.942 986.1729 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA -1322.973 2686.835 cornerB -1335.121 2666.212 stopped
jf @PETROL_930
if and
81AB: not car 0@ sphere 0 in_rectangle_cornerA -2240.084 -2567.754 cornerB -2245.656 -2554.021 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA -1616.829 -2719.784 cornerB -1595.79 -2707.281 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA -100.651 -1178.035 cornerB -81.0769 -1162.049 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA 652.7013 -575.2865 cornerB 658.194 -555.3245 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA 1937.651 -1784.631 cornerB 1945.447 -1762.005 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA -1482.618 1871.488 cornerB -1458.993 1854.385 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA 1388.339 454.0105 cornerB 1375.292 465.7418 stopped
jf @PETROL_930
if
81AB: not car 0@ sphere 0 in_rectangle_cornerA 619.5162 1671.839 cornerB 606.5409 1711.813 stopped
jf @PETROL_930
set_cleo_shared_var 101 10@
if
is_car_engine_on 0@
jf @PETROL_268
if
10@ > 0.0
jf @PETROL_877
get_cleo_shared_var 1@ 102
1@ *= 0.0086
1@ += 0.7
006B: 1@ *= 2@ // (float)
1@ /= 2.0
1@ *= 0.01
0063: 10@ -= 1@ // (float)
jump @PETROL_912
:PETROL_877
if
847A: not actor $PLAYER_ACTOR driving_bike
jf @PETROL_907
0918: set_car 0@ engine_operation 0
jump @PETROL_912
:PETROL_907
02D4: car 0@ turn_off_engine
:PETROL_912
set_cleo_shared_var 101 10@
wait 100
jump @PETROL_268
:PETROL_930
7@ = 0.0
:PETROL_940
wait 35
if and
Player.Defined($PLAYER_CHAR)
Actor.Driving($PLAYER_ACTOR)
Actor.InCar($PLAYER_ACTOR, 0@)
not Car.Wrecked(0@)
not $ONMISSION == 1
jf @PETROL_21
if and
81AB: not car 0@ sphere 0 in_rectangle_cornerA 2123.381 928.5721 cornerB 2106.851 911.447 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA 2156.116 2755.251 cornerB 2139.349 2740.35 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA 2194.875 2484.607 cornerB 2210.604 2466.627 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA 1587.391 2205.624 cornerB 1604.394 2191.314 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA -1690.471 409.2204 cornerB -1661.258 417.7699 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA -2406.91 965.6361 cornerB -2415.942 986.1729 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA -1322.973 2686.835 cornerB -1335.121 2666.212 stopped
jf @PETROL_1423
if and
81AB: not car 0@ sphere 0 in_rectangle_cornerA -2240.084 -2567.754 cornerB -2245.656 -2554.021 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA -1616.829 -2719.784 cornerB -1595.79 -2707.281 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA -100.651 -1178.035 cornerB -81.0769 -1162.049 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA 652.7013 -575.2865 cornerB 658.194 -555.3245 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA 1937.651 -1784.631 cornerB 1945.447 -1762.005 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA -1482.618 1871.488 cornerB -1458.993 1854.385 stopped
81AB: not car 0@ sphere 0 in_rectangle_cornerA 1388.339 454.0105 cornerB 1375.292 465.7418 stopped
jf @PETROL_1423
if
01AB: car 0@ sphere 0 in_rectangle_cornerA 619.5162 1671.839 cornerB 606.5409 1711.813 stopped
jf @PETROL_268
:PETROL_1423
if
8031: not 10@ >= 5@ // Note: the incorrect math opcode was used here
jf @PETROL_1633
if
not Player.Money($PLAYER_CHAR) > 0
jf @PETROL_1491
if
88FE: not text_box_displayed
jf @PETROL_1484
03E5: show_text_box 'NOMONEY' // ~s~e—e ®y›®o —ož©¥e še®e™!
:PETROL_1484
jump @PETROL_1626
:PETROL_1491
0087: 3@ = 5@ // (float)
3@ *= 51.5464
3@ += 4381.443
3@ /= 35.0
0087: 6@ = 5@ // (float)
0073: 6@ /= 3@ // (float)
005B: 10@ += 6@ // (float)
005B: 7@ += 6@ // (float)
if
7@ >= 1.0
jf @PETROL_1599
7@ -= 1.0
Player.Money($PLAYER_CHAR) += -1
:PETROL_1599
set_cleo_shared_var 101 10@
097A: play_audio_at 0.0 0.0 0.0 event 1133
:PETROL_1626
jump @PETROL_940
:PETROL_1633
if
0025: 10@ > 5@ // (float)
jf @PETROL_1660
0087: 10@ = 5@ // (float)
:PETROL_1660
jump @PETROL_940
Конкретно тут не вижу ничего что имело бы похожий эффект. Но предполагаю что тут есть вторая часть скрипта. Я прав?помогите с этим скриптом. он почему то убирает маркеры с радара, маркеры входа в дома и т.д, которые очень нужны!
покажите пожалуйста чайнику, который всё забыл, пример, как сделать цикл с включением и отключением на команду в сампе.
0B34: register "cmd" @cmd
While true
wait 0
if 31@ == 1
then
// code
end
end
:cmd
0B12: 31@ = 31@ XOR 1
0B43: samp cmd ret