pa1nx9

Free Roblox Script Build It | Base Cloner | Open Sourced

Nov 7th, 2021
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.79 KB | None | 0 0
  1. local Players = game:GetService("Players")
  2. local ReplicatedStorage = game:GetService("ReplicatedStorage")
  3.  
  4. local build_event = ReplicatedStorage.Remotes.BuildEvent
  5. local fire = build_event.FireServer
  6.  
  7. local player = Players.LocalPlayer
  8.  
  9. local function Has(_parent, ...)
  10. for _, v in next, {...} do
  11. if not _parent:FindFirstChild(v) then
  12. return false
  13. end
  14. end
  15.  
  16. return true
  17. end
  18.  
  19. local slots = {}; do
  20. for _, slot in next, workspace.BuildingZone:GetChildren() do
  21. if Has(slot, "Creator", "Slot") then
  22. local slot_number = slot.Name:gsub("Grid", "")
  23. slots[tonumber(slot_number)] = slot
  24. end
  25. end
  26. end
  27.  
  28. local function GetSlot(_player)
  29. if not _player or not Players[_player] then
  30. return nil
  31. end
  32.  
  33. warn(Players[_player].PlotNumber.Value)
  34.  
  35. return slots[Players[_player].PlotNumber.Value]
  36. end
  37.  
  38. local function GetBlocks(_slot)
  39. local blocks = {}
  40.  
  41. if not _slot then
  42. return {}
  43. end
  44.  
  45. for _, block in next, _slot:GetChildren() do
  46. if Has(block, "Part") then
  47. blocks[#blocks + 1] = block
  48. end
  49. end
  50.  
  51. return blocks
  52. end
  53.  
  54. function CloneBase(_player)
  55. local slot = GetSlot(_player)
  56.  
  57. if not slot then
  58. return
  59. end
  60.  
  61. local blocks, player_plate, my_plate = GetBlocks(slot), slot.Plate, GetSlot(player.Name).Plate
  62.  
  63. for _, block in next, blocks do
  64. fire(build_event,
  65. "VeryEpicName",
  66. block.Part.CFrame - player_plate.Position + my_plate.Position,
  67. block.SelectedBlock.Value,
  68. block.SelectedColor.Value,
  69. block.SelectedMaterial.Value,
  70. block.SelectedTransparency.Value,
  71. block.SelectedEffect.Value
  72. )
  73. end
  74. end
  75.  
  76. CloneBase("name_here")
Add Comment
Please, Sign In to add comment