Introduction
Afin de permettre le chargement de votre application et aussi d’avoir accès à L’API de Plateforme, il faut référencer le script plateforme.js dans le fichier index.html/php de votre application comme suit :
<script src="https://plateforme.timmatane.ca/js/plateforme.client.js"></script>
Ceci vous donne accès à l’objet plateformeClient qui expose les différentes propriétés et fonctions disponibles pour intégrer correctement votre application.
Toutefois, avant de pouvoir ce faire, il vous faut déclarer, dans votre application, une fonction nommée initPlateformeApp. Cette fonction sera appelée automatiquement par Plateforme lorsque l’application sera chargée complètement. C’est donc le point d’entrée de votre application. Si cette fonction n’est pas détectée dans votre application, un message d’erreur sera affiché par Plateforme.
L'API de Plateforme
Voici la liste des propriétés et fonctions disponibles pour intégrer votre application.
Propriétés
plateformeClient.isMobile
Retourne vrai (true) si l’application est visitée par un appareil mobile. Autrement, retourne faux (false)
Boolean isMobile
« Peut être utile si vous voulez que votre application fonctionne autant sur mobile que sur ordinateur de bureau. Ceci vous permet, entre autres, de changer les fonctionnalités de votre application en fonction de l’appareil détecté. »
Fonctions
plateformeClient.initApp()
Demande l'initialisation de votre application par Plateforme
Function initApp
« Si cette fonction n’est pas appelée dans votre application, une erreur sera soulevée. Il est nécessaire d’appeler cette fonction afin de pouvoir lancer correctement l’application. Normalement cette fonction est appelée à la fin de la fonction initPlateformeApp »
plateformeClient.initGame()
Permet de lancer l'initialisation d’une partie par Plateforme
Function initGame
« Appeler cette fonction signifie le début d’une partie. Permet de tenir les statistiques pour le jeu. »
plateformeClient.saveHighscore(highscore)
Permet de sauvegarder le pointage d’une partie pour l’application
Function saveHighscore
Number highscore : Le pointage à sauvegarder
« Appeler cette fonction dans votre code fait apparaitre une fenêtre de saisie des initiales. Cette fenêtre est gérée par Plateforme. »
plateformeClient.getHighscores()
Affiche la fenêtre des classements pour l’application en cours
Function getHighscores
« Appeler cette fonction dans votre code fait apparaitre une fenêtre des classements. Cette fenêtre est gérée par Plateforme. »
plateformeClient.restart()
Permet de relancer le chargement de votre application
Function restart
« Appeler cette fonction dans votre code relance le chargement de l’application par Plateforme. Utile pour permettre de rejouer après la fin d’une partie. Comme toute l’application est rechargée à nouveau, c’est plus simple que de réinitialiser les différentes valeurs et variables dans votre code. Toutefois, il est tout de même possible de redémarrer le jeu par vous-même. Il suffira de s’assurer que la fonction plateformeClient.initGame() soit appelée dans votre code lorsque la partie redémarre. »
plateformeClient.close()
Permet de fermer la fenêtre de votre application
Function close
« Appeler cette fonction dans votre code ferme la fenêtre de l’application au même titre que le bouton de contrôle déjà présent dans l'interface. »
Fonctions appelées par Plateforme
Voici la liste des fonctions qui seront appelées automatiquement par Plateforme si elles sont détectées dans le code de votre application.
initPlateformeApp()
Fonction devant obligatoirement être déclarée dans votre code. Cette fonction est appelée lorsque l’application est chargée correctement. C’est le point d’entrée de votre application.
Function initPlateformeApp
« Si la fonction n'est pas détectée lors du chargement de votre application, une erreur sera affichée. »
Exemple
//Exemple de déclaration de la fonction dans votre application
function initPlateformeApp(){
//vos instructions d'initalisation ici...
btnStart = document.querySelector(".button");
btnStart.addEventListener("click", onBtnStart);
//etc...
//appel obligatoire à plateformeClient.initApp() en toute fin de fonction
plateformeClient.initApp();
}
soundChange(state)
Fonction appelée lorsque l’utilisateur clique sur le bouton de Plateforme (
) permettant de couper ou rétablir le son. Dans cette fonction vous pouvez couper ou activer (selon la valeur du paramètre passé à la fonction) les sons de votre application ou bien définir une variable globale qui vous pouvez réutiliser dans votre application.
Function soundChange
Boolean state : Le son a-t-il été coupé ou rétablit?
« Il est à noter que si des balises <audio> sont utilisées et intégrées dans votre application, l’action faite par l’utilisateur devrait normalement ajouter ou enlever l’attribut muted automatiquement, sans que vous n’ayez à déclarer cette fonction. »
Exemple
/*
* Sons dans l'application,
* comme ce ne sont pas des balises intégrées directement dans le code HTML,
* il faut modifier les sons nous-même.
*/
let music = new Audio("./assets/audio/music.wav");
music.loop = true;
let monSon1 = new Audio("./assets/audio/levelup.wav");
//autre code...
//Exemple de déclaration de la fonction dans votre application
function soundChange(state){
//on veut affecter tous les sons de la valeur booléenne reçue (true/false)
monSon1.muted = state;
music.muted = state;
//etc...
}