I denne opplæringsserien lærer du hvordan du lager et spill som de populære hundre. Målet med spillet er å nå 100 poeng uten at kretsene berører mens du øker poengsummen. Les videre!
Ved å bruke pre-laget grafikk vil vi kode et underholdende spill ved hjelp av Lua og Corona SDK API.
Spilleren vil kunne trykke på sirkler på skjermen for å øke poengsummen. Du kan endre parametrene i koden for å tilpasse spillet.
Det første vi må gjøre er å velge plattformen vi vil kjøre vår app på, slik at vi kan velge størrelsen på bildene vi skal bruke.
IOS-plattformen har disse egenskapene:
Fordi Android er en åpen plattform, er det mange forskjellige enheter og løsninger. Noen av de vanligste skjermegenskapene er:
I denne opplæringen vil vi fokusere på iOS-plattformen med grafisk design, spesielt utviklet for distribusjon til en iPhone / iPod touch, men koden som presenteres her, bør gjelde for Android-utvikling med Corona SDK også.
Et enkelt og vennlig grensesnitt vil bli brukt, dette innebærer flere former, knapper, bitmaps og mer.
Grensesnittet grafiske ressurser som kreves for denne opplæringen finner du i vedlagte nedlastning.
Avhengig av hvilken enhet du har valgt, må du kanskje eksportere grafikken i den anbefalte PPI-en, slik kan du gjøre det i favorittbildeditoren din.
Jeg brukte Juster størrelse ... Fungerer i Forhåndsvisning-appen på Mac OS X.
Husk å gi bildene et beskrivende navn og lagre dem i prosjektmappen din.
En ekstern fil vil bli brukt til å gjøre programmet gå fullskjerm på tvers av enheter, config.lua fil. Denne filen viser den opprinnelige skjermstørrelsen og metoden som brukes til å skalere innholdet hvis appen kjøres i en annen skjermoppløsning.
søknad = content = width = 320, height = 480, scale = "letterbox",
La oss skrive søknaden!
Åpne din foretrukne Lua-editor (en hvilken som helst tekstredigerer vil fungere, men kan ikke ha syntaxutheving) og forberede seg til å skrive din fantastiske app. Husk å lagre filen som main.lua i prosjektmappen din.
Vi strukturerer vår kode som om den var en klasse. Hvis du kjenner ActionScript eller Java, bør du finne strukturen kjent.
Nødvendige klasser Variabler og konstanter Erklære Funksjoner contructor (Hovedfunksjon) klassemetoder (andre funksjoner) ring Hovedfunksjon
display.setStatusBar (display.HiddenStatusBar)
Denne koden skjuler statuslinjen. Statuslinjen er linjen øverst på skjermbildet som viser tid, signal og andre indikatorer.
Vi bruker Fysikk biblioteket til å håndtere kollisjoner. Bruk denne koden til å importere den:
lokal fysikk = krever (fysikk) fysikk.start () fysikk.settegrav (0,0)
En enkel grafikk brukes som bakgrunn for applikasjonsgrensesnittet, den neste koden lagrer den.
-- Grafikk - [Bakgrunn] lokal bg = display.newImage ('bg.png')
Dette er tittelvisningen, det vil bli den første interaktive skjermen som skal vises i vårt spill. Disse variablene lagrer komponentene sine.
-- [Title View] lokal tittelBg lokal playBtn lokale kreditterBet lokal tittelView
Denne visningen vil vise kreditter og opphavsrett til spillet, denne variabelen vil bli brukt til å lagre den.
-- [CreditsView] lokale kreditterVis
Dette bildet vil erstatte vår tidligere bakgrunn. Dette vil være spillets bakgrunn.
-- Spill Bakgrunn Lokalt spillBg
Sirkelgruppen lagrer de fem sirklene som vil bli opprettet dynamisk senere i spillet. Vi bruker Corona SDK tegning API.
-- Sirkler Gruppe lokale sirkler
Fysikkvegger er laget for å få sirklene til å hoppe på skjermen.
-- Vegger lokal venstre lokal høyre lokal topp lokal bunn
Poengsummen håndteres av denne variabelen.
-- Score TextField lokal score
Dette er varselet som vil bli vist når du vinner spillet. Det vil fullføre nivået og avslutte spillet. Det er også et "Du Lost" varsel som vil oppføre seg på en lignende måte.
-- Varsle lokal varslingView
Dette er variablene vi skal bruke, les kommentarene i koden for å få vite mer om dem.
-- Variabler lokale siste - Brukes til å plassere kredittene vise lokale lastX - brukes til å flytte tittelvisningen
Erklære alle funksjoner som lokal i begynnelsen.
-- Funksjoner lokale Main = lokale startButtonListeners = lokale showCredits = lokale hideCredits = lokal showGameView = lokal spillListeners = lokal onTouch = lokal onCollision = lokalvarsling =
Deretter skal vi opprette funksjonen som vil initialisere all spilllogikken:
funksjon Hoved () - kode ... ende
Nå plasserer vi tittelvisningen i scenen og kaller en funksjon som vil legge til springen lytter til knappene.
funksjon Hoved () titleBg = display.newImage ('title.png', 10, 20) playBtn = display.newImage ('playBtn.png', 100, 220) kreditterBtn = display.newImage ('creditsBtn.png', 100, 290) titleView = display.newGroup (titleBg, playBtn, creditsBtn) startButtonListeners ('add') slutten
I denne delen av serien har du lært grensesnittet og det grunnleggende oppsettet av spillet. I neste og siste del av serien behandler vi nivåopprettelsen, kollisjonsdeteksjonen og de endelige trinnene som skal tas før utgivelsen, som apptesting, oppretting av startskjerm, legger til et ikon og endelig bygger appen . Hold deg oppdatert på den siste delen!