createSoundSource: Difference between revisions
Jump to navigation
Jump to search
Killzone Kid (talk | contribs) (see also) |
Killzone Kid (talk | contribs) (mission config usage) |
||
Line 20: | Line 20: | ||
* <tt>"Sound_SparklesWreck1"</tt> | * <tt>"Sound_SparklesWreck1"</tt> | ||
* <tt>"Sound_SparklesWreck2"</tt> | * <tt>"Sound_SparklesWreck2"</tt> | ||
* <tt>"Sound_Stream"</tt> |= Description | * <tt>"Sound_Stream"</tt> | ||
Since Arma 3 v1.69.141183 it is possible to define sounds for use with [[createSoundSource]] in mission config. As mentioned earlier, the sounds needed for this command should be defined inside [[CfgVehicles]] class, which itself references [[CfgSFX]] class. If given class searched in main config and is not found, the search will continue in [[description.ext]]. Here is an example of suitable mission config definition: | |||
<syntaxhighlight lang=php> | |||
// description.ext | |||
class CfgSFX | |||
{ | |||
class MyOwl | |||
{ | |||
sound0[] = {"@A3\Sounds_F\environment\animals\birds\owl1", db-10, 1.0, 1000, 0.2, 0, 15, 30}; // path to addon sound | |||
sound1[] = {"@A3\Sounds_F\environment\animals\birds\owl2", db-10, 1.0, 1000, 0.2, 0, 15, 30}; // path to addon sound | |||
sound2[] = {"@A3\Sounds_F\environment\animals\birds\owl3", db-10, 1.0, 1000, 0.2, 0, 15, 30}; // path to addon sound | |||
sounds[] = {sound0, sound1, sound2}; | |||
empty[] = {"", 0, 0, 0, 0, 0, 0, 0}; | |||
}; | |||
}; | |||
class CfgVehicles | |||
{ | |||
class MyOwlSound // class name to be used with createSoundSource | |||
{ | |||
sound = "MyOwl"; // reference to CfgSFX class | |||
}; | |||
}; | |||
</syntaxhighlight> | |||
<code>_owl <nowiki>=</nowiki> [[createSoundSource]] ["MyOwlSound", [[position]] [[player]], [], 0];</code> | |||
Note that the sound created by [[createSoundSource]] will always be looping. Also when [[CfgSFX]] sound definition contains more than 1 sound, there is no guarantee that the sound played will be the same on every PC in Multiplayer.|= Description | |||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
Line 26: | Line 55: | ||
|p1= [type, position, markers, placement]: [[Array]] |= Parameter 1 | |p1= [type, position, markers, placement]: [[Array]] |= Parameter 1 | ||
|p2= type: [[String]] | |p2= type: [[String]] - [[CfgVehicles]] class |= Parameter 2 | ||
|p3= position: [[ | |p3= position: [[PositionAGL]], [[Position2D]] or [[Object]] - Desired placement position|= Parameter 3 | ||
|p4= markers: [[Array]] |= Parameter 4 | |p4= markers: [[Array]] - If the markers array contains any markers, the position is randomly picked from array of given markers plus desired placement position. If any of the markers were given z coordinate with [[setMarkerPos]], the sound will also be created at given z coordinate|= Parameter 4 | ||
|p5= placement: [[Number]] | |p5= placement: [[Number]] - The sound is placed inside a circle with given position as center and placement as its radius |= Parameter 5 | ||
| [[Object]] |= Return value | | [[Object]] |= Return value | ||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
|x1= <code>_soundSource | |x1= <code>_soundSource = [[createSoundSource]] ["LittleDog", [[position]] [[player]], [], 0]</code> |= Example 1 | ||
|x2= <code>[] spawn { | |x2= <code>[] spawn | ||
{ | |||
_alarm = [[createSoundSource]] ["Sound_Alarm", [[position]] [[player]], [], 0]; //starts alarm | _alarm = [[createSoundSource]] ["Sound_Alarm", [[position]] [[player]], [], 0]; //starts alarm | ||
[[sleep]] 10; | [[sleep]] 10; |
Revision as of 12:09, 17 April 2017
Description
- Description:
- Creates a sound source of the given type (type is the name of the subclass of CfgVehicles which is pointing to the sound defined in CfgSFX). If the markers array contains several marker names, the position of a random one is used, otherwise, the given position is used. The sound source is placed inside a circle with this position as its center and placement as its radius. Some of the vanilla classes pre-configured in Arma 3:
- "Sound_Alarm"
- "Sound_Alarm2"
- "Sound_BattlefieldExplosions"
- "Sound_BattlefieldFirefight"
- "Sound_Fire"
- "Sound_SmokeWreck1"
- "Sound_SparklesWreck1"
- "Sound_SparklesWreck2"
- "Sound_Stream"
// description.ext class CfgSFX { class MyOwl { sound0[] = {"@A3\Sounds_F\environment\animals\birds\owl1", db-10, 1.0, 1000, 0.2, 0, 15, 30}; // path to addon sound sound1[] = {"@A3\Sounds_F\environment\animals\birds\owl2", db-10, 1.0, 1000, 0.2, 0, 15, 30}; // path to addon sound sound2[] = {"@A3\Sounds_F\environment\animals\birds\owl3", db-10, 1.0, 1000, 0.2, 0, 15, 30}; // path to addon sound sounds[] = {sound0, sound1, sound2}; empty[] = {"", 0, 0, 0, 0, 0, 0, 0}; }; }; class CfgVehicles { class MyOwlSound // class name to be used with createSoundSource { sound = "MyOwl"; // reference to CfgSFX class }; };
Note that the sound created by createSoundSource will always be looping. Also when CfgSFX sound definition contains more than 1 sound, there is no guarantee that the sound played will be the same on every PC in Multiplayer._owl = createSoundSource ["MyOwlSound", position player, [], 0];
- Groups:
- Uncategorised
Syntax
- Syntax:
- createSoundSource [type, position, markers, placement]
- Parameters:
- [type, position, markers, placement]: Array
- type: String - CfgVehicles class
- position: PositionAGL, Position2D or Object - Desired placement position
- markers: Array - If the markers array contains any markers, the position is randomly picked from array of given markers plus desired placement position. If any of the markers were given z coordinate with setMarkerPos, the sound will also be created at given z coordinate
- placement: Number - The sound is placed inside a circle with given position as center and placement as its radius
- Return Value:
- Object
Examples
- Example 1:
_soundSource = createSoundSource ["LittleDog", position player, [], 0]
- Example 2:
[] spawn { _alarm = createSoundSource ["Sound_Alarm", position player, [], 0]; //starts alarm sleep 10; deleteVehicle _alarm; //stops alarm };
Additional Information
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
Notes
Bottom Section
Categories:
- Scripting Commands
- Introduced with Arma version 1.00
- Arma: New Scripting Commands
- Arma: Scripting Commands
- Command Group: Uncategorised
- Scripting Commands: Global Effect
- Scripting Commands OFP Elite
- Scripting Commands ArmA
- Scripting Commands ArmA2
- Command Group: Sounds
- Scripting Commands Arma 3
- Scripting Commands Take On Helicopters