LUACN论坛

 找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
热搜: YJWOW MagicStone BoL
查看: 8502|回复: 0

泰坦API Yiser for 军团再临----20170214更新

 关闭 [复制链接]
发表于 2017-2-14 12:01:46 | 显示全部楼层 |阅读模式
Yisker
目录 [显示]
简介
本库亮点在于免费、实用。
去除了很多华而不实的函数和根本起不到减少工作量目的的函数(比如把原生函数加个包,有什么意义?)
本库根据我个人写PVE脚本的实际需要增加了很多有实际用途的函数,可以节省大量的重复劳动,很多算法估计我不开源,别人想用也麻烦。
重要的是:你的脚本收益全部归于你个人,我的库完全免费不抽成

库空间默认名
ln为库空间默认名
e.g:
ln.castSpell("target",116,false,false,false)

库函数
主要分以下几个大类

施法类
对指定目标释放指定技能
castSpell(Unit,SpellID,Aoe,Face)
参数:目标,技能,技能是否属于AOE(布尔值),是否检测面向(布尔值)
返回:布尔值
例子:
对当前目标释放寒冰箭
castSpell("target",116,false,true)
在当前目标位置释放暴风雪
castSpell("target",190356,true,false)

在自己与目标连线中间释放AOE技能
castGroundBetween(Unit,SpellID)
参数:对象,技能
返回:布尔值
例子:

在当前目标位置中间释放暴风雪
castGroundBetween("target",190356)

判断类
判断两个目标是否在一定角度内(Unit1是否面对Unit2)
getFacing(Unit1,Unit2,Degrees)
--参数:对象1,对象2,角度(不填表示180度)
--返回:返回:布尔值
例子:
判断玩家是否面对当面目标
local facechk = getFacing("player","target")

判断指定目标是否正在释放指定读条技能
isCastingSpell(unit, spells)
--参数:对象,技能(默认为所有技能,请使用中文名),【是否可以打断(布尔值)】
--返回:布尔值
例子:
判断目标是否正在释放寒冰箭
local t = isCastingSpell("target","寒冰箭")

判断是否有指定buff(包含debuff)
UnitAllBuffID(unit,spellID,filter)
--参数:对象,buff,源【可替换为EXACT作为精准查找,针对中文重名但ID不重名的情况】
--返回:布尔值
例子:
判断自己是否有冰冷血脉buff
local t = UnitAllBuffID("player",12472)
判断目标是否有自己释放的冰风暴debuff
local t = UnitAllBuffID("target",228358,"player")

判断是否有指定buff
UnitBuffID(unit,spellID,filter)
--参数:对象,buff,源【可替换为EXACT作为精准查找,针对中文重名但ID不重名的情况】
--返回:布尔值
例子:
判断自己是否有冰冷血脉buff
local t = UnitBuffID("player",12472)

判断是否有指定debuff
UnitDebuffID(unit,spellID,filter)
--参数:对象,buff,源【可替换为EXACT作为精准查找,针对中文重名但ID不重名的情况】
--返回:布尔值
例子:
判断目标是否有自己释放的冰风暴debuff
local t = UnitDebuffID("target",228358,"player")

判断是否启用指定天赋
getTalent(Row,Column)
--参数:行(1-7),列(1-3)
--返回:布尔值
例子:
判断自己是否启用冰川尖刺天赋debuff
local t = getTalent(7,2)

判断指定目标是否在战斗中
isInCombat(Unit)
--参数:目标
--返回:布尔值
例子:
判断当前目标是否进入战斗
local t = isInCombat("target")

判断对象是否已经持续移动超出了指定时间
isMovingTime(time)
--参数:时间(秒)
--返回:布尔值
例子:
判断当前目标是否移动超过了10秒
local t = isMovingTime(10)

判断对象是否正在移动中
isMoving(Unit)
--参数:对象
--返回:布尔值
例子:
判断当前目标是否正在移动
local t = isMoving("target")

判断是否已经掌握了技能
isKnown(spellID)
--参数:技能(ID号)
--返回:布尔值
例子:
判断自己是否掌握了寒冰箭
local t = isKnown(116)

判断指定技能是否可用
canCast(SpellID,MovementCheck)
--参数:技能,是否检查移动状态(默认为不检查)
--返回:布尔值
例子:
判断自己是否掌握了寒冰箭
local t = canCast(116)

判断指定物品是否可用
canUse(itemID)
--参数:物品(ID)
--返回:布尔值
例子:
判断治疗石是否可用
local t = canUse(5512)



获取类
注意:对于获取类,返回值都有可能为nil或者false

获得敌对目标列表(包含中立和未进战斗目标)和数量
getEnemiesTable(Unit,Radius)
--参数:中心单位,距离
--返回:列表,数量
例子:
获取以玩家为中心,半径40码内敌对目标的列表(emtb)和数量(emnum)
local emtb,emnum = getEnemiesTable("player",40)

获得友好目标列表(小队和团队队友)和数量
getFriendlyTable(Unit,Radius)
--参数:中心单位,距离
--返回:列表,数量
例子:
获取以玩家为中心,半径40码内友好目标的列表(frtb)和数量(frnum)
local frtb,frnum = getFriendlyTable("player",40)

获得可治疗目标列表(按血量从小到大排列)
getHealTable(Unit,Radius)
--参数:中心单位,距离
--返回:列表,数量
例子:
获取以玩家为中心,半径40码内可治疗目标的列表(htb)和数量(hnum)
local htb,hnum = getHealTable("player",40)
htb[1]一定是当前血量最小的友好目标

获得可攻击目标列表(已进入战斗对象)
getTagertTable(Unit,Radius)
--参数:中心单位,距离
--返回:列表,数量
例子:
获取以玩家为中心,半径40码内可攻击目标的列表(emctb)和数量(emcnum)
local emctb,emcnum = getTagertTable("player",40)

获得指定对象血量百分比
getHP(Unit)
--参数:对象(默认为player)
--返回:血量百分比(0-100)
例子:
获取当前目标血量
local tghp = getHP("target")

获得指定对象能量百分比(所有职业的第一能量,例如魔法,能量等)
getMana(Unit)
--参数:对象(默认为player)
--返回:能量百分比(0-100)
例子:
获取当前目标能量
local tghp = getMana("target")

获得指定对象能量恢复时间
getTimeToMax(Unit,Max)
--参数:对象,指定能量点数(默认为最高)
--返回:时间
例子:
获取自己能量恢复到90所需时间
local time = getTimeToMax("player",90)

获得指定对象死亡所需时间
getTimeToDie(Unit)
--参数:对象(默认为当前目标)
--返回:时间
例子:
获取当前目标还有多长时间死亡
local time = getTimeToDie("target")

获得指定对技能冷却(CD)时间
getSpellCD(SpellID)
--参数:技能ID
--返回:时间
例子:
获取冰冷血脉的CD时间
local time = getSpellCD(12472)

获得指定目标能量恢复速度
getRegen(Unit)
--参数:目标
--返回:数值
例子:
获取自己能量恢复速度
local regen = getRegen("player")

获得目标buff剩余时间
getBuffRemain(Unit,BuffID,Source)
--参数:对象,buff,源
--返回:时间
例子:
获取自己寒冰指buff剩余时间
local time = getBuffRemain("player",34544)

获得目标buff层数
getBuffStacks(unit,BuffID,Source)
--参数:对象,buff,源
--返回:数值
例子:
获取自己寒冰指buff层数
local t = getBuffStacks("player",34544)

获得目标充能技能层数
getCharges(spellID)
--参数:技能
--返回:数值
例子:
获取自己法阵层数
local t = getCharges(116011)

获得充能技能剩余(CD)时间
getRecharge(spellID)
--参数:技能
--返回:数值
例子:
获取自己法阵充能时间
local t = getRecharge(116011)

获得目标debuff剩余时间
getDebuffRemain(Unit,BuffID,Source)
--参数:对象,buff,源
--返回:时间
例子:
获取目标寒冰炸弹debuff剩余时间
local time = getDebuffRemain("target",112948,"player")

获得目标debuff层数
getDebuffStacks(unit,BuffID,Source)
--参数:对象,buff,源
--返回:数值
例子:
获取目标寒冰炸弹debuff层数
local t = getDebuffStacks("target",112948,"player")

获得对象连击点数
getCombo(Unit)
--参数:对象
--返回:数值
例子:
获取自己连击点
local t = getCombo("player")

获得对象真气点数
getChi(Unit)
--参数:对象
--返回:数值
例子:
获取自己真气点
local t = getChi("player")

获得对象最大真气点数
getChiMax(Unit)
--参数:对象
--返回:数值
例子:
获取自己真气点
local t = getChiMax("player")

获得对象恐能
getKL(Unit)
--参数:对象
--返回:数值
例子:
获取自己恐能
local t = getKL("player")

获得目标间距离(模型边界到边界)
getDistance(Unit1,Unit2)
--参数:对象1,对象2
--返回:数值
例子:
获取自己与目标之间距离
local t = getDistance("player","target")

与插件联动类别
对接Ovale一键输出助手,直接释放指定栏的技能
isOvale(number)
--参数:第几栏(数字1-4)
--返回:布尔值
例子:
释放Ovale插件中第二栏的技能
isOvale(2)
可大量用于没有脚本,但是又想尝鲜的DPS和T职业,因为Ovale直接翻译simc,因此效果至少比HB的默认cc强一截

完整脚本范例

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

小黑屋|手机版|Archiver|LUACN论坛

GMT+8, 2024-3-29 11:37 PM , Processed in 0.043016 second(s), 12 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表