cambios en fluid

This commit is contained in:
2026-08-27 19:31:22 -03:00
parent fa04541059
commit d9ad72128a
3 changed files with 243 additions and 7 deletions
+31 -7
View File
@@ -368,9 +368,29 @@ function lerpColor(colorA, colorB, t) {
let colorArr = currentColor;
let count = 0;
// ===== DETECTAR ELEMENTOS DE TEXTO =====
function isMouseOverTextElement(target) {
// Listado de selectores que necesitan "modo apaciguado"
const textSelectors = [
'p', '.hero-content p','h1', 'h2', 'h3', 'h4', 'h5', '.hero-content h1',
'.hero-content h2', '.eyebrow', 'a.sheet-link', '.sheet-link span',
'.menu-btn', '.sheet-link-desc', '.sheet-link-main'
];
// Verificar si el target o sus ancestros coinciden con algún selector
for (const selector of textSelectors) {
if (target.closest(selector)) {
return true;
}
}
return false;
}
// ===== EVENTOS CON COLORES DE MARCA =====
canvas.addEventListener("mousemove", function (e) {
console.log("Mouse moviéndose:", e.clientX, e.clientY);
document.addEventListener("mousemove", function (e) {
// Detectar si estamos sobre un elemento de texto
const overText = isMouseOverTextElement(e.target);
count++;
if (count > 1) {
transitionProgress += transitionSpeed;
@@ -384,14 +404,18 @@ canvas.addEventListener("mousemove", function (e) {
colorArr = lerpColor(currentColor, targetColor, transitionProgress);
count = 0;
}
pointers[0].down = true;
pointers[0].color = colorArr;
pointers[0].moved = pointers[0].down;
pointers[0].dx = (e.offsetX - pointers[0].x) * 10.0;
pointers[0].dy = (e.offsetY - pointers[0].y) * 10.0;
pointers[0].x = e.offsetX;
pointers[0].y = e.offsetY;
// Aplicar multiplicador diferente según si estamos sobre texto o no
const multiplier = overText ? 8 : 10.0; // Reducido a 4x sobre texto (vs 10x)
pointers[0].dx = (e.clientX - canvas.offsetLeft - pointers[0].x) * multiplier;
pointers[0].dy = (e.clientY - canvas.offsetTop - pointers[0].y) * multiplier;
pointers[0].x = e.clientX - canvas.offsetLeft;
pointers[0].y = e.clientY - canvas.offsetTop;
});
canvas.addEventListener(