Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local modem = peripheral.find("modem")
- local DiscordHook = require("DiscordHook")
- local chatBox = peripheral.find("chatBox")
- if not modem then
- print("Erreur: Modem non trouvé.")
- return
- end
- local energyCell = peripheral.find("powah:energy_cell")
- if not energyCell then
- print("Erreur: powah:energy_cell non trouvée. Vérifiez la connexion et le nom du périphérique.")
- return
- end
- local speaker = peripheral.find("speaker")
- if not speaker then
- print("Erreur: Speaker non trouvé. Assurez-vous d'avoir un speaker connecté.")
- return
- end
- rednet.open(peripheral.getName(modem))
- local messageSent = false
- local function playLowEnergySound()
- speaker.playSound("block.note_block.chime", 1, 1)
- end
- local function getEnergyCellStats()
- local energyStored = energyCell.getEnergy()
- local energyCapacity = energyCell.getEnergyCapacity()
- local energyPercent = math.floor(energyStored / energyCapacity * 100)
- return energyStored, energyCapacity, energyPercent
- end
- local function sendStats()
- while true do
- local energyStored, energyCapacity, energyPercent = getEnergyCellStats()
- local stats = {
- energyStored = energyStored,
- energyCapacity = energyCapacity,
- energyPercent = energyPercent
- }
- rednet.broadcast(stats, "powah")
- if energyPercent < 20 and not messageSent then
- local success, hook = DiscordHook.createWebhook(
- "https://discord.com/api/webhooks/1254412774172393482/yp196njdT93B7z8FO2KbykMj6bmad-kHpXE5OgH7Ta_xHqfU_UnimQOM91TlF1dgeFtn")
- if not success then
- error("Webhook connection failed! Reason: " .. hook)
- end
- if success then
- local message = "TsykiBase> Attention l'Énergie de la Cellule d'énergie Powah est en dessous des 20% :warning:"
- hook.send(message, "Server")
- messageSent = true
- end
- playLowEnergySound()
- local message = {
- { text = "Attention ! Niveau d'énergie faible.", color = "yellow" }
- }
- local json = textutils.serialiseJSON(message)
- chatBox.sendFormattedMessageToPlayer(json, "_Tsyke_", "[Info")
- elseif energyPercent >= 20 and messageSent then
- messageSent = false
- local message = {
- { text = "Le niveau d'énergie est revenue à la normal.", color = "yellow" }
- }
- local json = textutils.serialiseJSON(message)
- chatBox.sendFormattedMessageToPlayer(json, "_Tsyke_", "Info")
- end
- sleep(1)
- end
- end
- sendStats()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement