sutom/ts/reglesPanel.ts

48 lines
2.1 KiB
TypeScript
Raw Normal View History

2022-01-29 14:58:08 +01:00
import Configuration from "./configuration";
import PanelManager from "./panelManager";
import Sauvegardeur from "./sauvegardeur";
export default class ReglesPanel {
private readonly _panelManager: PanelManager;
private readonly _rulesBouton: HTMLElement;
public constructor(panelManager: PanelManager) {
this._panelManager = panelManager;
this._rulesBouton = document.getElementById("configuration-regles-bouton") as HTMLElement;
this._rulesBouton.addEventListener(
"click",
(() => {
this.afficher();
}).bind(this)
);
}
public afficher(): void {
let titre = "Règles";
let contenu =
'<p> \
Vous avez six essais pour deviner le mot du jour.<br /> \
Vous ne pouvez proposer que des mots commençant par la même lettre que le mot recherché, et qui se trouvent dans notre dictionnaire.<br /> \
Les lettres entourées d\'un carré rouge sont bien placées,<br /> \
les lettres entourées d\'un cercle jaune sont mal placées (mais présentes dans le mot).<br /> \
Les lettres qui restent sur fond bleu ne sont pas dans le mot.<br /> \
Il y a un mot par jour, entre 6 et 9 lettres, et il est identique pour tout le monde. Évitez donc les spoils et privilégiez le bouton de partage.<br /> \
En cas de soucis, vous pouvez contacter <a href="https://twitter.com/Jonamaths">@Jonamaths</a> sur twitter. \
<a target="_blank" href="https://framagit.org/JonathanMM/sutom">Page du projet</a><br /> \
Basé sur l\'excellent <a target="_blank" href="https://www.powerlanguage.co.uk/wordle/">Wordle</a> et le regretté Motus.<br /> \
Merci à Emmanuel pour l\'aide sur les mots à trouver, et à GaranceAmarante pour l\'aide sur le dictionnaire. \
</p>';
this._panelManager.setContenu(titre, contenu);
this._panelManager.setClasses(["regles-panel"]);
this._panelManager.setCallbackFermeture(() => {
Sauvegardeur.sauvegarderConfig({
...(Sauvegardeur.chargerConfig() ?? Configuration.Default),
afficherRegles: false,
});
});
this._panelManager.afficherPanel();
}
}