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)