Issues with stopping CreateSound

I’m almost done fixing my Falling and Swimming sweps, but now my issue has to do with CreateSound.

So when the player is falling/swimming, i give them a specific swep. To give an extra layer of realism, i loop a sound (such as a wind whoosh or water wading sound), by putting this in the think function:
[lua]
FallLoop = CreateSound(self,“vehicles/fast_windloop1.wav”)
FallLoop:Play()
[/lua]

Then on the Holster function, i put:
[lua]
FallLoop:Stop()
[/lua]

However, sometimes it doesn’t actuall stop the sound, leading to the player hearing the loop even though the swep is gone.

How come?

Stop using global variables and assign the variables to SWEP table.

self.Sound = blah
self.Sound:Stop

don’t forget IsValid checks.

Pardon my ignorance when it comes to playing sounds but i’m not understanding what you mean?

The main reason im using CreateSound is because it’s the only function that im aware of that can stop sounds.

This only works for Sound Scripts according to the wiki.

EDIT:
WAIT, i think i got it! Just gotta test.

[editline]15th June 2014[/editline]

Im sorry, i got it working. I misread your post! Thank you very much for your help RobotBoy