Como fazer um objeto perseguir o player no Roblox Studio (:MoveTo)


Nesse post vou mostrar como fazer um personagem perseguir o player através do mapa no Roblox Studio. Link do Game: https://www.roblox.com/games/6515406177/DESTRUA-O-INIMIGO-COVIRUS
1 - Part ➔ Block: Criando um portal onde os inimigos vão nascer Esse portal foi criado utilizando a ferramenta Part ➔ Sphere. No portal inserimos ParticleEmitter e efeito de Transparência 2 - Part ➔ Sphere: Criando um inimigo utilizando a Sphere O Inimigo foi criado utilizando a ferramenta Part ➔ Sphere, uma bola gigante. Definimos a cor, mudamos o "Material" para "Neon" que gera o efeito de brilho. Para o script de perseguição funcionar você precisa: ➔ Transformar a Sphere em "Model" através do agrupamento "CTRL + G" ➔ Inserir o objeto "Humanoide" ➔ Inserir o "Surface" no Objeto 3 - Script de Perseguição: Script que faz o Inimigo perseguir o Player Movendo objetos
local objeto = script.Parent
while (true) do
	wait(0.1)
	objeto.Position = objeto.Position + Vector3.new	(0,0,1)
end
Como fazer um objeto perseguir o player
  • O Bloco tem que ter HumanoidRootPart
  • Tem que transformar em Surface
local distanciamax = 200 -- 20 metros para o NPC perSeguir o jogador
local distanciamin = 20 -- 5 de distancia minima para o bot parar
function jogador()
	repeat wait() until game.Players.NumPlayers >= 1 -- esperar até que a quantidade de jogadores for maior que 1 ou igual
	local NPC = script.Parent
	local NPCHumanoidRoot = NPC.HumanoidRootPart
	local NPCHumanoid = NPC.Humanoid
	for i,v in pairs(game.Players:GetPlayers()) do -- Pegar a lista dos jogadores
		repeat wait() until v.Character -- Aguardar o character do player			
		-- perseguição
		if (v.Character.HumanoidRootPart.Position - NPCHumanoidRoot.Position).Magnitude <= distanciamax and (v.Character.HumanoidRootPart.Position - NPCHumanoidRoot.Position).Magnitude >= distanciamin then
			NPCHumanoid:MoveTo(v.Character.HumanoidRootPart.Position - Vector3.new(0,distanciamin,0))
			if v.Character.Humanoid.Jump == true then -- se o jogador pular o npc também irá pular
				NPCHumanoid.Jump = true
			end			
			NPCHumanoidRoot.Touched:Connect(function(hit) -- dar dano no jogador
				wait(1)
				if hit.Parent:FindFirstChild("Humanoid") then
					wait(1)
					hit.Parent:FindFirstChild("Humanoid"):TakeDamage(0.05)
				end
			end)
		end				
	end
end
while wait() do
	jogador()
end
Outras referências Vídeo 1 https://www.youtube.com/watch?v=M_JCH4ibqMo Vídeo 2 https://www.youtube.com/watch?v=KldFdpHTUEk Vídeo 3 https://www.youtube.com/watch?v=NuRUbwsSRY4 Vídeo 4 https://www.youtube.com/watch?v=fxpJjF0frQI Vídeo 5 https://www.youtube.com/watch?v=C80p_WXSoB0 Vídeo 6 https://www.youtube.com/watch?v=IQBEH9OMBm4

Fabio Bmed nas Redes Sociais

Fabio Bmed no Youtube Fabio Bmed no TikTok Fabio Bmed no Facebook Fabio Bmed no Instagram Fabio Bmed na Twitch Fabio Bmed no Twitter

Loading