Bertemu Dengan Teman

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Dapat menantang untuk menemukan teman-teman dalam pengalaman. Modul SpawnWithFriends mengemudi modul pengguna pada otomatis menempatkan pemain yang baru saja muncul di pengalaman. Modul ini juga dapat dikonfigurasi untuk mengirimkan pemain di perintah bukan secara otomatis.

Penggunaan Modul

Pemasangan

Untuk menggunakan modul SpawnWithFriends dalam pengalaman:

  1. Dari tab Lihat, buka tab Kotak Alat dan pilih tab Toko Pencipta .

    Toolbox toggle button in Studio
  2. Pastikan Model penyortiran dipilih, lalu klik tombol Lihat Semua untuk Kategori .

  3. Temukan dan klik Modul Dev ubin.

  4. Temukan modul Spawn With Friends dan klik, atau seret-seret ke dalam tampilan 3D.

  5. Di jendela Explorer, pindahkan seluruh model SpawnWithFriends ke ServerScriptService . Setelah mengeksekusi pengalaman, modul akan di distribusikan ke berbagai layanan dan mulai berjalan.

Area Pemutar Terbatas

Modul ini dapat menyebabkan pemain muncul di area terbatas seperti ruang VIP, ruang akses, dll. Untuk mencegah pemain berteleportasi ke area ini:

  1. Isi area terbatas dengan blok Anchored yang tak terlihat. Pastikan CanCollide, CanTouch, dan 1> Class.BasePart.CanQueue|CanQueue1> yang 4> dinonaktifkan

    Blokir penuh ruangan penjara untuk mencegah pemain muncul di dalam
  2. Menggunakan bagian Label dari setiap kepemilikan blok, atau Studio's Editor Tag, tetapkan tag RestrictedSpawnArea sehingga 1> Class.CollectionService1> mendeteksi mereka.

  3. Tempastekode berikut ke dalam Script di dalam ServerScriptService .

    Skrip

    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local CollectionService = game:GetService("CollectionService")
    local SpawnWithFriends = require(ReplicatedStorage:WaitForChild("SpawnWithFriends"))
    local function validator(playerToTeleport, destinationPlayer, teleportationPoint)
    -- Iterate melalui semua bagian yang ditandai
    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 -- Lokasi tujuan berada dalam area terbatas; aborsi teleportasi
    end
    end
    return true -- Lokasi tujuan tidak berlokasi di area terbatas; lanjutkan dengan teleportasi
    end
    SpawnWithFriends.setTeleportationValidator(validator)

Referensi API

Fungsi

mengonfigurasi

mengonfigurasi(config: table )

Menggeser opsi konfigurasi default melalui kunci/值 berikut ini dalam tabel config . Fungsi ini hanya dapat dipanggil dari Script .

KunciDeskripsiStandar
teleportToFriendOnRespawnJika diatur ke false , teleportasi ke teman hanya akan terjadi secara manual melalui teleportToRandomFriend .benar
teleportDistanceSeberapa jauh pemain harus bertelur dari satu sama lain, diukur dalam stud.5
maxCharacterVelocityKarakter yang bergerak lebih cepat dari nilai ini tidak akan dipilih sebagai kandidat teleportasi, misalnya mereka yang berada di kendaraan bergerak.48
bypassFriendshipCheckJika diatur ke benar, semua pemain akan menjadi kandidat untuk teleportasi, bukan hanya teman.benar
showLogsApakah akan menampilkan pesan log atau tidak diOutput.benar
Skrip

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

teleport ke Teman Acak

teleportToRandomFriend(playerToTeleport: Player): boolean

Secara manual mengaktifkan teleportasi pemain ke salah satu teman mereka dalam pengalaman. Mengembalikan boeing yang menunjukkan apakah atau tidak teleportasi berhasil; ketidakberhasilan teleport dapat disebabkan oleh ketidakmampuan untuk menemukan titik teleportasi yang tidak diblokir. Fungsi ini hanya dapat dipanggil dari Class.Script .

setTeleportasiValid

setTeleportationValidation(Validate: function )

Memungkinkan Anda untuk melakukan pemeriksaan pra-teleportasi khusus dengan menghubungkan fungsi panggilan validator. Panggilan menerima tiga parameter:

ParameterDeskripsi
playerToTeleportMengacu pada Player yang sedang di teleportasi.
destinationPlayerReferensi ke target Player yang playerToTeleport di teleportasi ke.
teleportationPointCFrame di mana playerToTeleport diteleportasi ke.

Fungsi ini dan panggilannya hanya dapat digunakan dalam Script dan panggilan kembali mengembalikan booleh menunjukkan apakah teleportasi harus dilakukan. Misalnya, logika return di fungsi validator berikutnya menjamin bahwa pemain pemain bertelur dan pemain tujuan berada di tim yang sama.

Skrip

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SpawnWithFriends = require(ReplicatedStorage:WaitForChild("SpawnWithFriends"))
-- Teleport pemain hanya jika mereka berada di tim yang sama
local function validator(playerToTeleport, destinationPlayer, teleportationPoint)
return playerToTeleport.Team == destinationPlayer.Team
end
SpawnWithFriends.setTeleportationValidator(validator)