Difference between revisions of "SetVolume"

From The Official Visionaire Studio: Adventure Game Engine Wiki
Line 63: Line 63:
 
--[[
 
--[[
 
this is of course completely unnecessary as the volumes are automatically adjusted with the global volume ...
 
this is of course completely unnecessary as the volumes are automatically adjusted with the global volume ...
you could have used a similar method as this example to create a global volume function before it was included in v3.8!
+
you could have used a similar method as this example to create a global volume function - pre v3.8!
 
--]]
 
--]]
 
</syntaxhighlight>
 
</syntaxhighlight>

Revision as of 22:14, 5 March 2013

History: Available since v3.7
MovieVolume & GlobalVolume added to v3.8

Allows the user to set volume levels of: music, sound fx, speech, movies & global(master)

Additional Info

These are the numbers used inside of the setVolume(brackets) to set specific volume types!

eMusicVolume (0), eSoundVolume (1), eSpeechVolume (2), eMovieVolume (3) or eGlobalVolume (4)


Syntax:

setVolume(type, volume)

Example 1: basic set volume

-- set music volume to 50%!
setVolume(0, 50)

-- set sound fx volume to 50%!
setVolume(1, 50)

-- set speech volume to 50%!
setVolume(2, 50)

-- set movie volume to 50%!
setVolume(3, 50)

-- set global (master) volume to 50%!
setVolume(4, 50)

Example 2: set all levels based on global (master) volume!

-- let's set the global (master) volume to 80%
setVolume(4, 80)

-- let's create a variable containing difference between global volume current & max volume!
local dif = 100 - getVolume(4)

-- let's store the current volumes for the various volume types into variables!
local musicVol = getVolume(0)
local sfxVol = getVolume(1)
local speechVol = getVolume(2)
local movieVol = getVolume(3)

-- let's remove the difference from the various volume types!
setVolume(0, musicVol - dif)
setVolume(1, sfxVol - dif)
setVolume(2, speechVol - dif)
setVolume(3, movieVol - dif)

-- let's check none of the various volume types are under 0%!
if getVolume(0) < 0 then setVolume(0, 0) end
if getVolume(1) < 0 then setVolume(1, 0) end
if getVolume(2) < 0 then setVolume(2, 0) end
if getVolume(3) < 0 then setVolume(3, 0) end

--[[
this is of course completely unnecessary as the volumes are automatically adjusted with the global volume ...
you could have used a similar method as this example to create a global volume function - pre v3.8!
--]]


Arguments

type: integer
The type of volume to set: eMusicVolume (0), eSoundVolume (1), eSpeechVolume (2), eMovieVolume (3) or eGlobalVolume (4)

volume: integer
New value for volume. Must be a value between 0 and 100

Flags: none

Return: none