Информация Гайд Создание локальных диалогов

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

Vovich

HOT
Проверенный
717
197
Как задать значение строчке больше чем 128 байт, если нужен диалог больше?
Строка чата имеет ограничение в 128 символов, но диалог делай хоть и на 1024 символа, просто с помощью форматирования строки все это проворачивай.
 

Mikha Mikhin

Новичок
131
4
Строка чата имеет ограничение в 128 символов, но диалог делай хоть и на 1024 символа, просто с помощью форматирования строки все это проворачивай.
Диалог длины примерно, как на скрине, не хочет создаваться :С Вместо текста просто ничего нет. Скрин: [DELETED]
 
Последнее редактирование:

itsLegend

Фонд борьбы за жуков 🐞
Автор темы
Администратор
2,695
1,448
Как задать значение строчке больше чем 128 байт, если нужен диалог больше?
Вставка hex..end и опкод 0ac6.
Можно strcat'ом(не лучший вариант вообще).

Строка чата имеет ограничение в 128 символов, но диалог делай хоть и на 1024 символа, просто с помощью форматирования строки все это проворачивай.
В структуре чата может храниться только 144, но через RPC может прийти 255.
144
 

Mikha Mikhin

Новичок
131
4
CLEO:
0ac6: 0@ = label @text offset
create_dialog "noname" text 0@ ...

while true
    wait 0
end

:text
hex
    "Blablablablablabl\n"
    "Blablablablablablabal\n"
    "Blablablabalbal\tBla"
    "End\0"
end
Получается что-то такое:
A9A8zPH.jpg

Хотя "End" должен быть на новой строчке. HEX вообще не должно быть 0_0
+ не закрывается ":text" в диалог пишутся все функции после него.
 

Mikha Mikhin

Новичок
131
4
Весь код давай.
CLEO:
{$CLEO .cs}
0000: NOP

repeat
wait 0
until SAMP.Available()

0B34: samp register_client_command "command" to_label @command
0B34: samp register_client_command "command1" to_label @command1

repeat
wait 0
until false

:command
0ac6: 0@ = label @text offset
0B3B: samp show_dialog id 0 caption " " text 0@ button_1 "Закрыть" button_2 "" style 0
SAMP.CmdRet()
:command1
0ac6: 1@ = label @text1 offset
0B3B: samp show_dialog id 1 caption " " text 1@ button_1 "Закрыть" button_2 "" style 0
SAMP.CmdRet()

:text
hex
    "Start"
    "End"
end

:text1
hex
    "Start1"
    "End1"
end

Попробуй использовать /command и /command1 и поймёшь о чём я.
 

itsLegend

Фонд борьбы за жуков 🐞
Автор темы
Администратор
2,695
1,448
Для переноса строки используется \n в кавычках, или A вне.
 

itsLegend

Фонд борьбы за жуков 🐞
Автор темы
Администратор
2,695
1,448
Получается - 128 это серверное ограничение?
Так, короче говоря - клиент может хранить 144 символа. Всё что я хотел сказать. Сервер(возможно) может отправить больше, но обработчик RPC в клиенте отклонит его.
 
  • Нравится
Реакции: Vovich
Статус
В этой теме нельзя размещать новые ответы.