feat: add logo word with letter icons and physics

- Introduced a new logo system consisting of individual letter SVG icons for "shadolldev".
- Implemented LogoController to manage the floating logo word, including physics for movement and collisions with entities.
- Added LogoLetter class to handle individual letter behavior, including ejection and reattachment based on collisions.
- Integrated logo functionality into the main application flow, ensuring it initializes alongside the evolution system.
- Enhanced settings to control debug visibility for letter hit counts.
- Created styles for the logo letters, including animations for ejection and hit effects.
- Updated constants to define logo-related parameters such as letter size, speed, and collision properties.
This commit is contained in:
sha
2026-02-21 18:44:25 +02:00
parent e3ec163ad7
commit 742a8154cf
18 changed files with 771 additions and 11 deletions
+21 -1
View File
@@ -11,11 +11,12 @@
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=DM+Mono:ital,wght@0,300;0,400;0,500&display=swap" rel="stylesheet" />
<!-- Styles (order matters: base → gradient → modal → icons → guide) -->
<!-- Styles (order matters: base → gradient → modal → icons → logo → guide) -->
<link rel="stylesheet" href="src/styles/main.css" />
<link rel="stylesheet" href="src/styles/gradient.css" />
<link rel="stylesheet" href="src/styles/modal.css" />
<link rel="stylesheet" href="src/styles/icons.css" />
<link rel="stylesheet" href="src/styles/logo.css" />
<link rel="stylesheet" href="src/styles/guide.css" />
</head>
<body>
@@ -226,6 +227,25 @@
</div>
<!-- ── debug ─────────────────────────────── -->
<div class="settings-section">
<p class="settings-section__label">debug</p>
<div class="setting-group">
<span class="setting-label">letter hit count</span>
<div class="toggle-wrapper">
<span class="toggle-label">off</span>
<label class="toggle" for="debugHitCountToggle" aria-label="Show letter hit counts">
<input type="checkbox" id="debugHitCountToggle" />
<span class="toggle-track">
<span class="toggle-thumb"></span>
</span>
</label>
<span class="toggle-label">on</span>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<button class="reset-btn" id="resetBtn">reset to defaults</button>