Jokainen halusi tallentaa tiedot ja ladata ne uudelleen aina, kun pelaaja tulee peliin uudelleen? Siitä lähtien, kun tietojen pysyvyydestä on tullut turhaa, ROBLOX tuo markkinoille paljon toimivampia tietovarastoja. Seuraavan oppaan avulla voit työskennellä ROBLOXin tietovarastojen kanssa.
Askeleet
Tapa 1 /3: Tietojen tallennus
Vaihe 1. Määritä sovellusliittymä
Tämä ei vaadi komentosarjoja, mutta kaikkien tietovarastojen sovellusliittymän aktivoimiseksi sinun on ensin otettava sovellusliittymän käyttö käyttöön. Voit tehdä tämän siirtymällä Kehitä -välilehteen ja napsauttamalla "Pelit". Tämän pitäisi ohjata sinut kaikkiin nykyisiin pelipaikkoihisi. Etsi pelisi ja napsauta vaihde. Pudotusvalikon pitäisi näkyä ja paina "Määritä". Valitse Salli Studio -pääsy API -palveluihin -valintaruutu ja tallenna. Sinulla pitäisi nyt olla pääsy koko sovellusliittymään.
Vaihe 2. Hae tietovarasto
Käytä Data Store -sovellusliittymää datamuistin hakemiseen, koska meidän on viitattava siihen. Aloita avaamalla komentosarja ROBLOXissa ja nimeä muuttuja, jonka avulla haluamme pyytää viitettä.
paikallinen tietovarasto = peli: GetService ("DataStoreService"): GetDataStore ("nimi")
Vaihe 3. Käytä muuttujaa tarpeen mukaan
Olet onnistuneesti kutsunut tietovarastoa muuttujalla "datastore". Nyt, kun sinun on haettava tietovarasto, voit nimetä sen yksinkertaisesti sen muuttujan mukaan.
Huomaa, että jos tietovarastoa ei ole vielä luotu, se luo automaattisesti uuden
Tapa 2/3: Tietojen tallennusmenetelmien käyttö
Vaihe 1. GetAsync
Palauta GetAsyncin avulla tietovaraston syötteen arvo annetulla avaimella. Varmista, että annat jokaiselle pelaajalle ainutlaatuisen avainsarjan, sillä kahden pelaajan asettaminen samaan avaimeen ohittaa heidän omat pelitietonsa aiheuttaen kaaosta kahden osapuolen välillä. Jos haluat tietää, miten voit määrittää yksilöllisen avaimen, lue eteenpäin.
- Seuraava koodi antaa nollaa, koska palvelin ei löytänyt mitään arvoa, joka linkittäisi avaimeen; On tärkeää näyttää palvelimelle täsmälleen, mitä yritämme tulostaa, jotta palvelin tietää, mitä on näytettävä.
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId tietovarasto: GetAsync (avain) loppu)
Vaihe 2. SetAsync
SetAsyncin avulla voit määrittää avaimen arvon ja ohittaa kaikki yksilölliselle avaimelle tallennetut tiedot.
- Jos edelliset tiedot ovat tärkeitä, harkitse UpdateAsyncin käyttöä, joka opetetaan alla.
- Seuraava koodi näyttää, kuinka molemmat: ": GetAsync ()" ja ": SetAsync ()" -menetelmät otetaan käyttöön.
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId tietovarasto: SetAsync (avain, 90) - - asettaa avaimen arvoon, 90 paikallista data_stored = datastore: GetAsync (avain) - pystyy havaitsemaan arvonmuutoksen tulostuksen (data_stored) - tulostaa tulosteen lopun)
Vaihe 3. Palauta avaimen arvo UpdateAsyncin avulla ja päivitä se uudella arvolla
Tämä vahvistaa tiedot, ja siksi on odotettava, kunnes palvelin löytää ajan päivittääkseen tiedot. Jotta tämä toimisi, sinun on annettava kaksi parametria; ensimmäinen on merkkijono, joka vie määrittämäsi yksilöllisen avaimen: "'user_'.. player.userId", ja toinen on funktio, joka ottaa vanhan arvon.
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId tietovarasto: UpdateAsync (avain, toiminto (vanha) - tee asiat loppuun) loppu)
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId tietovarasto: UpdateAsync (avain, toiminto (vanha) paikallinen uusi = vanha tai 0 - voi olla nolla uusi = uusi + 1 - lisää 1 vanhaan arvoon palauta uusi - palauttaa sen uuden arvon lopussa) loppu)
Vaihe 4. Suurenna avaimen arvoa IncrementAsyncin avulla ja palauttaa lisäarvon
Tämä menetelmä toimii vain kokonaislukuilla.
Tapa 3/3: Tietovarastojen tapahtumat ja tietojen päivittäminen
Vaihe 1. Aseta yksilöllinen avain
On erittäin tärkeää, että jokaisella pelaajalla on ainutlaatuinen avain. He pitävät kiinni tästä avaimesta, joka tallentaa kaikki heidän tietonsa. Tätä varten käytämme pelaajatunnusta. Kun olet asettanut tietovaraston, soita vain soittimen lataamiseen ja etsi sitten soittajan tunnus. Koodin pitäisi näyttää tältä:
local datastore = peli: GetService ("DataStoreService"): GetDataStore ("nimi") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId end)
Vaihe 2. Päivitä tiedot
Nyt kun sinulla on jokaiselle pelaajalle yksilöllinen avain, olet valmis päivittämään tietovaraston ja noutamaan tiedot. Haluat lisätä avaimen alle menetelmän, joka sopii parhaiten tarpeisiisi. Tässä tapauksessa käytämme UpdateAsyncia.
- Aloita toiminnolla, joka auttaa palvelinta ymmärtämään, mitä aiot tehdä.
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId tietovarasto: UpdateAsync (avain, toiminto (vanha) paikallinen newValue = vanha tai 0 - voi olla nolla newValue = newValue + 50 return newValue end) end)
Vaihe 3. Onnittelut
Olet tallentanut ja päivittänyt pelaajan tiedot.
Varoitukset
- Kun luot tietovarastoasi ensimmäisen kerran, varmista, että siinä on "game: GetService (" DataStoreService ")", jossa on isot kirjaimet. Se ei toimi tehokkaasti, jos sitä kutsutaan väärin.
- Varmista, että tiedät milloin käyttää "SetAsync" - ja "UpdateAsync" -palveluja, koska väärän käyttäminen voi muuttaa asiat sotkuiseksi tietoja noudettaessa. Useimmissa tapauksissa kehittäjät käyttävät UpdateAsyncia.