编辑代码

--- Generated by EmmyLua(https://github.com/EmmyLua)
--- Created by 二a          -->qq 285977091
--- DateTime: 2023/12/4 22:44
---

--lua流程说明:启动lua之后,会有10秒开始执行程序的倒计时,倒计时结束整个程序开始运行
--1.倒计时结束飞小艾,等待10秒(过图等待)
--2.10秒结束开始执行Starter()函数
-->Starter(down_value) -->down_value:要挂机的角色数量 -->当前角色一直挂机挂到down_value结束完彩虹副本
--3.执行Starter()函数,先自动勾选彩虹副本挂机,等待4秒后开始F6(这个时候角色会飞得去挂机)
-->开始每隔20秒判断一次当前副本是否刷完,若当前角色所有副本刷完了,则输出当前角色id和当前角色的装备宏名称
-->开始执行自动换装切号  Wear_Change_all()函数
-->Wear_Change_all(user_value,Wear_value)  -->user_value:下一个要换的角色id,Wear_value:当前角色的换装

Y_list={
    "95 CC EB 0B 01",
    "95 CC EB 0B 02",
    "95 CC EB 0B 03",
    "95 CC EB 0B 04",
    "95 CC EB 0B 05",
    "95 CC EB 0B 06",
    "95 CC EB 0B 07",
    "95 CC EB 0B 08",
    "95 CC EB 0B 09",
    "95 CC EB 0B 10",
    "95 CC EB 0B 10"
}
Skill_list={
    "",
    "0A C9 EB 0B 79 DC 10 00 00 01 00 01 FF FF FF FF 01",--1    抢龙的转圈圈
}
config_list={"阿东s_36",  --存储配置信息
             "别烦阿东m_30",
             "阿东q_43"
             "薇恩_68"
             "摸摸我的大棒_56"
             "MG东_32"
             "无畏_64"
             "张阴婷_25"
}
Wear_list={
    "1的装备宏_无_穿.txt",
    "1的装备宏_无_穿.txt",
    "1的装备宏_无_穿.txt",
    "1的装备宏_无_穿.txt",
    "1的装备宏_无_穿.txt",
    "1的装备宏_无_穿.txt",
    "1的装备宏_无_穿.txt",
    "1的装备宏_无_穿.txt",
    "1的装备宏_无_穿.txt",
    "1的装备宏_无_穿.txt",
    "1的装备宏_无_穿.txt",
    "1的装备宏_无_穿.txt",
    "13号角色配置.txt",
    "14号角色配置.txt",
    "15号角色配置.txt",
    "16号角色配置.txt",
    "17号角色配置.txt",

}
function Wear_Change_all(user_value,Wear_value)
    yz_openzbh(Wear_value[user_value])
        yz_print_t("正在执行装备宏--存--操作")
        yz_runzbh(1)
        yz_sleep(20000)
    for i = -5, 0 do
        yz_print_t(math.abs(i).." 秒后开始执行换人操作")
        yz_sleep(1000)
    end
    while true do
        if yz_getus()=="20000020" then
            yz_exit(3)
        end
        if yz_getus()=="30000020" then
            for i = -15, 0 do
                yz_print_t(math.abs(i).." 秒后开始执行选人")
                yz_sleep(1000)
            end
            yz_setr(user_value)
            yz_sleep(15000)
            for i = -5, 0 do
                yz_print_t(math.abs(i).." 秒后开始执行取装备操作--装备宏文件名:"..Wear_value[user_value+1])
                yz_sleep(1000)
            end
            yz_openzbh(Wear_value[user_value+1])
            for i = 1, 4 do
                for i = 2, 3 do
                    yz_print_t("执行"..i)
                    yz_runzbh(i)
                    yz_sleep(20000)
                end
            end
            break
        end
        yz_sleep(200)
    end
end
function Starter(down_value)
    for i = yz_getrb()+1, down_value do
        user_value=i
        if yz_rainbow_if()==0 then
            yz_print_t("当前未勾选彩虹副本挂机,即将勾选")
            yz_rainbow()--勾选副本脚本
        end
        yz_sleep(2000)
        yz_print_t("即将读取配置 "..config_list[i]) --读取当前角色的配置文件
        yz_readconfig(config_list[i])--读取配置
        yz_sleep(2000)
        if yz_F6_if()==0 then
            yz_start()
        end
        while true do  --每个膈20秒判断一次当前彩虹副本是否完成
            if yz_check()==1 then       --如果全部刷完
                yz_print_t("当前彩虹副本状态为 "..yz_check().."  即将停止挂机,执行切号操作---当前角色id:"..user_value.." 当前装备宏:"..Wear_list[user_value])
                yz_stop()
                if i==down_value then
                    yz_print_t("全部设定的角色刷完了喵,结束喵 !!")
                    break
                end
                Wear_Change_all(user_value,Wear_list)
                yz_rainbow()
                yz_start()
                yz_sleep(5000)
                yz_stop()
                break
            end
            yz_sleep(20000) --20秒判断一次当前彩虹副本状态
        end
    end
end
function TimeCork(timeA,timeB)  --定时挂机(关闭定点挂机,退组,回小贝,换线)传入小时timeA和分钟timeB
    while (true) do
        yz_print_t(
                "现在时间为:" .. os.date("%H") .. ":" ..
                        os.date("%M") .. " 将在"..timeA..":"..timeB.."开始刷本")
        if os.date("%H") == timeA and os.date("%M") == timeB then -- 04 : 31 开始挂机
            yz_stop()
            yz_sleep(10000)
            yz_send("D4 C9 EB 0B")  --退组
            yz_sleep(5000)
            yz_send("23 C5 EB 0B 75 27 00 00")  --会小贝换线
            sleep(10000)
            for i = -10, 0 do
                yz_print_t(math.abs(i).."秒后换到1线")
                yz_sleep(1000)
            end
            yz_send("73 C2 EB 0B 01 00 65 00")
            yz_send("2E 01 00 00 65 00")
            for i = -20, 0 do
                yz_print_t(math.abs(i).."秒后换到2线")
                yz_sleep(1000)
            end
            yz_send("73 C2 EB 0B 01 00 66 00")
            yz_send("2E 01 00 00 66 00")
            -- 换线重置副本次数
            for l = -15, 0 do
                echo("还有" .. math.abs(l) .. "秒" ..
                        "开始执行自动挂机系统")
                sleep(1000)
            end
            break
        end
        sleep(10000)
    end
end             --定时挂机(关闭定点挂机,退组,回小贝,换线)传入小时timeA和分钟timeB
function Yfly(timeA,timeB,skill_code)
    yz_start()
    yz_send("95 CC EB 0B 01")  --先飞第一个点过图
    while true do  --检测当前状态
        yz_print_t(
                "现在时间为:" .. os.date("%H") .. ":" ..
                        os.date("%M") .. " 将在"..timeA..":"..timeB.."开始结束Y飞,然后开始刷本")
        for i, v in ipairs(Ylist) do
            yz_send(Ylist[i])
            yz_send(skill_code)
            sleep(300)
        end
        if (os.date("%H") == timeA and os.date("%M") == timeB) then  --如果是那个点的话那么就退出
            break
        end
        yz_sleep(10000)
    end
    yz_sleep(10000)
end
for i = -10, 0 do
    yz_print_t("还有 "..math.abs(i).."秒开始执行程序")
    yz_sleep(1000)
end
--uniform setting 10秒
--Yfly("","",Skill_list[2])     -- "04","35",Skill_list[职业封包位置]  按这种格式填写时间参数,不需要定时就给这一行最前面加上--两个减号
--TimeCork("","")   -- "04","40"  按这种格式填写时间参数,不需要定时就给这一行最前面加上--两个减号
--yz_send("23 C5 EB 0B 75 27 00 00")
--yz_sleep(10000)
--运行后判断当前脚本副本是否勾选+当前挂机状态
Starter(2)      --当前角色到指定的角色挂机顺序