Here's A Video Of What I Have:
https://storage.cloudconvert.com/tasks/f75a7de7-7139-4137-98a1-40c8141d75fa/2022-07-25_15-29-51%20%281%29.mp4?AWSAccessKeyId=cloudconvert-production&Expires=1658873794&Signature=zJ3rxuayzjNRWn6o6p7hSlTSUMg%3D&response-content-disposition=inline%3B%20filename%3D%222022-07-25_15-29-51%20%281%29.mp4%22&response-content-type=video%2Fmp4
And What I Need Is To Put A Part Where The Blue Spheres Hit With The Hits Correct Orientation.
wait() --// Services: local ReplicatedStorage = game:GetService("ReplicatedStorage") local TweenService = game:GetService("TweenService") local Players = game:GetService("Players") local Debris = game:GetService("Debris") --// Character: local Character = script.Parent local PrimaryPart = Character.PrimaryPart local Humanoid = Character:WaitForChild("Humanoid") --// Variables: local GibModels = ReplicatedStorage:WaitForChild("Gib Models") local PartGibs = GibModels:WaitForChild("Parts") local HeadGibs = GibModels:WaitForChild("Head") local ArmsGibs = GibModels:WaitForChild("Arms") --// Functions: local function StartBleed(Part) if Character:FindFirstChild(Part) then if Character[Part]:FindFirstChild("Stage") then --// Variables: local Limb = Character[Part] local Stage = Limb["Stage"] local Attach = Stage["Spawn"] local DropAmount = 5 --math.random(18,22) for count = 1, DropAmount do if Character[Part]:FindFirstChild("Stage") then --// Creating Dropplet: local Dropplet = PartGibs:WaitForChild("Dropplet"):Clone() if game.Workspace:FindFirstChild("Debris") then Dropplet.Parent = game.Workspace["Debris"] else Dropplet.Parent = game.Workspace end Dropplet.CFrame = Attach.WorldCFrame --// Creating Force: local ForceVector = Instance.new("VectorForce",Dropplet) ForceVector.Attachment0 = Dropplet["A0"] local MaxForce = 5 local Offset = Vector3.new(math.random(-1,1)*MaxForce,0,math.random(-1,1)*MaxForce) ForceVector.Force = Offset Debris:AddItem(ForceVector) Debris:AddItem(Dropplet,18) Dropplet.Touched:Connect(function(Model) --Debris:AddItem(Dropplet,0.5) --// Variables: local NAME = Model.Name --// IgnoreList: if NAME == "Handle" or NAME == "Puddle" or NAME == "Dropplet" or NAME == "Stage" or NAME == "Inside" then return end if Model.Parent:FindFirstChild("Humanoid") or Model.Parent.Parent:FindFirstChild("Humanoid") then return end if Model.Parent:FindFirstChild("Handle") or Model.Parent.Parent:FindFirstChild("Handle") then return end if Model.CanCollide == false or Model.Transparency == 1 or Model.Transparency == 0.99 then return end --// Dropplet: Dropplet.CanCollide = false Dropplet.Anchored = true --// Size: local Size = math.random(35,60)/100 --// Creating Puddles: local BloodPuddle = PartGibs:WaitForChild("Puddle"):Clone() if game.Workspace:FindFirstChild("Debris") then BloodPuddle.Parent = game.Workspace["Debris"] else BloodPuddle.Parent = game.Workspace end BloodPuddle.Size = Vector3.new(Size,0.01,Size) BloodPuddle.Anchored = true --// Debug Dropplet.Color = Color3.new(0.309804, 0.411765, 1) Dropplet.Transparency = 0 end) end wait(0.1) end end end end local function HideLimb(Limb) if Character:FindFirstChild(Limb) then Character[Limb].Transparency = 1 end end local function DeleteStage(Limb) if Character:FindFirstChild(Limb) then if Character[Limb]:FindFirstChild("Stage") then Character[Limb]["Stage"]:Destroy() end end end local function SetupHead() --// Finding Face Decal: if Character["Head"]:FindFirstChild("Face") then Character["Head"]["Face"]:Destroy() elseif Character["Head"]:FindFirstChild("face") then Character["Head"]["face"]:Destroy() end --// Making Head Invisible: Character.Head.Transparency = 1 end local function CreateSetup() --// Main Folder: local Settings = Instance.new("Folder",Character) --// Values For Gibs: local RightLeg = Instance.new("NumberValue",Settings) local RightArm = Instance.new("NumberValue",Settings) local LeftLeg = Instance.new("NumberValue",Settings) local LeftArm = Instance.new("NumberValue",Settings) local Torso = Instance.new("NumberValue",Settings) local Head = Instance.new("NumberValue",Settings) --// Naming: RightLeg.Name = "Right Leg" RightArm.Name = "Right Arm" Settings.Name = "Settings" LeftLeg.Name = "Left Leg" LeftArm.Name = "Left Arm" Torso.Name = "Torso" Head.Name = "Head" --// Values: RightLeg.Value = 4 RightArm.Value = 4 LeftLeg.Value = 4 LeftArm.Value = 4 Torso.Value = 1 Head.Value = 3 --// Debug: print(Character.Name.. ": Settings Enabled") --// Events: Head.Changed:Connect(function(Property) DeleteStage("Head") if Head.Value == 1 then local Clone = HeadGibs:WaitForChild("Stage 1"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Head"] Clone.Parent = Character["Head"] Clone.Name = "Stage" SetupHead() elseif Head.Value == 2 then local Clone = HeadGibs:WaitForChild("Stage 2"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Head"] Clone.Parent = Character["Head"] Clone.Name = "Stage" SetupHead() end end) RightLeg.Changed:Connect(function(Property) DeleteStage("Right Leg") HideLimb("Right Leg") if RightLeg.Value == 1 then local Clone = ArmsGibs:WaitForChild("Stage 1"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Right Leg"] Clone.Parent = Character["Right Leg"] Clone.Name = "Stage" StartBleed("Right Leg") elseif RightLeg.Value == 2 then local Clone = ArmsGibs:WaitForChild("Stage 2"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Right Leg"] Clone.Parent = Character["Right Leg"] Clone.Name = "Stage" StartBleed("Right Leg") elseif RightLeg.Value == 3 then local Clone = ArmsGibs:WaitForChild("Stage 3"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Right Leg"] Clone.Parent = Character["Right Leg"] Clone.Name = "Stage" StartBleed("Right Leg") end end) RightArm.Changed:Connect(function(Property) DeleteStage("Right Arm") HideLimb("Right Arm") if RightArm.Value == 1 then local Clone = ArmsGibs:WaitForChild("Stage 1"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Right Arm"] Clone.Parent = Character["Right Arm"] Clone.Name = "Stage" StartBleed("Right Arm") elseif RightArm.Value == 2 then local Clone = ArmsGibs:WaitForChild("Stage 2"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Right Arm"] Clone.Parent = Character["Right Arm"] Clone.Name = "Stage" StartBleed("Right Arm") elseif RightArm.Value == 3 then local Clone = ArmsGibs:WaitForChild("Stage 3"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Right Arm"] Clone.Parent = Character["Right Arm"] Clone.Name = "Stage" StartBleed("Right Arm") end end) LeftLeg.Changed:Connect(function(Property) DeleteStage("Left Leg") HideLimb("Left Leg") if LeftLeg.Value == 1 then local Clone = ArmsGibs:WaitForChild("Stage 1"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Left Leg"] Clone.Parent = Character["Left Leg"] Clone.Name = "Stage" StartBleed("Left Leg") elseif LeftLeg.Value == 2 then local Clone = ArmsGibs:WaitForChild("Stage 2"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Left Leg"] Clone.Parent = Character["Left Leg"] Clone.Name = "Stage" StartBleed("Left Leg") elseif LeftLeg.Value == 3 then local Clone = ArmsGibs:WaitForChild("Stage 3"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Left Leg"] Clone.Parent = Character["Left Leg"] Clone.Name = "Stage" StartBleed("Left Leg") end end) LeftArm.Changed:Connect(function(Property) DeleteStage("Left Arm") HideLimb("Left Arm") if LeftArm.Value == 1 then local Clone = ArmsGibs:WaitForChild("Stage 1"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Left Arm"] Clone.Parent = Character["Left Arm"] Clone.Name = "Stage" StartBleed("Left Arm") elseif LeftArm.Value == 2 then local Clone = ArmsGibs:WaitForChild("Stage 2"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Left Arm"] Clone.Parent = Character["Left Arm"] Clone.Name = "Stage" StartBleed("Left Arm") elseif LeftArm.Value == 3 then local Clone = ArmsGibs:WaitForChild("Stage 3"):Clone() Clone:WaitForChild("Weld").Part1 = Character["Left Arm"] Clone.Parent = Character["Left Arm"] Clone.Name = "Stage" StartBleed("Left Arm") end end) end --// One Time Lines: CreateSetup()