PANORAMIC
: CREER UN JEU 2D
PAGE PRINCIPALE /PAGE TUTORIELS
Ce qu'il faut savoir faire pour créer un jeu en 2D:
Lecture du clavier
L'un des moyens pour le joueur d'agir sur le déroulement du jeu est le clavier. Il faut déterminer sur quelle touche du clavier le joueur est en train d'appuyer.
La variable système SCANCODE donne le code de la touche du clavier qui est enfoncée. Une variable système "pré-existe" : elle n'a pas besoin d'être définie par DIM, contrairement aux autres variables.
Si on veut utiliser les touches fléchées du clavier (par exemple pour déplacer quelque chose sur l'écran), on fera:
|
dim v : rem on définit une variable v v=scancode : rem lecture du clavier, code mis dans v if v=37 then - - - : rem 37=code de FLECHE GAUCHE if v=38 then - - - : rem 38=code de FLECHE HAUT if v=39 then - - - : rem 39=code de FLECHE DROITE if v=40 then - - - : rem 40=code de FLECHE BAS
|
Utilisation d'un son
Pour utiliser un son, il faut créer un objet SOUND, lui affecter un numéro d'objet, charger un fichier son avec la commande FILE_LOAD. Le son est alors joué par la commande PLAY.
Exemple : à chaque fois qu'on appuie sur la touche ESPACE du clavier, on joue le son du fichier BOOM.wav:
|
dim v : rem on définit une variable v label recommence : rem on définit un label (marquage d'un point du programme) sound 1 : rem création d'un son auquel on affecte le numéro 1 file_load 1,"boom.wav" : rem chargement du fichier son dans l'objet numéro 1 recommence: v=scancode : rem lecture du clavier if v=32 then play 1 : rem si touche espace enfoncée, on joue le son (objet numéro 1) wait 100 : rem on attend 100 millisecondes goto recommence : rem on recommence
|
Affichage d'une image mobile sur une image de fond
Un jeu en 2D est constitué d'une image de fond, sur laquelle évoluent d'autres images, les SPRITES. Un SPRITE possède la particularité de pouvoir se déplacer SANS perturber l'image de fond.
L'objet SCENE2D est spécialisé pour afficher une image de fond et pour y visualiser des SPRITES.
- On charge l'objet SCENE2D avec une image de fond par la commande FILE_LOAD.
- On charge une image dans un SPRITE par la commande SPRITE_FILE_LOAD.
- On déplace les SPRITES sur l'image de fond par les commandes SPRITE_X_POSITION, SPRITE_Y_POSITION, ou SPRITE_POSITION.
- On détruit un SPRITE par la commande SPRITE_DELETE, on le rend invisible par SPRITE_HIDE et on le rend à nouveau visible par SPRITE_SHOW.
Voici un exemple de base sur l'utilisation de SCENE2D et de SPRITES :
|
scene2d 1 : rem on crée un monde 2D (objet numéro 1) file_load 1,"ville.bmp" : rem on charge une image de fond sprite 1 : rem on crée un SPRITE (objet SPRITE numéro 1) sprite_file_load 1,"envahisseur.bmp" : rem on charge une image dans le SPRITE sprite_position 1,10,20 : rem on positionne le SPRITE sur le SCENE2D sprite_hide 1 : rem on le rend invisible wait 1000 : rem on attend 1 seconde sprite_show 1 : rem on le rend visible wait 1000 : rem on attend 1 seconde sprite_delete 1 : rem on détruit le SPRITE
|
Toute la base pour créer un jeu en 2D est donnée sur cette page : on combine le mouvement des SPRITES avec le clavier (SCANCODE) et on y ajoute des sons (SOUND, FILE_LOAD et PLAY).
Mise à jour : 5 Juin 2008