From 5937101784efa388d79f2365a18f48dda4dfc7b0 Mon Sep 17 00:00:00 2001 From: Moritz Ruth Date: Fri, 2 Jun 2023 20:10:08 +0200 Subject: [PATCH] commit #28 --- .../de/moritzruth/lampenfieber/act/Fourth.kt | 22 ++--- .../de/moritzruth/lampenfieber/act/Second.kt | 4 +- .../de/moritzruth/lampenfieber/act/Third.kt | 97 ++++++++++++------- .../{FogMachine.kt => AdjFogFury3000.kt} | 10 +- .../moritzruth/lampenfieber/device/Devices.kt | 2 +- 5 files changed, 79 insertions(+), 56 deletions(-) rename src/main/kotlin/de/moritzruth/lampenfieber/device/{FogMachine.kt => AdjFogFury3000.kt} (61%) diff --git a/src/main/kotlin/de/moritzruth/lampenfieber/act/Fourth.kt b/src/main/kotlin/de/moritzruth/lampenfieber/act/Fourth.kt index 2a68465..ef50b95 100644 --- a/src/main/kotlin/de/moritzruth/lampenfieber/act/Fourth.kt +++ b/src/main/kotlin/de/moritzruth/lampenfieber/act/Fourth.kt @@ -19,7 +19,7 @@ import kotlin.time.Duration.Companion.seconds fun ShowBuilderContext.fourthAct() = act("Vierter Akt") { scene("Szene 1") { - step(StepCue.MusicStart("Ende der Pause", 69.seconds)) { + step(StepCue.MusicStart("Ende der Pause", 10.minutes)) { val sideColor = Color(60.degrees, saturation = 10.percent) sideLight.color1.static(sideColor) sideLight.color2.static(sideColor) @@ -31,8 +31,8 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") { +"Sandra / steht rechts" } - leftSpotTarget = "Tina" - rightSpotTarget = "Sandra" + leftSpotTarget = "Tina / links" + rightSpotTarget = "Sandra / rechts" curtainState = CurtainState.OPEN @@ -44,7 +44,7 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") { } lightStep(StepCue.Text("Sandra", "Das reicht nicht.")) { - spotRight.brightness.fade(50.percent, 5.seconds) + spotRight.brightness.fade(20.percent, 5.seconds) } step(StepCue.Text("Tina", "was ich anziehen soll.")) { @@ -60,12 +60,12 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") { } onRun { - spotLeft.brightness.fade(50.percent, 5.seconds) + spotLeft.brightness.fade(20.percent, 5.seconds) spotRight.brightness.fade(100.percent, 5.seconds) } } - step(StepCue.MusicStart("Schau mich mit anderen Augen an", 69.seconds)) { + step(StepCue.MusicStart("Schau mich mit anderen Augen an", 10.minutes)) { actors { -"Bianca / nach rechts" } @@ -84,7 +84,7 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") { } } - step(StepCue.MusicStart("Schau-mich-an-Tanz", 69.seconds)) { + step(StepCue.MusicStart("Schau-mich-an-Tanz", 10.minutes)) { // TODO: Song } } @@ -157,7 +157,7 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") { } scene("Szene 3") { - step(StepCue.MusicStart("Probenatmosphäre", 69.seconds)) { + step(StepCue.MusicStart("Probenatmosphäre", 10.minutes)) { actors { +"David" @@ -337,7 +337,7 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") { FrontLights.all.forEach { it.brightness.fade(25.percent, 20.seconds) } } - step(StepCue.Text("Paula", "Starrt mich nicht so an.", "auf das letzt Wort")) { + step(StepCue.Text("Paula", "Starrt mich nicht so an.", "auf das letzte Wort")) { rightSpotTarget = "Paula" onRun { @@ -379,12 +379,12 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") { actors { -"Paula" -"David" - -"Theaterlehrer" -"Sven" -"Heike" -"Andreas" -"Eva" -"Kathi" + -"Theaterlehrer" } curtainState = CurtainState.CLOSED @@ -398,7 +398,7 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") { } scene("Szene 8") { - step(StepCue.MusicStart("Angstballet", 69.seconds)) { + step(StepCue.MusicStart("Angstballett", 10.minutes)) { onRun { // TODO: Song } diff --git a/src/main/kotlin/de/moritzruth/lampenfieber/act/Second.kt b/src/main/kotlin/de/moritzruth/lampenfieber/act/Second.kt index 63f58dd..e9081af 100644 --- a/src/main/kotlin/de/moritzruth/lampenfieber/act/Second.kt +++ b/src/main/kotlin/de/moritzruth/lampenfieber/act/Second.kt @@ -15,7 +15,7 @@ import kotlin.time.Duration.Companion.seconds fun ShowBuilderContext.secondAct() = act("Zweiter Akt") { scene("Szene 1") { - step(StepCue.MusicStart("Umbaumusik", 69.seconds)) { + step(StepCue.MusicStart("Umbaumusik", 10.minutes)) { } } @@ -160,7 +160,7 @@ fun ShowBuilderContext.secondAct() = act("Zweiter Akt") { } } - step(StepCue.MusicStart("Eine Rolle spielen II", 69.seconds)) { + step(StepCue.MusicStart("Eine Rolle spielen II", 10.minutes)) { // instrumental } diff --git a/src/main/kotlin/de/moritzruth/lampenfieber/act/Third.kt b/src/main/kotlin/de/moritzruth/lampenfieber/act/Third.kt index dfbcaf4..e39fb0c 100644 --- a/src/main/kotlin/de/moritzruth/lampenfieber/act/Third.kt +++ b/src/main/kotlin/de/moritzruth/lampenfieber/act/Third.kt @@ -18,14 +18,7 @@ fun ShowBuilderContext.thirdAct() = act("Dritter Akt") { scene("Szene 1") { step(StepCue.Stub) { actors { - +"Jacob" - +"Andreas" - +"Valentina" - +"Dorina" - +"Luigi" - +"Maria" - +"Ricky" - +"Sandra" + +"Richy" } onRun { @@ -35,26 +28,74 @@ fun ShowBuilderContext.thirdAct() = act("Dritter Akt") { } scene("Szene 2") { - step(StepCue.Stub) { + step(StepCue.Custom("Richy geht ab")) { + actors { + -"Richy" + } + + leftSpotTarget = "David" + + onRun { + FrontLights.all.forEach { it.brightness.fade(25.percent, 6.seconds) } + spotLeft.brightness.fade(100.percent, 5.seconds) + } } - // Licht aus am Ende + step(StepCue.Custom("David spielt zum dritten Mal")) { + actors { + +"Paula / von rechts" + } + + rightSpotTarget = "Paula" + + onRun { + spotRight.brightness.fade(100.percent, 10.seconds) + + Washs.right.pointAtStageCenter() + Washs.right.colorWheelMode.static(CoemarProWash.ColorWheelMode.White) + Washs.right.magenta.static(100.percent) + } + } + + lightStep(StepCue.MusicStart("Wenn du da bist (Klavierversion)", 10.minutes)) { + Washs.right.brightness.fade(100.percent, 15.seconds) + } + + lightStep(StepCue.MusicEnd) { + Washs.right.brightness.off(5.seconds) + } + + step(StepCue.Text("David", "traust du dir das auch zu?")) { + curtainState = CurtainState.CLOSED + + onRun { + FrontLights.all.forEach { it.brightness.off() } + Washs.right.magenta.reset() + + spotLeft.brightness.off(5.seconds) + spotRight.brightness.off(5.seconds) + } + } + + step(StepCue.Light(StepCue.Light.State.OFF, false)) { + actors { + -"David" + -"Paula" + } + + leftSpotTarget = null + rightSpotTarget = null + } } scene("Szene 3") { - step(StepCue.MusicStart("Tischballet", 69.seconds)) { + step(StepCue.MusicStart("Tischballett", 10.minutes)) { actors { +"David" - +"Eva" - +"Gerda" - +"Heike" - +"Kathi" - +"Kerstin" - +"Paula" - +"Sven" - +"Petra" } + curtainState = CurtainState.OPEN + onRun { FrontLights.all.forEach { it.brightness.fade(25.percent, 10.seconds) } @@ -80,20 +121,6 @@ fun ShowBuilderContext.thirdAct() = act("Dritter Akt") { step(StepCue.Text("Gerda", "Ich glaub, wir ziehen ab.")) { actors { - -"Andreas" - -"Dorina" - -"Eva" - -"Gerda" - -"Heike" - -"Jacob" - -"Kerstin" - -"Luigi" - -"Maria" - -"Petra" - -"Ricky" - -"Sandra" - -"Sven" - -"Valentina" } } } @@ -114,12 +141,10 @@ fun ShowBuilderContext.thirdAct() = act("Dritter Akt") { step(StepCue.Text("Kai", "ich bin auf allen Kanälen.")) { actors { - // Der Rest geht ab -"Kai" -"Adrian" -"Paula" -"David" - -"Kathi" } curtainState = CurtainState.CLOSED @@ -132,7 +157,7 @@ fun ShowBuilderContext.thirdAct() = act("Dritter Akt") { } scene("Szene 6") { - step(StepCue.MusicStart("Umbaumusik", 69.seconds)) { + step(StepCue.MusicStart("Umbaumusik", 10.minutes)) { onRun { Tops.both.forEach { it.pointAtStageMiddleOffCenterMarking() diff --git a/src/main/kotlin/de/moritzruth/lampenfieber/device/FogMachine.kt b/src/main/kotlin/de/moritzruth/lampenfieber/device/AdjFogFury3000.kt similarity index 61% rename from src/main/kotlin/de/moritzruth/lampenfieber/device/FogMachine.kt rename to src/main/kotlin/de/moritzruth/lampenfieber/device/AdjFogFury3000.kt index 2680063..022acf1 100644 --- a/src/main/kotlin/de/moritzruth/lampenfieber/device/FogMachine.kt +++ b/src/main/kotlin/de/moritzruth/lampenfieber/device/AdjFogFury3000.kt @@ -7,15 +7,13 @@ import de.moritzruth.theaterdsl.dmx.DmxDataWriter import de.moritzruth.theaterdsl.dmx.DmxValue import kotlinx.collections.immutable.persistentSetOf -class FogMachine(override val firstChannel: DmxAddress) : Device { +class AdjFogFury3000(override val firstChannel: DmxAddress) : Device { override val numberOfChannels = 4u override fun writeDmxData(writer: DmxDataWriter) { - val p = power.getCurrentValue() - writer.writeRaw(if (p.value == 0.0) DmxValue(0u) else DmxValue(70u)) - writer.writePercentage(p) - writer.writeRaw(DmxValue(255u)) // duration = full - writer.writeRaw(DmxValue(0u)) // ignored + writer.writePercentage(power.getCurrentValue()) + writer.writeRaw(DmxValue(0u)) // interval (ignored) + writer.writeRaw(DmxValue(255u)) // duration = constant } val power = PercentageDV() diff --git a/src/main/kotlin/de/moritzruth/lampenfieber/device/Devices.kt b/src/main/kotlin/de/moritzruth/lampenfieber/device/Devices.kt index cf72151..85ed8ae 100644 --- a/src/main/kotlin/de/moritzruth/lampenfieber/device/Devices.kt +++ b/src/main/kotlin/de/moritzruth/lampenfieber/device/Devices.kt @@ -28,7 +28,7 @@ object Washs { val bar = StairvilleTlb(DmxAddress(130u)) val sideLight = StairvilleClb4(DmxAddress(140u)) -val fogMachine = FogMachine(DmxAddress(117u)) +val fogMachine = AdjFogFury3000(DmxAddress(117u)) val devices = persistentSetOf(*FrontLights.all.toTypedArray(), spotLeft, spotRight, *Tops.both.toTypedArray(), *Washs.both.toTypedArray(), bar, sideLight, fogMachine) \ No newline at end of file