commit #31
This commit is contained in:
parent
82337e4890
commit
c8c4b6e175
8 changed files with 524 additions and 391 deletions
61
src/main/kotlin/de/moritzruth/lampenfieber/Props.kt
Normal file
61
src/main/kotlin/de/moritzruth/lampenfieber/Props.kt
Normal file
|
@ -0,0 +1,61 @@
|
|||
package de.moritzruth.lampenfieber
|
||||
|
||||
import de.moritzruth.theaterdsl.show.PropPosition
|
||||
import de.moritzruth.theaterdsl.show.PropsBuilderMap
|
||||
|
||||
object PropConfigurations {
|
||||
fun empty(props: PropsBuilderMap) {
|
||||
PropPosition.values().forEach {
|
||||
props[it] = null
|
||||
}
|
||||
}
|
||||
|
||||
fun classroom(props: PropsBuilderMap) {
|
||||
empty(props)
|
||||
props[PropPosition.BACKDROP] = "grüne + bemalte + grüne Rückwand"
|
||||
props[PropPosition.LEFT] = "7 Stühle"
|
||||
props[PropPosition.RIGHT] = "7 Stühle, Plakat"
|
||||
props[PropPosition.PROSCENIUM_LEFT] = "E-Piano mit Stuhl"
|
||||
}
|
||||
|
||||
fun tvRoom(props: PropsBuilderMap) {
|
||||
empty(props)
|
||||
props[PropPosition.BACKDROP] = "2 schwarze Wände"
|
||||
props[PropPosition.RIGHT] = "Sofa"
|
||||
}
|
||||
|
||||
fun casting(props: PropsBuilderMap) {
|
||||
empty(props)
|
||||
props[PropPosition.BACKDROP] = "grüne Wand"
|
||||
props[PropPosition.LEFT] = "grüne Wand"
|
||||
props[PropPosition.CENTER] = "Casting-Schild"
|
||||
props[PropPosition.RIGHT] = "schwarze Wand"
|
||||
props[PropPosition.PROSCENIUM_LEFT] = "E-Piano mit Stuhl"
|
||||
}
|
||||
|
||||
fun calling(props: PropsBuilderMap) {
|
||||
empty(props)
|
||||
props[PropPosition.BACKDROP] = "schwarze Wand"
|
||||
props[PropPosition.LEFT] = "grüne Wand, Stuhl bei Markierung"
|
||||
props[PropPosition.RIGHT] = "grüne Wand, Stuhl bei Markierung"
|
||||
}
|
||||
|
||||
fun bathroom(props: PropsBuilderMap) {
|
||||
empty(props)
|
||||
props[PropPosition.BACKDROP] = "Duschvorhang + Toilette + Toilette + Duschvorhang"
|
||||
props[PropPosition.LEFT] = "Waschbecken, Hocker, Spiegel"
|
||||
props[PropPosition.RIGHT] = "Waschbecken, Hocker, Spiegel"
|
||||
}
|
||||
|
||||
fun richy(props: PropsBuilderMap) {
|
||||
empty(props)
|
||||
props[PropPosition.BACKDROP] = "2 blaue Wände"
|
||||
props[PropPosition.LEFT] = "3 Stühle"
|
||||
props[PropPosition.RIGHT] = "2 Stühle"
|
||||
}
|
||||
|
||||
fun backstage(props: PropsBuilderMap) {
|
||||
empty(props)
|
||||
props[PropPosition.BACKDROP] = "grüne + schwarze + grüne Rückwand"
|
||||
}
|
||||
}
|
|
@ -1,8 +1,8 @@
|
|||
package de.moritzruth.lampenfieber.act
|
||||
|
||||
import de.moritzruth.lampenfieber.PropConfigurations
|
||||
import de.moritzruth.lampenfieber.device.*
|
||||
import de.moritzruth.theaterdsl.show.CurtainState
|
||||
import de.moritzruth.theaterdsl.show.PropPosition
|
||||
import de.moritzruth.theaterdsl.show.ShowBuilderContext
|
||||
import de.moritzruth.theaterdsl.show.StepCue
|
||||
import de.moritzruth.theaterdsl.value.Color
|
||||
|
@ -18,9 +18,7 @@ fun ShowBuilderContext.firstAct() = act("Erster Akt") {
|
|||
@Suppress("DuplicatedCode")
|
||||
scene("Intro") {
|
||||
step(StepCue.MusicStart("Lampenfieber", 5.minutes + 30.seconds)) {
|
||||
props {
|
||||
it[PropPosition.BACKDROP] = "Klassenraum"
|
||||
}
|
||||
props(PropConfigurations::classroom)
|
||||
|
||||
onRun {
|
||||
Washs.both.forEach {
|
||||
|
@ -36,7 +34,6 @@ fun ShowBuilderContext.firstAct() = act("Erster Akt") {
|
|||
Tops.both.forEach { it.startRoomMovement(5.5) }
|
||||
}
|
||||
|
||||
@Suppress("DuplicatedCode")
|
||||
lightStep(StepCue.Custom("Gitarren-Ton")) {
|
||||
launch {
|
||||
delay(500)
|
||||
|
@ -144,7 +141,6 @@ fun ShowBuilderContext.firstAct() = act("Erster Akt") {
|
|||
}
|
||||
|
||||
onRun {
|
||||
// Nebel, rot-orange faden
|
||||
FrontLights.center.forEach { it.brightness.fade(20.percent, 10.seconds) }
|
||||
|
||||
bar.brightness.fade(50.percent, 10.seconds)
|
||||
|
@ -177,8 +173,6 @@ fun ShowBuilderContext.firstAct() = act("Erster Akt") {
|
|||
}
|
||||
|
||||
step(StepCue.MusicEnd) {
|
||||
curtainState = CurtainState.CLOSED
|
||||
|
||||
actors {
|
||||
-"Richy"
|
||||
-"Christine"
|
||||
|
@ -193,10 +187,6 @@ fun ShowBuilderContext.firstAct() = act("Erster Akt") {
|
|||
|
||||
scene("Szene 2") {
|
||||
step(StepCue.Light(StepCue.Light.State.OFF, false)) {
|
||||
props {
|
||||
it[PropPosition.LEFT] = "Klavier mit Hocker"
|
||||
}
|
||||
|
||||
actors {
|
||||
+"David / sitzt am Klavier"
|
||||
+"Klavierlehrerin / steht neben David"
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
package de.moritzruth.lampenfieber.act
|
||||
|
||||
import de.moritzruth.lampenfieber.PropConfigurations
|
||||
import de.moritzruth.lampenfieber.device.*
|
||||
import de.moritzruth.lampenfieber.song.songRichy
|
||||
import de.moritzruth.lampenfieber.song.songSchauMichMit
|
||||
import de.moritzruth.theaterdsl.show.CurtainState
|
||||
import de.moritzruth.theaterdsl.show.PropPosition
|
||||
import de.moritzruth.theaterdsl.show.ShowBuilderContext
|
||||
import de.moritzruth.theaterdsl.show.StepCue
|
||||
import de.moritzruth.theaterdsl.value.Color
|
||||
|
@ -84,109 +86,7 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") {
|
|||
}
|
||||
}
|
||||
|
||||
step(StepCue.MusicStart("Schau mich mit anderen Augen an", 10.minutes)) {
|
||||
actors {
|
||||
-"Bianca / nach rechts"
|
||||
}
|
||||
|
||||
onRun {
|
||||
spotLeft.brightness.off(5.seconds)
|
||||
spotRight.brightness.off(5.seconds)
|
||||
|
||||
sideLight.moveColorsPinkAndBlue()
|
||||
|
||||
Washs.left.brightness.switch(0.percent, 100.percent, 1.seconds, false)
|
||||
Washs.right.brightness.switch(100.percent, 0.percent, 1.seconds, false)
|
||||
|
||||
Tops.both { it.brightness.fade(100.percent, 1.seconds) }
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Bridge")) {
|
||||
bar.color.static(Color(50.degrees))
|
||||
bar.brightness.fade(100.percent, 200.milliseconds)
|
||||
|
||||
sideLight.colors.forEach { it.fade(Color(50.degrees), 100.milliseconds) }
|
||||
|
||||
Washs.both { it.brightness.off() }
|
||||
Tops.both { it.startRoomMovement(2.0) }
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Refrain")) {
|
||||
bar.color.fadeRandomAround(50.degrees, 10.degrees, 2.seconds)
|
||||
bar.brightness.fade(100.percent, 200.milliseconds)
|
||||
|
||||
Tops.both { it.brightness.sine(8.seconds, minimum = 50.percent) }
|
||||
|
||||
sideLight.colors.forEach {
|
||||
launch {
|
||||
val downDuration = 1000.milliseconds
|
||||
val upDuration = 400.milliseconds
|
||||
|
||||
while (isActive) {
|
||||
delay(Random.nextInt(0, 3000).milliseconds)
|
||||
|
||||
it.fade(Color(50.degrees, brightness = 0.percent), downDuration)
|
||||
delay(downDuration)
|
||||
|
||||
it.fade(Color(50.degrees, brightness = 100.percent), upDuration)
|
||||
delay(upDuration)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Strophe (mit dem ersten Wort)")) {
|
||||
val interval = 800.milliseconds
|
||||
|
||||
bar.brightness.switch(0.percent, 100.percent, interval, false)
|
||||
|
||||
sideLight.brightness.switch(100.percent, 0.percent, interval, false)
|
||||
sideLight.colors.forEach { it.static(Color(60.degrees, saturation = 10.percent)) }
|
||||
|
||||
Washs.both { it.strobeSpeed.static(80.percent) }
|
||||
Tops.both { it.brightness.off(200.milliseconds) }
|
||||
}
|
||||
|
||||
// 3:06
|
||||
lightStep(StepCue.Custom("Pause nach »rotiere«")) {
|
||||
bar.brightness.off(500.milliseconds)
|
||||
sideLight.brightness.off(500.milliseconds)
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Refrain")) {
|
||||
sideLight.moveColorsPinkAndBlue()
|
||||
sideLight.brightness.static(100.percent)
|
||||
|
||||
Washs.both { it.brightness.static(100.percent) }
|
||||
Tops.both {
|
||||
it.startRoomMovement(8.0)
|
||||
it.brightness.static(100.percent)
|
||||
}
|
||||
}
|
||||
|
||||
step(StepCue.MusicEnd) {
|
||||
actors {
|
||||
-"Tina / nach links"
|
||||
-"Sandra / nach rechts"
|
||||
}
|
||||
|
||||
onRun {
|
||||
sideLight.brightness.off(500.milliseconds)
|
||||
|
||||
Washs.both {
|
||||
it.brightness.off(500.milliseconds)
|
||||
it.strobeSpeed.off()
|
||||
it.cyan.off()
|
||||
it.magenta.off()
|
||||
}
|
||||
|
||||
Tops.both {
|
||||
it.pointAtStageMiddleSingleCenterMarking()
|
||||
it.brightness.off(500.milliseconds)
|
||||
}
|
||||
}
|
||||
}
|
||||
songSchauMichMit()
|
||||
|
||||
// Schau-mich-an-Tanz entfällt
|
||||
}
|
||||
|
@ -197,6 +97,8 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") {
|
|||
}
|
||||
|
||||
step(StepCue.Curtain(CurtainState.CLOSED, false)) {
|
||||
props(PropConfigurations::richy)
|
||||
|
||||
actors {
|
||||
+"Tina / von der linken Treppe"
|
||||
+"Sandra / von der rechten Treppe"
|
||||
|
@ -313,20 +215,16 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") {
|
|||
spotRight.brightness.fade(25.percent, 10.seconds)
|
||||
|
||||
Washs.both.forEach { it.brightness.fade(75.percent, 15.seconds) }
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nach etwa einer Minute")) {
|
||||
launch {
|
||||
delay(1.minutes)
|
||||
Washs.both.forEach { it.brightness.fade(100.percent, 20.seconds) }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
scene("Szene 5") {
|
||||
step(StepCue.MusicEnd) {
|
||||
props {
|
||||
it[PropPosition.LEFT] = "Zwei Stühle"
|
||||
it[PropPosition.RIGHT] = "Zwei Stühle"
|
||||
}
|
||||
|
||||
actors {
|
||||
+"Richy"
|
||||
+"Sandra"
|
||||
|
@ -346,137 +244,13 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") {
|
|||
}
|
||||
}
|
||||
|
||||
step(StepCue.MusicStart("Richy", 3.minutes)) {
|
||||
onRun {
|
||||
Washs.both {
|
||||
it.magenta.static(0.percent)
|
||||
it.pointAtCeiling()
|
||||
it.beamAngle.fade(100.percent, 20.seconds, start = 0.percent)
|
||||
it.brightness.fade(100.percent, 10.seconds)
|
||||
}
|
||||
|
||||
FrontLights.all { it.brightness.fade(0.percent, 30.seconds) }
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Text("Mädchen", "Ach, ist es nicht fürchterlich")) {
|
||||
Washs.both.forEach {
|
||||
it.pointAtGuests()
|
||||
it.brightness.off(1.seconds)
|
||||
}
|
||||
}
|
||||
|
||||
// 0:40
|
||||
lightStep(StepCue.Custom("Schlagzeug-Einsatz")) {
|
||||
Washs.both.forEach {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(50.percent)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Takt-Anfang")) {
|
||||
Washs.both.forEach {
|
||||
it.strobeSpeed.static(0.percent)
|
||||
it.pointAtCeiling()
|
||||
}
|
||||
|
||||
Washs.left.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, false))
|
||||
Washs.right.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, true))
|
||||
}
|
||||
|
||||
// 1:00
|
||||
lightStep(StepCue.Custom("Crash-Becken")) {
|
||||
Washs.both.forEach { it.brightness.off(200.milliseconds) }
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("+2 Takte")) {
|
||||
bar.brightness.sine(4.seconds, 20.percent, 50.percent)
|
||||
bar.color.static(Color(40.degrees, 25.percent))
|
||||
|
||||
Washs.both {
|
||||
it.brightness.fade(100.percent, 200.milliseconds)
|
||||
it.beamAngle.sine(4.seconds, start = 100.percent)
|
||||
}
|
||||
}
|
||||
|
||||
// 1:24
|
||||
lightStep(StepCue.Custom("Crash-Becken")) {
|
||||
Washs.both { it.brightness.off(200.seconds) }
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("+1 Takt")) {
|
||||
Washs.both {
|
||||
it.pointAtGuests()
|
||||
it.beamAngle.fade(100.percent, 500.milliseconds)
|
||||
it.colorWheelMode.static(CoemarProWash.ColorWheelMode.WarmWhite)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Schlagzeug-Einsatz")) {
|
||||
Washs.both {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(50.percent)
|
||||
}
|
||||
}
|
||||
|
||||
// 1:28
|
||||
lightStep(StepCue.Custom("Nächster Takt-Anfang")) {
|
||||
Washs.both {
|
||||
it.brightness.pulseOnce(200.milliseconds, 1.seconds)
|
||||
it.strobeSpeed.static(0.percent)
|
||||
}
|
||||
|
||||
bar.brightness.pulseOnce(200.milliseconds, 1.seconds)
|
||||
}
|
||||
|
||||
// 1:51
|
||||
lightStep(StepCue.Custom("Schlagzeug-Einsatz")) {
|
||||
Washs.both {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(50.percent)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Takt-Anfang")) {
|
||||
Washs.both {
|
||||
it.strobeSpeed.static(0.percent)
|
||||
it.pointAtCeiling()
|
||||
}
|
||||
|
||||
Washs.left.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, false))
|
||||
Washs.right.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, true))
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Hi-Hat-Kuppe wird malträtiert")) {
|
||||
bar.brightness.sine(2.seconds, 20.percent, 50.percent)
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Breakdown am Ende")) {
|
||||
bar.brightness.fade(100.percent, 200.milliseconds)
|
||||
bar.color.fade(Color(0.degrees), 200.milliseconds)
|
||||
|
||||
FrontLights.all { it.brightness.off() }
|
||||
Washs.both { it.brightness.off(200.milliseconds) }
|
||||
|
||||
launch {
|
||||
delay(200)
|
||||
Washs.both { it.colorWheelMode.static(CoemarProWash.ColorWheelMode.WarmWhite) }
|
||||
}
|
||||
}
|
||||
|
||||
step(StepCue.Custom("Schlussschlag")) {
|
||||
curtainState = CurtainState.CLOSED
|
||||
|
||||
onRun {
|
||||
bar.brightness.pulseOnce(200.milliseconds, 1.seconds)
|
||||
FrontLights.all { it.brightness.pulseOnce(0.milliseconds, 3.seconds) }
|
||||
Washs.both { it.brightness.pulseOnce(0.milliseconds, 1.seconds) }
|
||||
}
|
||||
}
|
||||
songRichy()
|
||||
}
|
||||
|
||||
scene("Szene 6") {
|
||||
step(StepCue.MusicEnd) {
|
||||
props(PropConfigurations::classroom)
|
||||
|
||||
actors {
|
||||
-"Richy"
|
||||
-"Sandra"
|
||||
|
@ -484,6 +258,8 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") {
|
|||
-"Eva"
|
||||
}
|
||||
|
||||
curtainState = CurtainState.CLOSED
|
||||
|
||||
rightSpotTarget = "Paula & David (rechts)"
|
||||
|
||||
onRun {
|
||||
|
@ -597,6 +373,8 @@ fun ShowBuilderContext.fourthAct() = act("Vierter Akt") {
|
|||
}
|
||||
|
||||
step(StepCue.MusicEnd) {
|
||||
props(PropConfigurations::backstage)
|
||||
|
||||
actors {
|
||||
-"Paula"
|
||||
-"David"
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package de.moritzruth.lampenfieber.act
|
||||
|
||||
import de.moritzruth.lampenfieber.PropConfigurations
|
||||
import de.moritzruth.lampenfieber.device.*
|
||||
import de.moritzruth.theaterdsl.show.CurtainState
|
||||
import de.moritzruth.theaterdsl.show.ShowBuilderContext
|
||||
|
@ -16,6 +17,7 @@ import kotlin.time.Duration.Companion.seconds
|
|||
fun ShowBuilderContext.secondAct() = act("Zweiter Akt") {
|
||||
scene("Szene 1") {
|
||||
step(StepCue.MusicStart("Umbaumusik", 10.minutes)) {
|
||||
props(PropConfigurations::tvRoom)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,15 +1,14 @@
|
|||
package de.moritzruth.lampenfieber.act
|
||||
|
||||
import de.moritzruth.lampenfieber.PropConfigurations
|
||||
import de.moritzruth.lampenfieber.device.*
|
||||
import de.moritzruth.lampenfieber.song.songRopeSkippingTanz
|
||||
import de.moritzruth.theaterdsl.show.CurtainState
|
||||
import de.moritzruth.theaterdsl.show.ShowBuilderContext
|
||||
import de.moritzruth.theaterdsl.show.StepCue
|
||||
import de.moritzruth.theaterdsl.value.Color
|
||||
import de.moritzruth.theaterdsl.value.degrees
|
||||
import de.moritzruth.theaterdsl.value.percent
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.launch
|
||||
import kotlin.time.Duration.Companion.milliseconds
|
||||
import kotlin.time.Duration.Companion.minutes
|
||||
import kotlin.time.Duration.Companion.seconds
|
||||
|
||||
|
@ -17,8 +16,13 @@ import kotlin.time.Duration.Companion.seconds
|
|||
fun ShowBuilderContext.thirdAct() = act("Dritter Akt") {
|
||||
scene("Szene 1") {
|
||||
step(StepCue.Stub) {
|
||||
// TODO: Alles, was hier passiert.
|
||||
|
||||
props(PropConfigurations::casting)
|
||||
|
||||
actors {
|
||||
+"Richy"
|
||||
+"David"
|
||||
}
|
||||
|
||||
onRun {
|
||||
|
@ -77,7 +81,9 @@ fun ShowBuilderContext.thirdAct() = act("Dritter Akt") {
|
|||
}
|
||||
}
|
||||
|
||||
step(StepCue.Light(StepCue.Light.State.OFF, false)) {
|
||||
step(StepCue.Curtain(CurtainState.CLOSED, false)) {
|
||||
props(PropConfigurations::classroom)
|
||||
|
||||
actors {
|
||||
-"David"
|
||||
-"Paula"
|
||||
|
@ -92,6 +98,7 @@ fun ShowBuilderContext.thirdAct() = act("Dritter Akt") {
|
|||
step(StepCue.MusicStart("Tischballett", 10.minutes)) {
|
||||
actors {
|
||||
+"David"
|
||||
+"Paula"
|
||||
}
|
||||
|
||||
curtainState = CurtainState.OPEN
|
||||
|
@ -158,6 +165,8 @@ fun ShowBuilderContext.thirdAct() = act("Dritter Akt") {
|
|||
|
||||
scene("Szene 6") {
|
||||
step(StepCue.MusicStart("Umbaumusik", 10.minutes)) {
|
||||
props(PropConfigurations::calling)
|
||||
|
||||
onRun {
|
||||
Tops.both.forEach {
|
||||
it.pointAtStageMiddleOffCenterMarking()
|
||||
|
@ -168,14 +177,13 @@ fun ShowBuilderContext.thirdAct() = act("Dritter Akt") {
|
|||
|
||||
step(StepCue.MusicEnd) {
|
||||
actors {
|
||||
+"Kathi / steht links bei Markierung"
|
||||
+"Maria / steht rechts bei Markierung"
|
||||
+"Kathi / sitzt links"
|
||||
+"Maria / sitzt rechts"
|
||||
}
|
||||
|
||||
curtainState = CurtainState.OPEN
|
||||
|
||||
onRun {
|
||||
// irgendwann kommt Musik
|
||||
Tops.left.brightness.fade(100.percent, 3.seconds)
|
||||
}
|
||||
}
|
||||
|
@ -184,138 +192,7 @@ fun ShowBuilderContext.thirdAct() = act("Dritter Akt") {
|
|||
Tops.right.brightness.fade(100.percent, 3.seconds)
|
||||
}
|
||||
|
||||
step(StepCue.MusicStart("Rope-Skipping-Tanz", 3.minutes)) {
|
||||
onRun {
|
||||
Washs.both.forEach {
|
||||
it.colorWheelMode.static(CoemarProWash.ColorWheelMode.WarmWhite)
|
||||
it.beamAngle.static(0.percent)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Erster Klavier-Ton")) {
|
||||
Washs.both.forEach {
|
||||
it.beamAngle.fade(100.percent, 500.milliseconds)
|
||||
it.brightness.pulseOnce(200.milliseconds, 1300.milliseconds)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Klavier-Ton")) {
|
||||
Washs.both.forEach {
|
||||
it.beamAngle.sine(6.seconds)
|
||||
it.brightness.pulseOnce(100.milliseconds, 500.milliseconds)
|
||||
}
|
||||
}
|
||||
|
||||
repeat(10) {
|
||||
lightStep(StepCue.Custom("Nächster Klavier-Ton")) {
|
||||
Washs.both.forEach { it.brightness.pulseOnce(100.milliseconds, 500.milliseconds) }
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Klavier-Ton")) {
|
||||
Washs.both.forEach {
|
||||
it.brightness.fade(100.percent, 200.milliseconds)
|
||||
it.beamAngle.fade(0.percent, 200.milliseconds)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Klavier-Ton")) {
|
||||
Washs.left.beamAngle.sine(2.seconds, start = 0.percent)
|
||||
Washs.right.beamAngle.sine(2.seconds, start = 100.percent)
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("5× gleicher Klavier-Ton")) {
|
||||
Washs.both.forEach {
|
||||
it.pointAtGuests()
|
||||
it.beamAngle.fade(100.percent, 500.milliseconds)
|
||||
it.brightness.fade(0.percent, 1.seconds)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Schlagzeug-Einsatz")) {
|
||||
Washs.both.forEach {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(50.percent)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Takt-Anfang")) {
|
||||
Washs.both.forEach {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(0.percent)
|
||||
it.pointAtCeiling()
|
||||
}
|
||||
|
||||
Washs.left.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, false))
|
||||
Washs.right.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, true))
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Crash-Becken, Klavier-Solo")) {
|
||||
Washs.both.forEach { it.brightness.off(200.milliseconds) }
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("+2 Takte")) {
|
||||
FrontLights.all.forEach { it.brightness.fade(50.percent, 30.seconds) }
|
||||
bar.brightness.sine(4.seconds, 20.percent, 50.percent)
|
||||
bar.color.static(Color(40.degrees, 25.percent))
|
||||
|
||||
Washs.both.forEach {
|
||||
it.brightness.fade(100.percent, 200.milliseconds)
|
||||
it.beamAngle.sine(4.seconds, start = 100.percent)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Crash-Becken, Klavier-Solo")) {
|
||||
Washs.both.forEach { it.brightness.fade(0.percent, 200.seconds) }
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("+1 Takt")) {
|
||||
Washs.both.forEach {
|
||||
it.pointAtGuests()
|
||||
it.beamAngle.fade(100.percent, 500.milliseconds)
|
||||
it.colorWheelMode.static(CoemarProWash.ColorWheelMode.WarmWhite)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Schlagzeug-Einsatz")) {
|
||||
Washs.both.forEach {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(50.percent)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Takt-Anfang")) {
|
||||
Washs.both.forEach {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(0.percent)
|
||||
it.pointAtCeiling()
|
||||
}
|
||||
|
||||
Washs.left.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, false))
|
||||
Washs.right.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, true))
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Hi-Hat-Kuppe wird malträtiert")) {
|
||||
bar.brightness.sine(2.seconds, 20.percent, 50.percent)
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Breakdown am Ende")) {
|
||||
bar.brightness.fade(25.percent, 200.milliseconds)
|
||||
FrontLights.all.forEach { it.brightness.off() }
|
||||
Washs.both.forEach { it.brightness.off(200.milliseconds) }
|
||||
|
||||
launch {
|
||||
delay(200)
|
||||
Washs.both.forEach { it.colorWheelMode.static(CoemarProWash.ColorWheelMode.WarmWhite) }
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Schlussschlag")) {
|
||||
bar.brightness.pulseOnce(200.milliseconds, 1.seconds)
|
||||
FrontLights.all.forEach { it.brightness.pulseOnce(0.milliseconds, 1.seconds) }
|
||||
Washs.both.forEach { it.brightness.pulseOnce(0.milliseconds, 1.seconds) }
|
||||
}
|
||||
songRopeSkippingTanz()
|
||||
}
|
||||
|
||||
scene("Szene 7") {
|
||||
|
@ -332,7 +209,7 @@ fun ShowBuilderContext.thirdAct() = act("Dritter Akt") {
|
|||
}
|
||||
|
||||
onRun {
|
||||
FrontLights.all.forEach { it.brightness.fade(50.percent, 8.seconds) }
|
||||
FrontLights.all.forEach { it.brightness.fade(75.percent, 8.seconds) }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -401,6 +278,8 @@ fun ShowBuilderContext.thirdAct() = act("Dritter Akt") {
|
|||
}
|
||||
|
||||
step(StepCue.MusicEnd) {
|
||||
props(PropConfigurations::bathroom)
|
||||
|
||||
actors {
|
||||
-"Paula"
|
||||
-"Maria"
|
||||
|
|
149
src/main/kotlin/de/moritzruth/lampenfieber/song/Richy.kt
Normal file
149
src/main/kotlin/de/moritzruth/lampenfieber/song/Richy.kt
Normal file
|
@ -0,0 +1,149 @@
|
|||
package de.moritzruth.lampenfieber.song
|
||||
|
||||
import de.moritzruth.lampenfieber.device.CoemarProWash
|
||||
import de.moritzruth.lampenfieber.device.FrontLights
|
||||
import de.moritzruth.lampenfieber.device.Washs
|
||||
import de.moritzruth.lampenfieber.device.bar
|
||||
import de.moritzruth.theaterdsl.show.CurtainState
|
||||
import de.moritzruth.theaterdsl.show.SceneBuilderContext
|
||||
import de.moritzruth.theaterdsl.show.StepCue
|
||||
import de.moritzruth.theaterdsl.value.Color
|
||||
import de.moritzruth.theaterdsl.value.degrees
|
||||
import de.moritzruth.theaterdsl.value.percent
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.launch
|
||||
import kotlin.time.Duration.Companion.milliseconds
|
||||
import kotlin.time.Duration.Companion.minutes
|
||||
import kotlin.time.Duration.Companion.seconds
|
||||
|
||||
fun SceneBuilderContext.songRichy() {
|
||||
step(StepCue.MusicStart("Richy", 3.minutes)) {
|
||||
onRun {
|
||||
Washs.both {
|
||||
it.magenta.static(0.percent)
|
||||
it.pointAtCeiling()
|
||||
it.beamAngle.fade(100.percent, 20.seconds, start = 0.percent)
|
||||
it.brightness.fade(100.percent, 10.seconds)
|
||||
}
|
||||
|
||||
FrontLights.all { it.brightness.fade(0.percent, 30.seconds) }
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Text("Mädchen", "Ach, ist es nicht fürchterlich")) {
|
||||
Washs.both.forEach {
|
||||
it.pointAtGuests()
|
||||
it.brightness.off(1.seconds)
|
||||
}
|
||||
}
|
||||
|
||||
// 0:40
|
||||
lightStep(StepCue.Custom("Schlagzeug-Einsatz")) {
|
||||
Washs.both.forEach {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(50.percent)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Takt-Anfang")) {
|
||||
Washs.both.forEach {
|
||||
it.strobeSpeed.static(0.percent)
|
||||
it.pointAtCeiling()
|
||||
}
|
||||
|
||||
Washs.left.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, false))
|
||||
Washs.right.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, true))
|
||||
}
|
||||
|
||||
// 1:00
|
||||
lightStep(StepCue.Custom("Crash-Becken")) {
|
||||
Washs.both.forEach { it.brightness.off(200.milliseconds) }
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("+2 Takte")) {
|
||||
bar.brightness.sine(4.seconds, 20.percent, 50.percent)
|
||||
bar.color.static(Color(40.degrees, 25.percent))
|
||||
|
||||
Washs.both {
|
||||
it.brightness.fade(100.percent, 200.milliseconds)
|
||||
it.beamAngle.sine(4.seconds, start = 100.percent)
|
||||
}
|
||||
}
|
||||
|
||||
// 1:24
|
||||
lightStep(StepCue.Custom("Crash-Becken")) {
|
||||
Washs.both { it.brightness.off(200.seconds) }
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("+1 Takt")) {
|
||||
Washs.both {
|
||||
it.pointAtGuests()
|
||||
it.beamAngle.fade(100.percent, 500.milliseconds)
|
||||
it.colorWheelMode.static(CoemarProWash.ColorWheelMode.WarmWhite)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Schlagzeug-Einsatz")) {
|
||||
Washs.both {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(50.percent)
|
||||
}
|
||||
}
|
||||
|
||||
// 1:28
|
||||
lightStep(StepCue.Custom("Nächster Takt-Anfang")) {
|
||||
Washs.both {
|
||||
it.brightness.pulseOnce(200.milliseconds, 1.seconds)
|
||||
it.strobeSpeed.static(0.percent)
|
||||
}
|
||||
|
||||
bar.brightness.pulseOnce(200.milliseconds, 1.seconds)
|
||||
}
|
||||
|
||||
// 1:51
|
||||
lightStep(StepCue.Custom("Schlagzeug-Einsatz")) {
|
||||
Washs.both {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(50.percent)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Takt-Anfang")) {
|
||||
Washs.both {
|
||||
it.strobeSpeed.static(0.percent)
|
||||
it.pointAtCeiling()
|
||||
}
|
||||
|
||||
Washs.left.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, false))
|
||||
Washs.right.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, true))
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Hi-Hat-Kuppe wird malträtiert")) {
|
||||
bar.brightness.sine(2.seconds, 20.percent, 50.percent)
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Breakdown am Ende")) {
|
||||
bar.brightness.fade(100.percent, 200.milliseconds)
|
||||
bar.color.fade(Color(0.degrees), 200.milliseconds)
|
||||
|
||||
FrontLights.all { it.brightness.off() }
|
||||
Washs.both { it.brightness.off(200.milliseconds) }
|
||||
|
||||
launch {
|
||||
delay(200)
|
||||
Washs.both { it.colorWheelMode.static(CoemarProWash.ColorWheelMode.WarmWhite) }
|
||||
}
|
||||
}
|
||||
|
||||
step(StepCue.Custom("Schlussschlag")) {
|
||||
curtainState = CurtainState.CLOSED
|
||||
|
||||
onRun {
|
||||
bar.brightness.pulseOnce(200.milliseconds, 1.seconds)
|
||||
FrontLights.all { it.brightness.pulseOnce(0.milliseconds, 3.seconds) }
|
||||
Washs.both { it.brightness.pulseOnce(0.milliseconds, 1.seconds) }
|
||||
}
|
||||
}
|
||||
|
||||
// + Ende in der nächsten Szene
|
||||
}
|
|
@ -0,0 +1,153 @@
|
|||
package de.moritzruth.lampenfieber.song
|
||||
|
||||
import de.moritzruth.lampenfieber.device.CoemarProWash
|
||||
import de.moritzruth.lampenfieber.device.FrontLights
|
||||
import de.moritzruth.lampenfieber.device.Washs
|
||||
import de.moritzruth.lampenfieber.device.bar
|
||||
import de.moritzruth.theaterdsl.show.SceneBuilderContext
|
||||
import de.moritzruth.theaterdsl.show.StepCue
|
||||
import de.moritzruth.theaterdsl.value.Color
|
||||
import de.moritzruth.theaterdsl.value.degrees
|
||||
import de.moritzruth.theaterdsl.value.percent
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.launch
|
||||
import kotlin.time.Duration.Companion.milliseconds
|
||||
import kotlin.time.Duration.Companion.minutes
|
||||
import kotlin.time.Duration.Companion.seconds
|
||||
|
||||
fun SceneBuilderContext.songRopeSkippingTanz() {
|
||||
step(StepCue.MusicStart("Rope-Skipping-Tanz", 3.minutes)) {
|
||||
onRun {
|
||||
Washs.both.forEach {
|
||||
it.colorWheelMode.static(CoemarProWash.ColorWheelMode.WarmWhite)
|
||||
it.beamAngle.static(0.percent)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Erster Klavier-Ton")) {
|
||||
Washs.both.forEach {
|
||||
it.beamAngle.fade(100.percent, 500.milliseconds)
|
||||
it.brightness.pulseOnce(200.milliseconds, 1300.milliseconds)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Klavier-Ton")) {
|
||||
Washs.both.forEach {
|
||||
it.beamAngle.sine(6.seconds)
|
||||
it.brightness.pulseOnce(100.milliseconds, 500.milliseconds)
|
||||
}
|
||||
}
|
||||
|
||||
repeat(10) {
|
||||
lightStep(StepCue.Custom("Nächster Klavier-Ton")) {
|
||||
Washs.both.forEach { it.brightness.pulseOnce(100.milliseconds, 500.milliseconds) }
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Klavier-Ton")) {
|
||||
Washs.both.forEach {
|
||||
it.brightness.fade(100.percent, 200.milliseconds)
|
||||
it.beamAngle.fade(0.percent, 200.milliseconds)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Klavier-Ton")) {
|
||||
Washs.left.beamAngle.sine(2.seconds, start = 0.percent)
|
||||
Washs.right.beamAngle.sine(2.seconds, start = 100.percent)
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("5× gleicher Klavier-Ton")) {
|
||||
Washs.both.forEach {
|
||||
it.pointAtGuests()
|
||||
it.beamAngle.fade(100.percent, 500.milliseconds)
|
||||
it.brightness.fade(0.percent, 1.seconds)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Schlagzeug-Einsatz")) {
|
||||
Washs.both.forEach {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(50.percent)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Takt-Anfang")) {
|
||||
Washs.both.forEach {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(0.percent)
|
||||
it.pointAtCeiling()
|
||||
}
|
||||
|
||||
Washs.left.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, false))
|
||||
Washs.right.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, true))
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Crash-Becken, Klavier-Solo")) {
|
||||
Washs.both.forEach { it.brightness.off(200.milliseconds) }
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("+2 Takte")) {
|
||||
FrontLights.all.forEach { it.brightness.fade(50.percent, 30.seconds) }
|
||||
bar.brightness.sine(4.seconds, 20.percent, 50.percent)
|
||||
bar.color.static(Color(40.degrees, 25.percent))
|
||||
|
||||
Washs.both.forEach {
|
||||
it.brightness.fade(100.percent, 200.milliseconds)
|
||||
it.beamAngle.sine(4.seconds, start = 100.percent)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Crash-Becken, Klavier-Solo")) {
|
||||
Washs.both.forEach { it.brightness.fade(0.percent, 200.seconds) }
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("+1 Takt")) {
|
||||
Washs.both.forEach {
|
||||
it.pointAtGuests()
|
||||
it.beamAngle.fade(100.percent, 500.milliseconds)
|
||||
it.colorWheelMode.static(CoemarProWash.ColorWheelMode.WarmWhite)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Schlagzeug-Einsatz")) {
|
||||
Washs.both.forEach {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(50.percent)
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Nächster Takt-Anfang")) {
|
||||
Washs.both.forEach {
|
||||
it.brightness.static(100.percent)
|
||||
it.strobeSpeed.static(0.percent)
|
||||
it.pointAtCeiling()
|
||||
}
|
||||
|
||||
Washs.left.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, false))
|
||||
Washs.right.colorWheelMode.static(CoemarProWash.ColorWheelMode.Rotate(30.percent, true))
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Hi-Hat-Kuppe wird malträtiert")) {
|
||||
bar.brightness.sine(2.seconds, 20.percent, 50.percent)
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Breakdown am Ende")) {
|
||||
bar.brightness.fade(25.percent, 200.milliseconds)
|
||||
FrontLights.all.forEach { it.brightness.off() }
|
||||
Washs.both.forEach { it.brightness.off(200.milliseconds) }
|
||||
|
||||
launch {
|
||||
delay(200)
|
||||
Washs.both.forEach { it.colorWheelMode.static(CoemarProWash.ColorWheelMode.WarmWhite) }
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Schlussschlag")) {
|
||||
bar.brightness.pulseOnce(200.milliseconds, 1.seconds)
|
||||
FrontLights.all.forEach { it.brightness.pulseOnce(0.milliseconds, 1.seconds) }
|
||||
Washs.both.forEach { it.brightness.pulseOnce(0.milliseconds, 1.seconds) }
|
||||
}
|
||||
|
||||
// + Ende in der nächsten Szene
|
||||
}
|
121
src/main/kotlin/de/moritzruth/lampenfieber/song/SchauMichMit.kt
Normal file
121
src/main/kotlin/de/moritzruth/lampenfieber/song/SchauMichMit.kt
Normal file
|
@ -0,0 +1,121 @@
|
|||
package de.moritzruth.lampenfieber.song
|
||||
|
||||
import de.moritzruth.lampenfieber.device.*
|
||||
import de.moritzruth.theaterdsl.show.SceneBuilderContext
|
||||
import de.moritzruth.theaterdsl.show.StepCue
|
||||
import de.moritzruth.theaterdsl.value.Color
|
||||
import de.moritzruth.theaterdsl.value.degrees
|
||||
import de.moritzruth.theaterdsl.value.percent
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.isActive
|
||||
import kotlinx.coroutines.launch
|
||||
import kotlin.random.Random
|
||||
import kotlin.time.Duration.Companion.milliseconds
|
||||
import kotlin.time.Duration.Companion.minutes
|
||||
import kotlin.time.Duration.Companion.seconds
|
||||
|
||||
fun SceneBuilderContext.songSchauMichMit() {
|
||||
step(StepCue.MusicStart("Schau mich mit anderen Augen an", 10.minutes)) {
|
||||
actors {
|
||||
-"Bianca / nach rechts"
|
||||
}
|
||||
|
||||
onRun {
|
||||
spotLeft.brightness.off(5.seconds)
|
||||
spotRight.brightness.off(5.seconds)
|
||||
|
||||
sideLight.moveColorsPinkAndBlue()
|
||||
|
||||
Washs.left.brightness.switch(0.percent, 100.percent, 1.seconds, false)
|
||||
Washs.right.brightness.switch(100.percent, 0.percent, 1.seconds, false)
|
||||
|
||||
Tops.both { it.brightness.fade(100.percent, 1.seconds) }
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Bridge")) {
|
||||
bar.color.static(Color(50.degrees))
|
||||
bar.brightness.fade(100.percent, 200.milliseconds)
|
||||
|
||||
sideLight.colors.forEach { it.fade(Color(50.degrees), 100.milliseconds) }
|
||||
|
||||
Washs.both { it.brightness.off() }
|
||||
Tops.both { it.startRoomMovement(2.0) }
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Refrain")) {
|
||||
bar.color.fadeRandomAround(50.degrees, 10.degrees, 2.seconds)
|
||||
bar.brightness.fade(100.percent, 200.milliseconds)
|
||||
|
||||
Tops.both { it.brightness.sine(8.seconds, minimum = 50.percent) }
|
||||
|
||||
sideLight.colors.forEach {
|
||||
launch {
|
||||
val downDuration = 1000.milliseconds
|
||||
val upDuration = 400.milliseconds
|
||||
|
||||
while (isActive) {
|
||||
delay(Random.nextInt(0, 3000).milliseconds)
|
||||
|
||||
it.fade(Color(50.degrees, brightness = 0.percent), downDuration)
|
||||
delay(downDuration)
|
||||
|
||||
it.fade(Color(50.degrees, brightness = 100.percent), upDuration)
|
||||
delay(upDuration)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Strophe (mit dem ersten Wort)")) {
|
||||
val interval = 800.milliseconds
|
||||
|
||||
bar.brightness.switch(0.percent, 100.percent, interval, false)
|
||||
|
||||
sideLight.brightness.switch(100.percent, 0.percent, interval, false)
|
||||
sideLight.colors.forEach { it.static(Color(60.degrees, saturation = 10.percent)) }
|
||||
|
||||
Washs.both { it.strobeSpeed.static(80.percent) }
|
||||
Tops.both { it.brightness.off(200.milliseconds) }
|
||||
}
|
||||
|
||||
// 3:06
|
||||
lightStep(StepCue.Custom("Pause nach »rotiere«")) {
|
||||
bar.brightness.off(500.milliseconds)
|
||||
sideLight.brightness.off(500.milliseconds)
|
||||
}
|
||||
|
||||
lightStep(StepCue.Custom("Refrain")) {
|
||||
sideLight.moveColorsPinkAndBlue()
|
||||
sideLight.brightness.static(100.percent)
|
||||
|
||||
Washs.both { it.brightness.static(100.percent) }
|
||||
Tops.both {
|
||||
it.startRoomMovement(8.0)
|
||||
it.brightness.static(100.percent)
|
||||
}
|
||||
}
|
||||
|
||||
step(StepCue.MusicEnd) {
|
||||
actors {
|
||||
-"Tina / nach links"
|
||||
-"Sandra / nach rechts"
|
||||
}
|
||||
|
||||
onRun {
|
||||
sideLight.brightness.off(500.milliseconds)
|
||||
|
||||
Washs.both {
|
||||
it.brightness.off(500.milliseconds)
|
||||
it.strobeSpeed.off()
|
||||
it.cyan.off()
|
||||
it.magenta.off()
|
||||
}
|
||||
|
||||
Tops.both {
|
||||
it.pointAtStageMiddleSingleCenterMarking()
|
||||
it.brightness.off(500.milliseconds)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue