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

У

Удалённый пользователь 123482

Гость
Вызов функции происходит в цикле.
CLEO:
:GetMetal
0AC8: 5@ = allocate_memory_size 1024
//0AC6: 5@ = label @Buffer offset
    FOR 4@ = 0 TO 2048
        IF 0B46:     samp 3d_text 4@ defined
        THEN
        0C46: samp get_3d_text_info_by_id 4@ string_ptr 5@ color 6@ position 7@ 8@ 9@ view_distance 10@ show_behind_walls 11@ attached_to_player 12@ attached_to_vehicle 13@
        //0B6F: render font 0@ draw_text 5@ pos 1@ 2@ color 0xFFFFFFFF
//           IF 0AD4: 6@ = scan_string 5@ format "Èñõîäíûå ìàòåðèàëû:\nÒîïëèâî: %d / %d êã\nÌåòàëë: %d / %d êã\n \nÏðîäóêòû: %d øò." 7@ 8@ 9@ 10@ 11@
//            THEN
//                0ACD: show_text_highpriority "~G~Vse verno" time 100
//                0AD3: 3@ = format "Ìåòàëëà íà ñêëàäå - %d / %d êã" 7@ 8@
//                0B6F: render font 0@ draw_text 3@ pos 1@ 2@ color 0xFFFFFFFF
//            END
        END
   END
 
   IF 0ADC:   test_cheat "2"
   THEN
        chatmsg "%s" 5@
   END
0AB2: RET 0
 
У

Удалённый пользователь 123482

Гость
^^ Всё правильно, ты просто цвет не указал для вывода в чат
chatmsg "%s" -1 5@
Теперь иероглифы какие-то пошли 0_o
[19:17:05]

[19:17:05] ·

[19:17:05]

[19:17:05] 6

[19:17:06] R(

[19:17:06] n6

[19:17:06]

[19:17:06] \-

[19:17:07] z<

[19:17:07] 6

[19:17:07] Z,

[19:17:07] |=

[19:17:08]

[19:17:08] B
 
У

Удалённый пользователь 123482

Гость
память еще освобождай в конце
Работает, но крашит.
CLEO:
:GetMetal
0AC8: 5@ = allocate_memory_size 1024
//0AC6: 5@ = label @Buffer offset
    FOR 4@ = 0 TO 2048
        IF 0B46:     samp 3d_text 4@ defined
        THEN
        0C46: samp get_3d_text_info_by_id 4@ string_ptr 5@ color 6@ position 7@ 8@ 9@ view_distance 10@ show_behind_walls 11@ attached_to_player 12@ attached_to_vehicle 13@
        //0B6F: render font 0@ draw_text 5@ pos 1@ 2@ color 0xFFFFFFFF
//           IF 0AD4: 6@ = scan_string 5@ format "Èñõîäíûå ìàòåðèàëû:\nÒîïëèâî: %d / %d êã\nÌåòàëë: %d / %d êã\n \nÏðîäóêòû: %d øò." 7@ 8@ 9@ 10@ 11@
//            THEN
//                0ACD: show_text_highpriority "~G~Vse verno" time 100
//                0AD3: 3@ = format "Ìåòàëëà íà ñêëàäå - %d / %d êã" 7@ 8@
//                0B6F: render font 0@ draw_text 3@ pos 1@ 2@ color 0xFFFFFFFF
//            END
        END
   END
  
   IF 0ADC:   test_cheat "2"
   THEN
        chatmsg "%s" -1 5@
        0AC9: free_allocated_memory 5@
   END
0AB2: RET 0
 

D3.Pheonix

🎹
Модератор
2,865
1,649
@Муззи
CLEO:
  IF 0ADC:   test_cheat "2"
   THEN
        chatmsg "%s" -1 5@
   END
0AC9: free_allocated_memory 5@
0AB2: RET 0
Да и не обязательно 1 mb выделять. 256 хватит
 
У

Удалённый пользователь 123482

Гость
@Муззи
CLEO:
  IF 0ADC:   test_cheat "2"
   THEN
        chatmsg "%s" -1 5@
   END
0AC9: free_allocated_memory 5@
0AB2: RET 0
Да и не обязательно 1 mb выделять. 256 хватит
Сменил на 256, когда вижу 3D Text игру крашит.

CLEO:
:GetMetal
0AC8: 5@ = allocate_memory_size 256
    FOR 4@ = 0 TO 2048
        IF 0B46:     samp 3d_text 4@ defined
        THEN     
            0C46: samp get_3d_text_info_by_id 4@ string_ptr 5@ color 6@ position 7@ 8@ 9@ view_distance 10@ show_behind_walls 11@ attached_to_player 12@ attached_to_vehicle 13@
            0B6F: render font 0@ draw_text 5@ pos 1@ 2@ color 0xFFFFFFFF
        END
   END
  
   IF 0ADC:   test_cheat "2"
   THEN
        chatmsg "%s" -1 5@
   END
   0AC9: free_allocated_memory 5@
0AB2: RET 0
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,469
Сменил на 256, когда вижу 3D Text игру крашит.

CLEO:
:GetMetal
0AC8: 5@ = allocate_memory_size 256
    FOR 4@ = 0 TO 2048
        IF 0B46:     samp 3d_text 4@ defined
        THEN   
            0C46: samp get_3d_text_info_by_id 4@ string_ptr 5@ color 6@ position 7@ 8@ 9@ view_distance 10@ show_behind_walls 11@ attached_to_player 12@ attached_to_vehicle 13@
            0B6F: render font 0@ draw_text 5@ pos 1@ 2@ color 0xFFFFFFFF
        END
   END
 
   IF 0ADC:   test_cheat "2"
   THEN
        chatmsg "%s" -1 5@
   END
   0AC9: free_allocated_memory 5@
0AB2: RET 0
0C46 возвращает указатель на строку, зачем выделять память?
 

D3.Pheonix

🎹
Модератор
2,865
1,649
^^ Я не вкурил прост, думал из-за этого тебе (null) выводило, а то был цвет ...