Скрипт включается по команде, как поменять на клавишу?

Kp0Nk

Известный
Автор темы
58
5
CLEO:
0662: printstring "CLEO PRITSEP"
thread "MULTITHREAD"

:MULTITHREAD_31
wait 40
   SAMP.Available
else_jump @MULTITHREAD_31
0B34: samp register_client_command "t" to_label @MULTITHREAD_482

Я пытался прописать ,что то типо такого, он вообще при запуске запускается и все. И туда сюда "волочил" строки, не получается у меня 😵‍💫 Есть схожая тема. Но я все равно не понял что они имели в виду.
CLEO:
0662: printstring "CLEO PRITSEP"
thread "MULTITHREAD"

:MULTITHREAD_31
wait 40
   SAMP.Available
0AB0: key_pressed 113
else_jump @MULTITHREAD_31
jump @MULTITHREAD_482


И сразу второй вопросик , как сделать чтобы не в чат писалось ,а постоянно висело на экране, активирован скрипт или нет
CLEO:
:MULTITHREAD_482
if
  4@ == 0
else_jump @MULTITHREAD_563
chatmsg "[Trailer]:{EAEAEA} Статус: {68f609}активирован" 15484990
jump @MULTITHREAD_621

:MULTITHREAD_563
chatmsg "[Trailer]:{EAEAEA} Статус: {2a09fb}деактивирован" 15484990

:MULTITHREAD_621
0B12: 4@ = 4@ XOR 1
SAMP.CmdRet
 
Последнее редактирование:
Решение
Код не тестил, поэтому возможно будут баги )

CLEO:
{$CLEO .cs}

0000: NOP 

repeat
    wait 0
until not SAMP.Available

:key
wait 0
0AB0:   key_pressed 113
jf @key
wait 500

repeat
    0AD1: show_formatted_text_highpriority "Script:~G~Activated" time 100
    if Actor.Driving($PLAYER_ACTOR)
    then
        gosub @gosub_struct  
        0AEB: 6@ = car_struct 1@ handle    
        gosub @gosub_struct
        if and
        1@ == 0
        87AB:   not car 6@ has_attached_trailer 0@
        then
            0@ = Actor.CurrentCar($PLAYER_ACTOR)
            0407: store_coords_to 10@ 11@ 12@ from_car 0@ with_offset 0.0 0.0 0.0
            0407: store_coords_to 13@ 14@ 15@ from_car 0@ with_offset 0.0 -15.0 0.0
            if 06BD...

Bili Djin

Активный
137
67
CLEO:
0662: printstring "CLEO PRITSEP"
thread "MULTITHREAD"

:MULTITHREAD_31
wait 40
   SAMP.Available
else_jump @MULTITHREAD_31
0B34: samp register_client_command "t" to_label @MULTITHREAD_482

Я пытался прописать ,что то типо такого, он вообще при запуске запускается и все. И туда сюда "волочил" строки, не получается у меня 😵‍💫 Есть схожая тема. Но я все равно не понял что они имели в виду.
CLEO:
0662: printstring "CLEO PRITSEP"
thread "MULTITHREAD"

:MULTITHREAD_31
wait 40
   SAMP.Available
0AB0: key_pressed 113
else_jump @MULTITHREAD_31
jump @MULTITHREAD_482


И сразу второй вопросик , как сделать чтобы не в чат писалось ,а постоянно висело на экране, активирован скрипт или нет
CLEO:
:MULTITHREAD_482
if
  4@ == 0
else_jump @MULTITHREAD_563
chatmsg "[Trailer]:{EAEAEA} Статус: {68f609}активирован" 15484990
jump @MULTITHREAD_621

:MULTITHREAD_563
chatmsg "[Trailer]:{EAEAEA} Статус: {2a09fb}деактивирован" 15484990

:MULTITHREAD_621
0B12: 4@ = 4@ XOR 1
SAMP.CmdRet
CLEO:
:key
wait 0 // задержка в 0 MS, чтобы не крашнуло
0AB0:   key_pressed 113 // F2
jf @key // Если не нажата прыгаем на :key

repeat // начала цикла, его проверка будет в конце на строчке №11
    0AD1: show_formatted_text_highpriority "Script:~G~activated" time 100 // time 100 - сколько будет видна надпись в MS. Сам потом подгонишь
    /*
    Твой код
    */
until 0AB0:   key_pressed 113 //  если нажата кнопка №113 ( F2 ), то прыгаем в начало цикла ( строка №6 ), если же нет - идём дальше
0AD1: show_formatted_text_highpriority "Script:~R~Deactivated" time 1000
jump @key
В строчке №7 и 12 используй ~G~ - чтобы писать зелёным и ~R~ - красным.
 
  • Нравится
Реакции: Kp0Nk

Kp0Nk

Известный
Автор темы
58
5
CLEO:
:key
wait 0 // задержка в 0 MS, чтобы не крашнуло
0AB0:   key_pressed 113 // F2
jf @key // Если не нажата прыгаем на :key

repeat // начала цикла, его проверка будет в конце на строчке №11
    0AD1: show_formatted_text_highpriority "Script:~G~activated" time 100 // time 100 - сколько будет видна надпись в MS. Сам потом подгонишь
    /*
    Твой код
    */
until 0AB0:   key_pressed 113 //  если нажата кнопка №113 ( F2 ), то прыгаем в начало цикла ( строка №6 ), если же нет - идём дальше
0AD1: show_formatted_text_highpriority "Script:~R~Deactivated" time 1000
jump @key
В строчке №7 и 12 используй ~G~ - чтобы писать зелёным и ~R~ - красным.
От души душевно в душу. Спасибки огромное
 
  • Нравится
Реакции: Bili Djin

Kp0Nk

Известный
Автор темы
58
5
:key
wait 0 // задержка в 0 MS, чтобы не крашнуло
0AB0: key_pressed 113 // F2
jf @key // Если не нажата прыгаем на :key

Кароче уведомление я сделал, а вот с активацией не выходит, там две команды же. Он прыгает вниз, а дальше вообще не пойму. Ну если есть возможность, прям пальцем показать, ну а если нет и так сойдет самое главное что уведомление висит и это отлично. А то забываю трейлер отцеплять при разгрузки :) И скрипт не мой :)

CLEO:
// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}

//-------------MAIN---------------
0662: printstring "CLEO PRITSEP"
thread "TRAILER"

:TRAILER_1
wait 40
   SAMP.Available
else_jump @TRAILER_1
0B34: samp register_client_command "t" to_label @TRAILER_2

:TRAILER_3
wait 0
if
   Actor.Driving($PLAYER_ACTOR)
else_jump @TRAILER_4

:TRAILER_5
  4@ == 1
else_jump @TRAILER_4
wait 0
gosub @TRAILER_6
if
  1@ > 0
else_jump @TRAILER_7
0AEB: 6@ = car_struct 1@ handle

:TRAILER_7
wait 200
gosub @TRAILER_6
if and
  1@ == 0
87AB:   not car 6@ has_attached_trailer 0@
else_jump @TRAILER_8
0@ = Actor.CurrentCar($PLAYER_ACTOR)
0407: store_coords_to 10@ 11@ 12@ from_car 0@ with_offset 0.0 0.0 0.0
0407: store_coords_to 13@ 14@ 15@ from_car 0@ with_offset 0.0 -15.0 0.0
if
06BD:   no_obstacles_between 13@ 14@ 15@ and 10@ 11@ 12@ solid 1 car 0 actor 0 object 1 particle 0
else_jump @TRAILER_8
0@ = Actor.CurrentCar($PLAYER_ACTOR)
16@ = Car.Angle(0@)
0407: store_coords_to 13@ 14@ 15@ from_car 0@ with_offset 0.0 0.0 0.0
Car.PutAt(6@, 10@, 11@, 12@)
Car.Angle(6@) = 16@
0893: put_trailer 6@ on_cab 0@

:TRAILER_8
jump @TRAILER_5

:TRAILER_4
jump @TRAILER_3

:TRAILER_6
0@ = Actor.CurrentCar($PLAYER_ACTOR)
0A97: 1@ = car 0@ struct
1@ += 1224
0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
return

:TRAILER_2
if
  4@ == 0
else_jump @TRAILER_9
0AD1: show_formatted_text_highpriority "~G~Trailer" time 9999999
jump @TRAILER_10

:TRAILER_9
0AD1: show_formatted_text_highpriority "~R~Deactivated" time 1000

:TRAILER_10
0B12: 4@ = 4@ XOR 1
SAMP.CmdRet
 

Bili Djin

Активный
137
67
Кароче уведомление я сделал, а вот с активацией не выходит, там две команды же. Он прыгает вниз, а дальше вообще не пойму. Ну если есть возможность, прям пальцем показать, ну а если нет и так сойдет самое главное что уведомление висит и это отлично. А то забываю трейлер отцеплять при разгрузки :) И скрипт не мой :)

CLEO:
// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}

//-------------MAIN---------------
0662: printstring "CLEO PRITSEP"
thread "TRAILER"

:TRAILER_1
wait 40
   SAMP.Available
else_jump @TRAILER_1
0B34: samp register_client_command "t" to_label @TRAILER_2

:TRAILER_3
wait 0
if
   Actor.Driving($PLAYER_ACTOR)
else_jump @TRAILER_4

:TRAILER_5
  4@ == 1
else_jump @TRAILER_4
wait 0
gosub @TRAILER_6
if
  1@ > 0
else_jump @TRAILER_7
0AEB: 6@ = car_struct 1@ handle

:TRAILER_7
wait 200
gosub @TRAILER_6
if and
  1@ == 0
87AB:   not car 6@ has_attached_trailer 0@
else_jump @TRAILER_8
0@ = Actor.CurrentCar($PLAYER_ACTOR)
0407: store_coords_to 10@ 11@ 12@ from_car 0@ with_offset 0.0 0.0 0.0
0407: store_coords_to 13@ 14@ 15@ from_car 0@ with_offset 0.0 -15.0 0.0
if
06BD:   no_obstacles_between 13@ 14@ 15@ and 10@ 11@ 12@ solid 1 car 0 actor 0 object 1 particle 0
else_jump @TRAILER_8
0@ = Actor.CurrentCar($PLAYER_ACTOR)
16@ = Car.Angle(0@)
0407: store_coords_to 13@ 14@ 15@ from_car 0@ with_offset 0.0 0.0 0.0
Car.PutAt(6@, 10@, 11@, 12@)
Car.Angle(6@) = 16@
0893: put_trailer 6@ on_cab 0@

:TRAILER_8
jump @TRAILER_5

:TRAILER_4
jump @TRAILER_3

:TRAILER_6
0@ = Actor.CurrentCar($PLAYER_ACTOR)
0A97: 1@ = car 0@ struct
1@ += 1224
0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
return

:TRAILER_2
if
  4@ == 0
else_jump @TRAILER_9
0AD1: show_formatted_text_highpriority "~G~Trailer" time 9999999
jump @TRAILER_10

:TRAILER_9
0AD1: show_formatted_text_highpriority "~R~Deactivated" time 1000

:TRAILER_10
0B12: 4@ = 4@ XOR 1
SAMP.CmdRet
Тебе активация вместо команды просто F2 надо?
 

Bili Djin

Активный
137
67
Код не тестил, поэтому возможно будут баги )

CLEO:
{$CLEO .cs}

0000: NOP 

repeat
    wait 0
until not SAMP.Available

:key
wait 0
0AB0:   key_pressed 113
jf @key
wait 500

repeat
    0AD1: show_formatted_text_highpriority "Script:~G~Activated" time 100
    if Actor.Driving($PLAYER_ACTOR)
    then
        gosub @gosub_struct  
        0AEB: 6@ = car_struct 1@ handle    
        gosub @gosub_struct
        if and
        1@ == 0
        87AB:   not car 6@ has_attached_trailer 0@
        then
            0@ = Actor.CurrentCar($PLAYER_ACTOR)
            0407: store_coords_to 10@ 11@ 12@ from_car 0@ with_offset 0.0 0.0 0.0
            0407: store_coords_to 13@ 14@ 15@ from_car 0@ with_offset 0.0 -15.0 0.0
            if 06BD:   no_obstacles_between 13@ 14@ 15@ and 10@ 11@ 12@ solid 1 car 0 actor 0 object 1 particle 0
            then
                0@ = Actor.CurrentCar($PLAYER_ACTOR)
                16@ = Car.Angle(0@)
                0407: store_coords_to 13@ 14@ 15@ from_car 0@ with_offset 0.0 0.0 0.0
                Car.PutAt(6@, 10@, 11@, 12@)
                Car.Angle(6@) = 16@
                0893: put_trailer 6@ on_cab 0@
            end
        end
    end
until 8AB0:   not key_pressed 113
0AD1: show_formatted_text_highpriority "Script:~R~Deactivated" time 1000
wait 1000
jump @key

:gosub_struct
0@ = Actor.CurrentCar($PLAYER_ACTOR)
0A97: 1@ = car 0@ struct
1@ += 1224
0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
return
 
Последнее редактирование:
  • Нравится
Реакции: Kp0Nk

Kp0Nk

Известный
Автор темы
58
5
Код не тестил, поэтому возможно будут баги )

CLEO:
{$CLEO .cs}

0000: NOP

repeat
    wait 0
until not SAMP.Available

:key
wait 0
0AB0:   key_pressed 113
jf @key
wait 500

repeat
    0AD1: show_formatted_text_highpriority "Script:~G~Activated" time 100
    if Actor.Driving($PLAYER_ACTOR)
    then
        gosub @gosub_struct
        0AEB: 6@ = car_struct 1@ handle
        gosub @gosub_struct
        if and
        1@ == 0
        87AB:   not car 6@ has_attached_trailer 0@
        then
            0@ = Actor.CurrentCar($PLAYER_ACTOR)
            0407: store_coords_to 10@ 11@ 12@ from_car 0@ with_offset 0.0 0.0 0.0
            0407: store_coords_to 13@ 14@ 15@ from_car 0@ with_offset 0.0 -15.0 0.0
            if 06BD:   no_obstacles_between 13@ 14@ 15@ and 10@ 11@ 12@ solid 1 car 0 actor 0 object 1 particle 0
            then
                0@ = Actor.CurrentCar($PLAYER_ACTOR)
                16@ = Car.Angle(0@)
                0407: store_coords_to 13@ 14@ 15@ from_car 0@ with_offset 0.0 0.0 0.0
                Car.PutAt(6@, 10@, 11@, 12@)
                Car.Angle(6@) = 16@
                0893: put_trailer 6@ on_cab 0@
            end
        end
    end
until 8AB0:   not key_pressed 113
0AD1: show_formatted_text_highpriority "Script:~R~Deactivated" time 1000
wait 1000
jump @key

:gosub_struct
0@ = Actor.CurrentCar($PLAYER_ACTOR)
0A97: 1@ = car 0@ struct
1@ += 1224
0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
return

ахахах спасибки, ты сделал что то прикольнее чем был скрипт. Он не работает как прежде, то при вводе команды не отцеплялся прицеп. А теперь при нажатие f2 он тепешится на место, но отцепить его можно :D То есть, при сдачи не будет краш вылетать, ну возможно если другой груз взять и нажать f2 будет. Кароче надо тестить


Проверил , если f2 нажать при сданном грузе, все стабильно, взял новый нажал на f2. Поехал, оторвал груз нажал f2 он опять на фуре. Пошел на Аризону.


Ну как и думал на Аризоне не работает, но прям криво. Жмешь он сразу деактивируется, но тоже самое было и на нубоРП. Поэтому я убрал вообще эти строки активации и деактивации. А при отцепи груза ,нажатие f2 ничего не исправляет, один раз получилось и увсе. А при задержание f2 , хотел попробовать может это сохраняет груз на фуре, ан нет, сразу краш :D Или когда пару раз побыстрее жмешь тоже краш.

Но затея офигенная, особенно для Аризоны после обновы дальнобойщиков.
 
Последнее редактирование:
  • Влюблен
Реакции: Bili Djin