İçeriğe atla

Dokümantasyon

SDK referansı

ball2d paketindeki her fonksiyon, oda metodu, olay ve tür.

ball2d paketinin iki girişi vardır. Her ikisi de aynı oda API'sini sunar; oda başlatma şekilleri ve kimin başlatabileceği farklıdır.

GirişÇalıştığı ortamOdayı şununla başlatır
ball2d/nodeNode.js 24+ (Bun uyumlu)Bir hesap API anahtarı
ball2dBir Ball2D dağıtımı tarafından sunulan sayfaTarayıcı kabul politikası, asla API anahtarı değil
Kurulum
npm install ball2d

Bir girişi içe aktarmak oda oluşturmaz, işlem başlatmaz veya global kayıt etmez. createRoom() çağırana kadar hiçbir şey olmaz.

Fonksiyonlar

Kurallar

Bu kurallar oda API'sinin tamamında geçerlidir.

Komutlar sırayla çalışır

Odayı değiştiren metotlar bir Promise döndürür ve çağırdığınız sırayla çalışır. Değiştirdiği durumu okumadan önce bir komutu bekleyin:

JavaScript
await room.setPlayerTeam(player.id, 1);
room.getPlayer(player.id)?.team; // 1

Aynı anda en fazla 256 komut beklemede olabilir. Bu sınırı aşan bir komut, zaten kabul edilmiş olanları etkilemeden reddedilir. close() sonrasında, bekleyen ve yeni komutlar reddedilir.

Okumalar senkrondur

getPlayerList() ve getState() gibi getter'lar ve kayıt kontrolleri hemen döner. Gönderdiğiniz değerler ve geri aldığınız nesneler kopyadır: döndürülen bir oyuncu nesnesini değiştirmek odayı değiştirmez.

Olaylar özelliktir

onPlayerJoin gibi bir olay özelliğine bir fonksiyon atayın. Her olayın bir işleyicisi vardır; yeniden atamak öncekinin yerini alır. İşleyiciler this olarak odayla çalışır. Bir işleyici hata fırlatırsa, hata onError'a gider ve oda çalışmaya devam eder.

Oyuncu ID'leri sabittir

Bir oyuncu, odada olduğu sürece aynı ID'yi korur ve ayrılan bir oyuncunun ID'si o odada yeniden kullanılmaz. ID'ler, fizik yuvaları veya hesap kimlikleri değil, herkese açık tanımlayıcılardır.

Referans