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

astap_

Известный
Всефорумный модератор
626
597
Как можно достать из 0BD7: samp get_dialog_text 0@ ID nick и т.д?
sscanf
На сервере с помощью ТекстДрава сделан банковский счёт, типо поле для ввода пароля от банка. Как мне вбить в этот ТекстДрав пароль, записанный в переменную?
наверное есть вариант гораздо проще, но я из-за ограниченности своих знаний сделал бы так.
1. разбил бы переменную на несколько с помощью 0AD4: 0 = scan_string 0@ format "%s%s%s%s" 1@ 2@ 3@ 4@
2. через цикл for проверял бы все текстдравы на существование и наличия в них текста "1,2,3... итд."
3. при нахождении, отправлял бы клик по текстдраву
 

Natami

Участник
377
26
HELP! Пишу в чат "чит" , а в ответ мне "ans 6542173 окей"
Почему "id" не работает.
CLEO:
while true
wait 0
    if 0C18: 0 = strstr string1 9@ string2 "чит {01FCFF}("
    then
        0AA5: call 0x8220AD num_params 5 pop 5 params 9@ "чит {01FCFF}(%s_%s)[%d]" 13@v 12@v 11@
        wait 150
        0AF9: samp say_msg "ans %d окей" 11@
    end
    0C11: memset destination 9@ value 0 size 256
end

HELP! Пишу в чат "чит" , а в ответ мне "ans 6542173 окей"
Почему "id" не работает.
CLEO:
while true
wait 0
    if 0C18: 0 = strstr string1 9@ string2 "чит {01FCFF}("
    then
        0AA5: call 0x8220AD num_params 5 pop 5 params 9@ "чит {01FCFF}(%s_%s)[%d]" 13@v 12@v 11@
        wait 150
        0AF9: samp say_msg "ans %d окей" 11@
    end
    0C11: memset destination 9@ value 0 size 256
end
help (
 

astap_

Известный
Всефорумный модератор
626
597
HELP! Пишу в чат "чит" , а в ответ мне "ans 6542173 окей"
Почему "id" не работает.
CLEO:
while true
wait 0
    if 0C18: 0 = strstr string1 9@ string2 "чит {01FCFF}("
    then
        0AA5: call 0x8220AD num_params 5 pop 5 params 9@ "чит {01FCFF}(%s_%s)[%d]" 13@v 12@v 11@
        wait 150
        0AF9: samp say_msg "ans %d окей" 11@
    end
    0C11: memset destination 9@ value 0 size 256
end


help (
1. в 0x8220AD параметры передаются справа налево
2. передавать нужно указатель на переменную, а не её саму.
и ваще научитесь читать, уже миллионный раз эту тему мусолите: sscanf

Есть какой то исходник или тема?
FarmBot говнокод, но суть уловишь думаю
 

Andreyss

Новичок
15
0
Как можно заменить текст текстдрава на свой? Например
Бизнес имеет: ник
и ник заменить на свой?
 

The Spark

Известный
653
672
CLEO:
Render.DrawText(1@, 31@, 1478, 126, 0xFFffffff)
Играю на мониторе 16:9, и код сделан под него, а когда перехожу на ноут(4:3) текст выходит за рамки. Как это исправить?
 

Carrentine

Потрачен
569
460
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
CLEO:
Render.DrawText(1@, 31@, 1478, 126, 0xFFffffff)
Играю на мониторе 16:9, и код сделан под него, а когда перехожу на ноут(4:3) текст выходит за рамки. Как это исправить?
Это потому что на 4:3 другии пропорции, значит и позиция нужна другая.
Как то можно исправить, но мне лень. Попробуй просто подобрать нужное значение для позиции.
 

astap_

Известный
Всефорумный модератор
626
597
CLEO:
Render.DrawText(1@, 31@, 1478, 126, 0xFFffffff)
Играю на мониторе 16:9, и код сделан под него, а когда перехожу на ноут(4:3) текст выходит за рамки. Как это исправить?
игровые корды на всех разрешениях равны
CLEO:
0B5F: convert_window_screen_coords 0@ 1@ to_game_screen_coords 2@ 3@
 

AntonLemon

Новичок
1
0
Хочу поменять команду /find на /dfind

Код:
{$CLEO .cs}

//-------------MAIN---------------
thread "{$TH3RM4L"
0662: printstring "Player Finder for recode by blast.hk"
0B34: samp register_client_command "find" to_label @{$TH3RM4L_13
0B34: samp register_client_command "myfind" to_label @{$TH3RM4L_13
0B34: samp register_client_command "stopfind" to_label @{$TH3RM4L_13
31@ = 0
30@ = 0
thread "{$TH3RM4L"

:{$TH3RM4L_13
wait 0
if
  31@ == 1
else_jump @{$TH3RM4L_13
if
   SAMP.IsPlayerConnected(2@)
else_jump @{$TH3RM4L_13
3@ = SAMP.GetActorHandleByPlayerID(2@)
if
856D:   not actor 3@ defined
else_jump @{$TH3RM4L_13
SAMP.GetStreamedOutPlayerPos(2@, 9@, 10@, 11@)
12@ = Marker.CreateIconAndSphere(41, 9@, 10@, 11@)
wait 750
Marker.Disable(12@)
thread "{$TH3RM4L"

:{$TH3RM4L_13
if
056D:   actor 3@ defined
else_jump @{$TH3RM4L_13
Actor.StorePos(3@, 5@, 6@, 7@)
8@ = Marker.CreateIconAndSphere(41, 5@, 6@, 7@)
wait 750
Marker.Disable(8@)
jump @{$TH3RM4L_13
thread "{$TH3RM4L"

:{$TH3RM4L_13
if
  30@ == 0
else_jump @{$TH3RM4L_13
   SAMP.IsCommandTyped(0@)
if
0AD4: 1@ = scan_string 0@ format "%d" 2@ 
else_jump @{$TH3RM4L_13
if
   SAMP.IsPlayerConnected(2@)
else_jump @{$TH3RM4L_13
30@ = 1
31@ = 1
4@ = SAMP.GetPlayerNickname(2@)
chatmsg "Marker set on the player %s, ID %d. Use [/stopfind] to stop finding." 6330577 4@ 2@
SAMP.CmdRet
jump @{$TH3RM4L_13
thread "{$TH3RM4L"

:{$TH3RM4L_13
if
  31@ == 1
else_jump @{$TH3RM4L_13
30@ = 0
31@ = 0
Marker.Disable(12@)
Marker.Disable(8@)
chatmsg "The finding has been stopped succefully." 6330577
SAMP.CmdRet
jump @{$TH3RM4L_13
thread "{$TH3RM4L"

:{$TH3RM4L_13
if
  31@ == 1
else_jump @{$TH3RM4L_13
chatmsg "You are finding %s, ID %d." 6330577 4@ 2@
SAMP.CmdRet
jump @{$TH3RM4L_13
thread "{$TH3RM4L"

:{$TH3RM4L_13
chatmsg "The player which you were finding has disconnected." 12517376
Marker.Disable(12@)
Marker.Disable(8@)
30@ = 0
31@ = 0
jump @{$TH3RM4L_13
thread "{$TH3RM4L"

:{$TH3RM4L_13
Marker.Disable(12@)
Marker.Disable(8@)
wait 100
   SAMP.IsCommandTyped(0@)
if
0AD4: 1@ = scan_string 0@ format "%d" 2@ 
else_jump @{$TH3RM4L_13
if
   SAMP.IsPlayerConnected(2@)
else_jump @{$TH3RM4L_13
30@ = 1
31@ = 1
4@ = SAMP.GetPlayerNickname(2@)
chatmsg "Marker set on the player %s, ID %d. Use [/stopfind] to stop finding." 6330577 4@ 2@
SAMP.CmdRet
jump @{$TH3RM4L_13
thread "{$TH3RM4L"

:{$TH3RM4L_13
chatmsg "USAGE: /find <playerID>" 12566463
SAMP.CmdRet
jump @{$TH3RM4L_13
thread "{$TH3RM4L"

:{$TH3RM4L_13
chatmsg "Invalid ID." 12517376
30@ = 0
31@ = 0
SAMP.CmdRet
jump @{$TH3RM4L_13
thread "{$TH3RM4L"

:{$TH3RM4L_13
chatmsg "You are not finding anyone." 16507548
SAMP.CmdRet
jump @{$TH3RM4L_13
 

The Spark

Известный
653
672
CLEO:
0C5A: samp textdraw 1 get_string_to 0@
alloc 2@ 50
0AA5: call 0x8220AD num_params 4 pop 4 params 1@v 2@ "~p~Бензин: ~%s~%i%" 0@
free 2@
%s меняется постоянно, мне нужно от туда брать только %i, как это сделать?
 

madim

Новичок
7
0
Можно ли как-то сделать в Sanny Builder 3, сделать так, чтобы актёр, например на аризоне, прописал команду в чат /eat и съел чипсы? Может быть и команду писать не надо, главное чтобы он их съел. Возможно ли это?