Перейти к содержимому
Работает

Universal Telekinesis

CLclarkdevlinorg797 просмотровUniversal25 июл. 2026 г.
Поделиться
Universal Telekinesis

Код скрипта

Lua
local Plrs = game:GetService("Players")
local UIS = game:GetService("UserInputService")
local RS = game:GetService("RunService")

local LP = Plrs.LocalPlayer
local Mouse = LP:GetMouse()
local Cam = workspace.CurrentCamera

-- main config
local REACH = 200 
local FORCE = 150    
local START_DIST = 15 

-- keybinds
local KEY_OUT = Enum.KeyCode.N  -- push object away
local KEY_IN = Enum.KeyCode.M   -- pull object closer
local SPEED = 0.5               -- distance adjustment speed

-- visual customization
local FILL_CLR = Color3.fromRGB(0, 255, 150) 
local LINE_CLR = Color3.fromRGB(255, 255, 255) 

local active = false
local part = nil
local bPos = nil
local bGyro = nil
local hl = nil
local dist = START_DIST

local function getRoot()
    return LP.Character and LP.Character:FindFirstChild("HumanoidRootPart")
end

local function getTarget()
    local t = Mouse.Target
    if not t then return nil end
    if LP.Character and t:IsDescendantOf(LP.Character) then return nil end
    if not t.Anchored then return t end
    return nil
end

local function drop()
    active = false
    if bPos then bPos:Destroy() end
    if bGyro then bGyro:Destroy() end
    if hl then hl:Destroy() end
    part = nil
    hl = nil
end

local function grab()
    local root = getRoot()
    local t = getTarget()
    if not root or not t then return end
    
    part = t
    active = true
    
    dist = (part.Position - root.Position).Magnitude
    if dist > REACH then dist = REACH end
    if dist < 5 then dist = START_DIST end
    
    bPos = Instance.new("BodyPosition")
    bPos.MaxForce = Vector3.new(1e5, 1e5, 1e5)
    bPos.P = 10000
    bPos.D = 500
    bPos.Position = part.Position
    bPos.Parent = part
    
    bGyro = Instance.new("BodyGyro")
    bGyro.MaxTorque = Vector3.new(1e5, 1e5, 1e5)
    bGyro.P = 10000
    bGyro.CFrame = part.CFrame
    bGyro.Parent = part

    hl = Instance.new("Highlight")
    hl.Name = "G_HL"
    hl.FillColor = FILL_CLR
    hl.FillTransparency = 0.6
    hl.OutlineColor = LINE_CLR
    hl.OutlineTransparency = 0
    hl.Adornee = part
    hl.Parent = part
end

local function fling()
    if not active or not part then return end
    local v = Cam.CFrame.LookVector * FORCE
    local p = part
    drop() 
    p.Velocity = v
end

UIS.InputBegan:Connect(function(input, gpe)
    if gpe then return end
    if input.KeyCode == Enum.KeyCode.E then
        if active then drop() else grab() end
    elseif input.UserInputType == Enum.UserInputType.MouseButton1 and active then
        fling()
    end
end)

RS.RenderStepped:Connect(function()
    local root = getRoot()
    if active and part and bPos and bGyro and root then
        if UIS:IsKeyDown(KEY_OUT) then
            dist = math.clamp(dist + SPEED, 5, REACH)
        elseif UIS:IsKeyDown(KEY_IN) then
            dist = math.clamp(dist - SPEED, 5, REACH)
        end
        bPos.Position = root.Position + (Cam.CFrame.LookVector * dist)
        bGyro.CFrame = Cam.CFrame
    elseif active and not root then
        drop()
    end
end)
print("loaded, have fun")

Описание

really fun and simple telekinesis script with no ui! you can throw bricks at people now! ## keybinds 1. E - grab/drop, 2. M1 (Click) - throw, 3. N/M - push/pull (by default) ## have fun lol

Комментарии (0)

Войдите, чтобы комментировать

  • Будьте первым, кто прокомментирует.

Часто задаваемые вопросы

Как использовать скрипт Universal Telekinesis?
Скопируйте код скрипта выше, зайдите в Universal на Roblox, затем вставьте и выполните код в экзекьюторе. Функции активируются сразу после запуска.
Universal Telekinesis ещё работает?
Да — Universal Telekinesis отмечен как рабочий (обновлено 17 сент. 2026 г.). Если он сломается после обновления Roblox, зайдите позже за обновлённой версией.
Какой экзекьютор работает с Universal Telekinesis?
Этот скрипт работает с большинством популярных экзекьюторов Roblox. Посетите нашу страницу экзекьюторов, чтобы найти подходящий для вашего устройства.