刀_秘宝通用测

--用于秘宝活动脚本。
--由于需要考虑的条件太多,这里仅做了剩余可战斗的刀和刀装小于多少时退出。

--[[不要用这个脚本跑其他图!!!!后果自负!]]
--[[不要用这个脚本跑其他图!!!!后果自负!]]
--[[不要用这个脚本跑其他图!!!!后果自负!]]
--[[不要用这个脚本跑其他图!!!!后果自负!]]
--[[不要用这个脚本跑其他图!!!!后果自负!]]

---------------------------------------------------------------------
--这里是设置区域 一般只需修改这里的值即可

event_id = 1
--[[★出击活动,2则表示第二个活动,如果秘宝活动变成了一个,则改成1即可]]
--[[该设置主要针对国服多活动时修改]]

Win.MessageBox('当前设定的秘宝活动ID为第 ' .. event_id .. ' 个,请确认无误!否则请确定后马上停止脚本并修改event_id!出击错地图后果自负!');

event_map_id = 1
--出击哪个地图(1-4)请自行修改! 1=简 2=普 3=难 4=炒鸡难

补充手形 =
--[[★★自动补充手形★★(通行证),不开会在手形不足时卡住]]

剩余刀回城数量 = 2
--请自行根据情况设置,如果场上剩余的刀数量小于等于该值,则会回城。

剩余刀装回城数量 = -1
--请自行根据情况设置,如果场上剩余的刀装数量小于等于该值,则会回城。
--以上两个条件达到其中之一就会生效 
-- (-1为不启动该判定)

max_count = 6
--最多进入多少次地图(出击次数) 开了自动补充手形的话 可以设置高一点刷很久

team_id = 1
--出击的队伍(1-4)

max_battle_count = 100
--最多进入多少次战斗点,活动多出也没问题,所以我写多一点

出击后休息分钟 = 0
--每次出击完毕后休息多少分钟

formation = 2 
--索敌失败后使用的阵型
--阵型1-6依次为 鱼鳞 横队 雁行 鹤翼 方阵 逆行 如果非1-6数值 则选择2

formation_lock =
--不使用智能有利阵型,任何情况都使用formation所设置的阵型


ignore_lv_msg = true 
--活动图设置这个是没用的 不要管
--是否无视等级提示 

map_id = { 100 + event_id, event_map_id} 

---------------------------------------------------------------------
--下面的东西不要乱改了! 就改上面的设置就行
if 补充手形 == true then 
	Base.SetValue("AutoShouXing", '1')
else
	Base.SetValue("AutoShouXing", '0')
end

Base.SetConfig("Sleep+?",100) --所有延时随机增加1-100
Base.SetConfig("MiBaoDieExitCount", 剩余刀回城数量)
Base.SetConfig("MiBaoDieDaoZhuangExitCount", 剩余刀装回城数量)

function IsColorAll(array)
	n = 0
	ok = 0
	while(array[n] ~= nil)
	do
		if Base.IsColor(array[n][0],array[n][1],array[n][2])==true then
			ok = ok + 1
		end
		n= n+1
	end
	
	if ok==n then
		return true
	else
		return false
	end
end

function IsDmmunlocker() --判断界面是否正确
	array = {};count = {}
	array = {[0]=17,19,16777215};count[0] = array
	array = {[0]=52,15,16777215};count[1] = array
	array = {[0]=105,16,16777215};count[2] = array
	array = {[0]=165,16,16777215};count[3] = array
	return IsColorAll(count)
end

if IsDmmunlocker() == false then
	mode = 0

	
	for n = 1, max_count do --循环次数
		a = "开始第:%d次"
		Win.Print(a:format(n))
		
		--出击
		if Tou.Sally(map_id[1],map_id[2],false) == false then 
			Win.Print('无法出阵退出')
			break --无法出阵
		end
		
		--战斗
		ret = Tou.MiBaoBattle(max_battle_count, formation, mode, team_id, ignore_lv_msg, formation_lock)
		if ret > 0 then 
			Win.Print('重伤中断脚本') --发现重伤了
			break
		end
		
		if ret == -1 then 
			Win.Print('检非中断脚本') --发现检非
			break
		end
		
		if ret == -2 then 
			Win.Print('切换队伍失败了等3分钟再打..') 
			Base.Sleep(1000*60*3)
			--break
		end
		if ret == -3 then 
			Win.Print('切换队伍失败了等3分钟再打..') 
			Base.Sleep(1000*60*3)
			--break
		end
		Base.Sleep(2000)

		Win.Print('休息' .. 出击后休息分钟 .. '分钟...') 
		Base.SleepSec(出击后休息分钟 * 60)
		
	end

else
	Win.Print('检测到游戏内存在空白,坐标无法对应,脚本无法运行!') --发现重伤了
end

Win.Pop('脚本执行完毕!')

Last updated