|
沙发
楼主 |
发表于 2024-7-30 22:17:00
|
只看楼主
--[[ 奇穴: [江汉 or 渊壑][扶桑][羽彰][清源][海碧][风驰][惊潮][怅归][溯徊][驰行][梦悠][濯流]
秘籍:
击水 1会心 3伤害
木落 1会心 3伤害
定波 2调息 2消耗
翼绝 1会心 3伤害
振翅 1会心 2伤害 1效果
跃潮 2调息 2消耗
浮游 3会心 1效果
物化 3效果 1距离
海运 2会心 2伤害
-]]
--宏选项
addopt("副本防开怪", false)
addopt("原地物化", false)
--变量表
local v = {}
local f = {}
v["记录信息"] = true
v["掌法计次"] = 0
v["物化计次"] = 0
v["宏开关"] = 1
v["暂停按键"] = 0
function OnKeyDown(nIndex)
if nIndex == 1 then --快捷键2被按下
--切换状态
if v["宏开关"] == 1 then
v["宏开关"] = 0
bigtext("宏已关闭")
elseif v["宏开关"] == 0 then
v["宏开关"] = 1
bigtext("宏已开启")
end
end
if nIndex == 2 then
if v["暂停按键"] == 1 then
v["暂停按键"] = 0
bigtext("允许上天")
elseif v["暂停按键"] == 0 then
v["暂停按键"] = 1
bigtext("走地中")
end
end
end
local locX, locY, locZ = pos()
--主循环
function Main(g_player)
if fight() and life() < 0.6 then
cast("疾电叱羽")
end
if casting("定波砥澜") and castprog() >= 0.5 then
stopcasting()
v["上次技能"] = "定"
return
end
if v["宏开关"] == 0 then
if casting("定波砥澜") then
stopcasting()
end
CastX("浮游天地·落地")
if buff("13560") then
CastX("翼绝云天·召回")
end
end
if v["宏开关"] == 1 then
if (v["暂停按键"] == 1) then
if not v["浮游"] then
CastX("木落雁归")
CastX("海运南冥")
end
CastX("溟海御波")
end
if (v["暂停按键"] == 0) then
if casting("定波砥澜") and castleft() < 0.13 then
settimer("定波读条结束")
end
--初始化变量
v["跃潮CD"] = scdtime("跃潮斩波")
v["海运CD"] = scdtime("海运南冥")
v["溟海CD"] = cdtime("溟海御波")
v["逐波CD"] = scdtime("逐波灵游")
v["浮游CD"] = scdtime("浮游天地")
v["木落CD"] = scdtime("木落雁归")
v["定波CD"] = scdtime("定波砥澜")
v["鸿轨buff时间"] = bufftime("17094")
v["鸿轨buff"] = buff("17094")
v["太息buff"] = buff("14083")
local tSpeedXY, tSpeedZ = speed(tid())
v["目标静止"] = rela("敌对") and tSpeedXY <= 0 and tSpeedZ <= 0
v["浮游"] = buff("13475") --and gettimer("释放落地") > 0.5
v["物化"] = buff("13781")
v["驰风震域时间"] = bufftime("24192")
v["海碧层数"] = buffsn("24229")
--目标不是敌对结束
if not rela("敌对") then return end
--副本防开怪
if getopt("副本防开怪") and dungeon() and nofight() then return end
if nobuff("13560") and scdtime("翼绝云天") <= 0 then
deltimer("破绽")
CastX("翼绝云天")
end
if tbuff("破绽") or tbuff("青冥") then
settimer("破绽")
end
if v["浮游"] then
use("变1星霜")
use("天1地间")
f["天宏"]()
else
f["地宏"]()
end
if fight() and rela("敌对") and dis() < 20 and cdleft(16) <= 0 and castleft() <= 0 and cdleft(1424) <= 0 and gettimer("定波砥澜") > 0.3 and state("站立|轻功") then
PrintInfo("----------没打技能, ")
end
end
end
end
f["天宏"] = function()
v["上次技能"] = "开始浮游"
if v["鸿轨buff"] and cdleft(16) < 0.125 and v["海运CD"] > 0.5 and v["溟海CD"] > 0.5 and v["逐波CD"] > 0.5 then --掌法打完了落地
CastX("浮游天地·落地")
end
if not v["鸿轨buff"] then --第一次物化
CastX("翼绝云天")
CastX("振翅图南")
if getopt("原地物化") then
CastXYZ("物化天行", locX, locY, locZ)
else
CastX("物化天行")
end
if height() <= 3.5 then
CastX("海运南冥")
end
if v["海运CD"] > 1 then
CastX("溟海御波")
end
if height() <= 3.5 and v["溟海CD"] < 0.5 then
CastX("物化天行·上升")
end
end
if v["鸿轨buff"] then
CastX("翼绝云天")
CastX("振翅图南")
if height() <= 3.5 and v["鸿轨buff时间"] > 0 then
CastX("海运南冥")
end
if v["鸿轨buff时间"] < 7 and v["鸿轨buff时间"] > 0 then
CastX("溟海御波")
end
if v["鸿轨buff时间"] < 6 and v["鸿轨buff时间"] > 0 then
CastX("逐波灵游")
end
end
end
f["地宏"] = function()
if face() < 90 then
if v["跃潮CD"] < 1.5 and v["海运CD"] < 3.2 and v["溟海CD"] <= 4.4 and v["浮游CD"] <= 2 and v["定波CD"] < 1.5 and v["逐波CD"]<= 8 then
CastX("跃潮斩波")
return
end
if v["上次技能"] == '跃' then
CastX("定波砥澜")
end
if casting("定波砥澜") and castprog() >= 0.5 then
stopcasting()
v["上次技能"] = "定"
return
end
if v["上次技能"] == '定' then
f["浮游准备宏"]()
end
if v["上次技能"] == "开始浮游" then
if v["鸿轨buff"] then
CastX("木落雁归")
end
if v["太息buff"] then
CastX("海运南冥")
end
if v["太息buff"] then
CastX("溟海御波")
end
end
if not v["太息buff"] then
CastX("木落雁归")
CastX("击水三千")
end
end
end
f["浮游准备宏"] = function()
CastX("翼绝云天")
CastX("振翅图南")
if ( v["浮游CD"] <= 0.3 and scdtime("翼绝云天") <= 0 ) or buff("13560") then
CastX("击水三千")
end
CastX("浮游天地")
end
--记录信息
function PrintInfo(s)
local szinfo = "浮游状态"..tostring(v["浮游"])..",物化计次"..v["物化计次"]..",掌法计次"..v["掌法计次"]..",木落CD:"..v["木落CD"]..", 定波CD:"..cn("定波砥澜")..", "..cntime("定波砥澜", true)..", 跃潮CD:"..v["跃潮CD"]..", 海运CD:"..v["海运CD"]..", 溟海CD:"..scdtime("溟海御波")..", 逐波CD:"..v["逐波CD"]..", 浮游CD:"..v["浮游CD"]..", 物化CD:"..cn("物化天行")..", "..cntime("物化天行", true)..", 驰风震域时间:"..v["驰风震域时间"]..", 海碧层数:"..v["海碧层数"]
if s then
szinfo = s..szinfo
end
print(szinfo)
end
--使用技能并记录信息
function CastX(szSkill)
if cast(szSkill) then
if v["记录信息"] then
print(szSkill)
PrintInfo()
end
return true
end
return false
end
function CastXYZ(szSkill,x,y,z)
if castxyz(szSkill,x,y,z) then
if v["记录信息"] then
print(szSkill)
PrintInfo()
end
return true
end
return false
end
--释放技能
function OnCast(CasterID, SkillName, SkillID, SkillLevel, TargetType, TargetID, PosY, PosZ, StartFrame, FrameCount)
if CasterID == id() then
if SkillID == 20944 then
--settimer("释放落地")
v["掌法计次"] = 0
v["物化计次"] = 0
return
end
if SkillID == 19828 then
settimer("释放浮游")
print("-------------------------------------------------------------释放浮游!!!!")
if getopt("原地物化") then
locX, locY, locZ = pos()
end
return
end
if SkillID == 20083 then
if buff("14540") then
v["掌法计次"] = v["掌法计次"] + 1
end
end
if SkillID == 20715 then
if buff("14540") then
v["掌法计次"] = v["掌法计次"] + 1
end
end
if SkillID == 20084 then
if buff("14540") then
v["掌法计次"] = v["掌法计次"] + 1
end
end
if SkillID == 20049 then
if buff("14540") then
v["物化计次"] = v["物化计次"] + 1
end
end
if SkillID == 20053 then
v["上次技能"] = "跃"
end
end
end
--buff更新
function OnBuff(CharacterID, BuffName, BuffID, BuffLevel, StackNum, SkillSrcID, StartFrame, EndFrame, FrameCount)
if CharacterID == id() then
if BuffID == 13475 then
deltimer("等待浮游同步")
elseif BuffID == 13781 then
deltimer("等待物化同步")
end
end
end
--记录战斗状态改变
function OnFight(bFight)
if not bFight then
print("--------------------离开战斗")
end
end
|
|