Tạo với bạn bè

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Có thể khó để tìm thấy bạn bè trong kinh nghiệm. The SpawnWithFriends 模块开发者 tự động di chuyển người chơi đang sinh sản gần một trong những người bạn hiện diện trong kinh nghiệm. This module cũng có thể được cấu hình để dịch chuyển một người chơi trên lệnh th

Sử dụng mô-đun

Cài đặt

Để sử dụng mô-đun SpawnWithFriends trong một trải nghiệm:

  1. Từ trang Xem, mở trang Hộp công cụ và chọn trang Cửa hàng Creator .

    Toolbox toggle button in Studio
  2. Đảm bạn chắn chọn Mô Hình sắp xếp, then click the Xem tất cả button for Các danh mục .

  3. Tìm và nhấp vào Dev Modules mảnh.

  4. Tìm mô-đun Spawn With Friends và nhấp vào nó, hoặc kéo nó vào 3D view.

  5. Trong cửa sổ Explorer, di chuyển toàn bộ mô hình SpawnWithFriends đến ServerScriptService . Khi chạy trải nghiệm, mô-đun sẽ được phân phối đến các dịch vụ khác nhau và bắt đầu chạy.

Khu vực phát triển hạn chế

Các hạng này có thể dẫn đến người chơi xuất hiện ở các khu vực hạn chế như phòng VIP, không gian chỉ dành cho truy cập, v.v. Để ngăn người chơi dịch chuyển đến các khu vực này:

  1. Làm cho khu vực hạn chế bằng các khối Anchored ẩn. Đảm bảo CanCollide , CanTouch và 1> Class.BasePart.CanQueue|CanQueue

    Chặn khối toàn bộ phòng tù để ngăn chặn người chơi tạo ra bên trong
  2. Bằng cách sử dụng các thẻ section of each block's properties, or Studio's Tag Editor , apply the tag RestrictedSpawnArea so that 2> Class.CollectionService2> detect them.

  3. Sao chép mã sau đây vào một Script trong ServerScriptService .

    Tập lệnh

    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local CollectionService = game:GetService("CollectionService")
    local SpawnWithFriends = require(ReplicatedStorage:WaitForChild("SpawnWithFriends"))
    local function validator(playerToTeleport, destinationPlayer, teleportationPoint)
    -- Lặp qua tất cả các bộ phận bị gắn nhã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 -- Điểm đến phát triển nằm trong khu vực hạn chế; huỷ dịch chuyển
    end
    end
    return true -- Điểm đến không có giao điểm nào bị hạn chế; tiến hành dịch chuyển
    end
    SpawnWithFriends.setTeleportationValidator(validator)

Tham khảo API

Hàm

điều chỉnh

điều chỉnh(config: table )

Làm mất các lựa chọn cài đặt mặc định qua các chìa khóa/giá trị được đề xuất dưới đây trong bảng config . Chức năng này chỉ có thể được gọi từ một Script .

Chìa khóaMô tảMặc định
teleportToFriendOnRespawnNếu được đặt để false, thì việc dịch chuyển đến một người bạn sẽ chỉ xảy ra thủ công qua teleportToRandomFriend .đúng
teleportDistanceMức độ xa của người chơi nào nên được đo bằng cách đo các ghim.5
maxCharacterVelocityNhững nhân vật di chuyển nhanh hơn giá trị này sẽ không được chọn làm ứng viên dịch chuyển, ví dụ như những người đang di chuyển trên xe tải.48
bypassFriendshipCheckNếu được thiết lập thành true, tất cả người chơi sẽ là người ứng cử cho việc dịch chuyển, không chỉ là bạn bè.đúng
showLogsCó hay không hiển thị các thông điệp đăng nhập trong kết quả.đúng
Tập lệnh

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

tìm thấy bạn bè ngẫu nhiên

teleportToRandomFriend(playerToTeleport: Player): boolean

Kích hoạt dịch chuyển tự động của một người chơi đến một trong những người bạn của họ trong trải nghiệm. Đưa ra một lời nói chuyển dịch bằng cách sử dụng một trong những biến này; thất bại trong dịch chuyển có thể được gây ra bởi s

setTeleportationVisitor

setTeleportationValidation(Validate: function )

Cho phép bạn thực hiện các lệnh kiểm tra trước khi dịch chuyển tùy chỉnh bằng cách kết nối một hàm gọi đăng nhập hợp lệ. Hàm gọi này nhận ba tham số:

Tham sốMô tả
playerToTeleportTham khảo đến Player đang được dịch chuyển.
destinationPlayerTham khảo vào mục tiêu PlayerplayerToTeleport đang được dịch chuyển đến.
teleportationPointCFrame ở đâu playerToTeleport đang dịch chuyển đến.

Hàm này và tiết lộ của nó chỉ có thể được sử dụng trong một Script và tiết lộ trả về mộtBoolean cho biết có nên tiến hành dịch chuyển hay không. Ví dụ, hàm return logic trong tiếp theo hàm validator đảm bảo rằng người chơi chính và người chơi đích đang

Tập lệnh

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SpawnWithFriends = require(ReplicatedStorage:WaitForChild("SpawnWithFriends"))
-- Dịch chuyển người chơi chỉ nếu họ ở cùng một đội
local function validator(playerToTeleport, destinationPlayer, teleportationPoint)
return playerToTeleport.Team == destinationPlayer.Team
end
SpawnWithFriends.setTeleportationValidator(validator)