Arkadaşları deneyim içinde bulmak zor olabilir. SpawnWithFriends geliştirici modülü, doğan oyuncuları deneyimde bulunan arkadaşlarından birinin yanına otomatik olarak taşır. Bu modül, otomatik olarak değil, komutla bir oyuncuyu teleport etmek için de yapılandırılabilir.
Modül Kullanımı
Kurulum
Bir deneyimde SpawnWithFriends modülünü kullanmak için:
Studio'nun Pencere menüsünden veya Ana sekme araç çubuğundan, Araç Kutusu açın ve Yaratıcı Mağaza sekmesini seçin.

Modeller sıralamasının seçildiğinden emin olun, ardından Kategorileri Görüntüle butonuna tıklayın.

Paketler kutucuğunu bulun ve tıklayın.
Arkadaşlarla Doğma modülünü bulun ve üzerine tıklayın ya da 3D görünüme sürükleyip bırakın.

Explorer penceresinde, tüm SpawnWithFriends modelini ReplicatedStorage içine taşıyın. Deneyimi başlattığınızda modül çalışmaya başlayacaktır.
Kısıtlı Doğma Alanları
Bu modül, oyuncuların VIP odaları, erişim alanları gibi kısıtlı alanlarda doğmasına neden olabilir. Bu alanlara oyuncuların teleport olmasını önlemek için:
Kısıtlı alanı görünmez Anchored bloklarıyla doldurun. Tüm bloklar için CanCollide, CanTouch, ve CanQuery devre dışı olduğundan emin olun.

Oyuncuların içeride doğmasını önlemek için tüm hapishane odasını dolduran blok Her bloğun özelliklerinin Etiketler bölümünden, CollectionService onların algılaması için RestrictedSpawnArea etiketini uygulayın.
Aşağıdaki kodu ServerScriptService içindeki bir Script üzerine yapıştırın.
Scriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local CollectionService = game:GetService("CollectionService")local SpawnWithFriends = require(ReplicatedStorage.SpawnWithFriends)local function validator(playerToTeleport, destinationPlayer, teleportationPoint)-- Tüm etiketlenmiş parçalar üzerinde döngüfor _, area in CollectionService:GetTagged("RestrictedSpawnArea") dolocal relativePosition = area.CFrame:PointToObjectSpace(teleportationPoint.Position)local size = area.Sizelocal inXBounds = relativePosition.X < size.X / 2 and relativePosition.X > -size.X / 2local inZBounds = relativePosition.Z < size.Z / 2 and relativePosition.Z > -size.Z / 2if inXBounds and inZBounds thenreturn false -- Doğma noktası kısıtlı alan içinde; teleportu iptal etendendreturn true -- Doğma noktası herhangi bir kısıtlı alanla çakışmıyor; teleportu devam ettirendSpawnWithFriends.setTeleportationValidator(validator)
API Referansı
Fonksiyonlar
configure
configure(config: table)
config tablosundaki aşağıdaki anahtar/değerler aracılığıyla varsayılan yapılandırma seçeneklerini geçersiz kılar. Bu fonksiyon yalnızca bir Script içinden çağrılabilir.
| Anahtar | Açıklama | Varsayılan |
|---|---|---|
| teleportToFriendOnRespawn | Falsy ayarlandığında, bir arkadaşa teleportasyon yalnızca teleportToRandomFriend ile manuel olarak yapılacaktır. | true |
| teleportDistance | Oyuncuların birbirlerinden ne kadar uzakta doğmaları gerektiği, stud cinsinden ölçülür. | 5 |
| maxCharacterVelocity | Bu değerden daha hızlı hareket eden karakterler teleport adayları olarak seçilmeyecek, örneğin hareket eden araçlardakiler. | 48 |
| bypassFriendshipCheck | Doğru olarak ayarlandığında, tüm oyuncular teleport adayları olacaktır, sadece arkadaşlar değil. | false |
| showLogs | Log mesajlarının çıktıda gösterilip gösterilmeyeceği. | false |
Scriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SpawnWithFriends = require(ReplicatedStorage.SpawnWithFriends)SpawnWithFriends.configure({teleportToFriendOnRespawn = true,teleportDistance = 5,maxCharacterVelocity = 48,bypassFriendshipCheck = false,showLogs = false})
teleportToRandomFriend
teleportToRandomFriend(playerToTeleport: Player): boolean
Oyuncunun deneyimdeki arkadaşlarından birine teleport edilmesini manuel olarak tetikler. Teleportun başarılı olup olmadığını belirten bir boolean döner; teleportun başarısız olması, sunucuda arkadaş olmaması veya açık bir teleportasyon noktası bulamamaktan kaynaklanabilir. Bu fonksiyon yalnızca bir Script içinden çağrılabilir.
setTeleportationValidator
setTeleportationValidator(validator: function)
Bir doğrulayıcı geri çağırma fonksiyonu ile özel ön-teleportasyon kontrolleri yapmanıza olanak tanır. Geri çağırma üç parametre alır:
| Parametre | Açıklama |
|---|---|
| playerToTeleport | Teleport edilen Player'ın referansı. |
| destinationPlayer | playerToTeleport'un teleport olduğu hedef Player'ın referansı. |
| teleportationPoint | CFrame, playerToTeleport'un teleport ettiği nokta. |
Bu fonksiyon ve geri çağırma yalnızca bir Script içinde kullanılabilir ve geri çağırma, teleportasyonun devam edip etmeyeceğini belirten bir boolean döner. Örneğin, aşağıdaki doğrulayıcı fonksiyondaki return mantığı, doğan oyuncu ile hedef oyuncunun aynı takımda olup olmadığını kontrol eder.
Script
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SpawnWithFriends = require(ReplicatedStorage.SpawnWithFriends)
-- Oyuncuları yalnızca aynı takımda olduklarında teleport eder
local function validator(playerToTeleport, destinationPlayer, teleportationPoint)
return playerToTeleport.Team == destinationPlayer.Team
end
SpawnWithFriends.setTeleportationValidator(validator)