GlobalDataStore

Artık kullanılmayanları göster

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Oluşturulamaz
Çoğaltılmamış

Bir GlobalDataStore , DataStoreService için verileri kaydetme ve yükleme işlevlerini gösterir.

Veri yapısı, yönetimi, hata işleme vb. konularda geniş bir rehber için Veri Depoları bakın.

Sıralama depoları versiyonlama ve metin kayıtlarını desteklemiyor, bu yüzden DataStoreKeyInfo hep nil için anahtarlar için bir OrderedDataStore . Eğer versiyonlama ve metin kayıtları desteklemesi gerekiyorsa, bir 2> Class.DataStore2> kullanın.

Özet

Yöntemler

Özellikler

Yöntemler

GetAsync

Bekletir

Bu işlev, sağlanan anahtarın en son değerini ve bir DataStoreKeyInfo istemcisi için bir durumdöndürür. Eğer anahtar mevcut değilse veya en son versiyon silinmiş olursa, iki değer de nil olur.

Anahtarlar ilk okumadan 4 saniye sonra yerel olarak saklanır. GlobalDataStore:GetAsync() çağrısı bu 4 saniye içinde bir değeri kaynaktan alır. GlobalDataStore:SetAsync() veya GlobalDataStore:UpdateAsync() ile anahtarın değiştirilmesi an

En son sürümden önceki bir versiyon almak için, DataStore:GetVersionAsync() kullanın.

Parametreler

key: string

Değer istendiği kлюe ismi. DataStoreOptions.AllScopes , aşağıdaki Class.DataStoreService:GetDataStore() bağlantısı aracılığıyla erişim sağlandığında doğrulandığında, bu kлюe ismi orijinal kapsayış ile birleştirilmelidir.

Varsayılan değer: "nil"

Dönüşler

Veritabanındaki girişin değeri, veri depolarındaki anahtarın verilmiş değeri ve bir DataStoreKeyInfo istemcisi ile bir versiyon numarası, oluşturulma tarihi ve saati ve işlevleri toplar. İşlevleri ile UserIds ve metadatasını alır.

IncrementAsync

Variant
Bekletir

Bu işlev, bir anahtarın değerini sağlanan miktar artırır (her ikisi de sayı olmalıdır).

OrderedDataStore versiyon desteklemiyor, bu nedenle bir OrderedDataStore anahtarında bu yöntemi çağırmak mevcut değerin artırılıp değiştirilmiş değeri üzerwrite ve daha önceki sürümleri yeniden yazma ile geçersiz hale getirir.

Parametreler

key: string

Değer güncellenmesi gereken anahtar ismi. DataStoreOptions.AllScopes , veri depolarına erişim için DataStoreService:GetDataStore() ile ayarlanırsa, bu anahtar ismi "sınıf/anahtar" ile başlayan orijinal kapsayıcıyla birleştirilmelidir.

delta: number

Mevcut değerin artışını sağlayan miktar.

Varsayılan değer: 1
userIds: Array

(isteğe bağlı) Bir anahtar ile ilişkilendirilecek UserIds tabeleri.

Varsayılan değer: "{}"

(isteğe bağlı) DataStoreIncrementOptions istemcisi, bir dizi ek gösterge olarak birleştirir ve gelecekte genişletilebilir.

Varsayılan değer: "nil"

Dönüşler

Variant

Veritabanındaki gönderilen anahtar ile girişin güncellenmiş değeri.

RemoveAsync

Bekletir

Bu işlev, yeni bir "mezar taşı" versiyonu oluşturmak için belirli anahtarı silerek işaret eder. Bu, önce kaldırma çağrısından önce en son versiyonu içerir.

Bir anahtar bu işlev aracılığıyla kaldırıldıktan sonra, GlobalDataStore:GetAsync() çağrıları, anahtar için nil dönecektir. Daha eski versiyonların anahtarı DataStore:ListVersionsAsync() ve 2> Class.DataStore:GetVersionAsync()2> ar

OrderedDataStore versiyon desteği olmadığı için, bir RemoveAsync() çağırmak daimi olarak bir OrderedDataStore anahtarını silecektir.

Kaldırılan nesneler 30 gün sonra kalıcı olarak silinecek.

Önceki değerleri GlobalDataStore:RemoveAsync() veya DataStore:RemoveVersionAsync() ile silmiş olsaydı, işlev nil , 1> nil1> değeri ve 4> Class.DataStoreKeyInfo4> ile ilgili olarak 7> 9>dil9> döndürür.

Parametreler

key: string

Kaldırılacak anahtar ismi. DataStoreOptions.AllScopes , veri depolarına erişim için DataStoreService:GetDataStore() ile ayarlanırsa, bu anahtar ismi " scope/key" ile aynı şekilde başlamalıdır.


Dönüşler

Veri depolarının silmeden önceki değeri ve bir DataStoreKeyInfo istemcisi, versiyon numarası, oluşturulma tarihi ve saati ve işlevleri toplar. İşlevleri UserIds ve metadatayı geri alır.

SetAsync

Variant
Bekletir

Bu işlev, UserIds ile verilen anahtar için metadır ve verilen anahtar için metadır.

Veri depolarındaki değerler versiyonlandırılır, yani GlobalDataStore:SetAsync() her çağrıldığında yeni bir versiyon oluşturur. Önceki versiyonların erişimine kalıcı olarak erişmek için DataStore:ListVersionsAsync() / DataStore:GetVersionAsync() üzer

OrderedDataStore versiyon desteği olmadığından, bu yöntemi bir OrderedDataStore anahtarında çağırmak mevcut değerleri yazıyor ve daha önceki versiyonları yeniden yazıyor.

Metadanımlar her zaman bir değerle güncellenmelidir, böylece mevcut değerle ilgili hiçbir değişiklik olursa bile mevcut değer kaybı olur.

Veri depolarında saklanan herhangi bir yazılım, geçerli olmalıdır UTF-8 . UTF-8'de, 127'den daha büyük değerler kod puanlarını kodlama için kullanılır, bu yüzden 127'den daha büyük bir değer kod puanı kodlaması için

Set vs. Güncelleme

GlobalDataStore:SetAsync() en iyi belirli bir anahtarın hızlı güncellenmesi için kullanılır ve sadece yazma sınırına sayılır. Ancak, iki sunucunun aynı anahtarı setlemesi girişiminde bul

Parametreler

key: string

Değerin ayarlagereken anahtar ismi. DataStoreOptions.AllScopes , veri depolarına erişim sağlayan DataStoreService:GetDataStore() ile etkinleştirildiğinde, bu anahtar ismi kapsayıcı olmalıdır. "kapsayıcı/anahtar" bakınız.

value: Variant

Veri depolama anahtarının ayarlanacağı değer.

userIds: Array

Class.Player.UserId|UserIds , yardımcı olmak için GDPR izleme / kaldırma işlemlerine yardımcı olmak için şiddetle tavsiye edilir.

Varsayılan değer: "{}"

(isteğe bağlı) DataStoreSetOptions istemcisi, anahtarda metin belirtmeyi sağlayan istemci.

Varsayılan değer: "nil"

Dönüşler

Variant

Yeni oluşturulan versiyonun versiyon kimliği. GetVersionAsync() ile anahtar bilgileri alınabilir veya kullanıcı tarafından kaldırılabilir. RemoveVersionAsync() ile birlikte kullanılabilir.

UpdateAsync

Bekletir

Bu işlev, bir anahtarın veri depolarından değerini ve metadını alır ve onu geri arama işlevi belirlenmiş çağrı işlevi aracılığıyla yeni bir değerle günceller. Eğer çağrı işlevi nil döndürürse, yazma işlemi iptal edilir ve değer değiştirilmez.

Güncelleme başarılı olursa, değerin yeni bir versiyonu oluşturulur ve daha önceki versiyonlar DataStore:ListVersionsAsync() ve DataStore:GetVersionAsync() aracılığıyla erişilebilir.

OrderedDataStore sürüm desteği olmadığından, bu işlevi bir OrderedDataStore anahtarında çağırmak mevcut değerleri yazıyor ve daha önceki sürümleri yeniden yazıyor.

Başka bir oyun sunucusu, anahtarın kaynağını kısa süre içinde alıp, anahtarın değerini ayarladığı durumlarda, GlobalDataStore:UpdateAsync() çağrılır, sonraki çağrının sonucunu atar ve anahtarın değ

Veri depolarında saklanan herhangi bir yazılım, geçerli olmalıdır UTF-8 . UTF-8'de, 127'den daha büyük değerler kod puanlarını kodlama için kullanılır, bu yüzden 127'den daha büyük bir değer kod puanı kodlaması için

Set vs. Güncelleme

GlobalDataStore:SetAsync() en iyi belirli bir anahtarın hızlı güncellenmesi için kullanılır ve sadece yazma sınırına sayılır. Ancak, iki sunucunun aynı anahtarı setlemesi girişiminde bul

Geri çağırma işlevi

Çağrı fonksiyonu iki argüman kabul eder:

  • güncelleönce anahtarın değerini.
  • En son versiyon bilgilerini içeren Class.DataStoreKeyInfo istemcisi (metadaten kullanılmadığında bu argüman göz ardı edilebilir).

Döndüğüne göre, çağrı fonksiyonu üç değere kadar döndü:

  • anahtariçin yeni değer ayarlanır.
  • Bir anahtar ile ilişkilendirilecek UserIds bir matrisi. DataStoreKeyInfo:GetUserIds() şu anda mevcut ID'leri değiştirmediğiniz sürece tüm mevcut ID'leri temizlenmelidir; aksi takdirde tüm mevcut ID'ler silinecek.
  • anahtarbağlanacak metadanolu içeren bir Lua tablosu. DataStoreKeyInfo:GetMetadata() , var olan metadanolu içermezse tüm var olan metadanolu temizlenir.

Eğer çağrı nil yerine dönerse, mevcut sunucu, anahtarı güncellemeye çalışmayı bırakacaktır.

Çağrı fonksiyonu üretemez, bu yüzden değilLibrary.task.wait() gibi çağrıları içermeyin.

Parametreler

key: string

Değer güncellenmesi gereken anahtar ismi. DataStoreOptions.AllScopes , veri depolarına erişim için DataStoreService:GetDataStore() ile ayarlanırsa, bu anahtar ismi "sınıf/anahtar" ile başlayan orijinal kapsayıcıyla birleştirilmelidir.

transformFunction: function

Mevcut değer ve DataStoreKeyInfo parçalarını alıp yeni değerle birlikte gelen yeni değeri ve metrik şemayi içerliğiyle döndürür.


Dönüşler

Güncellenmiş değer, veritabanındaki girişin gösterilen anahtarı ve bir DataStoreKeyInfo istemcisi ile güncellenmiş değer, versiyon numarası, oluşturulma tarihi ve saati ve işlevleri içeren bir iletkenin içinde.

Etkinlikler