号令计时器

// 新号令计时器 v2.1
// 20200508 | by 百里
// 帮派
// 即刻起开始进攻|获得了最终胜利|点子扎手
@cmdDelay 0

@js ($p1) = '(content)'.indexOf('即刻起开始进攻')
@js ($p2) = '(content)'.indexOf('获得了最终胜利')
@js ($p3) = '(content)'.indexOf('点子扎手')

[if] (p1) != -1 && (p2) == -1 && (p3) ==-1
    ($BPZ) = 1
    ($BPT)=(:hour)*60*60+(:minute)*60+(:second)
    // 可以通过下面这两个全局变量查询上次开帮派的时间
    ($BPT1)=(:hour)
    ($BPT2)=(:minute)
    ($HL)=1
    ($DT)=60000
[if] (p1) == -1 && ((p2) != -1 || (p3) !=-1)
    ($BPZ) = 0
    pty 计时器关闭了!
    [exit]

// 自动报时
[while] true
    @await (DT)
    [if] (BPZ) == 0 || (HL) > 29
        [break]
    ($HL) = (HL) + 1
    // 获取当前时间
    ($nt)=(:hour)*60*60+(:minute)*60+(:second)
    // 比较时间差
    ($tc)=(nt)-(BPT)
    // 隔天
    [if] (tc) < 0
        ($tc) = (tc) + 86400
    @js ($hl) = parseInt(((HL)-1)/5) + 1
    @js ($s) = (tc)%60
    @js ($m) = parseInt(((tc)-(s))/60)%5
    [if] (m)==0
        pty (hl)个号令刷新了!
    [else]
        pty (hl)个号令,持续(m)(s)
    // 自动修复时间差
    [if] (s)>0
        ($DT) = 60000 - (s)*1000
    [else]
        ($DT) = 60000