Нихуя не понятно, покажиТут еще одна проблема. Данная команда /info отвечает за вывод инфы о скрипте в чат или диалог. Но samp.cmdret ( ) обновляет команду, т.е. скрипт идет заного. То что ниже - не работает.
Т.е., то, что после samp.cmdret ( ) не пашет
[Memory] GTA SA HUD Addresses - GTAG Forum(https://gtagmodding.com/forums/index.php?showtopic=265)Можно read/write опкод на изменение цвета полоски армора?
Массив. Если не шаришь, у Таира есть гайд на ютубеМожно ли как-то увеличить количество переменных? Мне не хватает
1.Есть какой-то опкод, который может вернуть тру или фолс, если между игроками есть какой-то объект?
есть какой-то опкод, чтобы делал это:
10@ = 1@ - 2@
типа записывает в 10, значение которое получилось когда мы от 1@ отняли 2@
06BD: no_obstacles_between 3@ 4@ 5@ and 6@ 7@ 8@ solid 0 car 0 actor 0 object 1 particle 0
//1@ = 228
//2@ = 1337
10@ = 1@
10@ -= 2@
{$CLEO .cs}
0000:
:SampAV
wait 0
if
0AFA: is_samp_available
jf @SampAV
:Prover
wait 0
if and
80DF: not actor $PLAYER_ACTOR driving
0B61: samp is_local_player_spawned
jf @Prover
00A0: store_actor $PLAYER_ACTOR position_to 1@ 2@ 3@
00A0: store_actor $PLAYER_ACTOR position_to 4@ 5@ 6@
0087: 10@ = 3@
0063: 10@ -= 6@
if
0019: 10@ > 20
then
0AF8: samp add_message_to_chat "1337" color 0xFFFFFFF
else_jump @Prover
end
Ты же на метках пишешь, then end не в темуПацаны, какого фига? При спавне игрок куда-то тпшится, все моргает, а потом крашит
Код:{$CLEO .cs} 0000: :SampAV wait 0 if 0AFA: is_samp_available jf @SampAV :Prover wait 0 if and 80DF: not actor $PLAYER_ACTOR driving 0B61: samp is_local_player_spawned jf @Prover 00A0: store_actor $PLAYER_ACTOR position_to 1@ 2@ 3@ 00A0: store_actor $PLAYER_ACTOR position_to 4@ 5@ 6@ 0087: 10@ = 3@ 0063: 10@ -= 6@ if 0019: 10@ > 20 then 0AF8: samp add_message_to_chat "1337" color 0xFFFFFFF else_jump @Prover end
{$CLEO .cs}
0000:
:SampAV
wait 0
if
0AFA: is_samp_available
jf @SampAV
while true
wait 0
if and
80DF: not actor $PLAYER_ACTOR driving
0B61: samp is_local_player_spawned
then
00A0: store_actor $PLAYER_ACTOR position_to 1@ 2@ 3@
00A0: store_actor $PLAYER_ACTOR position_to 4@ 5@ 6@
0087: 10@ = 3@
0063: 10@ -= 6@
if
10@ > 20.0
then
0AF8: samp add_message_to_chat "1337" color 0xFFFFFFF
end
end
{$CLEO}
0000:
thread "Buhanka"
if not 0@ = SAMP.Base()
then 0A93: end_custom_thread
end
while not SAMP.Available()
wait 100
end
0B34: samp register_client_command "info" to_label @cmd_mycmd
WHILE TRUE
wait 0
if 0@ == TRUE
then
0AF8: samp add_message_to_chat "==========================================" color 0x4B0082
0AF8: samp add_message_to_chat "ТУТ ТЕКСТ" color 0x4B0082
0AF8: samp add_message_to_chat "ТУТ ТОЖЕ ТЕКСТ" color 0x4B0082
0AF8: samp add_message_to_chat "==========================================" color 0x4B0082
0@ = FALSE
end
END
:cmd_mycmd
0@ = TRUE
0B35: samp 1@ = get_last_command_params
:noname_1
wait 0
if
key_down 18
then
print "daun" 1000
else
jump @noname_1
end
jump @noname_1
Ну смотри, машина. У меня есть скрипт, в котором присутствует /info, выводящая информацию. Функция по созданию команды info стоит в самом начале, после проверки загрузки сампа. В конце этой команды стоит samp.cmdret ( ) - обновляет проверку команды. А после скрипта на команду идет уже самое главное, например текст в чат.
Сейчас напишу что-нибудь левое - но по принциппохожее:
CLEO:{$CLEO} 0000: thread "Buhanka" if not 0@ = SAMP.Base() then 0A93: end_custom_thread end while not SAMP.Available() wait 100 end 0B34: samp register_client_command "info" to_label @cmd_mycmd WHILE TRUE wait 0 if 0@ == TRUE then 0AF8: samp add_message_to_chat "==========================================" color 0x4B0082 0AF8: samp add_message_to_chat "ТУТ ТЕКСТ" color 0x4B0082 0AF8: samp add_message_to_chat "ТУТ ТОЖЕ ТЕКСТ" color 0x4B0082 0AF8: samp add_message_to_chat "==========================================" color 0x4B0082 0@ = FALSE end END :cmd_mycmd 0@ = TRUE 0B35: samp 1@ = get_last_command_params :noname_1 wait 0 if key_down 18 then print "daun" 1000 else jump @noname_1 end jump @noname_1
Если писать так, как выше - работает команда, но не работает скрипт ниже, т.к. все циклится на команде.
И доп. вопрос. Если я создаю диалог, как сделать так, чтобы определенные части текста были с новой строки. Например я хочу, чтобы диалог выглядел вот так:
============================================
Автор: даун
Активация: мозгом
Спасибо спонсору: 8005553535
============================================
А получается вот так:
============================================
Автор: даун Активация: мозгом Спасибо спонсору: 8005553535
============================================
Ничего не поменялось, дальше все моргает дико.Ты же на метках пишешь, then end не в тему
И если у тебя float, то и сравнение > тоже float. И зах свои корды 2 раза записывать
CLEO:{$CLEO .cs} 0000: :SampAV wait 0 if 0AFA: is_samp_available jf @SampAV while true wait 0 if and 80DF: not actor $PLAYER_ACTOR driving 0B61: samp is_local_player_spawned then 00A0: store_actor $PLAYER_ACTOR position_to 1@ 2@ 3@ 00A0: store_actor $PLAYER_ACTOR position_to 4@ 5@ 6@ 0087: 10@ = 3@ 0063: 10@ -= 6@ if 10@ > 20.0 then 0AF8: samp add_message_to_chat "1337" color 0xFFFFFFF end end
Так а где твоя телепортация? Мы ванги ?Тут вижу только запись кордов 2 раза и вычитание высоты, которая врядли будет больше 20. А, ну еще ты одну F забыл в цвете добавитьНичего не поменялось, дальше все моргает дико.
Коорды я 2 раза записал потому что мне нужно чтобы их потом сравнить. Типа если я телепортировался больше чем на 20 метров, мне выводилось сообщение.
но все равно мне кажется что я это неправильно сделла
Если тебе нужно высчитать дистанцию между двумя точками, вбей опкод в поиске что то типа "distance between", там есть с XY и с XYZля...
ладно. может кто-то объяснить что высота и т.д по x y z??