Corona SDK Créer un jeu de soupe à l'alphabet

Dans cette série de didacticiels, vous apprendrez à créer un jeu minimaliste Alphabet Soup. Le but de ce jeu est de permettre au joueur de choisir des mots parmi un ensemble de lettres brouillées. Continuer à lire!


Étape 1: Aperçu de l'application

En utilisant des graphiques pré-créés, nous allons coder un jeu divertissant en utilisant Lua et les API Corona SDK.

Le joueur sera en mesure de tracer une ligne à travers la scène afin de mettre en évidence un mot. Vous pouvez modifier les paramètres dans le code pour personnaliser le jeu..


Étape 2: périphérique cible

La première chose à faire est de sélectionner la plateforme sur laquelle vous souhaitez exécuter notre application. De cette façon, nous serons en mesure de choisir la taille des images que nous utiliserons..

La plateforme iOS présente les caractéristiques suivantes:

  • iPad: 1024x768px, 132 ppi
  • iPhone / iPod Touch: 320 x 480 pixels, 163 ppp
  • iphone 4: 960x640px, 326 ppi

Android étant une plate-forme ouverte, il existe de nombreux appareils et résolutions. Voici quelques-unes des caractéristiques d'écran les plus courantes:

  • Google Nexus One: 480x800px, 254 ppi
  • Motorola Droid X: 854x480px, 228 ppi
  • HTC Evo: 480 x 800 pixels, 217 pixels par pouce

Dans ce didacticiel, nous nous concentrerons sur la plate-forme iOS avec la conception graphique, spécialement conçue pour la distribution sur un iPhone / iPod touch, mais le code présenté ici devrait également s'appliquer au développement Android avec le SDK Corona..


Étape 3: interface

Une interface simple et conviviale sera utilisée, elle implique plusieurs formes, boutons, bitmaps et plus.

Les ressources graphiques d'interface nécessaires à ce tutoriel sont disponibles dans le téléchargement ci-joint..


Étape 4: Exporter des graphiques

Selon le périphérique que vous avez sélectionné, vous devrez peut-être exporter les graphiques dans les ppi recommandés. Vous pouvez le faire dans votre éditeur d'images préféré..

J'ai utilisé le Ajuster la taille… fonction dans l'application Aperçu sur Mac OS X.

N'oubliez pas de donner un nom descriptif aux images et de les enregistrer dans votre dossier de projet..


Étape 5: Configuration de l'application

Un fichier externe sera utilisé pour que l’application passe en plein écran sur tous les appareils, le config.lua fichier. Ce fichier indique la taille d'écran d'origine et la méthode utilisée pour redimensionner ce contenu si l'application est exécutée dans une résolution d'écran différente..

 application = contenu = largeur = 320, hauteur = 480, échelle = "boîte aux lettres",

Étape 6: Main.lua

Ecrivons l'application!

Ouvrez votre éditeur Lua préféré (tout éditeur de texte fonctionnera, mais vous n'aurez pas la coloration syntaxique) et préparez-vous à écrire votre superbe application. N'oubliez pas de sauvegarder le fichier sous main.lua dans votre dossier de projet.


Étape 7: Structure du code

Nous structurerons notre code comme s'il s'agissait d'une classe. Si vous connaissez ActionScript ou Java, la structure vous est familière..

 Necesary Classes Variables et constantes Déclarer des fonctions méthodes de la classe contructor (fonction principale) (autres fonctions) appelle la fonction principale

Étape 8: Masquer la barre d'état

 display.setStatusBar (display.HiddenStatusBar)

Ce code masque la barre d'état. La barre d'état est la barre en haut de l'écran de l'appareil qui affiche l'heure, le signal et d'autres indicateurs..


Étape 9: Contexte de jeu

Un graphique simple est utilisé comme arrière-plan pour l'interface de l'application, la ligne de code suivante le stocke.

 -- Graphiques - [Arrière-plan] - [Arrière-plan de jeu] local gameBg = display.newImage ('bg.png')

Étape 10: Vue du titre

Ceci est la vue du titre, ce sera le premier écran interactif à apparaître dans notre jeu. Ces variables stockent ses composants:

 -- [Vue de titre] titleBg local title local startBtn local aboutBtn - [TitleView Group] local titleView

Étape 11: À propos de la vue

Cette vue montrera le générique, la version et le copyright du jeu. Cette variable sera utilisée pour le stocker:

 -- [CreditsView] local à propos de

Étape 12: Liste de mots

La liste des mots à rechercher et ceux déjà trouvés seront stockés par les lignes suivantes.

 -- [Liste de mots Textfield] mots locauxListe locale couranteWords

Étape 13: Affichage du jeu

La vue du jeu est composée des champs de texte qui stockent les lettres simples, de la ligne utilisée pour mettre en surbrillance les mots et de l'alerte utilisée à la fin du jeu. Ajoutez les lignes suivantes à votre code pour gérer ces éléments.

 -- [Letter Texfields Container] local tfs = display.newGroup () - [Ligne de sélection] ligne locale lignes locales = display.newGroup () - Alerte locale [Alert]

Étape 14: Variables

Ce sont les variables que nous allons utiliser. Lisez les commentaires dans le code pour en savoir plus. Certains de leurs noms s’expliquent d'eux-mêmes, il n'y aura donc aucun commentaire..

 -- Liste des mots pour trouver local L1 = 'IPHONE', 'ANDROID', 'CORONA', 'MOBILE', 'GAMES' - Tableau multidimensionnel utilisé comme "carte" pour afficher les mots dans le stage local L1Map = 0, 0, 'I', 0, 0, 0, 'G', 0, 0, 0, 0, 0, 'P', 0, 0, 0, 'A', 0, 0, 0, 0, 0, 'H', 0, 0, 0, 'M', 0, 0, 0, 0, 'M', 'O', 'B', 'I' ',' L ',' E ', 0, 0, 0, 0, 0,' N ', 0, 0, 0,' S ', 0, 0, 0, 0, 0,' E ', 0, 0, 0, 0, 0, 0, 0, ' C ',' O ',' R ',' O ',' N ',' A ', 0, 0, 0, 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'A', 'N', 'D', 'R', 'O', 'I', 'D', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 alphabet local = 'A', 'B', 'C', 'D', 'E', ' F ',' G ',' H ',' I ',' J ',' K ',' L ',' M ',' N ',' O ',' P ',' Q ',' R ' , 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' local correct = 0 - Nombre de mots trouvés

Étape 15: Révision du code

Voici le code complet écrit dans ce tutoriel, accompagné de commentaires vous permettant d'identifier chaque partie:

 -- Alphabet Soup Game - Développé par Carlos Yanez - Masquer la barre d'état display.setStatusBar (display.HiddenStatusBar) - Graphiques - [Arrière-plan] - [Arrière-plan de jeu] local gameBg = display.newImage ('bg.png') - - [Vue de titre] local titleBg titre local local startBtn local aboutBtn - [TitleView groupe] local titleView - [CreditsView] local about - [Liste de mots Textfield] local wordsListe local currentWords - [Lettre Texfields Container] local tfs = display .newGroup () - [Ligne de sélection] ligne locale lignes locales = display.newGroup () - Alerte locale [Alerte] - Variables locales L1 = 'IPHONE', 'ANDROID', 'CORONA', 'MOBILE', 'GAMES' local L1Map = 0, 0, 'I', 0, 0, 0, 'G', 0, 0, 0, 0, 0, 'P', 0, 0, 0, ' A ', 0, 0, 0, 0, 0,' H ', 0, 0, 0,' M ', 0, 0, 0, 0,' M ',' O ',' B ' , 'I', 'L', 'E', 0, 0, 0, 0, 0, 'N', 0, 0, 0, 'S', 0, 0, 0, 0, 0 , 'E', 0, 0, 0, 0, 0, 0, 0, 'C', 'O', 'R', 'O', 'N', 'A', 0, 0, 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 , 0, 'A', 'N', 'D', 'R', 'O', 'I', 'D', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 alphabet local = 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', ' J ',' K ',' L ',' M ',' N ',' O ',' P ',' Q ',' R ',' S ',' T ',' U ',' V ' , 'W', 'X', 'Y', 'Z' local correct = 0

La prochaine fois…

Dans cette partie de la série, vous avez appris l'interface et la configuration de base du jeu. Restez à l’écoute pour la deuxième partie, où nous allons gérer la logique de l’application, le comportement des boutons, etc. À la prochaine!