Добрый вечер, на данный момент делаю тригер который будет проверять если ли в области ратуша-крепость-замок и если есть то нужно что бы юниты атаковали эту область - но неувязочка не могу найти такую функцию на проверку (GUI)

Принятый ответ

Выбираешь юнитов в области и делаешь проверку:
(IsUnitType(GetEnumUnit(), UNIT_TYPE_TOWNHALL).
Ну ещё нужно проверить, является ли выбранная ратуша противником конкретного игрока.
Если да, то послать туда войска и т. д.
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
17
7 лет назад
0
а попробуй дать зданию какую нить способность(невидимую) и проверяй есть ли у неё такая
0
28
7 лет назад
0
ledoed:
а попробуй дать зданию какую нить способность(невидимую) и проверяй есть ли у неё такая
эм а как я проверю?
общая задача у меня такова
создаются крипы
и атакую одну из 8 рандомных областей но нужно сделать так что если в областях нету Ратуши они не атаковали ту область а шли в рандомную где Ратуша есть, и я не знаю как это реализовать
0
27
7 лет назад
Отредактирован MpW
0
классификацию проверить? выбираешь всех и фильтром отсеиваешь по классификацией
эм а как я проверю?
там проверяешь уровни, если больше нуля, то у него она есть. У обычных юнитов она изначально есть (задано в РО), равна единице вроде
0
17
7 лет назад
0
неужели так сложно сделать переменную unit чтобы была она массивом,потом проверить всех юнитов на карте и отфильтровать либо по id либо по способности, дальше заносишь все эти ратуши в массив выбираешь допустим чтобы цикл пробежал 3 раза и делаешь такое условие
-цикл от0 до 2
massUnit[ Random(0,сколько ратуш в масииве) ]-послать туда "общее количество зомбарей/3"
могу показать кодом (Gui вообще не знаю к сожалению)
-конец цикла
0
28
7 лет назад
Отредактирован Roy Mustang
0
ledoed:
неужели так сложно сделать переменную unit чтобы была она массивом,потом проверить всех юнитов на карте и отфильтровать либо по id либо по способности, дальше заносишь все эти ратуши в массив выбираешь допустим чтобы цикл пробежал 3 раза и делаешь такое условие
-цикл от0 до 2
massUnit[ Random(0,сколько ратуш в масииве) ]-послать туда "общее количество зомбарей/3"
могу показать кодом (Gui вообще не знаю к сожалению)
-конец цикла
я не очень силен в тригерах по этому не очень знаю, был бы рад примеру
Вот к чему я пришел
Tnomer - номера базы куда будут атковать - что мне нужно это что-бы Tnomer например один из этих номерв 1/3/8 если база номер 1/3/8 будет цела то он возьмет один из этих номеров и будет туда атаковать
вот еще изменил но дальше не знаю как сделать так чтобы Nnomer брал одну точную цифру из тех что нужно
Вписал так и вроде работает,
так и должно быть?
Загруженные файлы
0
18
7 лет назад
Отредактирован Maniac_91
0
Выбираешь юнитов в области и делаешь проверку:
(IsUnitType(GetEnumUnit(), UNIT_TYPE_TOWNHALL).
Ну ещё нужно проверить, является ли выбранная ратуша противником конкретного игрока.
Если да, то послать туда войска и т. д.
Загруженные файлы
Принятый ответ
0
28
7 лет назад
0
Maniac_91:
Выбираешь юнитов в области и делаешь проверку:
(IsUnitType(GetEnumUnit(), UNIT_TYPE_TOWNHALL).
Ну ещё нужно проверить, является ли выбранная ратуша противником конкретного игрока.
Если да, то послать туда войска и т. д.
Боевая ед из ратуши является Проверкой на Ратушу?
0
17
7 лет назад
0
надеюсь сам прикрутишь ии и всё остальное я лишь дал логику
Загруженные файлы
0
28
7 лет назад
0
ledoed:
надеюсь сам прикрутишь ии и всё остальное я лишь дал логику
я не знаю Jass, и у меня спавнятся разные мобы и на разных волнах (их всего 8) спавнится очень много разновидностей юнитов и они должны атаковать все по пути к ратуше а я не смогу вписать все это на Jass
0
17
7 лет назад
0
да писать на жасее ненужно ты просто логику посмотри и сделай тоже самое на гуи + прикрути тебе что надо(типо разных мобов ),хотя бы цыклы условия определить можешь
0
28
7 лет назад
0
ledoed:
да писать на жасее ненужно ты просто логику посмотри и сделай тоже самое на гуи + прикрути тебе что надо(типо разных мобов ),хотя бы цыклы условия определить можешь
я не смогу сделать то же самое на гуи - не понимая что в этом тригере и такие функции на в гуи я даже не знаю где найти, я не опытен в тригерах
0
18
7 лет назад
0
Ahotnik001, когда я конвертировал в JASS, то получилось
(IsUnitType(GetEnumUnit(), UNIT_TYPE_TOWNHALL).
А Townhall - это и есть ратуша.
0
28
7 лет назад
Отредактирован Roy Mustang
0
Maniac_91:
Ahotnik001, когда я конвертировал в JASS, то получилось
(IsUnitType(GetEnumUnit(), UNIT_TYPE_TOWNHALL).
А Townhall - это и есть ратуша.
ясно - с выбором работает
мне нужна еще помощь,
у меня например 8 точек и скажем в 3 из них есть ратуши
мне нужно из этих 3 выбрать одну рандомную но так не работает, не подскажешь как это сделать?
Загруженные файлы
0
18
7 лет назад
0
Ahotnik001, можно сделать массив, в который добавлять только те области, в которых обнаружена ратуша. А потом выбирать между ними.
Например, если ратуша найдена, то установить целочисленную переменную N = N+1, установить переменную область Rect [N] = область, в которой найдена ратуша.
Если N больше нуля, то отправить юнитов в область Rect [случайный номер между 1 и N].
Установить N = 0
0
16
7 лет назад
Отредактирован TeX13
0
Ahotnik001:
ledoed:
а попробуй дать зданию какую нить способность(невидимую) и проверяй есть ли у неё такая
эм а как я проверю?
общая задача у меня такова
создаются крипы
и атакую одну из 8 рандомных областей но нужно сделать так что если в областях нету Ратуши они не атаковали ту область а шли в рандомную где Ратуша есть, и я не знаю как это реализовать
от числа ратуш пробегаешь по циклу, там добавляешь области, где есть ратуша в группу
направляешь крипов на произвольную область, идти, нападая на противников
как они вошли в область, условие нахождения ратуши в области проверяешь, если есть то бьют, если нет то направляешь их к случайному юниту из группы, определенной в начале
2 триггера с событиями инициализация и вхождение в область
Чтобы оставить комментарий, пожалуйста, войдите на сайт.