|
|
  |
Упростить скрипт |
|
|
veiron |
17.8.2013, 20:19
|
       
Master
Сообщений: 1.264
Регистрация: 22.5.2012 Группа: Пользователи Наличность: 0 Из: Белоруссии
Пользователь №: 14.972

|
Цитата(DarkMaster @ 17.8.2013, 20:15)  Теперь давай нарисуем, как раньше уже делали, все возможные координаты. А затем точно так же их рассчитаем их положение в пилоте.
000000 000000 000x00 0010x0 0x0200 00x000 set #dgx 4 set #dgy 5 set #zx #x1 + 1 set #zy #y1 - 1 set #netx #x1 + 2 set #nety #y1 set #bizx #x1 set #bizy #y1 + 2 set #fetx #x1 - 1 set #fety #y1 + 1
|
|
|
|
veiron |
17.8.2013, 20:37
|
       
Master
Сообщений: 1.264
Регистрация: 22.5.2012 Группа: Пользователи Наличность: 0 Из: Белоруссии
Пользователь №: 14.972

|
Цитата(DarkMaster @ 17.8.2013, 20:33)  Имелось ввиду, расчеты записать в массив, а не исходные координаты (IMG: style_emoticons/default/wink.gif) Думаю итоговый скрипт будет занимать до 5 секунд с глубиной поиска 5 изображений в линию. Код Set %thridImage[1 1] #zx Set %thridImage[1 2] #zy Set %thridImage[2 1] #netx Set %thridImage[2 2] #nety Set %thridImage[3 1] #bizx Set %thridImage[3 2] #bizy Set %thridImage[4 1] #fetx Set %thridImage[4 2] #fety так мало по времени будет (IMG: style_emoticons/default/ohmy.gif) Наверно все таки так правильнее будет: Код Set %thridImage[1 1] #x1 + 1 Set %thridImage[1 2] #y1 - 1 Set %thridImage[2 1] #x1 + 2 Set %thridImage[2 2] #y1 Set %thridImage[3 1] #x1 Set %thridImage[3 2] #y1 + 2 Set %thridImage[4 1] #x1 - 1 Set %thridImage[4 2] #y1 + 1
|
|
|
|
DarkMaster |
17.8.2013, 20:47
|
          
Модератор UOPilot
Сообщений: 9.743
Регистрация: 2.12.2008 Группа: Супермодераторы Наличность: 29658
Пользователь №: 11.279

|
Цитата Наверно все таки так правильнее будет 1) Напиши строку, которая будет выводить в лог координаты текущей ячейки. Именно оно. Поскольку у нас теперь все данные в массиве, то мы можем не писать отдельное условие для каждой координаты, а использовать for для перебора. Чтобы использовать фор, нам нужно будет знать размер массива. Нам поможет в этом функция size. 2) Вычисли размер массива в переменную #sizeThridImage. Имя конечно может быть любым, но на мой взгляд это наиболее удобный формат, чтобы потом глаза не ломать. 3) Напиши цикл for, который выводить в лог координаты перебираемой ячейки. Сообщение отредактировал DarkMaster - 17.8.2013, 20:47
--------------------
Скрипты UOPilot под заказ. Консультации по UOpilot 15$/час. Услуги Lua разработчика (не пилот, проекты, постоянка) Disсоrd: Kov____
|
|
|
|
veiron |
17.8.2013, 20:52
|
       
Master
Сообщений: 1.264
Регистрация: 22.5.2012 Группа: Пользователи Наличность: 0 Из: Белоруссии
Пользователь №: 14.972

|
Цитата(DarkMaster @ 17.8.2013, 20:47)  1) Напиши строку, которая будет выводить в лог координаты текущей ячейки.
log %thridImage[#i 1] %thridImage[#i 2] Цитата Именно оно. Поскольку у нас теперь все данные в массиве, то мы можем не писать отдельное условие для каждой координаты, а использовать for для перебора. Чтобы использовать фор, нам нужно будет знать размер массива. Нам поможет в этом функция size. 2) Вычисли размер массива в переменную #sizeThridImage. Имя конечно может быть любым, но на мой взгляд это наиболее удобный формат, чтобы потом глаза не ломать. 3) Напиши цикл for, который выводить в лог координаты перебираемой ячейки. Так это задание на ближайшие 5 лет!!! Сообщение отредактировал DarkMaster - 17.8.2013, 20:54
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|