So the part gets created on the client after that I fire a remote event with the Cframe and size but the part ends up super small and not the right cframe here's the script on the client
local UIS = game:GetService("UserInputService") local RunService = game:GetService("RunService") local Player = game.Players.LocalPlayer local Character = Player.Character or Player.CharacterAdded:Wait() local Mouse = Player:GetMouse() local Counter = 1 local Grid = 4 local Toggle = false local PointA = script.Point:Clone() local PointB = script.Point:Clone() local PosA local PosB local LRA function Round(Num, To) return math.floor(Num / To + 0.5) * To end RunService.RenderStepped:Connect(function() if Toggle then if Counter == 1 then PointA.Parent = workspace PosA = Vector3.new(Round(Mouse.Hit.p.X, Grid), .5, Round(Mouse.Hit.p.Z, Grid)) PointA.CFrame = CFrame.new(PosA) + Vector3.new(0,5,0) PointA.Orientation = Vector3.new(0, 90, -90) elseif Counter == 2 then PointB.Parent = workspace PosB = Vector3.new(Round(Mouse.Hit.p.X, Grid), .5, Round(Mouse.Hit.p.Z, Grid)) PointB.CFrame = CFrame.new(PosB) + Vector3.new(0,5,0) PointB.Orientation = Vector3.new(0, 90, -90) if LRA then LRA:Destroy() LRA = nil end local Mag = (PosA - PosB).magnitude local ray = Ray.new(PosA, (PosA - PosB).unit * Mag) local part, position = workspace:FindPartOnRay(ray, workspace.Baseplate, false, true) local beam = Instance.new("Part", workspace) beam.BrickColor = BrickColor.new("Bright yellow") beam.FormFactor = "Custom" beam.Material = "Neon" beam.Transparency = 0.25 beam.Anchored = true beam.Locked = true beam.CanCollide = false local distance = (PosA - position).magnitude beam.Size = Vector3.new(0.3, 10, distance) beam.CFrame = CFrame.new(PosA, position) * CFrame.new(0, 0, distance / 2) + Vector3.new(0,5,0) LRA = beam end end end) Mouse.Button1Down:Connect(function() if Toggle then if Counter == 1 then Counter = 2 elseif Counter == 2 then Counter = 1 local Mag = (PosA - PosB).magnitude local ray = Ray.new(PosA, (PosA - PosB).unit * Mag) local part, position = workspace:FindPartOnRay(ray, workspace.Baseplate, false, true) local beam = Instance.new("Part", workspace) beam.BrickColor = BrickColor.new("Medium stone grey") beam.FormFactor = "Custom" beam.Material = Enum.Material.SmoothPlastic beam.Transparency = 0 beam.Anchored = true beam.Locked = false beam.CanCollide = true local distance = (PosA - position).magnitude beam.Size = Vector3.new(0.3, 10, distance) + Vector3.new(0,0,.25) beam.CFrame = CFrame.new(PosA, position) * CFrame.new(0, 0, distance / 2) + Vector3.new(0,5,0) wait(1) game.ReplicatedStorage.bulid:FireServer(beam.CFrame, beam.Size) LRA:Destroy() PointA:Destroy() PointB:Destroy() PointA = script.Point:Clone() PointB = script.Point:Clone() end end end) script.Parent.MouseButton1Click:Connect(function() Toggle = true end) UIS.InputBegan:Connect(function(Input) if Input.KeyCode == Enum.KeyCode.X then script.Parent.Parent.Parent:TweenPosition(UDim2.new(.5,0,.5,0), Enum.EasingDirection.InOut, Enum.EasingStyle.Quart, .1) script.Parent.Parent.Parent.Parent.Parent.Button.Visible = true LRA:Destroy() PointA:Destroy() PointB:Destroy() PointA = script.Point:Clone() PointB = script.Point:Clone() Toggle = false Counter = 1 end end)
server code:
game.ReplicatedStorage.bulid.OnServerEvent:Connect(function(beamclonep,beamclonepc) local ab = Instance.new("Part") ab.Anchored = true ab.BrickColor = BrickColor.new("Medium stone grey") ab.FormFactor = "Custom" ab.Material = Enum.Material.SmoothPlastic ab.Transparency = 0 ab.Anchored = true ab.Locked = false ab.CanCollide = true ab.Size = Vector3.new(beamclonepc) ab.CFrame = CFrame.new(beamclonep) ab.Name = "servrereswersare" ab.Parent = game.Workspace end)
How do I fix this?