Weten hoe je toegang kunt krijgen tot spelercoördinaten in Roblox kan een ingewikkeld en obscuur proces zijn. Als je echter een manier vindt om de coördinaten te bereiken en ze te manipuleren, heb je een solide basis om andere creatieve functies van het spel te gebruiken en je programmeervaardigheden te testen.
In dit artikel laten we u zien hoe u spelercoördinaten kunt vinden in Roblox.
Hoe verkrijg je coördinaten in Roblox?
Om coördinaten van personages, objecten en plaatsen te vinden, moet je leren scripten in Roblox Studio. Dit platform stelt je in staat om je eigen werelden en gebieden te creëren en deze naar wens aan te passen.
Terwijl je script, moet je basisinformatie gebruiken waarmee je het potentieel van studioscripting kunt maximaliseren. Een mooi voorbeeld van dergelijke gegevens zijn coördinaten, d.w.z. spelersposities.
Om de positie van een speler (server-side) te bereiken, moet je naar de karaktereigenschap van de speler gaan. (speler. Karakter). Maar daarvoor moet je het object van de speler vinden. Je kunt dit doen door het object van de speler te verwerven op het moment dat ze de server binnenkomen met een gebruikelijk script ergens in je werkruimte.
Als je game maar één speler bevat, kun je het spelersobject in je objectcontainer plaatsen. Deze container is toegankelijk wanneer u de waarde ervan zoekt in een van uw server-side scripts.
Illustreren:
game.Players.PlayerAdded:Connect(function(player) workspace.Data.Player.Value = player end)
'Data' staat voor een map die in uw werkruimte is geplaatst en 'Player' staat voor ObjectValue-container met de naam 'Player' waarvan het doel is om het spelerobject op te slaan.
Maar deze code is niet uw enige optie. Voel je vrij om het een naam te geven of het aan te passen aan je voorkeur, of plaats het spelerobject zoals je wilt.
Dit script wordt uitgevoerd zodra een speler een spel betreedt. In het geval van een spel voor één speler heeft de server slechts één speler. U kunt de code echter wijzigen om andere spelers te volgen zoals u dat wilt.
Om de eigenschappen van de speler te bereiken, samen met zijn positie, ziet uw normale script er als volgt uit:
lokale speler = Workspace.Data.Player.Value – Haalt spelerobject op en slaat het op in de variabele 'speler'
local var = player.Character.UpperTorso.Position — Krijgt vector3-positie
Hoe zit het met het bereiken van individuele coördinaten?
U kunt op deze manier toegang krijgen tot de X, Y, Z-coördinaten:
local varX = player.Character.UpperTorso.Position.X local varY = player.Character.UpperTorso.Position.Y local varZ = player.Character.UpperTorso.Position.Z
Hier kun je UpperTorso gebruiken om R15 Humanoids te vertegenwoordigen. Als gevolg hiervan is het misschien niet geschikt voor andere Humanoid-modellen dan R15.
Kan ik andere lichaamsdelen kiezen om te volgen?
Lichaamsdelen die u kunt volgen, zijn niet alleen gereserveerd voor UpperTorso. Ga als volgt te werk om toegang te krijgen tot extra:
- Gebruik de Developer Studio om je game te openen.
- Selecteer StarterPlayer terwijl het spel is geopend.
- Ga naar HumanoidDefaultBodyParts (vind het met behulp van "Verkennerweergave").
- Hierdoor wordt een lijst weergegeven met lichaamsdelen die tracking mogelijk maken.
(Credits: Derrick Bouchard – //gamedev.stackexchange.com/users/138624/derrick-bouchard).
Kun je coördinaten gebruiken om ergens te teleporteren?
Nu je hebt ontdekt hoe je coördinaten in Roblox kunt onthullen, wil je weten of er fantasierijke activiteiten zijn waarvoor je die kennis kunt gebruiken. U kunt bijvoorbeeld teleportatie vergemakkelijken als u de locatie van uw cursor hebt opgehaald. Hier is een eenvoudige manier om het te doen:
target = game.Players.LocalPlayer:GetMouse() .Hit x = target.X y = target.Y z = target.Z game.Players.LocalPlayer.Character:MoveTo(Vector3.new(x,y,z))
(Credits: vaakz – //www.roblox.com/users/234079075/profile).
Hoe wordt teleportatie over het algemeen uitgevoerd in Roblox?
Teleportatie is verreweg een van de handigste functies in Roblox. Het stelt spelers in staat om snel over grote kaarten te bewegen en zo veel meer interactie mogelijk te maken.
Het correct uitvoeren ervan kan echter lastig zijn, vooral als scripting nieuw voor u is. Een van de meest voorkomende problemen die kunnen optreden tijdens teleporteren is het breken van het model. Als u bijvoorbeeld het volgende script zou gebruiken, zou u het hoofd van de romp scheiden:
game.Workspace.Player.Torso.Position = Vector3.new(0, 50, 0)
In plaats daarvan moet u de eigenschap CFframe en het gegevenstype CFframe gebruiken. Zo doe je het en teleporteer je een speler correct:
game.Workspace.Player.HumanoidRootPart.CFrame = CFrame.new(Vector3.new(0, 50, 0))
Is het mogelijk om alle spelers te teleporteren?
Je kunt alle spelers op een kaart teleporteren. Je moet echter voorzichtig zijn met de doelposities om de torso's van de spelers intact te houden. Hier is hoe de code eruit zou zien:
1. target = CFrame.new(0, 50, 0) --kan in de buurt van een steen zijn of in een nieuw gebied 2. voor i, speler in ipairs(game.Players:GetChildren()) do 3. --Zorg ervoor het karakter bestaat en zijn HumanoidRootPart bestaat 4. if player.Character and player.Character:FindFirstChild("HumanoidRootPart") dan 5. --voeg een offset van 5 toe voor elk karakter 6. player.Character.HumanoidRootPart.CFrame = target + Vector3 .new(0, i * 5, 0) 7. einde 8. einde
Veel werk leidt tot veel plezier
Alle codering die nodig is om acties uit te voeren, zoals het verkrijgen van coördinaten en teleportatie, kan je doen denken dat Roblox de moeite niet waard is. Met codering kunt u echter uw onderscheidende games en realiteiten orkestreren. Dit is niet alleen zeer de moeite waard op de lange termijn, maar het kan ook uw favoriete vrijetijdsbesteding worden.
Heb je al eens geprobeerd te coderen in Roblox? Hoe ging het? Laat het ons weten in de comments hieronder?