:: Navigation
:: Libère ta PSP
Les Downgrades (PSP Fat)

Version 2.80 vers 1.50 (Team Noobz)
Version 3.03 vers 1.50 (Team Noobz)
Version 3.50 vers 1.50 (Team Noobz)
Toute version vers 1.50 (Team Noobz)

Custom Firmware (PSP Fat)

Installation 3.52M33-4 (Dark_Alex)
Installation 4.01 M33-2 (Dark_Alex)

Custom Firmware (PSP Slim & Lite)

Installation 3.60 M33 (Dark-Alex)
Installation 4.01 M33-2 (Dark_Alex)

Despertar del Cementerio (Toutes PSP)

Toutes PSP vers 3.90M33-3 (Dark_Alex)




  [LUA] Reconnaissance des touches
Catégorie : Tutoriaux -> Programmation sur PSP
Ajouté le : 07.04.2008 00:14
Auteur : djdelarue
Lectures : 421
Commentaires et aides sur l'article [LUA] Reconnaissance des touches (8)
Note global : 4.7/10 (7 votants)

Introduction

La reconnaissance de touches est devenu obligatoire pour le codage en Lua vu que tout homebrew qui se respecte contient un systeme d'appuie de touches. Par consequent ce tuto est indispensable.

On commence le code

Il faut d'abord savoir que la reconnaissance de touches n'a rien de compliqué, c'est juste qu'il faut en connaître le code.

Pour gérer l'appuie de touches, vous n'avez rien à charger, par consequent nous ouvrons directement la boucle:

 

Code
while true do
screen:clear()

Il faut bien entendu faire comprendre dans votre code que vous voulez vous servir des touches, et vous allez le faire grace à ceci:

 

Code
pad = Controls.read()

Ce bout de code va donc vous permettre d'activer les touches dans votre code. Passons maintenant au reste, par exemple vous voulez appuyer sur croix:

 

Code
if pad:cross()then
(ce que vous souhaitez faire)
end

Alors, vous devez vous demandez ce que c'est tout ça.

Pour faire simple, voici la traduction de ce que vous allez faire:

Code
si j'appuie sur croix alors
(action que je souhaite réaliser)
fin

Voila, vous souhaitez par exemple afficher un texte, vous remplacer la deuxième ligne ce qui donne ça:

 

Code
if pad:cross() then
screen:print(150,100,"Touche X pressé",blanc)
end

Bien sur, vous devez suivre ce que nous vous avons expliqué dans les anciens tuto.

Voila vous savez maintenant comme faire. Ne vous inquiétez pas, je ne vous laisse pas comme ça, voici toutes les touches que vous pouvez avoir besoin (je les donne surtout pour les anglophobes):

 

Code
if pad:cross() then
(mon action)
end
 
if pad:circle() then
(mon action)
end
 
if pad:square() then
(mon action)
end
 
if pad:triangle() then
(mon action)
end
 
if pad:l() then
(mon action)
end
 
if pad:r() then
(mon action)
end
 
if pad:select() then
(mon action)
end
 
if pad:start() then
(mon action)
end
 
if pad:up() then
(mon action)
end
 
if pad:down() then
(mon action)
end
 
if pad:left() then
(mon action)
end
 
if pad:right() then
(mon action)
end
 
if pad:hold() then 
(mon action)
end

Voila, vous avez tout ce qu'il faut.

Pour les petits curieux ou encore les insatisfaits, j'ai quelques chose pour vous. Vous souhaitez que par exemple la touche croix ne puisse pas fonctionner, rien de plus simple, vous faites ceci:

 

Code
if pad:cross() then
end

Vous ne mettez aucune action.

on termine ensuite le code avec le procédé habituel, soit fermeture de la boucle:

 

Code
screen.waitVblankStart()
screen.flip()
end

 

Le code entier

 

Code
while true do
 
screen:clear()
pad = Controls.read()
 
if pad:cross() then
(mon action)
end
 
if pad:circle() then
(mon action)
end
 
if pad:square() then
(mon action)
end
 
if pad:triangle() then
(mon action)
end
 
if pad:l() then
(mon action)
end
 
if pad:r() then
(mon action)
end
 
if pad:select() then
(mon action)
end
 
if pad:start() then
(mon action)
end
 
if pad:up() then
(mon action)
end
 
if pad:down() then
(mon action)
end
 
if pad:left() then
(mon action)
end
 
if pad:right() then
(mon action)
end
 
if pad:hold() then 
(mon action)
end 
screen.waitVblankStart()
screen.flip()
end

Et pour finir voici un script qui regroupe les 4 premiers tuto. Il n'y a que les touches croix, carré, triangle et rond.

 
  - exemple script lua
 

- Les homebrews sont exploitables via une PSP en Custom Firmware ou 1.5
- PSP Classique : Extraire vers PSP/GAME3XX
- PSP Slim & Lite : Extraire vers PSP/GAME


  

Fermer
PSP ground devient Console Life.

Console Life - PC, PS3, Xbox360, Wii, PSP, DS
:: Chat
0 utilisateur est connecté sur le chat !

:: Sondage
Nos News vous semblent-elles suffisament précises ?
 Oui, elles sont parfaites
 Oui, mais je ne comprends pas tout desfois
 Non, il manque des détails
 Non, je n'ai rien compris à tout ça

 
Autres Sondages
:: Syndication

Suivez PSP Ground 
grâce aux fils RSS 2.0

Les 20 dernières news
Les 20 derniers articles
Les 20 derniers téléchargements
Les 20 derniers liens
Les 20 dernières images
Les 20 derniers sujets

:: Publicité