From 3043e37fb5dce4985e2e2fd859a3defa8fa88abb Mon Sep 17 00:00:00 2001 From: Karlcarlo Date: Sun, 4 Oct 2026 00:49:19 +0000 Subject: [PATCH] =?UTF-8?q?style(=E9=A6=96=E9=A1=B5=E5=BD=A9=E8=9B=8B):=20?= =?UTF-8?q?=E8=83=8E=E5=8A=A8=E5=B9=85=E5=BA=A6=E6=95=B4=E4=BD=93=E5=8A=A0?= =?UTF-8?q?=E5=A4=A7=20(v26100404)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 部位尺寸 +20%;元素撑开/放大/上抬/斜切约 1.5~2 倍;卡片鼓起约 2 倍;光影加深;早期小鱼泡泡振幅加大。 Co-Authored-By: Claude Opus 5.5 --- index.html | 2 +- js/app.js | 2 +- js/bump.js | 25 ++++++++++++++----------- 3 files changed, 16 insertions(+), 13 deletions(-) diff --git a/index.html b/index.html index 05ce0db..68d270e 100644 --- a/index.html +++ b/index.html @@ -7,7 +7,7 @@ 兜爸心选 · 孕育陪伴 - + diff --git a/js/app.js b/js/app.js index 752ba50..63bc88e 100644 --- a/js/app.js +++ b/js/app.js @@ -3,7 +3,7 @@ (function () { 'use strict'; /* 页面版本号(YYMMDD+序号):显示在「关于兜爸心选」页底部;bump 时同步 head 注释与 ?v= */ - var VER = '26100403'; + var VER = '26100404'; const $ = (s, c) => (c || document).querySelector(s); const $$ = (s, c) => Array.from((c || document).querySelectorAll(s)); diff --git a/js/bump.js b/js/bump.js index 9be0a13..a79106f 100644 --- a/js/bump.js +++ b/js/bump.js @@ -66,11 +66,14 @@ butt: { rx: 92, ry: 78, sharp: 1.25, amp: 7, dur: [4, 5], roll: true }, kick: { rx: 34, ry: 36, sharp: 1.8, amp: 4.5, dur: [.35, .45] }, // 被摁后不服气的反踢:小、快、摁不到 // 20~25 周:宝宝还小,只有很轻的一下(flick),偶尔稍大一点的轻碰(tap) - flick: { rx: 32, ry: 34, sharp: 1.7, amp: 5, dur: [.8, 1.2], soft: true }, - tap: { rx: 42, ry: 42, sharp: 1.8, amp: 6.5, dur: [1.4, 2], soft: true }, + flick: { rx: 32, ry: 34, sharp: 1.7, amp: 6.5, dur: [.8, 1.2], soft: true }, + tap: { rx: 42, ry: 42, sharp: 1.8, amp: 8, dur: [1.4, 2], soft: true }, // 34 周起:一大片慢慢拱过去(翻身),长条形,边走边起伏 roll: { rx: 118, ry: 72, sharp: 1.15, amp: 6.5, dur: [5.5, 7], roll: true, slide: 64 } }; + // 2026-10-04 用户:「整体幅度要大一点,不然看不清、感受不到」—— 所有部位尺寸统一放大 20%(下面 apply / paint 的力度也一起加了) + const SIZE = 1.2; + for (const k in PARTS) { PARTS[k].rx *= SIZE; PARTS[k].ry *= SIZE; } const ORDER = ['foot', 'fist', 'butt', 'knee']; /* ---------- 孕周 → 阶段 ---------- */ @@ -371,21 +374,21 @@ const ox = Math.max(0, Math.min(skin.w, fx - skin.x)), oy = Math.max(0, Math.min(skin.h, fy - skin.y)); skin.el.style.transformOrigin = ox.toFixed(1) + 'px ' + oy.toFixed(1) + 'px'; skin.el.style.transform = Math.abs(k) < .005 ? skin.base.trim() : - 'translateY(' + (-1.5 * k).toFixed(2) + 'px) scale(' + (1 + .022 * k).toFixed(4) + ')' + skin.base; + 'translateY(' + (-3.2 * k).toFixed(2) + 'px) scale(' + (1 + .045 * k).toFixed(4) + ')' + skin.base; } for (const a of atoms) { let tx = 0, ty = 0, s = 1, ry = 0, rx = 0; // 鼓包:越靠近顶越被撑开、放大,坡上的微微斜切 - const th = Math.min(tentAt(a.x, a.y) / 16, 1.2) * a.damp; + const th = Math.min(tentAt(a.x, a.y) / 14, 1.25) * a.damp; if (th > .002) { const dx = a.x - fx, dy = a.y - fy; - tx += dx * .3 * th; ty += dy * .3 * th - th * 4; s += .26 * th; - ry += 10 * Math.max(-1, Math.min(1, dx / R)) * th; rx -= 10 * Math.max(-1, Math.min(1, dy / R)) * th; + tx += dx * .42 * th; ty += dy * .42 * th - th * 8; s += .4 * th; + ry += 14 * Math.max(-1, Math.min(1, dx / R)) * th; rx -= 14 * Math.max(-1, Math.min(1, dy / R)) * th; } // 手指的窝:按下去往手指那边拽、缩小;回弹过冲时反过来 if (Math.abs(D) > .02) { const dx = a.x - pk.x, dy = a.y - pk.y, g = Math.exp(-(dx * dx + dy * dy) / (46 * 46)) * a.damp; - tx += dx * D * .022 * g; ty += dy * D * .022 * g; s += D * .011 * g; + tx += dx * D * .03 * g; ty += dy * D * .03 * g; s += D * .015 * g; ry += 7 * Math.max(-1, Math.min(1, dx / 46)) * (D / 12) * g; rx -= 7 * Math.max(-1, Math.min(1, dy / 46)) * (D / 12) * g; } // 余波:周围一圈跟着颤 @@ -414,10 +417,10 @@ if (H > .1) { const P = ft.part, sp = ft.spread.v, k = Math.min(H / 9, 1.3) / sp; blob(ft.x + ft.ox + ox, ft.y + ft.oy + oy, P.rx * sp, P.ry * sp, ft.ang + (mode === 'show' ? ft.wob : 0), [ - [.14, .2, 1.05, 'rgba(160,64,40,' + (.16 * k).toFixed(3) + ')'], - [.34, .42, .7, 'rgba(150,55,32,' + (.16 * k).toFixed(3) + ')'], - [-.06, -.08, .62, 'rgba(255,196,170,' + (.16 * k).toFixed(3) + ')'], - [-.26, -.32, .5, 'rgba(255,250,244,' + (.24 * k).toFixed(3) + ')'] + [.14, .2, 1.05, 'rgba(160,64,40,' + (.24 * k).toFixed(3) + ')'], + [.34, .42, .7, 'rgba(150,55,32,' + (.24 * k).toFixed(3) + ')'], + [-.06, -.08, .62, 'rgba(255,196,170,' + (.2 * k).toFixed(3) + ')'], + [-.26, -.32, .5, 'rgba(255,250,244,' + (.32 * k).toFixed(3) + ')'] ]); } const D = pk.d.v;