//~silent
// 四区白三三
// 1.召唤佛光功能需要有坦克号支持。2.代码开头有说明使用方法,别问我怎么用。3.押镖常有各种问题,偶尔判断出错卡地图请手动操作。4.流程只是减少手动操作,实在打不过请自己想办法。5.大概率不会加新功能,有加也是以月为周期。6.随缘修bug。
// 遇到九阳可召唤少林工具人组队上佛光,配合【召唤佛光】触发使用
// 默认在帮派频道发出召唤佛光信息,如果坦克和自己不在一个帮派,可选择公共或者队伍频道。
// 2020.12.09 - 修复晚上八点首席弟子换人时引起的bug;恢复红蓝可使用长生诀;优化多项判断;增强提示信息。
($localVer) = 2022040602
($changeLog) = 🆕 超时失败后直接闭关结束运镖;优化不要急慢慢来的处理方式;加速有长生时复活后的恢复过程。🌟 多种方案选择;可配合佛光坦克触发;可远程通知。
($flowName) = 自动运镖
($flowCode) = zdyb
($flowPath) = 运镖
($flowFinder) = 根文件夹
//($repourl) = https://cdn.jsdelivr.net/gh/mapleobserver/wsmud-script
($repourl) = http://wsmud-cdn.if404.com
@js ($version) = $.ajax({type: "GET", url: "(repourl)/version.txt", async: false, cache: false}).responseText;
[if] (version) != null
@js ($remoteVer) = var v = (version);v.(flowCode)
[if] (localVer) < (remoteVer) && (remoteVer) != null
[if] (UPnum) == null
($UPnum) = 0
[if] (UPnum) < 2
[if] (UPnum) == 1
@print 未获取到最新版本,使用备用地址再次尝试...
($repourl) = http://wsmud-cdn.if404.com
($UPnum) = (UPnum) + 1
[if] (flowPath) != 根文件夹 && (flowPath) != null
($flowSource) = (repourl)/(flowPath)/(flowName).flow.txt
[else]
($flowSource) = (repourl)/(flowName).flow.txt
[if] (flowFinder) == null
($flowFinder) = 根文件夹
@js WG.SendCmd("tm 当前(flowName)版本【(localVer)】,将开始自动更新至最新【(remoteVer)】。")
($f_ss)={"name":"(flowName)","source":"(flowSource)","finder":"(flowFinder)"}
@js var time = Date.parse( new Date());var f=(f_ss);var n=f["name"];var s=f["source"];var fd=f["finder"];WorkflowConfig.removeWorkflow({"name":n,"type":"flow","finder":fd});$.get(s,{stamp:time},function(data,status){WorkflowConfig.createWorkflow(n,data,fd);});
@wait 1500
($log) = ✅(flowName)已更新至最新版【(remoteVer)】,即将自动运行。
[else]
($log) = ⭕(flowName)暂时无法正常更新至【(remoteVer)】,直接运行当前版本【(localVer)】。
($UPnum) = null
@js WG.SendCmd("tm (log)")
@print (log)
[if] (UPnum) != null
@js var f=(f_ss);ManagedPerformerCenter.start(f["name"], FlowStore.get(f["name"]));
[exit]
[else]
($UPnum) = null
[if] (remoteVer) == null
($log) = ⚠️获取远程版本失败,维持当前版本不变。
[else]
($log) = 🚀开始运行(flowName),当前版本【(remoteVer)】。更新内容:(changeLog)
@js WG.SendCmd("tm (log)")
@print (log)
[while] (yb_com) == null
@toolbar jh
@toolbar tasks
@task 福威镖局林震南($tag1)本周完成($yb_com)/20个|你目前没有接受到委托,本周完成($yb_com)/20个
@await 500
[if] (yb_com) == 20
@print 本周运镖已完成20次,本流程结束。
[exit]
[else]
($repeat) = 20 - (yb_com)
[if] (EscortHpThreshold) == null
($EscortHpThreshold) = 90
[if] (EscortMpThreshold) == null
($EscortMpThreshold) = 70
[if] (EscortFoguangChannel) == null
($EscortFoguangChannel) = 帮派
[if] (EscortTangshi) == null
($EscortTangshi) = 不使用
[if] ($EscortForce) == null
($EscortForce) = 九阴神功
[if] ($EscortForce) == 慈航静斋
($EscortForce) = 慈航剑典
[if] (EscortJiuyin) == null
($EscortJiuyin) = 关闭
//[if] (EscortWaitCDExp) == null
// ($EscortWaitCDExp) = null
[if] (EscortSkipCD) == null
($EscortSkipCD) = 关闭
[if] (EscortWeaponID) == null || (EscortWeaponID) == ^none
($EscortWeaponID) = null
[if] (EscortWaitTime) == null
($EscortWaitTime) = 500
// 远程通知
[if] (EscortAlertTel) == null
($EscortAlertTel)=关闭
#input ($repeat) = 本次流程押镖次数,(repeat)
#select ($EscortHpThreshold) = 疗伤,当气血低于百分比,100|90|80|70|60|50|40|30|20|10|5|1,(EscortHpThreshold)
#select ($EscortMpThreshold) = 打坐,当内力低于百分比,100|90|80|70|60|50|40|30|20|10,(EscortMpThreshold)
#select ($EscortChangsheng) = 使用长生诀恢复气血内力,打开|关闭,(EscortChangsheng)
#select ($WDXuruo) = 死亡后自动到武道塔一百层清除虚弱,打开|关闭,(WDXuruo)
#select ($EscortXuedao) = 残血使用技能(不自动疗伤),打开|关闭,(EscortXuedao)
#select ($EscortForce) = 押镖使用内功,九阴神功|慈航剑典|自创九阴|自创慈航|明玉功|紫霞神功|其它,(EscortForce)
#select ($EscortSkipCD) = 无视所有技能冷却(该选项打开后下面两个CD相关选项均无效,打开|关闭,(EscortSkipCD)
#select ($EscortJiuyin) = 有九阴或剑心等force类buff时,不等对应技能CD(请修改需要等待CD的技能),打开|关闭,(EscortJiuyin)
#input ($EscortWaitCDExp) = 等待CD的技能sid(什么都不等填null),(EscortWaitCDExp)
#input ($EscortWaitTime) = 出现不要急慢慢来的等待时间,单位毫秒),(EscortWaitTime)
#select ($EscortFoguang) = 附加选项(非必要)
 * 遇到九阳召唤少林工具人加佛光,打开|关闭,(EscortFoguang)
#select ($EscortFoguangChannel) = 在哪个频道召唤坦克,公共|帮派|队伍,(EscortFoguangChannel)
#input ($EscortFoguangName) = 少林工具人名字,(EscortFoguangName)
#select ($EscortShenzhao) = 遇到九阳换神照,是|否,(EscortShenzhao)
#select ($EscortCanXue) = 连死二次后残血叫杀(适用于血刀),是|否,(EscortCanXue)
#select ($EscortXuantie) = 连死三次换玄铁,是|否,(EscortXuantie)
#select ($EscortTangshi) = 唐诗剑法,使用|不使用,(EscortTangshi)
#input ($EscortWeaponID) = 切换躺尸或玄铁使用的剑类武器id(已经拿剑的话可以不填),(EscortWeaponID)
// 远程通知
#select ($EscortAlertTel)=远程通知功能,需先在设置中开启并填写参数,需要plugins版本至少0.0.32.192,raid版本至少2.4.45,不懂的话请勿使用,自行搜索了解。
 * 流程结束或同一强盗死亡达到5次,开启远程通知,开启|关闭,(EscortAlertTel)
#config
//[if] (EscortJiuyin) == 打开
// ($EscortXuedao) = 关闭
[if] (EscortWeaponID) == null
[if] (EscortXuantie)==是 || (EscortTangshi)==使用
@print 未设置剑类武器id,请重新设置!
[exit]
<-stopSSAuto
<-recordGains
stopstate
($hpPer) = (EscortHpThreshold)/100
($mpPer) = (EscortMpThreshold)/100
($jianfa) = (:kf_jian)
($quanjiao) = null
($weapon) = (:eq0)
($numJF) = 0
($num) = 0
@cmdDelay 500
[while] (num) < (repeat)
@js $('#yb_prog').remove()
@js $(`.state-bar`).before(`
开始运镖
`)
[if] (:room) != 运镖-青石大道
[if] (:room 运镖) == false
@await 1000
@tidyBag
[while] (:room) != 扬州城-武庙
relive
$to 扬州城-武庙
@await 500
[if] (EscortXuedao) == 关闭 || (:mpPer) < (mpPer)
@renew
[if] (EscortSkipCD) != 打开
@cd
@await 2000
[while] (:room) != 扬州城-镖局正厅
jh fam 0 start;go west[2];go south[2]
@await 1000
select {林震南};biao {r林震南}
// 确定已接到任务
[while] true
($go) = null
($go1) = null
task yunbiao {r林震南} start ok
@tip 客户好像不见了|你现在就($go)吧|你精($finish)不足|如果你($go1)按时送到|你精力不足,好好($jingli)下再来|最近暂时($finish2)委托,你先休息下吧|你不是正在运镖吗?($timeout)可是要赔偿的
[if] (timeout) == 放弃
($logPush) = 任务超时,运镖失败,自动闭关。
@print (logPush)
tm (logPush)
@push (logPush)
$zdwk
[exit]
[if] (go) == 出发
[break]
[if] (go1) == 不能把镖银
task yunbiao {r林震南} begin
[break]
[if] (finish) != null
recordGains->
$zdwk
@print 精力不足,停止押镖。
tm 精力不足,停止押镖。
[exit]
[if] (finish2) != null
recordGains->
$zdwk
@print 已完成押镖。
tm 已完成押镖。
[exit]
[while] true
[if] (:hpPer) < (hpPer) || (:mpPer) < (mpPer)
($renewCS) = 0
[if] (:hpPer) < (HpPer)
($renewCS) = 1
[if] (:mpPer) < (mpPer)
($renewCS) = (renewCS) + 2
[if] (EscortXuedao) == 打开
($renewCS) = (renewCS) + 4
[if] (EscortChangsheng) == 打开 && (renewCS) > 0 && (renewCS) != 4 && (renewCS) != 5
($eqforce)=(:kf_nei)
enable force changshengjue
@cd force.zhen
@perform force.zhen
@await 500
enable force (eqforce)
[if] (EscortXuedao) == 打开 && (jiuyang) == null
enable force none;enable force (eqforce)
[else]
[if] (renewCS) == 1 || (renewCS) == 3
@liaoshang
[else if] (renewCS) == 2 || (renewCS) == 3 || (renewCS) == 6 || (renewCS) == 7
dazuo
@until (:mpPer) >= (mpPer)
stopstate
[if] (EscortTangshi) == 使用
cha none;enable sword tangshijianfa;eq (EscortWeaponID)
@wait 3000
@cd sword.wu
[if] (EscortShenzhao) == 是 && (quanjiao) != null && (jiuyang) == null && (quanjiao) != shenzhaojing && (:kf_quan) == shenzhaojing
enable unarmed (quanjiao)
@await 1000
[if] (EscortWaitCDExp) != null && (EscortSkipCD) != 打开
@cd (EscortWaitCDExp)
[if] (EscortJiuyin) == 打开 && (EscortSkipCD) != 打开
[if] (:status force) == false
[(:kf_nei)==jiuyinshengong || (EscortForce)==自创九阴]@cd force.cui
[(:kf_nei)==cihangjiandian || (EscortForce)==自创慈航]@cd force.xin
[(:kf_nei)==mingyugong]@cd force.power
[(:kf_nei)==zixiashengong2]@cd force.xi
@until (:status xuruo) == false
[if] (EscortTangshi) == 使用
go east;$waitpfm sword.wu
[else if] (EscortCanXue) == 是 && (dead) == 2 && (jiuyang) == null
[if] (:kf_dao)==xuedao
($force) = (:kf_nei)
enable force none;enable force (force)
go east
[else if] (EscortXuedao) == 打开 && (jiuyang) == null && (:status force) == false && (EscortSkipCD) != 打开
[(:kf_nei)==jiuyinshengong || (EscortForce)==自创九阴]@cd force.cui
[(:kf_nei)==cihangjiandian || (EscortForce)==自创慈航]@cd force.xin
[(:kf_nei)==mingyugong || (EscortForce)==明玉功]@cd force.power
[(:kf_nei)==zixiashengong2 || (EscortForce)==紫霞神功]@cd force.xi
($eqforce) = (:kf_nei)
enable force none;enable force (eqforce)
go east
[else]
go east
[if] (:room) == 运镖-青石大道
@tip 不要急,($needwait)来|看起来($qiangdao)想杀死你|开始攻击你|你获得了|没有东西|死了|你现在是($linghun)状态,不能那么做|你推着镖银风尘仆仆|一阵风吹去
[if] (needwait) != null && (:living) == true
($needwait) = null
@print 不要急慢慢来,等一下再继续
[if] (EscortWaitTime) > 0 && (EscortWaitTime) != null
@await (EscortWaitTime)
[continue]
//[if] {r的尸体}? != null && {r(:name)的尸体}? == null && (:combating) == false && (:living) == true
[if] (EscortTangshi) == 使用
@cd sword.wu
cha none;enable sword (jianfa);eq (weapon)
@wait 3000
@cd
kill {r蒙面大盗}?;$waitpfm unarmed.quan
@tip 九阳神功($jiuyang)了你的真元|你获得了|没有东西|死了|你现在是($linghun)状态,不能那么做|一阵风吹去|点($timeout2)手
@until {r蒙面大盗}? == null || (:combating) == false || (:living) == false
[if] (:living) == true && (linghun) != 灵魂
[if] (timeout2) == 子扎
($timeout2) = null
[continue]
($jiuyang) = null
($dead) = null
[if] (EscortShenzhao) == 是 && (quanjiao) != null && (quanjiao) != shenzhaojing && (:kf_quan) == shenzhaojing
enable unarmed (quanjiao)
[if] (EscortXuantie) == 是
[if] (:kf_jian) != (jianfa)
enable sword (jianfa)
eq (weapon)
@await 4000
($numJF) = (numJF) + 1
($info) = 当前运镖流程已完成 (num)/(repeat) 次,本次已打死 (numJF) 个劫匪。
@print (info)
@js $('#yb_prog').html(`(info)`)
//[if] (EscortWaitTime) > 0 && (EscortWaitTime) != null
// @await (EscortWaitTime)
[continue]
[if] (:living) == false || (linghun) == 灵魂
[(linghun) != null]($linghun) = null
[(dead) == null]($dead)=0
($dead) = (dead)+1
[(dead)>=4]($jiuyang)=yes
($info) = 累计死亡 (dead) 次!
当前运镖流程已完成 (num)/(repeat) 次,本次已打死 (numJF) 个劫匪。
@print (info)
@js $('#yb_prog').html(`(info)`)
[if] (dead)>=5
// 远程通知
[if] (EscortAlertTel) == 开启
($logPush) = 【押镖】(:name):(info)
@push (logPush)
[if] (jiuyang) != null
[if] (EscortFoguang) == 打开
[if] (dead) >= 5
tm 累计死亡 (dead) 次,准备召唤佛光
[else]
tm 遭遇九阳劫匪,准备召唤佛光
[else]
tm 累计死亡 (dead) 次,可能遭遇九阳劫匪!
[while] (:living) == false
@await 500
relive
[if] (:status xuruo) == true && (WDXuruo) == 打开
@await 2000
[while] (:room 武道塔-第) == false
jh fam 9 start;go enter
@await 500
kill {r武道}
@until (:combating) == false && (:status faint) == false && (:status missing) == false
//enable force (force)
[while] (:room) != 扬州城-武庙
relive
$to 扬州城-武庙
@await 500
[if] (EscortChangsheng) == 打开
dazuo
@until (:mpPer) >= 0.2
stopstate
go east
($eqforce)=(:kf_nei)
enable force changshengjue
@cd force.zhen
@perform force.zhen
@tip 你的($less)不够,无法使用|转瞬间重获新生
@await 500
enable force (eqforce)
go west
[if] (:hpPer) < 0.9 || (less) != null || (EscortChangsheng) != 打开
($less) = null
[if] (:mpPer) < 0.2
dazuo
@until (:mpPer) >= 0.2
@liaoshang
[if] (EscortSkipCD) != 打开 || (jiuyang) != null
@cd
[if] (EscortXuantie) == 是
[if] (dead) == 3
[if] (:kf_jian) != xuantiejianfa
enable sword xuantiejianfa
[if] (EscortWeaponID) != null
@eq (EscortWeaponID)
@await 4000
[else if] (dead) > 3 && (:eq0) != (weapon)
[if] (:kf_jian) != (jianfa)
enable sword (jianfa)
eq (weapon)
@await 4000
@until (:status xuruo) == false
[if] (jiuyang) != null && (EscortShenzhao) == 是
[if] (:kf_quan) != shenzhaojing
($quanjiao) = (:kf_quan)
enable unarmed shenzhaojing
@cd unarmed.quan
[if] (jiuyang) != null && (EscortFoguang) == 打开
[if] (EscortFoguangName) != null
team out
relive
$to 扬州城-武庙
go east
[if] (EscortFoguangChannel) == 公共
($fgcl) = chat
[else if] (EscortFoguangChannel) == 帮派
($fgcl) = pty
[else if] (EscortFoguangChannel) == 队伍
($fgcl) = tm
(fgcl) 召唤佛光
@tip (EscortFoguangName)邀请你加入组队
team reply ok
@until (:status foguang) == true
team out
[else]
tm 无指定少林工具人!
[while] (:room) != 扬州城-镖局正厅
jh fam 0 start;go west[2];go south[2]
@await 1000
select {林震南};biao {r林震南}
task yunbiao {r林震南} begin
[else]
@await 100
[if] (:room) != 运镖-青石大道 && (:room 扬州城,武道塔,武当派,少林派,华山派,峨眉派,逍遥派,丐帮,杀手楼)==true
@tip 你推着镖银风尘仆仆地来到($map),只要把镖银交给($name)就完成了。
($info) = 收货人是(name),准备交镖。
@js $('#yb_prog').html(`(info)`)
@await 3000
[while] true
[if] (:room) == 华山派-练武场 || (:room) == 逍遥派-林间小道 || (:room) == 武当派-太子岩 || (:room) == 丐帮-破庙密室 || (:room) == 少林派-练武场 || (:room) == 峨眉派-广场 || (:room) == 杀手楼-练功房
[if] (:room) == 华山派-练武场 || (:room) == 逍遥派-林间小道
[if] (name) != 门派后勤管理员
($sxdz) = {r首席弟子}?
[else if] (:room) == 武当派-太子岩 || (:room) == 丐帮-破庙密室
($sxdz) = {r首席弟子}?
[else if] (:room) == 少林派-练武场
($sxdz) = {r少林派大师兄}?
[else if] (:room) == 峨眉派-广场
($sxdz) = {r峨眉大师姐}?
[else if] (:room) == 杀手楼-练功房
($sxdz) = {r金牌杀手}?
[if] {r(name)}? != (sxdz) && (name) != 门派后勤管理员
($name) = (:findName (sxdz))
[if] (name) == 道童 && (:room) == 武当派-广场
($name) = 武当派第四代弟子 道童
[if] {r(name)}? == null
@print 【(:room)】【(name)】失踪,等待出现。
@until {r(name)}? != null
select {r(name)};task yunbiao {r(name)} give
@tip 这是你的报酬|你有什么事吗|这不是($no)镖银|你有($wrong)事吗|这里($wrong)这个人|不要急,($needwait)来
[if] (needwait) != null
($needwait) = null
@print 不要急慢慢来,等一下再继续
@await 3000
[continue]
[if] (no) != null || (wrong) != null
($wrong) = null
($no) = null
tm 【(:room)】【(name)】失踪,等待1分钟再尝试交镖。
@await 60000
[continue]
[else]
[break]
[break]
[else]
[continue]
($num) = (num) + 1
($numJF) = 0
recordGains->
stopSSAuto->
@js $('#yb_prog').remove()
[if] (EscortTangshi) == 使用
enable sword (jianfa);eq (weapon)
[while] (:room) != 扬州城-武庙
$to 扬州城-武庙
@await 500
@renew
@tidyBag
$zdwk
// 远程通知
[if] (EscortAlertTel) == 开启
($logPush) = 【押镖】(:name):押镖结束。
@push (logPush)