Guest artch Posted August 23, 2010 Share Posted August 23, 2010 В исходниках AucCenter нашел событие SCRIPT_ITEM_DROPPED_TO_AUCTION. Кто-нибудь в курсе, работает ли оно еще? Quote Link to comment Share on other sites More sharing options...
SLA Posted August 25, 2010 Share Posted August 25, 2010 Это можно очень легко проверить. В аддоне написать обработчик этого события, который просто напишет в Mods.txt "Сработало". Затем, прийти на аукцион, и выставить на аукцион любой предмет. Если в Mods.txt появится "Сработало", то ДА, если нет, то НЕТ. Вообще, этого события в официальном API нет, и оно есть в Interface.1.0.03.26.2.zip, который лежит в теме Как сделать свой аддон. Если это событие убрали из API, или просто скрыли от нас, то возможно, можно подобрать и какие-нибудь ДРУГИЕ события, которыми можно было бы обойтись, вместо SCRIPT_ITEM_DROPPED_TO_AUCTION. Искать их нужно в Interface.1.0.03.26.2.zip (особенно в файле ScriptAuction.lua), а также, можно залезть в Allods Online\data\Packs\LuaCompiledIngame.pak (это обычный ZIP), достать оттуда 4 файла (ScriptAuction.luac, ScriptDropDown.luac, ScriptEditLine.luac, ScriptMoneyPanel.luac), открыть их в блокноте, и тупо поискать строки типа "SCRIPT_" и "EVENT_" - так можно найти любые новые события API, которых нет ни в официальной документации, ни в Interface.1.0.03.26.2.zip. В общем, шансы есть. Нужно просто поискать. Quote Link to comment Share on other sites More sharing options...
Guest artch Posted August 25, 2010 Share Posted August 25, 2010 В файле ScriptAuction.luac SCRIPT_ITEM_DROPPED_TO_AUCTION есть. Однако он не ловится. Quote Link to comment Share on other sites More sharing options...
SLA Posted August 25, 2010 Share Posted August 25, 2010 Ясно, значит, отобрали. Можно поискать какие-нибудь другие события, которые при этом происходят (что-то с аукционом, или с инвентарём, или что-то, что происходит при перетаскивании иконок, и т.п.) Quote Link to comment Share on other sites More sharing options...
Guest artch Posted August 26, 2010 Share Posted August 26, 2010 Угу, этим и занимался, но так ничего и не смог найти. Может, как-то можно простой клик по предмету в инвентаре отловить? Quote Link to comment Share on other sites More sharing options...
SLA Posted August 28, 2010 Share Posted August 28, 2010 Ура!!! Кажется, нашёл, как отловить сбрасывание иконки в окно аукциона! Очень просто. В событие EVENT_DND_DROP_ATTEMPT, которое происходит при отпускании перетаскиваемой иконки, приходят параметры, один из которых targetId: Quote: targetId: number (int ) - идентификатор, зарегистрированный для окна, на котором пытаются завершить перетаскивание, или невалидный идентификатор (DND_INVALID_ID), если перетаскивание пытается завершиться вне зарегистрированных окон А этот самый идентификатор -- константа, записанная где-то в скриптах игры, и её можно легко узнать: в тестовом аддоне реагировать на EVENT_DND_DROP_ATTEMPT, записывая в Mods.txt значение targetId, и с этим аддоном закинуть любую иконку на аукцион Quote Link to comment Share on other sites More sharing options...
Guest artch Posted September 5, 2010 Share Posted September 5, 2010 Ага. А как теперь получить айди предмета, который перетаскиваем? Quote Link to comment Share on other sites More sharing options...
Recommended Posts