Ситуация: у юнита есть скилл 'Asid' (продажа предметов). Нужно отловить продаваемые им предметы не через выбор существующих.
Если в РО ставить продаваемые предметы в поле продаваемых предметов - он продает предметы, они спавнятся на земле рядом с юнитом. Ивент продажи предмета не стреляет.
Если ставить продаваемые предметы в поле создаваемых предметов - требует способность вроде "выбор юнита" или "Общие магазины" ('Aall'). При наличии этой способности триггер с событием продажи предмета работает корректно, однако по дефолту юнит сам себя не выбирает в качестве "клиента магазина". Пробовал отдавать приказ на таргет - себя с целью выбора юнита - это работает если кнопка выбора юнита не скрыта. Никакие триггерные и спеллбучные костыли не сработали. Хотя есть еще несколько вариантов которые стоит потраить, но не сегодня :/
Как вариант - попробовать застакать кнопку выбора юнита, убрав ее тем самым с UI, но оставив галочку в РО на ее показ. Однако я зафейлил найти ее кнопку в txt файлах mpq архивов.

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

Diaboliko, у предметов с этим бага
юзай юнитов
с ними намного проще
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
28
8 лет назад
0
посмотри дотку и прочие мапы
там вроде нормально продаёт
да и особо не понимаю твоих проблем с продажей предметов
0
20
8 лет назад
0
nvc123, юнит сам себе предмет должен продавать. В заголовке это упомянуто.
По факту - продажа предмета = скилл с числом зарядов. Когда юнит отдает приказ на продажу предмета, он получает приказ кастовать разблокированный скилл. После ENDCAST ивента он еще раз получает приказ продать предмет дабы списать один "заряд". Трабл в том, что это создает предмет, который стоит отловить для удаления.
2
28
8 лет назад
2
Diaboliko, в заголовке написано так что хрен поймёшь
сейчас мне лень открывать редактор и смотреть как это сделано у меня в старых картах
если никто не ответит то завтра гляну
а вообще нафиг тебе предметы если юниты намного удобнее
например у юнитов можно отловить кто на самом деле юзанул спелл
они кстати юзаются в доте у куры (передать предметы)
мб и у меня в старых картах юниты а не предметы (уже не помню что именно там)
0
20
8 лет назад
0
nvc123, покупателем такого "магазина" может быть только сам магазин. Так что мне заранее известно кто кастует скилл. По идее - предмета для этой цели вполне достаточно.
0
19
8 лет назад
0
Может прото даммика невидимого поставить рядом смагазином и пусть он ему продает а не самому себе?
0
20
8 лет назад
Отредактирован Diaboliko
0
SсRealm, костыль я в любой момент могу влепить. Мне нужно достойное решение.
0
7
8 лет назад
Отредактирован Ige
0
Diaboliko:
nvc123, юнит сам себе предмет должен продавать. В заголовке это упомянуто.
По факту - продажа предмета = скилл с числом зарядов. Когда юнит отдает приказ на продажу предмета, он получает приказ кастовать разблокированный скилл. После ENDCAST ивента он еще раз получает приказ продать предмет дабы списать один "заряд". Трабл в том, что это создает предмет, который стоит отловить для удаления.
может предмет заменить на юнит и отлавливать продажу/покупку юнита?)
Еще вспомнилась нативка, с помощью которой можно регулировать кол-во продаваемых предметов
native AddItemToStock takes unit whichUnit, integer itemId, integer currentStock, integer stockMax returns nothing
0
20
8 лет назад
0
может предмет заменить на юнит и отлавливать продажу/покупку юнита?)
Если никто не наколдует ответ с продажей предмета, попробую.
Ige:
Еще вспомнилась нативка, с помощью которой можно регулировать кол-во продаваемых предметов
native AddItemToStock takes unit whichUnit, integer itemId, integer currentStock, integer stockMax returns nothing
Ну это просто оофтоп. И, да, добавляемые таким образом айтемы не имеют хоткея на покупку. Чисто так, к слову.
0
32
8 лет назад
0
По приказу и событию Ресурсы игрока изменились, мне почему то это очень напомнило одну наработку найма героев на подобии мода RD в DOTA, там было реализовано на основе способности поставка ресурсов + событие, юнит отдал приказ кастануть поставку ресурсов то
Создать триггер и добавить в него событие Золота игрока стало меньше чем было для каждого играющего игрока, у кого было стало меньше золота, тот игрок и выбрал героя.
Думаю тут можно отследить покупку точно таким же образом.
0
20
8 лет назад
0
quq_CCCP, мне известно когда происходит покупка. Я лишь ищу способ удаления создаваемого на земле предмета без перебора существующих предметов.
0
28
8 лет назад
0
Diaboliko, у предметов с этим бага
юзай юнитов
с ними намного проще
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.