##The problem
Well your problem is the fact that you got the Value of the NumberValue, instead of getting the NumberValue. Also, you used 'do' for some reason, with an end. You don't need that, and correct me if i'm mistaken, I don't believe that would work anyways.
I'll explain those in a second, but here is what the script should look like:
num=script.Parent.Parent.Parent.Backpack:WaitForChild("Num").Value
num.Value=num.Value-300
Ok, so the reason that the NumberValue wasn't working is because you got the Value instead of the object. This means, that you set the variable 'num' to whatever Number the NumberValue had stored, so when you subtracted from it, you simply subtracted from the variable you had set.
To fix it, we need to use the Objects Property to subtract from it.
Anyways, I hope this helped clear things up a bit for you. If this helped at all, I'd appreciate an upvote. If you have any further problems/questions, please leave a comment below :P
####-Dyler3
2 comments
Hey dude, I tried this and sorry but, it didn't work. Is there any thing else I could do?
It should work fine. Make sure you're looking in the Players backpack, and not the StarterPack.