Wiedza o tym, jak uzyskać dostęp do współrzędnych gracza w Roblox, może być skomplikowanym i niejasnym procesem. Jeśli jednak znajdziesz sposób na dotarcie do współrzędnych i manipulowanie nimi, będziesz miał solidną podstawę do wykorzystania innych kreatywnych funkcji gry i przetestowania swoich umiejętności programowania.
W tym artykule pokażemy, jak znaleźć współrzędne gracza w Roblox.
Jak uzyskać współrzędne w Roblox?
Aby znaleźć współrzędne postaci, obiektów i miejsc, musisz nauczyć się skryptów w Roblox Studio. Ta platforma umożliwia tworzenie własnych światów i obszarów oraz dostosowywanie ich zgodnie z własnymi preferencjami.
Podczas pisania scenariusza musisz wykorzystać podstawowe informacje, które pozwolą Ci zmaksymalizować potencjał pisania skryptów w studio. Dobrym przykładem takich danych są współrzędne, czyli pozycje graczy.
Osiągnięcie pozycji gracza (po stronie serwera) będzie wymagało przejścia do właściwości postaci gracza. (gracz.Postać). Ale wcześniej musisz znaleźć obiekt gracza. Możesz to zrobić, zdobywając obiekt gracza w momencie wejścia na serwer za pomocą zwykłego skryptu gdzieś w twoim obszarze roboczym.
Jeśli w Twojej grze jest tylko jeden gracz, możesz umieścić obiekt gracza w swoim kontenerze obiektów. Ten kontener jest dostępny zawsze, gdy szukasz jego wartości w jednym ze skryptów po stronie serwera.
Ilustrować:
game.Players.PlayerAdded:Connect(funkcja(player)workspace.Data.Player.Value = koniec gracza)
„Dane” reprezentuje folder umieszczony w obszarze roboczym, a „Gracz” reprezentuje kontener ObjectValue zatytułowany „Gracz”, którego celem jest zapisanie obiektu odtwarzacza.
Ale ten kod nie jest jedyną opcją. Możesz go nazwać lub zmodyfikować zgodnie z własnymi preferencjami lub umieścić obiekt gracza w dowolny sposób.
Ten skrypt uruchamia się, gdy gracz wejdzie do gry. W przypadku gry jednoosobowej serwer ma tylko jednego gracza. Możesz jednak zmodyfikować kod, aby podążać za innymi graczami w dowolny sposób.
Aby uzyskać dostęp do właściwości odtwarzacza wraz z jego pozycją, twój zwykły skrypt wyglądałby tak:
lokalny odtwarzacz = Workspace.Data.Player.Value – Pobiera obiekt odtwarzacza i przechowuje go w zmiennej „player”
local var = player.Character.UpperTorso.Position — Pobiera pozycję vector3
A co z osiąganiem poszczególnych współrzędnych?
Możesz uzyskać dostęp do współrzędnych X, Y, Z w ten sposób:
lokalna varX = gracz.Character.UpperTorso.Position.X lokalna varY = gracz.Character.UpperTorso.Position.Y lokalna varZ = gracz.Character.UpperTorso.Pozycja.Z
Tutaj możesz użyć UpperTorso do reprezentowania humanoidów R15. W rezultacie może nie zadziałać w przypadku modeli Humanoidów innych niż R15.
Czy mogę wybrać inne części ciała do śledzenia?
Części ciała, które możesz śledzić, nie są zarezerwowane tylko dla UpperTorso. Oto jak uzyskać dostęp do dodatkowych:
- Użyj Developer Studio, aby otworzyć swoją grę.
- Gdy gra jest otwarta, wybierz StarterPlayer.
- Przejdź do HumanoidDefaultBodyParts (znajdź za pomocą „Widoku eksploratora”).
- Spowoduje to wyświetlenie listy części ciała, które umożliwiają śledzenie.
(Napisy: Derrick Bouchard – //gamedev.stackexchange.com/users/138624/derrick-bouchard).
Czy możesz użyć współrzędnych do teleportacji gdzieś?
Teraz, gdy dowiedziałeś się, jak ujawnić współrzędne w Roblox, będziesz chciał wiedzieć, czy istnieją jakieś pomysłowe działania, do których możesz wykorzystać tę wiedzę. Na przykład możesz ułatwić teleportację, jeśli odzyskałeś lokalizację kursora. Oto prosty sposób na zrobienie tego:
cel = gra.Players.LocalPlayer:GetMouse() .Hit x = cel.X y = cel.Y z = cel.Z gra.Players.LocalPlayer.Character:MoveTo(Vector3.new(x,y,z))
(Napisy: częstoz – //www.roblox.com/users/234079075/profile).
Jak ogólnie wykonuje się teleportację w Robloxie?
Teleportacja jest zdecydowanie jedną z najbardziej przydatnych funkcji w Robloxie. Pozwala graczom szybko poruszać się po dużych mapach, a tym samym umożliwia znacznie większą interakcję.
Jednak prawidłowe wykonanie może być trudne, zwłaszcza jeśli nie masz doświadczenia w pisaniu skryptów. Jednym z najczęstszych problemów, które mogą wystąpić podczas teleportacji, jest uszkodzenie modelu. Na przykład, jeśli użyjesz następującego skryptu, oddzielisz głowę od tułowia:
game.Workspace.Player.Torso.Position = Vector3.new(0, 50, 0)
Zamiast tego musisz użyć właściwości CFframe i typu danych CFframe. Oto jak to zrobić i poprawnie teleportować gracza:
game.Workspace.Player.HumanoidRootPart.CFrame = CFrame.new(Vector3.new(0, 50, 0))
Czy można teleportować wszystkich graczy?
Możesz teleportować wszystkich graczy na mapie. Musisz jednak uważać na pozycje docelowe, aby zachować nienaruszone torsy graczy. Oto jak wyglądałby kod:
1. cel = CFrame.new(0, 50, 0) --może znajdować się w pobliżu cegły lub w nowym obszarze 2. dla i, gracz w ipairs(game.Players:GetChildren()) do 3. --Upewnij się postać istnieje i jej HumanoidRootPart istnieje 4. if player.Character i player.Character:FindFirstChild("HumanoidRootPart") then 5. --dodaj przesunięcie 5 dla każdego znaku 6. player.Character.HumanoidRootPart.CFrame = target + Vector3 .nowy(0, i * 5, 0) 7. koniec 8. koniec
Dużo pracy prowadzi do dobrej zabawy
Całe kodowanie związane z wykonywaniem czynności, takich jak uzyskiwanie współrzędnych i teleportacja, może sprawić, że pomyślisz, że Roblox nie jest wart zachodu. Jednak kodowanie umożliwia zaaranżowanie charakterystycznych gier i rzeczywistości. Jest to nie tylko niezwykle satysfakcjonujące na dłuższą metę, ale może również przekształcić się w twoją aktywność rekreacyjną.
Czy próbowałeś swoich sił w kodowaniu w Roblox? Jak poszło? Daj nam znać w sekcji komentarzy poniżej?