Really? Still an issue this day and age? Thought had been modified some time ago.
But here's one to try;
-- LUA Script - precede every function and global member with lowercase name of script + '_main'
-- Player Enters Sound Zone
local plrtier = {}
function soundinzone_init(e)
plrtier[e] = 0
end
function soundinzone_main(e)
if g_Entity[e]['plrinzone'] == 1 then
plrtier[e] = g_PlayerPosY - GetEntityPositionY(e)
if plrtier[e] > 20 and plrtier[e] < 42 then
PlaySound(e,0)
Destroy(e)
ActivateIfUsed(e)
end -- plrtier
end
end -- main