Как сделать так, чтобы юнит продал все предметы в магазин на который я заюзал способность?

K0META, так продаёт только один предмет. По порядку любой имеющийся. от 1-го до 6-го.
Пробовал юзать вейты или таймеры. Ничего не получается. Боюсь придётся триггерно продавать.
Щас попробую создать 6 дамми и продавать через них.
Всё. Вопрос решён. Даммики помогли.
`
ОЖИДАНИЕ РЕКЛАМЫ...
23
Похожие вопросы:

ответ
стемы
Я удалял всеь код кроме етой системы все ефект тотже. также я писал что переносил наработку на иную мапу и там все работало. понятно что проблема не в коде..по тому как баг в том что рынок(юнит) меняет владельца, на красного скажем, еслиб не менял багаб небыло, но есть карта где он есть.. на разных мапах при абсолютно едентичных настройках юнитов, и коде(никакого второстепенного кода нет тока тот что в 1м посту)
опшем так я психанул и начал отрезать куски из мапы, сначала в 10 раз удалил весь код кроме наработки, затем удалил итемы, и вернул код и вот чудо баг пропал,
=============================================================================
думаю проблема была в том что иды предметам я в ручную прописывал, там была своя закономерность, но увы теперь придется периписать все иды предметов, и заминить их в коде что очень ни удобно и моторно=(
ответ
Tornak, делать покупку предметов через покупку юнитов
этот вариант расписан уже 100500 раз везде где только можно и даже куча готовых систем есть

35
Astra, я знаю какое действие отвечает за продажу предмета. Однако сразу 6 предметов не продаёт!
Загруженные файлы
21
Ну можно просто вычислить их голдкост и удалить, не?
БД или вроде мемхак копал в этом направлении, пока четкой функции на золотостоимость предмета вроде не было, но подсказка, куда копать - была.
/
Вообще если драколичу не влом - плз, пусть все-таки кинет готовую функцию GetItemGoldCost или как-то так, мб по намекам самостоятельно и сделаю, но ведь ему это в разы проще.
20
Пробовал продавать по ивенту на продажу предмета? (продал предмет -> приказывает продать следующий) Слот для продажи можно хранить в глобалке (применил скилл - включить триггер, глобалку установить равной 1(2 для GUI, т.к. нумерация с единицы, а не нуля), приказать продать предмет в 1 слоте. Далее срабатывает триггер, который приказывает продать следующий предмет. Когда глобалка равна 5(6), вырубать триггер)
21
PUVer, попробуй через таймер (Периодическое событие). Хотя стоп. Это чаво вообще? Какой GUI? Где нормальный код?
21
Diaboliko, кул идея, меня вот тоже все интересует оптимальная реализация "уничтожить все предметы у определенного юнита и вернуть ему их голдкост".
Мемхак - ок, понятно, но функции пока еще нет, хотя запилить дело 5-60 минут.
БД - потом все очень просто, но вначале надо запилить.
А вообще нельзя просто временно выдать, например, ПРЯМ САМОМУ ГЕРОЮ все нужные абилки лавки и обязать его шмот САМОГО В СЕБЯ O_O продать? Абилки потом офк сразу сремувить, непродаваемое дропнуть можно. Пробовал кто такой изврат?
2
Тут я сделал на определенный магазин. Доделеай проверку на нужный магазины(ы).
Загруженные файлы
16
необязательно брать мх для получения цены предмета, тем паче, что система не является костылем и не тяжелая
29
PUVer, нужна задержка между отдачей приказов. Они не выполняются мгновенно. Или добавить приказ в очередь, не помню можно это сделать или нет
21
Все-таки лучше потом попробую ч/з мемхак, но спасибо за вариант
35
K0META, так продаёт только один предмет. По порядку любой имеющийся. от 1-го до 6-го.
Пробовал юзать вейты или таймеры. Ничего не получается. Боюсь придётся триггерно продавать.
Щас попробую создать 6 дамми и продавать через них.
Всё. Вопрос решён. Даммики помогли.
Принятый ответ
27
вот сделал. В этой карте есть автоподбор и автодроп
раскрыть
Автоподбор
  • выбирает все предметы в карте (там нужно максимальный радиус задать. У меня стоит 9999к, то есть у меня на всю карту. Тебе нужно изменить это. Еще можно искать итемы, которые видимы игроком. (правда я это не сделал, не пробовал и не знаю есть ли такая команда/нативка в триггерах)
  • короче потом перебирает все эти предметы и ищет ближайший итем
  • потом отдает приказ взять этот предмет
  • если у тебя много крестьян, то может произойти так. Что один из них нацелится на ваш итем, и пока ваш юнит бежит. Его подберут. Но я сделал так, что если итем подберут, то юниты идут подбирать другой итем. То есть сразу разворачиваются и идут за новым, не стоят короче
Можно заранее сделать так, чтоб сохранять в памяти (в хэше) итем, типа он скоро будет подобран и поэтому его не стоит брать. Но этого я не сделал.
Автопродажа
возился с этим долго
  • в этой системе сделан поиск всех магазинов. Находит ближайший магазин и шлем туда раба продавать итемы. Магазины ищут с помощью способности (там у магазина есть способность Лавка: можно продать), если эта способность есть то это можно засчитать магазином.
  • там есть приказ продать в магазин. Не знаю почему, но продает только один раз. Пробовал таймеры, и вэйты и все прочее. Ничего не работало. Даже с ExecuteFunc. Правда нашел способ продать с помощью способности (магическая защита, включил - продал - подождал, выключил - подождал, включил - продал - подождал). Надо потом попробовать еще потыкать это место, по-моему есть какая-то задержка мб
alexprey, как в очередь добавлять?
Приказ продать:
order_dropitem = 852001 только не понял какой нативкой дать приказ, кажись бесполезна. просто в большинстве комманд с приказами нет аргумента с итемом, что будет закладывать в магазин. только видел одну нативку IssueInstantTargetOrderById
Загруженные файлы
Чтобы оставить комментарий, пожалуйста, войдите на сайт.