1
0

Compare commits

...

92 Commits

Author SHA1 Message Date
c19e005f16 neu 2025-02-24 18:55:19 +01:00
9e70552103 new stefanie neu 1 2025-02-21 21:56:50 +01:00
b65fc2be24 fast fertig 2025-02-02 20:01:59 +01:00
8a18effa31 snake 2025-02-02 18:32:13 +01:00
1b631a2f67 sweets for animals 2025-02-02 11:13:04 +01:00
09341c3fef fruit or no 2025-02-02 11:00:36 +01:00
9c29cbec23 cajuanru 2025-02-02 10:43:29 +01:00
9d5ac0e462 capybara 2025-02-02 10:34:23 +01:00
675cae838c neu 2025-02-01 21:39:35 +01:00
894a001f4e neu 2025-02-01 21:33:19 +01:00
2cc59ff4b8 rote makierung weg 2025-02-01 18:57:09 +01:00
98cb492697 ver10 2025-02-01 17:27:53 +01:00
f46201ca50 button style 2025-02-01 17:20:14 +01:00
08e7e94085 vers9 2025-02-01 17:14:42 +01:00
6262656875 ver8 2025-02-01 17:14:21 +01:00
eedec0ab8b neu 2025-02-01 17:13:56 +01:00
8a797c5381 vers7 2025-02-01 17:12:27 +01:00
fe705ee6f8 vers 6 2025-02-01 17:10:03 +01:00
98f43314d5 neu vers 5 2025-02-01 17:07:57 +01:00
4a3f8950cc neu butten vers 4 2025-02-01 17:07:19 +01:00
519b6865d8 neu3 2025-02-01 17:05:02 +01:00
1151445128 neu2 2025-02-01 17:04:14 +01:00
b19035e72a neu 2025-02-01 17:02:18 +01:00
dc6bec1ff3 überar 2025-02-01 17:01:45 +01:00
f077133e16 neu 2025-02-01 16:59:07 +01:00
e6013eb332 nej 2025-02-01 16:55:25 +01:00
3c2311dc7a 4 to 1 2025-02-01 16:22:40 +01:00
974c96319f neu wevadresse geän 2025-02-01 15:57:51 +01:00
a0eac437a3 email logo 2025-02-01 15:54:47 +01:00
fb1cf97aa4 email icon 2025-02-01 15:53:34 +01:00
cb82803895 email logo größe än 2025-02-01 15:51:35 +01:00
c1829e64b7 neu 2025-02-01 15:49:10 +01:00
4476ff9f89 neu 2025-02-01 15:45:25 +01:00
a37c35edca neu 2025-02-01 15:40:06 +01:00
5268934bac neu 2025-02-01 15:25:54 +01:00
752424718f neu 2025-02-01 15:17:10 +01:00
a2914f7a81 neu 2025-02-01 15:11:46 +01:00
35449c8697 neu 2025-02-01 15:08:14 +01:00
6ca4ff1a5b neu 2025-02-01 15:01:59 +01:00
fed3f2a16d neu 2025-02-01 15:00:15 +01:00
1f3e570dd6 neu 2025-02-01 14:59:22 +01:00
dc75e01293 neu 2025-02-01 14:48:02 +01:00
51b50c9583 neu 2025-02-01 14:45:26 +01:00
ade676ccf7 neu 2025-02-01 14:37:25 +01:00
704bfa8f14 neu 2025-02-01 14:29:02 +01:00
ad1687ef5c neu 2025-02-01 14:27:18 +01:00
125796d0a4 neu 2025-02-01 14:21:03 +01:00
38b82709e5 neu 2025-02-01 11:38:20 +01:00
6cdb0aecbc nwu 2025-02-01 11:37:16 +01:00
1bf873b1ae neu 2025-02-01 11:36:55 +01:00
6b3699f0fe neu 2025-02-01 11:21:41 +01:00
46727bc880 neu 2025-02-01 11:17:33 +01:00
dd9e05e02c neu 2025-02-01 11:11:49 +01:00
ed291fc269 neu 2025-02-01 11:08:30 +01:00
f66538f118 neu 2025-02-01 11:04:50 +01:00
14f4be2456 NEU 2025-02-01 11:02:29 +01:00
c8123fb8b6 neu 2025-02-01 10:59:13 +01:00
b58ba489f8 neu 2025-02-01 10:57:01 +01:00
5b4c7ac097 neu 2025-02-01 10:53:13 +01:00
f3abe3c318 neu 2025-02-01 10:50:39 +01:00
78d7c0f2f8 neu 2025-02-01 10:48:19 +01:00
434a85f39e neu 2025-02-01 10:44:00 +01:00
6b5a78496d neu 2025-02-01 10:37:32 +01:00
2bc0c1c3df neu 2025-02-01 10:31:44 +01:00
aff16ae5a9 neu 2025-02-01 10:26:24 +01:00
6ae1830c32 neu 2025-02-01 10:23:48 +01:00
32c2377df3 neu 2025-02-01 10:22:20 +01:00
3fa0cfa4ff neu 2025-02-01 10:19:01 +01:00
e461417ff8 neu 2025-02-01 10:17:01 +01:00
e021f3419b neu 2025-02-01 10:14:08 +01:00
fe6f2ac02f neu 2025-02-01 10:12:47 +01:00
c5afc21df8 neu 2025-02-01 10:10:49 +01:00
e5d0f08688 neu 2025-02-01 10:08:14 +01:00
8a3e03d443 neu 2025-02-01 10:06:53 +01:00
01fc30383c neu 2025-02-01 10:05:06 +01:00
3b0b4e2273 neu 2025-02-01 10:02:39 +01:00
6c2579292e neu 2025-02-01 09:55:42 +01:00
ac9cb16db5 neu 2025-02-01 09:53:56 +01:00
fb48d88b61 n 2025-01-31 22:23:13 +01:00
66b0b635c5 neu 2025-01-31 18:22:43 +01:00
aae59dd4c1 neu 2025-01-31 18:19:33 +01:00
cf4961453f neu 2025-01-31 18:17:43 +01:00
929e62d420 neu 2025-01-31 18:12:03 +01:00
ed19ae5514 neu 2025-01-31 18:08:16 +01:00
e14fa1457b neu 2025-01-31 18:05:27 +01:00
160932dbb9 neu 2025-01-31 18:01:04 +01:00
5083d04cb2 versuch 2025-01-31 16:02:46 +01:00
b0d5798a80 neues zeug halt 2024-02-19 17:20:18 +01:00
0478fdc3af spiele 2024-02-11 22:03:13 +01:00
70b96afa91 mat 2024-02-11 21:21:36 +01:00
3433c40a91 mat 2024-02-11 21:20:34 +01:00
e5d45cce33 mat 2024-02-11 21:19:39 +01:00
66 changed files with 4455 additions and 52 deletions

BIN
icons/Controller.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 MiB

1
icons/Link.svg Normal file
View File

@ -0,0 +1 @@
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="283" height="337.81532" viewBox="0,0,283,337.81532"><g transform="translate(-98.5,-11.09234)"><g data-paper-data="{&quot;isPaintingLayer&quot;:true}" fill-rule="nonzero" stroke-linejoin="miter" stroke-miterlimit="10" stroke-dasharray="" stroke-dashoffset="0" style="mix-blend-mode: normal"><g><g><g><path d="M98.5,180.63739c0,-11.26462 9.13178,-20.3964 20.3964,-20.3964c11.26462,0 20.3964,9.13178 20.3964,20.3964c0,11.26462 -9.13178,20.3964 -20.3964,20.3964c-11.26462,0 -20.3964,-9.13178 -20.3964,-20.3964z" fill="#000000" stroke="none" stroke-width="1" stroke-linecap="butt"/><g fill="none" stroke="#000000" stroke-width="5" stroke-linecap="round"><path d="M360.1391,32.83909l-240.27819,147.24468"/><path d="M119.8609,180.71295l240.27819,147.24468" data-paper-data="{&quot;index&quot;:null}"/></g></g><path d="M340.70721,328.51126c0,-11.26462 9.13178,-20.3964 20.3964,-20.3964c11.26462,0 20.3964,9.13178 20.3964,20.3964c0,11.26462 -9.13178,20.3964 -20.3964,20.3964c-11.26462,0 -20.3964,-9.13178 -20.3964,-20.3964z" fill="#000000" stroke="none" stroke-width="1" stroke-linecap="butt"/></g><path d="M340.70721,31.48874c0,-11.26462 9.13178,-20.3964 20.3964,-20.3964c11.26462,0 20.3964,9.13178 20.3964,20.3964c0,11.26462 -9.13178,20.3964 -20.3964,20.3964c-11.26462,0 -20.3964,-9.13178 -20.3964,-20.3964z" fill="#000000" stroke="none" stroke-width="1" stroke-linecap="butt"/></g></g></g></svg><!--rotationCenter:141.50000000000006:168.90765765765772-->

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
icons/copy-clipboard.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

1
icons/copy.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M384 336l-192 0c-8.8 0-16-7.2-16-16l0-256c0-8.8 7.2-16 16-16l140.1 0L400 115.9 400 320c0 8.8-7.2 16-16 16zM192 384l192 0c35.3 0 64-28.7 64-64l0-204.1c0-12.7-5.1-24.9-14.1-33.9L366.1 14.1c-9-9-21.2-14.1-33.9-14.1L192 0c-35.3 0-64 28.7-64 64l0 256c0 35.3 28.7 64 64 64zM64 128c-35.3 0-64 28.7-64 64L0 448c0 35.3 28.7 64 64 64l192 0c35.3 0 64-28.7 64-64l0-32-48 0 0 32c0 8.8-7.2 16-16 16L64 464c-8.8 0-16-7.2-16-16l0-256c0-8.8 7.2-16 16-16l32 0 0-48-32 0z"/></svg>

After

Width:  |  Height:  |  Size: 683 B

BIN
icons/email-icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

1
icons/email.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M64 112c-8.8 0-16 7.2-16 16l0 22.1L220.5 291.7c20.7 17 50.4 17 71.1 0L464 150.1l0-22.1c0-8.8-7.2-16-16-16L64 112zM48 212.2L48 384c0 8.8 7.2 16 16 16l384 0c8.8 0 16-7.2 16-16l0-171.8L322 328.8c-38.4 31.5-93.7 31.5-132 0L48 212.2zM0 128C0 92.7 28.7 64 64 64l384 0c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64L64 448c-35.3 0-64-28.7-64-64L0 128z"/></svg>

After

Width:  |  Height:  |  Size: 576 B

1
icons/instagram.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
icons/link.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
icons/link1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

1
icons/link1.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M280 64h40c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V128C0 92.7 28.7 64 64 64h40 9.6C121 27.5 153.3 0 192 0s71 27.5 78.4 64H280zM64 112c-8.8 0-16 7.2-16 16V448c0 8.8 7.2 16 16 16H320c8.8 0 16-7.2 16-16V128c0-8.8-7.2-16-16-16H304v24c0 13.3-10.7 24-24 24H192 104c-13.3 0-24-10.7-24-24V112H64zm128-8a24 24 0 1 0 0-48 24 24 0 1 0 0 48z"/></svg>

After

Width:  |  Height:  |  Size: 591 B

BIN
icons/meine-spiele.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

1
icons/pinterest.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M204 6.5C101.4 6.5 0 74.9 0 185.6 0 256 39.6 296 63.6 296c9.9 0 15.6-27.6 15.6-35.4 0-9.3-23.7-29.1-23.7-67.8 0-80.4 61.2-137.4 140.4-137.4 68.1 0 118.5 38.7 118.5 109.8 0 53.1-21.3 152.7-90.3 152.7-24.9 0-46.2-18-46.2-43.8 0-37.8 26.4-74.4 26.4-113.4 0-66.2-93.9-54.2-93.9 25.8 0 16.8 2.1 35.4 9.6 50.7-13.8 59.4-42 147.9-42 209.1 0 18.9 2.7 37.5 4.5 56.4 3.4 3.8 1.7 3.4 6.9 1.5 50.4-69 48.6-82.5 71.4-172.8 12.3 23.4 44.1 36 69.3 36 106.2 0 153.9-103.5 153.9-196.8C384 71.3 298.2 6.5 204 6.5z"/></svg>

After

Width:  |  Height:  |  Size: 726 B

BIN
icons/playbutton.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
icons/schuessel.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 MiB

BIN
icons/spiele.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 962 KiB

BIN
icons/spielen-button.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

1
icons/telegram.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M248 8C111 8 0 119 0 256S111 504 248 504 496 393 496 256 385 8 248 8zM363 176.7c-3.7 39.2-19.9 134.4-28.1 178.3-3.5 18.6-10.3 24.8-16.9 25.4-14.4 1.3-25.3-9.5-39.3-18.7-21.8-14.3-34.2-23.2-55.3-37.2-24.5-16.1-8.6-25 5.3-39.5 3.7-3.8 67.1-61.5 68.3-66.7 .2-.7 .3-3.1-1.2-4.4s-3.6-.8-5.1-.5q-3.3 .7-104.6 69.1-14.8 10.2-26.9 9.9c-8.9-.2-25.9-5-38.6-9.1-15.5-5-27.9-7.7-26.8-16.3q.8-6.7 18.5-13.7 108.4-47.2 144.6-62.3c68.9-28.6 83.2-33.6 92.5-33.8 2.1 0 6.6 .5 9.6 2.9a10.5 10.5 0 0 1 3.5 6.7A43.8 43.8 0 0 1 363 176.7z"/></svg>

After

Width:  |  Height:  |  Size: 748 B

1
icons/whatsapp.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7 .9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1,61 +1,128 @@
<html>
<head>
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Creative Crafter</title>
<link href="" rel="stylesheet">
<script type="module" src="https://cdn.jsdelivr.net/npm/ldrs/dist/auto/quantum.js"></script>
<style>
body, html {
height: 100%;
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background-color: #e6f7ff; /* Leichtes Blau */
}
.loader-container {
display: none;
justify-content: center;
align-items: center;
height: 100%;
width: 100%;
position: fixed;
top: 0;
left: 0;
background-color: rgba(173, 216, 230, 0.8); /* Halbtransparenter bläulicher Hintergrund */
z-index: 9999; /* Sicherstellen, dass die Ladeanimation immer im Vordergrund ist */
}
/* Ladeanimation anzeigen */
.loading .loader-container {
display: flex;
}
@font-face {
font-family: "Titillium";
src: url("/Titillium-Web-Regular.ttf");
}
body {
font-family: 'Titillium';
}
h1 {
h1, h2, h3 {
text-align: center;
}
h2 {
text-align: center;
.button {
padding: 16px 32px; /* Doppelte Größe */
border-radius: 8px;
background: linear-gradient(to bottom, #007bff, #0056b3); /* Blau */
box-shadow: 0 2px 4px rgba(0,0,0,0.7);
transition: all 0.2s;
display: flex;
align-items: center;
gap: 8px;
margin-top: 20px; /* Abstand zum oberen Inhalt */
}
.button:hover {
box-shadow: 0 4px 8px rgba(0,0,0,0.6);
}
.button:active {
box-shadow: 0 0px 1px rgba(0,0,0,0.8);
transform: scale(0.995);
}
.button-text {
font-weight: 600;
color: white;
font-size: 1.5em; /* Textgröße anpassen */
}
</style>
</head>
<body>
<h1>Einleitung</h1>
<h3>Hi, meine Gamertag ist Creative Crafter. Auf dieser Website zeige ich euch meine Spiele.</h3>
</head>
<body>
<!-- Ladeanimation -->
<div class="loader-container">
<l-quantum
size="90"
speed="1.75"
color="black"
></l-quantum>
</div>
<h2>Meine Spiele:</h2>
<!-- Deine anderen Inhalte hier -->
<h1><img src="/icons/Controller.png" height="150svh">
<br/>
Creative Crafter</h1>
<h3>Hey there! I'm Creative Crafter, your go-to gamer. On this website, I showcase my latest and greatest games.<br/>
Note: All games are available in German <span>&#x1F1E9;&#x1F1EA;</span> only. Enjoy the adventure!</h3>
<h2><img src="/icons/spiele.png" height="25vh">Categories</h2>
<a href="/spiele/klick-the-witch/witc1h.html"><h3>Klick the Witch:</h3><img src="/spiele/klick-the-witch/logo.png" height="150vh"></a>
<!-- Button hinzufügen -->
<button class="button" onclick="window.location.href='/programmieren/spiele/'">
<div class="button-inner">
<span class="button-text">Games</span>
</div>
</button>
<br/><br/>
<img src="/spiele/klick-the-witch/screenshot01.png" height="250vh">
<br/><br/>
<img src="/spiele/klick-the-witch/screenshot02.png" height="250vh">
<button class="button" onclick="window.location.href='/link-collection'">
<div class="button-inner">
<span class="button-text">Link Collection</span>
</div>
</button>
<footer><a href="mailto:info@creative-crafter.de">info@creative-crafter.de</a> | <i id="footer-text"></i></footer>
<script>
// Ladeanimation beim Laden der Seite anzeigen
document.body.classList.add('loading');
<br/><br/><br/>
<a href="/spiele/Flappy-Witch/FlappyWitch.html"><h3>Flappy Witch:</h3><img src="/spiele/Flappy-Witch/logo.png" height="150vh"></a>
// Ladeanimation entfernen, wenn die Seite vollständig geladen ist
window.addEventListener('load', () => {
document.body.classList.remove('loading');
});
function currentYear() {
var currentYear = new Date().getFullYear();
document.getElementById('footer-text').innerHTML = "2023-" + currentYear;
}
<br/><br/>
<img src="/spiele/Flappy-Witch/FlappyWitch1.png" width="250vh">
<br/><br/>
<img src="/spiele/Flappy-Witch/FlappyWitch2.png" width="250vh">
<br/><br/><br/>
<a href="/spiele/sweets-for-animals/sweets-for-animals.html"><h3>Sweets for Animals:</h3><img src="/spiele/sweets-for-animals/logo.png" height="150vh"></a>
<br/><br/>
<img src="/spiele/sweets-for-animals/sweetsforanimalscake.png" height="250vh">
<br/><br/>
<img src="/spiele/sweets-for-animals/sweetsforanimalsdonut.png" height="250vh">
<br/><br/><br/>
<a href="/spiele/mathe-fussball/mathe-fussball.html"><h3>Mathe-Fußball:</h3><img src="/spiele/mathe-fussball/logo.png" height="150vh"></a>
<br/><br/>
<img src="/spiele/mathe-fussball/mathe-fussball-hintergrund1.png" height="250vh">
<br/><br/>
<img src="/spiele/mathe-fussball/mathe-fussball-hintergrund2.png" height="250vh">
</body>
// Ruf die Funktion auf, um den Footer zu aktualisieren
window.addEventListener('load', currentYear);
</script>
</body>
</html>

59
laden.html Normal file
View File

@ -0,0 +1,59 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Ladeanimation Beispiel</title>
<script type="module" src="https://cdn.jsdelivr.net/npm/ldrs/dist/auto/quantum.js"></script>
<style>
body, html {
height: 100%;
margin: 0;
}
.loader-container {
display: none;
justify-content: center;
align-items: center;
height: 100%;
width: 100%;
position: fixed;
top: 0;
left: 0;
background-color: rgba(255, 255, 255, 0.8); /* Halbtransparenter milchiger Hintergrund */
z-index: 9999; /* Sicherstellen, dass die Ladeanimation immer im Vordergrund ist */
}
/* Ladeanimation anzeigen */
.loading .loader-container {
display: flex;
}
</style>
</head>
<body>
<!-- Ladeanimation -->
<div class="loader-container">
<l-quantum
size="45"
speed="1.75"
color="black"
></l-quantum>
</div>
<!-- Deine anderen Inhalte hier -->
<p>Deine Inhalte hier...</p>
<script>
// Ladeanimation beim Laden der Seite anzeigen
document.body.classList.add('loading');
// Ladeanimation entfernen, wenn die Seite vollständig geladen ist
window.addEventListener('load', () => {
document.body.classList.remove('loading');
});
</script>
</body>
</html>

View File

@ -0,0 +1,378 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Creative Crafter</title>
<!-- Ladeanimation -->
<script type="module" src="https://cdn.jsdelivr.net/npm/ldrs/dist/auto/quantum.js"></script>
<!-- Stylesheet -->
<style>
@font-face { font-family: "Titillium"; src: url("/Titillium-Web-Regular.ttf"); }
body, html {
font-family: 'Titillium';
height: 100%;
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background-color: #e6f7ff;
}
h1, h2 { text-align: center; }
/* Ladeanimation */
.loader-container {
display: none;
justify-content: center;
align-items: center;
height: 100%;
width: 100%;
position: fixed;
top: 0;
left: 0;
background-color: rgba(173, 216, 230, 0.8);
z-index: 9999;
}
.loading .loader-container { display: flex; }
/* Button-Style */
.button-share {
--white: #fff;
cursor: pointer;
background: linear-gradient(to bottom, #6e3bff, #7e51ff);
color: #fff;
border: 1px solid #af93ff;
border-radius: 8px;
position: relative;
font-family: Arial, Helvetica, sans-serif;
text-shadow: 0 2px 0 rgba(0, 0, 0, 0.25);
box-shadow: 0 8px 10px -4px #503b89, 0 0 0 2px #562cce;
font-size: 25px;
display: inline-flex;
align-items: center;
gap: 8px;
margin-top: 20px;
}
.button {
padding: 16px 32px; /* Doppelte Größe */
border-radius: 8px;
background: linear-gradient(to bottom, #007bff, #0056b3); /* Blau */
box-shadow: 0 2px 4px rgba(0,0,0,0.7);
transition: all 0.2s;
display: flex;
align-items: center;
gap: 8px;
margin-top: 20px; /* Abstand zum oberen Inhalt */
}
.button:hover {
box-shadow: 0 4px 8px rgba(0,0,0,0.6);
}
.button:active {
box-shadow: 0 0px 1px rgba(0,0,0,0.8);
transform: scale(0.995);
}
.button-text {
font-weight: 600;
color: white;
font-size: 1.5em; /* Textgröße anpassen */
}
.icon path.bm {
stroke-dasharray: 3;
stroke-dashoffset: 3;
stroke-width: 1px;
transform: translateX(-23px) translateY(16px) scale(2) rotate(-44deg);
}
.icon-container {
display: flex;
align-items: center;
justify-content: center;
padding: 8px 10px;
background-color: #fff;
border-radius: 50%;
box-shadow: inset 0 -2px 4px 0 #c6c6c6, 0 3px 6px rgba(0, 0, 0, 0.25);
text-align: center;
z-index: 10;
}
.icon-container .icon {
width: 25px;
height: 30px;
stroke: #592cd6;
margin-top: -2px;
z-index: 4;
/* Für das Teilen-Icon die Rotation entfernen */
}
.content {
pointer-events: none;
display: flex;
align-items: center;
justify-content: center;
z-index: 1;
position: relative;
height: 100%;
width: 100%;
padding: 4px;
gap: 16px;
border-radius: 7px;
font-weight: 600;
transition: all 0.3s ease;
}
.letters {
transition: all 0.3s ease;
display: flex;
align-items: center;
justify-content: center;
padding: 4px;
}
.letters span {
display: block;
color: transparent;
position: relative;
left: 6px;
animation: letterShow 1.2s ease backwards calc(var(--i) * 0.03s);
}
.letters span::before, .letters span::after {
content: attr(data-label);
position: absolute;
color: var(--white);
text-shadow: -1px 1px 2px var(--purple-500);
left: 0;
}
.letters span::before {
opacity: 0;
transform: translateY(-100%);
}
.button:hover .letters span::before {
animation: letterShow 0.7s ease calc(var(--i) * 0.03s);
}
.button:hover .letters span::after {
opacity: 1;
animation: letterHide 0.7s ease calc(var(--i) * 0.03s);
}
@keyframes letterShow {
0% { transform: translateY(50%); opacity: 0; filter: blur(20px); }
20% { transform: translateY(70%); opacity: 1; }
50% { transform: translateY(-15%); opacity: 1; filter: blur(0); }
100% { transform: translateY(0); opacity: 1; }
}
@keyframes letterHide {
0% { transform: translateY(0); opacity: 1; }
100% { transform: translateY(-70%); opacity: 0; filter: blur(3px); }
}
/* Modal-Stile */
.modal {
display: none;
position: fixed;
z-index: 1000;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgba(0,0,0,0.5);
}
.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
border: 1px solid #888;
width: 80%;
max-width: 400px;
text-align: center;
border-radius: 10px;
}
.close {
color: #aaa;
float: right;
font-size: 28px;
font-weight: bold;
cursor: pointer;
}
.close:hover,
.close:focus {
color: black;
}
.social-icons {
display: flex;
justify-content: center;
gap: 20px;
margin-top: 20px;
}
.social-icons a img {
width: 60px;
height: 60px;
transition: transform 0.2s;
}
.social-icons a img:hover {
transform: scale(1.1);
}
</style>
</head>
<body>
<!-- Ladeanimation -->
<div class="loader-container">
<l-quantum size="90" speed="1.75" color="black"></l-quantum>
</div>
<h1><img src="/icons/Controller.png" height="150"><br/>Creative Crafter</h1>
<h1>Br0tkasten</h1>
<div align='center'>
<img src="/link-collection/br0tkasten/logo.png" width="250">
</div>
<br/>
<div align='center'>
<!-- Spielen-Button -->
<h2><a href="https://www.br0tkasten.de">Br0tkasten</a></h2>
</a>
<br/><br/>
<!-- Neuer Teilen-Button -->
<button class="button-share" onclick="openSharePopup()">
<div class="icon-container">
<svg viewBox="0 0 24 24" fill="none" class="icon">
<!-- Teilen-Icon -->
<path d="M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7"></path>
<polyline points="16 6 12 2 8 6"></polyline>
<line x1="12" y1="2" x2="12" y2="15"></line>
</svg>
</div>
<div class="content">
<div class="letters">
<span data-label="S" style="--i:0;">S</span>
<span data-label="h" style="--i:1;">h</span>
<span data-label="a" style="--i:2;">a</span>
<span data-label="r" style="--i:3;">r</span>
<span data-label="e" style="--i:4;">e</span>
</div>
</div>
</button>
</div>
<!-- Popup-Fenster zum Teilen -->
<div id="shareModal" class="modal">
<div class="modal-content">
<span class="close" onclick="closeSharePopup()">&times;</span>
<h2>Share with:</h2>
<div class="social-icons">
<a href="#" onclick="shareViaWhatsApp()">
<img src="/icons/whatsapp.svg" alt="WhatsApp" />
</a>
<a href="#" onclick="shareViaPinterest()">
<img src="/icons/pinterest.svg" />
</a>
<a href="#" onclick="shareViaTelegram()">
<img src="/icons/telegram.svg" alt="Telegram" />
</a>
<a href="#" onclick="shareViaEmail()">
<img src="/icons/email.svg" alt="E-Mail" />
</a>
<!-- Kopieren -->
<a href="#" onclick="copyToClipboard()">
<img src="/icons/copy.svg" />
</a>
<!-- Weitere Sharing-Optionen kannst du hier hinzufügen -->
</div>
</div>
</div>
<br/><br/><br/>
<!-- JavaScript für Ladeanimation und Teilen-Funktion -->
<script>
// Ladeanimation beim Laden der Seite anzeigen
document.body.classList.add('loading');
// Ladeanimation entfernen, wenn die Seite vollständig geladen ist
window.addEventListener('load', () => {
document.body.classList.remove('loading');
});
// Funktion zum Öffnen des Popup-Fensters
function openSharePopup() {
document.getElementById("shareModal").style.display = "block";
}
// Funktion zum Schließen des Popup-Fensters
function closeSharePopup() {
document.getElementById("shareModal").style.display = "none";
}
// Teilen via WhatsApp
function shareViaWhatsApp() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/link-collection/klick-the-witch/');
const url = 'https://api.whatsapp.com/send?text=' + text;
window.open(url, '_blank');
}
// Teilen via Telegram
function shareViaTelegram() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/link-collection/klick-the-witch/');
const url = 'https://t.me/share/url?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/link-collection/klick-the-witch/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const media = encodeURIComponent('URL_ZU_DEINEM_BILD'); // Ersetze dies durch den tatsächlichen Bild-Link
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/link-collection/klick-the-witch/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text + '&media=' + media;
window.open(url, '_blank');
}
// Teilen via E-Mail
function shareViaEmail() {
const subject = encodeURIComponent('Klick the Witch');
const body = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/link-collection/klick-the-witch/');
window.location.href = 'mailto:?subject=' + subject + '&body=' + body;
}
function copyToClipboard() {
const text = 'Check out this fantastic game!https://test.creative-crafter.de/link-collection/klick-the-witch/';
navigator.clipboard.writeText(text).then(function() {
alert('Text wurde in die Zwischenablage kopiert!');
}, function(err) {
alert('Fehler beim Kopieren in die Zwischenablage: ', err);
});
}
// Schließt das Popup bei Klick außerhalb des Inhalts
window.onclick = function(event) {
const modal = document.getElementById('shareModal');
if (event.target == modal) {
closeSharePopup();
}
}
</script>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

View File

@ -0,0 +1,80 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Creative Crafter</title>
<link href="" rel="stylesheet">
<style>
@font-face {
font-family: "Titillium";
src: url("/Titillium-Web-Regular.ttf");
}
body {
font-family: 'Titillium';
height: 100%;
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background-color: #e6f7ff; /* Leichtes Blau */
}
h1 {
text-align: center;
}
h2 {
text-align: center;
}
h1, h2, h3 {
text-align: center;
}
.category-container {
width: 80%;
max-width: 800px;
margin-top: 20px;
}
.category {
padding: 15px;
border: 1px solid #ccc;
border-radius: 8px;
margin: 10px 0;
background-color: #fff;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
text-align: left;
}
.category-title {
font-size: 1.2em;
font-weight: bold;
margin-bottom: 5px;
}
.category-description {
font-size: 1em;
margin-bottom: 10px;
}
.category a {
color: #007bff;
text-decoration: none;
}
.category a:hover {
text-decoration: underline;
}
</style>
</head>
<body>
<h1><img src="/icons/Controller.png" height="150svh"><br/>Creative Crafter</h1>
<h1>Link Collection</h1>
<div class="category-container">
<div class="category">
<div class="category-title">Br0tkasten</div>
<div class="category-description">just my two cents</div>
<a href="/link-collection/br0tkasten">Mehr erfahren</a>
</div>
<div class="category">
<div class="category-title">Lego Tiny Plants</div>
<div class="category-description">Build 9 miniature plants in terracotta pots, featuring various species, perfect for display and creative relaxation. Botanical joy!</div>
<a href="/link-collection/lego-tiny-plants">Mehr erfahren</a>
</div>
</body>
</html>

View File

@ -0,0 +1,388 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Creative Crafter</title>
<!-- Ladeanimation -->
<script type="module" src="https://cdn.jsdelivr.net/npm/ldrs/dist/auto/quantum.js"></script>
<!-- Stylesheet -->
<style>
@font-face { font-family: "Titillium"; src: url("/Titillium-Web-Regular.ttf"); }
body, html {
font-family: 'Titillium';
height: 100%;
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background-color: #e6f7ff;
}
h1, h2 { text-align: center; }
/* Ladeanimation */
.loader-container {
display: none;
justify-content: center;
align-items: center;
height: 100%;
width: 100%;
position: fixed;
top: 0;
left: 0;
background-color: rgba(173, 216, 230, 0.8);
z-index: 9999;
}
.loading .loader-container { display: flex; }
/* Button-Style */
.button-share {
--white: #fff;
cursor: pointer;
background: linear-gradient(to bottom, #6e3bff, #7e51ff);
color: #fff;
border: 1px solid #af93ff;
border-radius: 8px;
position: relative;
font-family: Arial, Helvetica, sans-serif;
text-shadow: 0 2px 0 rgba(0, 0, 0, 0.25);
box-shadow: 0 8px 10px -4px #503b89, 0 0 0 2px #562cce;
font-size: 25px;
display: inline-flex;
align-items: center;
gap: 8px;
margin-top: 20px;
}
.button {
padding: 16px 32px; /* Doppelte Größe */
border-radius: 8px;
background: linear-gradient(to bottom, #007bff, #0056b3); /* Blau */
box-shadow: 0 2px 4px rgba(0,0,0,0.7);
transition: all 0.2s;
display: flex;
align-items: center;
gap: 8px;
margin-top: 20px; /* Abstand zum oberen Inhalt */
}
.button:hover {
box-shadow: 0 4px 8px rgba(0,0,0,0.6);
}
.button:active {
box-shadow: 0 0px 1px rgba(0,0,0,0.8);
transform: scale(0.995);
}
.button-text {
font-weight: 600;
color: white;
font-size: 1.5em; /* Textgröße anpassen */
}
.icon path.bm {
stroke-dasharray: 3;
stroke-dashoffset: 3;
stroke-width: 1px;
transform: translateX(-23px) translateY(16px) scale(2) rotate(-44deg);
}
.icon-container {
display: flex;
align-items: center;
justify-content: center;
padding: 8px 10px;
background-color: #fff;
border-radius: 50%;
box-shadow: inset 0 -2px 4px 0 #c6c6c6, 0 3px 6px rgba(0, 0, 0, 0.25);
text-align: center;
z-index: 10;
}
.icon-container .icon {
width: 25px;
height: 30px;
stroke: #592cd6;
margin-top: -2px;
z-index: 4;
/* Für das Teilen-Icon die Rotation entfernen */
}
.content {
pointer-events: none;
display: flex;
align-items: center;
justify-content: center;
z-index: 1;
position: relative;
height: 100%;
width: 100%;
padding: 4px;
gap: 16px;
border-radius: 7px;
font-weight: 600;
transition: all 0.3s ease;
}
.letters {
transition: all 0.3s ease;
display: flex;
align-items: center;
justify-content: center;
padding: 4px;
}
.letters span {
display: block;
color: transparent;
position: relative;
left: 6px;
animation: letterShow 1.2s ease backwards calc(var(--i) * 0.03s);
}
.letters span::before, .letters span::after {
content: attr(data-label);
position: absolute;
color: var(--white);
text-shadow: -1px 1px 2px var(--purple-500);
left: 0;
}
.letters span::before {
opacity: 0;
transform: translateY(-100%);
}
.button:hover .letters span::before {
animation: letterShow 0.7s ease calc(var(--i) * 0.03s);
}
.button:hover .letters span::after {
opacity: 1;
animation: letterHide 0.7s ease calc(var(--i) * 0.03s);
}
@keyframes letterShow {
0% { transform: translateY(50%); opacity: 0; filter: blur(20px); }
20% { transform: translateY(70%); opacity: 1; }
50% { transform: translateY(-15%); opacity: 1; filter: blur(0); }
100% { transform: translateY(0); opacity: 1; }
}
@keyframes letterHide {
0% { transform: translateY(0); opacity: 1; }
100% { transform: translateY(-70%); opacity: 0; filter: blur(3px); }
}
/* Modal-Stile */
.modal {
display: none;
position: fixed;
z-index: 1000;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgba(0,0,0,0.5);
}
.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
border: 1px solid #888;
width: 80%;
max-width: 400px;
text-align: center;
border-radius: 10px;
}
.close {
color: #aaa;
float: right;
font-size: 28px;
font-weight: bold;
cursor: pointer;
}
.close:hover,
.close:focus {
color: black;
}
.social-icons {
display: flex;
justify-content: center;
gap: 20px;
margin-top: 20px;
}
.social-icons a img {
width: 60px;
height: 60px;
transition: transform 0.2s;
}
.social-icons a img:hover {
transform: scale(1.1);
}
</style>
</head>
<body>
<!-- Ladeanimation -->
<div class="loader-container">
<l-quantum size="90" speed="1.75" color="black"></l-quantum>
</div>
<h1><img src="/icons/Controller.png" height="150"><br/>Creative Crafter</h1>
<h1>Lego Tiny Plants</h1>
<div align='center'>
<img src="/link-collection/lego-tiny-plants/lego-pflanze.jpeg" width="250">
</div>
<br/>
<div align='center'>
<!-- Spielen-Button -->
<center>
<h2>
<a href="https://www.amazon.de/LEGO-10329-k%C3%BCnstliche-Collection-Terrakotta-Topf/dp/B01N6CH4YZ/ref=sr_1_2?crid=3PWMDFTZ8FXD1&dib=eyJ2IjoiMSJ9._75n0qO-YpajelaQ3F4sobWV0Wbr7ROWJ9sPnoTD6_Z9i_N5D64BBmcwPy_a1y-T88KqDuhlVDdyE1QpYo9n6h7aXF_kh5wsy7oMazuW90tQQfzssmCkcI9SyYV0CAQUMtgdRYTjljdAbfh-bzpCWUOqL2b2V3UOV2AKXGostIla1pe0gCXSFq2vaKRzOGTl5fMRr7pakjXiVQIqnf2_GlTjazRYVMa5VjUasdYcU2jCp5OILbzdRlbVIUxH2zHyi9mi-NHSP8a5IpSyC3AF5Zl_Q-K1BtYCdLBE3h0P4os.5o3cn-kk1WxUd6I0RQ4cxHys9Ub8KYDmk9X9XBJlB-w&dib_tag=se&keywords=lego%2Btiny%2Bplants&qid=1729366267&sprefix=tiny%2Blego%2Caps%2C115&sr=8-2&th=1">Amazon</a>
</h2>
</center>
<center>
<h2>
<a href="https://www.lego.com/de-de/product/tiny-plants-10329">LEGO® Online-shop</a>
</h2>
</center>
</a>
<br/><br/>
<!-- Neuer Teilen-Button -->
<button class="button-share" onclick="openSharePopup()">
<div class="icon-container">
<svg viewBox="0 0 24 24" fill="none" class="icon">
<!-- Teilen-Icon -->
<path d="M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7"></path>
<polyline points="16 6 12 2 8 6"></polyline>
<line x1="12" y1="2" x2="12" y2="15"></line>
</svg>
</div>
<div class="content">
<div class="letters">
<span data-label="S" style="--i:0;">S</span>
<span data-label="h" style="--i:1;">h</span>
<span data-label="a" style="--i:2;">a</span>
<span data-label="r" style="--i:3;">r</span>
<span data-label="e" style="--i:4;">e</span>
</div>
</div>
</button>
</div>
<!-- Popup-Fenster zum Teilen -->
<div id="shareModal" class="modal">
<div class="modal-content">
<span class="close" onclick="closeSharePopup()">&times;</span>
<h2>Share with:</h2>
<div class="social-icons">
<a href="#" onclick="shareViaWhatsApp()">
<img src="/icons/whatsapp.svg" alt="WhatsApp" />
</a>
<a href="#" onclick="shareViaPinterest()">
<img src="/icons/pinterest.svg" />
</a>
<a href="#" onclick="shareViaTelegram()">
<img src="/icons/telegram.svg" alt="Telegram" />
</a>
<a href="#" onclick="shareViaEmail()">
<img src="/icons/email.svg" alt="E-Mail" />
</a>
<!-- Kopieren -->
<a href="#" onclick="copyToClipboard()">
<img src="/icons/copy.svg" />
</a>
<!-- Weitere Sharing-Optionen kannst du hier hinzufügen -->
</div>
</div>
</div>
<br/><br/><br/>
<!-- JavaScript für Ladeanimation und Teilen-Funktion -->
<script>
// Ladeanimation beim Laden der Seite anzeigen
document.body.classList.add('loading');
// Ladeanimation entfernen, wenn die Seite vollständig geladen ist
window.addEventListener('load', () => {
document.body.classList.remove('loading');
});
// Funktion zum Öffnen des Popup-Fensters
function openSharePopup() {
document.getElementById("shareModal").style.display = "block";
}
// Funktion zum Schließen des Popup-Fensters
function closeSharePopup() {
document.getElementById("shareModal").style.display = "none";
}
// Teilen via WhatsApp
function shareViaWhatsApp() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/link-collection/lego-tiny-plants/');
const url = 'https://api.whatsapp.com/send?text=' + text;
window.open(url, '_blank');
}
// Teilen via Telegram
function shareViaTelegram() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/link-collection/lego-tiny-plants/');
const url = 'https://t.me/share/url?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/link-collection/klick-the-witch/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const media = encodeURIComponent('URL_ZU_DEINEM_BILD'); // Ersetze dies durch den tatsächlichen Bild-Link
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/link-collection/lego-tiny-plants/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text + '&media=' + media;
window.open(url, '_blank');
}
// Teilen via E-Mail
function shareViaEmail() {
const subject = encodeURIComponent('Klick the Witch');
const body = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/link-collection/lego-tiny-plants/');
window.location.href = 'mailto:?subject=' + subject + '&body=' + body;
}
function copyToClipboard() {
const text = 'Check out this fantastic game!https://test.creative-crafter.de/link-collection/lego-tiny-plants/';
navigator.clipboard.writeText(text).then(function() {
alert('Text wurde in die Zwischenablage kopiert!');
}, function(err) {
alert('Fehler beim Kopieren in die Zwischenablage: ', err);
});
}
// Schließt das Popup bei Klick außerhalb des Inhalts
window.onclick = function(event) {
const modal = document.getElementById('shareModal');
if (event.target == modal) {
closeSharePopup();
}
}
</script>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 MiB

View File

Before

Width:  |  Height:  |  Size: 70 KiB

After

Width:  |  Height:  |  Size: 70 KiB

View File

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

View File

@ -0,0 +1,385 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Creative Crafter</title>
<!-- Ladeanimation -->
<script type="module" src="https://cdn.jsdelivr.net/npm/ldrs/dist/auto/quantum.js"></script>
<!-- Stylesheet -->
<style>
@font-face { font-family: "Titillium"; src: url("/Titillium-Web-Regular.ttf"); }
body, html {
font-family: 'Titillium';
height: 100%;
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background-color: #e6f7ff;
}
h1, h2 { text-align: center; }
/* Ladeanimation */
.loader-container {
display: none;
justify-content: center;
align-items: center;
height: 100%;
width: 100%;
position: fixed;
top: 0;
left: 0;
background-color: rgba(173, 216, 230, 0.8);
z-index: 9999;
}
.loading .loader-container { display: flex; }
/* Button-Style */
.button-share {
--white: #fff;
cursor: pointer;
background: linear-gradient(to bottom, #6e3bff, #7e51ff);
color: #fff;
border: 1px solid #af93ff;
border-radius: 8px;
position: relative;
font-family: Arial, Helvetica, sans-serif;
text-shadow: 0 2px 0 rgba(0, 0, 0, 0.25);
box-shadow: 0 8px 10px -4px #503b89, 0 0 0 2px #562cce;
font-size: 25px;
display: inline-flex;
align-items: center;
gap: 8px;
margin-top: 20px;
}
.button {
padding: 16px 32px; /* Doppelte Größe */
border-radius: 8px;
background: linear-gradient(to bottom, #007bff, #0056b3); /* Blau */
box-shadow: 0 2px 4px rgba(0,0,0,0.7);
transition: all 0.2s;
display: flex;
align-items: center;
gap: 8px;
margin-top: 20px; /* Abstand zum oberen Inhalt */
}
.button:hover {
box-shadow: 0 4px 8px rgba(0,0,0,0.6);
}
.button:active {
box-shadow: 0 0px 1px rgba(0,0,0,0.8);
transform: scale(0.995);
}
.button-text {
font-weight: 600;
color: white;
font-size: 1.5em; /* Textgröße anpassen */
}
.icon path.bm {
stroke-dasharray: 3;
stroke-dashoffset: 3;
stroke-width: 1px;
transform: translateX(-23px) translateY(16px) scale(2) rotate(-44deg);
}
.icon-container {
display: flex;
align-items: center;
justify-content: center;
padding: 8px 10px;
background-color: #fff;
border-radius: 50%;
box-shadow: inset 0 -2px 4px 0 #c6c6c6, 0 3px 6px rgba(0, 0, 0, 0.25);
text-align: center;
z-index: 10;
}
.icon-container .icon {
width: 25px;
height: 30px;
stroke: #592cd6;
margin-top: -2px;
z-index: 4;
/* Für das Teilen-Icon die Rotation entfernen */
}
.content {
pointer-events: none;
display: flex;
align-items: center;
justify-content: center;
z-index: 1;
position: relative;
height: 100%;
width: 100%;
padding: 4px;
gap: 16px;
border-radius: 7px;
font-weight: 600;
transition: all 0.3s ease;
}
.letters {
transition: all 0.3s ease;
display: flex;
align-items: center;
justify-content: center;
padding: 4px;
}
.letters span {
display: block;
color: transparent;
position: relative;
left: 6px;
animation: letterShow 1.2s ease backwards calc(var(--i) * 0.03s);
}
.letters span::before, .letters span::after {
content: attr(data-label);
position: absolute;
color: var(--white);
text-shadow: -1px 1px 2px var(--purple-500);
left: 0;
}
.letters span::before {
opacity: 0;
transform: translateY(-100%);
}
.button:hover .letters span::before {
animation: letterShow 0.7s ease calc(var(--i) * 0.03s);
}
.button:hover .letters span::after {
opacity: 1;
animation: letterHide 0.7s ease calc(var(--i) * 0.03s);
}
@keyframes letterShow {
0% { transform: translateY(50%); opacity: 0; filter: blur(20px); }
20% { transform: translateY(70%); opacity: 1; }
50% { transform: translateY(-15%); opacity: 1; filter: blur(0); }
100% { transform: translateY(0); opacity: 1; }
}
@keyframes letterHide {
0% { transform: translateY(0); opacity: 1; }
100% { transform: translateY(-70%); opacity: 0; filter: blur(3px); }
}
/* Modal-Stile */
.modal {
display: none;
position: fixed;
z-index: 1000;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgba(0,0,0,0.5);
}
.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
border: 1px solid #888;
width: 80%;
max-width: 400px;
text-align: center;
border-radius: 10px;
}
.close {
color: #aaa;
float: right;
font-size: 28px;
font-weight: bold;
cursor: pointer;
}
.close:hover,
.close:focus {
color: black;
}
.social-icons {
display: flex;
justify-content: center;
gap: 20px;
margin-top: 20px;
}
.social-icons a img {
width: 60px;
height: 60px;
transition: transform 0.2s;
}
.social-icons a img:hover {
transform: scale(1.1);
}
</style>
</head>
<body>
<!-- Ladeanimation -->
<div class="loader-container">
<l-quantum size="90" speed="1.75" color="black"></l-quantum>
</div>
<h1><img src="/icons/Controller.png" height="150"><br/>Creative Crafter</h1>
<h1>Flappy Witch</h1>
<div align='center'>
<img src="/programmieren/spiele/Flappy-Witch/logo.png" width="250">
</div>
<br/>
<div align='center'>
<!-- Spielen-Button -->
<button class="button" onclick="window.location.href=`/programmieren/spiele/Flappy-Witch/FlappyWitch.html`">
<div class="button-inner">
<span class="button-text"><img src="/icons/playbutton.png" alt="Icon" style="width:20px; height:20px; margin-right:5px;"> Play</span>
</div>
</button>
</a>
<br/><br/>
<!-- Neuer Teilen-Button -->
<button class="button-share" onclick="openSharePopup()">
<div class="icon-container">
<svg viewBox="0 0 24 24" fill="none" class="icon">
<!-- Teilen-Icon -->
<path d="M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7"></path>
<polyline points="16 6 12 2 8 6"></polyline>
<line x1="12" y1="2" x2="12" y2="15"></line>
</svg>
</div>
<div class="content">
<div class="letters">
<span data-label="S" style="--i:0;">S</span>
<span data-label="h" style="--i:1;">h</span>
<span data-label="a" style="--i:2;">a</span>
<span data-label="r" style="--i:3;">r</span>
<span data-label="e" style="--i:4;">e</span>
</div>
</div>
</button>
</div>
<!-- Popup-Fenster zum Teilen -->
<div id="shareModal" class="modal">
<div class="modal-content">
<span class="close" onclick="closeSharePopup()">&times;</span>
<h2>Share with:</h2>
<div class="social-icons">
<a href="#" onclick="shareViaWhatsApp()">
<img src="/icons/whatsapp.svg" alt="WhatsApp" />
</a>
<a href="#" onclick="shareViaPinterest()">
<img src="/icons/pinterest.svg" />
</a>
<a href="#" onclick="shareViaTelegram()">
<img src="/icons/telegram.svg" alt="Telegram" />
</a>
<a href="#" onclick="shareViaEmail()">
<img src="/icons/email.svg" alt="E-Mail" />
</a>
<!-- Kopieren -->
<a href="#" onclick="copyToClipboard()">
<img src="/icons/copy.svg" />
</a>
<!-- Weitere Sharing-Optionen kannst du hier hinzufügen -->
</div>
</div>
</div>
<br/><br/><br/>
<div align='center'>
<img src="/programmieren/spiele/Flappy-Witch/FlappyWitch1.png" width="250">
<img src="/programmieren/spiele/Flappy-Witch/FlappyWitch2.png" width="250">
</div>
<!-- JavaScript für Ladeanimation und Teilen-Funktion -->
<script>
// Ladeanimation beim Laden der Seite anzeigen
document.body.classList.add('loading');
// Ladeanimation entfernen, wenn die Seite vollständig geladen ist
window.addEventListener('load', () => {
document.body.classList.remove('loading');
});
// Funktion zum Öffnen des Popup-Fensters
function openSharePopup() {
document.getElementById("shareModal").style.display = "block";
}
// Funktion zum Schließen des Popup-Fensters
function closeSharePopup() {
document.getElementById("shareModal").style.display = "none";
}
// Teilen via WhatsApp
function shareViaWhatsApp() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/klick-the-witch/');
const url = 'https://api.whatsapp.com/send?text=' + text;
window.open(url, '_blank');
}
// Teilen via Telegram
function shareViaTelegram() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/klick-the-witch/');
const url = 'https://t.me/share/url?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/klick-the-witch/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const media = encodeURIComponent('URL_ZU_DEINEM_BILD'); // Ersetze dies durch den tatsächlichen Bild-Link
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/klick-the-witch/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text + '&media=' + media;
window.open(url, '_blank');
}
// Teilen via E-Mail
function shareViaEmail() {
const subject = encodeURIComponent('Klick the Witch');
const body = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/klick-the-witch/');
window.location.href = 'mailto:?subject=' + subject + '&body=' + body;
}
function copyToClipboard() {
const text = 'Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/klick-the-witch/';
navigator.clipboard.writeText(text).then(function() {
alert('Text wurde in die Zwischenablage kopiert!');
}, function(err) {
alert('Fehler beim Kopieren in die Zwischenablage: ', err);
});
}
// Schließt das Popup bei Klick außerhalb des Inhalts
window.onclick = function(event) {
const modal = document.getElementById('shareModal');
if (event.target == modal) {
closeSharePopup();
}
}
</script>
</body>
</html>

View File

Before

Width:  |  Height:  |  Size: 67 KiB

After

Width:  |  Height:  |  Size: 67 KiB

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,387 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Creative Crafter</title>
<!-- Ladeanimation -->
<script type="module" src="https://cdn.jsdelivr.net/npm/ldrs/dist/auto/quantum.js"></script>
<!-- Stylesheet -->
<style>
@font-face { font-family: "Titillium"; src: url("/Titillium-Web-Regular.ttf"); }
body, html {
font-family: 'Titillium';
height: 100%;
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background-color: #e6f7ff;
}
h1, h2 { text-align: center; }
/* Ladeanimation */
.loader-container {
display: none;
justify-content: center;
align-items: center;
height: 100%;
width: 100%;
position: fixed;
top: 0;
left: 0;
background-color: rgba(173, 216, 230, 0.8);
z-index: 9999;
}
.loading .loader-container { display: flex; }
/* Button-Style */
.button-share {
--white: #fff;
cursor: pointer;
background: linear-gradient(to bottom, #6e3bff, #7e51ff);
color: #fff;
border: 1px solid #af93ff;
border-radius: 8px;
position: relative;
font-family: Arial, Helvetica, sans-serif;
text-shadow: 0 2px 0 rgba(0, 0, 0, 0.25);
box-shadow: 0 8px 10px -4px #503b89, 0 0 0 2px #562cce;
font-size: 25px;
display: inline-flex;
align-items: center;
gap: 8px;
margin-top: 20px;
}
.button {
padding: 16px 32px; /* Doppelte Größe */
border-radius: 8px;
background: linear-gradient(to bottom, #007bff, #0056b3); /* Blau */
box-shadow: 0 2px 4px rgba(0,0,0,0.7);
transition: all 0.2s;
display: flex;
align-items: center;
gap: 8px;
margin-top: 20px; /* Abstand zum oberen Inhalt */
}
.button:hover {
box-shadow: 0 4px 8px rgba(0,0,0,0.6);
}
.button:active {
box-shadow: 0 0px 1px rgba(0,0,0,0.8);
transform: scale(0.995);
}
.button-text {
font-weight: 600;
color: white;
font-size: 1.5em; /* Textgröße anpassen */
}
.icon path.bm {
stroke-dasharray: 3;
stroke-dashoffset: 3;
stroke-width: 1px;
transform: translateX(-23px) translateY(16px) scale(2) rotate(-44deg);
}
.icon-container {
display: flex;
align-items: center;
justify-content: center;
padding: 8px 10px;
background-color: #fff;
border-radius: 50%;
box-shadow: inset 0 -2px 4px 0 #c6c6c6, 0 3px 6px rgba(0, 0, 0, 0.25);
text-align: center;
z-index: 10;
}
.icon-container .icon {
width: 25px;
height: 30px;
stroke: #592cd6;
margin-top: -2px;
z-index: 4;
/* Für das Teilen-Icon die Rotation entfernen */
}
.content {
pointer-events: none;
display: flex;
align-items: center;
justify-content: center;
z-index: 1;
position: relative;
height: 100%;
width: 100%;
padding: 4px;
gap: 16px;
border-radius: 7px;
font-weight: 600;
transition: all 0.3s ease;
}
.letters {
transition: all 0.3s ease;
display: flex;
align-items: center;
justify-content: center;
padding: 4px;
}
.letters span {
display: block;
color: transparent;
position: relative;
left: 6px;
animation: letterShow 1.2s ease backwards calc(var(--i) * 0.03s);
}
.letters span::before, .letters span::after {
content: attr(data-label);
position: absolute;
color: var(--white);
text-shadow: -1px 1px 2px var(--purple-500);
left: 0;
}
.letters span::before {
opacity: 0;
transform: translateY(-100%);
}
.button:hover .letters span::before {
animation: letterShow 0.7s ease calc(var(--i) * 0.03s);
}
.button:hover .letters span::after {
opacity: 1;
animation: letterHide 0.7s ease calc(var(--i) * 0.03s);
}
@keyframes letterShow {
0% { transform: translateY(50%); opacity: 0; filter: blur(20px); }
20% { transform: translateY(70%); opacity: 1; }
50% { transform: translateY(-15%); opacity: 1; filter: blur(0); }
100% { transform: translateY(0); opacity: 1; }
}
@keyframes letterHide {
0% { transform: translateY(0); opacity: 1; }
100% { transform: translateY(-70%); opacity: 0; filter: blur(3px); }
}
/* Modal-Stile */
.modal {
display: none;
position: fixed;
z-index: 1000;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgba(0,0,0,0.5);
}
.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
border: 1px solid #888;
width: 80%;
max-width: 400px;
text-align: center;
border-radius: 10px;
}
.close {
color: #aaa;
float: right;
font-size: 28px;
font-weight: bold;
cursor: pointer;
}
.close:hover,
.close:focus {
color: black;
}
.social-icons {
display: flex;
justify-content: center;
gap: 20px;
margin-top: 20px;
}
.social-icons a img {
width: 60px;
height: 60px;
transition: transform 0.2s;
}
.social-icons a img:hover {
transform: scale(1.1);
}
</style>
</head>
<body>
<!-- Ladeanimation -->
<div class="loader-container">
<l-quantum size="90" speed="1.75" color="black"></l-quantum>
</div>
<h1><img src="/icons/Controller.png" height="150"><br/>Creative Crafter</h1>
<h1>Capybara Jump and Run</h1>
<div align='center'>
<img src="/programmieren/spiele/capybara-jump-and-run/logo.svg" width="250">
</div>
<br/>
<div align='center'>
<!-- Spielen-Button -->
<button class="button" onclick="window.location.href=`/programmieren/spiele/capybara-jump-and-run/cajuanru.html`">
<div class="button-inner">
<span class="button-text"><img src="/icons/playbutton.png" alt="Icon" style="width:20px; height:20px; margin-right:5px;"> Play</span>
</div>
</button>
</a>
<br/><br/>
<!-- Neuer Teilen-Button -->
<button class="button-share" onclick="openSharePopup()">
<div class="icon-container">
<svg viewBox="0 0 24 24" fill="none" class="icon">
<!-- Teilen-Icon -->
<path d="M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7"></path>
<polyline points="16 6 12 2 8 6"></polyline>
<line x1="12" y1="2" x2="12" y2="15"></line>
</svg>
</div>
<div class="content">
<div class="letters">
<span data-label="S" style="--i:0;">S</span>
<span data-label="h" style="--i:1;">h</span>
<span data-label="a" style="--i:2;">a</span>
<span data-label="r" style="--i:3;">r</span>
<span data-label="e" style="--i:4;">e</span>
</div>
</div>
</button>
</div>
<!-- Popup-Fenster zum Teilen -->
<div id="shareModal" class="modal">
<div class="modal-content">
<span class="close" onclick="closeSharePopup()">&times;</span>
<h2>Share with:</h2>
<div class="social-icons">
<a href="#" onclick="shareViaWhatsApp()">
<img src="/icons/whatsapp.svg" alt="WhatsApp" />
</a>
<a href="#" onclick="shareViaPinterest()">
<img src="/icons/pinterest.svg" />
</a>
<a href="#" onclick="shareViaTelegram()">
<img src="/icons/telegram.svg" alt="Telegram" />
</a>
<a href="#" onclick="shareViaEmail()">
<img src="/icons/email.svg" alt="E-Mail" />
</a>
<!-- Kopieren -->
<a href="#" onclick="copyToClipboard()">
<img src="/icons/copy.svg" />
</a>
<!-- Weitere Sharing-Optionen kannst du hier hinzufügen -->
</div>
</div>
</div>
<br/><br/><br/>
<div align='center'>
<img src="/programmieren/spiele/capybara-jump-and-run/screenshot01.png" height="250">
<img src="/programmieren/spiele/capybara-jump-and-run/screenshot02.png" height="250">
</div>
<!-- JavaScript für Ladeanimation und Teilen-Funktion -->
<script>
// Ladeanimation beim Laden der Seite anzeigen
document.body.classList.add('loading');
// Ladeanimation entfernen, wenn die Seite vollständig geladen ist
window.addEventListener('load', () => {
document.body.classList.remove('loading');
});
// Funktion zum Öffnen des Popup-Fensters
function openSharePopup() {
document.getElementById("shareModal").style.display = "block";
}
// Funktion zum Schließen des Popup-Fensters
function closeSharePopup() {
document.getElementById("shareModal").style.display = "none";
}
// Teilen via WhatsApp
function shareViaWhatsApp() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/capybara-jump-and-run/');
const url = 'https://api.whatsapp.com/send?text=' + text;
window.open(url, '_blank');
}
// Teilen via Telegram
function shareViaTelegram() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/capybara-jump-and-run/');
const url = 'https://t.me/share/url?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/capybara-jump-and-run/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const media = encodeURIComponent('URL_ZU_DEINEM_BILD'); // Ersetze dies durch den tatsächlichen Bild-Link
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/capybara-jump-and-run/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text + '&media=' + media;
window.open(url, '_blank');
}
// Teilen via E-Mail
function shareViaEmail() {
const subject = encodeURIComponent('Capybara Jump and Run');
const body = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/capybara-jump-and-run/');
window.location.href = 'mailto:?subject=' + subject + '&body=' + body;
}
function copyToClipboard() {
const text = 'Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/capybara-jump-and-run/';
navigator.clipboard.writeText(text).then(function() {
alert('Text wurde in die Zwischenablage kopiert!');
}, function(err) {
alert('Fehler beim Kopieren in die Zwischenablage: ', err);
});
}
// Schließt das Popup bei Klick außerhalb des Inhalts
window.onclick = function(event) {
const modal = document.getElementById('shareModal');
if (event.target == modal) {
closeSharePopup();
}
}
</script>
</body>
</html>

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 MiB

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

View File

@ -0,0 +1,387 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Creative Crafter</title>
<!-- Ladeanimation -->
<script type="module" src="https://cdn.jsdelivr.net/npm/ldrs/dist/auto/quantum.js"></script>
<!-- Stylesheet -->
<style>
@font-face { font-family: "Titillium"; src: url("/Titillium-Web-Regular.ttf"); }
body, html {
font-family: 'Titillium';
height: 100%;
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background-color: #e6f7ff;
}
h1, h2 { text-align: center; }
/* Ladeanimation */
.loader-container {
display: none;
justify-content: center;
align-items: center;
height: 100%;
width: 100%;
position: fixed;
top: 0;
left: 0;
background-color: rgba(173, 216, 230, 0.8);
z-index: 9999;
}
.loading .loader-container { display: flex; }
/* Button-Style */
.button-share {
--white: #fff;
cursor: pointer;
background: linear-gradient(to bottom, #6e3bff, #7e51ff);
color: #fff;
border: 1px solid #af93ff;
border-radius: 8px;
position: relative;
font-family: Arial, Helvetica, sans-serif;
text-shadow: 0 2px 0 rgba(0, 0, 0, 0.25);
box-shadow: 0 8px 10px -4px #503b89, 0 0 0 2px #562cce;
font-size: 25px;
display: inline-flex;
align-items: center;
gap: 8px;
margin-top: 20px;
}
.button {
padding: 16px 32px; /* Doppelte Größe */
border-radius: 8px;
background: linear-gradient(to bottom, #007bff, #0056b3); /* Blau */
box-shadow: 0 2px 4px rgba(0,0,0,0.7);
transition: all 0.2s;
display: flex;
align-items: center;
gap: 8px;
margin-top: 20px; /* Abstand zum oberen Inhalt */
}
.button:hover {
box-shadow: 0 4px 8px rgba(0,0,0,0.6);
}
.button:active {
box-shadow: 0 0px 1px rgba(0,0,0,0.8);
transform: scale(0.995);
}
.button-text {
font-weight: 600;
color: white;
font-size: 1.5em; /* Textgröße anpassen */
}
.icon path.bm {
stroke-dasharray: 3;
stroke-dashoffset: 3;
stroke-width: 1px;
transform: translateX(-23px) translateY(16px) scale(2) rotate(-44deg);
}
.icon-container {
display: flex;
align-items: center;
justify-content: center;
padding: 8px 10px;
background-color: #fff;
border-radius: 50%;
box-shadow: inset 0 -2px 4px 0 #c6c6c6, 0 3px 6px rgba(0, 0, 0, 0.25);
text-align: center;
z-index: 10;
}
.icon-container .icon {
width: 25px;
height: 30px;
stroke: #592cd6;
margin-top: -2px;
z-index: 4;
/* Für das Teilen-Icon die Rotation entfernen */
}
.content {
pointer-events: none;
display: flex;
align-items: center;
justify-content: center;
z-index: 1;
position: relative;
height: 100%;
width: 100%;
padding: 4px;
gap: 16px;
border-radius: 7px;
font-weight: 600;
transition: all 0.3s ease;
}
.letters {
transition: all 0.3s ease;
display: flex;
align-items: center;
justify-content: center;
padding: 4px;
}
.letters span {
display: block;
color: transparent;
position: relative;
left: 6px;
animation: letterShow 1.2s ease backwards calc(var(--i) * 0.03s);
}
.letters span::before, .letters span::after {
content: attr(data-label);
position: absolute;
color: var(--white);
text-shadow: -1px 1px 2px var(--purple-500);
left: 0;
}
.letters span::before {
opacity: 0;
transform: translateY(-100%);
}
.button:hover .letters span::before {
animation: letterShow 0.7s ease calc(var(--i) * 0.03s);
}
.button:hover .letters span::after {
opacity: 1;
animation: letterHide 0.7s ease calc(var(--i) * 0.03s);
}
@keyframes letterShow {
0% { transform: translateY(50%); opacity: 0; filter: blur(20px); }
20% { transform: translateY(70%); opacity: 1; }
50% { transform: translateY(-15%); opacity: 1; filter: blur(0); }
100% { transform: translateY(0); opacity: 1; }
}
@keyframes letterHide {
0% { transform: translateY(0); opacity: 1; }
100% { transform: translateY(-70%); opacity: 0; filter: blur(3px); }
}
/* Modal-Stile */
.modal {
display: none;
position: fixed;
z-index: 1000;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgba(0,0,0,0.5);
}
.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
border: 1px solid #888;
width: 80%;
max-width: 400px;
text-align: center;
border-radius: 10px;
}
.close {
color: #aaa;
float: right;
font-size: 28px;
font-weight: bold;
cursor: pointer;
}
.close:hover,
.close:focus {
color: black;
}
.social-icons {
display: flex;
justify-content: center;
gap: 20px;
margin-top: 20px;
}
.social-icons a img {
width: 60px;
height: 60px;
transition: transform 0.2s;
}
.social-icons a img:hover {
transform: scale(1.1);
}
</style>
</head>
<body>
<!-- Ladeanimation -->
<div class="loader-container">
<l-quantum size="90" speed="1.75" color="black"></l-quantum>
</div>
<h1><img src="/icons/Controller.png" height="150"><br/>Creative Crafter</h1>
<h1>Fruit or No</h1>
<div align='center'>
<img src="/programmieren/spiele/fruit-or-no/logo.png" width="250">
</div>
<br/>
<div align='center'>
<!-- Spielen-Button -->
<button class="button" onclick="window.location.href=`/programmieren/spiele/fruit-or-no/fruit-or-no.html`">
<div class="button-inner">
<span class="button-text"><img src="/icons/playbutton.png" alt="Icon" style="width:20px; height:20px; margin-right:5px;"> Play</span>
</div>
</button>
</a>
<br/><br/>
<!-- Neuer Teilen-Button -->
<button class="button-share" onclick="openSharePopup()">
<div class="icon-container">
<svg viewBox="0 0 24 24" fill="none" class="icon">
<!-- Teilen-Icon -->
<path d="M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7"></path>
<polyline points="16 6 12 2 8 6"></polyline>
<line x1="12" y1="2" x2="12" y2="15"></line>
</svg>
</div>
<div class="content">
<div class="letters">
<span data-label="S" style="--i:0;">S</span>
<span data-label="h" style="--i:1;">h</span>
<span data-label="a" style="--i:2;">a</span>
<span data-label="r" style="--i:3;">r</span>
<span data-label="e" style="--i:4;">e</span>
</div>
</div>
</button>
</div>
<!-- Popup-Fenster zum Teilen -->
<div id="shareModal" class="modal">
<div class="modal-content">
<span class="close" onclick="closeSharePopup()">&times;</span>
<h2>Share with:</h2>
<div class="social-icons">
<a href="#" onclick="shareViaWhatsApp()">
<img src="/icons/whatsapp.svg" alt="WhatsApp" />
</a>
<a href="#" onclick="shareViaPinterest()">
<img src="/icons/pinterest.svg" />
</a>
<a href="#" onclick="shareViaTelegram()">
<img src="/icons/telegram.svg" alt="Telegram" />
</a>
<a href="#" onclick="shareViaEmail()">
<img src="/icons/email.svg" alt="E-Mail" />
</a>
<!-- Kopieren -->
<a href="#" onclick="copyToClipboard()">
<img src="/icons/copy.svg" />
</a>
<!-- Weitere Sharing-Optionen kannst du hier hinzufügen -->
</div>
</div>
</div>
<br/><br/><br/>
<div align='center'>
<img src="/programmieren/spiele/fruit-or-no/fruit-or-no1.png" height="250">
<img src="/programmieren/spiele/fruit-or-no/fruit-or-no2.png" height="250">
</div>
<!-- JavaScript für Ladeanimation und Teilen-Funktion -->
<script>
// Ladeanimation beim Laden der Seite anzeigen
document.body.classList.add('loading');
// Ladeanimation entfernen, wenn die Seite vollständig geladen ist
window.addEventListener('load', () => {
document.body.classList.remove('loading');
});
// Funktion zum Öffnen des Popup-Fensters
function openSharePopup() {
document.getElementById("shareModal").style.display = "block";
}
// Funktion zum Schließen des Popup-Fensters
function closeSharePopup() {
document.getElementById("shareModal").style.display = "none";
}
// Teilen via WhatsApp
function shareViaWhatsApp() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/fruit-or-no/');
const url = 'https://api.whatsapp.com/send?text=' + text;
window.open(url, '_blank');
}
// Teilen via Telegram
function shareViaTelegram() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/fruit-or-no/');
const url = 'https://t.me/share/url?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/fruit-or-no/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const media = encodeURIComponent('URL_ZU_DEINEM_BILD'); // Ersetze dies durch den tatsächlichen Bild-Link
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/fruit-or-no/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text + '&media=' + media;
window.open(url, '_blank');
}
// Teilen via E-Mail
function shareViaEmail() {
const subject = encodeURIComponent('Fruit or No');
const body = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/fruit-or-no/');
window.location.href = 'mailto:?subject=' + subject + '&body=' + body;
}
function copyToClipboard() {
const text = 'Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/fruit-or-no/';
navigator.clipboard.writeText(text).then(function() {
alert('Text wurde in die Zwischenablage kopiert!');
}, function(err) {
alert('Fehler beim Kopieren in die Zwischenablage: ', err);
});
}
// Schließt das Popup bei Klick außerhalb des Inhalts
window.onclick = function(event) {
const modal = document.getElementById('shareModal');
if (event.target == modal) {
closeSharePopup();
}
}
</script>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 776 KiB

View File

@ -0,0 +1,101 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Creative Crafter</title>
<link href="" rel="stylesheet">
<style>
@font-face {
font-family: "Titillium";
src: url("/Titillium-Web-Regular.ttf");
}
body {
font-family: 'Titillium';
height: 100%;
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background-color: #e6f7ff; /* Leichtes Blau */
}
h1 {
text-align: center;
}
h2 {
text-align: center;
}
h1, h2, h3 {
text-align: center;
}
.category-container {
width: 80%;
max-width: 800px;
margin-top: 20px;
}
.category {
padding: 15px;
border: 1px solid #ccc;
border-radius: 8px;
margin: 10px 0;
background-color: #fff;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
text-align: left;
}
.category-title {
font-size: 1.2em;
font-weight: bold;
margin-bottom: 5px;
}
.category-description {
font-size: 1em;
margin-bottom: 10px;
}
.category a {
color: #007bff;
text-decoration: none;
}
.category a:hover {
text-decoration: underline;
}
</style>
</head>
<body>
<h1><img src="/icons/Controller.png" height="150svh"><br/>Creative Crafter</h1>
<h1>My Games</h1>
<div class="category-container">
<div class="category">
<div class="category-title">Klick the Witch</div>
<div class="category-description">Klick the Witch is a mini-game. Tap evil witches for points, avoid good ones, and manage 3 lives.</div>
<a href="/programmieren/spiele/klick-the-witch">Mehr erfahren</a>
</div>
<div class="category">
<div class="category-title">Flappy Witch</div>
<div class="category-description">Help the witch navigate through the pipes, collecting points and avoiding obstacles. Test your skills in this magical adventure!</div>
<a href="/programmieren/spiele/Flappy-Witch">Mehr erfahren</a>
</div>
<div class="category">
<div class="category-title">Capybara Jump and Run</div>
<div class="category-description">Collect apples for points, avoid deadly spikes. Guide your capybara to a fun and thrilling adventure. Play now!</div>
<a href="/programmieren/spiele/capybara-jump-and-run">Mehr erfahren</a>
</div>
<div class="category">
<div class="category-title">Fruit or No</div>
<div class="category-description">Tap fruits for points. Let non-food items fall. Test reflexes in this fast-paced, fun game.</div>
<a href="/programmieren/spiele/fruit-or-no">Mehr erfahren</a>
</div>
<div class="category">
<div class="category-title">Sweets for Animals</div>
<div class="category-description">Tap the cat for cakes, bunny for donuts. Give Sweets away.</div>
<a href="/programmieren/spiele/sweets-for-animals">Mehr erfahren</a>
</div>
<div class="category">
<div class="category-title">Snake Game</div>
<div class="category-description">Experience the timeless classic by guiding the snake, collecting food, avoiding collisions! Play now.</div>
<a href="/programmieren/spiele/snake">Mehr erfahren</a>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,387 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Creative Crafter</title>
<!-- Ladeanimation -->
<script type="module" src="https://cdn.jsdelivr.net/npm/ldrs/dist/auto/quantum.js"></script>
<!-- Stylesheet -->
<style>
@font-face { font-family: "Titillium"; src: url("/Titillium-Web-Regular.ttf"); }
body, html {
font-family: 'Titillium';
height: 100%;
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background-color: #e6f7ff;
}
h1, h2 { text-align: center; }
/* Ladeanimation */
.loader-container {
display: none;
justify-content: center;
align-items: center;
height: 100%;
width: 100%;
position: fixed;
top: 0;
left: 0;
background-color: rgba(173, 216, 230, 0.8);
z-index: 9999;
}
.loading .loader-container { display: flex; }
/* Button-Style */
.button-share {
--white: #fff;
cursor: pointer;
background: linear-gradient(to bottom, #6e3bff, #7e51ff);
color: #fff;
border: 1px solid #af93ff;
border-radius: 8px;
position: relative;
font-family: Arial, Helvetica, sans-serif;
text-shadow: 0 2px 0 rgba(0, 0, 0, 0.25);
box-shadow: 0 8px 10px -4px #503b89, 0 0 0 2px #562cce;
font-size: 25px;
display: inline-flex;
align-items: center;
gap: 8px;
margin-top: 20px;
}
.button {
padding: 16px 32px; /* Doppelte Größe */
border-radius: 8px;
background: linear-gradient(to bottom, #007bff, #0056b3); /* Blau */
box-shadow: 0 2px 4px rgba(0,0,0,0.7);
transition: all 0.2s;
display: flex;
align-items: center;
gap: 8px;
margin-top: 20px; /* Abstand zum oberen Inhalt */
}
.button:hover {
box-shadow: 0 4px 8px rgba(0,0,0,0.6);
}
.button:active {
box-shadow: 0 0px 1px rgba(0,0,0,0.8);
transform: scale(0.995);
}
.button-text {
font-weight: 600;
color: white;
font-size: 1.5em; /* Textgröße anpassen */
}
.icon path.bm {
stroke-dasharray: 3;
stroke-dashoffset: 3;
stroke-width: 1px;
transform: translateX(-23px) translateY(16px) scale(2) rotate(-44deg);
}
.icon-container {
display: flex;
align-items: center;
justify-content: center;
padding: 8px 10px;
background-color: #fff;
border-radius: 50%;
box-shadow: inset 0 -2px 4px 0 #c6c6c6, 0 3px 6px rgba(0, 0, 0, 0.25);
text-align: center;
z-index: 10;
}
.icon-container .icon {
width: 25px;
height: 30px;
stroke: #592cd6;
margin-top: -2px;
z-index: 4;
/* Für das Teilen-Icon die Rotation entfernen */
}
.content {
pointer-events: none;
display: flex;
align-items: center;
justify-content: center;
z-index: 1;
position: relative;
height: 100%;
width: 100%;
padding: 4px;
gap: 16px;
border-radius: 7px;
font-weight: 600;
transition: all 0.3s ease;
}
.letters {
transition: all 0.3s ease;
display: flex;
align-items: center;
justify-content: center;
padding: 4px;
}
.letters span {
display: block;
color: transparent;
position: relative;
left: 6px;
animation: letterShow 1.2s ease backwards calc(var(--i) * 0.03s);
}
.letters span::before, .letters span::after {
content: attr(data-label);
position: absolute;
color: var(--white);
text-shadow: -1px 1px 2px var(--purple-500);
left: 0;
}
.letters span::before {
opacity: 0;
transform: translateY(-100%);
}
.button:hover .letters span::before {
animation: letterShow 0.7s ease calc(var(--i) * 0.03s);
}
.button:hover .letters span::after {
opacity: 1;
animation: letterHide 0.7s ease calc(var(--i) * 0.03s);
}
@keyframes letterShow {
0% { transform: translateY(50%); opacity: 0; filter: blur(20px); }
20% { transform: translateY(70%); opacity: 1; }
50% { transform: translateY(-15%); opacity: 1; filter: blur(0); }
100% { transform: translateY(0); opacity: 1; }
}
@keyframes letterHide {
0% { transform: translateY(0); opacity: 1; }
100% { transform: translateY(-70%); opacity: 0; filter: blur(3px); }
}
/* Modal-Stile */
.modal {
display: none;
position: fixed;
z-index: 1000;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgba(0,0,0,0.5);
}
.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
border: 1px solid #888;
width: 80%;
max-width: 400px;
text-align: center;
border-radius: 10px;
}
.close {
color: #aaa;
float: right;
font-size: 28px;
font-weight: bold;
cursor: pointer;
}
.close:hover,
.close:focus {
color: black;
}
.social-icons {
display: flex;
justify-content: center;
gap: 20px;
margin-top: 20px;
}
.social-icons a img {
width: 60px;
height: 60px;
transition: transform 0.2s;
}
.social-icons a img:hover {
transform: scale(1.1);
}
</style>
</head>
<body>
<!-- Ladeanimation -->
<div class="loader-container">
<l-quantum size="90" speed="1.75" color="black"></l-quantum>
</div>
<h1><img src="/icons/Controller.png" height="150"><br/>Creative Crafter</h1>
<h1>Klick the Witch</h1>
<div align='center'>
<img src="/programmieren/spiele/klick-the-witch/logo.png" width="250">
</div>
<br/>
<div align='center'>
<!-- Spielen-Button -->
<button class="button" onclick="window.location.href=`/programmieren/spiele/klick-the-witch/witc1h.html`">
<div class="button-inner">
<span class="button-text"><img src="/icons/playbutton.png" alt="Icon" style="width:20px; height:20px; margin-right:5px;"> Play</span>
</div>
</button>
</a>
<br/><br/>
<!-- Neuer Teilen-Button -->
<button class="button-share" onclick="openSharePopup()">
<div class="icon-container">
<svg viewBox="0 0 24 24" fill="none" class="icon">
<!-- Teilen-Icon -->
<path d="M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7"></path>
<polyline points="16 6 12 2 8 6"></polyline>
<line x1="12" y1="2" x2="12" y2="15"></line>
</svg>
</div>
<div class="content">
<div class="letters">
<span data-label="S" style="--i:0;">S</span>
<span data-label="h" style="--i:1;">h</span>
<span data-label="a" style="--i:2;">a</span>
<span data-label="r" style="--i:3;">r</span>
<span data-label="e" style="--i:4;">e</span>
</div>
</div>
</button>
</div>
<!-- Popup-Fenster zum Teilen -->
<div id="shareModal" class="modal">
<div class="modal-content">
<span class="close" onclick="closeSharePopup()">&times;</span>
<h2>Share with:</h2>
<div class="social-icons">
<a href="#" onclick="shareViaWhatsApp()">
<img src="/icons/whatsapp.svg" alt="WhatsApp" />
</a>
<a href="#" onclick="shareViaPinterest()">
<img src="/icons/pinterest.svg" />
</a>
<a href="#" onclick="shareViaTelegram()">
<img src="/icons/telegram.svg" alt="Telegram" />
</a>
<a href="#" onclick="shareViaEmail()">
<img src="/icons/email.svg" alt="E-Mail" />
</a>
<!-- Kopieren -->
<a href="#" onclick="copyToClipboard()">
<img src="/icons/copy.svg" />
</a>
<!-- Weitere Sharing-Optionen kannst du hier hinzufügen -->
</div>
</div>
</div>
<br/><br/><br/>
<div align='center'>
<img src="/programmieren/spiele/klick-the-witch/screenshot01.png" height="250">
<img src="/programmieren/spiele/klick-the-witch/screenshot02.png" height="250">
</div>
<!-- JavaScript für Ladeanimation und Teilen-Funktion -->
<script>
// Ladeanimation beim Laden der Seite anzeigen
document.body.classList.add('loading');
// Ladeanimation entfernen, wenn die Seite vollständig geladen ist
window.addEventListener('load', () => {
document.body.classList.remove('loading');
});
// Funktion zum Öffnen des Popup-Fensters
function openSharePopup() {
document.getElementById("shareModal").style.display = "block";
}
// Funktion zum Schließen des Popup-Fensters
function closeSharePopup() {
document.getElementById("shareModal").style.display = "none";
}
// Teilen via WhatsApp
function shareViaWhatsApp() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/klick-the-witch/');
const url = 'https://api.whatsapp.com/send?text=' + text;
window.open(url, '_blank');
}
// Teilen via Telegram
function shareViaTelegram() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/klick-the-witch/');
const url = 'https://t.me/share/url?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/klick-the-witch/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const media = encodeURIComponent('URL_ZU_DEINEM_BILD'); // Ersetze dies durch den tatsächlichen Bild-Link
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/klick-the-witch/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text + '&media=' + media;
window.open(url, '_blank');
}
// Teilen via E-Mail
function shareViaEmail() {
const subject = encodeURIComponent('Klick the Witch');
const body = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/klick-the-witch/');
window.location.href = 'mailto:?subject=' + subject + '&body=' + body;
}
function copyToClipboard() {
const text = 'Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/klick-the-witch/';
navigator.clipboard.writeText(text).then(function() {
alert('Text wurde in die Zwischenablage kopiert!');
}, function(err) {
alert('Fehler beim Kopieren in die Zwischenablage: ', err);
});
}
// Schließt das Popup bei Klick außerhalb des Inhalts
window.onclick = function(event) {
const modal = document.getElementById('shareModal');
if (event.target == modal) {
closeSharePopup();
}
}
</script>
</body>
</html>

View File

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 39 KiB

View File

Before

Width:  |  Height:  |  Size: 230 KiB

After

Width:  |  Height:  |  Size: 230 KiB

View File

Before

Width:  |  Height:  |  Size: 978 KiB

After

Width:  |  Height:  |  Size: 978 KiB

View File

Before

Width:  |  Height:  |  Size: 498 KiB

After

Width:  |  Height:  |  Size: 498 KiB

View File

Before

Width:  |  Height:  |  Size: 3.5 MiB

After

Width:  |  Height:  |  Size: 3.5 MiB

View File

Before

Width:  |  Height:  |  Size: 3.5 MiB

After

Width:  |  Height:  |  Size: 3.5 MiB

View File

@ -0,0 +1,51 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Snake Game</title>
<style>
body { display: flex; justify-content: center; align-items: center; height: 100vh; margin: 0; background-color: #000; }
canvas { border: 1px solid #fff; }
#startScreen { display: none; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: white; text-align: center; }
</style>
</head>
<body>
<canvas id="gameCanvas" width="400" height="400"></canvas>
<div id="startScreen"><h1>Snake Game</h1><p>Press Space to Start</p></div>
<script>
const canvas = document.getElementById('gameCanvas'), ctx = canvas.getContext('2d'), startScreen = document.getElementById('startScreen');
const gridSize = 20; let snake = [{ x: 200, y: 200 }], direction = { x: 0, y: 0 }, food = { x: 0, y: 0 }, gameOver = false, gameStarted = false;
const getRandomFoodPosition = () => ({ x: Math.floor(Math.random() * (canvas.width / gridSize)) * gridSize, y: Math.floor(Math.random() * (canvas.height / gridSize)) * gridSize });
const drawRect = (x, y, color) => { ctx.fillStyle = color; ctx.fillRect(x, y, gridSize, gridSize); };
const update = () => {
if (gameOver) return;
const head = { x: snake[0].x + direction.x, y: snake[0].y + direction.y };
if (head.x < 0 || head.x >= canvas.width || head.y < 0 || head.y >= canvas.height || snake.some(segment => segment.x === head.x && segment.y === head.y)) {
gameOver = true;
location.reload(); // Reload the page when the game is over
return;
}
snake.unshift(head);
if (head.x === food.x && head.y === food.y) food = getRandomFoodPosition(); else snake.pop();
};
const draw = () => { ctx.clearRect(0, 0, canvas.width, canvas.height); snake.forEach(segment => drawRect(segment.x, segment.y, 'lime')); drawRect(food.x, food.y, 'red'); };
const gameLoop = () => { update(); draw(); if (!gameOver) setTimeout(gameLoop, 100); };
const resetGame = () => { snake = [{ x: 200, y: 200 }]; direction = { x: 0, y: 0 }; food = getRandomFoodPosition(); gameOver = false; gameLoop(); };
window.addEventListener('keydown', e => {
switch (e.key) {
case 'ArrowUp': case 'w': if (direction.y === 0) direction = { x: 0, y: -gridSize }; break;
case 'ArrowDown': case 's': if (direction.y === 0) direction = { x: 0, y: gridSize }; break;
case 'ArrowLeft': case 'a': if (direction.x === 0) direction = { x: -gridSize, y: 0 }; break;
case 'ArrowRight': case 'd': if (direction.x === 0) direction = { x: gridSize, y: 0 }; break;
case ' ': if (gameOver) resetGame(); else if (!gameStarted) { startScreen.style.display = 'none'; gameStarted = true; gameLoop(); } break;
}
});
food = getRandomFoodPosition();
startScreen.style.display = 'block';
</script>
</body>
</html>

View File

@ -0,0 +1,387 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Creative Crafter</title>
<!-- Ladeanimation -->
<script type="module" src="https://cdn.jsdelivr.net/npm/ldrs/dist/auto/quantum.js"></script>
<!-- Stylesheet -->
<style>
@font-face { font-family: "Titillium"; src: url("/Titillium-Web-Regular.ttf"); }
body, html {
font-family: 'Titillium';
height: 100%;
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background-color: #e6f7ff;
}
h1, h2 { text-align: center; }
/* Ladeanimation */
.loader-container {
display: none;
justify-content: center;
align-items: center;
height: 100%;
width: 100%;
position: fixed;
top: 0;
left: 0;
background-color: rgba(173, 216, 230, 0.8);
z-index: 9999;
}
.loading .loader-container { display: flex; }
/* Button-Style */
.button-share {
--white: #fff;
cursor: pointer;
background: linear-gradient(to bottom, #6e3bff, #7e51ff);
color: #fff;
border: 1px solid #af93ff;
border-radius: 8px;
position: relative;
font-family: Arial, Helvetica, sans-serif;
text-shadow: 0 2px 0 rgba(0, 0, 0, 0.25);
box-shadow: 0 8px 10px -4px #503b89, 0 0 0 2px #562cce;
font-size: 25px;
display: inline-flex;
align-items: center;
gap: 8px;
margin-top: 20px;
}
.button {
padding: 16px 32px; /* Doppelte Größe */
border-radius: 8px;
background: linear-gradient(to bottom, #007bff, #0056b3); /* Blau */
box-shadow: 0 2px 4px rgba(0,0,0,0.7);
transition: all 0.2s;
display: flex;
align-items: center;
gap: 8px;
margin-top: 20px; /* Abstand zum oberen Inhalt */
}
.button:hover {
box-shadow: 0 4px 8px rgba(0,0,0,0.6);
}
.button:active {
box-shadow: 0 0px 1px rgba(0,0,0,0.8);
transform: scale(0.995);
}
.button-text {
font-weight: 600;
color: white;
font-size: 1.5em; /* Textgröße anpassen */
}
.icon path.bm {
stroke-dasharray: 3;
stroke-dashoffset: 3;
stroke-width: 1px;
transform: translateX(-23px) translateY(16px) scale(2) rotate(-44deg);
}
.icon-container {
display: flex;
align-items: center;
justify-content: center;
padding: 8px 10px;
background-color: #fff;
border-radius: 50%;
box-shadow: inset 0 -2px 4px 0 #c6c6c6, 0 3px 6px rgba(0, 0, 0, 0.25);
text-align: center;
z-index: 10;
}
.icon-container .icon {
width: 25px;
height: 30px;
stroke: #592cd6;
margin-top: -2px;
z-index: 4;
/* Für das Teilen-Icon die Rotation entfernen */
}
.content {
pointer-events: none;
display: flex;
align-items: center;
justify-content: center;
z-index: 1;
position: relative;
height: 100%;
width: 100%;
padding: 4px;
gap: 16px;
border-radius: 7px;
font-weight: 600;
transition: all 0.3s ease;
}
.letters {
transition: all 0.3s ease;
display: flex;
align-items: center;
justify-content: center;
padding: 4px;
}
.letters span {
display: block;
color: transparent;
position: relative;
left: 6px;
animation: letterShow 1.2s ease backwards calc(var(--i) * 0.03s);
}
.letters span::before, .letters span::after {
content: attr(data-label);
position: absolute;
color: var(--white);
text-shadow: -1px 1px 2px var(--purple-500);
left: 0;
}
.letters span::before {
opacity: 0;
transform: translateY(-100%);
}
.button:hover .letters span::before {
animation: letterShow 0.7s ease calc(var(--i) * 0.03s);
}
.button:hover .letters span::after {
opacity: 1;
animation: letterHide 0.7s ease calc(var(--i) * 0.03s);
}
@keyframes letterShow {
0% { transform: translateY(50%); opacity: 0; filter: blur(20px); }
20% { transform: translateY(70%); opacity: 1; }
50% { transform: translateY(-15%); opacity: 1; filter: blur(0); }
100% { transform: translateY(0); opacity: 1; }
}
@keyframes letterHide {
0% { transform: translateY(0); opacity: 1; }
100% { transform: translateY(-70%); opacity: 0; filter: blur(3px); }
}
/* Modal-Stile */
.modal {
display: none;
position: fixed;
z-index: 1000;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgba(0,0,0,0.5);
}
.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
border: 1px solid #888;
width: 80%;
max-width: 400px;
text-align: center;
border-radius: 10px;
}
.close {
color: #aaa;
float: right;
font-size: 28px;
font-weight: bold;
cursor: pointer;
}
.close:hover,
.close:focus {
color: black;
}
.social-icons {
display: flex;
justify-content: center;
gap: 20px;
margin-top: 20px;
}
.social-icons a img {
width: 60px;
height: 60px;
transition: transform 0.2s;
}
.social-icons a img:hover {
transform: scale(1.1);
}
</style>
</head>
<body>
<!-- Ladeanimation -->
<div class="loader-container">
<l-quantum size="90" speed="1.75" color="black"></l-quantum>
</div>
<h1><img src="/icons/Controller.png" height="150"><br/>Creative Crafter</h1>
<h1>Snake</h1>
<div align='center'>
<img src="/programmieren/spiele/snake/logo.svg" width="250">
</div>
<br/>
<div align='center'>
<!-- Spielen-Button -->
<button class="button" onclick="window.location.href=`/programmieren/spiele/snake/snake.html`">
<div class="button-inner">
<span class="button-text"><img src="/icons/playbutton.png" alt="Icon" style="width:20px; height:20px; margin-right:5px;"> Play</span>
</div>
</button>
</a>
<br/><br/>
<!-- Neuer Teilen-Button -->
<button class="button-share" onclick="openSharePopup()">
<div class="icon-container">
<svg viewBox="0 0 24 24" fill="none" class="icon">
<!-- Teilen-Icon -->
<path d="M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7"></path>
<polyline points="16 6 12 2 8 6"></polyline>
<line x1="12" y1="2" x2="12" y2="15"></line>
</svg>
</div>
<div class="content">
<div class="letters">
<span data-label="S" style="--i:0;">S</span>
<span data-label="h" style="--i:1;">h</span>
<span data-label="a" style="--i:2;">a</span>
<span data-label="r" style="--i:3;">r</span>
<span data-label="e" style="--i:4;">e</span>
</div>
</div>
</button>
</div>
<!-- Popup-Fenster zum Teilen -->
<div id="shareModal" class="modal">
<div class="modal-content">
<span class="close" onclick="closeSharePopup()">&times;</span>
<h2>Share with:</h2>
<div class="social-icons">
<a href="#" onclick="shareViaWhatsApp()">
<img src="/icons/whatsapp.svg" alt="WhatsApp" />
</a>
<a href="#" onclick="shareViaPinterest()">
<img src="/icons/pinterest.svg" />
</a>
<a href="#" onclick="shareViaTelegram()">
<img src="/icons/telegram.svg" alt="Telegram" />
</a>
<a href="#" onclick="shareViaEmail()">
<img src="/icons/email.svg" alt="E-Mail" />
</a>
<!-- Kopieren -->
<a href="#" onclick="copyToClipboard()">
<img src="/icons/copy.svg" />
</a>
<!-- Weitere Sharing-Optionen kannst du hier hinzufügen -->
</div>
</div>
</div>
<br/><br/><br/>
<div align='center'>
<img src="/programmieren/spiele/snake/screenshot01.png" height="250">
<img src="/programmieren/spiele/snake/screenshot02.png" height="250">
</div>
<!-- JavaScript für Ladeanimation und Teilen-Funktion -->
<script>
// Ladeanimation beim Laden der Seite anzeigen
document.body.classList.add('loading');
// Ladeanimation entfernen, wenn die Seite vollständig geladen ist
window.addEventListener('load', () => {
document.body.classList.remove('loading');
});
// Funktion zum Öffnen des Popup-Fensters
function openSharePopup() {
document.getElementById("shareModal").style.display = "block";
}
// Funktion zum Schließen des Popup-Fensters
function closeSharePopup() {
document.getElementById("shareModal").style.display = "none";
}
// Teilen via WhatsApp
function shareViaWhatsApp() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/snake/');
const url = 'https://api.whatsapp.com/send?text=' + text;
window.open(url, '_blank');
}
// Teilen via Telegram
function shareViaTelegram() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/snake/');
const url = 'https://t.me/share/url?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/snake/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const media = encodeURIComponent('URL_ZU_DEINEM_BILD'); // Ersetze dies durch den tatsächlichen Bild-Link
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/snake/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text + '&media=' + media;
window.open(url, '_blank');
}
// Teilen via E-Mail
function shareViaEmail() {
const subject = encodeURIComponent('Snake');
const body = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/snake/');
window.location.href = 'mailto:?subject=' + subject + '&body=' + body;
}
function copyToClipboard() {
const text = 'Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/snake/';
navigator.clipboard.writeText(text).then(function() {
alert('Text has been copied to the clipboard!');
}, function(err) {
alert('Error copying to clipboard!: ', err);
});
}
// Schließt das Popup bei Klick außerhalb des Inhalts
window.onclick = function(event) {
const modal = document.getElementById('shareModal');
if (event.target == modal) {
closeSharePopup();
}
}
</script>
</body>
</html>

View File

@ -0,0 +1 @@
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="277" height="285" viewBox="0,0,277,285"><g transform="translate(-105.5,-38.5)"><g stroke="none" stroke-miterlimit="10"><path d="M105.5,323.5v-285h277v285z" fill="#000000" stroke-width="0"/><path d="M167.5,193.58489v-26.08489h25.35268v26.08489z" fill="#ff0000" stroke-width="0"/><g fill="#00ff00" stroke-width="0"><path d="M167.5,117.41822v-26.08488h25.35268v26.08489z"/><g><path d="M167.41602,66.77253l26.08467,-0.10603l0.10305,25.35247l-26.08467,0.10603z"/><path d="M192.74915,66.66956l26.08467,-0.10603l0.10305,25.35247l-26.08467,0.10603z"/><path d="M218.24894,66.56591l26.08467,-0.10603l0.10305,25.35247l-26.08467,0.10603z"/></g></g><text transform="translate(123.79263,283.89989) scale(1.16743,1.16743)" font-size="40" xml:space="preserve" fill="#ffffff" stroke-width="1" font-family="Serif" font-weight="normal" text-anchor="start"><tspan x="0" dy="0">Snake Game</tspan></text></g></g></svg><!--rotationCenter:134.5:141.5-->

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 718 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 690 KiB

View File

@ -0,0 +1,51 @@
<!DOCTYPE html>
<!-- saved from url=(0060)https://test.creative-crafter.de/programmieren/spiele/Snake/ -->
<html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Snake Game</title>
<style>
body { display: flex; justify-content: center; align-items: center; height: 100vh; margin: 0; background-color: #000; }
canvas { border: 1px solid #fff; }
#startScreen { display: none; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: white; text-align: center; }
</style>
</head>
<body>
<canvas id="gameCanvas" width="400" height="400"></canvas>
<div id="startScreen" style="display: block;"><h1>Snake Game</h1><p>Press Space to Start</p></div>
<script>
const canvas = document.getElementById('gameCanvas'), ctx = canvas.getContext('2d'), startScreen = document.getElementById('startScreen');
const gridSize = 20; let snake = [{ x: 200, y: 200 }], direction = { x: 0, y: 0 }, food = { x: 0, y: 0 }, gameOver = false, gameStarted = false;
const getRandomFoodPosition = () => ({ x: Math.floor(Math.random() * (canvas.width / gridSize)) * gridSize, y: Math.floor(Math.random() * (canvas.height / gridSize)) * gridSize });
const drawRect = (x, y, color) => { ctx.fillStyle = color; ctx.fillRect(x, y, gridSize, gridSize); };
const update = () => {
if (gameOver) return;
const head = { x: snake[0].x + direction.x, y: snake[0].y + direction.y };
if (head.x < 0 || head.x >= canvas.width || head.y < 0 || head.y >= canvas.height || snake.some(segment => segment.x === head.x && segment.y === head.y)) {
gameOver = true;
location.reload(); // Reload the page when the game is over
return;
}
snake.unshift(head);
if (head.x === food.x && head.y === food.y) food = getRandomFoodPosition(); else snake.pop();
};
const draw = () => { ctx.clearRect(0, 0, canvas.width, canvas.height); snake.forEach(segment => drawRect(segment.x, segment.y, 'lime')); drawRect(food.x, food.y, 'red'); };
const gameLoop = () => { update(); draw(); if (!gameOver) setTimeout(gameLoop, 100); };
const resetGame = () => { snake = [{ x: 200, y: 200 }]; direction = { x: 0, y: 0 }; food = getRandomFoodPosition(); gameOver = false; gameLoop(); };
window.addEventListener('keydown', e => {
switch (e.key) {
case 'ArrowUp': case 'w': if (direction.y === 0) direction = { x: 0, y: -gridSize }; break;
case 'ArrowDown': case 's': if (direction.y === 0) direction = { x: 0, y: gridSize }; break;
case 'ArrowLeft': case 'a': if (direction.x === 0) direction = { x: -gridSize, y: 0 }; break;
case 'ArrowRight': case 'd': if (direction.x === 0) direction = { x: gridSize, y: 0 }; break;
case ' ': if (gameOver) resetGame(); else if (!gameStarted) { startScreen.style.display = 'none'; gameStarted = true; gameLoop(); } break;
}
});
food = getRandomFoodPosition();
startScreen.style.display = 'block';
</script>
</body></html>

View File

@ -0,0 +1,387 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Creative Crafter</title>
<!-- Ladeanimation -->
<script type="module" src="https://cdn.jsdelivr.net/npm/ldrs/dist/auto/quantum.js"></script>
<!-- Stylesheet -->
<style>
@font-face { font-family: "Titillium"; src: url("/Titillium-Web-Regular.ttf"); }
body, html {
font-family: 'Titillium';
height: 100%;
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background-color: #e6f7ff;
}
h1, h2 { text-align: center; }
/* Ladeanimation */
.loader-container {
display: none;
justify-content: center;
align-items: center;
height: 100%;
width: 100%;
position: fixed;
top: 0;
left: 0;
background-color: rgba(173, 216, 230, 0.8);
z-index: 9999;
}
.loading .loader-container { display: flex; }
/* Button-Style */
.button-share {
--white: #fff;
cursor: pointer;
background: linear-gradient(to bottom, #6e3bff, #7e51ff);
color: #fff;
border: 1px solid #af93ff;
border-radius: 8px;
position: relative;
font-family: Arial, Helvetica, sans-serif;
text-shadow: 0 2px 0 rgba(0, 0, 0, 0.25);
box-shadow: 0 8px 10px -4px #503b89, 0 0 0 2px #562cce;
font-size: 25px;
display: inline-flex;
align-items: center;
gap: 8px;
margin-top: 20px;
}
.button {
padding: 16px 32px; /* Doppelte Größe */
border-radius: 8px;
background: linear-gradient(to bottom, #007bff, #0056b3); /* Blau */
box-shadow: 0 2px 4px rgba(0,0,0,0.7);
transition: all 0.2s;
display: flex;
align-items: center;
gap: 8px;
margin-top: 20px; /* Abstand zum oberen Inhalt */
}
.button:hover {
box-shadow: 0 4px 8px rgba(0,0,0,0.6);
}
.button:active {
box-shadow: 0 0px 1px rgba(0,0,0,0.8);
transform: scale(0.995);
}
.button-text {
font-weight: 600;
color: white;
font-size: 1.5em; /* Textgröße anpassen */
}
.icon path.bm {
stroke-dasharray: 3;
stroke-dashoffset: 3;
stroke-width: 1px;
transform: translateX(-23px) translateY(16px) scale(2) rotate(-44deg);
}
.icon-container {
display: flex;
align-items: center;
justify-content: center;
padding: 8px 10px;
background-color: #fff;
border-radius: 50%;
box-shadow: inset 0 -2px 4px 0 #c6c6c6, 0 3px 6px rgba(0, 0, 0, 0.25);
text-align: center;
z-index: 10;
}
.icon-container .icon {
width: 25px;
height: 30px;
stroke: #592cd6;
margin-top: -2px;
z-index: 4;
/* Für das Teilen-Icon die Rotation entfernen */
}
.content {
pointer-events: none;
display: flex;
align-items: center;
justify-content: center;
z-index: 1;
position: relative;
height: 100%;
width: 100%;
padding: 4px;
gap: 16px;
border-radius: 7px;
font-weight: 600;
transition: all 0.3s ease;
}
.letters {
transition: all 0.3s ease;
display: flex;
align-items: center;
justify-content: center;
padding: 4px;
}
.letters span {
display: block;
color: transparent;
position: relative;
left: 6px;
animation: letterShow 1.2s ease backwards calc(var(--i) * 0.03s);
}
.letters span::before, .letters span::after {
content: attr(data-label);
position: absolute;
color: var(--white);
text-shadow: -1px 1px 2px var(--purple-500);
left: 0;
}
.letters span::before {
opacity: 0;
transform: translateY(-100%);
}
.button:hover .letters span::before {
animation: letterShow 0.7s ease calc(var(--i) * 0.03s);
}
.button:hover .letters span::after {
opacity: 1;
animation: letterHide 0.7s ease calc(var(--i) * 0.03s);
}
@keyframes letterShow {
0% { transform: translateY(50%); opacity: 0; filter: blur(20px); }
20% { transform: translateY(70%); opacity: 1; }
50% { transform: translateY(-15%); opacity: 1; filter: blur(0); }
100% { transform: translateY(0); opacity: 1; }
}
@keyframes letterHide {
0% { transform: translateY(0); opacity: 1; }
100% { transform: translateY(-70%); opacity: 0; filter: blur(3px); }
}
/* Modal-Stile */
.modal {
display: none;
position: fixed;
z-index: 1000;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgba(0,0,0,0.5);
}
.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
border: 1px solid #888;
width: 80%;
max-width: 400px;
text-align: center;
border-radius: 10px;
}
.close {
color: #aaa;
float: right;
font-size: 28px;
font-weight: bold;
cursor: pointer;
}
.close:hover,
.close:focus {
color: black;
}
.social-icons {
display: flex;
justify-content: center;
gap: 20px;
margin-top: 20px;
}
.social-icons a img {
width: 60px;
height: 60px;
transition: transform 0.2s;
}
.social-icons a img:hover {
transform: scale(1.1);
}
</style>
</head>
<body>
<!-- Ladeanimation -->
<div class="loader-container">
<l-quantum size="90" speed="1.75" color="black"></l-quantum>
</div>
<h1><img src="/icons/Controller.png" height="150"><br/>Creative Crafter</h1>
<h1>Sweets for Animals</h1>
<div align='center'>
<img src="/programmieren/spiele/sweets-for-animals/logo.png" width="250">
</div>
<br/>
<div align='center'>
<!-- Spielen-Button -->
<button class="button" onclick="window.location.href=`/programmieren/spiele/sweets-for-animals/sweets-for-animals.html`">
<div class="button-inner">
<span class="button-text"><img src="/icons/playbutton.png" alt="Icon" style="width:20px; height:20px; margin-right:5px;"> Play</span>
</div>
</button>
</a>
<br/><br/>
<!-- Neuer Teilen-Button -->
<button class="button-share" onclick="openSharePopup()">
<div class="icon-container">
<svg viewBox="0 0 24 24" fill="none" class="icon">
<!-- Teilen-Icon -->
<path d="M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7"></path>
<polyline points="16 6 12 2 8 6"></polyline>
<line x1="12" y1="2" x2="12" y2="15"></line>
</svg>
</div>
<div class="content">
<div class="letters">
<span data-label="S" style="--i:0;">S</span>
<span data-label="h" style="--i:1;">h</span>
<span data-label="a" style="--i:2;">a</span>
<span data-label="r" style="--i:3;">r</span>
<span data-label="e" style="--i:4;">e</span>
</div>
</div>
</button>
</div>
<!-- Popup-Fenster zum Teilen -->
<div id="shareModal" class="modal">
<div class="modal-content">
<span class="close" onclick="closeSharePopup()">&times;</span>
<h2>Share with:</h2>
<div class="social-icons">
<a href="#" onclick="shareViaWhatsApp()">
<img src="/icons/whatsapp.svg" alt="WhatsApp" />
</a>
<a href="#" onclick="shareViaPinterest()">
<img src="/icons/pinterest.svg" />
</a>
<a href="#" onclick="shareViaTelegram()">
<img src="/icons/telegram.svg" alt="Telegram" />
</a>
<a href="#" onclick="shareViaEmail()">
<img src="/icons/email.svg" alt="E-Mail" />
</a>
<!-- Kopieren -->
<a href="#" onclick="copyToClipboard()">
<img src="/icons/copy.svg" />
</a>
<!-- Weitere Sharing-Optionen kannst du hier hinzufügen -->
</div>
</div>
</div>
<br/><br/><br/>
<div align='center'>
<img src="/programmieren/spiele/sweets-for-animals/sweetsforanimalscake.png" height="250">
<img src="/programmieren/spiele/sweets-for-animals/sweetsforanimalsdonut.png" height="250">
</div>
<!-- JavaScript für Ladeanimation und Teilen-Funktion -->
<script>
// Ladeanimation beim Laden der Seite anzeigen
document.body.classList.add('loading');
// Ladeanimation entfernen, wenn die Seite vollständig geladen ist
window.addEventListener('load', () => {
document.body.classList.remove('loading');
});
// Funktion zum Öffnen des Popup-Fensters
function openSharePopup() {
document.getElementById("shareModal").style.display = "block";
}
// Funktion zum Schließen des Popup-Fensters
function closeSharePopup() {
document.getElementById("shareModal").style.display = "none";
}
// Teilen via WhatsApp
function shareViaWhatsApp() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/sweets-for-animals/');
const url = 'https://api.whatsapp.com/send?text=' + text;
window.open(url, '_blank');
}
// Teilen via Telegram
function shareViaTelegram() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/sweets-for-animals/');
const url = 'https://t.me/share/url?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/sweets-for-animals/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text;
window.open(url, '_blank');
}
function shareViaPinterest() {
const media = encodeURIComponent('URL_ZU_DEINEM_BILD'); // Ersetze dies durch den tatsächlichen Bild-Link
const text = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/sweets-for-animals/');
const url = 'https://pinterest.com/pin/create/button/?url=' + text + '&media=' + media;
window.open(url, '_blank');
}
// Teilen via E-Mail
function shareViaEmail() {
const subject = encodeURIComponent('Sweets for Animals');
const body = encodeURIComponent('Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/sweets-for-animals/');
window.location.href = 'mailto:?subject=' + subject + '&body=' + body;
}
function copyToClipboard() {
const text = 'Check out this fantastic game!https://test.creative-crafter.de/programmieren/spiele/sweets-for-animals/';
navigator.clipboard.writeText(text).then(function() {
alert('Text wurde in die Zwischenablage kopiert!');
}, function(err) {
alert('Fehler beim Kopieren in die Zwischenablage: ', err);
});
}
// Schließt das Popup bei Klick außerhalb des Inhalts
window.onclick = function(event) {
const modal = document.getElementById('shareModal');
if (event.target == modal) {
closeSharePopup();
}
}
</script>
</body>
</html>

View File

Before

Width:  |  Height:  |  Size: 963 KiB

After

Width:  |  Height:  |  Size: 963 KiB

View File

Before

Width:  |  Height:  |  Size: 6.0 MiB

After

Width:  |  Height:  |  Size: 6.0 MiB

View File

Before

Width:  |  Height:  |  Size: 6.0 MiB

After

Width:  |  Height:  |  Size: 6.0 MiB