scripts/SS_SetSoundVol.gml
From spelunky.gmk, Spelunky Classic 1.1's source, © 2008, 2009 Derek Yu and Mossmouth, LLC, shown whole under the Spelunky User License v1.1b. Extracted by spelunky.ai's tools, an unofficial fan project, one file per script or event; the // ==== lines are the extractor's, naming each action of the event. Some scripts are others' work that Derek Yu credits in the source's readme.txt: Martin Piecyk's platform engine, ChevyRay's view scaling scripts and tsg1zzn's Super Sound System. This script is part of tsg1zzn's Super Sound System.
The script SS_SetSoundVol, 29 lines of GML.
//Set the volume of a sound/*argument0: Sound handle as returned by LoadSoundargument1: Volume as real or string. 0 is muted, 10 000 is full volume.*//*return: "0" as string for failure and "1" as string for success.*/if is_real(argument0) then return "0";if is_string(argument1) then begin return external_call(global.dll_SS_SetSoundVol, argument0, string(real(argument1)-10000) );end else begin return external_call(global.dll_SS_SetSoundVol, argument0, string(argument1-10000) );end;