-- controller.lua -- Steuert das Startsignal für alle Musik-Computer -- Version 1.0 local CONTROL_FILE = "disk/control.txt" local TRIGGER_SIDE = "back" -- <--- Seite hier anpassen (z.B. "left", "right", "back" usw.) -- ----------------------------- -- Hilfsfunktion: schreibt die Control-Datei -- ----------------------------- local function writeControl(play, startTime) local f = fs.open(CONTROL_FILE, "w") f.writeLine("play=" .. tostring(play)) f.writeLine("startTime=" .. tostring(startTime)) f.close() end -- ----------------------------- -- Hauptschleife -- ----------------------------- print("Musikcontroller aktiv.") print("Warte auf Redstone-Signal an Seite: " .. TRIGGER_SIDE) -- Sicherstellen, dass Datei existiert writeControl(false, 0) while true do -- Auf steigende Flanke warten (Signal AN) if redstone.getInput(TRIGGER_SIDE) then local startTime = os.epoch("utc") + 1000 -- Start in 1 Sekunde print("Signal erkannt! Starte alle Geräte in 1 Sekunde...") writeControl(true, startTime) -- 2 Sekunden warten, damit alle Geräte starten sleep(2) -- Dann Signal zurücksetzen writeControl(false, startTime) print("Startsignal beendet. Warte auf nächstes Signal.") -- Warten bis das Signal wieder aus ist (Flankenerkennung) while redstone.getInput(TRIGGER_SIDE) do sleep(0.1) end end sleep(0.1) end