Вопросы по CLEO-скриптингу

TheArtemMaps

Новичок
27
0
помогите с этим скриптом. он почему то убирает маркеры с радара, маркеры входа в дома и т.д, которые очень нужны!

скрипт:
// 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
 

Lobber

Известный
178
57
помогите с этим скриптом. он почему то убирает маркеры с радара, маркеры входа в дома и т.д, которые очень нужны!
Конкретно тут не вижу ничего что имело бы похожий эффект. Но предполагаю что тут есть вторая часть скрипта. Я прав?
 

Lobber

Известный
178
57
прав. А3C.s это и есть он. но его как открыть то?
Ровно также как и основной, через SB

Где можно почитать про Include и {$USE} ? Не первый раз вижу их использование, но вот откуда взять документацию?
 

FakeSince

Активный
245
55
Есть клео пикадора, показывающее линии к объектам и их айди:модель
Как сделать так, чтоб это клео показывало линии только к объектам, чья модель = 1685 к примеру?
 

TheArtemMaps

Новичок
27
0
Ровно также как и основной, через SB


Где можно почитать про Include и {$USE} ? Не первый раз вижу их использование, но вот откуда взять документацию?
Открыл
1635594268801.png
 

TheArtemMaps

Новичок
27
0
Переделай файл в расширение .cs и попробуй опять
Вот содержимое:
скрипт:
// This file was decompiled using SASCM.ini published on 2020-11-11
{$CLEO .cs}

0000: NOP

:NONAME_2
wait 0
0@ = 0
Marker.CreateIconWithoutSphere(1@, 55, -1673.311, 415.5818, 6.8497)
Marker.CreateIconWithoutSphere(2@, 55, -2407.548, 974.9628, 44.9663)
Marker.CreateIconWithoutSphere(3@, 55, -1329.865, 2665.999, 49.6674)
Marker.CreateIconWithoutSphere(4@, 55, 603.6575, 1703.664, 7.1044)
Marker.CreateIconWithoutSphere(5@, 55, 2114.625, 920.1982, 10.8203)
Marker.CreateIconWithoutSphere(6@, 55, 2148.349, 2747.878, 10.8203)
Marker.CreateIconWithoutSphere(7@, 55, 2202.267, 2473.881, 10.8203)
Marker.CreateIconWithoutSphere(8@, 55, 1596.61, 2198.683, 10.8203)
Marker.CreateIconWithoutSphere(9@, 55, -2243.631, -2559.158, 31.9219)
Marker.CreateIconWithoutSphere(10@, 55, -1606.27, -2714.083, 48.5335)
Marker.CreateIconWithoutSphere(11@, 55, -90.1793, -1169.674, 2.3974)
Marker.CreateIconWithoutSphere(12@, 55, 655.2332, -565.256, 16.3359)
Marker.CreateIconWithoutSphere(13@, 55, 1943.467, -1773.244, 13.3906)
Marker.CreateIconWithoutSphere(14@, 55, -1469.834, 1864.404, 32.6328)
Marker.CreateIconWithoutSphere(15@, 55, 1381.541, 459.7987, 20.3452)

:NONAME_343
wait 0
read_memory 0@ 12216487 1 1
if
   not 0@ == 0
jf @NONAME_343
Marker.Disable(1@)
Marker.Disable(2@)
Marker.Disable(3@)
Marker.Disable(4@)
Marker.Disable(5@)
Marker.Disable(6@)
Marker.Disable(7@)
Marker.Disable(8@)
Marker.Disable(9@)
Marker.Disable(10@)
Marker.Disable(11@)
Marker.Disable(12@)
Marker.Disable(13@)
Marker.Disable(14@)
Marker.Disable(15@)

:NONAME_454
wait 0
if or
09FA:   is_menu_closed
03D9:   save_done
jf @NONAME_454
jump @NONAME_2

Там как я понимаю надо marker.disable удалить весь и все?
 

Lobber

Известный
178
57
Там как я понимаю надо marker.disable удалить весь и все?
Возможно это поможет. Но не думаю что прям в этом дело. Скорее всего этот поток отвечает за отрисовку самих азс на карте, и конфликтует с игрой. Эксперементируй!
 
  • Нравится
Реакции: TheArtemMaps и MAHEKEH

TheArtemMaps

Новичок
27
0
я просто удалил его. азс отрисовываются на карте и без него

я просто удалил его. азс отрисовываются на карте.
Возможно это поможет. Но не думаю что прям в этом дело. Скорее всего этот поток отвечает за отрисовку самих азс на карте, и конфликтует с игрой. Эксперементируй!
 

FakeSince

Активный
245
55
Нашел старый скрипт даркпикселя на поиск тыкв, переделал под свои нужды, но вот в чем вопрос:
Как сделать так, чтоб когда объект найден в зоне стрима в чат писало какой-либо текст и воспроизводило какой либо звук?
CLEO:
{$CLEO}
0000:

REPEAT
0001: 0
UNTIL 0AFA:
0AF8: samp add_message_to_chat "{48D1CC}[House Detector] {ffffff}Скрипт активирован!" color -1
0BB9: samp 0@ = get_pickup_pool_ptr

WHILE TRUE
0001: 0

    FOR 1@ = 0 TO {MAX_PICKUPS}4096 [STEP = 1]
        IF 0B51: samp 2@ = pickup_handle_by_id 1@
        THEN
        0A90: 2@ = 1@ * 20
        000A: 2@ += 61444
        000A: 2@ += 0@ // stPickup
        0A8D: 3@ = read_memory 2@ size 4 virtual_protect TRUE // iModelID
            IF 0039:   3@ == 1273
            THEN
            0C0C: 3@ = struct 2@ offset 8 size 4 // X
            0C0C: 4@ = struct 2@ offset 12 size 4 // Y
            0C0C: 5@ = struct 2@ offset 16 size 4 // Z
                IF 00C2:   sphere_onscreen 3@ 4@ 5@ radius 5.0
                THEN
                0B55: convert_3D_coords 3@ 4@ 5@ to_screen 3@ 4@
                00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
                0B55: convert_3D_coords 5@ 6@ 7@ to_screen 5@ 6@
                0B68: render draw_line_point1 5@ 6@ point2 3@ 4@ width 1 color 0xFF4ECC18
                END
            END
        END
    END

END
И можно ли тут сделать активацию по команде?
 
Последнее редактирование: