Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
Проблема с написанием клео, в котором способ активации - команда. Пишу скрипт с активацией команды, и когда ставлю wait 0 в цикле while true игру крашит варнингами при загрузке, вылетает около 10-12 варнингов за мс., а если поставлю не wait 0, а выше, то варнинги идут с указанной задержкой и все равно крашит, когда загрузятся 10-12 варнингов.
Так со всеми скриптами этого типа. Укажите на ошибку.
Код:
{$CLEO}
0000:
repeat
wait 0
until samp.Available()
0B34: samp register_client_command "noname_2" to_label @noname_2
:noname_3
while true
wait 0
if
33@ = true
then
jump @noname_1
else_jump @noname_3
samp.CmdRet()
:noname_1
wait 0
if and
actor.Driving($PLAYER_ACTOR)
key_down 82
else_jump @noname_3
03C0: 2@ = actor $PLAYER_ACTOR car
00AA: store_car 2@ position_to 3@ 4@ 5@
wait 50
00AB: put_car 2@ at 3@ 4@ 5@ 0.0
wait 1500
jump @noname_1
:noname_2
wait 0
if
33@ = false
then
33@ = true
printf "activated" 1000
else
33@ = false
"deactivated" 1000
jump @noname_4
end
end
Проблема с написанием клео, в котором способ активации - команда. Пишу скрипт с активацией команды, и когда ставлю wait 0 в цикле while true игру крашит варнингами при загрузке, вылетает около 10-12 варнингов за мс., а если поставлю не wait 0, а выше, то варнинги идут с указанной задержкой и все равно крашит, когда загрузятся 10-12 варнингов.
Так со всеми скриптами этого типа. Укажите на ошибку.
CLEO:
{$CLEO}
0000:
repeat
wait 0
until samp.Available()
0B34: samp register_client_command "noname_2" to_label @noname_2
:noname_3
while true
wait 0
if
33@ = true
then
jump @noname_1
else_jump @noname_3
samp.CmdRet()
:noname_1
wait 0
if and
actor.Driving($PLAYER_ACTOR)
key_down 82
else_jump @noname_3
03C0: 2@ = actor $PLAYER_ACTOR car
00AA: store_car 2@ position_to 3@ 4@ 5@
wait 50
00AB: put_car 2@ at 3@ 4@ 5@ 0.0
wait 1500
jump @noname_1
:noname_2
wait 0
if
33@ = false
then
33@ = true
printf "activated" 1000
else
33@ = false
"deactivated" 1000
jump @noname_4
end
end
а ни че что у тебя таймер в 33@ и через опкод 00AB: put_car 2@ at 3@ 4@ 5@ 0.0 ты выводишь 5 значений, а там 4?
на
CLEO:
{$CLEO .cs}
0000:
repeat
wait 0
until 0AFA: is_samp_available
0B34: samp register_client_command "activate" to_label @activate
while true
wait 0
if 31@ == 1
then
if and
0AB0: key_pressed 82 //key "R"
00DF: actor $PLAYER_ACTOR driving
then
//Действие
03C0: 0@ = actor $PLAYER_ACTOR car
00AA: store_car 0@ position_to 1@ 2@ 3@
00AB: put_car 0@ at 1@ 2@ 0.0
wait 1000
end
end
end
:activate
0B12: 31@ = 31@ XOR 1
if 31@ == 1
then printf "activated" 1000
end
if 31@ == 0
then printf "deactivated" 1000
end
0B43: samp cmd_ret
Небольшая проблема. Закомментировав эту часть кода у меня перестала крашить игра:
Код:
:check
wait 0
if 0AAB: file_exists "CLEO\settings_221.ini"
then
0AF0: 4@ = get_int_from_ini_file "cleo\settings_221.ini" section "KEY_SETTINGS" key "KEY"
else
0AF1: write_int "82" to_ini_file "cleo\settings_221.ini" section "KEY_SETTINGS" key "KEY"
end
P.S. Помогите, хотел сделать так: идёт проверка на присутствие ini файла, если же он есть, то из строки в 4@ берется цифра (номер клавиши), если же нету, то создается ini файл с цифрой (номер клавиши) 82, тем самым я хотел сделать смену клавиши для скрипта через ini, использовав потом key_down 4@
Небольшая проблема. Закомментировав эту часть кода у меня перестала крашить игра:
Код:
:check
wait 0
if 0AAB: file_exists "CLEO\settings_221.ini"
then
0AF0: 4@ = get_int_from_ini_file "cleo\settings_221.ini" section "KEY_SETTINGS" key "KEY"
else
0AF1: write_int "82" to_ini_file "cleo\settings_221.ini" section "KEY_SETTINGS" key "KEY"
end
P.S. Помогите, хотел сделать так: идёт проверка на присутствие ini файла, если же он есть, то из строки в 4@ берется цифра (номер клавиши), если же нету, то создается ini файл с цифрой (номер клавиши) 82, тем самым я хотел сделать смену клавиши для скрипта через ini, использовав потом key_down 4@
Небольшая проблема. Закомментировав эту часть кода у меня перестала крашить игра:
Код:
:check
wait 0
if 0AAB: file_exists "CLEO\settings_221.ini"
then
0AF0: 4@ = get_int_from_ini_file "cleo\settings_221.ini" section "KEY_SETTINGS" key "KEY"
else
0AF1: write_int "82" to_ini_file "cleo\settings_221.ini" section "KEY_SETTINGS" key "KEY"
end
P.S. Помогите, хотел сделать так: идёт проверка на присутствие ini файла, если же он есть, то из строки в 4@ берется цифра (номер клавиши), если же нету, то создается ini файл с цифрой (номер клавиши) 82, тем самым я хотел сделать смену клавиши для скрипта через ini, использовав потом key_down 4@
Понял свою ошибку...
0AF1: write_int "82" to_ini_file "cleo\settings_221.ini" section "KEY_SETTINGS" key "KEY" - 82 (ид клавиши) не надо было брать в " "
т.е. правильный вариант: 0AF1: write_int 82 to_ini_file "cleo\settings_221.ini" section "KEY_SETTINGS" key "KEY"
Как разделить текст на строчки в диалоге? Где-то вычитал, мол использовать \t, 0x9 - куда не ставил, не выходит.
Код:
0B3B: samp show_dialog id 420 caption "dialog" text "text 1 text 2 text 3" button_1 "CLOSE" button_2 "CLOSE" style 0
0B3B: samp show_dialog id 420 caption "dialog" text "text 1 text 2 text 3" button_1 "CLOSE" style 0
А перенос строки вроде /n
Dialog Styles - SA-MP Wiki(https://sampwiki.blast.hk/wiki/Dialog_Styles)
0B3B: samp show_dialog id 420 caption "dialog" text "text 1 text 2 text 3" button_1 "CLOSE" style 0
А перенос строки вроде /n
Dialog Styles - SA-MP Wiki(https://sampwiki.blast.hk/wiki/Dialog_Styles)