What I request is that that variable updates once the channel has been assigned.
proc/outputSound(client/client)
var/sound/sound = sound('somesound.wav')
sound.channel = -1
sound.repeat = 1
client << sound
return sound
client/proc/test_theThing()
var/sound/sound = outputSound(src)
sound.environment = 6
sound.status |= SOUND_UPDATE
src << sound
Since channel is set to -1, executing test_theThing() will produce two sounds playing at the same time, which is awkward.
If right after assigning a channel, that datum's channel var is set to the channel assigned, the next time you update said datum, it will update as expected.
I think I have correctly exposed the fact there, if something needs clarification please tell.