Знанието как да получите достъп до координатите на играчите в Roblox може да бъде сложен и неясен процес. Ако обаче намерите начин да достигнете координатите и да ги манипулирате, ще имате солидна основа за използване на други творчески функции на играта и тестване на уменията ви за програмиране.
В тази статия ще ви покажем как да намерите координатите на играчите в Roblox.
Как получавате координати в Roblox?
За да намерите координати на символи, обекти и места, трябва да се научите как да въвеждате скриптове Студио Roblox . Тази платформа ви позволява да създавате свои светове и области и да ги персонализирате според вашите предпочитания.
шрифт Хари Потър за google docs
Докато сценаризирате, ще трябва да използвате основна информация, която ви позволява да увеличите максимално потенциала на студийните сценарии. Прекрасен пример за такива данни са координатите, т.е.позициите на играчите.
Достигането до позиция на играч (от страна на сървъра) ще изисква да отидете до свойството на характера на играча. (играч. Символ). Но преди това ще трябва да намерите обекта на играча. Можете да направите това, като придобиете обекта на играча в момента, в който влязат в сървъра с обикновен скрипт някъде във вашето работно пространство.
Ако играта ви включва само един играч, можете да поставите обекта на играча във вашия контейнер за обекти. Този контейнер е достъпен винаги, когато търсите стойността му в някой от сървърните скриптове.
За илюстрация:
game.Players.PlayerAdded:Connect(function(player) workspace.Data.Player.Value = player end)
‘Data’ представлява папка, поставена във вашето работно пространство, а ‘Player’ представлява контейнер ObjectValue, озаглавен ‘Player’, чиято цел е да запази обекта на плейъра.
Но този код не е единствената ви възможност. Чувствайте се свободни да го наименувате или да го модифицирате според вашите предпочитания или да поставите обекта на играча, както искате.
Този скрипт се изпълнява, след като играч влезе в игра. В случай на игра за един играч, сървърът има само един играч. Можете обаче да модифицирате кода, така че да следвате други играчи по какъвто начин искате.
За да достигнете до свойствата на плейъра, заедно с неговата позиция, ето как би изглеждал вашият обикновен скрипт:
local player = Workspace.Data.Player.Value - Получава обект на играч и го съхранява в променливата ‘player’
local var = player.Character.UpperTorso.Position - Получава вектор3 позиция
pokemon go gen 2 специални предмети
Какво ще кажете за достигане до отделни координати?
Можете да получите достъп до координатите X, Y, Z по този начин:
local varX = player.Character.UpperTorso.Position.X local varY = player.Character.UpperTorso.Position.Y local varZ = player.Character.UpperTorso.Position.Z
Тук можете да използвате UpperTorso за представяне на R15 хуманоиди. В резултат на това той може да не свърши работа за модели на Humanoid, различни от R15.
Мога ли да избера други части на тялото, които да проследявам?
Частите на тялото, които можете да следвате, не са запазени само за UpperTorso. Ето как да получите достъп до допълнителни:
- Използвайте Developer Studio, за да отворите играта си.
- Докато играта е отворена, изберете StarterPlayer.
- Отидете на HumanoidDefaultBodyParts (намерете го с помощта на изгледа на Explorer).
- Това ще изведе списък с части от тялото, които позволяват проследяване.
(Кредити: Дерик Бушар - https://gamedev.stackexchange.com/users/138624/derrick-bouchard ).
Можете ли да използвате координати, за да се телепортирате някъде?
След като разбрахте как да разкривате координати в Roblox, ще искате да знаете дали има някакви въображаеми дейности, за които можете да използвате тези знания. Например можете да улесните телепортацията, ако сте извлекли местоположението на курсора. Ето един лесен начин да го направите:
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))
(Кредити: често - https://www.roblox.com/users/234079075/profile ).
Как обикновено се извършва телепортацията в Roblox?
Телепортацията е една от най-полезните функции в Roblox. Позволява на играчите да се движат бързо около големи карти и по този начин дават възможност за много повече взаимодействие.
Изпълнението му правилно обаче може да бъде сложно, особено ако сте начинаещ в скриптове. Един от най-често срещаните проблеми, които могат да възникнат при телепортиране, е счупване на модела. Например, ако сте използвали следния скрипт, бихте отделили главата от торса:
game.Workspace.Player.Torso.Position = Vector3.new(0, 50, 0)
Вместо това трябва да използвате свойството CFframe и типа данни CFframe. Ето как да го направите и правилно да телепортирате плейър:
game.Workspace.Player.HumanoidRootPart.CFrame = CFrame.new(Vector3.new(0, 50, 0))
Възможно ли е да се телепортират всички играчи?
Можете да телепортирате всички играчи на карта. Трябва обаче да внимавате с целевите позиции, за да запазите торсите на играчите непокътнати. Ето как би изглеждал кодът:
1. target = CFrame.new(0, 50, 0) --could be near a brick or in a new area 2. for i, player in ipairs(game.Players:GetChildren()) do 3. --Make sure the character exists and its HumanoidRootPart exists 4. if player.Character and player.Character:FindFirstChild('HumanoidRootPart') then 5. --add an offset of 5 for each character 6. player.Character.HumanoidRootPart.CFrame = target + Vector3.new(0, i * 5, 0) 7. end 8. end
Много работа води до много забавления
Цялото кодиране, което отива за извършване на действия като получаване на координати и телепортация, може да ви накара да мислите, че Roblox не си струва труда. Кодирането обаче ви позволява да организирате отличителните си игри и реалности. Това не само е изключително полезно в дългосрочен план, но може да се превърне и във вашата развлекателна дейност.
Пробвали ли сте си сили в кодирането в Roblox? Как мина? Уведомете ни в раздела за коментари по-долу?
samsung tv изключи демонстрационния режим