Gestione input e stampa di immagini
Posted by k8 - Articolo di zizzonazzo. June 9, 2008, 11:51 am
IProgrammatori.it

Eccoci alla seconda lezione del linguaggio LUA x la vostra Play Station Portable Nella scorsa lezione abbiamo visto come far comparire a schermo un "Bella Bro", ma, come avrete notato o provato, il testo rimaneva lì all'infinito senza possibilità di stoppare l'esecuzione del programma. PRIMA PARTE Ora impareremo come gestire l'input dei tasti premuti sulla PSP dall'utente e quindi come far terminare un programma alla pressione di un determinato tasto. Esiste una funzione che legge in ingresso quale tasto viene premuto in quell'istante e il nome del tasto viene salvato nella variabile che metteremo prima dell'uguale, in questo modo:


pad=Controls.read()

quindi in questo caso nella variabile "pad" sarà contenuto il nome del tasto appena premuto.....i tasti si identificano con i seguenti nomi: cross =ics square =quadrato circle =cerchio triangle =triangolo left =freccia a sinistra right =freccia a destra down =freccia giù up =mooolto inaspettatamente.....freccia su l =L r =R home start poi ci sarà un discorso a parte per gestire l'analogico. Facciamo un ESEMPIO...un programma che in caso venga premuta la x faccia comparire una scritta.


green = Color.new(0, 255, 0)
while true do
screen:clear() --NOTA 1
pad=Controls.read()
if pad:cross() then
screen:print(100,200,"Hai premuto icscscs",green)
end
screen.flip()
screen.waitVblankStart()
end
NOTA 1: questa funzione ci permette di pulire lo schermo ad ogni esecuzione del ciclo
quindi se la metteremo la scritta ogni volta sparirà sopo aver rilasciato la ics...
altrimenti rimarrà li stampata..

Dunque è così che si gestiscono gli input dei tasti..non è per nulla difficile... e vabbè io ho dato un pò per scontato l'"if"...la sua semplice sintassi è:


if condizione then
bla
bla
end

SECONDA PARTE

Questa parte mostrerà come stampare a schermo delle immagini. Nei programmi LUA le immagini vengono caricate da file e salvate in una variabile.. che ovviamente sceglieremo noi. Quindi:


Immagine=Image.load "sfondo.png"

ci permette di mettere nella variabile "Immagine" l'immagine di nome sfondo.png e così potremo, ivece, stampare a schermo l'immagine:


screen:blit(0, 0, Immagine, true)

Per farvi capire meglio vi riproporrò il programma di prima con, anzi che uno schermo nero, un'immagine di sfondo.


green = Color.new(0, 255, 0)
Immagine = Image.load"sfondo.png"
while true do
screen:clear()
screen:blit(0, 0, Immagine, true)
pad=Controls.read()
if pad:cross() then
screen:print(100,200,"Hai premuto icscscs",green)
end
screen.flip()
screen.waitVblankStart()
end

Condividi
Stats
Voti 0
Voto medio 0
Visite 1728
Visite uniche 1487
Num.Download 0
DownloadNon disponibile.
Spazio Visitatori
Prima di inviare il tuo commento assicurati che:
  • sia in tema con l'articolo e contribuisca alla discussione in corso
  • non abbia contenuti offensivi nei confronti di chicchessia
  • non abbia contenuti che violini le leggi italiane
  • non contenga indirizzi e-mail








Vota Pessimo 1 / 5 Migliorabile 2 / 5 Buono 3 / 5 Interessante 4 / 5 Speciale  5 / 5
Non ci sono commenti.
Tag Cloudgestione immagini lua psp × gestire immagini in lua × gestione immagini psp ×

Advertisement

Iprogrammatori.it
| I contenuti di questo sito sono rilasciati sotto Licenza Creative Commons |