#replicating to server

8 messages · Page 1 of 1 (latest)

fringe tinsel
#

get to passing the arguments through a remote event then

#

use the ... parameter

#

cast it to a table so you can then access the parameters

narrow zinc
narrow zinc
#

local

local char = script.Parent
local camera = game.Workspace.CurrentCamera

local Event = game.ReplicatedStorage:WaitForChild('Look')
local char = script.Parent
local camera = game.Workspace.CurrentCamera

local Event = game.ReplicatedStorage:WaitForChild('Look')

local rShoulder = char.Torso['Right Shoulder']
local rShoulderOrigin = rShoulder.C0

local lShoulder = char.Torso['Left Shoulder']
local lShoulderOrigin = lShoulder.C0

local neck = char.Torso.Neck
local neckOrigin = neck.C0

local rootJoint = char.HumanoidRootPart['Root Hip']
--[[ local function look()
     game:GetService("RunService").Stepped:Connect(function(dt)
         local camDir = char.Torso.CFrame:ToObjectSpace(camera.CFrame).LookVector
         local headDir = char.Torso.CFrame:ToObjectSpace(char.Head.CFrame).LookVector
         local rArmDir = char.Torso.CFrame:ToObjectSpace(char["Right Arm"].CFrame).LookVector 

        rootJoint.Transform = CFrame.Angles(0,0,-math.pi/4)

        neck.C0 = neckOrigin * CFrame.Angles(0,0, -math.asin(headDir.X)) * CFrame.Angles(-math.asin(camDir.Y), 0, 0) * CFrame.Angles(0,0,math.asin(headDir.X))

        local _, _, z = rootJoint.Transform:ToOrientation()
        rShoulder.C0 = rShoulderOrigin * CFrame.Angles(0,-z,0)* CFrame.Angles(0,0,math.asin(camDir.Y))


        lShoulder.C0 = lShoulderOrigin * CFrame.Angles(0,-z,0) * CFrame.Angles(0,0,-math.asin(camDir.Y))
    end)
end ]]

Event:FireServer(neck, rShoulder, lShoulder)
#

server

#
local Event = game.ReplicatedStorage:WaitForChild('Look')
local camera = game.Workspace.CurrentCamera

local function look(player, neck, rShoulder, lShoulder)
    local rootJoint = player.character.HumanoidRootPart['Root Hip']
    local neckOrigin = neck.C0
    local rShoulderOrigin = rShoulder.C0
    local lShoulderOrigin = lShoulder.C0
        game:GetService("RunService").Stepped:Connect(function(dt)
            local camDir = player.character.Torso.CFrame:ToObjectSpace(camera.CFrame).LookVector
            local headDir = player.character.Torso.CFrame:ToObjectSpace(player.character.Head.CFrame).LookVector
            local rArmDir = player.character.Torso.CFrame:ToObjectSpace(player.character["Right Arm"].CFrame).LookVector

            --[[ rootJoint.Transform = CFrame.Angles(0,0,-math.pi/4) ]]

            neck.C0 = neckOrigin * CFrame.Angles(0,0, -math.asin(headDir.X)) * CFrame.Angles(-math.asin(camDir.Y), 0, 0) * CFrame.Angles(0,0,math.asin(headDir.X))
        
            local _, _, z = rootJoint.Transform:ToOrientation()
            rShoulder.C0 = rShoulderOrigin * CFrame.Angles(0,-z,0)* CFrame.Angles(0,0,math.asin(camDir.Y))


            lShoulder.C0 = lShoulderOrigin * CFrame.Angles(0,-z,0) * CFrame.Angles(0,0,-math.asin(camDir.Y))
        end)
    end
Event.OnServerEvent:Connect(look)