Corona SDK sviluppa una divertente applicazione di Magic Ball

In questo tutorial, utilizzeremo le API di Corona e il linguaggio di programmazione Lua per creare una divertente App di Magic Ball.


Breve panoramica

Usando il Agitare Evento costruito nell'API Corona, creeremo un'applicazione che genera un risultato casuale da parole predefinite. Imparerai anche a creare semplici animazioni utilizzando il transizione metodi.


Seleziona il dispositivo di destinazione

La prima cosa che devi fare è selezionare la piattaforma su cui vuoi eseguire la tua app, in questo modo sarai in grado di scegliere la dimensione per le immagini che userai.

La piattaforma iOS ha queste caratteristiche:

  • iPad: 1024x768px, 132 ppi
  • iPhone / iPod Touch: 320x480px, 163 ppi
  • iPhone 4: 960x640px, 326 ppi

Per Android è un po 'diverso, essendo una piattaforma aperta, potresti incontrare molte risoluzioni dello schermo diverse:

  • Nexus One: 480x800px, 254 ppi
  • Droid: 854x480px, 265 ppi
  • HTC Legend: 320x480px, 180 ppi

In questo tutorial utilizzeremo l'iPhone / iPod touch come piattaforma.


Interfaccia

Questa è l'interfaccia grafica che useremo, include un grafico a triangolo che servirà come l'Octoedro trovato in Magic Balls.


Esportazione di PNG

A seconda del dispositivo selezionato, sarà necessario esportare la grafica nel PPI consigliato, è possibile farlo nel proprio editor di immagini preferito.

Ho usato il Regola dimensioni ... funzione nell'app Anteprima in Mac OS X.

Ricordarsi di assegnare alle immagini un nome descrittivo e di salvarle nella cartella del progetto.


Codice!

È tempo di scrivere la nostra applicazione!

Apri il tuo editor Lua preferito (qualsiasi editor di testo funzionerà, ma non avrai l'evidenziazione della sintassi) e preparati a scrivere la tua fantastica app.


Nascondi barra di stato

Per prima cosa nascondiamo la barra di stato, questa è la barra in cima allo schermo che mostra l'ora, il segnale e altri indicatori.

 display.setStatusBar (display.HiddenStatusBar)

sfondo

Ora aggiungiamo lo sfondo dell'app.

 background locale = display.newImage ("background.png")

Questa linea crea la variabile locale sfondo e usa il display API per aggiungere l'immagine specificata allo stage. Per impostazione predefinita, l'immagine viene aggiunta a 0,0 usando l'angolo in alto a sinistra come punto di riferimento.


Octohedron

Ripetiamo il processo con l'immagine dell'octoedro, posizionandolo al centro del palco.

 local octohedron = display.newImage ("octohedron.png", 110, 186) octohedron.isVisible = false

L'Octothedron sarà invisibile per impostazione predefinita e verrà visualizzato al primo scuotimento del dispositivo.


Campo di testo

Il codice seguente crea il centro testo centrale che visualizzerà la frase casuale quando viene inviato un evento shake.

 textfield locale = display.newText ("", 0, 0, native.systemFontBold, 14) - Crea il campo di testo TextField: setReferencePoint (display.CenterReferencePoint) - Cambia il punto di riferimento al centro per un facile posizionamento textfield.x = display.contentWidth * 0.5 - Center TextField textfield.y = display.contentHeight * 0.5 textfield: setTextColor (255, 255, 255) - Imposta il colore del testo su bianco

Variabili Necesarie

Le seguenti variabili verranno utilizzate per gestire l'evento Shake.

  • scuotere: Una tabella che verrà utilizzata come listener di funzioni per l'evento shake.
  • opzioni: Memorizza le parole che possono essere mostrate dalla sfera magica.
shake locale = 
opzioni locali = "Probably Not", "No.", "Nope", "Maybe", "Yes", "Probably", "It's Done", "Of course"

Agitare la funzione

Questa funzione ascolta un evento di scossa e rivela l'octoedro e il testo se è vero.

funzione shake: accelerometro (e)
se (e.isShake == true) allora
octohedron.isVisible = true
transition.from (octohedron, alpha = 0) - Mostra octohedron, anima alpha da 0 a 1
textfield.text = options [math.random (1, 8)] - Seleziona una frase casuale dalla variabile options
transition.from (textfield, alpha = 0) - sfuma nel testo
fine
fine

Ascoltatore accelerometro

Gli eventi Accelerometer sono basati sul runtime, quindi utilizziamo la parola chiave Runtime per aggiungere il listener.

 Runtime: addEventListener ("accelerometro", shake)

Icona

Se tutto funziona come previsto, siamo quasi pronti a creare la nostra app per il test dei dispositivi. Ancora una cosa, la nostra icona dell'applicazione.

Utilizzando la grafica creata prima di poter creare un'icona bella e di bell'aspetto, la dimensione dell'icona per le icone di iPhone è 57x57px, ma lo store di iTunes utilizza un 512x512px quindi è meglio creare l'icona in questa dimensione.

Non è necessario avere gli angoli arrotondati o il bagliore trasparente, iTunes e l'iPhone lo faranno per te.


Conclusione

Gli eventi Shake sono facili da rilevare e molto utili, puoi dare loro qualsiasi funzionalità come cancellare, annullare, shuffle o ottenere una risposta casuale proprio come hai fatto in questo tutorial.

Grazie per aver letto!