Tuto 2 : interactions avec l'utilisateur

Clavier

Pyxel peut détecter l'appui sur une touche du clavier et de quelle touche il s'agit.

Deux méthodes de Pyxel sont utilisables :

La première méthode sera utilisée lorsqu'une touche sera a priori maintenue appuyée, comme une touche de direction par exemple, et la deuxième quand un seul appui est souhaitable, comme le déclenchement d'un tir par exemple ou une action unique.

Ces méthodes seront appelées dans la fonction update().

Voir la référence Pyxel pour le code des touches.

Voila par exemple un script qui permet de déplacer un carré dans la fenêtre à l'aide des 4 touches de direction :

Tuto 1

import pyxel

class Vaisseau:

    def __init__(self, x, y):
        self.x = x
        self.y = y

    def move(self):
        """déplacement avec les touches de direction"""

        if pyxel.btn(pyxel.KEY_RIGHT): # équivaut à : if pyxel.btn(pyxel.KEY_RIGHT) == True:
            if (self.x < 120) :
                self.x = self.x + 1
        if pyxel.btn(pyxel.KEY_LEFT):
            if (self.x > 0) :
                self.x = self.x - 1
        if pyxel.btn(pyxel.KEY_DOWN):
            if (self.y < 120) :
                self.y = self.y + 1
        if pyxel.btn(pyxel.KEY_UP):
            if (self.y > 0) :
                self.y = self.y - 1

    def draw(self):

        pyxel.rect(self.x, self.y, 8, 8, 1)

class Jeu:

    def __init__(self, h, l, titre):

        pyxel.init(h, l, title = titre)

        self.vaisseau = Vaisseau(60, 60)

        # Lancement du jeu
        pyxel.run(self.update, self.draw)

    def update(self):

        self.vaisseau.move()

    def draw(self):

        pyxel.cls(0)

        self.vaisseau.draw()


########################
#  PROGRAMME PRINCIPAL #
########################

Jeu(128, 128, "Super Jeu")
			

Souris

Les attributs mouse_x et mouse_y du module Pyxel permettent de connaître les coordonnées actuelle de la souris.

La méthode mouse(True/False) permet d'afficher/ne pas afficher le curseur de la souris ( False = ne pas afficher par défaut ).

A faire soi-même

  • modifier les touches à utiliser pour déplacer le "vaisseau".
  • Modifier le script pour contrôler le "vaisseau" avec la souris.
Suivant