sorhin666
SimpCity Fapper ๐ธ๐ฆ
Zhork15
SimpCity Fapper ๐ธ๐ฆ
RexInfernus
SimpCity Fapper ๐ธ๐ฆ
Aloneiintoky0
SimpCity Fapper ๐ธ๐ฆ
Elbenudo56
SimpCity Fapper ๐ธ๐ฆ
Elbenudo56
SimpCity Fapper ๐ธ๐ฆ
jhac74192
SimpCity Fapper ๐ธ๐ฆ
sorhin666
SimpCity Fapper ๐ธ๐ฆ
Happylittlefucker
SimpCity Fapper ๐ธ๐ฆ
sorhin666
SimpCity Fapper ๐ธ๐ฆ
123form
SimpCity Fapper ๐ธ๐ฆ

sorhin666old but gold.


aiming for diversity


javascript
function() {
const strip = u => u.replace(/\.md(?=\.)/g, '');
const openRaw = e => {
if (e.button !== 0) return;
const img = e.target.closest('.bbWrapper img');
if (!img) return;
e.preventDefault();
window.open(strip(img.src), '_blank');
};
const openGallery = e => {
if (e.button !== 2) return;
const img = e.target.closest('.bbWrapper img');
if (!img) return;
e.preventDefault();
const wrapper = img.closest('.bbWrapper');
if (!wrapper) return alert('No .bbWrapper found!');
const imgs = Array.from(wrapper.querySelectorAll('img')).map(i => strip(i.src));
let i = imgs.indexOf(strip(img.src));
const html = `
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Viewer</title>
<style>
body { margin:0; background:#111; display:flex; align-items:center; justify-content:center; overflow:hidden; height:100vh; }
img { max-width:90vw; max-height:90vh; cursor:zoom-in; transition:transform .1s ease; user-select:none; }
.zoomed { cursor:grab; }
.arrow { position:absolute; top:50%; transform:translateY(-50%); font-size:3em; color:rgba(255,255,255,.4); cursor
ointer; user-select:none; }
.left { left:20px; }
.right { right:20px; }
</style>
</head>
<body>
<div class="arrow left">◀</div>
<img id="viewer" src="${imgs}">
<div class="arrow right">▶</div>
<script>
const imgs = ${JSON.stringify(imgs)};
let i = ${i}, scale = 1, offsetX = 0, offsetY = 0, dragging = false, moved = false, startX, startY, lastX, lastY;
const v = document.getElementById("viewer");
function update() {
v.style.transform = "scale(" + scale + ") translate(" + offsetX + "px," + offsetY + "px)";
}
function reset() {
scale = 1; offsetX = 0; offsetY = 0;
v.classList.remove("zoomed");
update();
}
function show
{
i = (n + imgs.length) % imgs.length;
v.src = imgs;
reset();
}
v.addEventListener("mouseup", e => {
if (e.button === 0 && !moved) {
scale = scale === 1 ? 2 : 1;
if (scale === 1) offsetX = offsetY = 0;
v.classList.toggle("zoomed", scale === 2);
update();
}
});
v.addEventListener("mousedown", e => {
if (e.button === 0 && scale === 2) {
dragging = true; moved = false;
startX = e.clientX; startY = e.clientY;
lastX = offsetX; lastY = offsetY;
e.preventDefault();
}
});
document.addEventListener("mousemove", e => {
if (!dragging) return;
const dx = e.clientX - startX, dy = e.clientY - startY;
offsetX = lastX + dx / scale;
offsetY = lastY + dy / scale;
moved = true;
update();
});
document.addEventListener("mouseup", e => {
if (e.button === 0) dragging = false;
});
document.addEventListener("wheel", e => {
if (scale === 1) return;
offsetY -= e.deltaY / scale;
update();
}, { passive: true });
document.querySelector(".left").onclick = () => show(i - 1);
document.querySelector(".right").onclick = () => show(i + 1);
document.body.onkeydown = e => {
if (e.key === "ArrowLeft") show(i - 1);
if (e.key === "ArrowRight") show(i + 1);
};
</script>
</body>
</html>
`;
const viewer = window.open('about:blank', '_blank');
viewer.document.write(html);
viewer.document.close();
};
document.addEventListener('click', openRaw, false);
document.addEventListener('contextmenu', openGallery, false);
})();
const strip = u => u.replace(/\.md(?=\.)/g, '');
const openRaw = e => {
if (e.button !== 0) return;
const img = e.target.closest('.bbWrapper img');
if (!img) return;
e.preventDefault();
window.open(strip(img.src), '_blank');
};
const openGallery = e => {
if (e.button !== 2) return;
const img = e.target.closest('.bbWrapper img');
if (!img) return;
e.preventDefault();
const wrapper = img.closest('.bbWrapper');
if (!wrapper) return alert('No .bbWrapper found!');
const imgs = Array.from(wrapper.querySelectorAll('img')).map(i => strip(i.src));
let i = imgs.indexOf(strip(img.src));
const html = `
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Viewer</title>
<style>
body { margin:0; background:#111; display:flex; align-items:center; justify-content:center; overflow:hidden; height:100vh; }
img { max-width:90vw; max-height:90vh; cursor:zoom-in; transition:transform .1s ease; user-select:none; }
.zoomed { cursor:grab; }
.arrow { position:absolute; top:50%; transform:translateY(-50%); font-size:3em; color:rgba(255,255,255,.4); cursor
.left { left:20px; }
.right { right:20px; }
</style>
</head>
<body>
<div class="arrow left">◀</div>
<img id="viewer" src="${imgs}">
<div class="arrow right">▶</div>
<script>
const imgs = ${JSON.stringify(imgs)};
let i = ${i}, scale = 1, offsetX = 0, offsetY = 0, dragging = false, moved = false, startX, startY, lastX, lastY;
const v = document.getElementById("viewer");
function update() {
v.style.transform = "scale(" + scale + ") translate(" + offsetX + "px," + offsetY + "px)";
}
function reset() {
scale = 1; offsetX = 0; offsetY = 0;
v.classList.remove("zoomed");
update();
}
function show
i = (n + imgs.length) % imgs.length;
v.src = imgs;
reset();
}
v.addEventListener("mouseup", e => {
if (e.button === 0 && !moved) {
scale = scale === 1 ? 2 : 1;
if (scale === 1) offsetX = offsetY = 0;
v.classList.toggle("zoomed", scale === 2);
update();
}
});
v.addEventListener("mousedown", e => {
if (e.button === 0 && scale === 2) {
dragging = true; moved = false;
startX = e.clientX; startY = e.clientY;
lastX = offsetX; lastY = offsetY;
e.preventDefault();
}
});
document.addEventListener("mousemove", e => {
if (!dragging) return;
const dx = e.clientX - startX, dy = e.clientY - startY;
offsetX = lastX + dx / scale;
offsetY = lastY + dy / scale;
moved = true;
update();
});
document.addEventListener("mouseup", e => {
if (e.button === 0) dragging = false;
});
document.addEventListener("wheel", e => {
if (scale === 1) return;
offsetY -= e.deltaY / scale;
update();
}, { passive: true });
document.querySelector(".left").onclick = () => show(i - 1);
document.querySelector(".right").onclick = () => show(i + 1);
document.body.onkeydown = e => {
if (e.key === "ArrowLeft") show(i - 1);
if (e.key === "ArrowRight") show(i + 1);
};
</script>
</body>
</html>
`;
const viewer = window.open('about:blank', '_blank');
viewer.document.write(html);
viewer.document.close();
};
document.addEventListener('click', openRaw, false);
document.addEventListener('contextmenu', openGallery, false);
})();
123form
SimpCity Fapper ๐ธ๐ฆ

javascript
function() {
const strip = u => u.replace(/\.md(?=\.)/g, '');
const openRaw = e => {
if (e.button !== 0) return;
const img = e.target.closest('.bbWrapper img');
if (!img) return;
e.preventDefault();
window.open(strip(img.src), '_blank');
};
const openGallery = e => {
if (e.button !== 2) return;
const img = e.target.closest('.bbWrapper img');
if (!img) return;
e.preventDefault();
const wrapper = img.closest('.bbWrapper');
if (!wrapper) return alert('No .bbWrapper found!');
const imgs = Array.from(wrapper.querySelectorAll('img')).map(i => strip(i.src));
let i = imgs.indexOf(strip(img.src));
const html = `
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Viewer</title>
<style>
body { margin:0; background:#111; display:flex; align-items:center; justify-content:center; overflow:hidden; height:100vh; }
img { max-width:90vw; max-height:90vh; cursor:zoom-in; transition:transform .1s ease; user-select:none; }
.zoomed { cursor:grab; }
.arrow { position:absolute; top:50%; transform:translateY(-50%); font-size:3em; color:rgba(255,255,255,.4); cursor
ointer; user-select:none; }
.left { left:20px; }
.right { right:20px; }
</style>
</head>
<body>
<div class="arrow left">◀</div>
<img id="viewer" src="${imgs}">
<div class="arrow right">▶</div>
<script>
const imgs = ${JSON.stringify(imgs)};
let i = ${i}, scale = 1, offsetX = 0, offsetY = 0, dragging = false, moved = false, startX, startY, lastX, lastY;
const v = document.getElementById("viewer");
function update() {
v.style.transform = "scale(" + scale + ") translate(" + offsetX + "px," + offsetY + "px)";
}
function reset() {
scale = 1; offsetX = 0; offsetY = 0;
v.classList.remove("zoomed");
update();
}
function show
{
i = (n + imgs.length) % imgs.length;
v.src = imgs;
reset();
}
v.addEventListener("mouseup", e => {
if (e.button === 0 && !moved) {
scale = scale === 1 ? 2 : 1;
if (scale === 1) offsetX = offsetY = 0;
v.classList.toggle("zoomed", scale === 2);
update();
}
});
v.addEventListener("mousedown", e => {
if (e.button === 0 && scale === 2) {
dragging = true; moved = false;
startX = e.clientX; startY = e.clientY;
lastX = offsetX; lastY = offsetY;
e.preventDefault();
}
});
document.addEventListener("mousemove", e => {
if (!dragging) return;
const dx = e.clientX - startX, dy = e.clientY - startY;
offsetX = lastX + dx / scale;
offsetY = lastY + dy / scale;
moved = true;
update();
});
document.addEventListener("mouseup", e => {
if (e.button === 0) dragging = false;
});
document.addEventListener("wheel", e => {
if (scale === 1) return;
offsetY -= e.deltaY / scale;
update();
}, { passive: true });
document.querySelector(".left").onclick = () => show(i - 1);
document.querySelector(".right").onclick = () => show(i + 1);
document.body.onkeydown = e => {
if (e.key === "ArrowLeft") show(i - 1);
if (e.key === "ArrowRight") show(i + 1);
};
</script>
</body>
</html>
`;
const viewer = window.open('about:blank', '_blank');
viewer.document.write(html);
viewer.document.close();
};
document.addEventListener('click', openRaw, false);
document.addEventListener('contextmenu', openGallery, false);
})();
const strip = u => u.replace(/\.md(?=\.)/g, '');
const openRaw = e => {
if (e.button !== 0) return;
const img = e.target.closest('.bbWrapper img');
if (!img) return;
e.preventDefault();
window.open(strip(img.src), '_blank');
};
const openGallery = e => {
if (e.button !== 2) return;
const img = e.target.closest('.bbWrapper img');
if (!img) return;
e.preventDefault();
const wrapper = img.closest('.bbWrapper');
if (!wrapper) return alert('No .bbWrapper found!');
const imgs = Array.from(wrapper.querySelectorAll('img')).map(i => strip(i.src));
let i = imgs.indexOf(strip(img.src));
const html = `
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Viewer</title>
<style>
body { margin:0; background:#111; display:flex; align-items:center; justify-content:center; overflow:hidden; height:100vh; }
img { max-width:90vw; max-height:90vh; cursor:zoom-in; transition:transform .1s ease; user-select:none; }
.zoomed { cursor:grab; }
.arrow { position:absolute; top:50%; transform:translateY(-50%); font-size:3em; color:rgba(255,255,255,.4); cursor
.left { left:20px; }
.right { right:20px; }
</style>
</head>
<body>
<div class="arrow left">◀</div>
<img id="viewer" src="${imgs}">
<div class="arrow right">▶</div>
<script>
const imgs = ${JSON.stringify(imgs)};
let i = ${i}, scale = 1, offsetX = 0, offsetY = 0, dragging = false, moved = false, startX, startY, lastX, lastY;
const v = document.getElementById("viewer");
function update() {
v.style.transform = "scale(" + scale + ") translate(" + offsetX + "px," + offsetY + "px)";
}
function reset() {
scale = 1; offsetX = 0; offsetY = 0;
v.classList.remove("zoomed");
update();
}
function show
i = (n + imgs.length) % imgs.length;
v.src = imgs;
reset();
}
v.addEventListener("mouseup", e => {
if (e.button === 0 && !moved) {
scale = scale === 1 ? 2 : 1;
if (scale === 1) offsetX = offsetY = 0;
v.classList.toggle("zoomed", scale === 2);
update();
}
});
v.addEventListener("mousedown", e => {
if (e.button === 0 && scale === 2) {
dragging = true; moved = false;
startX = e.clientX; startY = e.clientY;
lastX = offsetX; lastY = offsetY;
e.preventDefault();
}
});
document.addEventListener("mousemove", e => {
if (!dragging) return;
const dx = e.clientX - startX, dy = e.clientY - startY;
offsetX = lastX + dx / scale;
offsetY = lastY + dy / scale;
moved = true;
update();
});
document.addEventListener("mouseup", e => {
if (e.button === 0) dragging = false;
});
document.addEventListener("wheel", e => {
if (scale === 1) return;
offsetY -= e.deltaY / scale;
update();
}, { passive: true });
document.querySelector(".left").onclick = () => show(i - 1);
document.querySelector(".right").onclick = () => show(i + 1);
document.body.onkeydown = e => {
if (e.key === "ArrowLeft") show(i - 1);
if (e.key === "ArrowRight") show(i + 1);
};
</script>
</body>
</html>
`;
const viewer = window.open('about:blank', '_blank');
viewer.document.write(html);
viewer.document.close();
};
document.addEventListener('click', openRaw, false);
document.addEventListener('contextmenu', openGallery, false);
})();







































































































































































































































































































































