Engine-klasse
Player
*Deze inhoud is vertaald met behulp van AI (bèta) en kan fouten bevatten. Klik hier om deze pagina in het Engels te bekijken.
Samenvatting
Eigenschappen
Methoden
Evenementen
CharacterAdded(character: Model):RBXScriptSignal |
CharacterAppearanceLoaded(character: Model):RBXScriptSignal |
CharacterRemoving(character: Model):RBXScriptSignal |
Chatted(message: string,recipient: Player):RBXScriptSignal |
Idled(time: number):RBXScriptSignal |
OnTeleport(teleportState: Enum.TeleportState,placeId: number,spawnName: string):RBXScriptSignal |
API-referentie
Eigenschappen
AutoJumpEnabled
Codevoorbeelden
Auto-Jump Toggle
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local button = script.Parent
local function update()
-- Werk de knoptekst bij
if player.AutoJumpEnabled then
button.Text = "Auto-Jump is AAN"
else
button.Text = "Auto-Jump is UIT"
end
-- Reflecteer de eigenschap in het karakter van de speler, als ze er een hebben
if player.Character then
local human = player.Character:FindFirstChild("Humanoid")
if human then
human.AutoJumpEnabled = player.AutoJumpEnabled
end
end
end
local function onActivated()
-- Schakel auto-jump in of uit
player.AutoJumpEnabled = not player.AutoJumpEnabled
-- Werk alles bij
update()
end
button.Activated:Connect(onActivated)
update()CameraMode
Codevoorbeelden
Spelen in Eerste Persoon
local Players = game:GetService("Players")
local player = Players.LocalPlayer
player.CameraMode = Enum.CameraMode.LockFirstPersonCharacter
Codevoorbeelden
Personage
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local character = player.Character
if not character or character.Parent == nil then
character = player.CharacterAdded:Wait()
endCharacterAppearance
DataComplexity
DataReady
FollowUserId
Codevoorbeelden
Volg Alert
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local screenGui = Instance.new("ScreenGui")
screenGui.Parent = player:WaitForChild("PlayerGui")
local function onPlayerAdded(newPlayer)
if newPlayer.FollowUserId == player.UserId then
local textLabel = Instance.new("TextLabel")
textLabel.Parent = screenGui
textLabel.Text = "Je werd gevolgd naar dit spel door " .. newPlayer.Name .. "!"
task.delay(3, function()
if textLabel then
textLabel:Destroy()
end
end)
end
end
Players.PlayerAdded:Connect(onPlayerAdded)HasRobloxSubscription
Codevoorbeelden
Controleer Roblox Abonnementsstatus
local Players = game:GetService("Players")
local player = Players.LocalPlayer
if player.HasRobloxSubscription then
-- Verleen content of voordelen die exclusief zijn voor abonnees
endMembershipType
PartyId
Codevoorbeelden
Player.PartyId
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
local partyId = player.PartyId
if partyId ~= "" then
print("Speler is in een groep met ID: " .. partyId)
else
print("Speler is niet in een groep")
end
player:GetPropertyChangedSignal("PartyId"):Connect(function()
if player.PartyId ~= "" then
print("Speler is bij een groep gekomen met ID: " .. player.PartyId)
else
print("Speler heeft de groep verlaten")
end
end)
end)RespawnLocation
Codevoorbeelden
Verander Spawn bij Aanraken
local Players = game:GetService("Players")
local function addSpawn(spawnLocation)
-- luister naar het aanraken van de spawn
spawnLocation.Touched:Connect(function(hit)
local character = hit:FindFirstAncestorOfClass("Model")
if character then
local player = Players:GetPlayerFromCharacter(character)
if player and player.RespawnLocation ~= spawnLocation then
local humanoid = character:FindFirstChildOfClass("Humanoid")
-- zorg ervoor dat het karakter niet dood is
if humanoid and humanoid:GetState() ~= Enum.HumanoidStateType.Dead then
print("spawn ingesteld")
player.RespawnLocation = spawnLocation
end
end
end
end)
end
local firstSpawn
-- doorzoek de workspace naar spawns
for _, descendant in pairs(workspace:GetDescendants()) do
if descendant:IsA("SpawnLocation") then
if descendant.Name == "FirstSpawn" then
firstSpawn = descendant
end
addSpawn(descendant)
end
end
local function playerAdded(player)
player.RespawnLocation = firstSpawn
end
-- luister naar nieuwe spelers
Players.PlayerAdded:Connect(playerAdded)
-- ga door bestaande spelers
for _, player in pairs(Players:GetPlayers()) do
playerAdded(player)
endThirdPartyTextChatRestrictionStatus
User
Codevoorbeelden
Gebruiker
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
local user = player.User
print("Domein gebruikers-ID:", user.Id)
print("Domein type:", user.DomainType)
print("Domein-ID:", user.DomainId)
end)UserId
Codevoorbeelden
Player.UserId
local Players = game:GetService("Players")
local function onPlayerAdded(player)
print(player.UserId)
end
Players.PlayerAdded:Connect(onPlayerAdded)Data Store naar Ranglijst
local Players = game:GetService("Players")
local DataStoreService = game:GetService("DataStoreService")
local goldDataStore = DataStoreService:GetDataStore("Gold")
local STARTING_GOLD = 100
local function onPlayerAdded(player)
local playerKey = "Player_" .. player.UserId
local leaderstats = Instance.new("IntValue")
leaderstats.Name = "leaderstats"
local gold = Instance.new("IntValue")
gold.Name = "Gold"
gold.Parent = leaderstats
local success, result = pcall(function()
return goldDataStore:GetAsync(playerKey) or STARTING_GOLD
end)
if success then
gold.Value = result
else
-- Mislukt om gegevens op te halen
warn(result)
end
leaderstats.Parent = player
end
Players.PlayerAdded:Connect(onPlayerAdded)userId
Methoden
ClearCachedAvatarAppearance
Player:ClearCachedAvatarAppearance():()
Teruggaves
()
ClearCharacterAppearance
Player:ClearCharacterAppearance():()
Teruggaves
()
Codevoorbeelden
Hoe de Uiterlijk van een Personage te Verwijderen
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local function onChildRemoved(child)
print(child.ClassName, "verwijderd uit personage")
end
character.ChildRemoved:Connect(onChildRemoved)
player:ClearCharacterAppearance()
--> Lichaamskleuren verwijderd uit personage
--> Shirtafbeelding verwijderd uit personage
--> Shirt verwijderd uit personage
--> Broek verwijderd uit personage
--> CharacterMesh verwijderd uit personage
--> Hoed verwijderd uit personage
--> Shirt verwijderd uit personageDistanceFromCharacter
Parameters
Teruggaves
Codevoorbeelden
De Afstand Tussen een Speler en een Positie Meten
local Players = game:GetService("Players")
for _, player in pairs(Players:GetPlayers()) do
print(player:DistanceFromCharacter(Vector3.new(0, 0, 0)))
endAfstand Van Karakter
local position1 = Vector3.new(0, 0, 0)
local position2 = Vector3.new(0, 10, 0)
local distance = (position1 - position2).MagnitudeGetCameraState
Player:GetCameraState():CameraState
Teruggaves
CameraState
Codevoorbeelden
Krijg Camera Status
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local cameraState = player:GetCameraState()
print(cameraState.CFrame)
print(cameraState.FieldOfView)
print(cameraState.ViewportSize)GetFriendsOnline
GetFriendsOnlineAsync
Parameters
| Standaardwaarde: 200 |
Teruggaves
Codevoorbeelden
Krijg een Lijst van Online Verbindingen
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local success, result = pcall(player.GetFriendsOnlineAsync, player, 10)
if success then
for _, friend in pairs(result) do
print(friend.UserName)
end
else
warn("Kon online spelers niet ophalen: " .. result)
endGetJoinData
Teruggaves
Codevoorbeelden
Verkeersbronnen Volgen
local DataStoreService = game:GetService("DataStoreService")
local Players = game:GetService("Players")
local analyticsStore = DataStoreService:GetDataStore("Analytics")
local ALLOWED_SOURCES = {
"twitter",
"youtube",
"discord",
}
local function onPlayerAdded(player)
local source = player:GetJoinData().LaunchData
-- controleer of de opgegeven bron geldig is
if source and table.find(ALLOWED_SOURCES, source) then
-- werk de gegevensopslag bij om de populariteit van de bron bij te houden
local success, result = pcall(analyticsStore.IncrementAsync, analyticsStore, source)
if success then
print(player.Name, "is toegetreden vanuit", source, "- totaal:", result)
else
warn("Mislukt om de toetredingsbron vast te leggen: " .. result)
end
end
end
Players.PlayerAdded:Connect(onPlayerAdded)Verwijs-URL Generator
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local DIRECT_JOIN_URL = "https://www.roblox.test1709.icu/games/start?placeId=%d&launchData=%s"
local textBox = script.Parent
local function generateReferralURL(player)
return DIRECT_JOIN_URL:format(game.PlaceId, player.UserId)
end
local function highlightAll()
if -- vermijd recursieve eigenschapsupdates
textBox:IsFocused() and not (textBox.SelectionStart == 1 and textBox.CursorPosition == #textBox.Text + 1)
then
textBox.SelectionStart = 1
textBox.CursorPosition = #textBox.Text + 1
end
end
textBox.Focused:Connect(highlightAll)
textBox:GetPropertyChangedSignal("SelectionStart"):Connect(highlightAll)
textBox:GetPropertyChangedSignal("CursorPosition"):Connect(highlightAll)
textBox.TextEditable = false
textBox.ClearTextOnFocus = false
textBox.Text = generateReferralURL(player)Een Tabel Gebruiken als Startgegevens
local HttpService = game:GetService("HttpService")
local DATA_CHARACTER_LIMIT = 200
local function encodeTableAsLaunchData(data)
-- converteer de tabel naar een string
local jsonEncodedData = HttpService:JSONEncode(data)
if #jsonEncodedData <= DATA_CHARACTER_LIMIT then
-- ontsnap mogelijk ongeldige tekens, zoals spaties
local urlEncodedData = HttpService:UrlEncode(jsonEncodedData)
return true, urlEncodedData
else
-- rapporteer tekenlimietfout
return false, ("Geencodeerde tabel overschrijdt %d tekenlimiet"):format(DATA_CHARACTER_LIMIT)
end
end
local sampleData = {
joinMessage = "Hallo!",
urlCreationDate = os.time(),
magicNumbers = {
534,
1337,
746733573,
},
}
local success, encodedData = encodeTableAsLaunchData(sampleData)
if success then
print(encodedData)
else
warn("mislukt om startgegevens te coderen: " .. encodedData)
endDecoderen van JSON-lanceringgegevens
local HttpService = game:GetService("HttpService")
local Players = game:GetService("Players")
local function onPlayerAdded(player)
local launchData = player:GetJoinData().LaunchData
if launchData then
-- probeer de gegevens te decoderen
local success, result = pcall(HttpService.JSONDecode, HttpService, launchData)
if success then
print(player.Name, "is toegetreden met gegevens:", result)
else
-- dit is waarschijnlijk te wijten aan de gebruiker die met de URL rommelt
warn("Kon lanceringgegevens niet parseren:" .. result)
end
end
end
Players.PlayerAdded:Connect(onPlayerAdded)Server TeleportData Voorbeeld
local Players = game:GetService("Players")
local approvedPlaceIds = { 1 } -- voeg goedgekeurde PlaceIds hier toe
local function isPlaceIdApproved(placeId)
for _, id in pairs(approvedPlaceIds) do
if id == placeId then
return true
end
end
return false
end
local function onPlayerAdded(player)
local joinData = player:GetJoinData()
-- verifieer of deze data is verzonden door een goedgekeurde plaats
if isPlaceIdApproved(joinData.SourcePlaceId) then
local teleportData = joinData.TeleportData
if teleportData then
local currentLevel = teleportData.currentLevel
print(player.Name .. " is op niveau " .. currentLevel)
end
end
end
Players.PlayerAdded:Connect(onPlayerAdded)GetRankInGroup
GetRankInGroupAsync
GetRoleInGroup
GetRoleInGroupAsync
HasAppearanceLoaded
Teruggaves
Codevoorbeelden
Controleer of het uiterlijk van een speler is geladen
local Players = game:GetService("Players")
local function onPlayerAdded(player)
local loaded = player:HasAppearanceLoaded()
print(loaded)
while not loaded do
loaded = player:HasAppearanceLoaded()
print(loaded)
task.wait()
end
end
Players.PlayerAdded:Connect(onPlayerAdded)IsBestFriendsWith
IsFriendsWith
isFriendsWith
IsFriendsWithAsync
IsInGroup
IsInGroupAsync
IsVerified
Parameters
| Standaardwaarde: Low |
Teruggaves
Codevoorbeelden
Gebruik IsVerified
local Players = game:GetService("Players")
local function onPlayerAdded(player)
print(player:IsVerified())
end
for _, player in pairs(Players:GetPlayers()) do
onPlayerAdded(player)
end
Players.PlayerAdded:Connect(onPlayerAdded)LoadBoolean
loadBoolean
LoadCharacter
LoadCharacterAppearance
LoadCharacterAsync
Player:LoadCharacterAsync():()
Teruggaves
()
Codevoorbeelden
Schakel Auto-Laden Uit en Simuleer Karakter Herstart
local Players = game:GetService("Players")
local RESPAWN_DELAY = 5
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
local function onCharacterAdded(character)
local humanoid = character:WaitForChild("Humanoid")
local function onDied()
task.wait(RESPAWN_DELAY)
player:LoadCharacterAsync()
end
humanoid.Died:Connect(onDied)
end
player.CharacterAdded:Connect(onCharacterAdded)
player:LoadCharacterAsync()
end
Players.PlayerAdded:Connect(onPlayerAdded)LoadCharacterWithHumanoidDescription
LoadCharacterWithHumanoidDescriptionAsync
Player:LoadCharacterWithHumanoidDescriptionAsync(
):()
Parameters
| Standaardwaarde: Default |
Teruggaves
()
Codevoorbeelden
Spawn Karakters Met HumanoidDescription
local Players = game:GetService("Players")
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
local humanoidDescription = Instance.new("HumanoidDescription")
humanoidDescription.HatAccessory = "2551510151,2535600138"
humanoidDescription.BodyTypeScale = 0.1
humanoidDescription.ClimbAnimation = 619521311
humanoidDescription.Face = 86487700
humanoidDescription.GraphicTShirt = 1711661
humanoidDescription.HeadColor = Color3.new(0, 1, 0)
player:LoadCharacterWithHumanoidDescriptionAsync(humanoidDescription)
end
Players.PlayerAdded:Connect(onPlayerAdded)LoadInstance
loadInstance
LoadNumber
loadNumber
LoadString
loadString
Move
Teruggaves
()
Codevoorbeelden
De Speler verplaatsen ten opzichte van hun Camera
local Players = game:GetService("Players")
local localPlayer = Players.LocalPlayer
-- Wacht op de character en humanoid van de speler, die moeten bestaan voordat :Move() wordt aangeroepen
local character = localPlayer.Character or localPlayer.CharacterAdded:Wait()
character:WaitForChild("Humanoid")
-- De speler zal bewegen totdat ze 50 studs van de positie van de camera zijn op het moment van uitvoeren
localPlayer:Move(Vector3.new(0, 0, -50), true)PromptAgeCheck
Player:PromptAgeCheck():()
Teruggaves
()
RemoveReplicationFocus
RequestStreamAroundAsync
SaveBoolean
saveBoolean
SaveInstance
saveInstance
SaveNumber
saveNumber
SaveString
saveString
WaitForDataReady
waitForDataReady
Evenementen
CharacterAdded
Parameters
Codevoorbeelden
Detecteren van Spawns en Despawns van Spelers
local Players = game:GetService("Players")
local function onCharacterAdded(character)
print(character.Name .. " is gespawnd")
end
local function onCharacterRemoving(character)
print(character.Name .. " is aan het despawnen")
end
local function onPlayerAdded(player)
player.CharacterAdded:Connect(onCharacterAdded)
player.CharacterRemoving:Connect(onCharacterRemoving)
end
Players.PlayerAdded:Connect(onPlayerAdded)Accessoire Verwijderaar
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local function destroyAccessory(object)
if object:IsA("Hat") or object:IsA("Accessory") then
object:Destroy()
end
end
local function onCharacterAdded(character)
-- Wacht een korte tijd voordat je accessoires verwijdert om de
-- "Iets heeft onverwacht ___ ouder naar NULL ingesteld" waarschuwing te vermijden
RunService.Stepped:Wait()
-- Controleer op bestaande accessoires in het karakter van de speler
for _, child in pairs(character:GetChildren()) do
destroyAccessory(child)
end
-- Hoeden kunnen een moment na het vuren van CharacterAdded aan het karakter worden toegevoegd,
-- dus we luisteren naar die met ChildAdded
character.ChildAdded:Connect(destroyAccessory)
end
local function onPlayerAdded(player)
player.CharacterAdded:Connect(onCharacterAdded)
end
Players.PlayerAdded:Connect(onPlayerAdded)CharacterAppearanceLoaded
Parameters
Codevoorbeelden
Verwijder Accessoires Na Laden
local Players = game:GetService("Players")
local function onPlayerAddedAsync(player)
local connection = player.CharacterAppearanceLoaded:Connect(function(character)
-- Alle accessoires zijn op dit punt geladen
local humanoid = character:FindFirstChildOfClass("Humanoid")
local numAccessories = #humanoid:GetAccessories()
print(("Verwijderen van %d accessoires voor %s"):format(numAccessories, player.Name))
humanoid:RemoveAccessories()
end)
-- Zorg ervoor dat we onze verbinding met de speler verbreken nadat ze vertrekken
-- om de speler te laten opruimen
player.AncestryChanged:Wait()
connection:Disconnect()
end
for _, player in Players:GetPlayers() do
task.spawn(onPlayerAddedAsync, player)
end
Players.PlayerAdded:Connect(onPlayerAddedAsync)CharacterRemoving
Parameters
Codevoorbeelden
Detecteren van Spawns en Despawns van Spelers
local Players = game:GetService("Players")
local function onCharacterAdded(character)
print(character.Name .. " is gespawnd")
end
local function onCharacterRemoving(character)
print(character.Name .. " is aan het despawnen")
end
local function onPlayerAdded(player)
player.CharacterAdded:Connect(onCharacterAdded)
player.CharacterRemoving:Connect(onCharacterRemoving)
end
Players.PlayerAdded:Connect(onPlayerAdded)Chatted
OnTeleport
Player.OnTeleport(
Parameters
Codevoorbeelden
Player.OnTeleport
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
local playerOnTeleport = player
player.OnTeleport:Connect(function(teleportState, _placeId, _spawnName)
if teleportState == Enum.TeleportState.Started then
print("Teleport gestart (" .. playerOnTeleport.Name .. ")")
elseif teleportState == Enum.TeleportState.WaitingForServer then
print("Teleport wacht op server (" .. playerOnTeleport.Name .. ")")
elseif teleportState == Enum.TeleportState.InProgress then
print("Teleport in uitvoering (" .. playerOnTeleport.Name .. ")")
elseif teleportState == Enum.TeleportState.Failed then
print("Teleport mislukt! (" .. playerOnTeleport.Name .. ")")
end
end)
end)