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

attempt to perform arithmetic (add) on nil and number?

Asked by 3 years ago
Edited 3 years ago

hi,so i have a ice spike script, and i dont get why im getting an error,I would be very grateful if someone wrote what was wrong

ServerScriptService.Ice_Trail_Server:38: attempt to perform arithmetic (add) on nil and number
local CS = game:GetService("CollectionService")
local RS = game.ReplicatedStorage

local NumberOfModel = 3

local Model = 
    {}
DistApart1 = 6
DistHeight1 = 3.452

DistApart2 = 5
DistHeight2 = 4.553

DistApart3 = 5
DistHeight3 = 5.57

local FreezeTime = 5

----- Functions ------ 
local function IceTrailSpike(Object,PlayerName,PartNum)
    Object.Touched:Connect(function(hit)
        Object.CanCollide = true
        if hit.Parent:FindFirstChild("Humanoid") and not CS:HasTag(hit.Parent, "Freeze"..PlayerName) then 
            CS:AddTag(hit.Parent,"Freeze"..PlayerName)
            hit.Parent.Humanoid:TakeDamage(10)
            hit.Parent.HumanoidRootPart.Anchored = true 
            wait(FreezeTime + (0.7*PartNum))
            hit.Parent.HumanoidRootPart.Anchored = false
        end
    end)
end

-- Function 2 -- 

local function IceModelLocation (Player,AttModel,PartCount,DistAdd,RayPos)

    local HRP = Player.Character:WaitForChild("HumanoidRootPart")
    local Ice_Location = CFrame.new(HRP.Position) * ( (Model["DistApart"..PartCount]+DistAdd)*HRP.CFrame.LookVector)
    AttModel.CFrame = CFrame.new(Vector3.new(Ice_Location.X,(RayPos.Y+Model["DistHeight"..PartCount]),Ice_Location.Z))*CFrame.Angles(0,math.rad(HRP.Orientaion.Y),0)
    AttModel.Anchored = true 
    AttModel.Glow.Anchored = true 

end


-- Remote Event -- 
RS.Ice_Trail_Att.OnServerEvent:Connect(function(Player)
    local Debounce = workspace:FindFirstChild("Ice_Trail".. Player.Character.Name)
    local  HRP = Player.Character.HumanoidRootPart
    local groundDistanceRay = Ray.new(HRP.Position,Vector3.new(0,-500,0))
    local Hit, pos = workspace:FindPartOnRay(groundDistanceRay,HRP.Parent)

    local IceAtt_Group = Instance.new("Model",workspace)
    IceAtt_Group.Name = "Ice_Trail_Att"..Player.Character.Name
    local DistAdd = 0 
    -- Part1 -- 
    CS:AddTag(Player.Character, "Freeze"..Player.Name)
    for Part = 1,NumberOfModel do

        local IceModel = RS.Ice_Trail.SPIKE_Model["SPIKES"..Part]:Clone()
        IceTrailSpike(IceModel,Player.Character.Name)



        IceModelLocation(Player,IceModel,Part,DistAdd,pos)
        wait()
        IceModel.Transparecy = 0.2
        DistAdd = DistAdd + Model["DistApart"..Player]

    end
    wait(FreezeTime)
    for Part2 = 1,NumberOfModel do
        local IceModel = workspace["Ice_Trail_Att_"..Player.Character.Name]["SPIKES"..Part2]
        local BG = workspace["Ice_Trail_Att_"..Player.Character.Name]["SPIKES"..Part2].BG.Decal
        local Glow = workspace["Ice_Trail_Att_"..Player.Character.Name]["SPIKES"..Part2].Glow
        local TweenService = game:GetService("TweenService")
        local Goal = {}
        Goal.Transparency = 1
        -- Ice Model
        local tweenInfo = TweenInfo.new(3)
        local IceTween = TweenService:Create(IceModel, tweenInfo, Goal)
        -- Background Model
        local tweenInfo = TweenInfo.new(3)
        local BGTween = TweenService:Create(BG, tweenInfo, Goal)
        -- Glowing Model
        local tweenInfo = TweenInfo.new(3)
        local GlowTween = TweenService:Create(Glow, tweenInfo, Goal)
        GlowTween:Play()
        IceTween:Play()
        IceModel.CanCollide = false
        BGTween:Play()
        wait(0.5)
    end
    wait(1)
    workspace["Ice_Trail_Att_"..Player.Character.Name]:Destroy()
    for _, object in pairs(CS:GetTagged("Freeze"..Player.Character.Name)) do

        CS:RemoveTag(object,"Freeze"..Player.Character.Name)
    end
end)

1 answer

Log in to vote
0
Answered by 3 years ago

maybe try this? 'o'

-- Hello there 'o'
local HRP = Player.Character:WaitForChild("HumanoidRootPart")
local Ice_Location = CFrame.new(HRP.Position) + ( (Model["DistApart"..PartCount]+DistAdd)*HRP.CFrame.LookVector)

if that didn't work try this

-- Hello there 'o'
local HRP = Player.Character:WaitForChild("HumanoidRootPart")
local Ice_Location = CFrame.new(HRP.Position) * ( (Model["DistApart"..PartCount]+DistAdd)*HRP.CFrame.LookVector)
0
nope, still this damn problem OleshaDumayet 9 — 3y
Ad

Answer this question