Загрузка данных


let beeping = false
let lastTrigger = 0

function startAlarm(type) {

    if (beeping) return

    beeping = true

    ChatLib.chat(`&c&l[MineAlert] ${type} шахта обновится через 10 секунд!`)

    let ticks = 0

    let task = register("tick", () => {

        World.playSound(
            "block.note_block.pling",
            10,
            2
        )

        ticks++

        if (ticks >= 100) {
            task.unregister()
            beeping = false
        }

    })
}

register("step", () => {

    let entities = World.getAllEntities()

    for (let entity of entities) {

        let name = ChatLib.removeFormatting(entity.getName())

        if (!name) continue

        let timerMatch = name.match(/^(\d{2}):(\d{2})$/)

        if (timerMatch) {

            let minutes = parseInt(timerMatch[1])
            let seconds = parseInt(timerMatch[2])

            if (minutes === 0 && seconds === 10) {

                let now = Date.now()

                if (now - lastTrigger < 15000) return

                lastTrigger = now

                let mineType = "Неизвестная"

                for (let e of entities) {

                    let text = ChatLib.removeFormatting(e.getName())

                    if (text.includes("Обычная")) {
                        mineType = "Обычная"
                    }

                    if (text.includes("Мифическая")) {
                        mineType = "Мифическая"
                    }

                    if (text.includes("Легендарная")) {
                        mineType = "Легендарная"
                    }
                }

                startAlarm(mineType)
            }
        }
    }

}).setFps(2)