101 lines
6.5 KiB
HTML
101 lines
6.5 KiB
HTML
<!doctype html>
|
|
<html><head><meta charset="UTF-8"/>
|
|
<title>Strike Zone — The Moment the Arc Strikes</title>
|
|
<meta property="og:type" content="website">
|
|
<meta property="og:title" content="Strike Zone — The Moment the Arc Strikes">
|
|
<meta property="og:description" content="The Strike Zone Tip-to-workpiece gap: 1.5mm ± 0.1 Shielding gas: 100% Ar Ionization begins Voltage spike: 20V → 12V Current rise: 0A → 120A in 0.03s Arc…">
|
|
<meta property="og:url" content="https://bernardo-zubko.4ort.net/">
|
|
<meta name="twitter:card" content="summary">
|
|
<meta name="description" content="The Strike Zone Tip-to-workpiece gap: 1.5mm ± 0.1 Shielding gas: 100% Ar Ionization begins Voltage spike: 20V → 12V Current rise: 0A → 120A in 0.03s Arc…">
|
|
<script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
|
|
<style>
|
|
body{margin:0;background:#0a0a0a;color:#e8e8e8;font-family:"IBM Plex Mono",monospace}
|
|
#root{position:relative;width:1920px;height:1080px;overflow:hidden}
|
|
.clip{position:absolute;inset:0;display:grid;place-items:center}
|
|
.scene-text{font-size:56px;line-height:1.2;text-align:center;opacity:0;transform:translateY(40px)}
|
|
.arc-core{width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,#ff4d00,#ff8c00,#ffcc66,transparent);opacity:0;filter:blur(2px)}
|
|
.shield-ring{position:absolute;width:600px;height:600px;border:8px solid rgba(0,255,255,0.3);border-radius:50%;opacity:0}
|
|
.gas-flow{position:absolute;width:100%;height:100%;background:linear-gradient(180deg,rgba(0,255,255,0.15) 0%,transparent 30%);opacity:0}
|
|
.data-line{position:absolute;left:120px;top:120px;font-size:24px;color:#00ffff;opacity:0}
|
|
.data-line.right{right:120px;left:auto}
|
|
</style> <script defer src="https://analytics.4ort.xyz/script.js" data-website-id="d3ed927c-888a-4a6c-ae5f-0b1c613ddf5b"></script>
|
|
</head>
|
|
<body>
|
|
<div id="root" data-composition-id="strike-zone" data-start="0" data-width="1920" data-height="1080" data-duration="45">
|
|
|
|
<!-- Scene 1: The Setup (0-12s) -->
|
|
<section id="s1" class="clip" data-start="0" data-duration="12" data-track-index="1">
|
|
<h1 class="scene-text" id="s1-title">The Strike Zone</h1>
|
|
<div class="arc-core" id="s1-core"></div>
|
|
<div class="shield-ring" id="s1-ring"></div>
|
|
<div class="gas-flow" id="s1-flow"></div>
|
|
<div class="data-line" id="s1-data">Tip-to-workpiece gap: 1.5mm ± 0.1</div>
|
|
<div class="data-line right" id="s1-data-r">Shielding gas: 100% Ar</div>
|
|
</section>
|
|
|
|
<!-- Scene 2: Ionization (12-24s) -->
|
|
<section id="s2" class="clip" data-start="12" data-duration="12" data-track-index="1">
|
|
<h1 class="scene-text" id="s2-title">Ionization begins</h1>
|
|
<div class="arc-core" id="s2-core" style="background:radial-gradient(circle,#ffffff,#ffddaa,#ff8c00,transparent)"></div>
|
|
<div class="shield-ring" id="s2-ring" style="border-color:rgba(255,255,255,0.4)"></div>
|
|
<div class="data-line" id="s2-data">Voltage spike: 20V → 12V</div>
|
|
<div class="data-line right" id="s2-data-r">Current rise: 0A → 120A in 0.03s</div>
|
|
</section>
|
|
|
|
<!-- Scene 3: Stable Arc (24-36s) -->
|
|
<section id="s3" class="clip" data-start="24" data-duration="12" data-track-index="1">
|
|
<h1 class="scene-text" id="s3-title">Arc stabilizes</h1>
|
|
<div class="arc-core" id="s3-core" style="background:radial-gradient(circle,#ffffcc,#ffdd00,#ffaa00,#ff4400,transparent)"></div>
|
|
<div class="shield-ring" id="s3-ring" style="border-color:rgba(255,200,100,0.6);box-shadow:0 0 60px rgba(255,200,100,0.3)"></div>
|
|
<div class="data-line" id="s3-data">Plasma temp: 6,000°C</div>
|
|
<div class="data-line right" id="s3-data-r">Penetration: 3.2mm</div>
|
|
</section>
|
|
|
|
<!-- Scene 4: The Hold (36-45s) -->
|
|
<section id="s4" class="clip" data-start="36" data-duration="9" data-track-index="1">
|
|
<h1 class="scene-text" id="s4-title">Hold the gap</h1>
|
|
<div class="arc-core" id="s4-core" style="background:radial-gradient(circle,#ffffff,#ffeebb,#ffdd00,#ff6600,transparent)"></div>
|
|
<div class="data-line" id="s4-data">Gap tolerance: ±0.1mm</div>
|
|
<div class="data-line right" id="s4-data-r">Contamination risk: 0%</div>
|
|
</section>
|
|
|
|
<!-- Audio elements — REQUIRED for voice to play -->
|
|
<audio id="voice-s1" src="audio/s1.wav" data-start="0"></audio>
|
|
<audio id="voice-s2" src="audio/s2.wav" data-start="12"></audio>
|
|
<audio id="voice-s3" src="audio/s3.wav" data-start="24"></audio>
|
|
<audio id="voice-s4" src="audio/s4.wav" data-start="36"></audio>
|
|
<audio id="bgm" src="audio/music.mp3" data-start="0" data-volume="0.12"></audio>
|
|
|
|
<script>
|
|
window.__timelines = window.__timelines || {};
|
|
const tl = gsap.timeline({ paused: true });
|
|
|
|
// Scene 1 animations (0-12s)
|
|
tl.to("#s1-title", { opacity: 1, y: 0, duration: 1.5, ease: "power3.out" }, 0.5);
|
|
tl.to("#s1-core", { opacity: 0.8, scale: 1.2, duration: 3, ease: "expo.inOut" }, 2);
|
|
tl.to("#s1-ring", { opacity: 0.6, rotation: 360, duration: 10, ease: "none" }, 1);
|
|
tl.to("#s1-flow", { opacity: 0.7, duration: 2, ease: "power2.in" }, 3);
|
|
tl.to(["#s1-data","#s1-data-r"], { opacity: 1, x: 20, duration: 1, ease: "power2.out" }, 4);
|
|
|
|
// Scene 2 animations (12-24s)
|
|
tl.to("#s2-title", { opacity: 1, y: 0, duration: 1, ease: "power3.out" }, 12.5);
|
|
tl.to("#s2-core", { opacity: 1, scale: 1.5, filter: "blur(4px)", duration: 2, ease: "back.out(1.7)" }, 13);
|
|
tl.to("#s2-ring", { opacity: 0.9, borderColor: "#ffffff", duration: 3, ease: "power2.inOut" }, 13);
|
|
tl.to(["#s2-data","#s2-data-r"], { opacity: 1, x: 20, duration: 0.8, ease: "power2.out" }, 14);
|
|
|
|
// Scene 3 animations (24-36s)
|
|
tl.to("#s3-title", { opacity: 1, y: 0, duration: 1, ease: "power3.out" }, 24.5);
|
|
tl.to("#s3-core", { opacity: 1, scale: 1.3, filter: "blur(2px)", duration: 4, ease: "power1.inOut" }, 25);
|
|
tl.to("#s3-ring", { boxShadow: "0 0 120px rgba(255,200,100,0.5)", duration: 6, ease: "power2.in" }, 25);
|
|
tl.to(["#s3-data","#s3-data-r"], { opacity: 1, x: 20, duration: 0.8, ease: "power2.out" }, 26);
|
|
|
|
// Scene 4 animations (36-45s)
|
|
tl.to("#s4-title", { opacity: 1, y: 0, duration: 1, ease: "power3.out" }, 36.5);
|
|
tl.to("#s4-core", { opacity: 0.95, scale: 1.1, duration: 3, ease: "sine.inOut" }, 37);
|
|
tl.to(["#s4-data","#s4-data-r"], { opacity: 1, x: 20, duration: 0.6, ease: "power2.out" }, 38);
|
|
tl.to("#s4-core", { opacity: 0, duration: 1.5, ease: "power3.in" }, 43.5);
|
|
|
|
window.__timelines["strike-zone"] = tl;
|
|
</script>
|
|
</body></html>
|