Thank you brother, it really helps me, I would have a call to you, I'll leave you a pm, take a look when you have timeI have everything working fine. Take this file. Use the command: /getid [distance(integer)]
Как сравнивать переменные
Пример
1@ == 2@
Спасибо за ранее)
ifКак сравнивать переменные
Пример
1@ == 2@
Спасибо за ранее)
Вот решил ВХ написать и привязать ID скинов к определённым фракциям сервера, на котором я играю, чтобы писать над игроком в какой он фракции состоит. Вот только код мой почему-то работает не нормально, а точнее ФПС опускается до 1-2 кадров в 5 секунд, что я не так сделал, помогите разобраться :)
Код:{$CLEO} 0000: :start wait 0 0ADC: test_cheat "123" jf @start 0AC8: 11@ = allocate_memory_size 128 0B6D: render 10@ = create_font "Comic Sans MS" height 8 flags 5 :wall_start wait 0 0006: 0@ = 0 :wall_main 0B23: samp is_player_connected 0@ jf @wall_c 0B20: samp 1@ = actor_handle_by_samp_player_id 0@ 056D: actor 1@ defined jf @wall_c 02CB: actor 1@ bounding_sphere_visible jf @wall_c 0665: get_actor 1@ model_to 2@ 0AD3: 11@ = format "%d" 2@ 04C4: store_coords_to 3@ 4@ 5@ from_actor 1@ with_offset 0.0 0.0 0.0 0B55: convert_3D_coords 3@ 4@ 5@ to_screen 3@ 4@ 0B6F: render font 10@ draw_text 11@ pos 3@ 4@ color -1 // Ошибка, видимо, где-то в этих трёх строках, т.к. если просто выводить // информацию о скине игрока в чат, то никаких лагов не возникает. :wall_c 000A: 0@ += 1 0019: 0@ > 999 jf @wall_main 0ADC: test_cheat "123" jf @wall_start jump @start
// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
0001: wait 0 ms
03F0: enable_text_draw 1
:Noname_A
0001: wait 0 ms
0A8D: 3@ = read_memory 12216169 size 1 virtual_protect 0
00D6: if and
0039: 3@ == 1
02CB: actor $PLAYER_ACTOR bounding_sphere_visible
0256: player $PLAYER_ACTOR defined
004D: jump_if_false @Noname_16C
0226: 1@ = actor $PLAYER_ACTOR health
04DD: 2@ = actor $PLAYER_ACTOR armour
00D6: if
0019: 1@ > 0
004D: jump_if_false @Noname_BF
00D6: if
002B: 25 >= 1@
004D: jump_if_false @Noname_89
0006: 28@ = 255
0006: 29@ = 0
0006: 30@ = 0
0002: jump @Noname_9F
:Noname_89
0006: 28@ = 204
0006: 29@ = 205
0006: 30@ = 0
:Noname_9F
0AB1: call_scm_func @Noname_2E0 6 576.5 66.0 1@ 28@ 29@ 30@
:Noname_BF
00D6: if
0AB1: call_scm_func @Noname_328 0 0@
004D: jump_if_false @Noname_16C
0AB1: call_scm_func @Noname_173 7 577.0 59.5 0@ 58.0 5.0 4.0 0
0092: 0@ = float 0@ to_integer
00D6: if
002B: 25 >= 0@
004D: jump_if_false @Noname_136
0006: 28@ = 0
0006: 29@ = 0
0006: 30@ = 255
0002: jump @Noname_14C
:Noname_136
0006: 28@ = 0
0006: 29@ = 0
0006: 30@ = 255
:Noname_14C
0AB1: call_scm_func @Noname_2E0 6 576.5 55.0 0@ 28@ 29@ 30@
:Noname_16C
0002: jump @Noname_A
:Noname_173
00D6: if
0039: 6@ == 1
004D: jump_if_false @Noname_22A
0AF0: 14@ = get_int_from_ini_file "cleo\sb.ini" section "MAIN" key "R"
0AF0: 15@ = get_int_from_ini_file "cleo\sb.ini" section "MAIN" key "G"
0AF0: 16@ = get_int_from_ini_file "cleo\sb.ini" section "MAIN" key "B"
0AF0: 17@ = get_int_from_ini_file "cleo\sb.ini" section "MAIN" key "2R"
0AF0: 18@ = get_int_from_ini_file "cleo\sb.ini" section "MAIN" key "2G"
0AF0: 19@ = get_int_from_ini_file "cleo\sb.ini" section "MAIN" key "2B"
:Noname_22A
0007: 13@ = 100.0
0073: 13@ /= 3@ // (float)
0073: 2@ /= 13@ // (float)
0087: 11@ = 3@ // (float)
0087: 12@ = 4@ // (float)
005B: 11@ += 5@ // (float)
005B: 12@ += 5@ // (float)
038E: draw_box_position 0@ 1@ size 11@ 12@ RGBA 0 0 0 255
038E: draw_box_position 0@ 1@ size 3@ 4@ RGBA 17@ 18@ 19@ 255
0087: 10@ = 2@ // (float)
0017: 10@ /= 2.0
0017: 3@ /= 2.0
005B: 0@ += 10@ // (float)
0063: 0@ -= 3@ // (float)
038E: draw_box_position 0@ 1@ size 2@ 4@ RGBA 14@ 15@ 16@ 255
0AB2: ret 0
:Noname_2E0
0349: set_text_draw_font 1
0342: set_text_draw_centered 1
033F: set_text_draw_letter_size 0.3 0.9
081C: draw_text_outline 1 RGBA 0 0 0 255
0340: set_text_draw_RGBA 3@ 4@ 5@ 255
045A: draw_text_1number 0@ 1@ GXT 'NUMBER' number 2@ // ~1~
0AB2: ret 0
:Noname_328
0A8D: 0@ = read_memory 12045748 size 4 virtual_protect 0
0017: 0@ /= 31.47
000B: 0@ += 4.0
0013: 0@ *= 0.9615384
0A8D: 1@ = read_memory 12045792 size 4 virtual_protect 0
0017: 1@ /= 39.97
00D6: if and
0021: 1@ > 99.0
8965: not actor $PLAYER_ACTOR swimming
80DF: not actor $PLAYER_ACTOR driving
004D: jump_if_false @Noname_394
0485: return_true
0002: jump @Noname_396
:Noname_394
059A: return_false
:Noname_396
0AB2: ret 1 0@
render нужно добавлять.Впихните строку для того, чтобы сменить шрифт цифр, которые будут показываться, пожалуйста)
Заранее спасибо :)
Код:// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013 {$CLEO .cs} //-------------MAIN--------------- 0000: NOP 0001: wait 0 ms 03F0: enable_text_draw 1 :Noname_A 0001: wait 0 ms 0A8D: 3@ = read_memory 12216169 size 1 virtual_protect 0 00D6: if and 0039: 3@ == 1 02CB: actor $PLAYER_ACTOR bounding_sphere_visible 0256: player $PLAYER_ACTOR defined 004D: jump_if_false @Noname_16C 0226: 1@ = actor $PLAYER_ACTOR health 04DD: 2@ = actor $PLAYER_ACTOR armour 00D6: if 0019: 1@ > 0 004D: jump_if_false @Noname_BF 00D6: if 002B: 25 >= 1@ 004D: jump_if_false @Noname_89 0006: 28@ = 255 0006: 29@ = 0 0006: 30@ = 0 0002: jump @Noname_9F :Noname_89 0006: 28@ = 204 0006: 29@ = 205 0006: 30@ = 0 :Noname_9F 0AB1: call_scm_func @Noname_2E0 6 576.5 66.0 1@ 28@ 29@ 30@ :Noname_BF 00D6: if 0AB1: call_scm_func @Noname_328 0 0@ 004D: jump_if_false @Noname_16C 0AB1: call_scm_func @Noname_173 7 577.0 59.5 0@ 58.0 5.0 4.0 0 0092: 0@ = float 0@ to_integer 00D6: if 002B: 25 >= 0@ 004D: jump_if_false @Noname_136 0006: 28@ = 0 0006: 29@ = 0 0006: 30@ = 255 0002: jump @Noname_14C :Noname_136 0006: 28@ = 0 0006: 29@ = 0 0006: 30@ = 255 :Noname_14C 0AB1: call_scm_func @Noname_2E0 6 576.5 55.0 0@ 28@ 29@ 30@ :Noname_16C 0002: jump @Noname_A :Noname_173 00D6: if 0039: 6@ == 1 004D: jump_if_false @Noname_22A 0AF0: 14@ = get_int_from_ini_file "cleo\sb.ini" section "MAIN" key "R" 0AF0: 15@ = get_int_from_ini_file "cleo\sb.ini" section "MAIN" key "G" 0AF0: 16@ = get_int_from_ini_file "cleo\sb.ini" section "MAIN" key "B" 0AF0: 17@ = get_int_from_ini_file "cleo\sb.ini" section "MAIN" key "2R" 0AF0: 18@ = get_int_from_ini_file "cleo\sb.ini" section "MAIN" key "2G" 0AF0: 19@ = get_int_from_ini_file "cleo\sb.ini" section "MAIN" key "2B" :Noname_22A 0007: 13@ = 100.0 0073: 13@ /= 3@ // (float) 0073: 2@ /= 13@ // (float) 0087: 11@ = 3@ // (float) 0087: 12@ = 4@ // (float) 005B: 11@ += 5@ // (float) 005B: 12@ += 5@ // (float) 038E: draw_box_position 0@ 1@ size 11@ 12@ RGBA 0 0 0 255 038E: draw_box_position 0@ 1@ size 3@ 4@ RGBA 17@ 18@ 19@ 255 0087: 10@ = 2@ // (float) 0017: 10@ /= 2.0 0017: 3@ /= 2.0 005B: 0@ += 10@ // (float) 0063: 0@ -= 3@ // (float) 038E: draw_box_position 0@ 1@ size 2@ 4@ RGBA 14@ 15@ 16@ 255 0AB2: ret 0 :Noname_2E0 0349: set_text_draw_font 1 0342: set_text_draw_centered 1 033F: set_text_draw_letter_size 0.3 0.9 081C: draw_text_outline 1 RGBA 0 0 0 255 0340: set_text_draw_RGBA 3@ 4@ 5@ 255 045A: draw_text_1number 0@ 1@ GXT 'NUMBER' number 2@ // ~1~ 0AB2: ret 0 :Noname_328 0A8D: 0@ = read_memory 12045748 size 4 virtual_protect 0 0017: 0@ /= 31.47 000B: 0@ += 4.0 0013: 0@ *= 0.9615384 0A8D: 1@ = read_memory 12045792 size 4 virtual_protect 0 0017: 1@ /= 39.97 00D6: if and 0021: 1@ > 99.0 8965: not actor $PLAYER_ACTOR swimming 80DF: not actor $PLAYER_ACTOR driving 004D: jump_if_false @Noname_394 0485: return_true 0002: jump @Noname_396 :Noname_394 059A: return_false :Noname_396 0AB2: ret 1 0@
Смотря какое разрешение в меню, аля если 800x600 то центр будет в 400 300Я новичок и решил поинтересоваться, как узнать координаты на экране, для написания диалогов в клео. Если я плохо обьяснил, то вот пример "pos_XY 5 10 size 50 20", мне нужно другое место на экране, как узнать координаты этого места?)
Есть опкок. get screen resolutionтоесть, спец. программ нет? Нужно подбирать?
{$CLEO}
0B34: samp register_client_command "getcur" to_label @GetCur
WHILE TRUE
WAIT 0
IF 0@ == 1
THEN 0B8D: samp set_cursor_mode 2
REPEAT
WAIT 0
IF 0B8C: samp is_cursor_active
THEN
0B5E: get_cursor_pos 1@ 2@
0AD1: show_formatted_text_highpriority "%d~N~%d" time 1000 1@ 2@
ELSE 0B8D: samp set_cursor_mode 2
END
UNTIL 0@ == 0
0B8D: samp set_cursor_mode 0
END
END
:GetCur
0B12: 0@ = 0@ XOR 1
0B43: samp cmd_ret