Sounds
Many of them play without you doing anything:
The rest you play yourself with
ejg.sound.play(name). In the example, "open"
when the game page opens and "back" when it closes (when your theme handles
back, ejGames does not play a sound on its own).
Which sounds you hear is decided by sounds in theme.json:
soft, ps, xbox, switch, retro and none.
You can also use your own files (wav, ogg or mp3, with paths relative to the
theme folder). Any you leave out are taken from the preset:
move, select, back, launch, error and open. The user has
the last word: if they pick another sound set in Appearance → Navigation sounds
(or “No sounds”), that one is used, not your files. Volume is a per-profile
setting (Settings → Profile).
Colors of the launcher screens
The ejGames screens that open on top of your theme (settings, search, the editor…) can wear your colors withhost:
And for the gallery:
palette: four colors in this order: background, surface, accent and text. If there is no preview image, the gallery draws a sketch with them.preview: an image of your theme ("preview": "preview.jpg"), in the theme folder. The card is 16:10.
#141315, #1C1B1E, #FF3A2D, #F5F2EE.
Achievement notices inside the game
While you play, achievements appear in a layer over the game. Your theme picks the look withoverlay:
steam, playstation, xbox, switch, cinema, retro,
ejgames and moneda. Each one appears where its platform puts it (Xbox at the
bottom center, PlayStation at the top right…) and with its sound. ejgames is
the quiet one: it uses your host colors (accent, background, text, radius and
typeface), and it is what is used if you set nothing. moneda is the house
theme’s notice. If your theme has an accent setting (or dark, or palette
on the retro style), the notice respects it. The user can change the style and
the position in Settings → Overlay.
Window buttons
With"windowControls": "host" (what the example uses) ejGames draws
minimize, maximize and close in the top-right corner, visible when the mouse
passes over. If you prefer to draw them yourself, set "theme" and use
ejg.window.minimize(), ejg.window.maximize() (it toggles) and
ejg.window.close(). To drag the window, data-ejg-drag as in
step 3.
