Uzaktan yapılandırma
Uzaktan yapılandırma bayraklarını (Remote Config) almak için Yandex Oyun SDK'sındaki getFlags() yöntemini kullanın. Bayrakları oyunun başlangıcında bir kez talep etmenizi öneririz.
Örnek
1const ysdk = await YaGames.init();
2
3const flags = await ysdk.getFlags(); // Yöntem bayraklarla bir nesne döndürüyor.
4
5// Oyunun mantığında bir koşul ekleyebilirsiniz:
6if (flags.difficult === 'hard') {
7 // Yüksek zorluk seviyesini etkinleştiriyoruz.
8}
Yerel yapılandırma
Öneri
Her zaman yerel bayrak yapılandırmasını oyunun koduna ekleyin, çünkü sunucudan uzaktan yapılandırma alınamazsa (örneğin, internet bağlantısı sorunları nedeniyle) oyun çalışmaya devam edebilir.
Yerel yapılandırmayı (düz bir nesne, değerler — dizeler) eklemek için getFlags() yönteminin ek parametresindeki defaultFlags alanına iletmeniz gerekir. Sonuç olarak elde edilen nesne, uzaktan ve yerel yapılandırmaların birleşimidir. Uzaktan yapılandırmanın önceliği daha yüksektir.
Örnek
1const ysdk = await YaGames.init();
2
3const flags = await ysdk.getFlags({ defaultFlags: { difficult: 'easy' } });
4
5if (flags.difficult === 'easy') {
6
7}
İstemci parametreleri
Oyununuz oyuncu verilerini (tamamlanan seviyeler, deneyim, uygulama içi satın alımlar vb.) saklıyorsa, bunlar uzaktan yapılandırmada kullanılabilir. Koşullara bağlı olarak bir bayrağın nasıl yapılandırılacağı hakkında daha fazla bilgi için Adım 1. Bayrak konfigürasyonu oluşturun bölümüne bakın.
İstemci parametreleri getFlags() yönteminin clientFeatures alanına bir dizi olarak iletilmelidir.
Örnek
1const ysdk = await YaGames.init();
2
3const player = await ysdk.getPlayer();
4
5const payingStatus = player.getPayingStatus();
6
7// Kullanıcının ödeme etkinliği durumu istemci parametresi ile bayrakları talep ediyoruz.
8const flags = await ysdk.getFlags({
9 clientFeatures: [
10 { name: 'payingStatus', value: payingStatus }
11 ]
12});
getFlags() yönteminin imzası ve arayüzleri
1interface IFlags {
2 [key: string]: string;
3}
4
5interface IClientFeature {
6 name: string;
7 value: string;
8}
9
10interface IGetFlagsParams {
11 defaultFlags?: IFlags;
12 clientFeatures?: IClientFeature[];
13}
14
15function getFlags(getFlagsParams: IGetFlagsParams = {}): IFlags {}
Not
Destek ekibi, hazır oyunu Yandex Oyun platformuna yerleştirmenize yardımcı olur. Geliştirme ve test etme konularındaki uygulamalı sorulara ise diğer geliştiriciler Discord Topluluğu yanıt verir.
Yandex Games SDK kullanırken sorunla karşılaşırsanız veya sorunuz varsa, lütfen destek ekibiyle iletişime geçin: