Wenn es wirklich nur um den einen Fall warm>Nacht vor 23 Uhr geht, würde ich eine Hilfsvariable „manuell“ (boolean) einfügen. Wenn du also vor 23 Uhr von warm auf Nacht schaltest, müsstest du die Hilfsvariable mit aktivieren. Im Wochenplan gibst du als weitere Bedingung an, dass die Hilfsvariable „manuell“ false sein muss. Damit schaltet der Wochenplan dann nicht, wenn manuell aktiv ist. Und du musst die Variable „manuell“ dann noch durch ein zyklisches Ereignis im Zeitraum zwischen 23:00 und 0:00 wieder auf false setzen, damit der Wochenplan danach wieder weiter macht.
Ist vielleicht alles etwas umständlich, aber es könnte funktionieren.
Klingt ja ganz witzig. Wird vermutlich auch funktionieren und eine ähnliche Idee hatte ich auch schon. Führt aber den Wochenplan ad-absurdum. Was ist, wenn ich in zwei Jahren das ganze zwei Stunden später (oder früher) machen möchte?
Stunden hin oder her sollte eigentlich nicht stören.
Auf alle Fälle kommst du um eine Merkervariable nicht umher.
Eine andere Idee wäre ein Ablaufplan, der statt dem Wochenplan zu den 3 Zeiten gestartet wird und dann die Befehle des jeweiligen Modi ausführt. Im Ablaufplan könnte man dann mit wenn…, dann arbeiten.