În această serie de tutori, veți învăța cum să creați un joc cu hochei pe aer. Obiectivul jocului este de a lovi pucul folosind padelele pentru a ridica scorul. Citește mai departe!
Folosind grafice pre-făcute, vom codifica un joc distractiv folosind Lua și API-urile Corona SDK.
Jucătorul va putea să lovească un puc trăgând cu zbaturi pe ecran. Puteți modifica parametrii din cod pentru a personaliza jocul.
Primul lucru pe care trebuie să-l facem este să selectăm platforma pe care dorim să o executăm, astfel încât să putem alege dimensiunea imaginilor pe care le vom folosi.
Platforma iOS are următoarele caracteristici:
Deoarece Android este o platformă deschisă, există multe dispozitive și rezoluții diferite. Câteva dintre caracteristicile cele mai comune ale ecranului sunt:
În acest tutorial ne vom concentra pe platforma iOS cu design grafic, dezvoltând în mod special pentru distribuție pe un iPhone / iPod touch, dar codul prezentat aici ar trebui să se aplice dezvoltării Android cu SDK Corona.
O interfață simplă și prietenoasă va fi utilizată, aceasta implicând mai multe forme, butoane, bitmap-uri și multe altele.
Resursele de interfață grafice necesare pentru acest tutorial pot fi găsite în descărcarea atașată.
În funcție de dispozitivul pe care l-ați selectat, poate fi necesar să exportați grafica în ppi recomandată, puteți face acest lucru în editorul dvs. preferat de imagini.
Am folosit Reglați dimensiunea ... în aplicația Previzualizare pe Mac OS X.
Nu uitați să dați imaginilor un nume descriptiv și să le salvați în dosarul proiectului.
Vom folosi Sound Effects pentru a îmbunătăți sentimentul jocului, puteți găsi sunetele folosite în acest exemplu în Soungle.com utilizând cuvintele cheie clopot și bâzâit.
Un fișier extern va fi folosit pentru a face ca aplicația să intre pe întregul ecran pe toate dispozitivele config.lua fişier. Acest fișier arată dimensiunea originală a ecranului și metoda utilizată pentru a scala acel conținut în cazul în care aplicația este rulată într-o altă rezoluție a ecranului.
aplicație = content = width = 320, height = 480, scale = "letterbox",
Să scriem cererea!
Deschideți editorul Lua preferat (orice Editor de text va funcționa, dar nu veți avea o evidențiere a sintaxei) și vă pregătiți să scrieți aplicația minunată. Nu uitați să salvați fișierul ca main.lua în dosarul proiectului.
Ne vom structura codul ca și cum ar fi o clasă. Dacă știți ActionScript sau Java, ar trebui să găsiți structura familiară.
Variabile și constante de clase necesare Declare funcții contructor (funcție principală) metode de clasă (alte funcții) apel funcția principală
display.setStatusBar (display.HiddenStatusBar)
Acest cod ascunde bara de stare. Bara de stare este bara din partea de sus a ecranului dispozitivului, care afișează ora, semnalul și alți indicatori.
Vom folosi biblioteca fizică pentru a face față coliziunilor. Utilizați acest cod pentru a le importa:
fizica locala = necesita (fizica) fizica.start ()
O grafică simplă este folosită ca fundal pentru interfața aplicației, următoarea linie de cod o stochează.
-- Grafică - [Background] local bg = display.newImage ('bg.png')
Aceasta este titlul de vizualizare, acesta va fi primul ecran interactiv care apare în jocul nostru, aceste variabile stochează componentele sale:
-- [Title View] titlu localBg locale playBtn local creditsBtn title localView
Această vizualizare va arăta creditele și drepturile de autor ale jocului, această variabilă va fi utilizată pentru a fi stocată.
-- [CreditsView] credite locale
Această imagine va fi plasată pe fundalul precedent pentru a adăuga un sentiment de hochei.
-- [Joc de fond] joc local
Acesta este graficul pucului, referit în următoarea variabilă.
-- Puck puc local
Player and Enemy sau CPU paddle. Folosit pentru a lovi pucul.
-- [Paddles] inamicul jucător local local
Variabilele de scor sunt adăugate pentru a le afișa ulterior pe ecran.
-- Rezultate jucători localiScorează inamic localScore
Vom folosi Sound Effects pentru a îmbunătăți sentimentul jocului, puteți găsi sunetul folosit în acest exemplu în Soungle.com folosind cuvântul cheie clopot.
-- Sună sunet local = audio.loadSound ('bell.caf')
Pereții în care mingea va putea sări. Acestea sunt create folosind API-ul Corona Display și apoi adăugate la motorul de fizică.
-- [Walls] locală stânga locală dreapta locală topLeft local bottomLeft local topRight locale bottomRight
Acestea sunt variabilele pe care le vom folosi, citiți comentariile din cod pentru a afla mai multe despre ele.
-- Variabile locale lastY - utilizate pentru a anima ecranul de credite timerSrc local - un cronometru pentru mișcarea inamicului / procesorului
Declarați toate funcțiile ca local la inceput.
-- Funcții locale Main = local startButtonListeners = local showCredits = local hideCredits = locală showGameView = locallocListeners = local moveEnemy = local update =
Apoi vom crea funcția care va inițializa toată logica jocului:
funcția principal () - cod ... sfârșit
Acum, plasăm TitleView în scenă și sunăm o funcție care va adăuga Atingeți ascultători de butoane.
Funcția principală () titleBg = display.newImage ('title.png', display.contentCenterX - 143.5, 50) playBtn = display.newImage ('playBtn.png', display.contentCenterX - 39.5, display.contentCenterY) creditsBtn = newImage ('creditsBtn.png', display.contentCenterX - 40.5, display.contentCenterY + 65) titleView = display.newGroup (titleBg, playBtn, creditsBtn) startButtonListeners ('adauga') sfarsit
În această parte a seriei ați învățat interfața și setarea de bază a jocului. În următoarea și ultima parte a seriei vom aborda mișcarea paletelor, detectarea coliziunilor și pașii finali care trebuie făcuți înainte de lansarea testării aplicațiilor, crearea unui ecran de pornire, adăugarea unei pictograme și, în final, construirea aplicației. Rămâi acordat pentru partea finală!