Arkadaşlarla birlikte oluştur

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

Deneyimde arkadaş bulmak zor olabilir.The SpawnWithFriends geliştirici modülü otomatik olarak deneyimde mevcut arkadaşlarından birinin yakınında oyun oluşturmayı hareket ettirir.Bu modül ayrıca otomatik olarak değil bir oyuncuyu komutla taşımak için yapılandırılabilir.

Modül Kullanımı

Yükleme

Bir deneyimde SpawnWithFriends modülünü kullanmak için:

  1. Görüntü sekmesinden açın Araç çantası ve Yaratıcı mağazası sekmesini seçin.

    Toolbox toggle button in Studio
  2. Modellerin sıralanması seçildiğinden emin olun, ardından Tümünü Görüntüle düğmesine tıklayın Kategoriler için >.

  3. Yerini ve tıklayın Geliştirici Modülleri düğmesi.

  4. Arkadaşlarla Yarat modunu bulun ve tıklayın veya 3B görüntüye sürükleyin ve bırakın.

  5. Araştırıcı penceresinde, tüm SpawnWithFriends modelini ServerScriptService ye taşıyın.Deneyimi çalıştırdıktan sonra, modül kendini çeşitli hizmetlere dağıtacak ve çalışmaya başlayacaktır.

Sınırlı Doğma Alanları

Bu modül, oyuncuların VIP odaları, erişim sadece alanları gibi sınırlı alanlarda ortaya çıkmasına neden olabilir, etc.Oyuncuların bu alanlara ışınlanmasını engellemek için:

  1. Sınırlı alanı görünmez Anchored bloklarla doldurun. , ve , tüm bloklar için devre dışı bırakıldığından emin olun .

    Tüm hapishane odasını dolduran blok, oyuncuların içeride doğmasını engellemek için
  2. Her blokun özelliklerinin Etiketler bölümünü veya Studio'nun Etiket Düzenleyicisi kullanarak, etiketi RestrictedSpawnArea uygulayın, böylece CollectionService onları tespit edebilsin.

  3. Aşağıdaki kodu Script içinde içine yapıştırın .

    Komut Dosyası

    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local CollectionService = game:GetService("CollectionService")
    local SpawnWithFriends = require(ReplicatedStorage:WaitForChild("SpawnWithFriends"))
    local function validator(playerToTeleport, destinationPlayer, teleportationPoint)
    -- Tüm etiketli parçalar arasında dolaşın
    for _, area in CollectionService:GetTagged("RestrictedSpawnArea") do
    local relativePosition = area.CFrame:PointToObjectSpace(teleportationPoint.Position)
    local size = area.Size
    local inXBounds = relativePosition.X < size.X / 2 and relativePosition.X > -size.X / 2
    local inZBounds = relativePosition.Z < size.Z / 2 and relativePosition.Z > -size.Z / 2
    if inXBounds and inZBounds then
    return false -- Varış noktası sınırlı alandadır; ışınlanmayı iptal et
    end
    end
    return true -- Spawn hedefi herhangi bir sınırlı alanın üzerine geçmez; teleportasyonla devam edin
    end
    SpawnWithFriends.setTeleportationValidator(validator)

API Referansı

Fonksiyonlar

yapılandır

yapılandır(config: table )

Varsayılan yapılandırma seçeneklerini aşağıdaki anahtarlar/değerler aracılığıyla geçersiz kılar: config tablosunda.Bu işlev yalnızca bir Script 'dan çağrılabilir.

AnahtarAçıklamaVarsayılan
teleportToFriendOnRespawnfalse olarak ayarlanırsa, bir arkadaşa ışınlanma yalnızca teleportToRandomFriend aracılığıyla manuel olarak gerçekleşir.doğru
teleportDistanceOyuncuların birbirinden ne kadar uzakta doğması gerektiği, mil ile ölçülür.5
maxCharacterVelocityBu değerden daha hızlı hareket eden karakterler, örneğin hareket eden araçlardaki olanlar, teleportasyon adayı olarak seçilmeyecektir.48
bypassFriendshipCheckDoğru ayarlanırsa, tüm oyuncular teleportasyon adayı olacak, sadece arkadaşlar değil.sahte
showLogsÇıkıda günlük mesajların görüntülenmesi ya da görüntülenmemesi.sahte
Komut Dosyası

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SpawnWithFriends = require(ReplicatedStorage:WaitForChild("SpawnWithFriends"))
SpawnWithFriends.configure({
teleportToFriendOnRespawn = true,
teleportDistance = 5,
maxCharacterVelocity = 48,
bypassFriendshipCheck = false,
showLogs = false
})

teleportToRandomFriend'e çevir

teleportToRandomFriend(playerToTeleport: Player ): boolean

Deneyimde bir oyuncunun bir arkadaşına ışınlanmasını manuel olarak tetikler.Işınlanmanın başarılı olup olmadığını gösteren bir true veya false döndürür; işınlanmanın başarısız olması, sunucudaki arkadaşların yokluğu veya engelsiz bir işınlanma noktası bulunamaması nedeniyle olabilir.Bu işlev yalnızca bir Script 'den çağrılabilir.

setTeleportationValidatörü

setTeleportationValidator(validator: function )

Geçerli bir doğrulayıcı geri arama işlevi bağlayarak özel ön-ışınlanma kontrolleri yapmanıza izin verir. Geri arama üç parametre alır:

DeğerleriAçıklama
playerToTeleportIşınlanan Player referansı.
destinationPlayerAktarılacak hedef Player referansı, playerToTeleport teleport edilecek.
teleportationPointCFrame nereye playerToTeleport ışınlanıyor.

Bu işlev ve onun geri çağrısı yalnızca bir Script içinde kullanılabilir ve geri çağrı, teleportasyonun devam edip etmeyeceğini gösteren bir boolean döndürür.Örneğin, aşağıdaki geçerli validatör işlevindeki return mantığı, oluşturucu oyuncunun ve hedef oyuncunun aynı takımda olduğundan emin olur.

Komut Dosyası

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SpawnWithFriends = require(ReplicatedStorage:WaitForChild("SpawnWithFriends"))
-- Oyuncuları yalnızca aynı takımda olduklarında ışınlar
local function validator(playerToTeleport, destinationPlayer, teleportationPoint)
return playerToTeleport.Team == destinationPlayer.Team
end
SpawnWithFriends.setTeleportationValidator(validator)