Aceasta este a doua tranșă în tutorialul nostru de puzzle pentru fizica SDK Corona. În tutorialul de astăzi, vom adăuga la interfața noastră și interacțiunea noastră de joc. Citește mai departe!
Asigurați-vă că ați citit prima parte a tutorialului pentru a înțelege pe deplin și pentru a vă pregăti pentru acest tutorial.
Această funcție adaugă ascultătorilor necesari TitleView butoane.
funcția startButtonListeners (acțiune) dacă (action == 'add') atunci playBtn: addEventListener ('tap', showGameView) creditsBtn: addEventListener 'tap', showCredits) sfârșitul final
Ecranul de credite este afișat atunci când utilizatorul interceptează despre buton. A Atingeți ascultător se adaugă la vizualizarea creditelor pentru al elimina.
funcția showCredități: apăsați (e) playBtn.isVisible = false crediteBtn.isVisible = false crediteView = display.newImage ('credits.png', -130, display.contentHeight-140) transition.to (creditsView, time = = 65, onComplete = funcție () creditsView: addEventListener ('tap', hideCredits) end) sfârșit
Când ecranul de credite este atins, acesta va fi completat din scenă și eliminat.
funcția ascundeCredite: tap (e) playBtn.isVisible = credite realeBtn.isVisible = adevărat transition.to (creditsView, time = 300, y = display.contentHeight + creditsView.height, onComplete = function () creditsView: , ascundeCredități) display.remove (creditsView) creditsView = nil end) sfârșit
Cand Joaca butonul este atins, vizualizarea titlului este completat și eliminat pentru a afișa vizualizarea jocului. Există o mulțime de părți implicate în această viziune, astfel încât le vom împărți în etapa următoare.
funcția showGameView: atingeți (e) transition.to (titleView, time = 300, x = -titleView.height, onComplete = function () startButtonListeners ('rmv') display.remove (titleView) titleView =
Următoarele linii adaugă mesajul cu instrucțiunile. Îl vom arăta timp de două secunde și apoi vom dispărea.
-- Instrucțiuni Mesaj local ins = display.newImage ('ins.png', 32, 182) transition.from (ins, time = 200, alpha = 0.1, onComplete = function () timer.performWithDelay (2000, transition). (ins, time = 200, alfa = 0.1, onComplete = functie () display.remove (ins) ins = nil end) end) lvlImg = display.newImage )
Acest cod creează un dreptunghi în partea inferioară a treptei pentru a fi folosit ca o podea.
-- Etajul etajului interior = display.newRect (0, 320, 480, 1)
Această parte se ocupă de crearea nivelului. Începe prin crearea cutiilor în scenă. Vom afla mai multe despre această funcție în următorii pași.
-- Cutii de nivel addBox ('g', 60, 272) addBox ('s', 148, 284) addBox ('s', 148, 176) addBox ('n', 297, 272) addBox ('n', 297, 224) addBox ('
Acest cod adaugă mingea la nivel.
-- Minge minge = display.newImage ('ball.png', 234, 138) ball.name = 'minge'
Aici adăugăm fizica pe podea și pe minge.
-- Adăugați Physics.addBody (etaj, static) fizics.addBody (minge, 'dinamic', rază = 12) sfârșit
Următoarea funcție utilizează trei parametri pentru a crea un obiect casetă. Puteți specifica tipul de casetă din primul parametru și poziția acestuia în următoarele două. Cu această metodă puteți crea nivele complexe utilizând doar câteva rânduri de cod. Se va adăuga fizica în cutia nouă, precum și un ascultător de robinet.
funcția addBox (tip, X, Y) local b = display.newImage (tastați ... 'Box.png', X, Y) fizics.addBody (b, addEventListener ('tap', removeBox) elseif (tip == 'g') apoi b: addEventListener ('collision', onCollision)
Această funcție elimină caseta țintă când este utilizată.
funcția removeBox (e) display.remove (e.target) sfârșit
Vom folosi acest cod pentru a vedea dacă mingea se ciocnește cu caseta cu goluri și apela o alertă dacă este adevărată.
(e) dacă (e.other.name == 'ball'), apoi afișați () sfârșitul
Funcția de alertă creează o vizualizare de alertă, o animă și termină jocul.
('rmv') if (action == 'lose') atunci alertView = display.newImage ('lose.png', 110, 218) altar alertView = display.newImage 110, 218) final transition.from (alertView, time = 200, alpha = 0.1)
Pentru a începe jocul, Principal funcția trebuie să fie numită. Vom face asta cu următorul cod.
Principal()
default.png fișierul este o imagine care va fi afișată chiar atunci când porniți aplicația. Acesta va fi adăugat automat de compilatorul Corona când îl adăugați în folderul sursă al proiectului.
Utilizând grafica pe care ați creat-o înainte, puteți crea o pictogramă frumoasă. Dimensiunea pictogramei pentru pictograma non-retină iPhone este 57x57px, dar versiunea retinei este 114x114px și magazinul iTunes necesită a 512x512px versiune. Vă sugerez să creați 512x512 prima versiune și scalarea în jos pentru celelalte dimensiuni.
Nu trebuie să aibă colțuri rotunjite sau o strălucire transparentă. iTunes și iPhone vor face asta pentru tine.
E timpul să facem testul final. Deschideți Simulatorul Corona, navigați în dosarul proiectului și faceți clic pe Deschideți. Dacă totul funcționează așa cum era de așteptat, sunteți gata pentru ultimul pas!
În Simulatorul Corona mergeți la Fișier> Construiți și selectați dispozitivul țintă. Completați datele solicitate și dați clic pe construi. Așteptați câteva secunde și aplicația dvs. va fi pregătită pentru testarea dispozitivului și trimiterea pentru distribuire!
În această serie, am aflat despre comportamentul fizicii, ascultă ascultătorii și coliziunile. Acestea sunt abilități care pot fi utile într-un număr mare de jocuri.
Experimentați cu rezultatul final și încercați să faceți propria dvs. versiune personalizată a jocului!
Sper că ți-a plăcut această serie și ți-a dat de ajutor. Mulțumesc că ați citit!