Выбор цели с помощью кнопок мыши

#lua #world-of-warcraft

#lua #world-of-warcraft (world-of-warcraft)

Вопрос:

Итак, у меня появилась идея выбрать цель со способностями.

В принципе, когда вы используете исцеление без / с нацеливанием на врага и автоматическим самоотводом, вы получаете синюю рамку вокруг курсора с просьбой выбрать цель.

Мне было интересно, можно ли щелкнуть левой кнопкой мыши, чтобы использовать это исцеление для party1, и щелкнуть правой кнопкой мыши для party2.

Я немного проверил это:

 local b = CreateFrame("Button", "MyButton", UIParent,"SecureActionButtonTemplate")
b:SetWidth(128)
b:SetHeight(128)
b:SetFrameStrata("MEDIUM")
b:SetPoint("CENTER")
b:RegisterForClicks("AnyDown")
b:SetAttribute("type", "spell")
b:SetAttribute("spell", x) --Depending on spell used.
b:SetAttribute("unit", y) --Depending on click.

b:RegisterEvent("ACTIONBAR_UPDATE_STATE");

local i = 1
local function foo(self, event, ...)
    print(event, i)
    i = i   1 --Just to see when it updates in the chat window.
end
b:SetScript("OnEvent", foo);
 

«ACTIONBAR_UPDATE_STATE» — это единственное событие, которое я могу найти, которое срабатывает, когда мне нужно выбрать цель с помощью курсора.

Я подумал, что если бы я создал кнопку, которая получила бы возможность, которая была нажата из «ACTIONBAR_UPDATE_STATE», я мог бы использовать это, чтобы изменить, какую способность использовала кнопка, и в зависимости от того, какую цель щелкнуть левой и правой кнопкой мыши.

Но, похоже, я не могу понять, какая способность использовалась из «ACTIONBAR_UPDATE_STATE», и, вероятно, не лучшая идея иметь кнопку в середине экрана, мешающую мне вращать камеру.

Я не настолько хорош в написании сценариев, поэтому некоторая помощь была бы приятной. 🙂

Ответ №1:

Если я не ошибаюсь, этого, вероятно, проще достичь с помощью макроса и модификаторов.

Пример макроса, если вы хотите сохранить обычное использование заклинания без выбранной цели (нажмите кнопку, затем щелкните цель левой кнопкой мыши, чтобы применить)

 #showtooltip
/cast [mod:shift,@party1] [mod:ctrl,@party2] [] Spell
 

Если вы удерживаете Shift, нажимая на привязку клавиш, нацеливается party1, если вы удерживаете Ctrl, нацеливается party2, если вы не удерживаете ни то, ни другое, применяется поведение заклинания по умолчанию.

Комментарии:

1. Это на самом деле то, что я использую в данный момент. Я просто хотел попробовать эту идею, так как у меня заканчивались связки клавиш. Но вчера я думаю, что решил это. Это макросы, которые я в настоящее время использую для каждого лечения и crowdcontrol: /use [mod:ctrl,@party1][mod:alt,@player][mod,@party2][help] helpful spell; harmful spell и /use [mod:ctrl,@arena1][mod:alt,@arena3][mod,@arena2][] crowd control/purge Я использую caps lock как ctrl, а клавишу между shift и z — как alt. Итак, в основном это было решено с помощью дополнения, которое позволяет переключаться между панелями действий, удерживая клавишу, которую я привязал к пробелу, хе-хе.