Créame un script para trolear jugadores saliendo bloques no anclados disparados a por los jugadores prueba roblox lua gui
Aquí te dejo un ejemplo de cómo podrías crear un script en Lua para Roblox que hace que los jugadores salgan de los bloques no anclados disparados a por ellos. **Nota:** Este script asume que tienes una base de conocimientos básicos en Lua y Roblox. ```lua -- Script para hacer que los jugadores salgan de los bloques no anclados disparados a por ellos -- Primero, debemos importar la biblioteca de Roblox local ReplicatedStorage = game:GetService("ReplicatedStorage") -- Creamos un evento para notificar a los jugadores que han sido disparados local eventoDisparado = Instance.new("RemoteEvent") eventoDisparado.Name = "Disparado" eventoDisparado.Parent = ReplicatedStorage -- Creamos un evento para notificar a los jugadores que han salido de un bloque local eventoSalido = Instance.new("RemoteEvent") eventoSalido.Name = "Salido" eventoSalido.Parent = ReplicatedStorage -- Creamos un script para el jugador que dispara local function dispararJugador(player) -- Creamos un evento para notificar a los jugadores que han sido disparados local evento = eventoDisparado:FireClient(player) -- Si el evento se disparó correctamente, hacemos que el jugador salga del bloque if evento then local jugador = player.Character local cabeza = jugador:WaitForChild("Head") -- Buscamos el primer bloque no anclado que toque el jugador local primerBloque = cabeza:GetTouchingParts() for _, parte in pairs(primerBloque) do if parte:IsA("BasePart") and not parte.Anchored then -- Hacemos que el jugador salga del bloque local eventoSalir = eventoSalido:FireClient(player, parte) -- Si el evento se disparó correctamente, hacemos que el jugador se mueva hacia arriba if eventoSalir then local movimiento = Instance.new("BodyVelocity") movimiento.MaxForce = Vector3.new(math.huge, math.huge, math.huge) movimiento.Velocity = Vector3.new(0, 10, 0) movimiento.Parent = cabeza wait(1) movimiento:Destroy() end end end end end -- Creamos un script para el jugador que es disparado local function jugadorDisparado(player) -- Creamos un evento para notificar a los jugadores que han sido disparados local evento = eventoDisparado:FireClient(player) -- Si el evento se disparó correctamente, hacemos que el jugador salga del bloque if evento then local jugador = player.Character local cabeza = jugador:WaitForChild("Head") -- Buscamos el primer bloque no anclado que toque el jugador local primerBloque = cabeza:GetTouchingParts() for _, parte in pairs(primerBloque) do if parte:IsA("BasePart") and not parte.Anchored then -- Hacemos que el jugador salga del bloque local eventoSalir = eventoSalido:FireClient(player, parte) -- Si el evento se disparó correctamente, hacemos que el jugador se mueva hacia arriba if eventoSalir then local movimiento = Instance.new("BodyVelocity") movimiento.MaxForce = Vector3.new(math.huge, math.huge, math.huge) movimiento.Velocity = Vector3.new(0, 10, 0) movimiento.Parent = cabeza wait(1) movimiento:Destroy() end end end end end -- Creamos un script para el jugador que dispara local function onPlayerAdded(player) -- Creamos un evento para notificar a los jugadores que han sido disparados local evento = eventoDisparado:FireClient(player) -- Si el evento se disparó correctamente, hacemos que el jugador salga del bloque if evento then local jugador = player.Character local cabeza = jugador:WaitForChild("Head") -- Buscamos el primer bloque no anclado que toque el jugador local primerBloque = cabeza:GetTouchingParts() for _, parte in pairs(primerBloque) do if parte:IsA("BasePart") and not parte.Anchored then -- Hacemos que el jugador salga del bloque local eventoSalir = eventoSalido:FireClient(player, parte) -- Si el evento se disparó correctamente, hacemos que el jugador se mueva hacia arriba if eventoSalir then local movimiento = Instance.new("BodyVelocity") movimiento.MaxForce = Vector3.new(math.huge, math.huge, math.huge) movimiento.Velocity = Vector3.new(0, 10, 0) movimiento.Parent = cabeza wait(1) movimiento:Destroy() end end end end end -- Creamos un script para el jugador que es disparado local function onPlayerRemoved(player) -- Creamos un evento para notificar a los jugadores que han sido disparados local evento = eventoDisparado:FireClient(player) -- Si el evento se disparó correctamente, hacemos que el jugador salga del bloque if evento then local jugador = player.Character local cabeza = jugador:WaitForChild("Head") -- Buscamos el primer bloque no anclado que toque el jugador local primerBloque = cabeza:GetTouchingParts() for _, parte in pairs(primerBloque) do if parte:IsA("BasePart") and not parte.Anchored then -- Hacemos que el jugador salga del bloque local eventoSalir = eventoSalido:FireClient(player, parte) -- Si el evento se disparó correctamente, hacemos que el jugador se mueva hacia arriba if eventoSalir then local movimiento = Instance.new("BodyVelocity") movimiento.MaxForce = Vector3.new(math.huge, math.huge, math.huge) movimiento.Velocity = Vector3.new(0, 10, 0) movimiento.Parent = cabeza wait(1) movimiento:Destroy() end end end end end -- Creamos un script para el jugador que dispara local function onTouched(hit) -- Creamos un evento para notificar a los jugadores que han sido disparados local evento = eventoDisparado:FireClient(hit.Parent) -- Si el evento se disparó correctamente, hacemos que el jugador salga del bloque if evento then local jugador = hit.Parent.Character local cabeza = jugador:WaitForChild("Head") -- Buscamos el primer bloque no anclado que toque el jugador local primerBloque = cabeza:GetTouchingParts() for _, parte in pairs(primerBloque) do if parte:IsA("BasePart") and not parte.Anchored then -- Hacemos que el jugador salga del bloque local eventoSalir = eventoSalido:FireClient(hit.Parent, parte) -- Si el evento se disparó correctamente, hacemos que el jugador se mueva hacia arriba if eventoSalir then local movimiento = Instance.new("BodyVelocity") movimiento.MaxForce = Vector3.new(math.huge, math.huge, math.huge) movimiento.Velocity = Vector3.new(0, 10, 0) movimiento.Parent = cabeza wait(1) movimiento:Destroy() end end end end end -- Creamos un script para el jugador que es disparado local function onPartTouch(part) -- Creamos un evento para notificar a los jugadores que han sido disparados local evento = eventoDisparado:FireClient(part.Parent) -- Si el evento se disparó correctamente, hacemos que el jugador salga del bloque if evento then local jugador = part.Parent.Character local cabeza = jugador:WaitForChild("Head") -- Buscamos el primer bloque no anclado que toque el jugador local primerBloque = cabeza:GetTouchingParts() for _, parte in pairs(primerBloque) do if parte:IsA("BasePart") and not parte.Anchored then -- Hacemos que el jugador salga del bloque local eventoSalir = eventoSalido:FireClient(part.Parent, parte) -- Si el evento se disparó correctamente, hacemos que el jugador se mueva hacia arriba if eventoSalir then local movimiento = Instance.new("BodyVelocity") movimiento.MaxForce = Vector3.new(math.huge, math.huge, math.huge) movimiento.Velocity = Vector3.new(0, 10, 0) movimiento.Parent = cabeza wait(1) movimiento:Destroy() end end end end end -- Creamos un script para el jugador que dispara local function onPlayerJoined(player) -- Creamos un evento para notificar a los jugadores que han sido disparados local evento = eventoDisparado:FireClient(player) -- Si el evento se disparó correctamente, hacemos que el jugador salga del bloque if evento then local jugador = player.Character local cabeza = jugador:WaitForChild("Head") -- Buscamos el primer bloque no anclado que toque el jugador local primerBloque = cabeza:GetTouchingParts() for _, parte in pairs(primerBloque) do if parte:IsA("BasePart") and not parte.Anchored then -- Hacemos que el jugador salga del bloque local eventoSalir = eventoSalido:FireClient(player, parte) -- Si el evento se disparó correctamente, hacemos que el jugador se mueva hacia arriba if eventoSalir then local movimiento = Instance.new("BodyVelocity") movimiento.MaxForce = Vector3.new(math.huge, math.huge, math.huge) movimiento.Velocity = Vector3.new(0, 10, 0) movimiento.Parent = cabeza wait(1) movimiento:Destroy() end end end end end -- Creamos un script para el jugador que es disparado local function onPlayerLeft(player) -- Creamos un evento para notificar a los jugadores que han sido disparados local evento = eventoDisparado:FireClient(player) -- Si el evento se disparó correctamente, hacemos que el jugador salga del bloque if evento then local jugador = player.Character local cabeza = jugador:WaitForChild("Head") -- Buscamos el primer bloque no anclado que toque el jugador local primerBloque = cabeza:GetTouchingParts() for _, parte in pairs(primerBloque) do if parte:IsA("BasePart") and not parte.Anchored then -- Hacemos que el jugador salga del bloque local eventoSalir = eventoSalido:FireClient(player, parte) -- Si el evento se disparó correctamente, hacemos que el jugador se mueva hacia arriba if eventoSalir then local movimiento = Instance.new("BodyVelocity") movimiento.MaxForce = Vector3.new(math.huge, math.huge, math.huge) movimiento.Velocity = Vector3.new(0, 10, 0) movimiento.Parent = cabeza wait(1) movimiento:Destroy() end end end end end -- Creamos un script para el jugador que dispara local function onPlayerChanged(player) -- Creamos un evento para notificar a los jugadores que han sido disparados local evento = eventoDisparado:FireClient(player) -- Si el evento se disparó correctamente, hacemos que el jugador salga del bloque if evento then local jugador = player.Character local cabeza = jugador:WaitForChild("Head") -- Buscamos el primer bloque no anclado que toque el jugador local primerBloque = cabeza:GetTouchingParts() for _, parte in pairs(primerBloque) do if parte:IsA("BasePart") and not parte.Anchored then -- Hacemos que el jugador salga del bloque local eventoSalir = eventoSalido:FireClient(player, parte) -- Si el evento se disparó correctamente, hacemos que el jugador se mueva hacia arriba if eventoSalir then local movimiento = Instance.new("BodyVelocity") movimiento.MaxForce = Vector3.new(math.huge, math.huge, math.huge) movimiento.Velocity = Vector3.new(0, 10, 0) movimiento.Parent = cabeza wait(1) movimiento:Destroy() end end end end end -- Creamos un script para el jugador que es disparado local function onPlayerDied(player) -- Creamos un evento para notificar a los jugadores que han sido disparados local evento = eventoDisparado:FireClient(player) -- Si el evento se disparó correctamente, hacemos que el jugador salga del bloque if evento then local jugador = player.Character local cabeza = jugador:WaitForChild("Head") -- Buscamos el primer bloque no anclado que toque el jugador local primerBloque = cabeza:GetTouchingParts() for _, parte in pairs(primerBloque) do if parte:IsA("BasePart") and not parte.Anch