i am a newbie at scripting but i know how to script.I am making a Tycoon Building game I have a problem where i want to make the model follow my mouse cursor once i clicked the GUI button, and i want it continuously follow the cursor once i click it
local player = game.Players.LocalPlayer local mouse = player:GetMouse() local function round (n) return math.floor(n + 0.5) end if game.StarterGui.ScreenGui.BuildModeFrame.BuildSelections.IronWall then game:GetService("UserInputService").InputChanged:Connect(function(input, gameProcessed) game.Workspace.walls.ironwall:SetPrimaryPartCFrame(CFrame.new(round(mouse.Hit.Position.X),round(mouse.Hit.Position.Y),round(mouse.Hit.Position.Z)) + Vector3.new(0,5,0)) end) end
some parts of this code isn't necessarily needed to be there. Please help and also if you can make this script more shorter that would help a lot , thank you in advance
I haven't looked into this myself, but with Miners Haven opensource, I'm sure it's there somewhere. Also worth checking out: https://scriptinghelpers.org/blog/creating-a-furniture-placement-system
For the actual question though, the way I always handle these things is I have a function that I BindToRenderStep with RunService.
In the function, I'll have everything that needs to run every frame such as:
if isPlacingObject then setObjectPosition() end
Then when the gui is clicked, I set isPlacingObject to true, and clone the object and the RunService function will automatically set it for you