Постройка зданий
|
|
Terrador | Дата: Суббота, 13 Апреля 2013, 11:32:02 | Сообщение # 1 |
8 уровень
Группа: Проверенные
Сообщений: 676
Награды: 0
Репутация: 1101
Блокировки:
| Здание было уничтожено, и случайно выбранному работнику триггерно был отдан приказ о постройке такого же здания на том же самом месте.Но проблема в том, что если работника убьют или помешают ему построить здание, то оно больше не будет построено, а нужно его построить заново, например через 10 секунд. Как сделать такое, но чтобы не нужно было проверять наличие каждого по отдельности здания?
|
|
|
|
Naturekid | Дата: Суббота, 13 Апреля 2013, 11:39:05 | Сообщение # 2 |
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
| это для АИ? можешь юзать мою открытую INMO http://warcraft3ft.info/go?http://www.epicwar.com/maps/225747/ Там категория триггов Computer AI и триггер train upgrade кажется, без утечек и все востребованные действи я аи имеются.
|
|
|
|
Наклз | Дата: Суббота, 13 Апреля 2013, 11:58:34 | Сообщение # 3 |
10 уровень
Группа: Проверенные
Сообщений: 1431
Награды: 0
Репутация: 760
Блокировки:
| Может в конце не триггеринг юнит , а Dying юнит...
|
|
|
|
Terrador | Дата: Суббота, 13 Апреля 2013, 12:01:40 | Сообщение # 4 |
8 уровень
Группа: Проверенные
Сообщений: 676
Награды: 0
Репутация: 1101
Блокировки:
| Цитата (Naturekid) это для АИ? Да, но мне нужна только замена уничтоженного зданияЦитата (Naturekid) http://warcraft3ft.info/go?http://www.epicwar.com/maps/225747/ Там категория триггов Computer AI и триггер train upgrade кажется, без утечек и все востребованные действи я аи имеются. Триггер очень большой и слишком сложный, мне же нужно только заменить уничтоженное здание, и всё!Добавлено (13 Апреля 2013, 12:01:40) ---------------------------------------------
Цитата (Наклз) Может в конце не триггеринг юнит Без разницы, проблема-то не в этом
|
|
|
|
Naturekid | Дата: Суббота, 13 Апреля 2013, 12:16:25 | Сообщение # 5 |
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
| Terrador, чем не годится проверка числа юнитов игрока типа такого-то? если недостаточно - построить-натренировать
|
|
|
|
Terrador | Дата: Суббота, 13 Апреля 2013, 12:31:07 | Сообщение # 6 |
8 уровень
Группа: Проверенные
Сообщений: 676
Награды: 0
Репутация: 1101
Блокировки:
| Цитата (Naturekid) чем не годится проверка числа юнитов игрока типа такого-то? если недостаточно - построить-натренировать Не годится тем, что надо построить новое здание там, где стояло старое.
|
|
|
|
Naturekid | Дата: Суббота, 13 Апреля 2013, 12:39:22 | Сообщение # 7 |
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
| тогда задавай точки с оффсетами, точно глюкать не будет например игрок 1 имеет постоянные точки constantBarrcks[1]=player(1)'s start location offset by (400, 400) - точка для бараков constantlumbermill[1]player(1)'s start location offset by (-900, 600) - точка для лесопилки
|
|
|
|
Terrador | Дата: Суббота, 13 Апреля 2013, 18:23:43 | Сообщение # 8 |
8 уровень
Группа: Проверенные
Сообщений: 676
Награды: 0
Репутация: 1101
Блокировки:
| Другой вопрос: каким условием проверить, содержит ли область юнита конкретного типа?
|
|
|
|
Naturekid | Дата: Суббота, 13 Апреля 2013, 18:27:51 | Сообщение # 9 |
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
| boolean - unit in region Добавлено (13 Апреля 2013, 18:27:51) --------------------------------------------- ну например set regionX = region centered in constantbarracks[1] with size 500, 500 set groupX = units in regionX matching unit-type of matching unit = barracks if number of units in groupX = 0 - значит нету там бараков
|
|
|
|
Terrador | Дата: Суббота, 13 Апреля 2013, 19:53:42 | Сообщение # 10 |
8 уровень
Группа: Проверенные
Сообщений: 676
Награды: 0
Репутация: 1101
Блокировки:
| Naturekid, спасибо за подсказку, но теперь другая проблема: когда здание уничтожено, то каждые 20 сек выбирается работник и отправляется строить здание, несмотря на то, если приказ уже был отдан ранее другому работнику. И приходит рабочий, строит здание, затем приходят еще несколько, и пытаются построить здание там, где оно уже строится, поэтому они тупо уходят. А нужно чтобы приказ отдавался только 1 рабочему, а если он погибает или постройка здания не удалась, то отдать тот же приказ другому рабочему. Но это наверное невозможно...
|
|
|
|
Naturekid | Дата: Суббота, 13 Апреля 2013, 22:14:18 | Сообщение # 11 |
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
| создавай летающего невидимого дамми на позиции предполагаемого здания и делай проверку на наличие дамми, как здание достроится - убирай его.
|
|
|
|
Borodach | Дата: Воскресенье, 14 Апреля 2013, 02:32:27 | Сообщение # 12 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| Terrador, С:Умирает У:умерло здание Д:Установить переменной ЮНИТ равно случайный рабочий Установить переменной ЗНАДИЕ равно умершый Приказать ЮНИТ строить ЗДАНИЕ
С:умирает У:умершый не равно ЗДАНИЕ умерший равно ЮНИТ Д:Установить переменной ЮНИТ равно случайный рабочий Приказать ЮНИТ строить ЗДАНИЕ
Karamba
Сообщение отредактировал Borodach - Воскресенье, 14 Апреля 2013, 02:34:07 |
|
|
|