Возможно ли создать cleo/sf скрипт для автоответа в чат?

Статус
В этой теме нельзя размещать новые ответы.

zxc21346

Новичок
Автор темы
11
0
Доброго времени суток, хотелось бы узнать, можно ли как то вообще сделать автоответ не чере ahk, а через cleo скрипт, к примеру автоответ на sms. Скажем от игрока пришло sms: Привет, скрипт после того как распознает слово "Привет" ответит скажем "И тебе привет", ответ по ID либо по номеру, легче наверное будет по ID.

Хотя бы простой пример послужил бы мне основой, заранее спасибо.
 

RedBoxWhite

Известный
337
27
Так?
CLEO:
{$CLEO}
{$INCLUDE SF}
0000:
0BE3: raknet setup_incoming_rpc_hook @1
alloc 9@ 256
alloc 11@ 20

while true
wait 0
    if and
    0C18: 0 = 9@ "SMS:"
    0C18: 0 = 9@ "Привет"
    then
        0AA5: call 0x8220AD num_params 5 pop 5 params 13@v 12@v 11@ "SMS: Привет. Отправил: %s [%d] (тел. %d)" 9@
        0AF9: "/sms %d И тебе привет" 12@
    end
    0C11: memset destination 9@ value 0 size 256
end

:1
0BE5: raknet 5@ = get_hook_param PARAM_BITSTREAM
0BE5: raknet 6@ = get_hook_param PARAM_PACKETID
if
6@ == RPC_ScrClientMessage
then
    0BE7: raknet 7@ = bit_stream_read 5@ type BS_TYPE_INT
    0BE7: raknet 8@ = bit_stream_read 5@ type BS_TYPE_INT
    0C11: memset destination 9@ value 0 size 256
    0BE8: raknet bit_stream 5@ read_array 9@ size 8@
    0C0F: array 9@ element 8@ = 0x00 
end
0BE0: raknet hook_ret true
 
  • Нравится
Реакции: zxc21346

zxc21346

Новичок
Автор темы
11
0
Так?
CLEO:
{$CLEO}
{$INCLUDE SF}
0000:
0BE3: raknet setup_incoming_rpc_hook @1
alloc 9@ 256
alloc 11@ 20

while true
wait 0
    if and
    0C18: 0 = 9@ "SMS:"
    0C18: 0 = 9@ "Привет"
    then
        0AA5: call 0x8220AD num_params 5 pop 5 params 13@v 12@v 11@ "SMS: Привет. Отправил: %s [%d] (тел. %d)" 9@
        0AF9: "/sms %d И тебе привет" 12@
    end
    0C11: memset destination 9@ value 0 size 256
end

:1
0BE5: raknet 5@ = get_hook_param PARAM_BITSTREAM
0BE5: raknet 6@ = get_hook_param PARAM_PACKETID
if
6@ == RPC_ScrClientMessage
then
    0BE7: raknet 7@ = bit_stream_read 5@ type BS_TYPE_INT
    0BE7: raknet 8@ = bit_stream_read 5@ type BS_TYPE_INT
    0C11: memset destination 9@ value 0 size 256
    0BE8: raknet bit_stream 5@ read_array 9@ size 8@
    0C0F: array 9@ element 8@ = 0x00
end
0BE0: raknet hook_ret true
Я так понял проблемка в SF, но SF стоит.
После отправки сообщения мне "Привет", появляются сиджеи и т.д, ну в общем что-то у меня не то)
 

RedBoxWhite

Известный
337
27
CLEO:
{$CLEO}
{$INCLUDE SF}
0000:
0BE3: raknet setup_incoming_rpc_hook @1
alloc 9@ 256
alloc 11@ 20

while true
wait 0
    if and
    0C18: 0 = 9@ "SMS:"
    0C18: 0 = 9@ "Привет"
    then
        0AA5: call 0x8220AD num_params 4 pop 4 params 12@v 11@ "SMS: Привет | Отправитель: %s [т.%d]" 9@
        0AF9: "/sms %d И тебе привет" 12@
    end
    0C11: memset destination 9@ value 0 size 256
end

:1
0BE5: raknet 5@ = get_hook_param PARAM_BITSTREAM
0BE5: raknet 6@ = get_hook_param PARAM_PACKETID
if
6@ == RPC_ScrClientMessage
then
    0BE7: raknet 7@ = bit_stream_read 5@ type BS_TYPE_INT
    0BE7: raknet 8@ = bit_stream_read 5@ type BS_TYPE_INT
    0C11: memset destination 9@ value 0 size 256
    0BE8: raknet bit_stream 5@ read_array 9@ size 8@
    0C0F: array 9@ element 8@ = 0x00  
end
0BE0: raknet hook_ret true
 

zxc21346

Новичок
Автор темы
11
0
CLEO:
{$CLEO}
{$INCLUDE SF}
0000:
0BE3: raknet setup_incoming_rpc_hook @1
alloc 9@ 256
alloc 11@ 20

while true
wait 0
    if and
    0C18: 0 = 9@ "SMS:"
    0C18: 0 = 9@ "Привет"
    then
        0AA5: call 0x8220AD num_params 4 pop 4 params 12@v 11@ "SMS: Привет | Отправитель: %s [т.%d]" 9@
        0AF9: "/sms %d И тебе привет" 12@
    end
    0C11: memset destination 9@ value 0 size 256
end

:1
0BE5: raknet 5@ = get_hook_param PARAM_BITSTREAM
0BE5: raknet 6@ = get_hook_param PARAM_PACKETID
if
6@ == RPC_ScrClientMessage
then
    0BE7: raknet 7@ = bit_stream_read 5@ type BS_TYPE_INT
    0BE7: raknet 8@ = bit_stream_read 5@ type BS_TYPE_INT
    0C11: memset destination 9@ value 0 size 256
    0BE8: raknet bit_stream 5@ read_array 9@ size 8@
    0C0F: array 9@ element 8@ = 0x00 
end
0BE0: raknet hook_ret true
От души просто, все отлично работает :)
Теперь буду делать по этому примеру, еще раз спасибо)
 
Статус
В этой теме нельзя размещать новые ответы.