feat(design): Royal Cafe, El3ab becomes a mobile game
The owner's direction: El3ab is a game, not an app; the indigo pass read as a
"big blue blob". The world moves onto a warm walnut cafe table under a lamp.
- New game UI kit (tokens.css, core.css): leather trays for lists, ivory card
stock in gold frames, chunky glossy 3D buttons (green play, blue, gold, red,
purple, wood) that push down, ribbon screen titles, round back buttons, gold
tab chips. Lalezar for display type, Baloo Bhaijaan 2 for reading.
- Game HUD: avatar frame with level badge and XP bar (500 XP a level, as the
server computes it), coin and gem purses with green plus buttons (reward,
shop), wooden bell. Tab bar: sticker icons that lift when active, a big round
play button with the crown standing out of the bar.
- 60 glossy sticker icons baked from game-icons.net (CC BY 3.0, credited in
public/assets/game/CREDITS.md) by tools/build-gicons.mjs; gicon()/crown()
in icons.js; legacy emoji keys and icon slots now render stickers.
- Illustrated SVG scene per game (core/game-art.js), used on the home hand and
each game room.
- Home is a game lobby: side buttons (reward chest that wiggles when ready,
achievements, leaderboard, challenge) around the crown, the hand of game
cards, a huge green Play online button, a live-tournament banner.
- Rooms use shared game-mode buttons and a framed art hero (ui.js).
- Sound: recorded card-table sounds (Kenney, CC0) through Web Audio with
variants and pitch drift; synth fallback. Global press feel (feel.js),
card-move scene transitions, counting purse, ringing bell.
- Fix: the shop module was never loaded, so the shop could not open.
- Restyled screens from the parallel pass (play flow, chess and puzzles, rank
and tournaments, social, profile, shop, rewards, auth) and ~200 recovered or
missing Arabic/English strings; t() now warns once per missing key.
Ludo, backgammon and domino game screens and the shared in-game panels ship
separately, after their gameplay pass.
Co-Authored-By:
Claude Opus 5.5 <noreply@anthropic.com>
Showing
11.4 KB
File added
public/assets/game/gi/up.svg
0 → 100644
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
public/assets/game/wood.webp
0 → 100644
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
public/js/core/feel.js
0 → 100644
This diff is collapsed.
public/js/core/game-art.js
0 → 100644
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
tools/build-gicons.mjs
0 → 100644
This diff is collapsed.
This diff is collapsed.
tools/i18n-add.py
0 → 100644
This diff is collapsed.
This diff is collapsed.