diff --git a/remotion/src/folge09/szene3.tsx b/remotion/src/folge09/szene3.tsx
index eb6199f..8c18231 100644
--- a/remotion/src/folge09/szene3.tsx
+++ b/remotion/src/folge09/szene3.tsx
@@ -44,11 +44,13 @@ export const Szene3: React.FC = () => {
<>
-
+ {/* Lulu fühlt mit: staunt beim Plumps, schaut traurig mit Noa, bis Pino Hilfe anbietet; erst bei
+ ihrem eigenen Satz („Hier oben weht ganz viel Wind!“) lacht sie wieder im Wind */}
+ = z.p1.ende ? undefined : f < z.n1.start ? 'lulu_A4_staunen' : 'lulu_B1_traurig'} />
{/* Noa schaut nach links: die Schnur läuft hinter ihr zum Drachen */}
-
+
diff --git a/remotion/src/folge09/teile.tsx b/remotion/src/folge09/teile.tsx
index ea6db8f..75cad58 100644
--- a/remotion/src/folge09/teile.tsx
+++ b/remotion/src/folge09/teile.tsx
@@ -22,8 +22,6 @@ export const C9_UNTEN = 105;
export const c9 = (bilder: number) => (bilder * 30) / 24 / C9_TEMPO;
const MAUL_UNTEN = luluMaulC9(C9_UNTEN);
export const DRACHEN_IM_GRAS = {x: punkt('lulu', PLATZ.lulu, LULU_Y, MAUL_UNTEN.cx, MAUL_UNTEN.cy).x, y: BODEN - 40};
-// In der Pose lulu_A_apfel hält Lulu den Apfel bei 574/193 (Leinwand) – dort hält sie jetzt den Drachen
-export const DRACHEN_IM_MAUL = punkt('lulu', PLATZ.lulu, LULU_Y, 574.5, 193);
// In der Pose noa_A_haende-oben sind die Fäustlinge um 674/218 – der Drachen liegt dazwischen
export const drachenUeberNoa = (noaX: number) => punkt('noa', noaX, BODEN, 674.5, 80); // über dem Kopf, nicht vor dem Gesicht
@@ -82,9 +80,10 @@ export const SchnurUndDrachen: React.FC<{lage: DrachenLage; noaX: number; spiege
);
};
-// Lulu holt den Drachen aus dem Gras und hält ihn mit dem Maul hoch (wie den Apfel in Folge 1):
-// Hals runter (Clip C9 vorwärts), Drachen ins Maul, Hals hoch (Clip rückwärts), dann die Pose
-// lulu_A_apfel – der Drachen liegt genau über dem gemalten Apfel. Die Schnur hält immer Noa.
+// Lulu holt den Drachen aus dem Gras und hält ihn mit dem Maul hoch: Hals runter (Clip C9 vorwärts),
+// Drachen ins Maul, Hals hoch (Clip rückwärts, bleibt auf dem ersten Clipbild stehen). Der Drachen hängt
+// die ganze Zeit an seiner oberen Spitze im Maul. Keine Pose lulu_A_apfel: dort ist der Apfel gemalt.
+// Die Schnur hält immer Noa.
export const hebenPlan = (start: number) => {
const unten = start + c9(C9_UNTEN - C9_START);
const hoch = unten + 10;
@@ -94,12 +93,14 @@ export const hebenPlan = (start: number) => {
export const drachenBeiLulu = (f: number, plan: ReturnType): DrachenLage => {
if (f < plan.unten) return {x: DRACHEN_IM_GRAS.x, y: BODEN - 36, drehung: 90, liegt: true};
- if (f >= plan.oben) return {x: DRACHEN_IM_MAUL.x, y: DRACHEN_IM_MAUL.y + 95, drehung: -15};
- const bild = f < plan.hoch ? C9_UNTEN : C9_UNTEN - ((f - plan.hoch) * 1.25 * 24) / 30;
+ const bild = f < plan.hoch ? C9_UNTEN : Math.max(0, C9_UNTEN - ((f - plan.hoch) * 1.25 * 24) / 30);
const m = luluMaulC9(bild);
const maul = punkt('lulu', PLATZ.lulu, LULU_Y, m.cx, m.cy);
- // am Maul hängt der Drachen an seiner oberen Spitze, also unter dem Maul (nicht vor dem Gesicht)
- return {x: maul.x, y: maul.y + 95, drehung: -15 * Math.min(1, Math.max(0, (f - plan.hoch) / 20))};
+ // Die obere Spitze (42 px über dem Leistenkreuz) steckt im Maul. Beim Hochheben kippt der Drachen
+ // nach vorn (Lulu schaut nach links), damit er ihr Gesicht nicht verdeckt.
+ const w = 35 * Math.min(1, Math.max(0, (f - plan.hoch) / 40));
+ const r = (w * Math.PI) / 180;
+ return {x: maul.x - 40 * Math.sin(r), y: maul.y + 40 * Math.cos(r), drehung: w};
};
// `danach`: was Lulu nach dem Loslassen zeigt ('wind' = Schal-Clip) – nie die Apfel-Pose ohne Drachen!
@@ -109,5 +110,7 @@ export const LuluHebt: React.FC<{plan: ReturnType; danach?: st
if (f < plan.hoch) return ;
if (f < plan.oben) return ;
if (danach === 'wind') return ;
- return danach ? : ;
+ if (danach) return ;
+ // solange sie den Drachen hält: Hals oben, letztes Bild des rückwärts laufenden Clips
+ return ;
};