Workspace
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
Die rendern
Dieses Verhalten zu verstehen ist wichtig, da es bedeutet, dass Objekte aus dem Arbeitsbereich entfernt werden können, wenn sie nicht benötigt werden. Zum Beispiel kann die Karte Models aus dem Workspace entfernt werden, wenn eine andere Karte gespielt wird. Ob
In seiner Rolle als Halter von aktiven 3D-Objekten enthält Workspace eine Reihe von nützlichen Funktionen, die sich auf Teile, ihre Positionen und Verbindungen zwischen ihnen beziehen.
Zugriff auf den Arbeitsbereich
Workspace kann auf mehrere Wege zugänglich gemacht werden, alle von denen sind gültig.
- workspace
- game.Workspace
- game:GetService("Workspace")
Notizen
- Objekte, die Schmuck erfordern, wie ParticleEmitters und BillboardGuis, werden in der 0,0,0-Position sein, wenn sie mit Workspace elternt sind, ohne dass ein Schmuck festlegenist.
- Die Methoden Model:MakeJoints() und Model:BreakJoints() von der Model -Klasse werden durch 1>Class.Arbeitsbereich:MakeJoints()1> und 4>Class.Arbeitsbereich:BreakJoints()4> überschrieben, die nur in Plugins verwendet werden können.
- Es ist unmöglich, Workspace zu löschen.
- Das aktuelle Camera-Objekt eines Clients kann über das EigenschaftenWorkspace.CurrentCamera aufgerufen werden.
- Das Terrain-Objekt kann über das EigenschaftenWorkspace.Terrain aufgerufen werden.
Zusammenfassung
Eigenschaften
Die Luftdichte auf der Stufe, die in dem aerodynamischen Modellverwendet wird.
Bestimmt, ob die von anderen Benutzern erstellten Assets im Spiel verkauft werden können.
Gibt den Animation-Drossel-Modus für den lokalen Client an.
Das Camera -Objekt, das von dem lokalen Spieler:inverwendet wird.
Die Menge der Zeit, in Sekunden, die das Spiel ausgeführt hat.
Bestimmt die Höhe, bei der BaseParts und ihr Vorgänger Models aus Workspace entfernt werden.
Bestimmt, ob der Physikmotor auf BaseParts berechnet, ob auf deren EnableFluidForces-Eigenschaft die Winde tragen.
Gibt den globalen WindVector für animiertes Gelände, dynamische Wolken und Partikel an.
Bestimmt die Beschleunigung aufgrund der Schwerkraft, die auf fallende BaseParts angewendet wird.
Aktiviert Unterstützung für Einschränkungen für IKControls. Wenn deaktiviert, ignoriert IKControls Physik Einschränkungen.
Setzt, ob Character Heads und Accessories als MeshParts heruntergeladen werden sollen.
Steuert die Logik, die verwendet wird, um den Montagemaschinen-Root-Teil auszuwählen, wenn eine der Mover-Einschränkungen verwendet wird.
Setzt, wie der Solver die Physiksimulation im Laufe der Zeit voranträgt.
Konfiguriert, wann der Motor wieder Event-Handler aufnimmt.
Konfiguriert, wie der Engine Inhalte von Spielern abströmen soll.
Ob der Inhalt für den Ort aktiviert ist.
Bestimmt, ob StreamingIntegrityMode aktiv ist.
Minimale Distanz, die der Inhalt mit hoher Priorität an Spieler streamt.
Maximale Entfernung, zu der der Inhalt an Spieler gesendet wird.
Ein Verweis auf das Terrain -Objekt, das der Workspace zugewiesen ist.
Bestimmt, ob parts in verschiedenen Gruppen, die nicht kollidieren sollen, Kollisionen ignorieren und Berührungsereignisse ignorieren wird.
Setzt die Detaillierungsstufe auf dem Modell für Erlebnisse mit eingeschaltetem Instanz- Streaming.
Steuert das Modell- Streaming-Verhalten auf Models, wenn das Instanz- Streaming aktiviert ist.
Der Hauptteil des Model , oder nil wenn nicht explizit festlegen.
Editor-only-Eigenschaft, die verwendet wird, um das Modell um seine Achse zu skalieren. Wenn Sie diese Eigenschaft einstellen, bewegt sich die Skala, als ob Model/ScaleTo auf sie aufgerufen wurde.
Bestimmt, wo sich der Pivot eines Model , der nicht hat, befindet.
Methoden
Gibt die Anzahl der BaseParts, die als physisch aktiv betrachtet werden, aufgrund der kürzlich unter dem Einfluss von Physik.
Gibt einen ganzzahligzurück, zwischen 0 und 100, die den Prozentsatz der Echtzeit darstellt, den die Physik-Simulation derzeit durchtritt.
Gibt die Anzahl der Frames pro Sekunde zurück, bei der die Physik derzeit simuliert wird.
Kehre die Server-Epoch-Zeit in Sekunden zurück.
Erstellt Joints zwischen dem angegebenen Parts und allen berührenden Teilen, abhängig von den Oberflächen der Teile und dem angegebenen Joint-Erstellungsmodus.
Kehrt wahr zurück, wenn das Spiel den PGS Physics-Solver aktiviert hat.
Bricht alle Verbindungen zwischen dem angegebenen BaseParts und anderen BaseParts.
Positioniert und zoomt die Workspace.CurrentCamera, um die Extensität von BaseParts im Workspace zu zeigen.
Gibt zurück, wenn eines der gegebenen BasePart irgendeinen anderen Teil berührt.
Wirft einen Block in eine bestimmte Richtung und gibt ein RaycastResult zurück, wenn die Form einen BasePart oder Terrain Zellen berührt.
Bewegt eine Tabelle von BaseParts zu einer Tabelle von CFrames .
Rückgibt ein Array von Teilen, deren Umschlagkisten eine bestimmte Auswahlboxüberlappen.
Rückgibt ein Array von Teilen, deren Umschlagungskisten eine bestimmte Kugel überschneiden.
Gibt eine Reihe von Teilen zurück, deren besetzter Platz mit dem besetzten Teil geteilt wird.
- IKMoveTo(part : BasePart,target : CFrame,translateStiffness : number,rotateStiffness : number,collisionsMode : Enum.IKCollisionsMode):void
Bewegt den angegebenen Teil an den angegebenen Ort via umgekehrte Kinematik, anstatt ihn direkt zu verschieben, um sicherzustellen, dass alle Verbindungen, Einschränkungen oder Kollisionen, an denen dieser Teil teilnimmt, physisch zufrieden bleiben.
Wirft einen Strahl mit einer Quelle, Richtung und optionalem RaycastParams und gibt dann eine RaycastResult zurück, wenn ein elegibles Objekt oder Terrain den Strahl interessiert.
- Spherecast(position : Vector3,radius : number,direction : Vector3,params : RaycastParams):RaycastResult?
Wirft eine kugelförmige Form in eine bestimmte Richtung und gibt ein RaycastResult zurück, wenn die Form einen BasePart oder Terrain Zell berührt.
Verbessert die Simulation für Teile in der Welt basierend auf einem bestimmten Zeit-Inkrement und einer optionalen Reihe von BaseParts.
Setzt dieses Modell so ein, dass es für den angegebenen Spieler:indauerhaft ist. Model.ModelStreamingMode muss so eingestellt sein, dass PersistentPerPlayer für das Verhalten als Ergebnis der Zugabe geändert wird.
Bietet eine Beschreibung eines Volumes, das alle Teile eines Modells enthält.
Gibt die Größe der kleinsten Kernkiste zurück, die alle BaseParts in der Model enthält, mit dem Alignment auf die Model.PrimaryPart , wenn es festlegenist.
Rückgibt alle Player -Objekte, für die dieses Modell-Objekt persistent ist. Das Verhalten variiert basierend darauf, ob diese Methode aus einem Script oder einem LocalScript aufgerufen wird.
Gibt die Skalierung des Modells zurück, die standardmäßig 1 für neu erstellte Modelle beträgt und sich ändern wird, wenn sie über Model/ScaleTo skaliert wird.
Bewegt den PrimaryPart an die angegebene Position. Wenn eine Primärteil nicht angegeben wurde, wird die Wurzelteil des Modells verwendet.
Macht dieses Modell für bestimmten Spieler:innicht mehr persistent. Model.ModelStreamingMode muss auf PersistentPerPlayer eingestellt sein, damit das Verhalten als Ergebnis der Entfernung geändert wird.
Setzt den Skalierungsfaktor des Modells, um die Größe und den Standort aller Nachkommen zuzuschneiden, damit sie diesen Skalierungsfaktor in Relation zu ihren ursprünglichen Größen und Standorten haben, wenn der Skalierungsfaktor 1 war.
Verschiebt ein Model durch den angegebenen Vector3 Versatz, wobei die Orientierung des Modells erhalten bleibt. Wenn ein weiterer BasePart oder 2>Class.Terrain2> bereits in der neuen Position existiert, wird das 5>Class.Model5> mit dem überschriebenen 8>Class.Model8> kollidieren.
Erhalten Sie die Ausrichtung einer PVInstance.
Transformiert die PVInstance zusammen mit all ihren Nachkommen PVInstances, wodurch der Pivot jetzt an der angegebenen CFrame liegt.
Ereignisse
Feuert, wenn persistente Modelle an den angegebenen Spieler:ingesendet wurden.
Eigenschaften
AirDensity
Die Bodenebenen ( Y von 0) Luftdichte in RMU/stud³ Einheiten (siehe Roblox-Einheiten), die verwendet werden, um die aer
AllowThirdPartySales
Diese Workspace Eigenschaft bestimmt, ob Assets, die von anderen Anwendungen erstellt wurden, im Spiel verkauft werden können.
Was sind Third-Party-Verkäufe?
Wenn dieser Wert falsch ist, wie es standardmäßig der Fall ist, können nur die Assets des Platzes, die von der Platzschöpferin (egal, ob sie ein Spieler oder eine Gruppe ist) und Roblox erstellt wurden, mit MarketplaceService verkauft werden.
In den meisten Fällen müssen Spiele keine Dritt-Assets verkaufen. jedoch erfordern einige Spiele wie Handelshängen diesen Feature und daher als Option zum Opt-in.
Welche Drittprodukte kann ich verkaufen?
Beachten Sie, dass Entwicklerprodukte nur in dem Spiel verkauft werden können, mit dem sie verbunden sind, unabhängig davon, was AllowThirdPartySales ist. Dies beeinflusst Spielpässe und 1>Kleidung1>.
AvatarUnificationMode
CSGAsyncDynamicCollision
ClientAnimatorThrottling
Gibt die Enum.ClientAnimatorThrottlingMode an, die für den lokalen Client verwendet wird.
Wenn aktiviert, beginnen Animationen auf entfernt simulierten Model Instanzen zu verlangsamen. Der Verlängerer berechnet die Verlängerungsintensität mit:
- Ego-Shooterim Spiel
- Anzahl der aktiven Animationen
CurrentCamera
Das Camera -Objekt, das von dem lokalen Spieler:inverwendet wird.
Wie verwende ich die aktuelle Kamera
Wenn Sie nach dem Client-Objekt Camera suchen, verwenden Sie diese Eigenschaft, anstatt nach einem Kind von Workspace mit dem Namen "Camera" zu suchen.
Wenn Sie diese Eigenschafteneinstellen, werden alle anderen Camera -Objekte in der Workspace zerstört, einschließlich der vorherigen CurrentCamera. Wenn Sie diese Eigenschaft auf null oder auf eine Kamera setzen, die nicht ein Nachkommen des Workspace (oder der 1> CurrentCamera1> ist
For more information, see Scripting der Kamera .
DistributedGameTime
Die Menge der Zeit, in Sekunden, die das Spiel ausgeführt hat.
Trotz des Titels wird dieser Wert derzeit nicht 'verteilt' über den Client und den Server. Stattdessen repräsentiert er auf dem Server, wie lange der Server ausgeführt wurde. Auf dem Client repräsentiert er, wie lange der Client mit dem Server verbunden ist.
Entwickler sollten nicht auf das obige Verhalten angewiesen, und es ist möglich, dass diese Eigenschaft in Zukunft über Clients und den Server synchronisiert wird.
Diejenigen, die die Zeit seit dem Start des Programms suchen, sollten stattdessen die 'time'-Funktion verwenden. Siehe unten für einen Vergleich zwischen DistributedGameTime und seinen Alternativen.
print(workspace.DistributedGameTime) --> Time the game started runningprint(os.time()) --> Time since epoch (1 January 1970, 00:00:00) UTCprint(tick()) --> Time since epoch (1 January 1970, 00:00:00) system timeprint(time()) --> Time the game started runningprint(elapsedTime()) --> Time since Roblox started running
FallenPartsDestroyHeight
Dieses Eigenschaft bestimmt die Höhe, bei der die Roblox-Engine automatisch fällende BaseParts und ihre Vorfahren Models von Workspace durch Elternteile von 1> nil1> fortfällen. Dies verhindert Teile, die von der Karte fallen, für immer.
Wenn ein Teil aufgrund dieses Verhaltens entfernt wird, ist das Modell das letzte Modell in einem Model , das Modell wird auch entfernt. Dies gilt für alle Modellvorfahren des Teils.
Diese Eigenschaft wird zwischen -50.000 und 50.000 eingeklemmt, da BaseParts nicht richtig simuliert oder gerendert werden, da die Schwimmungspunkte intransparent sind.
Diese Eigenschaft kann von Skripten gelesen, aber nur von Plugins, der Kommandoleiste oder dem Eigenschaften-Fenster in Studio festgelegt werden.
FluidForces
Mit dieser Eigenschaft aktiviert, berechnet der Physikmotor auf BaseParts , deren EnableFluidForces -Eigenschaft wahr ist. Die Standard, Default, deaktiviert aerodynamische Kräfte. Beachten Sie, dass diese Eigenschaft nicht über Skripte gesetzt werden kann und stattdessen
GlobalWind
Diese Eigenschaft gibt die Richtung und Stärke an, in die der Wind durch die Erlebniswehen wird, was das Gelände, dynamische Wolken und Partikel beeinflusst. Siehe den Globalen Wind-Artikel für Details.
Gravity
Bestimmt die Beschleunigung aufgrund der Schwerkraft, die auf fallende BaseParts angewendet wird. Dieser Wert wird in Studs pro Sekunde berechnet und standardmäßig auf 196,2 Studs/Sekunde 2 festgelegt. Indem Sie diesen Wert ändern, können Entwickler die Effekte von niedrigerer oder höherer Schwerkraft im Spiel simulieren.
Code-Beispiele
local MOON_GRAVITY_RATIO = 1.62 / 9.81
local DEFAULT_GRAVITY = 196.2
local MOON_GRAVITY = DEFAULT_GRAVITY * MOON_GRAVITY_RATIO
-- Create a touch pad
local pad = Instance.new("Part")
pad.Size = Vector3.new(5, 1, 5)
pad.Position = Vector3.new(0, 0.5, 0)
pad.Anchored = true
pad.BrickColor = BrickColor.new("Bright green")
pad.Parent = workspace
-- Listen for pad touch
local enabled = false
local debounce = false
local function onPadTouched(_hit)
if not debounce then
debounce = true
enabled = not enabled
workspace.Gravity = enabled and MOON_GRAVITY or DEFAULT_GRAVITY
pad.BrickColor = enabled and BrickColor.new("Bright red") or BrickColor.new("Bright green")
task.wait(1)
debounce = false
end
end
pad.Touched:Connect(onPadTouched)
IKControlConstraintSupport
Aktiviert Unterstützung für Einschränkungen für IKControls. Der Default ist dasselbe wie Enabled. Wenn deaktiviert, ignorieren IKControls physische Einschränkungen. Siehe IKControl für weitere Details.
InsertPoint
MeshPartHeadsAndAccessories
Setzt, ob Charakter Köpfe und Zubehör als MeshParts heruntergeladen werden sollen. Der Default-Wert ist dieselbe wie Enabled. Wenn diese Funktion aktiviert ist, verwenden integrierte Avatare 1> Class.MeshPart|MeshParts1> für den Kopf und die Zubehör des Charakters.
ModelStreamingBehavior
MoverConstraintRootBehavior
Steuert die Logik, die verwendet wird, um den Montagemaschinen-Root-Teil für Mechanismen auszuwählen, die eines der folgenden Einschränkungen verwenden:
Wenn diese Eigenschaft auf Enum.MoverConstraintRootBehaviorMode.Enabled eingestellt ist, werden diese Einschränkungen ignoriert, wenn Sie die Montagemaschinenrückseite auswählen, wenn die Einschränkung keine Kr
Wenn diese Eigenschaft auf Enum.MoverConstraintRootBehaviorMode.Disabled eingestellt ist, können diese Einschränkungen beim Auswählen des Assemblage-Root-Teils falsch betrachtet werden, was zu einer Unzgodenen Netzwerkbesitz und Verzögerungen bei der Addition dieser Einschränkungen zu einem Mechanismus führt.
PathfindingUseImprovedSearch
PhysicsSteppingMethod
Setzt, wie der Solver die Physiksimulation im Laufe der Zeit voranträgt. Diese Option ist nicht skriptbar und muss von der PhysicsStepping Method-Eigenschaft von Arbeitsbereich innerhalb von Studio festgelegt sein. Siehe Adaptive Timestepping für Details.
<tbody><tr><td><b>Anpassbar</b></td><td>Der Engine versucht, für einzelne Montageplatten mit 240, 120 oder 60Hz die besten Simulationsraten zuzuweisen. Diese Einstellung wird für die Erfüllungoptimiert.</td></tr><tr><td><b>Repariert</b></td><td>Alle simulierten Montagemaschinen innerhalb des Arbeitsbereichs bewegen sich mit 240 Hz vorwärts. Diese Option ist am besten für eine optimale Stabilität und Simulationsgenauigkeit.</td></tr><tr><td><b>Standard</b></td><td>Der aktuelle Standard ist <b>Fixed</b> .</td></tr></tbody>
Option | Beschreibung |
---|
Beachten Sie, dass wenn Simulationsaggregate von verschiedenen Simulationsraten über Verbindungen via Constraints oder Kollisionen miteinander verbunden werden, der kombinierte Mechanismus standardmäßig auf die höchste Simulationsrate für Stabilität zurückgreift.
PlayerCharacterDestroyBehavior
PrimalPhysicsSolver
RejectCharacterDeletions
RenderingCacheOptimizations
ReplicateInstanceDestroySetting
Retargeting
SandboxedInstanceMode
SignalBehavior
Dieses Eigenschaft bestimmt, ob Ereignishändler sofort nach dem Auslösen des Ereignisses wieder aufgenommen werden, oder differiert und dann zu einem späteren Zeitpunkt wieder aufgenommen werden. Aufnahmepunkte enthalten derzeit:
- Eingabeverarbeitung (wird einmal pro Eingabe fortgesetzt, siehe UserInputService )
- Legacy-Auswertungsskript wie wait() , spawn() und delay()
For more information, see Verzögerte Ereignisse .
StreamOutBehavior
Die StreamOutBehavior -Steuerelemente, in denen die Inhalte aus dem ReplicationFocus basierend auf Geräte-Memory-Bedingungen oder basierend auf dem Streaming-Radius geladen werden.
Siehe auch:
- Workspace.StreamingEnabled welches steuert, ob Inhalts- Streaming aktiviert ist
StreamingEnabled
Die StreamingEnabled-Eigenschaft bestimmt, ob das Spielinhalt- Streaming für den Ort aktiviert ist. Diese Eigenschaft ist nicht skriptbar und muss deshalb auf dem Workspace-Objekt in Studio festgelegt sein.
Siehe auch:
StreamingIntegrityMode
Wenn Streaming aktiviert ist, kann ein Erlebnis unbeabsichtigte Weise auf unintensive Weise in eine Region der Welt streamen, die nicht auf ihrem Client streamed wurde. Die Streaming- Integrität-Funktion bietet einen Weg, diese potenziell problematischen Situationen zu vermeiden.
StreamingMinRadius
Die StreamingMinRadius Eigenschaft zeigt den Radius um den Charakter des Spieler:inoder die aktuelle ReplicationFocus in der die Inhalte streamt, in der höchsten Priorität. Standards auf 64 Studs.
Die Sorge sollte erhoben werden, wenn der Standard-Minimalradius erhöht wird, da dies mehr Speicher und mehr Server-Bandbreite kostet, während andere Komponenten auf Kosten anderer Komponenten.
Siehe auch:
- Workspace.StreamingEnabled welches steuert, ob Inhalts- Streaming aktiviert ist
StreamingTargetRadius
Die StreamingTargetRadius -Eigenschaft kontrolliert die maximale Entfernung vom Charakter des Spieler:inoder der aktuellen ReplicationFocus in dem Inhalt, in dem der Inhalt streamed wird. Standard sind 1024 Studs.
Beachten Sie, dass der Engine die zuvor geladene Inhalte jenseits des Zielbereichs speichern darf, Memory- Berechtigung.
Siehe auch:
- Workspace.StreamingEnabled welches steuert, ob Inhalts- Streaming aktiviert ist
Terrain
Dieses Eigenschaft ist eine Verweisung auf das Terrain -Objekt, das der Workspace zugewiesen ist.
Siehe Umwelt/Terrain für mehr Informationen.
TouchEventsUseCollisionGroups
TouchesUseCollisionGroups
Dieses Eigenschaft bestimmt, ob parts in verschiedenen Gruppen, die nicht kollidieren sollen, kollisionen ignorieren und berühren-Ereignisse ignorieren. Standardmäßig ist der Wert dieser Eigenschaft auf false gesetzt.
Wenn diese Eigenschaft aktiviert ist, ignorieren Teile in verschiedenen Gruppen, die nicht kollidieren sollen, auch die Class.BasePart.CanTouch|CanTouch Eigenschaften, ähnlich wie die Class.BasePart.CanCollide -Eigenschaft. Für weitere Informationen über das Verhalten von CanTouch besuchen Sie bitte seine Eigenschaftsseite.
Methoden
GetNumAwakeParts
Gibt die Anzahl der BaseParts, die als physisch aktiv betrachtet werden, aufgrund der kürzlich unter dem Einfluss von Physik.
Diese Funktion liefert einen Anhaltspunkt dafür, wie viele BaseParts letztlich von physischen Kräften beeinflusst werden, oder kürzlich unter dem Einfluss von Kräften.
print(workspace:GetNumAwakeParts()) -- prints the number of 'awake' parts
Schlafende vs Awake-Teile
Um eine gute Erfüllungzu gewährleisten, setzt Roblox
Rückgaben
Die Anzahl der wachen Teile.
GetPhysicsThrottling
Gibt einen ganzzahligzurück, zwischen 0 und 100, die den Prozentsatz der Echtzeit darstellt, den die Physik-Simulation derzeit durchtritt.
Diese Funktion kann verwendet werden, um zu bestimmen, ob und in welchem Umfang Physik-Throttling stattfindet.
Was ist Physik eingeschränkt?
Physics throttling occurs when the physics engine detects it cannot keep up with the game in realtime. When physics is throttling, it will update less frequently causing BaseParts to appear to move slower.
Ohne die gedrosselten Physiksimulation würde die Spiel-Physik weiter zurückfallen, wodurch die Bildrate und andere unerwünschte Verhalten entstehen können.
Objekte, die mit Humanoids verbunden sind, sind von der Physik-Schleuse befreit.
Siehe auch Workspace:SetPhysicsThrottleEnabled() .
Physikalische Einschränkungen demonstrieren
Entwickler sollten immer vermeiden, Orte zu erstellen, die den Physikmotor überlasten, da dies zu einer Untererfahrung für Spieler führt. Diejenigen, die jedoch den Physikmotor für Forschungszwecke simulieren möchten, müssen nur viel Parts sehr schnell erstellen.
local i = 0while true doi += 1if i % 5 == 0 thentask.wait()endlocal part = Instance.new("Part", workspace)end
Rückgaben
Der Prozentsatz der Echtzeit, der derzeit durch Physiksimulation gedrosselt wird.
GetRealPhysicsFPS
Gibt die Anzahl der Frames pro Sekunde zurück, bei der die Physik derzeit simuliert wird.
Verwendung von GetRealPhysicsFPS, um Exploiter zu bekämpfen
Eine häufige Verwendung dieser Funktion ist es, zu überprüfen, ob Exploiter ihre lokale Physikrate erhöhen, um schneller zu bewegen. Dies wird normalerweise durch Vergleich der von einem Client's GetRealPhysicsFPS zurückgegebenen Ergebnis mit einem Maximum, das nicht in üb
Rückgaben
Gibt die Anzahl der Frames pro Sekunde zurück, bei der die Physik derzeit simuliert wird.
Code-Beispiele
local Players = game:GetService("Players")
local player = Players.LocalPlayer
while task.wait(1) do
if workspace:GetRealPhysicsFPS() > 65 then
player:Kick()
end
end
GetServerTimeNow
GetServerTimeNow gibt die Epochenzeit auf dem Server mit Mikro秒-Präzision zurück. Die Zeit wird für Flow und Glättung aufgeschlüsselt (es ist garantiert, dass es nicht abnimmt). Der Server-Clock fortschreitet nicht schneller als 1.006× Geschwindigkeit und nicht weniger als 0.994× Geschwindigkeit.
Gibt eine Unix-Timestamp zurück, die mit os.date() oder mit DateTime.fromUnixTimestamp() verwendet werden kann.
Diese Funktion ist nützlich für die Erstellung synchronisierter Erlebnisse, da sie drei Eigenschaften hat, die für die Erstellung derselben erforderlich sind: eine reale Welt-Zeituhr, eine Monotonie und eine anständige Präzision.
Diese Funktion basiert auf dem Server, so dass das Aufrufen von ihm aus einem Client, das nicht verbunden ist, einen Fehler wird werfen.
Siehe auch:
- DistributedGameTime , eine Spielzeit-Uhr
Rückgaben
Die geschätzte Epochenzeit auf dem Server.
JoinToOutsiders
Diese Funktion erstellt Verbindungen zwischen dem angegebenen Parts und allen berührenden Teilen, abhängig von den Oberflächen der Teile und dem angegebenen Joint-Erstellungsmodus.
Diese Funktion erstellt Verbindungen zwischen den angegebenen Teilen und allen planaren berührenden Oberflächen, abhängig von den Oberflächen der Teile und dem angegebenen Verbindungsmodus.
- Kleber, Schrauben, Steckverbindungen, Universal, Schmelzen und Glätten werden alle Weld-Instanzen erstellen.
- Kugeln werden nicht auf irgendetwas schweißen. Die abgerundeten Seiten von Zylindern werden nicht aufschweißen, aber die flachen Endseiten werden.
Der erste Parameter ist ein Array von BaseParts . Joints werden nur zwischen den Teilen in dem Array erstellt und nicht in dem Array. Joints werden nicht zwischen den Teilen in dem Array erstellt.
Der zweite Parallelter ist ein Enum.JointCreationMode, der bestimmt, wie Joints erstellt werden. Wenn Sie einen Enumer-Wert, Enum.JointCreationMode.All oder Enum.JointCreationMode.Surface übergeben, hat das gleiche Verhalten, was dem immer beitreten gleichkommt
Diese Funktion wird von dem Roblox Studio Move-Werkzeug verwendet, wenn der Benutzer die Auswahl eines Elements beendet hat. In Zusammenarbeit mit Plugin:GetJoinMode() und Workspace:UnjoinFromOutsiders() kann sie verwendet werden, um die Funktion "Join" zu entwickeln, wenn Benutzer benutzerdefinierte Studio-Build-Tools entwickeln. Siehe die Schnipets unten für ein Beispiel.
-- finished moving a selection, make joints
local function finishedMovingParts(parts)
local joinMode = Plugin:GetJoinMode()
workspace:JoinToOutsiders(parts, joinMode)
end
-- hat begonnen, eine auswahl zu bewegen, zusammenhänge zu brechen
local function startMovingParts(parts)
workspace:UnjoinFromOutsiders(parts)
end
Parameter
Ein Array von BaseParts für wen Gemeinschaften getroffen werden sollen.
Der Enum.JointCreationMode wird verwendet. Wenn Sie in Enum.JointCreationMode.All oder Enum.JointCreationMode.Surface passieren, haben Sie dasselbe Verhalten, das der Beitritt immer gleich ist.
Rückgaben
PGSIsEnabled
Kehrt wahr zurück, wenn das Spiel den PGS Physics-Solver aktiviert hat.
Da Workspace.PGSPhysicsSolverEnabled Skripten nicht zugänglich ist, kann die Funktion PGSIsEnabled den Entwicklern sagen, welcher Physik-Solver das Spiel verwendet.
print(workspace:PGSIsEnabled()) -- true = PGS solver enabledprint(workspace:PGSIsEnabled()) -- false = Legacy solver enabled
Rückgaben
Gilt, wenn der PGS-Solver aktiviert ist.
UnjoinFromOutsiders
Bricht alle Verbindungen zwischen dem angegebenen BaseParts und anderen BaseParts.
Diese Funktion erfordert ein Array von BaseParts . Beachten Sie, dass sich die Verbindungen zwischen diesen BaseParts (einander) nicht brechen, nur zwischen diesen BaseParts und anderen 1> Class.BasePart|BaseParts1> nicht in dem Array.
Diese Funktion wird von dem Roblox Studio Move-Werkzeug verwendet, wenn der Benutzer eine Auswahl beginnt zu bewegen. In Kombination mit Plugin:GetJoinMode() und Workspace:JoinToOutsiders() kann sie verwendet werden, um die Funktion "Beitreten" beim Entwickeln benutzerdefinierter Studio-Build-Tools zu beibehalten. Siehe die Schnipets unten für ein Beispiel.
-- finished moving a selection, make joints
local function finishedMovingParts(parts)
local joinMode = Plugin:GetJoinMode()
workspace:JoinToOutsiders(parts, joinMode)
end
-- started moving a selection, break joints
local function startMovingParts(parts)
workspace:UnjoinFromOutsiders(parts)
end
Parameter
Ein Array von BaseParts für wen Joints zerbrochen werden sollen.
Rückgaben
ZoomToExtents
Positioniert und zoomt die Workspace.CurrentCamera, um die Extensität von BaseParts im Workspace zu zeigen.
Diese Funktion wurde in der, jetzt entfernten, 'Zoom To Extents' -Schaltfläche in Roblox Studio verwendet. Es zeigt ähnliches Verhalten wie die 'Zoom To' -Funktion (Tastenkombination), zeigt jedoch die Extents des Workspace anstelle des aktuell ausgewählten Objekts an.
Diese Funktion kann in Skripts nicht verwendet werden, aber in der Befehlsleiste oder Plugins funktionieren.
Rückgaben
Ereignisse
PersistentLoaded
Dieses Ereignis feuert jedes Mal, wenn ein Spieler alle verfügbaren persistenten Modelle und teilweise atomaren Modelle erhalten hat, ab. Der player-Parameter zeigt an, welcher Spieler alle verfügbaren Instanzen erhalten hat.
Beachten Sie, dass das Erlebnis-Laden vor dem persistente-Laden-Ereignis stattfindet, und das Feuern des DataModel.Loaded -Ereignisses zeigt nicht an, dass alle persistenten Modelle vorhanden sind.