手把手教你改插件-Grid团队面板增加点击施法
Grid真是好东西, buff提示, 距离检测, 整体布局, 小队团队都支持。美中不足就是不支持点击施法,必须要配合Clique等插件使用。不过没关系,只要按照下面三个步骤,就可以给Grid的按钮增加点击施法的功能啦。
[size=4][color=darkorchid][b]第一步,增加一个文件,叫做ClickSets.lua[/b][/color][/size][code]DefaultClickSets = {
PRIEST = {
["1"] = {
["shift-"] = "恢复",
["ctrl-"] = "驱散魔法",
["alt-"] = "治疗术(等级 2)",
["ctrl-alt-"] = "复活术",
},
["2"] = {
[""] = "真言术:盾",
["shift-"] = "愈合祷言",
["ctrl-"] = "驱除疾病", -- 祛病术
["alt-"] = "强效治疗术(等级 1)",
["ctrl-alt-"] = "防护恐惧结界",
},
["3"] = {
[""] = "快速治疗",
},
},
DRUID = {
["1"] = {
["shift-"] = "回春术",
["ctrl-"] = "驱毒术",
["alt-"] = "愈合",
},
["2"] = {
--[""] = "野性印记",
["shift-"] = "生命绽放",
["ctrl-"] = "解除诅咒",
["alt-"] = "治疗之触",
},
},
SHAMAN = {
["1"] = {
["shift-"] = "大地之盾",
--["ctrl-"] = "消毒术",
["alt-"] = "次级治疗波",
["ctrl-alt-"] = "先祖之魂",
},
["2"] = {
[""] = "消毒术",
["shift-"] = "治疗链",
--["ctrl-"] = "消毒术",
["alt-"] = "治疗波",
},
},
PALADIN = {
["1"] = {
["shift-"] = "圣光闪现",
["ctrl-"] = "王者祝福",
["alt-"] = "圣光闪现(等级 5)",
["ctrl-alt-"] = "救赎",
},
["2"] = {
[""] = "清洁术",
["shift-"] = "圣光术",
["ctrl-"] = "拯救祝福",
["alt-"] = "圣光术(等级 8)",
},
},
WARRIOR = {
["2"] = {
[""] = "援护",
},
},
MAGE = {
["1"] = {
["shift-"] = "魔法增效",
["alt-"] = "奥术智慧",
},
["2"] = {
[""] = "解除次级诅咒",
["shift-"] = "魔法抑制",
},
},
WARLOCK = {
["1"] = {
["alt-"] = "侦测隐形",
["ctrl-"] = "魔息术",
},
["2"] = {
[""] = "召唤仪式",
},
},
HUNTER = {
["2"] = {
[""] = "误导",
},
},
};
function SetUnitButtonAttributes(frame, class)
local button, sets;
if(DefaultClickSets and DefaultClickSets[class]) then
for button, sets in pairs(DefaultClickSets[class]) do
for modifier, spell in pairs(sets) do
frame:SetAttribute(modifier.."type"..button, "spell");
frame:SetAttribute(modifier.."spell"..button, spell);
end
end
end
end[/code]文件挺长,其实都是各职业的点击设置,最后一个函数SetUnitButtonAttributes是要通过Grid调用的。
点击设置的语法,["1"] = ... 表示 鼠标左键,2表示右键,3表示中键
[""] = ... 表示直接点击鼠标施放的法术,注意不要设置鼠标左键的直接法术,默认的是选择目标。
["ctrl-"] = ... 表示按住ctrl点击鼠标的法术,注意后面有一个"-"号
["ctrl-alt-"] = ... 则表示同时按住alt和ctrl点击鼠标的法术。
[size=4][color=darkorchid][b]第二步,修改GridFrame.lua[/b][/color][/size]
找到GridFrameClass.prototype:CreateFrames()方法中的
[color=blue]f:SetAttribute("*type1", "target");[/color]
将其改为
[color=red]SetUnitButtonAttributes(f, ({UnitClass("player")})[2]);[/color]
[b][size=4][color=darkorchid]第三步,记得在Grid.toc中增加对新文件的引用[/color][/size][/b]
即文件末尾加上
[color=red]ClickSets.lua[/color]
好了,大功告成,这是一个很简单的改法,没有配置界面,只要修改ClickSets.lua前面各个职业的数据就可以按照自己的习惯配置啦,仅支持施法,不支持“打绷带”这种使用物品的技能。
附件是改好的带库版本,请自用,勿传播。。。。。。 *** 作者被禁止或删除 内容自动屏蔽 *** 先回复 再学习... 请问下楼主,我现在在用Grid的,只要下载你那个附件就可以了吗? 2.4不能用了,请问可有新方法? 仍然能用啊..
下载新版本的GRID再按照楼主的方法修改. 没找到那个:GridFrameClass.prototype:CreateFrames()
只找到这个
function GridFrameClass.prototype:ClearIndicator(indicator)
累死了要怎么改啊 看了2个小时 一行一行的找了2次
头都晕了
谁能帮帮我 第128行,
改成
SetUnitButtonAttributes(f, ({UnitClass("player")})[2])
第127行是
f:SetAttribute("type1", "target")
第126行是
-- set our left-click action
自己找一下.. 收藏 学习 谢谢 希望楼主针对各职业编写个完整包发上来 HOHO 我一直很想问 为什么grid中shaman没有驱病术的设置 作者忽略了么 学习到好东西
偷一下才行 我最喜欢距离检测, 整体布局,加BUFF时,距离设置为30码,一个都逃不了,哈哈 貌似不行呀。。。。修改了之后FUBAR上的设置还在 但是界面上不显示面板了 学习学习,已经使用了;,等服务器开了上去看看效果。 [quote]原帖由 [i]izual[/i] 于 2008-4-7 17:23 发表 [url=http://bbs.cwowaddon.com/redirect.php?goto=findpost&pid=38795&ptid=2752][img]http://bbs.cwowaddon.com/images/common/back.gif[/img][/url]
第128行,
改成
SetUnitButtonAttributes(f, ({UnitClass("player")})[2])
第127行是
f:SetAttribute("type1", "target")
第126行是
-- set our left-click action
自己找一下.. [/quote]
谢谢你成功了哈哈 我可以这么说,这是非常好的创意!!!
非常精致的效果!!
用起来很顺手
谢谢! 头都看晕了 感觉好高深,摸不到头脑。一直都是用的现成的插件。 想问下,繁体客户端支持吗?是否需要将技能改成繁的 2.4前 grid的奠基施法功能让我彻底抛弃了一键驱散 让我用的很爽
2.4后我找这个找的好辛苦啊
我又可以抛弃一键驱散了 不错。一旦有了这功能。就能和healbot想媲美了。 很好很强大,谢谢哈 谢谢楼主,辛苦了,改好鼠标点击,可以彻底用grid代替healbat了。 呃……有个问题
在Grid中加载的ClickSets默认的鼠标左键动作是是选定目标
我把["1"]的[""]设置成= "圣光闪现(等级 7)"
然后加个["3"]的[""] = "target"
不知道这样改有没有效啊,会不会和默认的设置冲突呢?
改成这样,是不是就可以把左键点击设成:施放 圣光闪现(等级 7);而点击鼠标中键就成选定目标了呢? 我只是有个不明白的问题……为什么不用Clique?
从功能上面来说,Clique绝对胜出的啊,可以随时更改设置,还可以运行宏甚至执行一些“相当于鼠标右键点击头像打开菜单”之类的功能 我是法师 我在你的文件中增加了
["3"] = {
[""] = "变形术",
},
他就不工作了 不知道什么原因,有人可以解惑吗 值得学习哦 收藏了 [quote]原帖由 [i]deepseer[/i] 于 2008-6-25 16:01 发表 [url=http://bbs.cwowaddon.com/redirect.php?goto=findpost&pid=44447&ptid=2752][img]http://bbs.cwowaddon.com/images/common/back.gif[/img][/url]
我只是有个不明白的问题……为什么不用Clique?
从功能上面来说,Clique绝对胜出的啊,可以随时更改设置,还可以运行宏甚至执行一些“相当于鼠标右键点击头像打开菜单”之类的功能 ... [/quote]
不会用啊,用的不好,没办法实现执行一些“相当于鼠标右键点击头像打开菜单”之类的功能 ...
用Clique之后,系统自带窗口啊什么的点击也都跟着变了,很不习惯,还是单改团队框体的好使。例如就像Healbat那样的好 [quote]原帖由 [i]风魂[/i] 于 2008-7-10 12:00 发表 [url=http://bbs.cwowaddon.com/redirect.php?goto=findpost&pid=45173&ptid=2752][img]http://bbs.cwowaddon.com/images/common/back.gif[/img][/url]
不会用啊,用的不好,没办法实现执行一些“相当于鼠标右键点击头像打开菜单”之类的功能 ...
用Clique之后,系统自带窗口啊什么的点击也都跟着变了,很不习惯,还是单改团队框体的好使。例如就像Healbat那样的好 ... [/quote]
可以自己设置受影响的框架. 呃……谢谢,原来可以自己设定受影响框体的啊,谢谢了…… 想知道楼主是怎么把Grid与其他辅助模块整合到一起的,能不能发个经验贴子学习学习啊......
回复 32# hhxqj 的帖子
去看下怎样写插件的toc文件格式部分.页:
[1]