Спасибо большое. Я аж удивился, когда увидел что на мой вопрос отвечает человек, по чьим урокам я учусь. Хорошо объясняешь. Всё очень разборчиво и исходники есть к видео0C28: strlwr in 0@ out 1@
Как раз делать список с координатами каждого квадрата будет очень масштабно.Хочу написать скрипт, что бы в нём определялись квадраты на карте. Но в голову не приходит как. Есть идея как то привязать к координатам. Но это всё настолько масштабно, что даже не понимаю как. В интернете искал, но не нашел. Я так понимаю это надо создать какой то список. Где будет соответствие координат плоскостей и квадратов. Есть идеи как это реализовать?
Если что то выйдет-надеюсь поделишься xDХочу написать скрипт, что бы в нём определялись квадраты на карте. Но в голову не приходит как. Есть идея как то привязать к координатам. Но это всё настолько масштабно, что даже не понимаю как. В интернете искал, но не нашел. Я так понимаю это надо создать какой то список. Где будет соответствие координат плоскостей и квадратов. Есть идеи как это реализовать?
Хочу написать скрипт, что бы в нём определялись квадраты на карте. Но в голову не приходит как. Есть идея как то привязать к координатам. Но это всё настолько масштабно, что даже не понимаю как. В интернете искал, но не нашел. Я так понимаю это надо создать какой то список. Где будет соответствие координат плоскостей и квадратов. Есть идеи как это реализовать?
В общем высчитал я координаты квадратов.Как раз делать список с координатами каждого квадрата будет очень масштабно.
У тебя есть 24х24 ровных квадрата. Проблема только одна - отсчет координат в гта начинается не с угла, а с середины. Нужно будет написать новую систему координат, которая будет иметь начало в углу(например, левом нижнем), в теории делается это достаточно просто, пара математических операций и условий <>. А потом просто делить координаты по х и у на 24. Но тут все ровно без минимум 24х2=48 условий вроде не обойтись... Хотя можно попробовать сделать в 2 раза меньше проверок, есть один очень хитрый и интересный способ, с телефона неудобно расписывать. Крч ты правильно сказал, это легко, но кропотливо
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
0AC8: 2@ = allocate_memory_size 64
0AC8: 3@ = allocate_memory_size 64
0AC8: 4@ = allocate_memory_size 64
0AC8: 8@ = allocate_memory_size 256
:Noname_31
0001: wait 2500 ms
00D6: if
0AFA: is_samp_available
004D: jump_if_false @Noname_31
0B6D: render 9@ = create_font "Arial" height 10 flags 12
:Noname_94
0001: wait 0 ms
0256: player $PLAYER_ACTOR defined
004D: jump_if_false @Noname_94
0449: actor $PLAYER_ACTOR in_a_car
004D: jump_if_false @Noname_94
03C0: 11@ = actor $PLAYER_ACTOR car
004D: jump_if_false @Noname_94
00A0: store_actor $PLAYER_ACTOR position_to 2@ 3@ 4@
0AD3: 8@ = format "%f | %f | %f" 2@ 3@ 4@
0B6F: render font 9@ draw_text 8@ pos 1600 900 color -1
00D6: if and
0021: 2@ > -245.0
8031: not 2@ >= 0.0
8031: not 3@ >= 1250.0
0021: 3@ > 1000.0
0002: jump @Noname_94
0AD3: 8@ = format "È-12"
0B6F: render font 9@ draw_text 8@ pos 1600 800 color -1
0002: jump @Noname_94
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
0AC8: 2@ = allocate_memory_size 64
0AC8: 3@ = allocate_memory_size 64
0AC8: 4@ = allocate_memory_size 64
0AC8: 8@ = allocate_memory_size 256
:Noname_31
0001: wait 2500 ms
00D6: if
0AFA: is_samp_available
004D: jump_if_false @Noname_31
0B6D: render 9@ = create_font "Arial" height 10 flags 12
:Noname_94
0001: wait 0 ms
0256: player $PLAYER_ACTOR defined
004D: jump_if_false @Noname_94
0449: actor $PLAYER_ACTOR in_a_car
004D: jump_if_false @Noname_94
03C0: 11@ = actor $PLAYER_ACTOR car
004D: jump_if_false @Noname_94
00A0: store_actor $PLAYER_ACTOR position_to 2@ 3@ 4@
0AD3: 8@ = format "%f | %f | %f" 2@ 3@ 4@
0B6F: render font 9@ draw_text 8@ pos 1600 900 color -1
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -250.0 1250.0 cornerB 0.0 1000.0
004D: jump_if_false @Noname_94
0AD3: 8@ = format "È-12"
0B6F: render font 9@ draw_text 8@ pos 1600 800 color -1
0002: jump @Noname_94
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
0AC8: 2@ = allocate_memory_size 64
0AC8: 3@ = allocate_memory_size 64
0AC8: 4@ = allocate_memory_size 64
0AC8: 8@ = allocate_memory_size 256
:Noname_1
0001: wait 2500 ms
00D6: if
0AFA: is_samp_available
004D: jump_if_false @Noname_1
0B6D: render 9@ = create_font "Arial" height 10 flags 12
:Noname_2
0001: wait 0 ms
0256: player $PLAYER_ACTOR defined
004D: jump_if_false @Noname_2
0449: actor $PLAYER_ACTOR in_a_car
004D: jump_if_false @Noname_2
03C0: 11@ = actor $PLAYER_ACTOR car
004D: jump_if_false @Noname_2
00A0: store_actor $PLAYER_ACTOR position_to 2@ 3@ 4@
0AD3: 8@ = format "%f | %f | %f" 2@ 3@ 4@
0B6F: render font 9@ draw_text 8@ pos 1600 900 color -1
:Noname_3
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 3000.0 cornerB 3000.0 2750.0 //a
004D: jump_if_false @Noname_4
5@s = 'A'
0002: jump @Noname_27
:Noname_4
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 2750.0 cornerB 3000.0 2500.0
004D: jump_if_false @Noname_5
0002: jump @Noname_27
:Noname_5
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 2500.0 cornerB 3000.0 2250.0
004D: jump_if_false @Noname_6
5@s = 'B'
0002: jump @Noname_27
:Noname_6
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 2250.0 cornerB 3000.0 2000.0
004D: jump_if_false @Noname_7
0002: jump @Noname_27
:Noname_7
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 2000.0 cornerB 3000.0 1750.0
004D: jump_if_false @Noname_8
0002: jump @Noname_27
:Noname_8
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 1750.0 cornerB 3000.0 1500.0
004D: jump_if_false @Noname_9
0002: jump @Noname_27
:Noname_9
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 1500.0 cornerB 3000.0 1250.0
004D: jump_if_false @Noname_10
0002: jump @Noname_27
:Noname_10
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 1250.0 cornerB 3000.0 1000.0
004D: jump_if_false @Noname_11
0002: jump @Noname_27
:Noname_11
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 1000.0 cornerB 3000.0 750.0
004D: jump_if_false @Noname_12
0002: jump @Noname_27
:Noname_12
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 750.0 cornerB 3000.0 500.0
004D: jump_if_false @Noname_13
0002: jump @Noname_27
:Noname_13
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 500.0 cornerB 3000.0 250.0
004D: jump_if_false @Noname_14
0002: jump @Noname_27
:Noname_14
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 250.0 cornerB 3000.0 0.0
004D: jump_if_false @Noname_15
0002: jump @Noname_27
:Noname_15
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 0.0 cornerB 3000.0 -250.0
004D: jump_if_false @Noname_16
0002: jump @Noname_27
:Noname_16
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -250.0 cornerB 3000.0 -750.0
004D: jump_if_false @Noname_17
0002: jump @Noname_27
:Noname_17
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -500.0 cornerB 3000.0 -1000.0
004D: jump_if_false @Noname_18
0002: jump @Noname_27
:Noname_18
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -750.0 cornerB 3000.0 -1500.0
004D: jump_if_false @Noname_19
0002: jump @Noname_27
:Noname_19
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -1000.0 cornerB 3000.0 -1750.0
004D: jump_if_false @Noname_20
0002: jump @Noname_27
:Noname_20
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -1250.0 cornerB 3000.0 -2000.0
004D: jump_if_false @Noname_21
0002: jump @Noname_27
:Noname_21
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -1500.0 cornerB 3000.0 -2250.0
004D: jump_if_false @Noname_22
0002: jump @Noname_27
:Noname_22
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -1750.0 cornerB 3000.0 -1500.0
004D: jump_if_false @Noname_23
0002: jump @Noname_27
:Noname_23
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -2000.0 cornerB 3000.0 -1750.0
004D: jump_if_false @Noname_24
0002: jump @Noname_27
:Noname_24
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -2250.0 cornerB 3000.0 -2000.0
004D: jump_if_false @Noname_25
0002: jump @Noname_27
:Noname_25
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -2500.0 cornerB 3000.0 -2250.0
004D: jump_if_false @Noname_26
0002: jump @Noname_27
:Noname_26
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -2750.0 cornerB 3000.0 -2500.0
004D: jump_if_false @Noname_2
0002: jump @Noname_27
//-------------1-24---------------
:Noname_27
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 3000.0 cornerB -2750.0 -3000.0
004D: jump_if_false @Noname_28
13@ = 1
0002: jump @Noname_51
:Noname_28
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -2750.0 3000.0 cornerB -2500.0 -3000.0
004D: jump_if_false @Noname_29
13@ = 2
0002: jump @Noname_51
:Noname_29
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -2500.0 3000.0 cornerB -2250.0 -3000.0
004D: jump_if_false @Noname_30
13@ = 3
0002: jump @Noname_51
:Noname_30
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -2250.0 3000.0 cornerB -2000.0 -3000.0
004D: jump_if_false @Noname_31
13@ = 4
0002: jump @Noname_51
:Noname_31
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -2000.0 3000.0 cornerB -1750.0 -3000.0
004D: jump_if_false @Noname_32
13@ = 5
0002: jump @Noname_51
:Noname_32
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -1750.0 3000.0 cornerB -1500.0 -3000.0
004D: jump_if_false @Noname_33
13@ = 6
0002: jump @Noname_51
:Noname_33
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -1500.0 3000.0 cornerB -1250.0 -3000.0
004D: jump_if_false @Noname_34
13@ = 7
0002: jump @Noname_51
:Noname_34
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -1250.0 3000.0 cornerB -1000.0 -3000.0
004D: jump_if_false @Noname_35
13@ = 8
0002: jump @Noname_51
:Noname_35
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -1000.0 3000.0 cornerB -750.0 -3000.0
004D: jump_if_false @Noname_36
13@ = 9
0002: jump @Noname_51
:Noname_36
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -750.0 3000.0 cornerB -500.0 -3000.0
004D: jump_if_false @Noname_37
13@ = 10
0002: jump @Noname_51
:Noname_37
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -500.0 3000.0 cornerB -250.0 -3000.0
004D: jump_if_false @Noname_38
13@ = 11
0002: jump @Noname_51
:Noname_38
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA -250.0 3000.0 cornerB 0.0 -3000.0
004D: jump_if_false @Noname_39
13@ = 12
0002: jump @Noname_51
:Noname_39
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA 0.0 3000.0 cornerB 250.0 -3000.0
004D: jump_if_false @Noname_40
13@ = 13
0002: jump @Noname_51
:Noname_40
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA 250.0 3000.0 cornerB 500.0 -3000.0
004D: jump_if_false @Noname_41
13@ = 14
0002: jump @Noname_51
:Noname_41
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA 500.0 3000.0 cornerB 750.0 -3000.0
004D: jump_if_false @Noname_42
13@ = 15
0002: jump @Noname_51
:Noname_42
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA 750.0 3000.0 cornerB 1000.0 -3000.0
004D: jump_if_false @Noname_43
13@ = 16
0002: jump @Noname_51
:Noname_43
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA 1000.0 3000.0 cornerB 1250.0 -3000.0
004D: jump_if_false @Noname_44
13@ = 17
0002: jump @Noname_51
:Noname_44
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA 1250.0 3000.0 cornerB 1500.0 -3000.0
004D: jump_if_false @Noname_45
13@ = 18
0002: jump @Noname_51
:Noname_45
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA 1500.0 3000.0 cornerB 1750.0 -3000.0
004D: jump_if_false @Noname_46
13@ = 19
0002: jump @Noname_51
:Noname_46
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA 1750.0 3000.0 cornerB 2000.0 -3000.0
004D: jump_if_false @Noname_47
13@ = 20
0002: jump @Noname_51
:Noname_47
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA 2000.0 3000.0 cornerB 2250.0 -3000.0
004D: jump_if_false @Noname_48
13@ = 21
0002: jump @Noname_51
:Noname_48
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA 2250.0 3000.0 cornerB 2500.0 -3000.0
004D: jump_if_false @Noname_49
13@ = 22
0002: jump @Noname_51
:Noname_49
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA 2500.0 3000.0 cornerB 2750.0 -3000.0
004D: jump_if_false @Noname_50
13@ = 23
0002: jump @Noname_51
:Noname_50
00D6: if
00B0: car 11@ sphere 0 in_rectangle_cornerA 2750.0 3000.0 cornerB 3000.0 -3000.0
004D: jump_if_false @Noname_2
13@ = 24
0002: jump @Noname_51
....
В общем высчитал я координаты квадратов.
Попробовал вариант с уловиями больше или меньше. не заработал. Да и если бы заработал условий получилось бы 576 штук:
Нашел опкод 00B0 (Машина 1@ в пределах координат прямоугольной плоскости, от точки A: X Y до точки B: x y, с типом отображения сферы ( по середине прямоугольника ): флаг 0 [1- Видна, 0- Не видна]). Получилось. Проверил на одном квадрате. Скрипт работает. Но опять же всего квадратов 576. И условий получится 576:CLEO:{$CLEO .cs} //-------------MAIN--------------- 0000: NOP 0AC8: 2@ = allocate_memory_size 64 0AC8: 3@ = allocate_memory_size 64 0AC8: 4@ = allocate_memory_size 64 0AC8: 8@ = allocate_memory_size 256 :Noname_31 0001: wait 2500 ms 00D6: if 0AFA: is_samp_available 004D: jump_if_false @Noname_31 0B6D: render 9@ = create_font "Arial" height 10 flags 12 :Noname_94 0001: wait 0 ms 0256: player $PLAYER_ACTOR defined 004D: jump_if_false @Noname_94 0449: actor $PLAYER_ACTOR in_a_car 004D: jump_if_false @Noname_94 03C0: 11@ = actor $PLAYER_ACTOR car 004D: jump_if_false @Noname_94 00A0: store_actor $PLAYER_ACTOR position_to 2@ 3@ 4@ 0AD3: 8@ = format "%f | %f | %f" 2@ 3@ 4@ 0B6F: render font 9@ draw_text 8@ pos 1600 900 color -1 00D6: if and 0021: 2@ > -245.0 8031: not 2@ >= 0.0 8031: not 3@ >= 1250.0 0021: 3@ > 1000.0 0002: jump @Noname_94 0AD3: 8@ = format "È-12" 0B6F: render font 9@ draw_text 8@ pos 1600 800 color -1 0002: jump @Noname_94
Подумал. Решил определять с начало карту по горизонтали то есть букву. Потом по вертикали. Если Нахожусь в нужной букве, то ищет столбец-цифру. Опять же на одном квадрате получилось написать. Высчитал все строки и столбцы. Условия сократилось до 48. Но дальше дело не пошло. Дальше написать не могу. Просто каша в голове встала. Совсем запутался. Квадрат поидее определяться должен, но как дописать не понимаю. Вот если бы в переменную можно было бы записать русскую букву. Или вообще как то иначе надо делать. не пойму. Пол дня убил на это дело. Жаль бросать, ведь почти получилось:CLEO:{$CLEO .cs} //-------------MAIN--------------- 0000: NOP 0AC8: 2@ = allocate_memory_size 64 0AC8: 3@ = allocate_memory_size 64 0AC8: 4@ = allocate_memory_size 64 0AC8: 8@ = allocate_memory_size 256 :Noname_31 0001: wait 2500 ms 00D6: if 0AFA: is_samp_available 004D: jump_if_false @Noname_31 0B6D: render 9@ = create_font "Arial" height 10 flags 12 :Noname_94 0001: wait 0 ms 0256: player $PLAYER_ACTOR defined 004D: jump_if_false @Noname_94 0449: actor $PLAYER_ACTOR in_a_car 004D: jump_if_false @Noname_94 03C0: 11@ = actor $PLAYER_ACTOR car 004D: jump_if_false @Noname_94 00A0: store_actor $PLAYER_ACTOR position_to 2@ 3@ 4@ 0AD3: 8@ = format "%f | %f | %f" 2@ 3@ 4@ 0B6F: render font 9@ draw_text 8@ pos 1600 900 color -1 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -250.0 1250.0 cornerB 0.0 1000.0 004D: jump_if_false @Noname_94 0AD3: 8@ = format "È-12" 0B6F: render font 9@ draw_text 8@ pos 1600 800 color -1 0002: jump @Noname_94
CLEO:{$CLEO .cs} //-------------MAIN--------------- 0000: NOP 0AC8: 2@ = allocate_memory_size 64 0AC8: 3@ = allocate_memory_size 64 0AC8: 4@ = allocate_memory_size 64 0AC8: 8@ = allocate_memory_size 256 :Noname_1 0001: wait 2500 ms 00D6: if 0AFA: is_samp_available 004D: jump_if_false @Noname_1 0B6D: render 9@ = create_font "Arial" height 10 flags 12 :Noname_2 0001: wait 0 ms 0256: player $PLAYER_ACTOR defined 004D: jump_if_false @Noname_2 0449: actor $PLAYER_ACTOR in_a_car 004D: jump_if_false @Noname_2 03C0: 11@ = actor $PLAYER_ACTOR car 004D: jump_if_false @Noname_2 00A0: store_actor $PLAYER_ACTOR position_to 2@ 3@ 4@ 0AD3: 8@ = format "%f | %f | %f" 2@ 3@ 4@ 0B6F: render font 9@ draw_text 8@ pos 1600 900 color -1 :Noname_3 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 3000.0 cornerB 3000.0 2750.0 //a 004D: jump_if_false @Noname_4 5@s = 'A' 0002: jump @Noname_27 :Noname_4 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 2750.0 cornerB 3000.0 2500.0 004D: jump_if_false @Noname_5 0002: jump @Noname_27 :Noname_5 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 2500.0 cornerB 3000.0 2250.0 004D: jump_if_false @Noname_6 5@s = 'B' 0002: jump @Noname_27 :Noname_6 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 2250.0 cornerB 3000.0 2000.0 004D: jump_if_false @Noname_7 0002: jump @Noname_27 :Noname_7 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 2000.0 cornerB 3000.0 1750.0 004D: jump_if_false @Noname_8 0002: jump @Noname_27 :Noname_8 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 1750.0 cornerB 3000.0 1500.0 004D: jump_if_false @Noname_9 0002: jump @Noname_27 :Noname_9 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 1500.0 cornerB 3000.0 1250.0 004D: jump_if_false @Noname_10 0002: jump @Noname_27 :Noname_10 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 1250.0 cornerB 3000.0 1000.0 004D: jump_if_false @Noname_11 0002: jump @Noname_27 :Noname_11 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 1000.0 cornerB 3000.0 750.0 004D: jump_if_false @Noname_12 0002: jump @Noname_27 :Noname_12 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 750.0 cornerB 3000.0 500.0 004D: jump_if_false @Noname_13 0002: jump @Noname_27 :Noname_13 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 500.0 cornerB 3000.0 250.0 004D: jump_if_false @Noname_14 0002: jump @Noname_27 :Noname_14 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 250.0 cornerB 3000.0 0.0 004D: jump_if_false @Noname_15 0002: jump @Noname_27 :Noname_15 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 0.0 cornerB 3000.0 -250.0 004D: jump_if_false @Noname_16 0002: jump @Noname_27 :Noname_16 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -250.0 cornerB 3000.0 -750.0 004D: jump_if_false @Noname_17 0002: jump @Noname_27 :Noname_17 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -500.0 cornerB 3000.0 -1000.0 004D: jump_if_false @Noname_18 0002: jump @Noname_27 :Noname_18 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -750.0 cornerB 3000.0 -1500.0 004D: jump_if_false @Noname_19 0002: jump @Noname_27 :Noname_19 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -1000.0 cornerB 3000.0 -1750.0 004D: jump_if_false @Noname_20 0002: jump @Noname_27 :Noname_20 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -1250.0 cornerB 3000.0 -2000.0 004D: jump_if_false @Noname_21 0002: jump @Noname_27 :Noname_21 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -1500.0 cornerB 3000.0 -2250.0 004D: jump_if_false @Noname_22 0002: jump @Noname_27 :Noname_22 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -1750.0 cornerB 3000.0 -1500.0 004D: jump_if_false @Noname_23 0002: jump @Noname_27 :Noname_23 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -2000.0 cornerB 3000.0 -1750.0 004D: jump_if_false @Noname_24 0002: jump @Noname_27 :Noname_24 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -2250.0 cornerB 3000.0 -2000.0 004D: jump_if_false @Noname_25 0002: jump @Noname_27 :Noname_25 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -2500.0 cornerB 3000.0 -2250.0 004D: jump_if_false @Noname_26 0002: jump @Noname_27 :Noname_26 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 -2750.0 cornerB 3000.0 -2500.0 004D: jump_if_false @Noname_2 0002: jump @Noname_27 //-------------1-24--------------- :Noname_27 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -3000.0 3000.0 cornerB -2750.0 -3000.0 004D: jump_if_false @Noname_28 13@ = 1 0002: jump @Noname_51 :Noname_28 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -2750.0 3000.0 cornerB -2500.0 -3000.0 004D: jump_if_false @Noname_29 13@ = 2 0002: jump @Noname_51 :Noname_29 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -2500.0 3000.0 cornerB -2250.0 -3000.0 004D: jump_if_false @Noname_30 13@ = 3 0002: jump @Noname_51 :Noname_30 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -2250.0 3000.0 cornerB -2000.0 -3000.0 004D: jump_if_false @Noname_31 13@ = 4 0002: jump @Noname_51 :Noname_31 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -2000.0 3000.0 cornerB -1750.0 -3000.0 004D: jump_if_false @Noname_32 13@ = 5 0002: jump @Noname_51 :Noname_32 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -1750.0 3000.0 cornerB -1500.0 -3000.0 004D: jump_if_false @Noname_33 13@ = 6 0002: jump @Noname_51 :Noname_33 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -1500.0 3000.0 cornerB -1250.0 -3000.0 004D: jump_if_false @Noname_34 13@ = 7 0002: jump @Noname_51 :Noname_34 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -1250.0 3000.0 cornerB -1000.0 -3000.0 004D: jump_if_false @Noname_35 13@ = 8 0002: jump @Noname_51 :Noname_35 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -1000.0 3000.0 cornerB -750.0 -3000.0 004D: jump_if_false @Noname_36 13@ = 9 0002: jump @Noname_51 :Noname_36 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -750.0 3000.0 cornerB -500.0 -3000.0 004D: jump_if_false @Noname_37 13@ = 10 0002: jump @Noname_51 :Noname_37 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -500.0 3000.0 cornerB -250.0 -3000.0 004D: jump_if_false @Noname_38 13@ = 11 0002: jump @Noname_51 :Noname_38 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA -250.0 3000.0 cornerB 0.0 -3000.0 004D: jump_if_false @Noname_39 13@ = 12 0002: jump @Noname_51 :Noname_39 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA 0.0 3000.0 cornerB 250.0 -3000.0 004D: jump_if_false @Noname_40 13@ = 13 0002: jump @Noname_51 :Noname_40 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA 250.0 3000.0 cornerB 500.0 -3000.0 004D: jump_if_false @Noname_41 13@ = 14 0002: jump @Noname_51 :Noname_41 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA 500.0 3000.0 cornerB 750.0 -3000.0 004D: jump_if_false @Noname_42 13@ = 15 0002: jump @Noname_51 :Noname_42 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA 750.0 3000.0 cornerB 1000.0 -3000.0 004D: jump_if_false @Noname_43 13@ = 16 0002: jump @Noname_51 :Noname_43 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA 1000.0 3000.0 cornerB 1250.0 -3000.0 004D: jump_if_false @Noname_44 13@ = 17 0002: jump @Noname_51 :Noname_44 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA 1250.0 3000.0 cornerB 1500.0 -3000.0 004D: jump_if_false @Noname_45 13@ = 18 0002: jump @Noname_51 :Noname_45 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA 1500.0 3000.0 cornerB 1750.0 -3000.0 004D: jump_if_false @Noname_46 13@ = 19 0002: jump @Noname_51 :Noname_46 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA 1750.0 3000.0 cornerB 2000.0 -3000.0 004D: jump_if_false @Noname_47 13@ = 20 0002: jump @Noname_51 :Noname_47 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA 2000.0 3000.0 cornerB 2250.0 -3000.0 004D: jump_if_false @Noname_48 13@ = 21 0002: jump @Noname_51 :Noname_48 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA 2250.0 3000.0 cornerB 2500.0 -3000.0 004D: jump_if_false @Noname_49 13@ = 22 0002: jump @Noname_51 :Noname_49 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA 2500.0 3000.0 cornerB 2750.0 -3000.0 004D: jump_if_false @Noname_50 13@ = 23 0002: jump @Noname_51 :Noname_50 00D6: if 00B0: car 11@ sphere 0 in_rectangle_cornerA 2750.0 3000.0 cornerB 3000.0 -3000.0 004D: jump_if_false @Noname_2 13@ = 24 0002: jump @Noname_51 ....
GetCoordOfSection
10@ = 3000.0 // X
11@ = 3000.0 // Y
Actor.StorePos($player_actor, 1@, 2@, 3@)
//перевод системы координат
//X
if 1@ > 0.0
then
005B: 10@ += 1@
else
0013: 1@ *= -1.0 // модуль числа
0063: 10@ -= 1@
end
//Y
if 2@ > 0.0
then
0063: 11@ -= 2@
else
0013: 2@ *= -1.0 // модуль числа
005B: 11@ += 2@
end
// 24x24=576
// координатное поле от верхнего левого угла начиная с 0 до 6000.0 (3000.0+3000.0) с шагом квадратом по 250
10@ /= 250.0
0AB1: @GetFloatToTwoInt 1 float 10@ store_2_int 33@ 5@
if 5@ > 0
then
0092: 3@ = float 10@ to_integer
000A: 3@ += 1
else
0092: 3@ = float 10@ to_integer
end
11@ /= 250.0
0AB1: @GetFloatToTwoInt 1 float 11@ store_2_int 33@ 5@
if 5@ > 0
then
0092: 1@ = float 11@ to_integer
000A: 1@ += 1
else
0092: 1@ = float 11@ to_integer
end
0AB2: ret 2 1@ 3@
:GetFloatToTwoInt // 11.22
0092: 1@ = float 0@ to_integer // 11
0093: 2@ = integer 1@ to_float // 11.00
0063: 0@ -= 2@ // 11.22 - 11.00 = 0.22
0@ *= 100.0 // 0.22 * 100.0 = 22.0
0092: 2@ = float 0@ to_integer // 22
0AB2: ret 2 1@ 2@
{$CLEO}
0000:
while 8AFA: not is_samp_available // repeat
wait 0
end
while true
wait 0
0AB1: call_scm_func @GetCoordOfSection 0 store_X_to 1@ Y_to 2@
0AD1: show_formatted_text_highpriority "X=%i / Y=%i" time 100 1@ 2@
end
:GetCoordOfSection
10@ = 3000.0 // X
11@ = 3000.0 // Y
Actor.StorePos($player_actor, 1@, 2@, 3@)
//перевод системы координат
//X
if 1@ > 0.0
then
005B: 10@ += 1@
else
0013: 1@ *= -1.0 // модуль числа
0063: 10@ -= 1@
end
//Y
if 2@ > 0.0
then
0063: 11@ -= 2@
else
0013: 2@ *= -1.0 // модуль числа
005B: 11@ += 2@
end
// 24x24=576
// координатное поле от верхнего левого угла начиная с 0 до 6000.0 (3000.0+3000.0) с шагом квадратом по 250
10@ /= 250.0
0AB1: @GetFloatToTwoInt 1 float 10@ store_2_int 33@ 5@
if 5@ > 0
then
0092: 3@ = float 10@ to_integer
000A: 3@ += 1
else
0092: 3@ = float 10@ to_integer
end
11@ /= 250.0
0AB1: @GetFloatToTwoInt 1 float 11@ store_2_int 33@ 5@
if 5@ > 0
then
0092: 1@ = float 11@ to_integer
000A: 1@ += 1
else
0092: 1@ = float 11@ to_integer
end
0AB2: ret 2 1@ 3@
:GetFloatToTwoInt // 11.22
0092: 1@ = float 0@ to_integer // 11
0093: 2@ = integer 1@ to_float // 11.00
0063: 0@ -= 2@ // 11.22 - 11.00 = 0.22
0@ *= 100.0 // 0.22 * 100.0 = 22.0
0092: 2@ = float 0@ to_integer // 22
0AB2: ret 2 1@ 2@
Тебе нужно из координат получать название квадрата, в котором они находятся?Хочу написать скрипт, что бы в нём определялись квадраты на карте.
У меня появилась проблема. Суть в том, что мне надо разделить строку на две части, но у меня это не получается сделать.
Например такая строка: "NIck_Name: Привет c: Как дела?)"
То есть, надо получить отдельно "Nick_Name" и "Привет c: Как дела?)".
Опкодом 0C16 не получается и чё-т хз, что делать(
P.s. на месте "c:" мог быть любой другой смайлик)
0AD4: 29@ = scan_string 0@ format "%[^:]: %[^\n]" 1@ 2@
Вот мой скрипт. Балуюсь им.У меня появилась проблема. Суть в том, что мне надо разделить строку на две части, но у меня это не получается сделать.
Например такая строка: "NIck_Name: Привет c: Как дела?)"
То есть, надо получить отдельно "Nick_Name" и "Привет c: Как дела?)".
Опкодом 0C16 не получается и чё-т хз, что делать(
P.s. на месте "c:" мог быть любой другой смайлик)
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
0AC8: 3@ = allocate_memory_size 64
0AC8: 4@ = allocate_memory_size 64
0AC8: 5@ = allocate_memory_size 64
0AC8: 6@ = allocate_memory_size 64
0AC8: 7@ = allocate_memory_size 64
:Noname_37
0001: wait 2500 ms
00D6: if
0AFA: is_samp_available
004D: jump_if_false @Noname_37
:Noname_55
0001: wait 0 ms
00D6: if
0AD2: 1@ = player $PLAYER_CHAR targeted_actor //IF and SET
004D: jump_if_false @Noname_55
0B2B: samp 2@ = get_player_id_by_actor_handle 1@
0B36: samp 3@ = get_player_nickname 2@
0C13: strcpy destination 4@ source 3@
0C16: 5@ = strtok string1 4@ string2 "_"
0C18: 6@ = strstr string1 3@ string2 "_"
0C16: 7@ = strtok string1 6@ string2 "_"
00D6: if
8039: not 6@ == 0
004D: jump_if_false @Noname_55
00D6: if
0AB0: key_pressed 49
004D: jump_if_false @Noname_190
0AF9: samp say_msg "%s" 5@
0001: wait 1000 ms
0002: jump @Noname_55
:Noname_190
00D6: if
0AB0: key_pressed 50
004D: jump_if_false @Noname_55
0AF9: samp say_msg "/me посмотрел на %s %s" 5@ 7@
0001: wait 1000 ms
0002: jump @Noname_55
да. Я думал подробно там написалТебе нужно из координат получать название квадрата, в котором они находятся?
А мне это зачем?))Вот мой скрипт. Балуюсь им.
CLEO:{$CLEO .cs} //-------------MAIN--------------- 0000: NOP 0AC8: 3@ = allocate_memory_size 64 0AC8: 4@ = allocate_memory_size 64 0AC8: 5@ = allocate_memory_size 64 0AC8: 6@ = allocate_memory_size 64 0AC8: 7@ = allocate_memory_size 64 :Noname_37 0001: wait 2500 ms 00D6: if 0AFA: is_samp_available 004D: jump_if_false @Noname_37 :Noname_55 0001: wait 0 ms 00D6: if 0AD2: 1@ = player $PLAYER_CHAR targeted_actor //IF and SET 004D: jump_if_false @Noname_55 0B2B: samp 2@ = get_player_id_by_actor_handle 1@ 0B36: samp 3@ = get_player_nickname 2@ 0C13: strcpy destination 4@ source 3@ 0C16: 5@ = strtok string1 4@ string2 "_" 0C18: 6@ = strstr string1 3@ string2 "_" 0C16: 7@ = strtok string1 6@ string2 "_" 00D6: if 8039: not 6@ == 0 004D: jump_if_false @Noname_55 00D6: if 0AB0: key_pressed 49 004D: jump_if_false @Noname_190 0AF9: samp say_msg "%s" 5@ 0001: wait 1000 ms 0002: jump @Noname_55 :Noname_190 00D6: if 0AB0: key_pressed 50 004D: jump_if_false @Noname_55 0AF9: samp say_msg "/me посмотрел на %s %s" 5@ 7@ 0001: wait 1000 ms 0002: jump @Noname_55
А ну я тебя не понял просто. Думал ник разделить.А мне это зачем?))