Здравствуйте, гость ( Вход | Регистрация )

52 страниц V « < 15 16 17 18 19 > »   
Ответить в эту темуОткрыть новую тему
> Упростить скрипт
DarkMaster
сообщение 17.8.2013, 20:15
Сообщение #321


***********

Модератор UOPilot
Сообщений: 9.743
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 29658
Пользователь №: 11.279



т.е. у нас получается картинка:
000000
000000
000000
001000
000200
003000

В принципе все правильно. Это один из вариантов расположения ячейки, нормально просчитанный в пилоте.
Теперь давай нарисуем, как раньше уже делали, все возможные координаты. А затем точно так же их рассчитаем их положение в пилоте.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
veiron
сообщение 17.8.2013, 20:19
Сообщение #322


********

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
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 17.8.2013, 20:26
Сообщение #323


***********

Модератор UOPilot
Сообщений: 9.743
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 29658
Пользователь №: 11.279



Все правильно. Ты заметил сколько переменных пришлось ввести для описания координат? А это только первый из 4 скриптов. Чем дальше, тем будет их больше. А ведь нам дальше еще придется их все перебирать проверкой на соответствие цвета. Причем, заметь, данные у нас все однотипные и четко структурированные: х и у координаты. Теперь давай запишем их не в переменные, а в массив, скажем %thridImage.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
veiron
сообщение 17.8.2013, 20:31
Сообщение #324


********

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



Цитата(DarkMaster @ 17.8.2013, 20:26) *

Все правильно. Ты заметил сколько переменных пришлось ввести для описания координат? А это только первый из 4 скриптов. Чем дальше, тем будет их больше. А ведь нам дальше еще придется их все перебирать проверкой на соответствие цвета. Причем, заметь, данные у нас все однотипные и четко структурированные: х и у координаты. Теперь давай запишем их не в переменные, а в массив, скажем %thridImage.


Set %thridImage[1 1] #x1
Set %thridImage[1 2] #y1
а время хода хватит, на столько поиска?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 17.8.2013, 20:33
Сообщение #325


***********

Модератор UOPilot
Сообщений: 9.743
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 29658
Пользователь №: 11.279



Имелось ввиду, расчеты записать в массив, а не исходные координаты (IMG:style_emoticons/default/wink.gif)

Цитата
а время хода хватит, на столько поиска?

Думаю итоговый скрипт будет занимать до 5 секунд с глубиной поиска 5 изображений в линию.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
veiron
сообщение 17.8.2013, 20:37
Сообщение #326


********

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
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 17.8.2013, 20:47
Сообщение #327


***********

Модератор 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____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
veiron
сообщение 17.8.2013, 20:52
Сообщение #328


********

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
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 17.8.2013, 20:56
Сообщение #329


***********

Модератор UOPilot
Сообщений: 9.743
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 29658
Пользователь №: 11.279



Цитата
log %thridImage[#i 1] %thridImage[#i 2]

Правильно. Даже переменную подставил верно, т.к. будет перебор. Только переменная будет другой, т.к. #i уже используется в вышестоящем по основному скрипту переборе.
Цитата
Так это задание на ближайшие 5 лет!!!

Там 3 строчки на самом деле и одна из них end_for. Давай по порядку (IMG:style_emoticons/default/smile.gif) Открой историю развития/вику и посмотри описание size. Затем вычисли размер массива. Там все очень просто.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
veiron
сообщение 17.8.2013, 21:04
Сообщение #330


********

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



Цитата(DarkMaster @ 17.8.2013, 20:56) *

Там 3 строчки на самом деле и одна из них end_for. Давай по порядку (IMG:style_emoticons/default/smile.gif) Открой историю развития/вику и посмотри описание size. Затем вычисли размер массива. Там все очень просто.

set #sizeThridImage size (%thridImage)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 17.8.2013, 21:05
Сообщение #331


***********

Модератор UOPilot
Сообщений: 9.743
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 29658
Пользователь №: 11.279



Все верно. Ну и что в этом было страшного?
Теперь пишем for. Все необходимые данные у нас теперь есть.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
veiron
сообщение 17.8.2013, 21:12
Сообщение #332


********

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



Цитата(DarkMaster @ 17.8.2013, 21:05) *

Все верно. Ну и что в этом было страшного?
Теперь пишем for. Все необходимые данные у нас теперь есть.

В этом ни чего, а вот фор это катастрофа.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 17.8.2013, 21:17
Сообщение #333


***********

Модератор UOPilot
Сообщений: 9.743
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 29658
Пользователь №: 11.279



Пробуй. Разберешься. Для начала посмотри на
Цитата
log %thridImage[#i 1] %thridImage[#i 2]

На самом деле в этой строке очень много для фора дано. Это переменная #i. Какие значения она должна принимать во время перебора?


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
veiron
сообщение 17.8.2013, 21:20
Сообщение #334


********

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



Цитата(DarkMaster @ 17.8.2013, 21:17) *

Пробуй. Разберешься. Для начала посмотри на

На самом деле в этой строке очень много для фора дано. Это переменная #i. Какие значения она должна принимать во время перебора?

Set #i #i + 1
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 17.8.2013, 21:23
Сообщение #335


***********

Модератор UOPilot
Сообщений: 9.743
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 29658
Пользователь №: 11.279



Пока не в коде, а просто словами. Какой диапазон значений должна принимать #i?

Цитата
Set #i #i + 1

Это кстати не так далеко от истины. Просто другая часть фора. Нам это еще пригодиться.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
veiron
сообщение 17.8.2013, 21:25
Сообщение #336


********

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



Цитата(DarkMaster @ 17.8.2013, 21:23) *

Пока не в коде, а просто словами. Какой диапазон значений должна принимать #i?
Это кстати не так далеко от истины. Просто другая часть фора. Нам это еще пригодиться.

Я совсем не знаю фор.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 17.8.2013, 21:29
Сообщение #337


***********

Модератор UOPilot
Сообщений: 9.743
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 29658
Пользователь №: 11.279



Не важно. Забудь пока про фор. Сначала просто пойми, что нам нужно сделать.
Посмотри на написанный тобой массив. Какие значения #i должен будет приобретать, чтобы строкой
Цитата
log %thridImage[#i 1] %thridImage[#i 2]

написать все значения массива?


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
veiron
сообщение 17.8.2013, 21:30
Сообщение #338


********

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



Цитата(DarkMaster @ 17.8.2013, 21:29) *

Не важно. Забудь пока про фор. Сначала просто пойми, что нам нужно сделать.
Посмотри на написанный тобой массив. Какие значения #i должен будет приобретать, чтобы строкой

написать все значения массива?

1234
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 17.8.2013, 21:33
Сообщение #339


***********

Модератор UOPilot
Сообщений: 9.743
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 29658
Пользователь №: 11.279



Верно. А теперь запиши тоже самое, но диапазоном. Представь, что у нас массив длиннее в пару тысяч раз. Ты же не будешь перечислять все значения? Напиши диапазон.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
veiron
сообщение 17.8.2013, 21:33
Сообщение #340


********

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



Цитата(DarkMaster @ 17.8.2013, 21:33) *

Верно. А теперь запиши тоже самое, но диапазоном. Представь, что у нас массив длиннее в пару тысяч раз. Ты же не будешь перечислять все значения? Напиши диапазон.

1-4
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

52 страниц V « < 15 16 17 18 19 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 12.7.2025, 15:38
Designed by Nickostyle