simonw代码@痕记

导航

WOW插件:ShortKey 4.7 发布(2009.9.27)


最近更新及下载:http://bbs.cwowaddon.com/thread-805-1-1.html

我在这里只保存一些历史信息.

更新:
v4.7 2009.9.28
这个版本主要在代码结构方面变化很大, 对最终用户影响不大.
1. 不再限定同一TargetFrame下的不同配置存在Condition参数为空时的顺序要求, 无论如何配置, 为空的Condition配置项始终会被自动置为最后. 同时也将Condition参数为空的配置项作为默认配置. (多数用户应该还用不到这个高级功能)
2. 增加了在游戏内配置的支持能力, 但没有GUI的支持目前还不能使用.
3. ShortKeyConfig.lua 改名为 ShortKey.Config.lua, 请注意改变你的配置文件名.
4. ShortKeyGUI更换图标, 优化了一些显示, 配合ShortKey结构的变化做了一些改变, 请更新, 否则不能使用.
下面的更新与用户无关:
1. 大面积重构, 完全纳入层次化的标准软件开发架构模式, 分了Model, DB, Business, Service, UI等几个层次, 为下一步大计划打好基础. (以后我会慢慢介绍)
2. 应用了新增的DB lib, 用于处理存储方面的需求, 未来会将这个lib纳入Eva.
3. 在DB和UI层上提供了非Eva的Native(wow原生方式, 不依赖任何库)的支持, 但DB的Native方式还没做好. 也就是说ShortKey可以脱离Eva运行(需要改toc), 主要目的在于演示Eva随进随出的便利性.

v4.6 2009.8.31
1. 新增一个图形界面ShortKeyGUI用于简单操控和查看绑定信息.
2. 新增Talent条件以更好的应用于双天赋配置.
3. 新增PARTYMEMBERFRAMES的变量用于代表冗长的团队窗体1-4, 更方便用户配置.
4. 新增绑定前自动清除功能, 以防止条件变更时新配置覆盖不完全上一个配置引发冲突.

v4.5 2009.8.20
按照wow3.x新版安全模型重写, 全新架构设计, 变动巨大, 在基本没有改变配置格式的情况下带来了更为强大的功能. 改动太多仅列出主要更新.
1. 新增基于上下文的全局配置完整性检查, 最大限度的在载入时帮助发现用户的配置错误.
2. 新条件(Condition)语法使用标准宏语法代替以前语法并支持上下文条件组合计算(超强), 支持所有Type配置情况.
3. 新增当为键盘键时支持TargetFrames属性的配置, 即可以将键盘键绑定在显示的窗体上了.
4. 新增当为鼠标键时支持Target属性的配置, 即可以改变绑定显示窗体的目标属性.
5. 新增用户选择载入功能, 用户可以自己选择时机载入.
6. 新增配置组的用户载入条件设置, 用户可以根据自己的需求增改载入判断条件.
7. 改动, Value和TargetFrames属性现在仅支持字符串类型, 不再支持table数组类型.
8. 改动, 去掉了序列施法功能, 采用宏代替.

以下内容失效
------------------------------------------------------

如何更好的使用以及示例:http://simonw.cnblogs.com/archive/2005/10/31/265531.html

ShortKey在wow2.0前可以说将blz赋予的动作功能合法的发挥到了极致, 在2.0后Blz将ShortKey几乎所有的优点都融入了安全模版, blz架构上的翻天覆地变化导致ShortKey不得不重新设计, 所以版本直接跳到4好和以往区分.

以往版本:http://www.cnblogs.com/simonw/archive/2005/10/20/258271.html

在经过2万荣誉的战场后, ShortKey 4.0 新版终于出炉了, 一方面因安全模版没有以前强大了, 另一方面同样因安全模版及新增api更简单的实现了不少更方便的功能.

作者: simonw From CWDG  2区 暗影之月, 人类牧师, 民族英雄
Blog: http://simonw.cnblogs.com/
官方站点: http://bbs.cwowaddon.com/

功能方面:
1. 支持键盘鼠标等各个组合按键绑定到法术, 物品, 技能, 宏, 目标, 系统功能.
2. 支持在自定义窗体上的鼠标按键绑定.
3. 支持同一按键上的序列法术动作绑定.

插件优点:
1. 完全载入期绑定, 资源占用极小, 运行时可以说不再占用额外资源.
2. 完全静态lua配置, 以后不论去哪里玩wow只需要带这一个插件就不用再配各种按键了.
3. 高级使用者完全可以用ShortKey来代替动作条插件,治疗插件,智能buff插件, 宏插件等n多占资源的插件.

本插件适用对象:
1. pk及键盘流爱好者.
2. 至少有学过一门计算机语言, windwos应用熟练.
敬告: 如果你不符合上面2点还是别用了, 会让你很迷茫的.

如何配置:
用记事本打开ShortKey目录下的ShortKeyConfig.lua根据里面的说明编辑, 有基础的一看就懂, 每基础的如果实在想用让别人帮你配吧.

最后提示:
本插件没有界面所以也就没有截图, 再一个别向simonw提除了暗牧以外的任何职业技能该如何配置, 我只懂暗牧, 其他职业都没玩过.

更新:
v4.22 2009.8.3 (不建议新用户下载, 请等待下一个版本)
实在抱歉这么久才出一个wow 3.x的紧急补救版. 这是一个过渡版, 序列动作, 形态变化, 智能施法在这个版本中暂时屏蔽, 仅支持最基本的法术, 物品, 宏的绑定.
1.修复了SecureHandlerStateTemplate名字的改变引起的错误
2.注释掉与3.0安全模板不兼容的部分

v4.21 2008.3.21
1. 修复了对第三方插件窗体支持的bug, 更好的支持在第三方插件窗体做按键绑定.

v4.2 2008.3.19
1. 增加了在同一按键上针对不同形态, 潜行与否, 动作条序号变化而绑定不同技能的功能. 通过新增Condition参数实现.
2. 修正, 重复配置的键盘按键, 后面的将覆盖前面的配置.

v4.13 2007.8.25
1. 修复了Type为actionbar, pet, maintank, mainassist, click时的不正常工作
2. 增加了2个系统按键绑定功能设定, 重载UI, 查看按键绑定列表.
3. 增加了调试功能, /sk 配置条目

v4.12 2007.8.9
修复了当button为checkbutton时引发的bug, 内部对象ShortKeyButton已经能完全从任意类型button继承.

v4.11 2007.8.6
修复了在同一窗体上绑定同一个键对应友善和敌对目标时, 后面的设置会覆盖前面设置的bug.

v4.1 2007.8.2
1. 已全面支持各种类型的按键绑定
2. 宏绑定,增加支持宏名字
3. 序列动作增加智能施法选项, 施法5秒后无动作自动复位
4. 使用Eva Framework 重新设计, 大幅优化代码结构, 需要注意的是:
因以前的设计失误, 此次配置结构发生小幅变化, 增加了Condition配置项, 以前Target="helpbutton"和Target="harmbutton"这样的配置需要改成C和C 您的配置才能正常使用. 在此深表歉意, 另外, ShortKey的配置结构一般不会轻易变化的.

v4.01 2007.7.10
1.修复了当配置了小队窗体后载入时没有小队成员也显示小队窗体的问题.
2.修复了宏绑定的bug, 附带了宏绑定的示例.

v4.0 2007.7.9
wow2.0后重写

------------------------------------------------------

3.x 以前简介:
ShortKey为你的技能,装备,物品使用提供一键绑定的功能。恰当使用能让你的微操作水平提高一个等级。强大的可配置功能为你提供无限扩展可能,完全的静态方式配置让你一劳永逸。
1.提供了人物身上19项装备,10个自定义物品,各职业20个自定义魔法,20组自定义组合技能使用单键绑定。
2.支持条件触发,自定义动作,超强动作延时,保留目标,鼠标动作,wow脚本等功能。
3.内置装备切换,buff检查,血魔状态,pvp目标锁,等常用动作与条件。

v3.2
1.加入了界面元素的鼠标动作绑定, 支持对玩家栏, 目标栏, 队友栏, 其他自定义栏的鼠标左,中,右,4,5键以及与alt, control, shift的组合动作绑定.

v3.0
1.全新的独立延时引擎设计更加方便二次开发,增加了Cycle动作循环与Interval循环间隔2个新参数。
2.大幅度优化代码,更高的执行效率和更少的资源占用。
3.将action,condition放入了ShortKeyExtLib.lua扩展库文件,作为第三方程序提供。
4.加入了序列动作概念KeyPress参数,可以将各种动作在不同时间映射到一个键上。

v2.3
1.增加了有趣的讲故事功能,配合我的ShortRobot可以做故事点播。
2.增加了PVP目标锁,检测法术是否可用等功能。
3.配置文件中对法师的技能进一步详细化,修正了少许bug。

v2.2
1.增加了动作延时指令Delay,但无法支持对魔法技能的延时。
2.增加了对Script的支持,可以把宏中/script 之后的东西都复制过来。
3.修正了配置文件中对部分职业的配置错误,并增加了部分示例。

v2.01
修复了装备使用出错的bug,增加了一个列出自己身上buff英文名称的函数。

v2.0
再次重写所有代码,全新的设计思路,无限的扩展可能。在这里需要向以前版本的用户道歉,由于变化巨大无法兼容以前的配置文件,需要从新配置。
1.内置了条件和动作的支持,同时支持条件动作自定义。
2.增加到20个自定义法术
3.增加到20个自定义组合技能
4.增加到10个自定义物品
5.对所有职业提供了示例性配置
6.去掉了所有的游戏中配置支持,完全静态配置

v1.2
1.提供了5个自定义组合技能的单键绑定功能。(前提是这些技能可以在一起施放)
2.将配置文件独立了出来

v1.0 :
支持wow 1800,我几乎重写了所有的代码,使原先只能支持牧师使用变为支持所有职业。
1.提供了人物身上全部18项装备的使用单键绑定(前提是你的装备可以使用)。
2.提供了5个自定义物品的使用单键绑定。
3.对于特殊自定义物品坐骑和绷带的单键绑定支持,绷带对自己使用。
4.对各种职业提供10个技能魔法单键绑定支持。
bug修复:
1.修正了自我施法后目标有可能选择错误。
2.修正了牧师暗影形态还原时可能会取消其他buff的错误。

v0.5:2005.10
为牧师常用技能提供单键绑定功能
1.单键绑定的自我施法功能包括:恢复,快速治疗,强效治疗,盾,暗影形态
2.恢复魔法的重复buff检测,防止魔法浪费
3.单键绑定的打断施法,自我施放技能包括:马
4.单键绑定的打断施法,释放魔法,物品,装备的技能包括:魔杖,心灵尖啸,沉默,饰品,头盔,鞋子
5.自定义物品使用的单键绑定。


安装使用:
解开压缩包,将ShortKey文件夹拷贝到你的World of Warcraft\Interface\AddOns\ 文件夹下。
例如C:\Program Files\World of Warcraft\Interface\AddOns\ShortKey
进入wow游戏,按esc键点击按键设置,找到ShortKey即可做快捷键设置。

配置说明:
配置文件在本插件目录下ShortKeyConfig.lua文件,请对此文件编辑。
通用参数说明:
Target : 默认为当前目标.支持wow的unit参数,player代表自己,target代表目标,patryN代表第n个队友.部分技能支持玩家姓名输入.
StopCast : 默认为true.真假值,只支持true/false输入.是否在执行技能前后先执行技能打断,大部分组合技能需要开启此设置.
HoldTarget : 默认为false.真假值,只支持true/false输入.是否保存当前目标.
Delay : 以秒为单位的数字,设定动作执行的延时时间.
Cycle : 整数,默认为1,设定动作循环执行的次数,-1为无限循环,0为不执行.
Interval : 默认为5,以秒为单位的数字,设定每组动作间的执行延时时间.
KeyPress : 真假值,只支持true/false输入.默认为false.表示此动作实际是否需要按下键才会执行.
Script : 支持wow脚本但不支持宏,脚本中的"前需要加\,当此参数不为空时将忽略其他参数.
Condition : 默认为空.根据条件决定技能是否执行.
条件(Condition)参数说明:
Name : 条件名称,可以使用本插件内置的Condition.xxxx形式的条件名,也可以使用自定义函数名称,形式如"yourFunctionName".
State : 真假值,只支持true/false输入.表示为真或者假时条件成立.
Parameters : 条件的参数,条件函数的参数列表,顺序应与原有函数一致.

物品(Item)参数说明:
Name : 物品名称,支持模糊名,若有重名存在则选取最先找到的.

装备(Equipment)参数说明:
Name : 身上的装备名称,支持模糊名,若有重名存在则选取最先找到的.

法术(Spell)参数说明:
Name : 法术精确名称.
Rank : 法术级别,若无级别无需填写.
ToggleBuff : 系统内置buff名称,英文.法术执行时你会有一个持续buff,取消时通过取消buff取消法术,这样的情况需要用到此参数,一般这样的技能很少.

组合技能(Combo)参数说明:
序号[0] : 每个组合技能的序号[0]提供对本组合技能的总体配置.Name可以填写任意描述,如果此项目中填写HoldTarget或者Condition将对本技能全局生效.
Type : 技能类型. 只支持以下4种类型 Type.Equip, Type.Item, Type.Spell, Type.Action

动作(Action)参数说明:
Name : 动作名称,可以使用本插件内置的Action.xxxx形式的动作名,也可以使用自定义函数名称,形式如"yourFunctionName".
Parameters : 动作的参数,动作函数的参数列表,顺序应与原有函数一致.

内置条件与动作说明:
条件
IsBuffUp 目标是否有buff,参数目标名,buff名
IsDebuffUp 目标是否有debuff,参数目标名,debuff名
IsHpInRange 目标生命值是否在范围内,参数目标名,条件(>,<,=),生命值(若在0和1之间则为百分比否则为绝对值)
IsMpInRange 目标法术,能量,怒气值是否在范围内,参数目标名,条件(>,<,=),生命值(若在0和1之间则为百分比否则为绝对值)
IsItemUseable 物品是否处于可用状态,参数物品名
IsSpellUseable 技能是否处于可用状态,参数技能所在的动作按钮编号

动作
CancelSelfBuff 取消自己的buff,参数buff名称
SwitchEquip 更换装备,参数装备位置(参见localization装备位置的中文定义),装备1名称,装备2名称
Jump 跳跃
Say 说话,参见wow函数 SendChatMessage参数
ShowBuffName 显示目标身上的buff或者debuff,参数目标名,类型名(buff或者debuff)
LockTarget 锁定PVP目标,对npc无效
UnLockTarget 解锁PVP目标


欢迎讨论与意见反馈。




 

posted on 2005-10-20 01:08  simonw  阅读(15216)  评论(56编辑  收藏  举报