焦点宏详解教程

以焦点为中心的焦点宏

#showtooltip
/施放 [target, mod:alt][@focus, exists, harm] 窒息; 窒息

上述宏执行逻辑:

  • 有目标,无焦点:对目标施放
  • 有目标,有焦点:对焦点施放
  • 有目标,有焦点,并按下 alt:对目标施放
  • 无目标,有焦点:对焦点施放

以当前目标为中心的焦点宏

#showtooltip
/施放 [@focus, exists, harm, mod:alt][target] 窒息

上述宏执行逻辑:

  • 有目标,无焦点:对目标施放
  • 有目标,有焦点:对目标施放
  • 有目标,有焦点,并按下 alt:对焦点施放
  • 无目标,有焦点:不执行动作

个人的偏好是第一种,以焦点为中心的焦点宏,也就是默认的按键行为在有焦点的时候都施放在焦点上,而无焦点时则默认施放在当前目标上,但由于 target 使用了 modifier 的判断,导致以焦点为中心的焦点宏的默认动作无法自动 fallback 到最后要执行的技能,所以从上边的例子可以看出,我们需要单独再定义一个 fallback 技能,这是这个宏唯一不优雅的地方。

魔兽世界常见单体插件推荐 8.2 最新更新

更新至版本:8.2(最后更新:7 月 7, 2019 @ 22:12

联动:大脚怎么了?被封了么? 目标:普及单体插件,常用单体插件推荐、排雷

很多人一直用整合插件,导致的结果就是经常有人来问我这个功能在哪/怎么开/怎么关/怎么突然没有了之类的问题,因此推荐几个我常用的单体插件以及相应的功能介绍,以下插件都是本人真真实实在当前版本用过且好用的情况下才做的推荐,所以不会存在不兼容或者报错的情况。

继续阅读

8.0 前夕:吉尔吉斯半人马/玛格拉姆半人马声望双崇拜教程

在 8.0 前夕中,现在可以让吉尔吉斯半人马玛格拉姆半人马 达到单角色双崇拜

条件,在游戏中输入下面四行代码(一次一行),如果都返回为 false,则请继续往下看:

/script print(IsQuestFlaggedCompleted(14330))
/script print(IsQuestFlaggedCompleted(14332))
/script print(IsQuestFlaggedCompleted(14393))
/script print(IsQuestFlaggedCompleted(14394))

继续阅读

World of Warcraft is better than it has ever been

There. I said it. As a long time player, I’m well aware of the zealous adoration people heave on Warcraft’s older expansions, but I cannot help but think most of that fondness is inextricably linked to nostalgia for what an exciting and novel thing the internet was back in the day. World of Warcraft was an enchanting experience in the late 2000s not because it was a good game, but because the idea of jumping online with a group of strangers and exploring a persistent world was just something most people had never seen before. At the time, World of Warcraft struck a perfect balance between being immersive but also being accessible—a big change from the hardcore MMOs that came before. But as times change and we all grow older, Blizzard has had to recalibrate what “accessible” means, and the result is a game that is loads more fun to play for shorter periods of time. The tradeoff, unfortunately, is that World of Warcraft isn’t exactly that immersive and coherent world we all remember—largely due to the fact that our expectations have also grown considerably. So while the “World” in Warcraft isn’t as spellbinding, 28-year-old me appreciates that this is no longer a game that requires eight hours a day to play and the time I do spend is usually doing something meaningful instead of sitting in Stormwind trying to get a full group together to run a dungeon.

— by Steven Messner: What’s the most unpopular gaming opinion you’re willing to stand by?

开启/关闭浮动伤害/治疗文字

开启:

/console floatingCombatTextCombatDamage 1
/console floatingCombatTextCombatHealing 1

关闭:

/console floatingCombatTextCombatDamage 0
/console floatingCombatTextCombatHealing 0

另外还有一种是自我战斗文字显示,是直接显示在自己角色身上的:

/console enableFloatingCombatText 1
/console enableFloatingCombatText 0

成就获取、橙装获取自动截图 WeakAuras 字符串

dieGhaGivvxsfnkcCkq1Suk1TafTlLOFPcnmPK6ykvwMsjptkjtJGsFJGuJJGiRtPQ3Ps6EGshKu1dvkAIKsxujTrcQ8rcQAKKkojPGvcmtPu3ukXovj(jvyOkfwkPspfQPcYvbf2kPO(kbjNLuO9k5VQkdwCyiwmbr9yQYKjQltzZQsFwjmAQOtlvRMGGztKBtL2nj)MqdxfSCi9CQQPR46sX2vfFNGIXtkY5vPwpbH2p6Axbvy3clxy)cV1sHD5Uclxqf(2X7RVn1Lw16wx4hd1VlQQlTQWD5clCgYWG9qnt57uCgdTWsIiYfuHL7VVDVgP5UGkSBJ00lOAQPWOiEwbvy3gPPxq1utHrfLScQWUnstVGQPMc)I4nDrvbvy3gPPxq1utHhejtnBvqf2TrA6fun1u4brYutbvy3gPPxq1utHp8CyqKm1uqf2TrA6fun1utHhttZUne7QPWqo2OWYDFHqJYB6pwHrKKkmQTOlQGUpyfU7jQk8yAA2TPOAq6kxtnf2bmGWAq7AHr8M(JbH2xSWqBru2QlWCxRl8G2xSWqlOc714pIUf(Tr5nDrLa7XudCcyyyyGjm1Asi3mVIOmgINtg7XuZ2mDfJV5jQK9xsaddddINZU9yUMA0Asi3mWYS7kbmmmms2ctjJGER1KqUzGLz3vcyyyyKShtcgh0Asi3mWYS7kbmmmmWeMmA7VVgQPMoIAmg7XqVzShtnmVIOmUMVpYcZNbrjZiBsi3eWWWW0FzShtnmWclZpwhhc1xBhoG(GCOhd91Ev4xVOvVUA8RTdhqRA)zgNMIagggggggMdOD1i4xxZZ6pMmdcJKTWuYiO3m9XC3Z8ZSCjJmYyc(pDpEkF88M5uN9NTS)e)dh(vcyyyyyyyy28dQ7AOl1)ogQajBHPKrqV1Asi3BZ82O8MUOsaCgcyyyyyyyyyyyyyyyyWEOMP8DkocGZqadddddddJPKHFLaggggtY36Vm2JPggyHL5x)M6OHvnV2Y6fOVv96Ezv7pZ40ueWWWWWWWWCaTRgb)RiOktMbrXG45SBpMRPM9m)mlxYiJmMG)t3JNYhpVzo1z)zl7pX)WHFLagggggggMn)G6Ug6s9VJHkaXZz3EmxtnAnjK7TzEBuEtxujaodbmmmmmmmmmmmmmmmmypuZu(ofhbWziGHHHHHHHXuYWVsadddJj5B9xg7XuddSWY8VrB9ACv3V2RAET9hm24NzCAkcyyyyyyyyoG2vJG)22JjzYmnh2Z8ZSCjJmYyc(pDpEkF88M5uN9NTS)e)dh(vcyyyyyyyy28dQ7AOl1)ogQaj7XKGXbTMeY92mVnkVPlQeaNHaggggggggggggggggShQzkFNIJa4meWWWWWWWWykz4xjGHHHXuYeykzciGaciGaciGaciGaciGaciGaciGaciGackS9yQXVWB0wVgx19R9QMxB)bJn2w)M6OHvnV2Y6fOVv96Ezv72yDCiuFTD4a6dYHEm0x7vHF9Iw96QXV2oCaTQTWZ9bRWEn(JOBH9A8hr3V5(Gvy7XutH9A8hr3pNDzRWt31KRPWnOsf25mh83F8OWGSqCzx84kOR32Q5wOp2QcpMMMDcNOAWDHOvx2sivyVg)r0fY00u43gL30fvcGtaddddQnnOkgzKXe8F6E8u(45nZPo7pBz)j(h(vcmLmbeqabeqabeqabeqabeqabeqabeuyeVPlQ8lOc)2vDFNfuH9A8hr3cJ9qnt57uCea)kbeqabeqabeqqHLf)8A8hr3sixtnfw14cH2xSWq9Rl7QPWp1LDc7w7kSWGSqudAl8kOR32Q5wORPk

原作者:Feat Screenshotter

如何隐藏动作条上的文本/快捷键

消息源:Hiding macro text & hotkeys

插件版本,同时隐藏 HotKey(快捷键)和 Name(宏名称):

local noop = function() end
hooksecurefunc("ActionButton_Update", function(btn)
    local hotkey = _G[btn:GetName().."HotKey"]
    hotkey:SetText("")
    hotkey.Show = noop
    hotkey:Hide()
end)

hooksecurefunc("ActionButton_Update", function(btn)
    local name = _G[btn:GetName().."Name"]
    name:Hide()
end)

下面有人提供了宏的版本,只隐藏快捷键,方法更简单,把 alpha 值改为 0 即可:

/run for i=1,12 do _G["ActionButton"..i.."HotKey"]:SetAlpha(0)end

不过上述都只隐藏主动作条,我来优化一下,隐藏所有动作条的快捷键:

/run local r={"MultiBarBottomLeft", "MultiBarBottomRight", "Action", "MultiBarLeft", "MultiBarRight"} for b=1,#r do for i=1,12 do _G[r[b].."Button"..i.."HotKey"]:SetAlpha(0) end end

隐藏所有动作条的宏名称:

/run local r={"MultiBarBottomLeft", "MultiBarBottomRight", "Action", "MultiBarLeft", "MultiBarRight"} for b=1,#r do for i=1,12 do _G[r[b].."Button"..i.."Name"]:SetAlpha(0) end end

如何编写多语言宏

多语言宏可以做到切换不同语言客户端后,无需修改宏语言做到无缝切换,也可以节省角色宏的槽位

双语言例子:

#showtooltip
/施放 冰封之韧
/施放 灵界打击
/use Icebound Fortitude
/use Death Strike
#showtooltip 
/施放 [nomod,btn:1] 炼金术;[nomod,btn:2] 工程学 
/施放 [mod:shift,btn:1] 烹饪;[mod:shift,btn:2] 烹饪用火
/use [nomod,btn:1]Alchemy;[nomod,btn:2]Engineering 
/use [mod:shift,btn:1]Cooking;[mod:shift,btn:2]Cooking Fire

要点与技巧:

  • 非英文技能必须使用本地化命令,这样可以让英文客户端直接忽略该行命令
  • 英文命令永远排在最后
  • 要显示图标的技能永远放在当前语言的第一位
  • 英文命令中 /cast 可以用 /use 代替,节省字节

下面是多语言例子:

#showtooltip
/施放 冰封之韧
/施放 灵界打击
/lanzar Entereza ligada al hielo
/lanzar Golpe letal
/use Icebound Fortitude
/use Death Strike

下面是动态技能宏(同等级天赋技能判断宏)的多语言例子:

#showtooltip
/施放 白骨风暴
/施放 血之镜像
/use Bonestorm
/use Blood Mirror
/run local G=GetSpellInfo SetMacroSpell("DK-BS", G" 白骨风暴" or G" 血之镜像" or G"Bonestorm" or G"Blood Mirror")

一键删除所有通用宏/角色专用宏

删除所有通用宏:

/script for i=1,120 do DeleteMacro(i) end

删除所有角色专用宏:

/script for i=121,138 do DeleteMacro(i) end

删除所有宏(通用+角色专用)

/script for i=1,138 do DeleteMacro(i) end

竞技场敌对姓名版改为小队数字的方法

每次载入角色后执行

/run local U=UnitIsUnit hooksecurefunc("CompactUnitFrame_UpdateName",function(F)if IsActiveBattlefieldArena()and F.unit:find("nameplate")then for i=1,5 do if U(F.unit,"arena"..i)then F.name:SetText(i)F.name:SetTextColor(1,1,0)break end end end end)

效果:

数据来源:PSA: Arena Numbers on Nameplates