Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

How to consistently position newly-made particles on the player?

Asked by 2 years ago
Edited 2 years ago
    elseif moveused == "Create" then
        local rightArm = Player.Character:FindFirstChild("Right Arm")
        local pOrb = ServerStorage.initialPortal:Clone()
        local p1 = pOrb.Attachment.Glow
        local p2 = pOrb.Attachment.Outline
        local p3 = pOrb.Attachment.Rays
        local p4 = pOrb.Attachment.Shadow
        local weld = Instance.new("WeldConstraint")
        pOrb.Parent = rightArm
        weld.Parent = rightArm
        weld.Part0 = rightArm
        weld.Part1 = pOrb
        pOrb.Position = transport
        print("RAP:", transport)
        print("RAR:", detected)
        print("TAP:", previous)
        task.wait(.12)
        p1.Enabled = true
        p2.Enabled = true
        p3.Enabled = true
        p4.Enabled = true

Above is a portion of my script in which one of the abilities is supposed to have an orb appear ahead of the player's right hand. However, whenever used, the particle will rarely appear within the right arm (where I need it to be in the first place) and often appears outside of the right arm. I don't know if the way I'm doing this might be an inefficient way, or if there's something I'm missing here.

Image Example

FYI, "transport" refers to "rightArm.Position"

                if globalCD == true then
                    globalCD = false
                    Player.Character.Humanoid.WalkSpeed = 0
                    slam:Play()
                    Remote:FireServer("Create", rightArm.Position, rightArm.Rotation, Player.Character.Torso.Position)
                    task.wait(2)
                    Player.Character.Humanoid.WalkSpeed = 16
                    task.wait(3)
                    globalCD = true

Answer this question