Conas Sonraí Cluiche a Luchtú agus a Shábháil i SDK an Chróin

Conas SQLite a Úsáid chun Sonraí agus Socruithe Cluiche a Stóráil

Is é an rud is beagnach gach app agus cluiche i gcoitinne ná an gá atá le sonraí a stóráil agus a aisghabháil. Is féidir le fiú an cluiche is simplí úsáid a bhaint as SQLite chun uimhir an leagan app a shábháil, a fhéadfar a úsáid chun comhoiriúnacht a chinntiú nuair a bhíonn uasghrádú á dhéanamh agat, nó suíomhanna simplí mar fhuaim an chluiche ar nó as.

Mura ndearna tú an-chuid oibre le bunachair shonraí nó má úsáideann tú gnéithe an bhunachar sonraí i SDK Corona , ná bíodh imní ort. Tá sé i ndáiríre próiseas sách simplí a bhuíochas le cumhacht LUA agus inneall bunachar sonraí SQLite a úsáidtear i SDK Corona. Coisteoidh an teagasc seo tríd an bpróiseas chun tábla socruithe a chruthú agus faisnéis a stóráil agus a aisghabháil uaidh. Conas apps iPad a fhorbairt.

Chomh maith leis sin a choinneáil i gcuimhne gur féidir leis an teicníc seo dul níos mó ná suímh a stóráil ar úsáideoirí. Mar shampla, cad má tá cluiche agat is féidir a imirt ag baint úsáide as modhanna cluiche éagsúla cosúil le modh "scéal" agus modh "stua". Is féidir an tábla socruithe seo a úsáid chun an modh reatha a stóráil. Nó píosa sonraí ar bith eile gur mhaith leat fanacht go leanúnach fiú má fhágann an t-úsáideoir as an gcluiche agus é a athsheoladh.

Céim a hAon: An bunachar sonraí a thosú agus an tábla socruithe a chruthú

Is é an chéad rud is gá dúinn a dhéanamh ná an leabharlann SQLite a dhearbhú agus an t-iarratas a insint dúinn chun an comhad bunachar sonraí a aimsiú. Is é an áit is fearr chun an cód seo a chur ceart ag barr an chomhaid main.lua mar aon leis an gceann eile a cheangal ar ráitis. Cruthaítear an comhad bunachar sonraí mura bhfuarthas ceann ar bith, agus déanfaimid é a stóráil sa bhfillteán Doiciméid ionas gur féidir linn é a léamh agus scríobh chuige.

a cheangal "sqlite3"
local data_path = system.pathForFile ("data.db", system.DocumentsDirectory);
db = sqlite3.open (data_path);

Fógra faoi conas nach bhfuil an t-athróg "db" lonnaithe. Rinneamar é seo chun a chinntiú gur féidir linn teacht ar an mbunachar sonraí ar fud ár dtionscadal. Is féidir leat comhad sainiúil .lua a chruthú le haghaidh gach feidhmchlár bunachar sonraí agus coinnigh an bunachar sonraí atá lonnaithe sa chomhad sin.

Ar an gcéad dul síos, ní mór dúinn an tábla bunachar sonraí a chruthú a stórálfar ár socruithe:

sql áitiúil = "CREAT AN TÁBLA MÁS NÍ LÁTHAIRÍ suíomhanna (ainm, luach);"
db: exec (sql);

Cruthaíonn an ráiteas seo ár socrú tábla. Tá sé ceart go leor é a reáchtáil gach uair a luíonn an t-iarratas mar má tá an tábla ann cheana féin, ní dhéanfaidh an ráiteas seo aon ní. Is féidir leat an ráiteas seo a chur i gceart faoin áit a ndearbhaigh muid an bunachar sonraí nó an fheidhm a chuireann do app ar bun le reáchtáil. Is é an príomhriachtanas (1) na ráitis sin a fhorghníomhú gach uair a seolfar an t-iarratas agus (2) é a fhorghníomhú sula nglactar le haon ghlaonna socruithe a luchtú nó a shábháil.

Céim a Dó: Socruithe a shábháil ar an mbunachar sonraí

feidhm setSetting (ainm, luach)
sql = "Scriosadh as na suíomhanna UILE ainm = '" .. ainm .. "" ";
db: exec (sql)

sql = "INSERT INTO settings (name, value) VALUES ('" ..name .. "'," .. value .. ");";
db: exec (sql)
deireadh

feidhm setSettingString (ainm, luach)
setSetting (ainm, "'" .. value .. "'");
deireadh

Scriosann an fheidhm setSetting aon socruithe roimhe seo a shábháil ar an tábla agus cuirtear isteach ár luach nua. Oibreoidh sé le slánuimhreacha agus teaghráin araon, ach ní mór ach Sleachta aonair ar fud an luach a shábháil ar shraith, agus mar sin ní mór dúinn an fheidhm setSettingString a úsáid chun an obair bhreise sin a dhéanamh dúinn.

Céim a Trí: Socruithe a luchtú ón mbunachar sonraí

feidhm getSetting (ainm)

sql áitiúil = "SELECT * Ó na suíomhanna A BHAN ainm = '" .. ainm .. "'";
luach áitiúil = -1;

as a chéile i db: nrows (sql) a dhéanamh
luach = row.value;
deireadh

luach fillte;
deireadh

feidhm getSettingString (ainm)
sql áitiúil = "SELECT * Ó na suíomhanna A BHAN ainm = '" .. ainm .. "'";
luach áitiúil = '';

as a chéile i db: nrows (sql) a dhéanamh
luach = row.value;
deireadh

luach fillte;
deireadh

Mar atá thuas, tá na feidhmeanna briste againn i dhá leagan: ceann le haghaidh slánuimhreacha agus ceann do shraitheanna. Is é an chúis is mó atá déanta againn ionas gur féidir linn luachanna sonracha a chur in iúl mura bhfuil aon suíomh sa bhunachar sonraí. Cuirfidh an fheidhm getSetting ar ais ar -1, rud a chuir in iúl dúinn nach bhfuil an suíomh shábháil. Tabharfaidh an getSettingString téad bán.

Tá an fheidhm getSettingString hiomlán roghnach. Is é an t-aon difríocht idir é agus an gnáth-fheidhm GetSetting ná an méid a chuirtear ar ais más rud é nach bhfuil aon rud le fáil sa bhunachar sonraí.

Céim a Ceathair: Ag baint úsáide as ár mbord socruithe

Anois go bhfuil an obair chrua déanta againn, is féidir linn suímh a luchtú agus a shábháil go bunachar sonraí áitiúil. Mar shampla, d'fhéadfaimis an fhuaim a mhúscailt leis an ráiteas seo a leanas:

setSetting ('fuaim', bréagach);

Agus d'fhéadfaimis an suíomh a úsáid i bhfeidhm domhanda chun fuaimeanna a imirt:

feidhm playSound (soundID)
más rud é (getSetting ('fuaim') ansin
fuaime.play (soundID)
deireadh
deireadh

Chun an fhuaim a chur ar ais, leagamar síos go simplí ar an suíomh fuaime:

setSetting ('fuaim', fíor);

Is é an chuid deas faoi na feidhmeanna seo ná gur féidir leat teaghráin nó slánuimhreacha a shábháil ar an tábla socruithe agus iad a aisghabháil go héasca. Ligeann sé sin duit aon ní a dhéanamh ó ainm imreoir a shábháil chun a gcuid scór ard a shábháil.

Corón SDK: Conas Grianghrafadóireacht Sraithe, Bog Grafaicí agus Grafaicí a Thógáil chun Tosaigh