SpawnLocation

Veraltete anzeigen

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

SpawnLocations, oder "spawns" bestimmen, wo ein Player respawns, wenn sie sterben. Sie können konfiguriert werden, um nur bestimmte Spieler zu erlauben, jeden Respawn zu verwenden, indem sie Teams verwenden. Sie steuern auch, wie ForceFields für neu gespawnte Spieler eingerichtet sind.

SpawnLocations können als Checkpoints verwendet werden, z. B. in einem Hindernis-Kurs, indem die SpawnLocation.AllowTeamChangeOnTouch Eigenschaftenverwendet wird, so dass wenn ein Spieler sie berührt, wird er Teams auf der SpawnLocation-Team ändern. In diesem Fall müssen nur die ersten Team -Sätze Class.Team

Beachten Sie, wenn ein SpawnLocation in Studio mit SpawnLocation.Neutral und SpawnLocation.TeamColor auf false gesetzt wird, dass ein Team erstellt wird, das entspricht 1>Class.SpawnLocation.TeamColor1>, wenn es noch nicht existiert. Dieses Verhalten geschieht nicht,

Regeln spawnen

Es gibt mehrere Regeln, die für einen bestimmten SpawnLocation gelten, wenn ein Spieler respawns:

  • Wenn SpawnLocation.Neutral auf falsch gesetzt ist, nur Players mit Player.TeamColor und der Übereinstimmung von 1> Class.SpawnLocation.TeamColor1> wird über ihm respawnen
  • Wenn SpawnLocation.Neutral auf wahr gesetzt ist, kann jeder Spieler über ihm spawnen, unabhängig von SpawnLocation.TeamColor
  • Wenn mehrere qualifizierte Spawns für einen Player verfügbar sind, wird ein zufälliger ausgewählt
  • Spieler spawnen an verschiedenen Orten auf dem SpawnLocation, aber derzeit können sie immer noch auf dem einen und anderen spawnen, wenn sie richtig nach dem anderen spawnen

Siehe auch:

  • Wenn du möchtest, wie lange es dauert, bis ein Spieler wiederbelebt, schau dir die RespawnTime Eigenschaftenan

Code-Beispiele

SpawnLocation Checkpoints

local Teams = game:GetService("Teams")
-- create start team (AutoAssignable = true)
local startTeam = Instance.new("Team")
startTeam.Name = "Start"
startTeam.AutoAssignable = true
startTeam.TeamColor = BrickColor.new("White")
startTeam.Parent = Teams
-- create checkpoint teams (Autoassignable = false), ensuring all TeamColors are unique
local team1 = Instance.new("Team")
team1.Name = "Checkpoint 1"
team1.AutoAssignable = false
team1.TeamColor = BrickColor.new("Bright blue")
team1.Parent = Teams
local team2 = Instance.new("Team")
team2.Name = "Checkpoint 2"
team2.AutoAssignable = false
team2.TeamColor = BrickColor.new("Bright green")
team2.Parent = Teams
local team3 = Instance.new("Team")
team3.Name = "Checkpoint 2"
team3.AutoAssignable = false
team3.TeamColor = BrickColor.new("Bright red")
team3.Parent = Teams
-- create spawns
local startSpawn = Instance.new("SpawnLocation")
startSpawn.Anchored = true
startSpawn.Size = Vector3.new(5, 1, 5)
startSpawn.Neutral = false
startSpawn.AllowTeamChangeOnTouch = false
startSpawn.TeamColor = startTeam.TeamColor
startSpawn.BrickColor = startTeam.TeamColor
startSpawn.Parent = game.Workspace
local team1Spawn = Instance.new("SpawnLocation")
team1Spawn.Anchored = true
team1Spawn.Size = Vector3.new(5, 1, 5)
team1Spawn.Neutral = false
team1Spawn.AllowTeamChangeOnTouch = true
team1Spawn.TeamColor = team1.TeamColor
team1Spawn.BrickColor = team1.TeamColor
team1Spawn.Parent = game.Workspace
local team2Spawn = Instance.new("SpawnLocation")
team2Spawn.Anchored = true
team2Spawn.Size = Vector3.new(5, 1, 5)
team2Spawn.Neutral = false
team2Spawn.AllowTeamChangeOnTouch = true
team2Spawn.TeamColor = team2.TeamColor
team2Spawn.BrickColor = team2.TeamColor
team2Spawn.Parent = game.Workspace
local team3Spawn = Instance.new("SpawnLocation")
team3Spawn.Anchored = true
team3Spawn.Size = Vector3.new(5, 1, 5)
team3Spawn.Neutral = false
team3Spawn.AllowTeamChangeOnTouch = true
team3Spawn.TeamColor = team3.TeamColor
team3Spawn.BrickColor = team3.TeamColor
team3Spawn.Parent = game.Workspace
-- position spawns
startSpawn.CFrame = CFrame.new(0, 0.5, 0)
team1Spawn.CFrame = CFrame.new(10, 0.5, 0)
team2Spawn.CFrame = CFrame.new(20, 0.5, 0)
team3Spawn.CFrame = CFrame.new(30, 0.5, 0)

Zusammenfassung

Eigenschaften

  • Erlaubt einem Player, sich dem Team anzuschließen, indem er den SpawnLocation berührt. Wenn auf wahr gesetzt, wenn ein Player -Charakter in Berührung mit dem 2>Class.SpawnLocation2> kommt, wird die Spieler:in5>Class.Player.TeamColor

  • Parallel lesen

    Die Länge der Zeit, in Sekunden, die ein ForceField angewendet wird zu einem Player -Charakter, der bei diesem SpawnLocation spawnet. Wenn die Dauer null ist, wird das 2>Class.ForceField2> niemals erstellt und es wird nicht die Ereignisse

  • Parallel lesen

    Setzt, ob die SpawnLocation aktiviert ist. Wenn deaktivierte Spieler nicht auf der SpawnLocation spawnen und die Funktion "AllowTeamChangeOnTouch" deaktiviert ist.

  • Parallel lesen

    Ob eine SpawnLocation mit einem bestimmten Team verbunden ist. Dies bedeutet, dass jeder Player , von einem Team , auf ihm spawnen kann, wenn diese Eigenschaft auf wahr gesetzt ist.

  • Parallel lesen

    Setzt, zu welchem Team die SpawnLocation verbunden ist. Wenn die Eigenschaft SpawnLocation.Neutral falsch ist, können nur Players mit der gleichen 1>Class.Player.TeamColor1> wie die Spawn-Teamfarbe dort spawnen.

Eigenschaften von Part übernommenEigenschaften von BasePart übernommen
  • Parallel lesen

    Bestimmt, ob ein Teil auf physikalische Weise unbewegbar ist.

  • Nicht repliziert
    Parallel lesen

    Die angelicale Geschwindigkeit der Montagemaschine.

  • Schreibgeschützt
    Nicht repliziert
    Parallel lesen

    Die Mitte der Masse der Montagemaschine im Platz.

  • Nicht repliziert
    Parallel lesen

    Die lineare Geschwindigkeit der Montagemaschine.

  • Schreibgeschützt
    Nicht repliziert
    Parallel lesen

    Die Gesamtmenge der Montagemaschine.

  • Schreibgeschützt
    Nicht repliziert
    Parallel lesen

    Eine Verweis auf den Wurzelteil der Konfiguration.

  • Bestimmt die Art der Oberfläche für die Rückseite eines Teils (+Z-Richtung).

  • Bestimmt die Art der Oberfläche für das Untergesicht eines Teils (-Y-Richtung).

  • Nicht repliziert
    Parallel lesen

    Bestimmt die Farbe eines Teils.

  • Parallel lesen

    Bestimmt die Position und Ausrichtung der BasePart in der Welt.

  • Parallel lesen

    Bestimmt, ob ein Teil mit anderen Teilen kollidieren kann.

  • Parallel lesen

    Bestimmt, ob das Teil während der räumlichen Anfrage-Operationen betrachtet wird.

  • Parallel lesen

    Bestimmt, ob Touched und TouchEnded Ereignisse auf der Teil abgefeuert werden.

  • Parallel lesen

    Bestimmt, ob ein Teil einen Schatten wirft oder nicht.

  • Schreibgeschützt
    Nicht repliziert
    Parallel lesen

    Beschreibt die Weltposition, in der sich der Zentrum eines Teils befindet.

  • Nicht repliziert
    Parallel lesen

    Beschreibt die Name einer Gruppe.

  • Nicht repliziert
    Parallel lesen

    Bestimmt die Farbe eines Teils.

  • Schreibgeschützt
    Nicht repliziert
    Parallel lesen

    Zeigt die aktuellen physischen Eigenschaften des Teils an.

  • Bestimmt mehrere physikalische Eigenschaften eines Teils.

  • Parallel lesen

    Wird verwendet, um aerodynamische Kräfte auf Teile und Montagen zu aktivieren oder zu deaktivieren.

  • Schreibgeschützt
    Nicht repliziert
    Parallel lesen

    Das CFrame der physischen Extents von der BasePart .

  • Schreibgeschützt
    Nicht repliziert
    Parallel lesen

    Die tatsächliche physische Größe des BasePart als von der Physik-Engine betrachtet.

  • Bestimmt die Art der Oberfläche für die Vorderseite eines Teils (-Z-Richtung).

  • Bestimmt die Art der Oberfläche für die linke Seite eines Teils (-X-Richtung).

  • Verborgen
    Nicht repliziert
    Parallel lesen

    Bestimmt einen Multiplikator für BasePart.Transparency, der nur für den lokalen Client sichtbar ist.

  • Parallel lesen

    Bestimmt, ob ein Teil in Studio auswählbar ist.

  • Schreibgeschützt
    Nicht repliziert
    Parallel lesen

    Beschreibt die Masse der Teil, das Produkt seiner Dichte und Volumen.

  • Parallel lesen

    Bestimmt, ob der Teil zur Gesamtmenge oder zur Inaktivität seines Festen Körpers beiträgt.

  • Parallel lesen

    Bestimmt die Textur und die Standard- physischen Eigenschaften eines Teils.

  • Nicht repliziert
    Parallel lesen

    Der Name von MaterialVariant .

  • Verborgen
    Nicht repliziert
    Parallel lesen

    Beschreibt dieRotation der Teil in der Welt.

  • Parallel lesen

    Gibt den Versatz des Teils von seinem CFrame .

  • Verborgen
    Nicht repliziert
    Parallel lesen

    Beschreibt die Position der Teil in der Welt.

  • Verborgen
    Schreibgeschützt
    Nicht repliziert
    Parallel lesen

    Zeit seit dem letzten aufgezeichneten Physik-Update.

  • Parallel lesen

    Bestimmt, wie viel ein Teil den Himmelskasten widerspiegelt.

  • Schreibgeschützt
    Nicht repliziert
    Parallel lesen

    Beschreibt die kleinste Größenänderung, die durch die Größenanpassungsmethode erlaubt ist.

  • Schreibgeschützt
    Nicht repliziert
    Parallel lesen

    Beschreibt die Gesichter, auf denen ein Teil skaliert werden kann.

  • Bestimmt die Art der Oberfläche für die rechte Seite eines Teils (+X-Richtung).

  • Parallel lesen

    Die Hauptregel bei der Bestimmung des Hauptteils einer Konfiguration.

  • Nicht repliziert
    Parallel lesen

    DieRotation der Teil in Grad für die drei Achsen.

  • Nicht repliziert
    Parallel lesen

    Bestimmt die Dimensionen eines Teils (Länge, Breite, Höhe).

  • Bestimmt die Oberflächenart für die obere Gesichtseite eines Teils (+ Y-Richtung).

  • Parallel lesen

    Bestimmt, wie viel ein Teil durch (den Umkehrwert der Teil-Opakez) gesehen werden kann.

Eigenschaften von PVInstance übernommen

Methoden

Methoden von BasePart übernommenMethoden von PVInstance übernommen

Ereignisse

Ereignisse von BasePart übernommen

Eigenschaften

AllowTeamChangeOnTouch

Parallel lesen

Erlaubt einem Player, sich dem Spieler:inanzuschließen, indem er den SpawnLocation ber

Dies wird nicht funktionieren, wenn SpawnLocation.Enabled auf falsch gesetzt ist.

Checkpoints erstellen

Dieser Feature wird oft verwendet, um Checkpoints in Hindernis-Kursen oder ähnlichen Spielen zu erstellen.

Code-Beispiele

SpawnLocation Checkpoints

local Teams = game:GetService("Teams")
-- create start team (AutoAssignable = true)
local startTeam = Instance.new("Team")
startTeam.Name = "Start"
startTeam.AutoAssignable = true
startTeam.TeamColor = BrickColor.new("White")
startTeam.Parent = Teams
-- create checkpoint teams (Autoassignable = false), ensuring all TeamColors are unique
local team1 = Instance.new("Team")
team1.Name = "Checkpoint 1"
team1.AutoAssignable = false
team1.TeamColor = BrickColor.new("Bright blue")
team1.Parent = Teams
local team2 = Instance.new("Team")
team2.Name = "Checkpoint 2"
team2.AutoAssignable = false
team2.TeamColor = BrickColor.new("Bright green")
team2.Parent = Teams
local team3 = Instance.new("Team")
team3.Name = "Checkpoint 2"
team3.AutoAssignable = false
team3.TeamColor = BrickColor.new("Bright red")
team3.Parent = Teams
-- create spawns
local startSpawn = Instance.new("SpawnLocation")
startSpawn.Anchored = true
startSpawn.Size = Vector3.new(5, 1, 5)
startSpawn.Neutral = false
startSpawn.AllowTeamChangeOnTouch = false
startSpawn.TeamColor = startTeam.TeamColor
startSpawn.BrickColor = startTeam.TeamColor
startSpawn.Parent = game.Workspace
local team1Spawn = Instance.new("SpawnLocation")
team1Spawn.Anchored = true
team1Spawn.Size = Vector3.new(5, 1, 5)
team1Spawn.Neutral = false
team1Spawn.AllowTeamChangeOnTouch = true
team1Spawn.TeamColor = team1.TeamColor
team1Spawn.BrickColor = team1.TeamColor
team1Spawn.Parent = game.Workspace
local team2Spawn = Instance.new("SpawnLocation")
team2Spawn.Anchored = true
team2Spawn.Size = Vector3.new(5, 1, 5)
team2Spawn.Neutral = false
team2Spawn.AllowTeamChangeOnTouch = true
team2Spawn.TeamColor = team2.TeamColor
team2Spawn.BrickColor = team2.TeamColor
team2Spawn.Parent = game.Workspace
local team3Spawn = Instance.new("SpawnLocation")
team3Spawn.Anchored = true
team3Spawn.Size = Vector3.new(5, 1, 5)
team3Spawn.Neutral = false
team3Spawn.AllowTeamChangeOnTouch = true
team3Spawn.TeamColor = team3.TeamColor
team3Spawn.BrickColor = team3.TeamColor
team3Spawn.Parent = game.Workspace
-- position spawns
startSpawn.CFrame = CFrame.new(0, 0.5, 0)
team1Spawn.CFrame = CFrame.new(10, 0.5, 0)
team2Spawn.CFrame = CFrame.new(20, 0.5, 0)
team3Spawn.CFrame = CFrame.new(30, 0.5, 0)

Duration

Parallel lesen

Die Länge der Zeit, in Sekunden, die ein ForceField angewendet wird zu einem Player -Charakter, der bei diesem SpawnLocation spawnet. Wenn die Dauer null ist, wird das 2>Class.ForceField2> niemals erstellt und es wird nicht die Ereignisse

Dieser Standardwert dieser Eigenschaft beträgt 10 Sekunden.

Die Dauer-Funktion ermöglicht es Entwicklern, Players leicht vor 'Spawn-Kill' zu schützen, was für Spieler frustrierend sein kann. Beachten Sie, dass ForceFields nur Benutzer vor Class.Explosion|Expl

Code-Beispiele

SpawnLocation ForceField

local spawnLocation = Instance.new("SpawnLocation")
spawnLocation.Anchored = true
spawnLocation.Size = Vector3.new(5, 1, 5)
spawnLocation.Neutral = true -- anyone can spawn here
spawnLocation.Duration = 20
spawnLocation.Parent = workspace

Enabled

Parallel lesen

Setzt, ob die SpawnLocation aktiviert ist oder nicht. Wenn deaktivierte Spieler nicht an der SpawnLocation und der SpawnLocation.AllowTeamChangeOnTouch Funktionalität deaktiviert sind, ist die 1>Class.SpawnLocation.AllowTeamChangeOnTouch1> Funktionalität deaktiviert.

Dieses Eigenschaft bietet den bequemsten Weg, um Players vor dem Spawn zu verhindern.

Beachten Sie, dass Team-Änderungen auf dem Touch mit der SpawnLocation.AllowTeamChangeOnTouch -Team-Änderungen auf dem Touch aktiviert sind, wenn "Aktiviert" auf false gesetzt ist, werden andere berührte Ereignisse mit dem BasePart.Touched -Team-Änderungen auf dem Touch immer noch ausgeführt.

Code-Beispiele

SpawnLocation Enabled

local spawnLocation = Instance.new("SpawnLocation")
spawnLocation.Anchored = true
spawnLocation.Size = Vector3.new(5, 1, 5)
spawnLocation.Neutral = true -- anyone can spawn here
spawnLocation.Enabled = true
spawnLocation.Parent = workspace
local function onEnabledChanged()
spawnLocation.Transparency = spawnLocation.Enabled and 0 or 0.5
end
spawnLocation:GetPropertyChangedSignal("Enabled"):Connect(onEnabledChanged)
task.wait(5)
spawnLocation.Enabled = false -- transparency = 0.5

Neutral

Parallel lesen

Ob ein Spawn mit einem bestimmten Team verbunden ist oder nicht. Dies bedeutet, dass jeder Player , von jedem Team , auf ihm spawnen kann, wenn diese Eigenschaft auf wahr gesetzt ist.

Wenn Neutral auf falsch gesetzt ist, können nur Spieler, cuyo Player.TeamColor gleich ist mit SpawnLocation.TeamColor den SpawnLocation verwenden.

Wenn SpawnLocation.AllowTeamChangeOnTouch wahr ist, wird Player.Neutral auf diese Eigenschaft beim Kontakt mit dem Spawn gesetzt.

Code-Beispiele

SpawnLocation Checkpoints

local Teams = game:GetService("Teams")
-- create start team (AutoAssignable = true)
local startTeam = Instance.new("Team")
startTeam.Name = "Start"
startTeam.AutoAssignable = true
startTeam.TeamColor = BrickColor.new("White")
startTeam.Parent = Teams
-- create checkpoint teams (Autoassignable = false), ensuring all TeamColors are unique
local team1 = Instance.new("Team")
team1.Name = "Checkpoint 1"
team1.AutoAssignable = false
team1.TeamColor = BrickColor.new("Bright blue")
team1.Parent = Teams
local team2 = Instance.new("Team")
team2.Name = "Checkpoint 2"
team2.AutoAssignable = false
team2.TeamColor = BrickColor.new("Bright green")
team2.Parent = Teams
local team3 = Instance.new("Team")
team3.Name = "Checkpoint 2"
team3.AutoAssignable = false
team3.TeamColor = BrickColor.new("Bright red")
team3.Parent = Teams
-- create spawns
local startSpawn = Instance.new("SpawnLocation")
startSpawn.Anchored = true
startSpawn.Size = Vector3.new(5, 1, 5)
startSpawn.Neutral = false
startSpawn.AllowTeamChangeOnTouch = false
startSpawn.TeamColor = startTeam.TeamColor
startSpawn.BrickColor = startTeam.TeamColor
startSpawn.Parent = game.Workspace
local team1Spawn = Instance.new("SpawnLocation")
team1Spawn.Anchored = true
team1Spawn.Size = Vector3.new(5, 1, 5)
team1Spawn.Neutral = false
team1Spawn.AllowTeamChangeOnTouch = true
team1Spawn.TeamColor = team1.TeamColor
team1Spawn.BrickColor = team1.TeamColor
team1Spawn.Parent = game.Workspace
local team2Spawn = Instance.new("SpawnLocation")
team2Spawn.Anchored = true
team2Spawn.Size = Vector3.new(5, 1, 5)
team2Spawn.Neutral = false
team2Spawn.AllowTeamChangeOnTouch = true
team2Spawn.TeamColor = team2.TeamColor
team2Spawn.BrickColor = team2.TeamColor
team2Spawn.Parent = game.Workspace
local team3Spawn = Instance.new("SpawnLocation")
team3Spawn.Anchored = true
team3Spawn.Size = Vector3.new(5, 1, 5)
team3Spawn.Neutral = false
team3Spawn.AllowTeamChangeOnTouch = true
team3Spawn.TeamColor = team3.TeamColor
team3Spawn.BrickColor = team3.TeamColor
team3Spawn.Parent = game.Workspace
-- position spawns
startSpawn.CFrame = CFrame.new(0, 0.5, 0)
team1Spawn.CFrame = CFrame.new(10, 0.5, 0)
team2Spawn.CFrame = CFrame.new(20, 0.5, 0)
team3Spawn.CFrame = CFrame.new(30, 0.5, 0)

TeamColor

Parallel lesen

Die TeamFarbe-Eigenschaft legt fest, zu welchem Team die SpawnLocation verbunden ist. Wenn die SpawnLocation.Neutral-Eigenschaft falsch ist, können nur Players mit der gleichen 1> Class.Player.TeamColor1> wie die Spawn-TeamFarbe dort spawnen.

Wenn SpawnLocation.AllowTeamChangeOnTouch wahr ist, wird Player.Neutral auf diese Eigenschaft beim Kontakt mit dem Spawn gesetzt.

Code-Beispiele

SpawnLocation Checkpoints

local Teams = game:GetService("Teams")
-- create start team (AutoAssignable = true)
local startTeam = Instance.new("Team")
startTeam.Name = "Start"
startTeam.AutoAssignable = true
startTeam.TeamColor = BrickColor.new("White")
startTeam.Parent = Teams
-- create checkpoint teams (Autoassignable = false), ensuring all TeamColors are unique
local team1 = Instance.new("Team")
team1.Name = "Checkpoint 1"
team1.AutoAssignable = false
team1.TeamColor = BrickColor.new("Bright blue")
team1.Parent = Teams
local team2 = Instance.new("Team")
team2.Name = "Checkpoint 2"
team2.AutoAssignable = false
team2.TeamColor = BrickColor.new("Bright green")
team2.Parent = Teams
local team3 = Instance.new("Team")
team3.Name = "Checkpoint 2"
team3.AutoAssignable = false
team3.TeamColor = BrickColor.new("Bright red")
team3.Parent = Teams
-- create spawns
local startSpawn = Instance.new("SpawnLocation")
startSpawn.Anchored = true
startSpawn.Size = Vector3.new(5, 1, 5)
startSpawn.Neutral = false
startSpawn.AllowTeamChangeOnTouch = false
startSpawn.TeamColor = startTeam.TeamColor
startSpawn.BrickColor = startTeam.TeamColor
startSpawn.Parent = game.Workspace
local team1Spawn = Instance.new("SpawnLocation")
team1Spawn.Anchored = true
team1Spawn.Size = Vector3.new(5, 1, 5)
team1Spawn.Neutral = false
team1Spawn.AllowTeamChangeOnTouch = true
team1Spawn.TeamColor = team1.TeamColor
team1Spawn.BrickColor = team1.TeamColor
team1Spawn.Parent = game.Workspace
local team2Spawn = Instance.new("SpawnLocation")
team2Spawn.Anchored = true
team2Spawn.Size = Vector3.new(5, 1, 5)
team2Spawn.Neutral = false
team2Spawn.AllowTeamChangeOnTouch = true
team2Spawn.TeamColor = team2.TeamColor
team2Spawn.BrickColor = team2.TeamColor
team2Spawn.Parent = game.Workspace
local team3Spawn = Instance.new("SpawnLocation")
team3Spawn.Anchored = true
team3Spawn.Size = Vector3.new(5, 1, 5)
team3Spawn.Neutral = false
team3Spawn.AllowTeamChangeOnTouch = true
team3Spawn.TeamColor = team3.TeamColor
team3Spawn.BrickColor = team3.TeamColor
team3Spawn.Parent = game.Workspace
-- position spawns
startSpawn.CFrame = CFrame.new(0, 0.5, 0)
team1Spawn.CFrame = CFrame.new(10, 0.5, 0)
team2Spawn.CFrame = CFrame.new(20, 0.5, 0)
team3Spawn.CFrame = CFrame.new(30, 0.5, 0)

Methoden

Ereignisse