#Plot System

1 messages · Page 1 of 1 (latest)

charred siren
#

Placement Server

local Placement = require(game.ReplicatedStorage.Placement)
local remote = game.ReplicatedStorage:WaitForChild("InvokePlacement")
local furnitureFolder = game.ReplicatedStorage:WaitForChild("Furniture")

local activePlacements = {}

remote.OnServerEvent:Connect(function(player, func, canvasPart, modelName, cf)
    if func == "Place" then
        if not activePlacements[player] then
            activePlacements[player] = Placement.new(canvasPart)
        end

        local model = furnitureFolder:FindFirstChild(modelName)
        if model then
            local clone = model:Clone()
            clone:SetPrimaryPartCFrame(cf)
            clone.Parent = activePlacements[player].CanvasObjects
        end
        
        local saveEvent = game.ReplicatedStorage.Events.SaveFurniture
        saveEvent:Fire(player, modelName, cf)
    end
end)```
Placement Client - StarterPlayerScripts
```lua
local player = game.Players.LocalPlayer
local mouse = player:GetMouse()
local Placement = require(game.ReplicatedStorage:WaitForChild("Placement"))

local canvas = workspace:WaitForChild("GarageFloor", 5) 

if not canvas then
    warn("ERROR: Could not find a part named 'GarageFloor' in Workspace!")
    return
end

local deskModel = game.ReplicatedStorage.Furniture:WaitForChild("Desk", 5)

if not deskModel then
    warn("ERROR: Could not find a model named 'Desk' inside ReplicatedStorage.Furniture!")
    return
end

local placement = Placement.new(canvas)
local previewModel = deskModel:Clone()
previewModel.Parent = workspace

for _, part in pairs(previewModel:GetDescendants()) do
    if part:IsA("BasePart") then part.CanCollide = false end
end

game:GetService("RunService").RenderStepped:Connect(function()
    local cf = placement:CalcPlacementCFrame(previewModel, mouse.Hit.p, 0)
    previewModel:SetPrimaryPartCFrame(cf)
end)

mouse.Button1Down:Connect(function()
    placement:Place(canvas, "Desk", previewModel.PrimaryPart.CFrame)
end)```
frail fractal
charred siren
frail fractal
charred siren
frail fractal
charred siren
charred siren
frail fractal
#

A plot and a placement system are 2 different things

#

Also never use object oriented programming without any clue that's "pro" stuff

#

Have you tried this tutorial before?https://youtu.be/T-ZHbbtZelU?si=JAaKrlS7QLGJ-Tcj / copy paste is not the way for learning

Explaining how to make a plot system in Roblox, just like every popular game!

Plot System ➜ https://create.roblox.com/store/asset/116182053991494/Easy-Plot-System

MAIN CHANNEL ➜ https://www.youtube.com/@supdoggy_
DISCORD SERVER ➜ discord.gg/supcord

SUP STUDIOS ➜ https://www.roblox.com/groups/11607234/SUP-Studios#!/
Roblox profile ➜ ...

▶ Play video
charred siren
still valleyBOT
#

studio** You are now Level 17! **studio

charred siren
#

like grid placement

frail fractal
charred siren
# frail fractal Wdym grid placement?
#

check this

frail fractal