コンテンツへスキップ
動作中

Universal Telekinesis

CLclarkdevlinorg797 閲覧数Universal2026年7月25日
共有
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スクリプトはどう使いますか?
上のスクリプトコードをコピーし、RobloxでUniversalに参加して、エグゼキューターに貼り付けて実行してください。スクリプトが動くとすぐに機能が有効になります。
Universal Telekinesisはまだ動作しますか?
はい。Universal Telekinesisは現在「動作中」とマークされています(最終更新: 2026年9月17日)。Robloxのアップデートで動かなくなった場合は、更新版をお待ちください。
Universal Telekinesisに対応するエグゼキューターは?
このスクリプトはほとんどの人気Robloxエグゼキューターで動作します。お使いのデバイス向けの信頼できる無料または有料エグゼキューターを見つけるには、エグゼキューターページをご覧ください。