Spawn With Friends

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Può essere difficile localizzare gli amici durante l'esperienza. Il modulo SpawnWithFriends developer module sposta automaticamente i giocatori in fase di spawn vicino a uno dei loro amici presenti nell'esperienza. Questo modulo può anche essere configurato per teletrasportare un giocatore su comando anziché automaticamente.

Utilizzo del Modulo

Installazione

Per utilizzare il modulo SpawnWithFriends in un'esperienza:

  1. Dal menu Finestra di Studio o dalla barra degli strumenti della scheda Home, apri il Toolbox e seleziona la scheda Creator Store.

  2. Assicurati che la selezione Modelli sia attivata, quindi fai clic sul pulsante Vedi Tutto per le Categorie.

  3. Trova e fai clic sulla piastrella Pacchetti.

  4. Trova il modulo Spawn With Friends e fai clic su di esso, oppure trascinalo nella vista 3D.

  5. Nella finestra Explorer, sposta l'intero modello SpawnWithFriends in ReplicatedStorage. Una volta avviata l'esperienza, il modulo inizierà a funzionare.

Aree di Spawn Riservate

Questo modulo potrebbe consentire ai giocatori di spawnare in aree riservate come stanze VIP, spazi con accesso limitato, ecc. Per prevenire il teletrasporto dei giocatori in queste aree:

  1. Riempire l'area riservata con blocchi invisibili Anchored. Assicurati che CanCollide, CanTouch e CanQuery siano disabilitati per tutti i blocchi.

    Blocco che riempie l'intera stanza di prigione per impedire ai giocatori di spawnare all'interno
  2. Utilizzando la sezione Tag delle proprietà di ciascun blocco, applica il tag RestrictedSpawnArea affinché CollectionService li rilevi.

  3. Incolla il seguente codice in un Script all'interno di ServerScriptService.

    Script

    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local CollectionService = game:GetService("CollectionService")
    local SpawnWithFriends = require(ReplicatedStorage.SpawnWithFriends)
    local function validator(playerToTeleport, destinationPlayer, teleportationPoint)
    -- Itera attraverso tutti i parti contrassegnati
    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 -- La destinazione di spawn è all'interno dell'area riservata; abortisci il teletrasporto
    end
    end
    return true -- La destinazione di spawn non sovrappone alcuna area riservata; procedi con il teletrasporto
    end
    SpawnWithFriends.setTeleportationValidator(validator)

Riferimento API

Funzioni

configure

configure(config: table)

Sovrascrive le opzioni di configurazione predefinite tramite le seguenti chiavi/valori nella tabella config. Questa funzione può essere chiamata solo da un Script.

ChiaveDescrizionePredefinito
teleportToFriendOnRespawnSe impostato su false, il teletrasporto a un amico avverrà solo manualmente tramite teleportToRandomFriend.true
teleportDistanceQuanto lontano i giocatori dovrebbero spawnare l'uno dall'altro, misurato in stud.5
maxCharacterVelocityI personaggi che si muovono più velocemente di questo valore non verranno scelti come candidati per il teletrasporto, ad esempio quelli in veicoli in movimento.48
bypassFriendshipCheckSe impostato su true, tutti i giocatori saranno candidati per il teletrasporto, non solo gli amici.false
showLogsSe visualizzare o meno messaggi di log nell'output.false
Script

local 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

Attiva manualmente il teletrasporto di un giocatore a uno dei suoi amici nell'esperienza. Restituisce un booleano che indica se il teletrasporto è riuscito o meno; il fallimento del teletrasporto può essere causato dall'assenza di amici nel server o dall'impossibilità di trovare un punto di teletrasporto non ostruito. Questa funzione può essere chiamata solo da un Script.

setTeleportationValidator

setTeleportationValidator(validator: function)

Ti consente di eseguire controlli personalizzati prima del teletrasporto collegando una funzione di callback di validazione. La callback riceve tre parametri:

ParametroDescrizione
playerToTeleportRiferimento al Player che viene teletrasportato.
destinationPlayerRiferimento al Player obiettivo a cui playerToTeleport viene teletrasportato.
teleportationPointCFrame dove playerToTeleport si sta teletrasportando.

Questa funzione e la sua callback possono essere utilizzate solo in un Script e la callback restituisce un booleano che indica se il teletrasporto dovrebbe procedere. Ad esempio, la logica return nella seguente funzione di validazione assicura che il giocatore in fase di spawn e il giocatore di destinazione siano nella stessa squadra.

Script

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SpawnWithFriends = require(ReplicatedStorage.SpawnWithFriends)
-- Teletrasporta i giocatori solo se sono nella stessa squadra
local function validator(playerToTeleport, destinationPlayer, teleportationPoint)
return playerToTeleport.Team == destinationPlayer.Team
end
SpawnWithFriends.setTeleportationValidator(validator)
© 2026 Roblox Corporation. Roblox, il logo Roblox e Powering Imagination sono tra i nostri marchi registrati e non registrati negli Stati Uniti. e altri paesi.