Storyboard scenes: fold only a short cutaway

This commit is contained in:
gator 2026-09-22 22:19:16 +00:00
parent bdccfa9147
commit 5f38bbe6dc

View file

@ -1434,15 +1434,14 @@
shots.forEach(function (s) { shots.forEach(function (s) {
var k = sceneKey(s), cur = groups[groups.length - 1]; var k = sceneKey(s), cur = groups[groups.length - 1];
if (cur && samePlace(cur.key, k)) { cur.shots.push(s); return; } if (cur && samePlace(cur.key, k)) { cur.shots.push(s); return; }
for (var back = 2; back <= 3; back++) { var g = groups[groups.length - 2];
var g = groups[groups.length - back]; if (g && cur && samePlace(g.key, k) && cur.shots.length <= 3) {
if (g && samePlace(g.key, k)) { groups.pop();
var merged = groups.splice(groups.length - back + 1); g.shots = g.shots.concat(cur.shots);
merged.forEach(function (m) { g.shots = g.shots.concat(m.shots); if (g.name.indexOf(m.name) < 0) g.name += " / " + m.name; }); if (g.name.indexOf(cur.name) < 0) g.name += " / " + cur.name;
g.shots.push(s); g.shots.push(s);
return; return;
} }
}
groups.push({ key: k, name: s.scene || s.setting || k, shots: [s] }); groups.push({ key: k, name: s.scene || s.setting || k, shots: [s] });
}); });
return groups; return groups;