Nzira Yokutakura uye Kuponesa Game Data muCorona SDK

Nzira Yokushandisa SQLite kuchengeta Game Data uye Zvirongwa

Chinhu chimwechete pese purogiramu yese uye mutambo zvakafanana kune chido chokuchengetedza nekuwana deta. Kunyange iyo mhando yakanakisisa inogona kushandisa SQLite kuchengetedza purogiramu yepurogiramu yepurogiramu, iyo inogona kushandiswa kugona kuwirirana paunenge uchivandudza, kana zvirongwa zvakajeka zvakadai sokuchinja mutsara wegeyo kana kuvhara.

Kana iwe usati wamboita basa rakawandisa nema database kana kushandisa zvinyorwa zvepa database mune Corona SDK , usanetseka. Icho chaicho chiitiko chakanyatsojeka nekuda kwesimba reLUA uye injini yeSQLite database yakashandiswa muCorona SDK. Iyi dzidzo ichafamba kuburikidza nekugadzirisa tafura yekugadzirisa uye zvose kuchengetedza nekuwana mashoko kubva kwairi. Nzira yekudzidzira sei iPad mapikicha.

Uyewo gara uchifunga mupfungwa iyi kuti nzira iyi inogona kupfuura kuponesa user-based settings. Somuenzaniso, zvakadini kana iwe uine mutambo unogona kutamba uchishandisa mitambo yakasiyana-siyana yakadai se "story" mode uye "arcade" mode. Iyi tafura yekugadzirisa inogona kushandiswa kuchengetedza maitiro aripo. Kana zvimwe chero rudivo rwemashoko waunoda kugara uchiramba huripo kunyange kana munhu anoshandisa kunze kwemutambo uye anozvidzorera zvakare.

Nhanho Yokutanga: Kutanga dhizinesi uye kugadzira zvigadziridza tafura

Chinhu chokutanga chatinofanira kuita ndechekuudza mabhuku eSQLite uye taudza app yedu apo kuti tipe database ye database. Nzvimbo yakanakisisa yekuisa nhamba iyi ndeyechokwadi kumusoro kweiyo main.lua file pamwe chete nezvimwe zvinoda zvinyorwa. Ikopa yepa database inenge yakasikwa kana pasina kuwanika, uye isu tichaichengeta muDhipatimendi reFaira kuitira kuti tikwanise kuverenga kubva kwairi uye kunyora kwairi.

inoda "sqlite3"
nzvimbo yedhara_path = system.pathForFile ("data.db", system.DocumentsDirectory);
db = sqlite3.open (data_path);

Cherechedza kuti "db" yakasiyana sei haisi nzvimbo. Takaita izvi kuti tive nechokwadi chokuti tinokwanisa kuwana dhesiyo mukati medu purojekiti yedu. Iwe unogonawo kuumba imwe .lua faira yezvinhu zvose zvemasvomhu uye chengetedza dhesi rakagadzirwa kune iyo faira.

Zvadaro, tinoda kugadzira tafura yezvinyorwa zvese ichachengetedza zvirongwa zvedu:

nzvimbo sql = "DENGA TABLE IF HAI KUZVISISA zvirongwa (zita, kukosha);"
db: exec (sql);

Izvi zvinyorwa zvinogadzira tafura yedu yekugadzirisa. Zvakanaka kuimhanya nguva dzose apo purogiramu inotakurwa nokuti kana tafura iripo, iko kutaura uku hakuiti chero chinhu. Iwe unogona kuisa chirevo ichi chaipo pasi apo patakazivisa dhesiyo kana mubasa rinoshandisa app yako kuti iite. Chinodiwa chikuru ndechekuti (1) kuite zvinyorwa izvi nguva dzose apo purogiramu inotanga uye (2) iite iyo isati yave ipi yekufonera kuti iite kana kuchengetedza zvirongwa.

Nhanho yechipiri: Kuchengetedza zvirongwa kune database

basa setSetting (zita, kukosha)
sql = "BUKA kubva kuzvirongwa WHERE zita =" "zita .." '";
db: exec (sql)

sql = "INSERT INTO zvirongwa (zita, kukosha) VALUES ('" ..name .. "'," .. kukosha .. ");";
db: exec (sql)
kuguma

basa setSettingString (zita, kukosha)
setSetting (zita, "'" .. kukosha .. "'");
kuguma

Basa rakagadziriswa rinobvisa chero zvirongwa zvekare zvakachengetwa patafura uye inowedzera kukosha kwedu. Ichishanda nezvose zvese uye zvidzidzo, asi kuchengetedza tambo kunoda zvinyorwa zvisingabatsiri zvakapoteredza kukosha, saka tashandisa setSettingString basa kuti tiite izvo zvishoma zvishoma zvebasa kwatiri.

Danho rechitatu: Kutsvaga zvigadziro kubva kune database

basa getSetting (zita)

mhara sql = "SENZA * KUBVA kubva kuzvirongwa WHERE zita =" ".. zita .." '";
kukosha kwenzvimbo = -1;

mutsara muDB: nrows (sql) do
kukosha = row.value;
kuguma

kudzoka kukosha;
kuguma

basa getSettingString (zita)
mhara sql = "SENZA * KUBVA kubva kuzvirongwa WHERE zita =" ".. zita .." '";
kukosha kwekuno = '';

mutsara muDB: nrows (sql) do
kukosha = row.value;
kuguma

kudzoka kukosha;
kuguma

Sezvakadarika, takavhuna mabasa acho muzvikamu zviviri: imwe ye integers uye imwe yezviridzwa. Chikonzero chikuru chatakaita izvi ndechekuti tive nekugadzirisa ivo nehutano hwakanaka kana pasina chigadziro chiripo pane dhesi. Basa reSetSetting richadzoka 1, iro richaita kuti tizive kuti mamiriro acho asina kuchengetwa. The getSettingString ichadzorera tambo isina chinhu.

Iko kuwanaSettingString basa rakakwana zvachose. Kusiyana kwakasiyana pakati payo uye yakagadziriswa kuwanaSetting basa ndechidzo chinodzorerwa kana chinhu chisingawanikwi mu database.

Nhanho Nhatu: Kushandisa tafura yedu yekuisa

Iye zvino zvatine basa rakaoma, tinogona kutakura nyore uye kuchengetedza zvigadziro kune dhesi yepamunzvimbo. Semuenzaniso, tinogona kutaura mbeveve nemashoko anotevera:

setSetting ('sound', nhema);

Uye tinokwanisa kushandisa mamiriro ezvinhu munyika yose kutamba mhere:

basa playSound (soundID)
kana (kuwanaSetting ('inzwi') ipapo
audio.play (soundID)
kuguma
kuguma

Kuti tishandure rwiyo, tinongogadzirisa mamiriro ekutaura kuchokwadi:

setSetting ('sound', yechokwadi);

Chikamu chakanaka pamusoro pemabasa aya unogona kuchengetedza tsvimbo kana integers kune tafura yekugadzirisa uye uwanezve nyore nyore. Izvi zvinokubvumira kuita chimwe chinhu kubva mukuchengetedza zita remuteereri kuti uchengetedze mapeji avo akakwirira.

Corona SDK: Nzira yeIndaneti Mifananidzo, Shandisa Mafananidzo uye Uuye Nemifananidzo kuPamberi