Outils pour utilisateurs

Outils du site


exemples:tutoriel

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
exemples:tutoriel [2019/07/11 14:05]
remi
exemples:tutoriel [2020/01/21 14:07] (Version actuelle)
remi
Ligne 10: Ligne 10:
  
 On va tout d'​abord créer un nouveau projet, puis on crée un programme intitulé ''​%%niv1%%''​. On va tout d'​abord créer un nouveau projet, puis on crée un programme intitulé ''​%%niv1%%''​.
-Après avoir créé le projet, on importe les fichiers de **{{ :assets_wiki_tuto.zip |cet archive d'assets}}** dans la médiathèque (à extraire au préalable avant d'​importer).+Après avoir créé le projet, on importe les fichiers de **{{ :exemples:​images_tuto_plateforme_a_decompresser_.zip |cet archive d'images}}** dans la médiathèque (à extraire au préalable avant d'​importer).
  
-<WRAP center round download 100%>​**{{ :assets_wiki_tuto.zip }}**</​WRAP>​+<WRAP center round download 100%>​**{{ :exemples:​images_tuto_plateforme_a_decompresser_.zip }}**</​WRAP>​
  
 +{{ :​exemples:​explorer_jhgezeyuux.png?​nolink |}}
  
-{{ :explorer_30zcadfppj.png?​nolink |}}+Avant toute chose, on va taper les lignes de code ci-dessous ​
  
 +<code declick>
 +programme_actuel = '​niv1'​
 +programme_suivant = '​niv1'​
 +</​code>​
 +
 +Elle nous permettent de définir quel niveau (re)jouer si l'on perd, et quel niveau atteindre si on gagne
  
 ===== 1) Intégration du décor ===== ===== 1) Intégration du décor =====
Ligne 69: Ligne 76:
 Pour intégrer n'​importe quel objet sur la plateforme, on utilise la commande ''​%%new Item()%%''​. Pour intégrer n'​importe quel objet sur la plateforme, on utilise la commande ''​%%new Item()%%''​.
  
-Grâce à cette commande tu pourras intégrer dans ton jeu l'​objet ​qu'on désire ​(épée, pièce, potion, bonbons …).+Grâce à cette commande tu pourras intégrer dans ton jeu l'​objet ​désiré ​(épée, pièce, potion, bonbons …).
  
 Nous allons intégrer une porte de sortie Nous allons intégrer une porte de sortie
Ligne 177: Ligne 184:
 ===== 8) Création d'un sous-programme en cas de victoire ou de défaite ===== ===== 8) Création d'un sous-programme en cas de victoire ou de défaite =====
  
-On crée tout d'​abord un nouveau programme ​que l'on nomme ''​%%perdreGagner%%'​'.+On crée tout d'​abord un nouveau programme ​(bouton "​+"​ en bas à gauche de l'écran) qu'on renomme niveau_suivant. 
 +On insère le code suivant :  
 +<code declick>​ 
 +declick.effacerEcran() 
 +declick.initialiser() 
 +declick.chargerProgramme(programme_suivant) 
 +</​code>​
  
-Le programme que nous allons créer va permettre d'​afficher un message si le personnage perd ou gagne et de changer de niveau ​(revenir au début de l'​actuel ou passer au niveau suivant)+On sauvegarde ​(ctrl+s).
- +
-Ce programme sera chargé dans notre programme actuel ''​%%niv1%%''​.+
  
 +On crée ensuite un autre programme qu'on renomme redémarrer_partie.
 +On insère le code suivant :
 <code declick> <code declick>
-// Cette fonction permet de relancer le programme actuel en cas de défaite +declick.effacerEcran() 
-quandPerdre = function(nomProgrammeActuel) +declick.initialiser() 
-+declick.chargerProgramme(programme_actuel)
-  ​declick.initialiser() // Effacement du message 'Tu as perdu' de l'​écran ​ +
-  ​declick.chargerProgramme(nomProgrammeActuel) // Chargement du programme actuel +
-+
- +
-// Cette fonction permet lancer le programme suivant en cas de victoire +
-quandGagner = function(nomProgrammeSuivant) +
-+
-  ​declick.initialiser() ​  // Effacement du message 'Tu as gagné'​ de l'​écran ​ +
-  declick.chargerProgramme(nomProgrammeSuivant// Chargement du programme suivant +
-+
- +
-// Cette fonction exécute une commande après un délai ( le délai est de 3000ms donc de 3secondes) +
-delayer = function(nomFonctionApresDelai) +
-+
-  var séquence = new Séquence() // Création d'une séquence +
-  séquence.ajouterDélai(3000) // Ajout d'un délai de 3 secondes +
-  séquence.ajouterCommande(nomFonctionApresDelai) // Lancement de la commande souhaitée après 3 secondes d'​attente +
-  séquence.démarrer() ​  // Démarrage de la séquence  +
-+
- +
-// Cette fonction affiche un message a l'​écran en cas de défaite +
-perdre = function() +
-+
-  declick.interrompre() // interruption +
-  declick.initialiser() // initialisation +
-  messageDéfaite = new Texte("​Tu as perdu la partie !") // Création de texte à afficher +
-  messageDéfaite.définirTaille(42) ​ // Taille du texte +
-  messageDéfaite.définirPositionCentre(650,​200) // Position du texte +
-  delayer("​quandPerdre("​niv1"​)"​) ​ // Lancement après un certain délai de la fonction perdre()  +
-+
- +
-// Cette fonction affiche un message a l'​écran en cas de victoire  +
-gagner = function() +
-+
-  declick.interrompre() // interruption +
-  declick.initialiser() // initialisation +
- +
-  messageVictoire = new Texte("​Tu as gagné la partie!"​) ​  // Création de texte a afficher +
-  messageVictoire.définirTaille(42) ​ // Taille du texte +
-  messageVictoire.définirPositionCentre(650,​200) // Position du texte   +
-  delayer("​quandGagner("​niv1"​)"​) // Lancement après un certain délai de la fonction gagner() +
-}+
 </​code>​ </​code>​
  
-Une fois ce programme ''​%%perdreGagner%%''​ crée et enregistré,​ on revient dans le programme ''​%%niv1%%''​ pour le charger.+On sauvegarde (ctrl+s)
  
 <WRAP center round important 100%> <WRAP center round important 100%>
-Si ce code n'est pas intégré dans un nouveau programme, le programme ​''​%%niv1%%''​ ne fonctionnera pas lorsqu'​une tentative ​de lancement sera effectuée.+Ici, le niveau chargé en cas de victoire ou de défaite est le même parce que nous n'avons qu'un niveau, si un niveau "​niv2"​ est créé, il suffira ​de modifier la variable "​programme_suivant"​ dans niv1.
 </​WRAP>​ </​WRAP>​
  
-===== 9) Charger le sous-programme perdreGagnerdans le programme niveau1 ===== +===== 09) Détection des collisions =====
- +
-Après avoir créé le programme ''​%%perdreGagner%%'',​ on retourne dans le programme ''​%%niv1%%''​ pour définir le chargement de ce premier. +
- +
-Pour se faire on utilise la commande ''​%%declick.chargerProgramme()%%''​ +
- +
-<code declick>​ +
-declick.chargerProgramme("​perdreGagner"​);​ // Chargement du sous-programme perdre_gagner +
-</​code>​ +
- +
-===== 10) Détection des collisions =====+
  
 La détection des collisions permet de savoir quand un personnage touche un objet ou un ennemi. La détection des collisions permet de savoir quand un personnage touche un objet ou un ennemi.
  
-''​%%SI%%''​ joe touche ogre ou la potion rouge ''​%%ALORS%%''​ on lance la commande ​''​%%perdre()%%''​.+''​%%SI%%''​ joe touche ogre ou la potion rouge ''​%%ALORS%%''​ on lance le programme ​''​%%redémarrer_partie%%''​.
  
 <code declick> <code declick>
-joe.siCollisionAvec(ogre,"​perdre()") // Si joe touche ogre alors on perd la partie +joe.siCollisionAvec(ogre,"​redémarrer_partie") // Si joe touche ogre alors on perd la partie 
-joe.siCollisionAvec(potionRouge,"​perdre()"​) ​ // Si joe touche la potion rouge alors on perd la partie+joe.siCollisionAvec(potionRouge,"​redémarrer_partie"​) ​ // Si joe touche la potion rouge alors on perd la partie
 </​code>​ </​code>​
  
-''​%%SI%%''​ joe touche la porte de sortie ''​%%ALORS%%''​ on lance la commande ''​%%gagner()%%''​.+''​%%SI%%''​ joe touche la porte de sortie ''​%%ALORS%%''​ on lance la commande ''​%%niveau_suivant%%''​.
  
 <code declick> <code declick>
-joe.siCollisionAvec(porteSortieNiv1,"​gagner()") // Si joe touche la porte de sortie alors on gagne la partie+joe.siCollisionAvec(porteSortieNiv1,"​niveau_suivant") // Si joe touche la porte de sortie alors on gagne la partie
 </​code>​ </​code>​
  
-===== 11) Les déplacements du personnage ​ =====+===== 10) Les déplacements du personnage ​ =====
  
 Nous avons précédemment créé notre personnage joe  Nous avons précédemment créé notre personnage joe