Название Области
|
|
God_of_light | Дата: Среда, 20 Февраля 2013, 09:57:14 | Сообщение # 1 |
6 уровень
Группа: Проверенные
Сообщений: 206
Награды: 0
Репутация: 185
Блокировки:
| Доброго дня, читатель! Вопрос простой: если ли вообще функция, способная вернуть значение Названия Области в string\int типе?
|
|
|
|
Naturekid | Дата: Среда, 20 Февраля 2013, 10:49:45 | Сообщение # 2 |
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
| А для чего? Мб просто альтернативу?
|
|
|
|
God_of_light | Дата: Среда, 20 Февраля 2013, 11:31:04 | Сообщение # 3 |
6 уровень
Группа: Проверенные
Сообщений: 206
Награды: 0
Репутация: 185
Блокировки:
| Цитата (Naturekid) А для чего? Мб просто альтернативу? Ну то есть нет такой функции??))
Да у меня идея гениальная появилась для еще одной мини-игры. Есть 100 областей, при вхождении в каждую из них будут выполняться разные действия. Я думал сверять название этих областей в одной функции и по массиву сверять => мои действия. Может быть как-то можно, если назвать области цифрами 001-100 и была бы функция которая конвертирует строку названия в int было бы вообще замечательно. В противном случае придется 100 триггеров делать)
|
|
|
|
Naturekid | Дата: Среда, 20 Февраля 2013, 11:42:48 | Сообщение # 4 |
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
| Цитата (God_of_light) В противном случае придется 100 триггеров делат нет в 1 триггере 100 событий. потом вейт 0.3 сек. потом цикл проверки в такой ли области находится юнит. правда все области придётся в переменные забить. Но всё же не так уж ушлёпищно вроде будет.Добавлено (20 Февраля 2013, 11:42:48) ---------------------------------------------
Цитата (Naturekid) в 1 триггере 100 событий. их мы кстати циклом добавим в события из другого триггера, а не вручную писать будем.
|
|
|
|
God_of_light | Дата: Среда, 20 Февраля 2013, 11:50:41 | Сообщение # 5 |
6 уровень
Группа: Проверенные
Сообщений: 206
Награды: 0
Репутация: 185
Блокировки:
| А вот нашел вроде как решение через return bug. Можно узнать handle каждой области и по массиву расписать числами 1-100.
Цитата (God_of_light) В противном случае придется 100 триггеров делать) Да я утрирую, просто много прописывать придется, занести в переменные то оно само собой.
|
|
|
|
SirNikolas | Дата: Среда, 20 Февраля 2013, 11:52:56 | Сообщение # 6 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| На самом деле можно отловить только регион, в который вошел юнит, но не область. Создаем два массива, один с регионами, другой с областями. Забиваем их так, чтобы напротив каждого региона была соответствующая ему область. Затем сортируем по возрастанию/убыванию (не важно) параметра GetHandleId(region). Добавляем 100 событий в триггер. При входе юнита в какой-либо регион юзаем бинарный поиск на массивы, получаем индекс. 100 областей - всего 7 проверок.
|
|
|
|
Naturekid | Дата: Среда, 20 Февраля 2013, 11:53:01 | Сообщение # 7 |
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
| М, ну здорово, меньше выполняемых действий =)
|
|
|
|
SirNikolas | Дата: Среда, 20 Февраля 2013, 11:53:22 | Сообщение # 8 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Цитата (God_of_light) А вот нашел вроде как решение через return bug. Пофиксили в 1.24.
|
|
|
|
God_of_light | Дата: Среда, 20 Февраля 2013, 11:55:09 | Сообщение # 9 |
6 уровень
Группа: Проверенные
Сообщений: 206
Награды: 0
Репутация: 185
Блокировки:
| Цитата (SirNikolas) На самом деле можно отловить только регион, в который вошел юнит, но не область.Создаем два массива, один с регионами, другой с областями. Забиваем их так, чтобы напротив каждого региона была соответствующая ему область. Затем сортируем по возрастанию/убыванию (не важно) параметра GetHandleId(region). Добавляем 100 событий в триггер. При входе юнита в какой-либо регион юзаем бинарный поиск на массивы, получаем индекс. 100 областей - всего 7 проверок. Все, понял, спасибо)))
|
|
|
|