Quand on effectue un clic droit sur un fichier Flash standard, on a accès à de nombreuses options : lire, zoomer, en avant, rembobiner...
Le problème, c'est que si un joueur clique sur "en avant", il accède à la scène suivante, ce qui peut engendrer de nombreux bugs et/ou tricheries :
Dans mon jeu, les scènes "playerSelect", "donjon" et "ending" se suivent dans cet ordre.
- si on clique sur "en avant" alors qu'on est à l'écran de sélection du personnage, on se retrouve dans le donjon sans avoir chargé les stats du Héros ;
- si on clique sur "en avant" alors qu'on est dans le donjon, on accède directement à la cinématique de fin.
var MENUPERSO = new ContextMenu();// création de la variable "menu contextuel personnalisé" MENUPERSO.hideBuiltInItems();// suppression des commandes usuelles (lire, rembobiner, zoomer... ) var commande1 = new ContextMenuItem("Reset", reset); // la commande "Reset" appelle la fonction "reset" définie plus bas var commande2 = new ContextMenuItem("Version " add _global.version, version); MENUPERSO.customItems.push(commande1); // on ajoute la commande1 au menu MENUPERSO.customItems.push(commande2); function reset() { // cette fonction permet de retourner à l'écran titre maxdepth = 2000; for (i=0; i<=maxdepth; i++) { removeMovieClip(_root.getInstanceAtDepth(i)); // on efface tous les clips issus des scènes précédentes pour avoir un écran propre } gotoSceneAndPlay("preloader", 1); // on retourne à la première scène du jeu } function version() { // si la variable _global.version a pour valeur "1.00", alors la commande du menu aura pour nom "Version 1.00" // le numéro de la version est indiqué à titre informatif : cliquer dessus n'a aucun effet } _root.menu = MENUPERSO; |
Ce qui nous donne ceci :
Prochaine étape : Création du Preloader !
On avance, on avance, on avance...
RépondreSupprimerLa fin est proche !