Saber como obter acesso às coordenadas do jogador no Roblox pode ser um processo complicado e obscuro. No entanto, se você encontrar uma maneira de alcançar as coordenadas e manipulá-las, terá uma base sólida para utilizar outras funções criativas do jogo e testar suas habilidades de programação.
Neste artigo, mostraremos como encontrar as coordenadas do jogador no Roblox.
Como você obtém coordenadas no Roblox?
Para encontrar coordenadas de personagens, objetos e lugares, você precisa aprender a fazer scripts no Roblox Studio. Esta plataforma permite que você crie mundos e áreas próprias e os personalize de acordo com sua preferência.
Ao fazer o script, você precisará empregar informações básicas que permitam maximizar o potencial do script de estúdio. Um bom exemplo de tais dados são as coordenadas, ou seja, as posições dos jogadores.
Alcançar a posição de um jogador (lado do servidor) exigirá que você vá para a propriedade do personagem do jogador. (jogador.Caractere). Mas antes disso, você precisa encontrar o objeto do jogador. Você pode fazer isso adquirindo o objeto do jogador no momento em que ele entra no servidor com um script usual em algum lugar do seu espaço de trabalho.
Se o seu jogo apresenta apenas um jogador, você pode colocar o objeto jogador em seu recipiente de objetos. Esse contêiner pode ser acessado sempre que você procurar seu valor em um de seus scripts do lado do servidor.
Ilustrar:
game.Players.PlayerAdded: Connect (function (player) workspace.Data.Player.Value = player end)
‘Dados’ representa uma pasta colocada em seu espaço de trabalho e ‘Player’ representa o contêiner ObjectValue intitulado ‘Player’, cuja finalidade é salvar o objeto player.
Mas este código não é sua única opção. Sinta-se à vontade para nomeá-lo ou modificá-lo de acordo com sua preferência, ou posicionar o objeto jogador como quiser.
Este script é executado assim que um jogador entra no jogo. No caso de um jogo para um jogador, o servidor possui apenas um jogador. No entanto, você pode modificar o código para seguir outros jogadores da maneira que desejar.
Para alcançar as propriedades do player, junto com sua posição, é assim que seu script regular se pareceria:
local player = Workspace.Data.Player.Value - obtém o objeto do player e o armazena na variável ‘player’
local var = player.Character.UpperTorso.Position - Obtém a posição do vetor3
E quanto a alcançar coordenadas individuais?
Você pode acessar as coordenadas X, Y, Z desta forma:
local varX = player.Character.UpperTorso.Position.X local varY = player.Character.UpperTorso.Position.Y local varZ = player.Character.UpperTorso.Position.Z
Aqui, você pode usar UpperTorso para representar humanóides R15. Como resultado, pode não funcionar para outros modelos humanóides além do R15.
Posso escolher outras partes do corpo para rastrear?
As partes do corpo que você pode seguir não são reservadas apenas para UpperTorso. Veja como acessar outros adicionais:
- Use o Developer Studio para abrir seu jogo.
- Enquanto o jogo estiver aberto, selecione StarterPlayer.
- Vá para HumanoidDefaultBodyParts (encontre-o usando a “visualização do Explorer”).
- Isso abrirá uma lista de partes do corpo que permitem o rastreamento.
(Créditos: Derrick Bouchard - //gamedev.stackexchange.com/users/138624/derrick-bouchard).
Você pode usar coordenadas para se teletransportar para algum lugar?
Agora que você descobriu como revelar as coordenadas no Roblox, você vai querer saber se há alguma atividade criativa para a qual você possa usar esse conhecimento. Por exemplo, você pode facilitar o teletransporte se recuperou a localização do seu cursor. Esta é uma maneira simples de fazer isso:
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))
(Créditos: frequentementez - //www.roblox.com/users/234079075/profile).
Como o teletransporte é geralmente executado no Roblox?
O teletransporte é de longe um dos recursos mais úteis do Roblox. Ele permite que os jogadores se movam rapidamente em grandes mapas e, assim, possibilita muito mais interação.
No entanto, executá-lo corretamente pode ser complicado, especialmente se você for novo em scripts. Um dos problemas mais comuns que podem ocorrer durante o teletransporte é a quebra do modelo. Por exemplo, se você usasse o seguinte script, separaria a cabeça do torso:
game.Workspace.Player.Torso.Position = Vector3.new (0, 50, 0)
Em vez disso, você precisa usar a propriedade CFframe e o tipo de dados CFframe. É assim que se faz e se teletransporta corretamente um jogador:
game.Workspace.Player.HumanoidRootPart.CFrame = CFrame.new (Vector3.new (0, 50, 0))
É possível teletransportar todos os jogadores?
Você pode teletransportar todos os jogadores em um mapa. No entanto, você precisa ter cuidado com as posições do alvo para manter os torsos dos jogadores intactos. Esta é a aparência do código:
1. target = CFrame.new (0, 50, 0) - pode estar perto de um tijolo ou em uma nova área 2. para i, jogador em ipairs (game.Players: GetChildren ()) faça 3. - Certifique-se de o personagem existe e seu HumanoidRootPart existe 4. se player.Character e player.Character: FindFirstChild ("HumanoidRootPart") então 5. --adicione um deslocamento de 5 para cada personagem 6. player.Character.HumanoidRootPart.CFrame = target + Vector3 .new (0, i * 5, 0) 7. fim 8. fim
Muito trabalho leva a muita diversão
Toda a codificação necessária para realizar ações, como obter coordenadas e teletransporte, pode fazer você pensar que Roblox não vale a pena. No entanto, a codificação permite que você orquestre seus jogos e realidades distintas. Isso não só é extremamente gratificante no longo prazo, mas também pode se transformar em uma atividade de lazer ideal.
Você já experimentou codificação no Roblox? Como foi? Deixe-nos saber na seção de comentários abaixo?